kingshand

kingshand

One Claude Code session you talk to, which puts every other one to work. kingshand takes a description of the work, writes a brief, waits for your approval, and runs each worker as its own Claude Code session in its own git worktree. Windows, PowerShell 7, MIT licensed.

Install it · Read the design decisions · Source on GitHub

The problem it solves

Running one Claude Code session is easy. The trouble starts at three: a fix in one repository, an investigation in another, a flaky test somebody has to sit with. You become a tab-juggler - three terminals, three sets of context in your head, and no way of knowing which session went quiet an hour ago because it is waiting on a question nobody is there to answer.

kingshand makes one session the only one you talk to. It dispatches the others, watches their screens rather than a status word, and comes back to you when there is something to decide.

What it gives you

How a piece of work moves through it

  1. You describe the work in the one session you talk to.
  2. It writes a brief and waits for your word. Nothing is dispatched before you approve it.
  3. It creates a git worktree inside the target repository, writes the worker's settings and marks the worktree trusted, so an unattended worker does not stop on a folder-trust dialog.
  4. The worker runs as an ordinary interactive Claude Code session in a terminal kingshand owns, which is what lets it read a worker's screen while it runs and send text to one that has gone astray.
  5. The worker leaves a report.md. That reaches the landing gate, and the landing gate reaches you.

Who it is for

Someone on Windows who already uses Claude Code and wants more than one piece of work running at a time without supervising each one by hand. It needs PowerShell 7, Git for Windows, Claude Code, and three small tools the installer fetches or names - the install page lists all six and what each is for.

What it is not

Permissions, stated before you install

kingshand ships with Claude Code's permission prompts turned off for itself and for every worker it starts: neither will ask you to approve a tool call. That is deliberate - the session reads diffs, runs git and merges locally hundreds of times in a session - but it is a real decision, and better made knowingly. What still constrains it:

If you would rather approve each call, the setting is one line in .claude\settings.json and removing it restores the prompts.

Where everything is