continuous-improvement 3.8.0 → 3.9.2
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/.claude-plugin/marketplace.json +2 -14
- package/CHANGELOG.md +25 -0
- package/LICENSE +21 -21
- package/QUICKSTART.md +148 -101
- package/README.md +50 -18
- package/action.yml +33 -33
- package/bin/analyze.sh +161 -161
- package/bin/backfill.mjs +19 -19
- package/bin/check-doc-runtime-claims.mjs +120 -0
- package/bin/generate-plugin-manifests.mjs +2 -0
- package/bin/hook-stats.mjs +21 -21
- package/bin/install.mjs +51 -44
- package/bin/mcp-server.mjs +43 -40
- package/bin/refresh-third-party.mjs +416 -416
- package/commands/continuous-improvement.md +115 -115
- package/commands/dashboard.md +56 -56
- package/commands/discipline.md +51 -51
- package/commands/proceed-with-the-recommendation.md +62 -62
- package/commands/seven-laws.md +16 -16
- package/commands/superpowers.md +119 -92
- package/commands/workspace-surface-audit.md +77 -77
- package/hooks/gateguard.mjs +172 -0
- package/hooks/observe.sh +172 -172
- package/hooks/session.sh +106 -106
- package/hooks/three-section-close.mjs +181 -181
- package/instinct-packs/go.json +58 -58
- package/instinct-packs/meta.json +16 -16
- package/instinct-packs/python.json +58 -58
- package/instinct-packs/react.json +58 -58
- package/lib/gateguard-state.mjs +85 -0
- package/lib/plugin-metadata.mjs +25 -18
- package/llms.txt +68 -68
- package/package.json +3 -2
- package/plugins/beginner.json +1 -1
- package/plugins/continuous-improvement/.claude-plugin/marketplace.json +1 -1
- package/plugins/continuous-improvement/.claude-plugin/plugin.json +1 -1
- package/plugins/continuous-improvement/LICENSE +21 -21
- package/plugins/continuous-improvement/README.md +1 -0
- package/plugins/continuous-improvement/agents/README.md +120 -0
- package/plugins/continuous-improvement/agents/code-reviewer.md +97 -0
- package/plugins/continuous-improvement/agents/security-auditor.md +101 -0
- package/plugins/continuous-improvement/agents/test-engineer.md +95 -0
- package/plugins/continuous-improvement/bin/backfill.mjs +19 -19
- package/plugins/continuous-improvement/bin/mcp-server.mjs +43 -40
- package/plugins/continuous-improvement/commands/continuous-improvement.md +115 -115
- package/plugins/continuous-improvement/commands/dashboard.md +56 -56
- package/plugins/continuous-improvement/commands/discipline.md +51 -51
- package/plugins/continuous-improvement/commands/proceed-with-the-recommendation.md +62 -62
- package/plugins/continuous-improvement/commands/seven-laws.md +16 -16
- package/plugins/continuous-improvement/commands/superpowers.md +119 -92
- package/plugins/continuous-improvement/commands/workspace-surface-audit.md +77 -77
- package/plugins/continuous-improvement/hooks/gateguard.mjs +172 -0
- package/plugins/continuous-improvement/hooks/hooks.json +6 -1
- package/plugins/continuous-improvement/hooks/observe.sh +172 -172
- package/plugins/continuous-improvement/hooks/session.sh +106 -106
- package/plugins/continuous-improvement/hooks/three-section-close.mjs +181 -181
- package/plugins/continuous-improvement/instinct-packs/go.json +58 -58
- package/plugins/continuous-improvement/instinct-packs/meta.json +16 -16
- package/plugins/continuous-improvement/instinct-packs/python.json +58 -58
- package/plugins/continuous-improvement/instinct-packs/react.json +58 -58
- package/plugins/continuous-improvement/lib/plugin-metadata.mjs +25 -18
- package/plugins/continuous-improvement/skills/README.md +4 -1
- package/plugins/continuous-improvement/skills/deploy-receipt/SKILL.md +47 -0
- package/plugins/continuous-improvement/skills/gateguard/SKILL.md +17 -9
- package/plugins/continuous-improvement/skills/para-memory-files/SKILL.md +108 -108
- package/plugins/continuous-improvement/skills/proceed-with-the-recommendation/SKILL.md +1 -8
- package/plugins/continuous-improvement/skills/ralph/SKILL.md +221 -221
- package/plugins/continuous-improvement/skills/recovery-classification/SKILL.md +73 -0
- package/plugins/continuous-improvement/skills/safety-guard/SKILL.md +76 -76
- package/plugins/continuous-improvement/skills/state-reconciliation/SKILL.md +63 -0
- package/plugins/continuous-improvement/skills/strategic-compact/SKILL.md +104 -104
- package/plugins/continuous-improvement/skills/superpowers/SKILL.md +22 -15
- package/plugins/continuous-improvement/skills/tdd-workflow/SKILL.md +411 -411
- package/plugins/continuous-improvement/skills/token-budget-advisor/SKILL.md +136 -136
- package/plugins/continuous-improvement/skills/verification-loop/SKILL.md +32 -0
- package/plugins/continuous-improvement/skills/wild-risa-balance/SKILL.md +191 -191
- package/plugins/continuous-improvement/skills/worktree-safety/SKILL.md +66 -0
- package/plugins/expert.json +1 -1
- package/skills/README.md +79 -79
- package/skills/deploy-receipt.md +47 -0
- package/skills/gateguard.md +17 -9
- package/skills/para-memory-files.md +108 -108
- package/skills/proceed-with-the-recommendation.md +1 -8
- package/skills/ralph.md +221 -221
- package/skills/recovery-classification.md +73 -0
- package/skills/safety-guard.md +76 -76
- package/skills/state-reconciliation.md +63 -0
- package/skills/strategic-compact.md +104 -104
- package/skills/superpowers.md +22 -15
- package/skills/tdd-workflow.md +411 -411
- package/skills/token-budget-advisor.md +136 -136
- package/skills/verification-loop.md +32 -0
- package/skills/wild-risa-balance.md +191 -191
- package/skills/worktree-safety.md +66 -0
- package/templates/insights-claude-md.md +91 -0
- package/templates/verify-ladder.example.json +37 -24
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "continuous-improvement",
|
|
3
|
-
"description": "Marketplace for the Continuous Improvement Claude Code plugin and
|
|
3
|
+
"description": "Marketplace for the Continuous Improvement Claude Code plugin and four vendored upstream companions (Obra superpowers, addyosmani/agent-skills, ruflo-swarm, oh-my-claudecode). All four companions are pinned-SHA snapshots in third-party/ — see third-party/MANIFEST.md for refresh recipes and per-snapshot OUR_NOTES.md for integration scope. Product-management coverage is provided out-of-band by phuryn/pm-skills via Claude Code's plugin marketplace — see docs/THIRD_PARTY.md.",
|
|
4
4
|
"owner": {
|
|
5
5
|
"name": "naimkatiman"
|
|
6
6
|
},
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
{
|
|
9
9
|
"name": "continuous-improvement",
|
|
10
10
|
"description": "Stops Claude Code from skipping research, claiming 'done' without verifying, and repeating yesterday's mistakes. The 7 Laws of AI Agent Discipline — 13 enforcement skills, gating hooks, and the Mulahazah auto-leveling instinct engine.",
|
|
11
|
-
"version": "3.
|
|
11
|
+
"version": "3.9.2",
|
|
12
12
|
"source": "./plugins/continuous-improvement",
|
|
13
13
|
"author": {
|
|
14
14
|
"name": "naimkatiman"
|
|
@@ -61,18 +61,6 @@
|
|
|
61
61
|
},
|
|
62
62
|
"category": "orchestration",
|
|
63
63
|
"homepage": "https://github.com/Yeachan-Heo/oh-my-claudecode"
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
"name": "pm-skills",
|
|
67
|
-
"description": "Product management skills for AI agents — 41 skills + 47 commands across the full product lifecycle (discover, define, develop, deliver, measure, iterate). Includes Meeting Skills Family v2.11.0 (5 cross-cutting skills under a shared contract with enforcing CI), OKR Skills v2.12.0 (foundation-okr-writer + measure-okr-grader for the quarterly OKR write-and-score cycle), lean canvas, persona, JTBD, PRD, user stories, acceptance criteria, hypothesis, experiment design, retrospective, launch checklist, release notes, and pm-skill-builder for authoring new skills. Follows the agentskills.io specification. Vendored snapshot at third-party/pm-skills/ pinned to upstream SHA 8d23508 (v2.13.1).",
|
|
68
|
-
"version": "2.13.1",
|
|
69
|
-
"source": "./third-party/pm-skills",
|
|
70
|
-
"author": {
|
|
71
|
-
"name": "product-on-purpose",
|
|
72
|
-
"url": "https://github.com/product-on-purpose"
|
|
73
|
-
},
|
|
74
|
-
"category": "product",
|
|
75
|
-
"homepage": "https://github.com/product-on-purpose/pm-skills"
|
|
76
64
|
}
|
|
77
65
|
]
|
|
78
66
|
}
|
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,31 @@ All notable changes to this skill are documented here.
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
+
## [3.9.0] — 2026-05-07
|
|
12
|
+
|
|
13
|
+
Issue-burndown release. Three PRs landed on top of v3.8.0 — one Windows correctness fix, one test-coverage expansion, one CI hardening — closing two long-standing issues (#59, #2) and tightening the regression net for the class of failure #59 surfaced. No skill or behavior changes; this release is reliability and contributor-experience only.
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- **Windows checkouts stay clean after `npm run build`** (PR #97, closes #59) — `tsc` was emitting CRLF on Windows when overwriting `.mjs` outputs, clashing with `.gitattributes` `eol=lf`. Eleven `.mjs` files plus eight downstream manifest copies surfaced as zero-content "modified" on every clean Windows build, gaslighting `git status` and making explicit-stage workflows noisy. Fix is one line: `compilerOptions.newLine: "lf"` in `tsconfig.json` so `tsc` emits LF on every platform. No-op on Linux/macOS where `tsc` already emitted LF.
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
|
|
21
|
+
- **12 new install.mjs test cases across 4 new describe blocks** (PR #98, closes #2) — coverage on `bin/install.mjs` goes from 9 tests (beginner happy path + idempotency + uninstall) to 21 tests covering: expert-mode `session.sh` and MCP server registration, foreign-hook preservation through both install and uninstall, non-hook settings keys (`theme` etc.) preserved, all six command files installed in beginner mode, Node observer artifacts (`bin/observe.mjs` + `lib/observe-event.mjs`) installed alongside `observe.sh`, unknown-command non-zero exit, invalid `--mode` falls back to beginner, `--pack react` loads instincts, `--pack <bogus>` reports the available pack list. Total test count 511 → 523.
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- **CI `verify-generated` step path widened** (PR #99) — was `git diff --exit-code -- bin test`, now `.claude-plugin bin test lib plugins` to match the `verify:generated` npm script in `package.json`. Future generator drift in `.claude-plugin/`, `lib/`, or `plugins/` (the class of failure #59 named) now fails at PR time instead of slipping through the narrower check.
|
|
26
|
+
|
|
27
|
+
- **`package-lock.json` synced 3.3.0 → 3.8.0** (PR #99) — lockfile had drifted behind the unified-dispatch release train; running `npm install` on a clean clone produced an unsolicited 4-line lockfile diff. Re-running `npm install` synced it.
|
|
28
|
+
|
|
29
|
+
### Notes
|
|
30
|
+
|
|
31
|
+
- Five issues also closed this session by audit comment (no code change): #54 (rename / split decision settled as no-go in favor of unified dispatch), #24 (stale v3.1.0 announcement), #3 (`CONTRIBUTING.md` already exists), #7 (README badge is dynamic shields.io), #57 (duplicate of #59).
|
|
32
|
+
- Open issue count 24 → 17. Remaining 17 are roadmap (phase 1–4) plus one unscoped item (#4). No active bugs.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
11
36
|
## [3.8.0] — 2026-05-07
|
|
12
37
|
|
|
13
38
|
Unified five-plugin dispatcher train. Six PRs (PR 0, A, B, C, D, E) shipped in dependency order off `feat/unified-dispatch`. Driven by the user's session report (`~/.claude/usage-data/report.html`, 1,218 messages across 178 sessions, 2026-04-10 to 2026-05-07). Ends the two-plugin split between `continuous-improvement:superpowers` (CI dispatcher) and `superpowers:*` (Obra skill bodies) by registering both — plus three more upstream plugins — under one marketplace.
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 Naim Katiman
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Naim Katiman
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/QUICKSTART.md
CHANGED
|
@@ -1,101 +1,148 @@
|
|
|
1
|
-
# Quickstart — continuous-improvement
|
|
2
|
-
|
|
3
|
-
Zero to working in under 2 minutes.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
1
|
+
# Quickstart — continuous-improvement
|
|
2
|
+
|
|
3
|
+
Zero to working in under 2 minutes.
|
|
4
|
+
|
|
5
|
+
This is the **Beginner** path. It mirrors README.md and is enough for ~90% of users — no Node, no bash, no shell. If you want the MCP server, observation hooks, and instinct packs, see the **Expert (npx)** section at the bottom.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Step 1: Install (Beginner — inside Claude Code)
|
|
10
|
+
|
|
11
|
+
Run these two slash commands inside Claude Code. The doubled name is correct: it reads as `<plugin>@<marketplace>`.
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
/plugin marketplace add naimkatiman/continuous-improvement
|
|
15
|
+
/plugin install continuous-improvement@continuous-improvement
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Optional companion (recommended) — the Obra `superpowers` skills library that the `/superpowers` dispatcher routes into:
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
/plugin install superpowers@continuous-improvement
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Without it, `/superpowers` still works — it falls back to inline behavior — but specialist skills like `superpowers:test-driven-development` and `superpowers:writing-plans` will not be available as dedicated targets.
|
|
25
|
+
|
|
26
|
+
### Verify the install — two checks
|
|
27
|
+
|
|
28
|
+
**Check 1 — slash command loaded.** Quit and reopen Claude Code (slash commands only load on session start), then run:
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
/discipline
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
You should see the 7 Laws quick-reference card. If the command is not recognized after a restart, see Troubleshooting in [README.md](README.md#troubleshooting-install).
|
|
35
|
+
|
|
36
|
+
**Check 2 — runtime gate is firing** (the `hooks/gateguard.mjs` script must invoke). Ask Claude to write a throwaway file with no research first:
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
Edit a new file scratch.txt and put the word "hello" in it. Don't research anything first.
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
You should see Claude **blocked** by the bundled `gateguard` PreToolUse hook (`hooks/gateguard.mjs`) with a fact-list reason: list importers, list public functions affected, show data-file schemas, quote the user instruction. That block is the proof the hook is wired and firing. If Claude writes the file with no pause, the hook did not load — see [README.md → Troubleshooting](README.md#troubleshooting-install).
|
|
43
|
+
|
|
44
|
+
If you also want to confirm observation hooks: run `/dashboard` and look for a non-zero `Total` under `Observations` — that proves `observe.sh` / `observe.mjs` is recording tool calls.
|
|
45
|
+
|
|
46
|
+
### How enforcement works
|
|
47
|
+
|
|
48
|
+
The 7 Laws are enforced at **two layers**:
|
|
49
|
+
|
|
50
|
+
- **Runtime layer (hooks).** `gateguard` ships as a PreToolUse hook (`hooks/gateguard.mjs`) that physically blocks Edit / Write / MultiEdit / destructive Bash on the first mutation per file until the agent presents the facts. Destructive Bash (`rm -rf`, `git push --force`, `--force-with-lease`, `DROP DATABASE`, Windows `Remove-Item -Recurse`, etc.) is gated on every call. Read-only and exploratory tools (Read, Grep, Glob, routine Bash like `git status`) bypass the gate.
|
|
51
|
+
- **Model layer (skills).** When the agent does present facts and the runtime gate clears, the skills (`tdd-workflow`, `verification-loop`, `proceed-with-the-recommendation`, etc.) take over to keep the rest of the loop disciplined. These are model-side — the agent reads each skill and applies it.
|
|
52
|
+
|
|
53
|
+
Together: the runtime layer catches the failure mode "agent skips investigation," and the model layer catches everything that happens after investigation succeeds.
|
|
54
|
+
|
|
55
|
+
If you ever see Claude skip a Law that the runtime hook doesn't enforce, name it back: *"You skipped Law 1 — research first."* That correction is what trains the instinct system over time.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Step 2: Use it
|
|
60
|
+
|
|
61
|
+
Give your agent a task and prefix it:
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
Use the continuous-improvement framework to [your task here].
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Examples:
|
|
68
|
+
```
|
|
69
|
+
Use the continuous-improvement framework to add pagination to the users API endpoint.
|
|
70
|
+
Use the continuous-improvement framework to debug why the login form breaks on mobile.
|
|
71
|
+
Use the continuous-improvement framework to refactor the payment module to use the new SDK.
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Your agent will research, plan, execute one thing at a time, verify, and reflect.
|
|
75
|
+
|
|
76
|
+
For long tasks that need persistent notes on disk, run:
|
|
77
|
+
|
|
78
|
+
```
|
|
79
|
+
/planning-with-files
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
That creates `task_plan.md`, `findings.md`, and `progress.md` in the project root only when you explicitly ask for it.
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Step 3: Check learning
|
|
87
|
+
|
|
88
|
+
After completing non-trivial work, run the canonical reflection command:
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
/seven-laws
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
This shows what the system has learned — instincts, confidence levels, and the current auto-level. `/continuous-improvement` is kept as an alias for backward compatibility and runs the same workflow.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## How auto-leveling works
|
|
99
|
+
|
|
100
|
+
You don't configure anything. The system promotes itself:
|
|
101
|
+
|
|
102
|
+
| Your usage | What happens |
|
|
103
|
+
|-----------|-------------|
|
|
104
|
+
| First sessions | Hooks capture tool calls silently. No behavior change. |
|
|
105
|
+
| After ~20 sessions | Agent analyzes patterns, creates instincts (silent — you see nothing) |
|
|
106
|
+
| After ~50 sessions | Instincts cross 0.5 → agent starts suggesting: "Consider: [action]" |
|
|
107
|
+
| After ~100 sessions | Instincts cross 0.7 → agent auto-applies learned behaviors |
|
|
108
|
+
|
|
109
|
+
Corrections drop instinct confidence. Unused instincts decay. The system self-corrects.
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Common issues
|
|
114
|
+
|
|
115
|
+
**Agent skips straight to coding?**
|
|
116
|
+
→ Say: *"You skipped research and planning. Go back to Law 1."*
|
|
117
|
+
|
|
118
|
+
**Agent writes "done" without verifying?**
|
|
119
|
+
→ Reply: *"What verification command did you run? Show me the output."*
|
|
120
|
+
|
|
121
|
+
**No instincts showing up yet?**
|
|
122
|
+
→ Normal. The system needs 20+ observations before it creates instincts. Keep working.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## Expert (npx) — only if you want MCP, hooks, or instinct packs
|
|
127
|
+
|
|
128
|
+
The Beginner path above is enough for most users. Pick this only if you want the MCP tools (12 of them, including `ci_plan_init` / `ci_plan_status` for `task_plan.md`-style planning), the session hooks that feed Mulahazah, or the starter instinct packs.
|
|
129
|
+
|
|
130
|
+
Do not run both paths against the same `~/.claude/` — that produces duplicated state. Pick one and stick with it.
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
npx continuous-improvement install --mode expert
|
|
134
|
+
npx continuous-improvement install --pack react # optional: react | python | go | meta
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
Preconditions: Node 18 / 20 / 22, plus bash on Windows (Git Bash or WSL — `hooks/observe.sh` is a bash script). See [README.md § Expert](README.md#expert--adds-mcp-server-observation-hooks-and-instinct-packs) for the full preconditions and troubleshooting matrix.
|
|
138
|
+
|
|
139
|
+
Verify with `/dashboard` — you should see instinct health and observation count.
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## That's it
|
|
144
|
+
|
|
145
|
+
The skill is most valuable when:
|
|
146
|
+
- You're under pressure and tempted to skip steps
|
|
147
|
+
- A task has failed 2+ times
|
|
148
|
+
- You want your agent to stop repeating the same mistakes
|
package/README.md
CHANGED
|
@@ -38,7 +38,7 @@ Every one of those failures is the agent skipping a step a disciplined engineer
|
|
|
38
38
|
## What you get
|
|
39
39
|
|
|
40
40
|
- **A 7-step discipline** the agent must follow every task — research → plan → execute one thing → verify → reflect → learn → iterate. Each Law has at least one skill or hook that enforces it.
|
|
41
|
-
- **
|
|
41
|
+
- **14 bundled skills + a runtime PreToolUse hook** that turn the Laws into enforced behavior — `gateguard` runs as a PreToolUse hook (`hooks/gateguard.mjs`) that physically blocks Edit/Write/destructive Bash until the agent presents fact-list investigation. `tdd-workflow` enforces RED → GREEN → REFACTOR, `verification-loop` runs build/types/tests/security before "done", `deploy-receipt` closes the merge-to-production gap (deployed SHA + healthcheck), `proceed-with-the-recommendation` walks any agent's recommendation list top-to-bottom with per-item verification. The runtime hook catches the "skipped investigation" failure mode at the tool-call layer; the skills run model-side once the gate clears. See [§ How enforcement works](#how-enforcement-works) for the two-layer model.
|
|
42
42
|
- **Mulahazah, the auto-leveling instinct engine** — hooks capture every tool call; after ~20 observations the agent analyzes patterns and creates instincts with confidence scores. Suggestions appear at 0.5+, auto-apply at 0.7+, decay when ignored. Project-scoped, promote to global after 2+ projects. You configure nothing.
|
|
43
43
|
- **A GitHub Action transcript linter** that catches skipped Laws in CI — writes without prior research, edits without verification, too many files at once.
|
|
44
44
|
- **Two install paths** — Beginner is two slash commands inside Claude Code (no Node, no bash, ~90% of users). Expert adds the MCP server, observation hooks, instinct packs, and the linter.
|
|
@@ -51,7 +51,7 @@ The whole thing is MIT, free, and lives in this one repo. No service, no account
|
|
|
51
51
|
|
|
52
52
|
**If you don't know which to pick, use Beginner.** It is enough for ~90% of users and adds no Node or bash dependency.
|
|
53
53
|
|
|
54
|
-
### Beginner — inside Claude Code, two commands
|
|
54
|
+
### Beginner — inside Claude Code, two commands (plus one optional companion)
|
|
55
55
|
|
|
56
56
|
You get the 7 Laws skill, the hooks that enforce it, and the slash commands. Nothing else to install.
|
|
57
57
|
|
|
@@ -63,9 +63,34 @@ You get the 7 Laws skill, the hooks that enforce it, and the slash commands. Not
|
|
|
63
63
|
|
|
64
64
|
The doubled name is correct: it reads as `<plugin>@<marketplace>`.
|
|
65
65
|
|
|
66
|
+
**Optional companion (recommended).** The `/superpowers` dispatcher routes per-task to specialist skills (`writing-plans`, `test-driven-development`, `using-git-worktrees`, `dispatching-parallel-agents`, `finishing-a-development-branch`, etc.) shipped by Obra's `superpowers` plugin, which is vendored into this same marketplace as a pinned-SHA snapshot. Install it with one extra line:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
/plugin install superpowers@continuous-improvement
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Without the companion the dispatcher still works — every routing target has a concrete inline fallback — but specialist quality is fallback-quality, not dedicated-skill-quality.
|
|
73
|
+
|
|
66
74
|
Verify: run `/discipline` in Claude Code — you should see the 7 Laws card.
|
|
67
75
|
If the command is not recognized, restart your Claude Code session first; the marketplace did pick the plugin up but commands load on session start.
|
|
68
76
|
|
|
77
|
+
**Second-stage verify (proves the runtime gate is firing — i.e. `hooks/gateguard.mjs` is invoked — not just docs claiming it).** Ask Claude to write a throwaway file with no research first:
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
Edit a new file scratch.txt and put the word "hello" in it. Don't research anything first.
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
You should see Claude **blocked** by the bundled `gateguard` PreToolUse hook (`hooks/gateguard.mjs`) with a fact-list reason. That block is the proof the hook is wired and enforcing. If Claude writes the file with no pause, the hook did not load — see Troubleshooting below. (To also verify observation hooks, run `/dashboard` and confirm a non-zero `Total` under `Observations`.)
|
|
84
|
+
|
|
85
|
+
### How enforcement works
|
|
86
|
+
|
|
87
|
+
The 7 Laws are enforced at **two layers**:
|
|
88
|
+
|
|
89
|
+
- **Runtime layer (hooks).** `gateguard` ships as a PreToolUse hook (`hooks/gateguard.mjs`) that physically blocks Edit / Write / MultiEdit / destructive Bash on the first mutation per file until the agent presents the facts named in [skills/gateguard.md § Gate Types](skills/gateguard.md). Destructive Bash (`rm -rf`, `git push --force`, `--force-with-lease`, `DROP DATABASE`, Windows `Remove-Item -Recurse`, etc.) is gated on every call, not just first. Read-only and exploratory tools (Read, Grep, Glob, routine Bash like `git status`) bypass the gate. Per-session state at `~/.claude/instincts/<project-hash>/gateguard-session.json` caps cumulative clearances at 50 distinct files to bound stuck-loop damage.
|
|
90
|
+
- **Model layer (skills).** Once the runtime gate clears for a file, the rest of the discipline (`tdd-workflow`, `verification-loop`, `proceed-with-the-recommendation`, etc.) runs model-side — the agent reads each skill and applies it. `observe.sh` / `observe.mjs` records every tool call into the Mulahazah feed for instinct extraction; that surface is observational, not enforcement.
|
|
91
|
+
|
|
92
|
+
V1 honest limitations: the runtime gate is honor-system once the agent flips `_gateguard_facts_presented: true` (the hook can't verify the investigation actually happened); the state file is deletable and parallel hook invocations can race. Documented in `src/hooks/gateguard.mts` and `src/lib/gateguard-state.mts` headers.
|
|
93
|
+
|
|
69
94
|
### Expert — adds MCP server, observation hooks, and instinct packs
|
|
70
95
|
|
|
71
96
|
Pick this if you want the MCP tools (12 of them, including `ci_plan_init` / `ci_plan_status` for `task_plan.md`-style planning), the session hooks that feed Mulahazah, and starter packs.
|
|
@@ -145,20 +170,25 @@ Hooks capture every tool call. After ~20 observations, Claude analyzes patterns
|
|
|
145
170
|
|
|
146
171
|
## Slash Commands
|
|
147
172
|
|
|
173
|
+
`/seven-laws` is the canonical reflect-and-learn command. `/continuous-improvement` is kept as an alias for backward compatibility — both run the same workflow.
|
|
174
|
+
|
|
148
175
|
```
|
|
149
|
-
/seven-laws Reflect, analyze, show status (
|
|
150
|
-
/continuous-improvement
|
|
176
|
+
/seven-laws Reflect, analyze, show status (canonical)
|
|
177
|
+
/continuous-improvement Alias for /seven-laws (kept for backward compat)
|
|
151
178
|
/proceed-with-the-recommendation Walk any agent's recommendation list top-to-bottom
|
|
152
179
|
/superpowers Law activator — route the task to the right specialist
|
|
153
180
|
/workspace-surface-audit Audit repo + MCP + env, recommend high-value skills
|
|
154
181
|
/planning-with-files Create task_plan.md, findings.md, progress.md
|
|
155
182
|
/discipline Quick reference card of the 7 Laws
|
|
156
183
|
/dashboard Visual instinct health dashboard
|
|
157
|
-
/ralph Autonomous PRD story-by-story loop
|
|
184
|
+
/ralph Autonomous PRD story-by-story loop
|
|
158
185
|
/learn-eval Capture session patterns into new skills (expert)
|
|
186
|
+
/harvest Extract reusable patterns from session friction
|
|
187
|
+
/release-train Coordinate a multi-PR release sequence
|
|
188
|
+
/swarm Fan-out coordination across parallel sub-agents
|
|
159
189
|
```
|
|
160
190
|
|
|
161
|
-
In
|
|
191
|
+
All 13 ship in the marketplace bundle. The Beginner install gets all of them. In Expert (`npx`) mode, the installer mirrors the full set into `~/.claude/commands/` and additionally exposes the planning workflow through the MCP tools `ci_plan_init` (initialize `task_plan.md`, `findings.md`, `progress.md` in the project root) and `ci_plan_status` (summarize their current contents).
|
|
162
192
|
|
|
163
193
|
---
|
|
164
194
|
|
|
@@ -168,28 +198,29 @@ Every bundled skill, command, and hook enforces at least one of the 7 Laws. The
|
|
|
168
198
|
|
|
169
199
|
---
|
|
170
200
|
|
|
171
|
-
## All
|
|
201
|
+
## All 14 Skills
|
|
172
202
|
|
|
173
|
-
The plugin ships **1 core + 1 featured +
|
|
203
|
+
The plugin ships **1 core + 1 featured + 5 tier-1 + 4 tier-2 + 3 always-bundled = 14 skills**. Source-of-truth lives in [`skills/`](skills/) (one `.md` per skill); the plugin bundle at [`plugins/continuous-improvement/skills/`](plugins/continuous-improvement/skills/) is regenerated by `npm run build`.
|
|
174
204
|
|
|
175
205
|
<details>
|
|
176
|
-
<summary>Show the full skill table (
|
|
206
|
+
<summary>Show the full skill table (14 rows)</summary>
|
|
177
207
|
|
|
178
208
|
| # | Skill | Tier | Law | What it does |
|
|
179
209
|
|---|-------|------|-----|--------------|
|
|
180
210
|
| 1 | [`continuous-improvement`](SKILL.md) | core | — | The 7 Laws spec itself (research → plan → execute → verify → reflect → learn → iterate) |
|
|
181
211
|
| 2 | [`proceed-with-the-recommendation`](skills/proceed-with-the-recommendation.md) ⭐ | featured | all 7 | Walks any agent's recommendation list top-to-bottom, routes each item, verifies per item, halts on `needs-approval` |
|
|
182
|
-
| 3 | [`gateguard`](skills/gateguard.md) | 1 | 1 | PreToolUse
|
|
212
|
+
| 3 | [`gateguard`](skills/gateguard.md) | 1 | 1 | Runtime PreToolUse hook (`hooks/gateguard.mjs`) + skill: physically blocks Edit/Write/MultiEdit and every destructive Bash until fact-list investigation is presented. Read-only and routine Bash bypass. |
|
|
183
213
|
| 4 | [`para-memory-files`](skills/para-memory-files.md) | 1 | 5 + 7 | Durable file-based memory using PARA (Projects/Areas/Resources/Archives) for cross-session context |
|
|
184
214
|
| 5 | [`tdd-workflow`](skills/tdd-workflow.md) | 1 | 3 + 4 | RED → GREEN → REFACTOR enforcement with 80%+ coverage across unit/integration/E2E |
|
|
185
215
|
| 6 | [`verification-loop`](skills/verification-loop.md) | 1 | 4 | Six-phase verification (build, types, lint, tests, security, diff) with PASS/FAIL report |
|
|
186
|
-
| 7 | [`
|
|
187
|
-
| 8 | [`
|
|
188
|
-
| 9 | [`
|
|
189
|
-
| 10 | [`
|
|
190
|
-
| 11 | [`
|
|
191
|
-
| 12 | [`
|
|
192
|
-
| 13 | [`
|
|
216
|
+
| 7 | [`deploy-receipt`](skills/deploy-receipt.md) | 1 | 4 | Closes the merge-to-production gap on auto-deploy targets (Railway, Cloudflare Workers, Vercel, Netlify, Fly.io). "Done" requires the deployed SHA matching merged HEAD + a healthcheck returning 200 — runs after the vendored `finishing-a-development-branch`. |
|
|
217
|
+
| 8 | [`safety-guard`](skills/safety-guard.md) | 2 | 3 | Three-mode runtime guard (careful/freeze/guard) that blocks destructive commands and locks edits to a directory |
|
|
218
|
+
| 9 | [`strategic-compact`](skills/strategic-compact.md) | 2 | 5 | Suggests `/compact` at logical phase boundaries instead of arbitrary auto-compaction |
|
|
219
|
+
| 10 | [`token-budget-advisor`](skills/token-budget-advisor.md) | 2 | 2 | Token estimator that offers 25/50/75/100% depth choices before answering |
|
|
220
|
+
| 11 | [`wild-risa-balance`](skills/wild-risa-balance.md) | 2 | 2 | Pairs WILD (bold) generation with RISA (safe) execution; splits recommendation lists into pilots above a baseline |
|
|
221
|
+
| 12 | [`ralph`](skills/ralph.md) | companion | 6 | Autonomous loop that executes a PRD story-by-story with quality checks between iterations |
|
|
222
|
+
| 13 | [`superpowers`](skills/superpowers.md) | companion | activator | Law activator — routes tasks to the correct Law-aligned specialist so the right discipline fires automatically |
|
|
223
|
+
| 14 | [`workspace-surface-audit`](skills/workspace-surface-audit.md) | companion | 1 | Audits the active repo, MCP servers, plugins, env, then recommends high-value skills/workflows |
|
|
193
224
|
|
|
194
225
|
</details>
|
|
195
226
|
|
|
@@ -275,7 +306,7 @@ A new skill is a fit if it provably enforces (or is a routed activator for) at l
|
|
|
275
306
|
### What is *not* automated (the honest limits)
|
|
276
307
|
|
|
277
308
|
- The Law-coverage matrix above (`## Law Coverage`) is hand-maintained — add your new skill to the right Law row when you ship it.
|
|
278
|
-
- The "All
|
|
309
|
+
- The "All 14 Skills" count in the section header is a literal — bump it when N changes.
|
|
279
310
|
- Promotion between tiers (e.g. `2` → `1` after it proves itself) is a manual edit to the frontmatter `tier:` field, by design — the maintainer should make that call deliberately.
|
|
280
311
|
|
|
281
312
|
---
|
|
@@ -338,6 +369,7 @@ Authored end-to-end with `/superpowers` and `/proceed-with-the-recommendation`:
|
|
|
338
369
|
- [QUICKSTART.md](QUICKSTART.md) — 2-minute setup
|
|
339
370
|
- [SKILL.md](SKILL.md) — full 7 Laws spec
|
|
340
371
|
- [examples/](examples/) — bug fix, feature build, refactor walkthroughs
|
|
372
|
+
- [templates/insights-claude-md.md](templates/insights-claude-md.md) — paste-in CLAUDE.md blocks for verification discipline, environment notes, think-before-acting, and git/deploy workflow (sourced from the 28-day usage report)
|
|
341
373
|
- [CONTRIBUTING.md](CONTRIBUTING.md) — architecture, repo internals
|
|
342
374
|
- [SECURITY.md](SECURITY.md)
|
|
343
375
|
|
package/action.yml
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
name: 'AI Agent Discipline Linter'
|
|
2
|
-
description: 'Catch agents that skipped research, planning, or verification — by linting their transcript in CI against the 7 Laws of AI Agent Discipline.'
|
|
3
|
-
author: 'naimkatiman'
|
|
4
|
-
|
|
5
|
-
branding:
|
|
6
|
-
icon: 'check-circle'
|
|
7
|
-
color: 'green'
|
|
8
|
-
|
|
9
|
-
inputs:
|
|
10
|
-
transcript-path:
|
|
11
|
-
description: 'Path to the agent transcript file (JSONL format)'
|
|
12
|
-
required: false
|
|
13
|
-
default: ''
|
|
14
|
-
observations-path:
|
|
15
|
-
description: 'Path to observations.jsonl from a CI session'
|
|
16
|
-
required: false
|
|
17
|
-
default: ''
|
|
18
|
-
strict:
|
|
19
|
-
description: 'Fail the check if any law violations are detected'
|
|
20
|
-
required: false
|
|
21
|
-
default: 'false'
|
|
22
|
-
|
|
23
|
-
outputs:
|
|
24
|
-
violations:
|
|
25
|
-
description: 'Number of law violations found'
|
|
26
|
-
score:
|
|
27
|
-
description: 'Discipline score (0-100)'
|
|
28
|
-
report:
|
|
29
|
-
description: 'Markdown-formatted report'
|
|
30
|
-
|
|
31
|
-
runs:
|
|
32
|
-
using: 'node20'
|
|
33
|
-
main: 'bin/lint-transcript.mjs'
|
|
1
|
+
name: 'AI Agent Discipline Linter'
|
|
2
|
+
description: 'Catch agents that skipped research, planning, or verification — by linting their transcript in CI against the 7 Laws of AI Agent Discipline.'
|
|
3
|
+
author: 'naimkatiman'
|
|
4
|
+
|
|
5
|
+
branding:
|
|
6
|
+
icon: 'check-circle'
|
|
7
|
+
color: 'green'
|
|
8
|
+
|
|
9
|
+
inputs:
|
|
10
|
+
transcript-path:
|
|
11
|
+
description: 'Path to the agent transcript file (JSONL format)'
|
|
12
|
+
required: false
|
|
13
|
+
default: ''
|
|
14
|
+
observations-path:
|
|
15
|
+
description: 'Path to observations.jsonl from a CI session'
|
|
16
|
+
required: false
|
|
17
|
+
default: ''
|
|
18
|
+
strict:
|
|
19
|
+
description: 'Fail the check if any law violations are detected'
|
|
20
|
+
required: false
|
|
21
|
+
default: 'false'
|
|
22
|
+
|
|
23
|
+
outputs:
|
|
24
|
+
violations:
|
|
25
|
+
description: 'Number of law violations found'
|
|
26
|
+
score:
|
|
27
|
+
description: 'Discipline score (0-100)'
|
|
28
|
+
report:
|
|
29
|
+
description: 'Markdown-formatted report'
|
|
30
|
+
|
|
31
|
+
runs:
|
|
32
|
+
using: 'node20'
|
|
33
|
+
main: 'bin/lint-transcript.mjs'
|