Setup
Configure the small amount of project policy Harness Ship cannot safely infer when a workflow needs it. Empty and early repositories are valid inputs. Triggers: "/setup", "set up harness-ship", "configure harness-ship", "harness-ship setup", or immediately after `/plugin install harness-ship`.From its SKILL.md
npx -y skills add haru3613/harness-ship --skill setupAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.2 KB, as published. Nobody here has run it
setup
Write the smallest repository config that cannot be recovered safely at the point of use. Setup is not a framework selector, readiness gate, or repository audit. An empty repository needs no lint, test, UI, QA, CI, deployment, or automation decision yet.
Fast path
Read AGENTS.md or CLAUDE.md first. If it already contains exactly one supported
## harness-ship block and the user did not request a policy change, report that it is
configured and run advise. Do not rescan for policy, run a readiness command, or rewrite
informational versions.
Duplicate blocks and unsupported Config versions are zero-mutation stops. Preserve every explicit choice in a supported existing block, including fields written later by other workflows.
First run
Inspect local evidence once:
- repository instructions for forbidden tools;
- configured remotes and remote-tracking refs for the tracker/PR host and branch topology; and
- an existing repository convention file only when it directly identifies those policies.
Do not run tests, query for a preferred framework, or probe network services when local evidence is enough. The absence of code or tooling is valid, not a blocker.
Ask only when either of these cannot be resolved safely:
- the tracker and its allowed access method; or
- the integration branch versus protected release branch.
Otherwise write the block, summarize the assumptions, and run advise in the same turn.
Write
Create the section in the repository's AGENTS.md, or CLAUDE.md when that is its established
convention:
## harness-ship
- **Plugin version:** `<version that wrote this block>`
- **Config version:** `3`
- **Issue tracker:** <system + allowed access method>
- **Code review / PR host:** <system + allowed access method>
- **Forbidden tools:** <policy | none>
- **Integration branch:** <branch>
- **Protected release branch:** <branch>
The plugin version is informational. Config version is the compatibility gate. If the repository has one branch, record it for both branch fields.
Progressive disclosure
advise is the default job after this block exists. Other workflows inspect capabilities
when they first need them:
adviseinventories the test tree and names the next cuts;test-planrecords approved release criteria;exploratory-testingresolves automation only when a runnable feature justifies it;testing-workflowresolves candidate environment, evidence, and test capabilities; andrelease-gateconsumes existing evidence without mutating release state.
Never install a framework or append its command without explicit user approval. Do not infer PASS from a missing capability. Reviewer identity is not configured here.
Re-running setup changes a supported block only for an explicit policy change. Ordinary edits are recoverable from version control; no planner, cache, digest, or migration machinery is needed.