ADR 0007: Harness Engineering Toolkit Naming¶
Status: Accepted
Date: 2026-05-02
Deciders: Alex Furrier
Generated from: Naming brainstorm and implementation slice
Plan: .ai/plans/2026-05-02-083917-harness-kit-naming/
Context¶
The repo had grown two related but distinct products:
- A starter template for new agent-ready repositories.
- A portable CLI for applying planning, validation, and handoff workflows to existing repositories without committing scaffold files.
The old names blurred that boundary. agent-scaffold described the template but
not the broader tool family. agent-workflow described the portable CLI but felt
generic and did not carry the harness-engineering framing. agent-harness or
harness fit the theme but conflicted with common usage: Claude Code, Codex, Pi,
Cursor, and similar coding environments are themselves agent harnesses.
Decision¶
Adopt Harness Engineering Toolkit as the umbrella/product-family name.
Use these names for the two concrete surfaces:
| Surface | Name | Command |
|---|---|---|
| Portable workflow toolkit | harness-kit |
hk and harness-kit |
| Starter template | harness-scaffold |
harness-scaffold |
The Python package is named harness-toolkit and uses the import package
harness_toolkit so both surfaces can ship together while the project is small.
Docs should describe the split as:
Use
hkwhen adding the workflow to an existing repo. Useharness-scaffoldwhen starting a new repo with the workflow, task contract, docs, and CI already wired in.
Consequences¶
Positive:
- The daily portable CLI is short enough for repeated agent/human use:
hk. - The readable long name,
harness-kit, anchors docs and package metadata. harness-scaffoldkeeps the template action clear while fitting the product family.- The naming avoids implying that the project is itself a coding harness runtime.
Negative / Trade-offs:
- This is a breaking rename from the earlier
agent-scaffoldandagent-workflowcommand names. - Existing docs, tests, generated snippets, and task wrappers must move together to avoid mixed vocabulary.
- Historical ADR IDs may still include
agent-scaffold; those are treated as historical identifiers, not current product names.
Alternatives Considered¶
| Alternative | Reason not chosen |
|---|---|
Keep agent-scaffold and agent-workflow |
Accurate enough but did not express the Harness Engineering Toolkit boundary |
agent-harness / harness |
Too easy to confuse with Claude Code, Codex, Pi, Cursor, or other agent harness runtimes |
harness-eng-toolkit as the command |
Clear as a phrase, too long for a daily CLI |
agent-loop / agent-plan / agent-slice |
Useful descriptors, but weaker product-family framing |
baton / rig |
Memorable, but less explicit than hk / harness-kit |