cadet-agent 0.53.0 → 0.56.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -4
- package/package.json +1 -1
- package/src/cli.mjs +698 -17
- package/src/harness/acceptance-form.mjs +281 -0
- package/src/harness/architecture.mjs +201 -0
- package/src/harness/commands.mjs +60 -0
- package/src/harness/context-protocol.mjs +470 -0
- package/src/harness/design-review.mjs +162 -0
- package/src/harness/gates.mjs +364 -0
- package/src/harness/hosts.mjs +349 -0
- package/src/harness/index.mjs +42 -3
- package/src/harness/policy.mjs +283 -10
- package/src/harness/routing.mjs +14 -2
- package/src/harness/state.mjs +185 -15
- package/src/harness/status.mjs +132 -0
- package/src/harness/verification.mjs +51 -28
- package/src/install.mjs +129 -0
package/README.md
CHANGED
|
@@ -28,7 +28,7 @@ Cadet-Agent is **not a one-shot code generator**. It won't spit out a finished g
|
|
|
28
28
|
|
|
29
29
|
## Cross-IDE Support
|
|
30
30
|
|
|
31
|
-
Cadet-Agent provides
|
|
31
|
+
Cadet-Agent provides the **same skills** across six IDEs — one canonical file per skill, read through thin per-host pointers. It does **not** provide equal *enforcement*, and it does not claim to: no host here can block what it has no API to intercept, so enforcement is measured per action and published. Run `cadet-agent harness capabilities --verify-host` for the measured matrix on your repository, or read [Host Interception](docs/core/HostInterception.md).
|
|
32
32
|
|
|
33
33
|
| Feature | GitHub Copilot | Cursor | Continue | Claude Code | Deep Code | Hermes |
|
|
34
34
|
|---|---|---|---|---|---|---|
|
|
@@ -46,7 +46,11 @@ Cadet-Agent provides full workflow parity across six IDEs. The same 11 skills +
|
|
|
46
46
|
| MCP Setup | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
47
47
|
| Reconciliation | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
48
48
|
| Reviewer mode | Agent picker | Rule toggle | `/cadet-agent-reviewer` | `/cadet-agent-reviewer` | `cadet-agent-reviewer` skill | `/cadet-agent-reviewer` |
|
|
49
|
-
| Git guard | PreToolUse hook |
|
|
49
|
+
| Git guard (declared; measured by `--verify-host`) | `native` — PreToolUse hook | `external` via the repository Git hook, else `advisory` | `external` / `advisory` | `advisory` until a hook is configured | `external` (declared: `permissions.ask`) | `external` (declared: approval policies) |
|
|
50
|
+
|
|
51
|
+
Every other row is a capability: the skills are the same, the interception is not, and the difference is
|
|
52
|
+
measured rather than assumed (see [Host Interception](docs/core/HostInterception.md)). The portable control
|
|
53
|
+
that works for every host is the repository Git hook: `git config core.hooksPath .githooks`.
|
|
50
54
|
|
|
51
55
|
All adapters delegate to the canonical files under `.cadet/agent/core/` — no duplicated rules or skills. See `ADAPTERS.md` for the full inventory, `docs/guidance/DeepCode.md` for Deep Code setup, and `docs/guidance/Hermes.md` for Hermes setup.
|
|
52
56
|
|
|
@@ -165,9 +169,19 @@ Hard gates are enforced at every phase transition. The agent reads `.cadet/state
|
|
|
165
169
|
|
|
166
170
|
| Transition | Required Gates |
|
|
167
171
|
|---|---|
|
|
168
|
-
|
|
|
172
|
+
| architectureComplete → story-breakdown | `designReviewCompleted` when `designReview.enabled` is set — the formal design review, recorded by `harness verify-design-review` |
|
|
173
|
+
| implementation → review | `testsPassed`, `compileCheckConfirmed`, `unityAnalyzerClean`, `storyTrackingUpdated`, and `architectureFitnessPassed` when the project declares architecture checks and enables them |
|
|
169
174
|
| review → validation | `codeReviewCompleted`, `securityReviewPassed`, `acceptanceCriteriaValidated`, and `reachabilityAddressed` when `reachability.enabled` is set |
|
|
170
|
-
|
|
175
|
+
### Runtime context protocol (opt-in, and the framework's own claim discipline)
|
|
176
|
+
|
|
177
|
+
`harness context plan` states what a phase requires (with a reason and a hash for each reference),
|
|
178
|
+
`harness context record` captures what the host loaded and the level it can claim, and
|
|
179
|
+
`harness context validate` decides whether a context-complete checkpoint may be claimed. The level is
|
|
180
|
+
reported as it is — a run reported as `recorded` is never reported as `enforced`, and `enforced` needs
|
|
181
|
+
a hook that declares it enforces context. A required reference that was never loaded, or that changed
|
|
182
|
+
after the record, blocks the checkpoint. See `.cadet/agent/core/Harness.md` §2d.
|
|
183
|
+
|
|
184
|
+
| validation → closed | `designArtifactSyncConfirmed`, and `humanAcceptanceConfirmed` when `humanAcceptance.enabled` is set — a person's own record (`harness acceptance-form` writes the form, `harness confirm --artifact` records it); no command can produce it |
|
|
171
185
|
|
|
172
186
|
**`closed` is end-of-epic, not per-story.** `validation → closed` is taken only when no stories remain (`NEXT_STORY → no → CLOSED` above). When an epic still has stories, the next story re-enters from `validation → implementation` (`NEXT_STORY → yes → IMPL`). Do not close a story individually: `closed` is terminal, and there is no transition out of it.
|
|
173
187
|
|