continuous-improvement 3.9.2 → 3.12.3

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.
Files changed (160) hide show
  1. package/.claude-plugin/marketplace.json +3 -3
  2. package/CHANGELOG.md +95 -0
  3. package/LICENSE +21 -21
  4. package/QUICKSTART.md +13 -8
  5. package/README.md +94 -162
  6. package/SKILL.md +1 -1
  7. package/bin/analyze.sh +161 -161
  8. package/bin/backfill.mjs +19 -19
  9. package/bin/check-docs-substrings.mjs +73 -0
  10. package/bin/check-scripts-citation-drift.mjs +210 -0
  11. package/bin/check-skill-count.mjs +110 -0
  12. package/bin/check-test-imports-only.mjs +126 -0
  13. package/bin/check-tool-count.mjs +129 -0
  14. package/bin/companion-preference-status.mjs +231 -0
  15. package/bin/gateguard-clear.mjs +53 -0
  16. package/bin/generate-plugin-manifests.mjs +8 -1
  17. package/bin/harvest-friction.mjs +1 -1
  18. package/bin/hook-stats.mjs +21 -21
  19. package/bin/install.mjs +185 -28
  20. package/bin/mcp-server.mjs +216 -3
  21. package/bin/refresh-third-party.mjs +315 -313
  22. package/commands/audit.md +34 -0
  23. package/commands/companion-preference.md +58 -0
  24. package/commands/continuous-improvement.md +115 -115
  25. package/commands/dashboard.md +56 -56
  26. package/commands/discipline.md +14 -0
  27. package/commands/distill.md +39 -0
  28. package/commands/goal-check.md +53 -0
  29. package/commands/grill-me.md +40 -0
  30. package/commands/grill-with-docs.md +38 -0
  31. package/commands/handoff.md +42 -0
  32. package/commands/harvest.md +1 -1
  33. package/commands/proceed-with-the-recommendation.md +20 -0
  34. package/commands/recall.md +49 -0
  35. package/commands/reconcile.md +47 -0
  36. package/commands/seven-laws.md +16 -16
  37. package/commands/superpowers.md +3 -3
  38. package/commands/verify-install.md +55 -0
  39. package/commands/workspace-surface-audit.md +77 -77
  40. package/hooks/companion-preference.mjs +190 -0
  41. package/hooks/gateguard.mjs +72 -25
  42. package/hooks/goal-drift-stop.mjs +183 -0
  43. package/hooks/observe.sh +15 -1
  44. package/hooks/recall-briefing.mjs +167 -0
  45. package/hooks/route-prompt.mjs +180 -0
  46. package/hooks/route-table.json +35 -0
  47. package/hooks/session.sh +106 -106
  48. package/hooks/three-section-close.mjs +134 -132
  49. package/instinct-packs/go.json +58 -58
  50. package/instinct-packs/meta.json +16 -16
  51. package/instinct-packs/python.json +58 -58
  52. package/instinct-packs/react.json +58 -58
  53. package/lib/gateguard-state.mjs +54 -2
  54. package/lib/goal-drift-gate.mjs +50 -0
  55. package/lib/goal-state.mjs +285 -0
  56. package/lib/plugin-metadata.mjs +134 -15
  57. package/lib/recall-briefing.mjs +57 -0
  58. package/lib/recall-index.mjs +175 -0
  59. package/lib/skill-distill.mjs +222 -0
  60. package/llms.txt +2 -2
  61. package/package.json +12 -7
  62. package/plugins/beginner.json +9 -4
  63. package/plugins/continuous-improvement/.claude-plugin/marketplace.json +2 -2
  64. package/plugins/continuous-improvement/.claude-plugin/plugin.json +2 -2
  65. package/plugins/continuous-improvement/LICENSE +21 -21
  66. package/plugins/continuous-improvement/agents/README.md +3 -3
  67. package/plugins/continuous-improvement/bin/backfill.mjs +19 -19
  68. package/plugins/continuous-improvement/bin/gateguard-clear.mjs +53 -0
  69. package/plugins/continuous-improvement/bin/mcp-server.mjs +216 -3
  70. package/plugins/continuous-improvement/commands/audit.md +34 -0
  71. package/plugins/continuous-improvement/commands/companion-preference.md +58 -0
  72. package/plugins/continuous-improvement/commands/continuous-improvement.md +115 -115
  73. package/plugins/continuous-improvement/commands/dashboard.md +56 -56
  74. package/plugins/continuous-improvement/commands/discipline.md +14 -0
  75. package/plugins/continuous-improvement/commands/distill.md +39 -0
  76. package/plugins/continuous-improvement/commands/goal-check.md +53 -0
  77. package/plugins/continuous-improvement/commands/grill-me.md +40 -0
  78. package/plugins/continuous-improvement/commands/grill-with-docs.md +38 -0
  79. package/plugins/continuous-improvement/commands/handoff.md +42 -0
  80. package/plugins/continuous-improvement/commands/harvest.md +1 -1
  81. package/plugins/continuous-improvement/commands/proceed-with-the-recommendation.md +20 -0
  82. package/plugins/continuous-improvement/commands/recall.md +49 -0
  83. package/plugins/continuous-improvement/commands/reconcile.md +47 -0
  84. package/plugins/continuous-improvement/commands/seven-laws.md +16 -16
  85. package/plugins/continuous-improvement/commands/superpowers.md +3 -3
  86. package/plugins/continuous-improvement/commands/verify-install.md +55 -0
  87. package/plugins/continuous-improvement/commands/workspace-surface-audit.md +77 -77
  88. package/plugins/continuous-improvement/hooks/companion-preference.mjs +190 -0
  89. package/plugins/continuous-improvement/hooks/gateguard.mjs +72 -25
  90. package/plugins/continuous-improvement/hooks/goal-drift-stop.mjs +183 -0
  91. package/plugins/continuous-improvement/hooks/hooks.json +23 -2
  92. package/plugins/continuous-improvement/hooks/observe.sh +15 -1
  93. package/plugins/continuous-improvement/hooks/recall-briefing.mjs +167 -0
  94. package/plugins/continuous-improvement/hooks/route-prompt.mjs +180 -0
  95. package/plugins/continuous-improvement/hooks/route-table.json +35 -0
  96. package/plugins/continuous-improvement/hooks/session.sh +106 -106
  97. package/plugins/continuous-improvement/hooks/three-section-close.mjs +134 -132
  98. package/plugins/continuous-improvement/instinct-packs/go.json +58 -58
  99. package/plugins/continuous-improvement/instinct-packs/meta.json +16 -16
  100. package/plugins/continuous-improvement/instinct-packs/python.json +58 -58
  101. package/plugins/continuous-improvement/instinct-packs/react.json +58 -58
  102. package/plugins/continuous-improvement/lib/gateguard-state.mjs +137 -0
  103. package/plugins/continuous-improvement/lib/goal-drift-gate.mjs +50 -0
  104. package/plugins/continuous-improvement/lib/goal-state.mjs +285 -0
  105. package/plugins/continuous-improvement/lib/plugin-metadata.mjs +134 -15
  106. package/plugins/continuous-improvement/lib/recall-briefing.mjs +57 -0
  107. package/plugins/continuous-improvement/lib/recall-index.mjs +175 -0
  108. package/plugins/continuous-improvement/lib/skill-distill.mjs +222 -0
  109. package/plugins/continuous-improvement/skills/README.md +8 -0
  110. package/plugins/continuous-improvement/skills/audit/SKILL.md +73 -0
  111. package/plugins/continuous-improvement/skills/continuous-improvement/SKILL.md +1 -1
  112. package/plugins/continuous-improvement/skills/deploy-receipt/SKILL.md +13 -17
  113. package/plugins/continuous-improvement/skills/gateguard/SKILL.md +36 -17
  114. package/plugins/continuous-improvement/skills/goal-monitor/SKILL.md +81 -0
  115. package/plugins/continuous-improvement/skills/grill-me/SKILL.md +66 -0
  116. package/plugins/continuous-improvement/skills/grill-with-docs/SKILL.md +252 -0
  117. package/plugins/continuous-improvement/skills/handoff/SKILL.md +59 -0
  118. package/plugins/continuous-improvement/skills/para-memory-files/SKILL.md +1 -1
  119. package/plugins/continuous-improvement/skills/proceed-with-the-recommendation/SKILL.md +82 -6
  120. package/plugins/continuous-improvement/skills/ralph/SKILL.md +1 -0
  121. package/plugins/continuous-improvement/skills/recall/SKILL.md +50 -0
  122. package/plugins/continuous-improvement/skills/reconcile/SKILL.md +80 -0
  123. package/plugins/continuous-improvement/skills/recovery-classification/SKILL.md +1 -0
  124. package/plugins/continuous-improvement/skills/safety-guard/SKILL.md +1 -0
  125. package/plugins/continuous-improvement/skills/skill-distillation/SKILL.md +57 -0
  126. package/plugins/continuous-improvement/skills/state-reconciliation/SKILL.md +1 -0
  127. package/plugins/continuous-improvement/skills/strategic-compact/SKILL.md +1 -0
  128. package/plugins/continuous-improvement/skills/superpowers/SKILL.md +77 -3
  129. package/plugins/continuous-improvement/skills/tdd-workflow/SKILL.md +411 -411
  130. package/plugins/continuous-improvement/skills/token-budget-advisor/SKILL.md +1 -1
  131. package/plugins/continuous-improvement/skills/verification-loop/SKILL.md +28 -20
  132. package/plugins/continuous-improvement/skills/wild-risa-balance/SKILL.md +1 -0
  133. package/plugins/continuous-improvement/skills/workspace-surface-audit/SKILL.md +1 -1
  134. package/plugins/continuous-improvement/skills/worktree-safety/SKILL.md +3 -2
  135. package/plugins/expert.json +28 -3
  136. package/skills/README.md +3 -0
  137. package/skills/audit.md +73 -0
  138. package/skills/deploy-receipt.md +13 -17
  139. package/skills/gateguard.md +36 -17
  140. package/skills/goal-monitor.md +81 -0
  141. package/skills/grill-me.md +66 -0
  142. package/skills/grill-with-docs.md +252 -0
  143. package/skills/handoff.md +59 -0
  144. package/skills/para-memory-files.md +1 -1
  145. package/skills/proceed-with-the-recommendation.md +82 -6
  146. package/skills/ralph.md +1 -0
  147. package/skills/recall.md +50 -0
  148. package/skills/reconcile.md +80 -0
  149. package/skills/recovery-classification.md +1 -0
  150. package/skills/safety-guard.md +1 -0
  151. package/skills/skill-distillation.md +57 -0
  152. package/skills/state-reconciliation.md +1 -0
  153. package/skills/strategic-compact.md +1 -0
  154. package/skills/superpowers.md +77 -3
  155. package/skills/tdd-workflow.md +411 -411
  156. package/skills/token-budget-advisor.md +1 -1
  157. package/skills/verification-loop.md +28 -20
  158. package/skills/wild-risa-balance.md +1 -0
  159. package/skills/workspace-surface-audit.md +1 -1
  160. package/skills/worktree-safety.md +3 -2
@@ -0,0 +1,34 @@
1
+ ---
2
+ name: audit
3
+ description: Audit a window of recent commits for real defects, confirm each finding before fixing, verify every surface a fix touches, then report confirmed/dismissed/no-op with evidence. Enforces Law 4 (Verify Before Reporting).
4
+ ---
5
+
6
+ # /audit — Confirm Recent Commits Before You Trust Them
7
+
8
+ Run the audit-driven loop over recent work: a merged commit with green CI is a claim, not a proof.
9
+
10
+ ## What it does
11
+
12
+ Takes a commit window, hunts for real defects one concern at a time, proves each finding against the actual code (false positives die before any edit), fixes on a branch with the smallest diff, verifies every surface the fix touches, and reports honestly. Backed by the `audit` skill.
13
+
14
+ ## The loop
15
+
16
+ ```
17
+ 1. Scope git log to pick the window (e.g. HEAD~10..HEAD, or main since last release)
18
+ 2. Find one pass per dimension: value/economy drift, concurrency, surface coverage, type/contract
19
+ 3. Confirm read the actual lines; state in one sentence why it is real, or dismiss it
20
+ 4. Fix one concern per commit; prefer a failing test first, then green
21
+ 5. Verify exercise EVERY surface (backend, frontend, admin, cache, migration), not just the edited one
22
+ 6. Report confirmed (with the proof), dismissed (with why), no-op (in scope, nothing to change)
23
+ ```
24
+
25
+ ## Default skeptical
26
+
27
+ Findings are hypotheses. Default each to a false positive until the code proves the bug — defaulting to "real" is how plausible-but-wrong fixes ship. For a thorough audit, fan the find pass out across dimensions with parallel reviewers, then verify each survivor adversarially.
28
+
29
+ ## Pairs with
30
+
31
+ - **`audit`** skill — the discipline this command runs.
32
+ - **`code-review`** / **`security-review`** — the per-dimension passes.
33
+ - **`reconcile`** — the safe branch→PR path once the audit produces a fix.
34
+ - **`recall`** — check whether a finding was already hit and fixed before.
@@ -0,0 +1,58 @@
1
+ ---
2
+ name: companion-preference
3
+ description: Inspect companion-preference hook telemetry — counts by CI skill, action breakdown, and companion-installed%.
4
+ ---
5
+
6
+ # /companion-preference
7
+
8
+ Read and aggregate the JSONL telemetry written by `hooks/companion-preference.mjs`. Reports per-skill totals, action breakdown (`observation`, `advisory`, `block`, `block-not-installed`), and the share of events where the companion plugin was installed at the time.
9
+
10
+ The dataset is the evidence base for a future `companions-first` default-flip decision — once a 7-day shadow shows the `companions-first` path firing on a meaningful share of routed Skill calls, with companions installed in the majority of them, the flip is grounded.
11
+
12
+ ## Trigger phrases
13
+
14
+ - `/companion-preference`
15
+ - `/companion-preference status`
16
+ - "show companion preference stats"
17
+ - "what does the companion-preference hook see"
18
+
19
+ ## What happens
20
+
21
+ 1. Run `node bin/companion-preference-status.mjs` from the repo root with the operator's chosen window. Default `--days 7`. Pass `--all` for the entire file or `--days N` for a different window.
22
+ 2. Render the table the CLI emits to the user verbatim. Do not paraphrase the numbers — the JSONL is authoritative.
23
+ 3. If the CLI prints "no telemetry recorded yet," check three things in order: (a) `~/.claude/settings.json` has `continuous_improvement.companion_preference` set (otherwise the hook is a no-op and writes nothing); (b) the user has invoked at least one mapped CI skill (`tdd-workflow`, `verification-loop`, `context-budget`, `ralph`, `learn-eval`) since the hook landed; (c) the hook's PreToolUse registration is intact in `plugins/continuous-improvement/hooks/hooks.json`.
24
+ 4. Offer one decision-ready next step based on the totals — e.g., "ratio of `observation` rows with `companion_installed=true` suggests `companions-first` is safe to flip for X but not Y."
25
+
26
+ ## Subcommands
27
+
28
+ ### `/companion-preference status` (default)
29
+
30
+ Same as `/companion-preference`.
31
+
32
+ ### `/companion-preference status --json`
33
+
34
+ Emit the machine-readable JSON report. Useful when you want to pipe the output into another tool or write your own aggregator.
35
+
36
+ ```bash
37
+ node bin/companion-preference-status.mjs --json --all
38
+ ```
39
+
40
+ ## CLI flags
41
+
42
+ | Flag | Effect |
43
+ |---|---|
44
+ | `--days N` | Only count events from the last N days (default 7). |
45
+ | `--all` | Ignore the window; count every row in the file. |
46
+ | `--json` | Emit a machine-readable JSON report. |
47
+ | `--path <file>` | Override the default JSONL path. Used by the test suite; rarely needed in practice. |
48
+ | `-h`, `--help` | Print CLI help and exit. |
49
+
50
+ ## Path resolution
51
+
52
+ By default the CLI reads `~/.claude/instincts/<project-hash>/companion-preference.jsonl`, where the hash is the same `sha256(projectRoot).slice(0, 12)` that the hook itself uses. The project root resolves via `CLAUDE_PROJECT_DIR` env var if set, else `git rev-parse --show-toplevel`, else the literal `"global"`. Hash and path scheme are reused verbatim from `hooks/companion-preference.mjs` to keep the read side aligned with the write side.
53
+
54
+ ## Companion skills
55
+
56
+ - `hooks/companion-preference.mjs` — the writer that produces the JSONL this command reads.
57
+ - `skills/superpowers.md` § "Companion-Preference Override" — the broader contract for the setting this command's dataset measures.
58
+ - `commands/dashboard.md` — the broader continuous-improvement status surface; this command is the dispatcher-bias-specific narrower view.
@@ -1,115 +1,115 @@
1
- ---
2
- name: continuous-improvement
3
- description: "Reflect on the current session, analyze observations for patterns, and show instinct status. Runs on-demand to save tokens."
4
- ---
5
-
6
- # /continuous-improvement
7
-
8
- Run this when you want to reflect and learn — not every session. Three steps in order.
9
-
10
- ## Step 1: Reflect
11
-
12
- Generate a reflection for this session based on what happened:
13
-
14
- ```
15
- ## Reflection — [Date]
16
- - What worked:
17
- - What failed:
18
- - What I'd do differently:
19
- - Rule to add:
20
- - Iteration — Next best recommendations (ranked, top 3):
21
- 1. <primary — strongest next move>
22
- 2. <alternative — different angle>
23
- 3. <alternative — smaller/larger scope>
24
- ```
25
-
26
- If there's a "Rule to add", create an instinct YAML file with 0.6 starting confidence in the project's instinct directory.
27
-
28
- The "Iteration — Next best recommendations" field is the Law 6 handoff. List the **top 3 ranked** core-development moves — what to build, fix, refactor, or investigate next so the feature/system advances. Item #1 is the strongest; #2 and #3 are alternatives the user can pivot to. NOT git steps (commit, push, PR), NOT verification re-runs, NOT deploy actions — those belong in the end-of-run summary.
29
-
30
- Format per item: `<verb> <object at path:line> (<why, one clause grounded in current context>)`.
31
-
32
- Rules: always exactly 3 distinct directions, not padding. If fewer real moves exist, fill remaining slots with `None — goal met from this angle.` If the goal is fully met across all angles, write `1. None — goal met, stop.` and omit #2 and #3.
33
-
34
- ## Step 2: Analyze Observations
35
-
36
- Check `~/.claude/instincts/` for the current project (detect via git root → SHA-256 first 12 chars).
37
-
38
- Look at `~/.claude/instincts/<hash>/observations.jsonl`. If 20+ lines exist:
39
-
40
- 1. Read the last 500 lines
41
- 2. Read existing instinct `*.yaml` files (project + global)
42
- 3. Detect patterns:
43
- - User corrections → "don't do X" instincts
44
- - Error→fix sequences → "when X fails, try Y"
45
- - Repeated workflows (3+ times) → "for X, do A→B→C"
46
- - Tool preferences → "use tool Y for task X"
47
- 4. Create/update instinct YAML files
48
- 5. Be conservative: only create instincts for 3+ observations of the same pattern
49
-
50
- If fewer than 20 observations, skip analysis and note the count.
51
-
52
- ### Multi-Agent Analysis (500+ observations)
53
-
54
- When observation backlog is large, parallelize:
55
- - **Agent 1:** User corrections + error→fix patterns
56
- - **Agent 2:** Repeated workflows + tool preferences
57
- - **Agent 3:** Cross-reference existing instincts for updates
58
-
59
- Merge results and deduplicate before writing YAML files.
60
-
61
- ## Step 3: Show Status
62
-
63
- Display all instincts for the current project + global:
64
-
65
- ```
66
- === continuous-improvement ===
67
-
68
- ## Level: [CAPTURE | ANALYZE | SUGGEST | AUTO-APPLY]
69
-
70
- ## Session Reflection
71
- - What worked: [from this session]
72
- - What failed: [from this session]
73
- - What I'd do differently: [from this session]
74
- - Rule to add: [captured as instinct]
75
- - Iteration — Next best recommendations (ranked, top 3):
76
- 1. [primary core-development move]
77
- 2. [alternative angle]
78
- 3. [alternative scope]
79
-
80
- ## Learning
81
- NEW [instinct-id] [domain] [confidence] (from reflection)
82
- ↑ [instinct-id] [domain] [old]→[new] (+N observations)
83
-
84
- ## Instincts — [project-name] ([hash])
85
- ● [0.85] instinct-id domain auto-apply
86
- ◐ [0.60] instinct-id domain suggest
87
- ○ [0.35] instinct-id domain silent
88
-
89
- ## Instincts — global
90
- ● [0.90] instinct-id domain auto-apply
91
-
92
- ## Next
93
- - Keep working — hooks capture automatically
94
- - System auto-levels as instincts gain confidence
95
- ```
96
-
97
- If no instincts or observations exist yet, explain this is expected — the system is in CAPTURE level and will create instincts after 20+ observations accumulate.
98
-
99
- ## Subcommands
100
-
101
- ### `/continuous-improvement weekly`
102
-
103
- Set up a weekly analysis schedule:
104
- 1. Create a cron/loop schedule that runs `/continuous-improvement analyze` every 7 days
105
- 2. Confirm the schedule to the user
106
- 3. Show next scheduled run date
107
-
108
- ### `/continuous-improvement always-on`
109
-
110
- Toggle always-on mode for the current project:
111
- 1. Find project hash
112
- 2. Create/update `~/.claude/instincts/<hash>/config.yaml` with `always_on: true|false`
113
- 3. Confirm the change
114
-
115
- **Default is off** — observations accumulate silently, analysis only runs when you ask.
1
+ ---
2
+ name: continuous-improvement
3
+ description: "Reflect on the current session, analyze observations for patterns, and show instinct status. Runs on-demand to save tokens."
4
+ ---
5
+
6
+ # /continuous-improvement
7
+
8
+ Run this when you want to reflect and learn — not every session. Three steps in order.
9
+
10
+ ## Step 1: Reflect
11
+
12
+ Generate a reflection for this session based on what happened:
13
+
14
+ ```
15
+ ## Reflection — [Date]
16
+ - What worked:
17
+ - What failed:
18
+ - What I'd do differently:
19
+ - Rule to add:
20
+ - Iteration — Next best recommendations (ranked, top 3):
21
+ 1. <primary — strongest next move>
22
+ 2. <alternative — different angle>
23
+ 3. <alternative — smaller/larger scope>
24
+ ```
25
+
26
+ If there's a "Rule to add", create an instinct YAML file with 0.6 starting confidence in the project's instinct directory.
27
+
28
+ The "Iteration — Next best recommendations" field is the Law 6 handoff. List the **top 3 ranked** core-development moves — what to build, fix, refactor, or investigate next so the feature/system advances. Item #1 is the strongest; #2 and #3 are alternatives the user can pivot to. NOT git steps (commit, push, PR), NOT verification re-runs, NOT deploy actions — those belong in the end-of-run summary.
29
+
30
+ Format per item: `<verb> <object at path:line> (<why, one clause grounded in current context>)`.
31
+
32
+ Rules: always exactly 3 distinct directions, not padding. If fewer real moves exist, fill remaining slots with `None — goal met from this angle.` If the goal is fully met across all angles, write `1. None — goal met, stop.` and omit #2 and #3.
33
+
34
+ ## Step 2: Analyze Observations
35
+
36
+ Check `~/.claude/instincts/` for the current project (detect via git root → SHA-256 first 12 chars).
37
+
38
+ Look at `~/.claude/instincts/<hash>/observations.jsonl`. If 20+ lines exist:
39
+
40
+ 1. Read the last 500 lines
41
+ 2. Read existing instinct `*.yaml` files (project + global)
42
+ 3. Detect patterns:
43
+ - User corrections → "don't do X" instincts
44
+ - Error→fix sequences → "when X fails, try Y"
45
+ - Repeated workflows (3+ times) → "for X, do A→B→C"
46
+ - Tool preferences → "use tool Y for task X"
47
+ 4. Create/update instinct YAML files
48
+ 5. Be conservative: only create instincts for 3+ observations of the same pattern
49
+
50
+ If fewer than 20 observations, skip analysis and note the count.
51
+
52
+ ### Multi-Agent Analysis (500+ observations)
53
+
54
+ When observation backlog is large, parallelize:
55
+ - **Agent 1:** User corrections + error→fix patterns
56
+ - **Agent 2:** Repeated workflows + tool preferences
57
+ - **Agent 3:** Cross-reference existing instincts for updates
58
+
59
+ Merge results and deduplicate before writing YAML files.
60
+
61
+ ## Step 3: Show Status
62
+
63
+ Display all instincts for the current project + global:
64
+
65
+ ```
66
+ === continuous-improvement ===
67
+
68
+ ## Level: [CAPTURE | ANALYZE | SUGGEST | AUTO-APPLY]
69
+
70
+ ## Session Reflection
71
+ - What worked: [from this session]
72
+ - What failed: [from this session]
73
+ - What I'd do differently: [from this session]
74
+ - Rule to add: [captured as instinct]
75
+ - Iteration — Next best recommendations (ranked, top 3):
76
+ 1. [primary core-development move]
77
+ 2. [alternative angle]
78
+ 3. [alternative scope]
79
+
80
+ ## Learning
81
+ NEW [instinct-id] [domain] [confidence] (from reflection)
82
+ ↑ [instinct-id] [domain] [old]→[new] (+N observations)
83
+
84
+ ## Instincts — [project-name] ([hash])
85
+ ● [0.85] instinct-id domain auto-apply
86
+ ◐ [0.60] instinct-id domain suggest
87
+ ○ [0.35] instinct-id domain silent
88
+
89
+ ## Instincts — global
90
+ ● [0.90] instinct-id domain auto-apply
91
+
92
+ ## Next
93
+ - Keep working — hooks capture automatically
94
+ - System auto-levels as instincts gain confidence
95
+ ```
96
+
97
+ If no instincts or observations exist yet, explain this is expected — the system is in CAPTURE level and will create instincts after 20+ observations accumulate.
98
+
99
+ ## Subcommands
100
+
101
+ ### `/continuous-improvement weekly`
102
+
103
+ Set up a weekly analysis schedule:
104
+ 1. Create a cron/loop schedule that runs `/continuous-improvement analyze` every 7 days
105
+ 2. Confirm the schedule to the user
106
+ 3. Show next scheduled run date
107
+
108
+ ### `/continuous-improvement always-on`
109
+
110
+ Toggle always-on mode for the current project:
111
+ 1. Find project hash
112
+ 2. Create/update `~/.claude/instincts/<hash>/config.yaml` with `always_on: true|false`
113
+ 3. Confirm the change
114
+
115
+ **Default is off** — observations accumulate silently, analysis only runs when you ask.
@@ -1,56 +1,56 @@
1
- ---
2
- name: dashboard
3
- description: Visual dashboard showing instinct health, observation stats, and learning progress
4
- ---
5
-
6
- # Instinct Dashboard
7
-
8
- Generate a visual dashboard for this project's continuous-improvement status.
9
-
10
- ## Instructions
11
-
12
- 1. **Find project hash:** Run `git rev-parse --show-toplevel 2>/dev/null`, then SHA-256 first 12 chars
13
- 2. **Read observations:** Count lines in `~/.claude/instincts/<hash>/observations.jsonl`
14
- 3. **Read instincts:** Load all `*.yaml` files from project dir + `global/`
15
- 4. **Read instinct packs:** Check if any packs from `instinct-packs/` have been loaded
16
-
17
- ## Display Format
18
-
19
- ```
20
- ╔══════════════════════════════════════════════════════════════╗
21
- ║ continuous-improvement Dashboard ║
22
- ╠══════════════════════════════════════════════════════════════╣
23
- ║ ║
24
- ║ Project: <name> Level: <CAPTURE|ANALYZE|...> ║
25
- ║ Sessions: ~<obs/10> Mode: <beginner|expert> ║
26
- ║ ║
27
- ║ ┌─ Observations ────────────────────────────────────────┐ ║
28
- ║ │ Total: <n> Unprocessed: <n> Last: <date> │ ║
29
- ║ └───────────────────────────────────────────────────────┘ ║
30
- ║ ║
31
- ║ ┌─ Instincts ───────────────────────────────────────────┐ ║
32
- ║ │ Total: <n> │ ║
33
- ║ │ ████████░░ Auto-apply (0.7+): <n> │ ║
34
- ║ │ █████░░░░░ Suggest (0.5-0.69): <n> │ ║
35
- ║ │ ██░░░░░░░░ Silent (< 0.5): <n> │ ║
36
- ║ │ Global: <n> Project: <n> │ ║
37
- ║ └───────────────────────────────────────────────────────┘ ║
38
- ║ ║
39
- ║ ┌─ Top Instincts ───────────────────────────────────────┐ ║
40
- ║ │ <list top 5 instincts by confidence with bars> │ ║
41
- ║ └───────────────────────────────────────────────────────┘ ║
42
- ║ ║
43
- ║ ┌─ Health ──────────────────────────────────────────────┐ ║
44
- ║ │ Stale (30+ days): <n> Decaying: <n> │ ║
45
- ║ │ Recently reinforced: <n> │ ║
46
- ║ └───────────────────────────────────────────────────────┘ ║
47
- ║ ║
48
- ╚══════════════════════════════════════════════════════════════╝
49
- ```
50
-
51
- ## After Display
52
-
53
- - If stale instincts > 0: suggest reviewing them
54
- - If unprocessed observations > 20: suggest running analysis
55
- - If no instincts exist: explain the auto-leveling timeline
56
- - Show available instinct packs that haven't been loaded yet
1
+ ---
2
+ name: dashboard
3
+ description: Visual dashboard showing instinct health, observation stats, and learning progress
4
+ ---
5
+
6
+ # Instinct Dashboard
7
+
8
+ Generate a visual dashboard for this project's continuous-improvement status.
9
+
10
+ ## Instructions
11
+
12
+ 1. **Find project hash:** Run `git rev-parse --show-toplevel 2>/dev/null`, then SHA-256 first 12 chars
13
+ 2. **Read observations:** Count lines in `~/.claude/instincts/<hash>/observations.jsonl`
14
+ 3. **Read instincts:** Load all `*.yaml` files from project dir + `global/`
15
+ 4. **Read instinct packs:** Check if any packs from `instinct-packs/` have been loaded
16
+
17
+ ## Display Format
18
+
19
+ ```
20
+ ╔══════════════════════════════════════════════════════════════╗
21
+ ║ continuous-improvement Dashboard ║
22
+ ╠══════════════════════════════════════════════════════════════╣
23
+ ║ ║
24
+ ║ Project: <name> Level: <CAPTURE|ANALYZE|...> ║
25
+ ║ Sessions: ~<obs/10> Mode: <beginner|expert> ║
26
+ ║ ║
27
+ ║ ┌─ Observations ────────────────────────────────────────┐ ║
28
+ ║ │ Total: <n> Unprocessed: <n> Last: <date> │ ║
29
+ ║ └───────────────────────────────────────────────────────┘ ║
30
+ ║ ║
31
+ ║ ┌─ Instincts ───────────────────────────────────────────┐ ║
32
+ ║ │ Total: <n> │ ║
33
+ ║ │ ████████░░ Auto-apply (0.7+): <n> │ ║
34
+ ║ │ █████░░░░░ Suggest (0.5-0.69): <n> │ ║
35
+ ║ │ ██░░░░░░░░ Silent (< 0.5): <n> │ ║
36
+ ║ │ Global: <n> Project: <n> │ ║
37
+ ║ └───────────────────────────────────────────────────────┘ ║
38
+ ║ ║
39
+ ║ ┌─ Top Instincts ───────────────────────────────────────┐ ║
40
+ ║ │ <list top 5 instincts by confidence with bars> │ ║
41
+ ║ └───────────────────────────────────────────────────────┘ ║
42
+ ║ ║
43
+ ║ ┌─ Health ──────────────────────────────────────────────┐ ║
44
+ ║ │ Stale (30+ days): <n> Decaying: <n> │ ║
45
+ ║ │ Recently reinforced: <n> │ ║
46
+ ║ └───────────────────────────────────────────────────────┘ ║
47
+ ║ ║
48
+ ╚══════════════════════════════════════════════════════════════╝
49
+ ```
50
+
51
+ ## After Display
52
+
53
+ - If stale instincts > 0: suggest reviewing them
54
+ - If unprocessed observations > 20: suggest running analysis
55
+ - If no instincts exist: explain the auto-leveling timeline
56
+ - Show available instinct packs that haven't been loaded yet
@@ -33,6 +33,20 @@ The Laws above are the *how*. These five principles are the *why*: code ships fr
33
33
 
34
34
  Code is a liability, not an asset. Speed without these five turns into someone else's incident at 3am — except the someone is you.
35
35
 
36
+ ## Goal-Driven Execution maps onto the Laws
37
+
38
+ "Goal-Driven Execution" is the operator's global principle #4 — tie every change to a stated goal, refuse scope creep, stop when the goal is met. It is not a separate Law here; it is the spine of four existing Laws:
39
+
40
+ | Sub-rule of Goal-Driven Execution | Lives in |
41
+ |---|---|
42
+ | Tie work to a stated goal; if none, ask | Law 2 — the `## Goal` in `task_plan.md` is the single source of truth |
43
+ | Catch drift away from that goal mid-session | Law 2 — the `goal-monitor` skill / `/goal-check` scores recent activity against the goal |
44
+ | Finish one thing; refuse "while I'm here" scope creep | Law 3 |
45
+ | Commit messages lead with the outcome, not the mechanism | Law 4 — "done" is an observed outcome |
46
+ | Iterate one change at a time toward the goal | Law 6 |
47
+
48
+ The `goal-monitor` primitive (`/goal-check`, `ci_goal_check`) is the measurable arm of this principle: it reads the `## Goal` section and reports ON GOAL / DRIFT / NO DATA. Run it at phase boundaries to confirm the work and the plan still agree.
49
+
36
50
  ## The Loop
37
51
 
38
52
  ```
@@ -0,0 +1,39 @@
1
+ ---
2
+ name: distill
3
+ description: Distill repeated successful tool sequences from the observation log into reusable draft instincts, with an explicit propose-edit-promote ladder. Enforces Law 7 (Learn From Every Session).
4
+ ---
5
+
6
+ # /distill — Trajectory Distillation
7
+
8
+ Mine this project's observation log for tool sequences that recurred across multiple successful sessions, and turn the good ones into reusable instincts.
9
+
10
+ ## What it does
11
+
12
+ Groups observations into trajectories, keeps the ones that ended in a passing verification, and finds tool-sequence n-grams that recurred across distinct sessions. Backed by the `ci_distill_candidates` / `ci_distill_propose` / `ci_distill_promote` MCP tools (expert mode) and the `skill-distillation` skill.
13
+
14
+ ## The ladder
15
+
16
+ ```
17
+ ci_distill_candidates # list patterns that qualify (read-only)
18
+ ci_distill_propose id=<id> # write a DRAFT (placeholder body) to drafts/<id>.yaml
19
+ # ... edit the draft body to capture the real recipe ...
20
+ ci_distill_promote id=<id> # promote to a live instinct at 0.5 confidence (SUGGEST)
21
+ ```
22
+
23
+ Drafts never affect behavior until promoted. The draft starts at 0.4 confidence in a `drafts/` subdirectory the instinct loader ignores; promotion writes a live instinct at 0.5 (SUGGEST tier).
24
+
25
+ ## Candidate criteria
26
+
27
+ - The trajectory must have ended in success (`verify-exit-0` or `reflection-pass`).
28
+ - The tool sequence must have recurred at least 3 times across at least 2 distinct sessions.
29
+ - A pattern repeated only within one session is rejected — that is repetition, not a reusable skill.
30
+
31
+ ## Why the human edit step
32
+
33
+ A tool sequence is evidence, not a recipe. `Read → Edit → Bash → Edit → Bash` is a TDD loop, but the value is in the preconditions and concrete steps. Editing the draft body before promotion is the guard against fabricating confident skills from coincidental call ordering.
34
+
35
+ ## Pairs with
36
+
37
+ - **`skill-distillation`** skill — the discipline this command runs.
38
+ - **`continuous-improvement`** (core SKILL.md, Law 7 — Learn From Every Session).
39
+ - **`recall`** — before promoting, check whether an existing instinct already covers the pattern.
@@ -0,0 +1,53 @@
1
+ ---
2
+ name: goal-check
3
+ description: Check whether recent tool activity still relates to the stated goal in task_plan.md, reporting a drift score and the top off-goal tool calls. Enforces Law 2 (Plan Is Sacred).
4
+ ---
5
+
6
+ # /goal-check — Goal Drift Check
7
+
8
+ Score this session's recent tool activity against the stated goal and report whether the work is still ON GOAL or has DRIFTed.
9
+
10
+ ## What it does
11
+
12
+ Reads the `## Goal` section of `task_plan.md` (plus optional `## Goal Keywords` and `## Goal Scope` sections), scores the most recent observations from `~/.claude/instincts/<project-hash>/observations.jsonl`, and reports a drift score with the top off-goal tool calls. Backed by the `ci_goal_check` MCP tool (expert mode) and the `goal-monitor` skill.
13
+
14
+ ## How to invoke
15
+
16
+ ```
17
+ ci_goal_check # last 30 observations vs task_plan.md
18
+ ci_goal_check limit=50 # widen the observation window
19
+ ci_goal_check goal_file=docs/x.md # score against a specific plan file
20
+ ```
21
+
22
+ Goal source resolution order: `task_plan.md` in the project root, then `~/.claude/instincts/<project-hash>/goal.md`, then an explicit `goal_file`.
23
+
24
+ ## Output shape
25
+
26
+ ```
27
+ ## Goal Check
28
+
29
+ **Goal source:** /home/me/repo/task_plan.md
30
+
31
+ **Status:** DRIFT
32
+ **Score:** 12% (1/8 matched, threshold 30%)
33
+ **Reason:** Only 1/8 recent observations relate to the goal (threshold 0.3).
34
+ **Goal keywords:** oauth, jwt, login, session
35
+
36
+ **Top off-goal activity (most recent 5):**
37
+ - [2026-05-28T12:01:00Z] Edit — src/marketing/landing.ts
38
+ - ...
39
+
40
+ _Drift detected. Either steer back to the goal, or update the `## Goal` section in your plan if the goal has legitimately changed._
41
+ ```
42
+
43
+ ## Acting on the result
44
+
45
+ - **ON GOAL** — the plan and the work agree; proceed.
46
+ - **DRIFT** — steer back to the goal, or update `## Goal` if it has legitimately changed. Keeping the plan and the work in disagreement is the Law 2 violation this command catches.
47
+ - **NO DATA** — the observation window is still filling; keep working.
48
+
49
+ ## Pairs with
50
+
51
+ - **`goal-monitor`** skill — the discipline this command runs.
52
+ - **`continuous-improvement`** (core SKILL.md, Law 2 — Plan Is Sacred).
53
+ - **`planning-with-files`** — creates the `task_plan.md` whose `## Goal` section this command reads.
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: grill-me
3
+ description: "Interview the user relentlessly about a plan or design until shared understanding is reached. Ported from mattpocock/skills under MIT."
4
+ ---
5
+
6
+ # /grill-me
7
+
8
+ Stress-test the current plan or design by interviewing the user one question at a time, walking every branch of the decision tree, and recommending an answer for each.
9
+
10
+ ## Trigger phrases
11
+
12
+ - `/grill-me`
13
+ - "grill me"
14
+ - "stress-test this plan"
15
+ - "interview me about this"
16
+ - "what am I missing?"
17
+
18
+ ## What happens
19
+
20
+ 1. Identify the current plan or design from the conversation — the high-level goal, the assumptions in play, the decisions already made.
21
+ 2. Walk the decision tree top-down. For each unresolved branch, ask exactly **one question** with a **recommended answer**.
22
+ 3. Before asking, check whether the codebase already answers the question (`grep`, `ls`, file reads). If it does, use that and skip the question.
23
+ 4. Resolve dependencies in order — do not ask about deployment before the data model is pinned.
24
+ 5. Stop when the plan is shippable cold to a fresh agent. Do not interview past the point of usefulness.
25
+
26
+ ## Five interview rules
27
+
28
+ 1. **One question at a time.** Never multi-question; force depth on every branch.
29
+ 2. **Always recommend.** Every question carries "my answer would be X because Y".
30
+ 3. **Explore before asking.** Code answers beat user-attention answers.
31
+ 4. **Walk the tree, do not jump.** Order matters.
32
+ 5. **Stop when shippable.** End state is a plan a fresh agent could execute, not an infinite interview.
33
+
34
+ ## Skill file
35
+
36
+ Full behavior is defined in [`skills/grill-me.md`](../skills/grill-me.md). The verbatim upstream cold-storage copy lives at [`third-party/mattpocock-skills/skills/productivity/grill-me/SKILL.md`](../third-party/mattpocock-skills/skills/productivity/grill-me/SKILL.md); SHA pin in [`third-party/MANIFEST.md`](../third-party/MANIFEST.md).
37
+
38
+ ## Attribution
39
+
40
+ Ported from [mattpocock/skills `productivity/grill-me`](https://github.com/mattpocock/skills/blob/main/skills/productivity/grill-me/SKILL.md) (MIT, © 2026 Matt Pocock).
@@ -0,0 +1,38 @@
1
+ ---
2
+ name: grill-with-docs
3
+ description: "Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates CONTEXT.md + ADRs inline as decisions crystallise. Ported from mattpocock/skills under MIT."
4
+ ---
5
+
6
+ # /grill-with-docs
7
+
8
+ Stress-test the current plan or design by interviewing the user one question at a time AND updating the project's domain-language doc (`CONTEXT.md`) and architecture decision records (`docs/adr/`) inline as decisions land.
9
+
10
+ ## Trigger phrases
11
+
12
+ - `/grill-with-docs`
13
+ - "grill me and update the docs"
14
+ - "stress-test this against our domain model"
15
+ - "let's nail down the language and ADR this"
16
+
17
+ ## What happens
18
+
19
+ 1. Read `CONTEXT.md` (or `CONTEXT-MAP.md` + per-context `CONTEXT.md`) and `docs/adr/` if they exist. Use them as the source of truth for project language and prior decisions.
20
+ 2. Walk the decision tree top-down. One question at a time with a recommended answer.
21
+ 3. Challenge fuzzy terms against the glossary. Sharpen vague language. Stress-test relationships with concrete scenarios. Cross-reference user statements against the code.
22
+ 4. When a term is resolved, update `CONTEXT.md` immediately (lazy-create if missing). Use the format in the skill's Appendix A.
23
+ 5. Offer an ADR only when all three are true: hard to reverse, surprising without context, result of a real trade-off. Use the format in Appendix B.
24
+
25
+ ## When to fire this instead of `/grill-me`
26
+
27
+ | Skill | Use when |
28
+ |---|---|
29
+ | `/grill-me` | Conversation-only grilling; no project to update yet, or no docs convention. |
30
+ | `/grill-with-docs` | Project has `CONTEXT.md` or is ready to start one; decisions should persist past the session. |
31
+
32
+ ## Skill file
33
+
34
+ Full behavior, format specs, and 7 Laws fit are defined in [`skills/grill-with-docs.md`](../skills/grill-with-docs.md). The verbatim upstream cold-storage copies live at [`third-party/mattpocock-skills/skills/engineering/grill-with-docs/`](../third-party/mattpocock-skills/skills/engineering/grill-with-docs/) (`SKILL.md`, `CONTEXT-FORMAT.md`, `ADR-FORMAT.md`); SHA pin in [`third-party/MANIFEST.md`](../third-party/MANIFEST.md).
35
+
36
+ ## Attribution
37
+
38
+ Ported from [mattpocock/skills `engineering/grill-with-docs`](https://github.com/mattpocock/skills/blob/main/skills/engineering/grill-with-docs/SKILL.md) (MIT, © 2026 Matt Pocock). Mattpocock calls this his most powerful skill: "It's hard to explain how powerful this is. It might be the single coolest technique in this repo."