continuous-improvement 3.0.0 → 3.8.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/.claude-plugin/marketplace.json +78 -0
- package/CHANGELOG.md +210 -0
- package/LICENSE +21 -21
- package/QUICKSTART.md +101 -81
- package/README.md +224 -198
- package/SKILL.md +87 -9
- package/action.yml +33 -0
- package/bin/analyze.sh +161 -153
- package/bin/backfill.mjs +172 -0
- package/bin/check-docs-substrings.mjs +333 -0
- package/bin/check-everything-mirror.mjs +145 -0
- package/bin/check-routing-targets.mjs +151 -0
- package/bin/check-skill-law-tag.mjs +128 -0
- package/bin/check-skill-mirror.mjs +119 -0
- package/bin/check-skill-tiers.mjs +116 -0
- package/bin/check-third-party-shape.mjs +202 -0
- package/bin/generate-plugin-manifests.mjs +169 -0
- package/bin/harvest-friction.mjs +279 -0
- package/bin/hook-stats.mjs +258 -0
- package/bin/install.mjs +418 -456
- package/bin/lint-transcript.mjs +239 -0
- package/bin/mcp-server.mjs +842 -499
- package/bin/observe.mjs +148 -0
- package/bin/pre-commit-block-strays.sh +49 -0
- package/bin/refresh-third-party.mjs +416 -0
- package/bin/unified-cli.mjs +533 -0
- package/commands/continuous-improvement.md +115 -74
- package/commands/dashboard.md +56 -0
- package/commands/discipline.md +51 -0
- package/commands/harvest.md +76 -0
- package/commands/learn-eval.md +117 -0
- package/commands/planning-with-files.md +66 -0
- package/commands/proceed-with-the-recommendation.md +62 -0
- package/commands/ralph.md +103 -0
- package/commands/release-train.md +81 -0
- package/commands/seven-laws.md +16 -0
- package/commands/superpowers.md +153 -0
- package/commands/swarm.md +101 -0
- package/commands/workspace-surface-audit.md +77 -0
- package/hooks/observe.sh +172 -134
- package/hooks/session.sh +106 -106
- package/hooks/three-section-close.mjs +181 -0
- package/instinct-packs/go.json +58 -0
- package/instinct-packs/meta.json +16 -0
- package/instinct-packs/python.json +58 -0
- package/instinct-packs/react.json +58 -0
- package/lib/cli-anything.mjs +401 -0
- package/lib/compound-engineering.mjs +831 -0
- package/lib/observe-event.mjs +128 -0
- package/lib/plugin-metadata.mjs +432 -0
- package/lib/pm-marketplace.mjs +61 -0
- package/lib/pm-skills.mjs +1274 -0
- package/lib/resolve-home-dir.mjs +43 -0
- package/lib/skill-tiers.mjs +137 -0
- package/lib/unified-plugin.mjs +924 -0
- package/llms.txt +68 -0
- package/package.json +38 -15
- package/plugins/beginner.json +17 -6
- package/plugins/continuous-improvement/.claude-plugin/marketplace.json +20 -0
- package/plugins/continuous-improvement/.claude-plugin/plugin.json +26 -0
- package/plugins/continuous-improvement/LICENSE +21 -0
- package/plugins/continuous-improvement/README.md +56 -0
- package/plugins/continuous-improvement/bin/backfill.mjs +172 -0
- package/plugins/continuous-improvement/bin/mcp-server.mjs +886 -0
- package/plugins/continuous-improvement/bin/observe.mjs +148 -0
- package/plugins/continuous-improvement/commands/continuous-improvement.md +115 -0
- package/plugins/continuous-improvement/commands/dashboard.md +56 -0
- package/plugins/continuous-improvement/commands/discipline.md +51 -0
- package/plugins/continuous-improvement/commands/harvest.md +76 -0
- package/plugins/continuous-improvement/commands/learn-eval.md +117 -0
- package/plugins/continuous-improvement/commands/planning-with-files.md +66 -0
- package/plugins/continuous-improvement/commands/proceed-with-the-recommendation.md +62 -0
- package/plugins/continuous-improvement/commands/ralph.md +103 -0
- package/plugins/continuous-improvement/commands/release-train.md +81 -0
- package/plugins/continuous-improvement/commands/seven-laws.md +16 -0
- package/plugins/continuous-improvement/commands/superpowers.md +153 -0
- package/plugins/continuous-improvement/commands/swarm.md +101 -0
- package/plugins/continuous-improvement/commands/workspace-surface-audit.md +77 -0
- package/plugins/continuous-improvement/hooks/hooks.json +60 -0
- package/plugins/continuous-improvement/hooks/observe.sh +172 -0
- package/plugins/continuous-improvement/hooks/session.sh +106 -0
- package/plugins/continuous-improvement/hooks/three-section-close.mjs +181 -0
- package/plugins/continuous-improvement/instinct-packs/go.json +58 -0
- package/plugins/continuous-improvement/instinct-packs/meta.json +16 -0
- package/plugins/continuous-improvement/instinct-packs/python.json +58 -0
- package/plugins/continuous-improvement/instinct-packs/react.json +58 -0
- package/plugins/continuous-improvement/lib/observe-event.mjs +128 -0
- package/plugins/continuous-improvement/lib/plugin-metadata.mjs +432 -0
- package/plugins/continuous-improvement/lib/resolve-home-dir.mjs +43 -0
- package/plugins/continuous-improvement/skills/README.md +34 -0
- package/plugins/continuous-improvement/skills/continuous-improvement/SKILL.md +249 -0
- package/plugins/continuous-improvement/skills/deploy-receipt/SKILL.md +131 -0
- package/plugins/continuous-improvement/skills/gateguard/SKILL.md +155 -0
- package/plugins/continuous-improvement/skills/para-memory-files/SKILL.md +108 -0
- package/plugins/continuous-improvement/skills/proceed-with-the-recommendation/SKILL.md +454 -0
- package/plugins/continuous-improvement/skills/ralph/SKILL.md +221 -0
- package/plugins/continuous-improvement/skills/safety-guard/SKILL.md +76 -0
- package/plugins/continuous-improvement/skills/strategic-compact/SKILL.md +104 -0
- package/plugins/continuous-improvement/skills/superpowers/SKILL.md +212 -0
- package/plugins/continuous-improvement/skills/tdd-workflow/SKILL.md +411 -0
- package/plugins/continuous-improvement/skills/token-budget-advisor/SKILL.md +136 -0
- package/plugins/continuous-improvement/skills/verification-loop/SKILL.md +192 -0
- package/plugins/continuous-improvement/skills/wild-risa-balance/SKILL.md +191 -0
- package/plugins/continuous-improvement/skills/workspace-surface-audit/SKILL.md +147 -0
- package/plugins/continuous-improvement/templates/planning-with-files/findings.md +8 -0
- package/plugins/continuous-improvement/templates/planning-with-files/progress.md +7 -0
- package/plugins/continuous-improvement/templates/planning-with-files/task_plan.md +23 -0
- package/plugins/expert.json +34 -5
- package/skills/README.md +79 -0
- package/skills/deploy-receipt.md +131 -0
- package/skills/gateguard.md +155 -0
- package/skills/para-memory-files.md +108 -0
- package/skills/proceed-with-the-recommendation.md +454 -0
- package/skills/ralph.md +221 -0
- package/skills/safety-guard.md +76 -0
- package/skills/strategic-compact.md +104 -0
- package/skills/superpowers.md +212 -0
- package/skills/tdd-workflow.md +411 -0
- package/skills/token-budget-advisor.md +136 -0
- package/skills/verification-loop.md +192 -0
- package/skills/wild-risa-balance.md +191 -0
- package/skills/workspace-surface-audit.md +147 -0
- package/templates/planning-with-files/findings.md +8 -0
- package/templates/planning-with-files/progress.md +7 -0
- package/templates/planning-with-files/task_plan.md +23 -0
- package/templates/verify-ladder.example.json +47 -0
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: verification-loop
|
|
3
|
+
tier: "1"
|
|
4
|
+
description: "Enforces Law 4 (Verify Before Reporting) of the 7 Laws of AI Agent Discipline. A comprehensive verification system for agent coding sessions covering build, types, lint, tests, security, and diff with a PASS/FAIL report."
|
|
5
|
+
origin: continuous-improvement
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Verification Loop Skill
|
|
9
|
+
|
|
10
|
+
A comprehensive verification system for agent coding sessions.
|
|
11
|
+
|
|
12
|
+
## When to Use
|
|
13
|
+
|
|
14
|
+
Invoke this skill:
|
|
15
|
+
- After completing a feature or significant code change
|
|
16
|
+
- Before creating a PR
|
|
17
|
+
- When you want to ensure quality gates pass
|
|
18
|
+
- After refactoring
|
|
19
|
+
|
|
20
|
+
## Verification Phases
|
|
21
|
+
|
|
22
|
+
### Phase 0: Resolve the Ladder
|
|
23
|
+
|
|
24
|
+
Every project has its own actual invocation for build / typecheck / lint / test / security / deploy-receipt. Hardcoding `npm run build` and `npm run test` works when the project happens to use those exact scripts; for everything else (pnpm, yarn, cargo, go, mise, just, custom scripts, monorepos with workspace-scoped commands) it returns "deps not installed" or "config not found" misreads from the wrong invocation. Phase 0 runs first so Phases 1–6 never have to guess.
|
|
25
|
+
|
|
26
|
+
**Resolution priority** (first match wins):
|
|
27
|
+
|
|
28
|
+
1. **`.claude/verify-ladder.json` manifest** at the repo root. Schema:
|
|
29
|
+
```json
|
|
30
|
+
{
|
|
31
|
+
"build": "npm run build",
|
|
32
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
33
|
+
"lint": "npm run lint",
|
|
34
|
+
"test": "npm test",
|
|
35
|
+
"security": "npm audit --audit-level=high",
|
|
36
|
+
"deploy_receipt": "npx wrangler deployments list --json"
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
Any field omitted falls through to step 2 for that field only. A field set to the literal string `null` means "skip this phase for this project."
|
|
40
|
+
2. **Sniff `package.json` `scripts`** for `build`, `typecheck` or `tsc`, `lint`, `test`, `audit` or `security`. Tie-breaker when multiple scripts could match a phase: prefer `verify:<phase>` over `<phase>` over `<phase>:*`. Do NOT pick `test` when `verify:test` exists; the operator's explicit verification surface always wins over the convenience alias.
|
|
41
|
+
3. **Sniff per-language toolchain files** if `package.json` is absent: `Cargo.toml` → `cargo build` / `cargo test`, `go.mod` → `go build ./...` / `go test ./...`, `pyproject.toml` → `pytest` / `ruff check`, `Gemfile` → `bundle exec rspec`, etc.
|
|
42
|
+
4. **Ask the operator** if none of the above resolves the field. Do not invent.
|
|
43
|
+
|
|
44
|
+
**Output the resolved ladder** as a single fenced block before running any phase, so the operator can spot a wrong resolution before it costs a misread:
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
verify-ladder (resolved):
|
|
48
|
+
build: npm run build
|
|
49
|
+
typecheck: npx tsc --noEmit (sniff: package.json scripts.typecheck)
|
|
50
|
+
lint: npm run lint
|
|
51
|
+
test: npm test
|
|
52
|
+
security: (skipped — no script defined)
|
|
53
|
+
deploy_receipt: npx wrangler deployments list --json (manifest)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Each row shows the resolved command + its source (manifest, sniff, or skipped). The fenced block is the contract surface — every later phase reads from this resolved ladder, never from a hardcoded fallback.
|
|
57
|
+
|
|
58
|
+
A starter manifest is provided at `templates/verify-ladder.example.json`; copy it to `.claude/verify-ladder.json` and trim per project.
|
|
59
|
+
|
|
60
|
+
### Phase 1: Build Verification
|
|
61
|
+
Run the `build` command from the resolved ladder. Example for a default Node project:
|
|
62
|
+
```bash
|
|
63
|
+
# Resolved from package.json scripts.build:
|
|
64
|
+
npm run build 2>&1 | tail -20
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
If build fails, STOP and fix before continuing.
|
|
68
|
+
|
|
69
|
+
### Phase 2: Type Check
|
|
70
|
+
```bash
|
|
71
|
+
# TypeScript projects
|
|
72
|
+
npx tsc --noEmit 2>&1 | head -30
|
|
73
|
+
|
|
74
|
+
# Python projects
|
|
75
|
+
pyright . 2>&1 | head -30
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Report all type errors. Fix critical ones before continuing.
|
|
79
|
+
|
|
80
|
+
### Phase 3: Lint Check
|
|
81
|
+
```bash
|
|
82
|
+
# JavaScript/TypeScript
|
|
83
|
+
npm run lint 2>&1 | head -30
|
|
84
|
+
|
|
85
|
+
# Python
|
|
86
|
+
ruff check . 2>&1 | head -30
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Phase 4: Test Suite
|
|
90
|
+
```bash
|
|
91
|
+
# Run tests with coverage
|
|
92
|
+
npm run test -- --coverage 2>&1 | tail -50
|
|
93
|
+
|
|
94
|
+
# Check coverage threshold
|
|
95
|
+
# Target: 80% minimum
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Report:
|
|
99
|
+
- Total tests: X
|
|
100
|
+
- Passed: X
|
|
101
|
+
- Failed: X
|
|
102
|
+
- Coverage: X%
|
|
103
|
+
|
|
104
|
+
### Phase 5: Security Scan
|
|
105
|
+
```bash
|
|
106
|
+
# Check for secrets
|
|
107
|
+
grep -rn "sk-" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
|
|
108
|
+
grep -rn "api_key" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
|
|
109
|
+
|
|
110
|
+
# Check for console.log
|
|
111
|
+
grep -rn "console.log" --include="*.ts" --include="*.tsx" src/ 2>/dev/null | head -10
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Phase 6: Diff Review
|
|
115
|
+
```bash
|
|
116
|
+
# Show what changed
|
|
117
|
+
git diff --stat
|
|
118
|
+
git diff HEAD~1 --name-only
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Review each changed file for:
|
|
122
|
+
- Unintended changes
|
|
123
|
+
- Missing error handling
|
|
124
|
+
- Potential edge cases
|
|
125
|
+
|
|
126
|
+
### Phase 7: Result + Completeness Gate
|
|
127
|
+
|
|
128
|
+
Phases 1–6 verify mechanism — build green, types clean, tests pass, no secrets, diff intentional. Phase 7 verifies outcome: did the work the operator actually asked for actually land? Mechanism passing while outcome is missing is the most expensive failure mode in this loop, because the green report invites a merge that doesn't deliver.
|
|
129
|
+
|
|
130
|
+
Two questions, both required to be `Yes`:
|
|
131
|
+
|
|
132
|
+
**1. Did the stated goal land? Yes/No + evidence.**
|
|
133
|
+
|
|
134
|
+
The stated goal is the goal as named at task start, not the goal as remembered now. If the operator asked "fix the bug where X happens", evidence is the bug no longer happening (failing test now passes, repro screenshot, manual verification). If they asked "add an admin button", evidence is the button visible and functional in the running UI. Build-green is not evidence of result — it is evidence of mechanism. Don't conflate.
|
|
135
|
+
|
|
136
|
+
**2. Did every promised step finish? Yes/No + list.**
|
|
137
|
+
|
|
138
|
+
Enumerate every step you said you would do — the recommendation list, the plan doc, the TodoWrite items, the commit-by-commit roadmap. Mark each Done or Skipped. If any are Skipped, name them and the reason. A "complete" verification with silently skipped promises is a trust violation, not a deliverable.
|
|
139
|
+
|
|
140
|
+
Both gates are independent: `Yes` on goal alone means a half-complete checklist that may break later; `Yes` on completeness alone means busywork that didn't deliver. Both must be `Yes` — even if the previous six phases all pass — or the work isn't done.
|
|
141
|
+
|
|
142
|
+
If either is `No`, the verification report goes back to the operator with the explicit gap, not on to PR. The operator decides whether the gap is acceptable to ship as-is or whether more work is required first. Never silently downgrade to "ready" because the mechanism phases looked good.
|
|
143
|
+
|
|
144
|
+
### Phase 8: Deploy Receipt (auto-deploy projects only)
|
|
145
|
+
|
|
146
|
+
For repos whose `verify-ladder.json` declares a `deploy_receipt` field — or whose sniff path detects an auto-deploy target (Railway, Cloudflare Workers, Vercel, Netlify, Fly.io) — the verify is not complete until the deployed SHA matches the merge SHA and a healthcheck returns 200. Hand off to the `deploy-receipt` skill (Law 4 deploy-seam companion landed in PR #83) and treat its `Receipt status: COMPLETE` as the gate.
|
|
147
|
+
|
|
148
|
+
INCOMPLETE receipts move to "Immediate operator action" in the close, never to "ready". Library-only / package-published repos skip this phase entirely (no deploy seam exists).
|
|
149
|
+
|
|
150
|
+
## Output Format
|
|
151
|
+
|
|
152
|
+
After running all phases, produce a verification report:
|
|
153
|
+
|
|
154
|
+
```
|
|
155
|
+
VERIFICATION REPORT
|
|
156
|
+
==================
|
|
157
|
+
|
|
158
|
+
Build: [PASS/FAIL]
|
|
159
|
+
Types: [PASS/FAIL] (X errors)
|
|
160
|
+
Lint: [PASS/FAIL] (X warnings)
|
|
161
|
+
Tests: [PASS/FAIL] (X/Y passed, Z% coverage)
|
|
162
|
+
Security: [PASS/FAIL] (X issues)
|
|
163
|
+
Diff: [X files changed]
|
|
164
|
+
Goal landed: [YES/NO] — <one-line evidence or gap>
|
|
165
|
+
All promised: [YES/NO] — <X of Y steps Done; list any Skipped>
|
|
166
|
+
|
|
167
|
+
Overall: [READY/NOT READY] for PR
|
|
168
|
+
|
|
169
|
+
Issues to Fix:
|
|
170
|
+
1. ...
|
|
171
|
+
2. ...
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
`Overall: READY` requires every line above to pass, including both Phase 7 gates. Mechanism-green plus outcome-`No` is `NOT READY` — surface the gap, do not ship.
|
|
175
|
+
|
|
176
|
+
## Continuous Mode
|
|
177
|
+
|
|
178
|
+
For long sessions, run verification every 15 minutes or after major changes:
|
|
179
|
+
|
|
180
|
+
```markdown
|
|
181
|
+
Set a mental checkpoint:
|
|
182
|
+
- After completing each function
|
|
183
|
+
- After finishing a component
|
|
184
|
+
- Before moving to next task
|
|
185
|
+
|
|
186
|
+
Run: /verify
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## Integration with Hooks
|
|
190
|
+
|
|
191
|
+
This skill complements PostToolUse hooks but provides deeper verification.
|
|
192
|
+
Hooks catch issues immediately; this skill provides comprehensive review.
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: wild-risa-balance
|
|
3
|
+
tier: "2"
|
|
4
|
+
description: Enforces Law 2 (Plan Is Sacred) of the 7 Laws of AI Agent Discipline. Decision-framing lens that pairs WILD generation with RISA execution when emitting recommendation lists. Not a runtime hook.
|
|
5
|
+
origin: continuous-improvement
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# WILD / RISA Balance
|
|
9
|
+
|
|
10
|
+
## When to Use
|
|
11
|
+
|
|
12
|
+
- Emitting a multi-item recommendation block (≥3 items)
|
|
13
|
+
- Choosing between a safe option and a bold option
|
|
14
|
+
- Reviewing your own plan for over-cautiousness or over-fantasy
|
|
15
|
+
- Pairing with `proceed-with-the-recommendation` to decide which items belong above and below the cut
|
|
16
|
+
|
|
17
|
+
## The Two Modes
|
|
18
|
+
|
|
19
|
+
### RISA (Execution)
|
|
20
|
+
|
|
21
|
+
- **R**ealistic — fits the constraints in front of you
|
|
22
|
+
- **I**mportant — moves a stated goal, not a vanity metric
|
|
23
|
+
- **S**pecific — names files, commands, or owners
|
|
24
|
+
- **A**greeable — the operator can approve it without a meeting
|
|
25
|
+
|
|
26
|
+
If you only stay in RISA, you ship safe, average results.
|
|
27
|
+
|
|
28
|
+
### WILD (Creation)
|
|
29
|
+
|
|
30
|
+
- **W**ild — breaks the default frame
|
|
31
|
+
- **I**maginative — invents an option that did not exist a minute ago
|
|
32
|
+
- **L**imitless — ignores current budget, headcount, or stack
|
|
33
|
+
- **D**isruptive — replaces a workflow rather than tuning it
|
|
34
|
+
|
|
35
|
+
If you only stay in WILD, you generate cool ideas that never ship.
|
|
36
|
+
|
|
37
|
+
## The Trap
|
|
38
|
+
|
|
39
|
+
RISA alone produces a backlog of incremental fixes that never compound. WILD alone produces a graveyard of demos that never reach production. The bigger failure is unconscious switching: drifting into WILD during execution, or drifting into RISA during brainstorming, without naming the switch. Name the mode you are in before you write the next line.
|
|
40
|
+
|
|
41
|
+
## Switching Deliberately
|
|
42
|
+
|
|
43
|
+
| Phase | Mode | Why |
|
|
44
|
+
|-------------------------|-------|----------------------------------------------------|
|
|
45
|
+
| Brainstorm | WILD | Quantity and range beat early filtering |
|
|
46
|
+
| Roadmap framing | WILD | Frame the bigger bet before scoping it down |
|
|
47
|
+
| Per-item recommendation | Mixed | Top items can be WILD, baseline items must be RISA |
|
|
48
|
+
| Per-item execution | RISA | One thing, verified, shipped |
|
|
49
|
+
| Verification | RISA | Reality check, no new invention |
|
|
50
|
+
| Reflection | WILD | Counterfactuals, "what would have been bolder" |
|
|
51
|
+
|
|
52
|
+
WILD owns generation phases. RISA owns execution phases. The switch is intentional, not accidental.
|
|
53
|
+
|
|
54
|
+
## How to Apply in a Recommendation List
|
|
55
|
+
|
|
56
|
+
When this skill is in play, every recommendation block ships **at least 7 items**, split as:
|
|
57
|
+
|
|
58
|
+
1. **Top block — WILD pilots: exactly 2 bold items.** Present both; the operator picks at most one to actually run. If you cannot find a second genuinely bold option, stretch — do not pad with a safe item dressed up as wild.
|
|
59
|
+
2. **Bottom block — RISA baseline: at least 5 safe items.** These ship now regardless of the WILD bet. If you cannot reach 5, the surface is under-explored — expand scope before emitting the list.
|
|
60
|
+
3. Within each block, rank descending by impact.
|
|
61
|
+
4. Once the list is composed, wait for the operator's "proceed" signal before invoking `proceed-with-the-recommendation`. Never auto-trigger it. This skill only changes how the list is composed.
|
|
62
|
+
|
|
63
|
+
Total floor: **2 WILD + 5 RISA = 7 items minimum.** Going above is fine; going below means the skill was not applied.
|
|
64
|
+
|
|
65
|
+
The point: the operator gets a real WILD/RISA contrast (2 bold bets weighed against a 5-deep trusted baseline), not a flat list where the bold option silently competes with safe ones and loses by default.
|
|
66
|
+
|
|
67
|
+
## Audience Tiers (beginner vs expert)
|
|
68
|
+
|
|
69
|
+
Recommendation blocks ship in **two tiers** depending on the operator's signaled level. The 2 WILD + ≥5 RISA floor described above is the **expert** tier. Beginners get a different, lighter shape. The point: under-load for experts and overload for beginners are both failure modes — splitting the format prevents both.
|
|
70
|
+
|
|
71
|
+
### Tier selection
|
|
72
|
+
|
|
73
|
+
**Default = expert.** Switch to beginner only when one of these triggers fires:
|
|
74
|
+
|
|
75
|
+
- **Explicit flag** — the operator types `/beginner` or refers to themselves as a beginner ("for beginner", "as a beginner", "I'm new to this").
|
|
76
|
+
- **Explicit lite framing** — "simple list", "just the top 3", "small list", "short version", "no need for surgical".
|
|
77
|
+
- **Auto-detect heuristic** — the **first message of the thread** contains any of: `beginner`, `new to (this|claude|the system)`, `simple`, `explain like`, `first time`, `i'm just starting`, `i'm learning`. Single-message false positives are acceptable — the operator flips with `/expert` if mismatched.
|
|
78
|
+
|
|
79
|
+
The operator can override mid-thread: `/expert` switches back to WILD+RISA, `/beginner` switches back to the lite tier. Apply the most recently named tier.
|
|
80
|
+
|
|
81
|
+
### Beginner tier (lite shape)
|
|
82
|
+
|
|
83
|
+
When in beginner tier:
|
|
84
|
+
|
|
85
|
+
- **3 minimum, 5 maximum** items. No padding past 5. Below 3 means there is no recommendation — write `Recommendation: no`.
|
|
86
|
+
- **Goal-driven** — each item names the outcome, not the mechanism. Format: `<verb> <thing> → <observable result>`.
|
|
87
|
+
- **Execution-first** — each item is a concrete next action, not a tradeoff to weigh.
|
|
88
|
+
- **One-shot, iterate from there** — no "surgical change" framing, no phased sequencing, no commit-size gates. Get to a working pass, then improve.
|
|
89
|
+
- **Optimized for the latest Opus model (Opus 4.7 at time of writing)** — assume the model holds the full task in one shot. Do not pre-decompose into micro-steps that fight the model's reasoning depth. Lean on broader, outcome-shaped instructions over fine-grained scripts.
|
|
90
|
+
- Order: descending impact.
|
|
91
|
+
- No WILD/RISA labels. No counts annotation. No tiered tables.
|
|
92
|
+
|
|
93
|
+
### Expert tier (default for Naim, default in this repo)
|
|
94
|
+
|
|
95
|
+
The full WILD+RISA structure documented above: ≥7 items, exactly 2 WILD + ≥5 RISA, WILD on top descending, RISA below descending, counts annotated inline.
|
|
96
|
+
|
|
97
|
+
Each item still leads with the outcome inside both WILD and RISA: `<verb> <thing> → <observable result>`.
|
|
98
|
+
|
|
99
|
+
### Tier signal in the 3-section close
|
|
100
|
+
|
|
101
|
+
When Phase 7's three-section close lands, the `## Recommendation` header carries an explicit tier suffix:
|
|
102
|
+
|
|
103
|
+
- Expert: `## Recommendation (expert)`
|
|
104
|
+
- Beginner: `## Recommendation (beginner)`
|
|
105
|
+
|
|
106
|
+
The Stop hook regex (`^#+ +Recommendation(?:\s|$)`) already accepts both forms — the suffix is documentation, not a gate. The point is a self-describing audit trail: a future reader (or an instinct scan) can tell which tier was applied without re-deriving it from item count or label presence.
|
|
107
|
+
|
|
108
|
+
### The "no" escape valve (both tiers)
|
|
109
|
+
|
|
110
|
+
If neither tier can produce a real recommendation — every candidate item would be padding, or you cannot reach the tier's floor (3 for beginner, 7 for expert) without inventing busywork — write `Recommendation: no` and stop. This applies to **both tiers equally**.
|
|
111
|
+
|
|
112
|
+
`no` is not absence. It is an explicit signal that the current session or perspective is exhausted on this surface and the operator should switch context: a fresh session (cold prompt cache, no carryover bias), a different specialist agent (different perspective on the same problem), a different framing (re-scoping the goal), or sleep on it. Padding to hit the floor is the failure mode this escape exists to prevent — a flat 3-item beginner list of "review the README, run the tests, commit your changes" is worse than `Recommendation: no` because it disguises an empty thought as work.
|
|
113
|
+
|
|
114
|
+
When `no` ships, the Phase 7 close header still carries the tier suffix (`## Recommendation (expert)` or `## Recommendation (beginner)`) so the audit trail records which tier exhausted itself, and the body is just the literal `no` on its own line. No tiered tables, no WILD/RISA blocks, no "Want me to: A or B?" closer.
|
|
115
|
+
|
|
116
|
+
## Proactive Roadmap Surfacing (surface, do not execute)
|
|
117
|
+
|
|
118
|
+
A "wait for instructions" agent fails by silence — sitting on a known next step (visible roadmap, deferred item from a prior session) until told. A "proactive" agent fails by running that step without being asked. Both lose. Surface bridges them: raise the next step as a recommendation item, never as a fait accompli.
|
|
119
|
+
|
|
120
|
+
### Trigger conditions
|
|
121
|
+
|
|
122
|
+
Surface a next step when any of these are true:
|
|
123
|
+
|
|
124
|
+
- A persistent roadmap names an undone step — MemoryCore `current-session.md`, `docs/plans/*`, `⚠️ Deferred` entries in a project `CLAUDE.md`, or pending operator actions logged in MemoryCore.
|
|
125
|
+
- The current task is finished and a stated session goal implies the next one.
|
|
126
|
+
- The session has drifted from a stated roadmap (asked to do A, but B is now blocked by A's choice).
|
|
127
|
+
- An instinct or memory record predicts a near-term action the operator typically forgets (e.g., "rotate keys before next deploy", "push branch after N commits").
|
|
128
|
+
|
|
129
|
+
### Hard boundary — surface, do not execute
|
|
130
|
+
|
|
131
|
+
Surfacing emits the next step as a recommendation item. It does **not** mean running the command, editing the file, or shipping the change. Execution still requires explicit "proceed", "go", "run it", or equivalent. The boundary is non-negotiable:
|
|
132
|
+
|
|
133
|
+
- Global CLAUDE.md: "If instructions conflict or information is missing, stop and ask."
|
|
134
|
+
- Auto Mode: even in autonomous execution, "anything that deletes data or modifies shared or production systems still needs explicit user confirmation."
|
|
135
|
+
- Trust is asymmetric — one unauthorized "helpful" action costs more than a hundred missed surfacings. Recovery is one-way.
|
|
136
|
+
|
|
137
|
+
### Format
|
|
138
|
+
|
|
139
|
+
A surfaced item lives inside the normal RISA block. Mark it inline as `(surfaced — <source>)` so the operator can tell which items came from the roadmap vs. the current request:
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
RISA baseline — ship regardless (5 of ≥5)
|
|
143
|
+
1. Run remote D1 migration before next deploy → unblocks Close/Cancel admin button. (surfaced — pending operator action since 2026-05-04)
|
|
144
|
+
2. ...
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
A WILD-tier reframe of the roadmap itself (not a single deferred step, but a re-shape of the whole next phase) goes in the WILD block instead, with the same `(surfaced — <source>)` marker.
|
|
148
|
+
|
|
149
|
+
### Anti-patterns
|
|
150
|
+
|
|
151
|
+
- Re-surfacing an item the operator explicitly deferred — once is a reminder, three times is nagging. After one repeat, log the defer reason to memory and stop.
|
|
152
|
+
- Surfacing speculative steps with no source in any roadmap or memory ("you should also consider…" without a citation).
|
|
153
|
+
- Bundling a surface with execution ("I went ahead and started X"). Surface, wait, execute on go.
|
|
154
|
+
- Treating absence of a roadmap as license to invent one — if no roadmap exists and none was requested, ask before drafting.
|
|
155
|
+
|
|
156
|
+
The point: the operator never has to remember a deferred item, and never has to forgive an unauthorized one. Both at once.
|
|
157
|
+
|
|
158
|
+
## Integration with the 7 Laws
|
|
159
|
+
|
|
160
|
+
| Mode | Reinforces | Tempered by |
|
|
161
|
+
|------|---------------------------------------------------------|--------------------------|
|
|
162
|
+
| RISA | Law 2 (Plan), Law 3 (One Thing), Law 4 (Verify) | Law 6 (Iterate One Thing) |
|
|
163
|
+
| WILD | Law 1 (Research — broader exploration), Law 5 (Reflect) | Law 6 (Iterate One Thing) |
|
|
164
|
+
|
|
165
|
+
Both modes pass through Law 6 before execution. WILD without Law 6 is a wishlist. RISA without Law 6 ships safe fixes while the real bottleneck waits.
|
|
166
|
+
|
|
167
|
+
## Example
|
|
168
|
+
|
|
169
|
+
```
|
|
170
|
+
Recommendations (descending impact within each block)
|
|
171
|
+
|
|
172
|
+
WILD pilots — pick at most one (2 of 2)
|
|
173
|
+
1. Replace the current review workflow with a single adversarial pair.
|
|
174
|
+
2. Drop the staging environment in favor of feature-flagged production.
|
|
175
|
+
|
|
176
|
+
RISA baseline — ship regardless (5 of ≥5)
|
|
177
|
+
1. Add the missing test for the failure path noted in verification.
|
|
178
|
+
2. Rename the ambiguous flag to match its actual behavior.
|
|
179
|
+
3. Backfill the type on the public export that currently widens to `any`.
|
|
180
|
+
4. Wire the existing Stop hook into the new skill's checklist gate.
|
|
181
|
+
5. Update the README mirror so the bundled plugin matches the source skill. (surfaced — verify:skill-mirror gate flagged drift in last CI run)
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
Total: 7 items (2 WILD + 5 RISA). That is the floor — emit more on either side if the surface warrants it. The fifth RISA item is marked `(surfaced — <source>)` to demonstrate the convention from the Proactive Roadmap Surfacing section: items lifted from a roadmap or memory carry an inline source attribution so the operator can tell roadmap-driven items apart from current-request items.
|
|
185
|
+
|
|
186
|
+
## Related
|
|
187
|
+
|
|
188
|
+
- `continuous-improvement` — the 7 Laws card (core skill)
|
|
189
|
+
- `proceed-with-the-recommendation` — execution arm; carries surfaced items across the surface → execute boundary defined in the Proactive Roadmap Surfacing section above
|
|
190
|
+
- `superpowers:brainstorming` — upstream WILD generator
|
|
191
|
+
- `verification-loop` — downstream RISA verifier
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: workspace-surface-audit
|
|
3
|
+
tier: companion
|
|
4
|
+
description: "Enforces Law 1 (Research Before Executing) of the 7 Laws of AI Agent Discipline. Audits the active repo, MCP servers, plugins, connectors, env surfaces, and harness setup, then recommends the highest-value continuous-improvement-native skills, hooks, agents, and operator workflows. Use when the user wants help setting up Claude Code or understanding what capabilities are actually available in their environment."
|
|
5
|
+
origin: continuous-improvement
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Workspace Surface Audit
|
|
9
|
+
|
|
10
|
+
Read-only audit skill for answering the question "what can this workspace and machine actually do right now, and what should we add or enable next?"
|
|
11
|
+
|
|
12
|
+
This is the continuous-improvement answer to setup-audit plugins. It does not modify files unless the user explicitly asks for follow-up implementation.
|
|
13
|
+
|
|
14
|
+
## When to Use
|
|
15
|
+
|
|
16
|
+
- User says "set up Claude Code", "recommend automations", "what plugins or MCPs should I use?", or "what am I missing?"
|
|
17
|
+
- Auditing a machine or repo before installing more skills, hooks, or connectors
|
|
18
|
+
- Comparing official marketplace plugins against continuous-improvement coverage
|
|
19
|
+
- Reviewing `.env`, `.mcp.json`, plugin settings, or connected-app surfaces to find missing workflow layers
|
|
20
|
+
- Deciding whether a capability should be a skill, hook, agent, MCP, or external connector
|
|
21
|
+
|
|
22
|
+
## Non-Negotiable Rules
|
|
23
|
+
|
|
24
|
+
- Never print secret values. Surface only provider names, capability names, file paths, and whether a key or config exists.
|
|
25
|
+
- Prefer continuous-improvement workflows over generic "install another plugin" advice when continuous-improvement can reasonably own the surface.
|
|
26
|
+
- Treat external plugins as benchmarks and inspiration, not authoritative product boundaries.
|
|
27
|
+
- Separate three things clearly:
|
|
28
|
+
- already available now
|
|
29
|
+
- available but not wrapped well in continuous-improvement
|
|
30
|
+
- not available and would require a new integration
|
|
31
|
+
|
|
32
|
+
## Audit Inputs
|
|
33
|
+
|
|
34
|
+
Inspect only the files and settings needed to answer the question well:
|
|
35
|
+
|
|
36
|
+
1. **Repo surface**
|
|
37
|
+
- `package.json`, lockfiles, language markers, framework config, `README.md`
|
|
38
|
+
- `.mcp.json`, `.lsp.json`, `.claude/settings*.json`, `.codex/*`
|
|
39
|
+
- `AGENTS.md`, `CLAUDE.md`, install manifests, hook configs
|
|
40
|
+
2. **Environment surface**
|
|
41
|
+
- `.env*` files in the active repo and obvious adjacent continuous-improvement workspaces
|
|
42
|
+
- Surface only key names such as `STRIPE_API_KEY`, `TWILIO_AUTH_TOKEN`, `FAL_KEY`
|
|
43
|
+
3. **Connected tool surface**
|
|
44
|
+
- Installed plugins, enabled connectors, MCP servers, LSPs, and app integrations
|
|
45
|
+
4. **continuous-improvement surface**
|
|
46
|
+
- Existing skills, commands, hooks, agents, and install modules that already cover the need
|
|
47
|
+
|
|
48
|
+
## Audit Process
|
|
49
|
+
|
|
50
|
+
### Phase 1: Inventory What Exists
|
|
51
|
+
|
|
52
|
+
Produce a compact inventory:
|
|
53
|
+
|
|
54
|
+
- active harness targets
|
|
55
|
+
- installed plugins and connected apps
|
|
56
|
+
- configured MCP servers
|
|
57
|
+
- configured LSP servers
|
|
58
|
+
- env-backed services implied by key names
|
|
59
|
+
- existing continuous-improvement skills already relevant to the workspace
|
|
60
|
+
|
|
61
|
+
If a surface exists only as a primitive, call that out. Example:
|
|
62
|
+
|
|
63
|
+
- "Stripe is available via connected app, but continuous-improvement lacks a billing-operator skill"
|
|
64
|
+
- "Google Drive is connected, but there is no continuous-improvement-native Google Workspace operator workflow"
|
|
65
|
+
|
|
66
|
+
#### Environment Grain
|
|
67
|
+
|
|
68
|
+
Before any tool-class advice, capture the per-host facts that make commands either run or fail. The 28-day usage report's recurring "command failed / wrong approach" friction class roots almost entirely in this grain being unrecorded at session start — the agent reaches for `jq`, finds it missing, retries; reaches for bash chaining, hits PowerShell parser errors, retries; trusts a stale `pwd` after `tsc`, runs verification from the wrong directory, retries.
|
|
69
|
+
|
|
70
|
+
Probe and record (no destructive commands; quote results inline):
|
|
71
|
+
|
|
72
|
+
- **Shell flavor.** `echo $SHELL` on POSIX or `$PSVersionTable.PSEdition` on Windows; detect `bash`, `zsh`, `pwsh`, or `cmd`. PowerShell on Windows treats `&&`, `2>&1`, and quoting differently from bash; Git Bash on Windows is bash-shaped but lacks several POSIX utilities by default.
|
|
73
|
+
- **OS family + line endings.** `uname -s` (or PowerShell `$IsWindows`) plus `git config --get core.autocrlf`. On Windows with `core.autocrlf=true`, `git status` reports phantom modifications on every checked-out file — `git diff --stat` is the reliable change-set view.
|
|
74
|
+
- **jq availability.** `command -v jq` (or `Get-Command jq`). When jq is missing, observation-pipeline hooks fall back to a thin schema and curl/JSON one-liners need a node/python rewrite.
|
|
75
|
+
- **Case-sensitive filesystem.** Test by creating two paths differing only in case in a tempdir. NTFS (Windows) and APFS (macOS default) are case-insensitive; Linux ext4 and case-sensitive APFS are case-sensitive. Affects `CLAUDE.md` vs `claude.md` resolution and import paths.
|
|
76
|
+
- **CWD baseline.** `pwd` (or `Get-Location`) recorded at session start. `tsc`, build scripts, and some test runners change CWD as a side effect; subsequent commands run from the wrong directory return "deps not installed" or "config not found" misreads.
|
|
77
|
+
- **Parallel-actor expectation.** Document whether a second Claude / Codex / Maulana session may operate on the same working tree. If yes, the `gateguard` Parallel-Actor Gate must baseline `git rev-parse HEAD` + `git status --porcelain` + upstream before the first mutation, and re-check on every subsequent mutation.
|
|
78
|
+
|
|
79
|
+
Output the recorded grain as a single fenced block so it survives context compaction and any later phase can reference it without re-probing:
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
shell-flavor: pwsh
|
|
83
|
+
os: windows-11 / autocrlf=true
|
|
84
|
+
jq: missing
|
|
85
|
+
case-sensitive: false
|
|
86
|
+
cwd-baseline: D:/Ai/continuous-improvement
|
|
87
|
+
parallel-actor: yes
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
The fenced block is the contract surface — keep the field names stable so downstream skills (`gateguard`, `verification-loop`, future autonomous-release-train) can parse it without per-host special-casing.
|
|
91
|
+
|
|
92
|
+
### Phase 2: Benchmark Against Official and Installed Surfaces
|
|
93
|
+
|
|
94
|
+
Compare the workspace against:
|
|
95
|
+
|
|
96
|
+
- official Claude plugins that overlap with setup, review, docs, design, or workflow quality
|
|
97
|
+
- locally installed plugins in Claude or Codex
|
|
98
|
+
- the user's currently connected app surfaces
|
|
99
|
+
|
|
100
|
+
Do not just list names. For each comparison, answer:
|
|
101
|
+
|
|
102
|
+
1. what they actually do
|
|
103
|
+
2. whether continuous-improvement already has parity
|
|
104
|
+
3. whether continuous-improvement only has primitives
|
|
105
|
+
4. whether continuous-improvement is missing the workflow entirely
|
|
106
|
+
|
|
107
|
+
### Phase 3: Turn Gaps Into continuous-improvement Decisions
|
|
108
|
+
|
|
109
|
+
For every real gap, recommend the correct continuous-improvement-native shape:
|
|
110
|
+
|
|
111
|
+
| Gap Type | Preferred continuous-improvement Shape |
|
|
112
|
+
|----------|---------------------|
|
|
113
|
+
| Repeatable operator workflow | Skill |
|
|
114
|
+
| Automatic enforcement or side-effect | Hook |
|
|
115
|
+
| Specialized delegated role | Agent |
|
|
116
|
+
| External tool bridge | MCP server or connector |
|
|
117
|
+
| Install/bootstrap guidance | Setup or audit skill |
|
|
118
|
+
|
|
119
|
+
Default to user-facing skills that orchestrate existing tools when the need is operational rather than infrastructural.
|
|
120
|
+
|
|
121
|
+
## Output Format
|
|
122
|
+
|
|
123
|
+
Return five sections in this order:
|
|
124
|
+
|
|
125
|
+
1. **Current surface** — what is already usable right now
|
|
126
|
+
2. **Parity** — where continuous-improvement already matches or exceeds the benchmark
|
|
127
|
+
3. **Primitive-only gaps** — tools exist, but continuous-improvement lacks a clean operator skill
|
|
128
|
+
4. **Missing integrations** — capability not available yet
|
|
129
|
+
5. **Top 3-5 next moves** — concrete continuous-improvement-native additions, ordered by impact
|
|
130
|
+
|
|
131
|
+
## Recommendation Rules
|
|
132
|
+
|
|
133
|
+
- Recommend at most 1-2 highest-value ideas per category.
|
|
134
|
+
- Favor skills with obvious user intent and business value:
|
|
135
|
+
- setup audit
|
|
136
|
+
- billing/customer ops
|
|
137
|
+
- issue/program ops
|
|
138
|
+
- Google Workspace ops
|
|
139
|
+
- deployment/ops control
|
|
140
|
+
- If a connector is company-specific, recommend it only when it is genuinely available or clearly useful to the user's workflow.
|
|
141
|
+
- If continuous-improvement already has a strong primitive, propose a wrapper skill instead of inventing a brand-new subsystem.
|
|
142
|
+
|
|
143
|
+
## Good Outcomes
|
|
144
|
+
|
|
145
|
+
- The user can immediately see what is connected, what is missing, and what continuous-improvement should own next.
|
|
146
|
+
- Recommendations are specific enough to implement in the repo without another discovery pass.
|
|
147
|
+
- The final answer is organized around workflows, not API brands.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Task Plan
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
{{goal}}
|
|
5
|
+
|
|
6
|
+
## Status
|
|
7
|
+
{{status}}
|
|
8
|
+
|
|
9
|
+
## Phases
|
|
10
|
+
{{phases}}
|
|
11
|
+
|
|
12
|
+
## Key Questions
|
|
13
|
+
- [ ] What existing implementation or context should be reviewed first?
|
|
14
|
+
- [ ] What constraints or risks need validation before execution?
|
|
15
|
+
- [ ] What verification proves the task is complete?
|
|
16
|
+
|
|
17
|
+
## Decisions Made
|
|
18
|
+
- None yet.
|
|
19
|
+
|
|
20
|
+
## Errors Encountered
|
|
21
|
+
| Error | Attempt | Resolution |
|
|
22
|
+
| --- | --- | --- |
|
|
23
|
+
| None yet | - | - |
|
package/plugins/expert.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "continuous-improvement",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.8.0",
|
|
4
4
|
"mode": "expert",
|
|
5
|
-
"description": "
|
|
5
|
+
"description": "Expert mode: tune confidence, manage instincts, and persist plans on disk. Adds safety, token-budget, and strategic-compact skills plus the /learn-eval command so long sessions stay disciplined and learnings survive context resets.",
|
|
6
6
|
"tools": [
|
|
7
7
|
{
|
|
8
8
|
"name": "ci_status",
|
|
@@ -35,6 +35,22 @@
|
|
|
35
35
|
{
|
|
36
36
|
"name": "ci_import",
|
|
37
37
|
"what": "Import instincts from JSON (skip duplicates)"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "ci_plan_init",
|
|
41
|
+
"what": "Create project-root planning files for persistent task memory"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"name": "ci_plan_status",
|
|
45
|
+
"what": "Summarize task_plan.md, findings.md, and progress.md status"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"name": "ci_dashboard",
|
|
49
|
+
"what": "Visual dashboard showing instinct health, confidence distribution, and learning progress"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"name": "ci_load_pack",
|
|
53
|
+
"what": "Load starter instinct packs (react, python, go) into the current project"
|
|
38
54
|
}
|
|
39
55
|
],
|
|
40
56
|
"setup": {
|
|
@@ -42,7 +58,11 @@
|
|
|
42
58
|
"mcpServers": {
|
|
43
59
|
"continuous-improvement": {
|
|
44
60
|
"command": "node",
|
|
45
|
-
"args": [
|
|
61
|
+
"args": [
|
|
62
|
+
"<install-path>/bin/mcp-server.mjs",
|
|
63
|
+
"--mode",
|
|
64
|
+
"expert"
|
|
65
|
+
]
|
|
46
66
|
}
|
|
47
67
|
}
|
|
48
68
|
},
|
|
@@ -50,13 +70,22 @@
|
|
|
50
70
|
"mcpServers": {
|
|
51
71
|
"continuous-improvement": {
|
|
52
72
|
"command": "node",
|
|
53
|
-
"args": [
|
|
73
|
+
"args": [
|
|
74
|
+
"<install-path>/bin/mcp-server.mjs",
|
|
75
|
+
"--mode",
|
|
76
|
+
"expert"
|
|
77
|
+
]
|
|
54
78
|
}
|
|
55
79
|
}
|
|
56
80
|
}
|
|
57
81
|
},
|
|
58
82
|
"hooks": {
|
|
59
|
-
"included": [
|
|
83
|
+
"included": [
|
|
84
|
+
"PreToolUse",
|
|
85
|
+
"PostToolUse",
|
|
86
|
+
"SessionStart",
|
|
87
|
+
"SessionEnd"
|
|
88
|
+
],
|
|
60
89
|
"description": "Full hook suite: observation capture + session-level instinct loading and auto-reflection."
|
|
61
90
|
}
|
|
62
91
|
}
|