@dzhechkov/harness-cli 0.3.219 → 0.3.221
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 +67 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -480,7 +480,7 @@ dz mcp-scan [path] [--json] (static agent-permission audit; exit 0/1/
|
|
|
480
480
|
dz architecture [--json] [--revise] [--check --slug <s> --desc "<text>" [--cmd a,b] [--subsystem <id>]] # product map (subsystems = the README jobs + foundation/arsenal/ops); --revise = drift check (exit 1); --check = forward-looking сverka of a proposed feature vs map+vision (exit 2 on a hard-stop dup)
|
|
481
481
|
dz project-skills [--json] [--stages-json] # polymorphic feature-adr: resolve architecture/project-skills.json (fixed roles product-vision/critic/brand/impl-bar + open extra[]) into per-stage guidance; absent = generic run (byte-identical); feature-adr Step 0 reads it
|
|
482
482
|
dz mr-rakes [--json] [--candidate N --confirmed N] [--teach] [--gen-critic <path> [--apply]] # mine review artifacts (features' QE reports + REVIEW files) for RECURRING mistakes; anti-noise (≥2/≥3 distinct sources); close into dz teach + a project-critic skill (R2 critic role)
|
|
483
|
-
dz retro [transcript] [--json] [--threshold N] [--no-teach] [--install-hook] # per-session retro: mine the current session for recurring PROCESS rakes (claimed-done-without-verify, n-fix-cycles, ignored-correction), drill the user (socratic + checklist) AND teach the agent — co-learning via the dz teach store
|
|
483
|
+
dz retro [transcript] [--json] [--threshold N] [--no-teach] [--install-hook] # per-session retro: mine the current session for recurring PROCESS rakes (claimed-done-without-verify, committed-without-verify, n-fix-cycles, ignored-correction), drill the user (socratic + checklist) AND teach the agent — co-learning via the dz teach store
|
|
484
484
|
dz publish [--filter <name>] [--bump-only] [--claim-check <off|warn|error>] (dry-run by default; pass --yes/--confirm to go live; claim-check gate defaults to warn — surfaces README claim findings, never blocks)
|
|
485
485
|
dz auto-canonicalize --source <github-url> --pack <skills-pack>
|
|
486
486
|
dz sync-upstream [--package <dir>] [--list] [--all]
|
|
@@ -1338,6 +1338,72 @@ claude mcp add agentdb --env AGENTDB_PATH="$PWD/.dz/agentdb.db" -- npx agentdb@l
|
|
|
1338
1338
|
|
|
1339
1339
|
---
|
|
1340
1340
|
|
|
1341
|
+
## Architecture-aware & self-learning workflow (`architecture` · `project-skills` · `mr-rakes` · `retro`)
|
|
1342
|
+
|
|
1343
|
+
Four commands that make the harness *self-aware*: it maps your product, keeps new features aligned to it, and
|
|
1344
|
+
learns from your reviews and sessions. Each shows **when to reach for it**, the exact command, and what it prints.
|
|
1345
|
+
|
|
1346
|
+
### `dz architecture` — when you've lost the big picture, or before adding a feature
|
|
1347
|
+
|
|
1348
|
+
```bash
|
|
1349
|
+
dz architecture # the product map: subsystems (the 5 README jobs + foundation/arsenal/ops) + their packages/commands
|
|
1350
|
+
dz architecture --revise # drift check: packages in no subsystem, or a command owned by two (exit 1 on drift)
|
|
1351
|
+
dz architecture --check --slug add-forecast --desc "forecast the next skill for a task" --cmd forecast # сheck a feature you're about to build
|
|
1352
|
+
```
|
|
1353
|
+
```
|
|
1354
|
+
✓ architecture сverka: ok — Feature aligns with the product map and vision.
|
|
1355
|
+
# …or, if you would re-add an existing command:
|
|
1356
|
+
⛔ block (confidence 0.90) — duplicate-command: "recall" already exists in subsystem "learn". Confirm this is intentional.
|
|
1357
|
+
```
|
|
1358
|
+
The map is `architecture/subsystems.manifest.json` + `architecture/vision.md` (committed). `--check` exits **2**
|
|
1359
|
+
on a hard-stop, so you can gate it in CI or at feature-adr Step 0.
|
|
1360
|
+
|
|
1361
|
+
### `dz project-skills` — when a project has its own conventions to fold into every feature-adr run
|
|
1362
|
+
|
|
1363
|
+
Drop an `architecture/project-skills.json` (no pipeline edits needed):
|
|
1364
|
+
```json
|
|
1365
|
+
{ "version": 1,
|
|
1366
|
+
"roles": { "product-vision": "architecture/vision.md", "critic": ".dz-skills/my-critic/SKILL.md" },
|
|
1367
|
+
"extra": [ { "skill": ".dz-skills/security-checklist/SKILL.md", "phase": "qe", "as": "guidance" } ] }
|
|
1368
|
+
```
|
|
1369
|
+
```bash
|
|
1370
|
+
dz project-skills # who-injected report (which skill feeds which stage)
|
|
1371
|
+
dz project-skills --json # the plan feature-adr Step 0 reads
|
|
1372
|
+
```
|
|
1373
|
+
No manifest ⇒ a normal generic run (byte-identical). With one, feature-adr folds each skill into its stage as guidance
|
|
1374
|
+
(`product-vision`→design+QE, `critic`→QE, `brand`→code).
|
|
1375
|
+
|
|
1376
|
+
### `dz mr-rakes` — when you want to learn what mistakes this project keeps repeating
|
|
1377
|
+
|
|
1378
|
+
Run it once you have a few reviews (feature-adr QE reports / MR reviews) to mine the **recurring** rakes:
|
|
1379
|
+
```bash
|
|
1380
|
+
dz mr-rakes # ranked rakes (≥2/≥3 distinct sources; one-offs dropped)
|
|
1381
|
+
dz mr-rakes --teach # auto-teach confirmed rakes to the dz store (surfaced by recall)
|
|
1382
|
+
dz mr-rakes --gen-critic architecture/project-critic/SKILL.md --apply # write a project-critic skill (propose without --apply)
|
|
1383
|
+
```
|
|
1384
|
+
```
|
|
1385
|
+
mr-rakes: 2 rake(s) from 78 finding(s) (73 one-offs dropped):
|
|
1386
|
+
[confirmed] BLOCKER ×3 — ADR-named safety property left untested (untested-adr-property)
|
|
1387
|
+
```
|
|
1388
|
+
The generated critic is exactly what a `project-skills.json` `critic` role points at — the loop closes.
|
|
1389
|
+
|
|
1390
|
+
### `dz retro` — when you finish a coding session and want to learn from it
|
|
1391
|
+
|
|
1392
|
+
```bash
|
|
1393
|
+
dz retro # mine the current session → drills for recurring PROCESS rakes + teach the agent
|
|
1394
|
+
dz retro --no-teach # just the drills (don't write the store)
|
|
1395
|
+
dz retro --install-hook # print the opt-in SessionEnd hook to run it automatically
|
|
1396
|
+
```
|
|
1397
|
+
```
|
|
1398
|
+
retro: 2 recurring rake(s) to drill (from 6800 events):
|
|
1399
|
+
🔁 git commit after a code change without running tests/build first — 2× (recurring)
|
|
1400
|
+
Before that `git commit` — did the tests/build actually pass in THIS session, or did you assume?
|
|
1401
|
+
--- reveal (cover this, predict first) ---
|
|
1402
|
+
✅ Run the tests/build (and read the output) BEFORE `git commit`. (see the `validate` skill)
|
|
1403
|
+
```
|
|
1404
|
+
First-seen rakes accrue silently; only **recurring** ones get a drill (no nagging on a one-off). The user gets the
|
|
1405
|
+
drill, the agent gets the taught rule — from the same mistake, out of one shared `dz teach` store.
|
|
1406
|
+
|
|
1341
1407
|
## Recipes & FAQ
|
|
1342
1408
|
|
|
1343
1409
|
Scenario → exact command → how to verify → gotcha. **Three gotchas worth calling out up front:**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dzhechkov/harness-cli",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.221",
|
|
4
4
|
"description": "The dz CLI — install AI skills for Claude Code, Codex, OpenCode, Hermes, OpenClaude, GitHub Copilot. 35 commands, 13 presets, 6 platform targets.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"@dzhechkov/skills-reverse-engineering": "^0.1.0",
|
|
56
56
|
"@dzhechkov/skills-presentation-storyteller": "^0.1.0",
|
|
57
57
|
"@dzhechkov/skills-website-cloner": "^0.1.0",
|
|
58
|
-
"@dzhechkov/harness-core": "0.3.
|
|
58
|
+
"@dzhechkov/harness-core": "0.3.115"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
61
|
"@types/node": "^25.6.0",
|