kingshand

Install kingshand

kingshand runs from a clone of its own repository. You clone it, open Claude Code in that directory and tell it to set itself up; the installer checks what is on the machine, names anything missing with the command that fixes it, and installs nothing unless you ask it to.

Install and first run

Clone it wherever you keep things. Any drive, any folder, spaces in the path are fine.

git clone https://github.com/emgee-labs/kingshand
cd kingshand
claude

Then type set it up - or setup, or /setup. Every skill ships inside the repository, so they are readable in a fresh clone with nothing installed yet. The installer names what it found, what it installed, and what still needs you.

The manual equivalent, if you would rather run it yourself:

.\install.ps1 -InstallMissing

-InstallMissing is opt-in. Without it nothing is installed and each missing tool is reported with the exact command that fixes it. Nothing self-elevates. Open a new shell afterwards so KINGSHAND_HOME is picked up.

There is no one-line remote installer

There is no irm ... | iex for kingshand, and a page that offered one would be offering something that does not work. install.ps1 resolves its own location and imports PowerShell modules from the bin\ directory beside it, so it only runs from inside a clone. The three commands above are the install path, and they are the ones the repository itself documents.

What you need

Six things, and the installer fetches or names every one of them.

RequirementWhyInstall
PowerShell 7+every script targets itwinget install --id Microsoft.PowerShell
Claude Codethe session you talk to, and every workernpm install -g @anthropic-ai/claude-code
Git for Windowsworktrees are the isolationwinget install --id Git.Git
lavish-axithe review surface both gates render tonpm install -g lavish-axi
tasks-axithe durable backlognpm install -g tasks-axi
herdrthe terminal every worker is spawned and watched throughfetched by the installer

herdr is the one thing fetched directly. It is checked against the SHA-256 published at https://herdr.dev/latest.json before it is extracted; a mismatch deletes the download and installs nothing, and an offline machine is told so in one line rather than shown a web exception.

What the installer writes outside the repository

Three things, each named as it is written:

Nothing is linked into ~\.claude\skills\, so a Claude Code session in any other directory is unaffected. The installer is idempotent: running it twice does nothing the second time except say so, and it never overwrites an existing instructions.md or an existing config value without telling you what it left alone.

Optional, and only if you need them

The GitHub CLI, for pull requests
gh is needed by the push-capable postures - direct-PR, no-mistakes, no-mistakes-prod-only - because those end at a pull request. Work that stops at a finished local branch never calls it. winget install --id GitHub.cli, then gh auth login.
The review gate
no-mistakes is needed only by projects registered no-mistakes or no-mistakes-prod-only. setup asks whether you want it, and .\install.ps1 -WithReviewGate adds it at any time. Do not run npm install -g no-mistakes: that name on npm belongs to a different, unrelated tool, which installs cleanly and then does not work.
Azure DevOps
Only if you work ADO tickets. Reading a work item straight into a brief needs the ado-local-mcp server configured in Claude Code, plus an organization and a token. Nothing in the installer needs it; without it you paste the ticket or describe the work, which is the ordinary path.
Pester 6+
Only to run kingshand's own test suite. Install-Module Pester -MinimumVersion 6.0.0 -Force -SkipPublisherCheck -Scope CurrentUser, or let -InstallMissing do it. Tests run with Invoke-Pester -Path .\tests.

After it is installed

  1. Open a new shell, cd kingshand, run claude. The screen will be empty - that is normal and not a failed install. Say anything, and the first reply tells you where things stand.
  2. Write your standing instructions in instructions.md: how you want to be addressed, your delivery defaults, your conventions. Read every session, never written to, gitignored.
  3. Register a repository with /annex D:\code\your-repo - any path on any drive. It records the delivery posture and never clones.
  4. Give it work: fix the flaky login test in your-repo. You get a brief to approve before anything is dispatched.
  5. Check in with /survey for where everything stands, and /audience for what you missed.

The design decisions explain how workers are actually run and watched, and the overview covers what the tool is for.