@lifeaitools/rdc-skills 0.25.5 → 0.25.9

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 (66) hide show
  1. package/.claude-plugin/plugin.json +1550 -1550
  2. package/.github/workflows/self-test.yml +34 -34
  3. package/CHANGELOG.md +319 -319
  4. package/MANIFEST.md +224 -224
  5. package/README.md +367 -367
  6. package/commands/build.md +181 -181
  7. package/commands/collab.md +180 -180
  8. package/commands/deploy.md +148 -148
  9. package/commands/fixit.md +150 -150
  10. package/commands/handoff.md +173 -173
  11. package/commands/overnight.md +220 -220
  12. package/commands/plan.md +158 -158
  13. package/commands/preplan.md +131 -131
  14. package/commands/prototype.md +145 -145
  15. package/commands/report.md +99 -99
  16. package/commands/review.md +120 -120
  17. package/commands/status.md +86 -86
  18. package/commands/workitems.md +127 -127
  19. package/git-sha.json +1 -1
  20. package/guides/agent-bootstrap.md +195 -195
  21. package/guides/agents/backend.md +102 -102
  22. package/guides/agents/content.md +94 -94
  23. package/guides/agents/cs2.md +56 -56
  24. package/guides/agents/data.md +86 -86
  25. package/guides/agents/design.md +77 -77
  26. package/guides/agents/frontend.md +91 -91
  27. package/guides/agents/infrastructure.md +81 -81
  28. package/guides/agents/setup.md +272 -272
  29. package/guides/agents/verify.md +119 -119
  30. package/guides/agents/viz.md +106 -106
  31. package/hooks/check-rdc-environment.js +318 -164
  32. package/hooks/lib/box-lock.js +186 -0
  33. package/package.json +1 -1
  34. package/scripts/install-rdc-skills.js +1474 -1400
  35. package/scripts/local-install-with-stop.sh +41 -0
  36. package/scripts/probe-box-lock.mjs +179 -0
  37. package/scripts/probe-installed-hooks.mjs +60 -0
  38. package/scripts/probe-lock-holders.mjs +36 -0
  39. package/scripts/self-test.mjs +1459 -1459
  40. package/scripts/validate-publish-manifests.js +502 -502
  41. package/skills/build/SKILL.md +578 -578
  42. package/skills/channel-formatter/SKILL.md +538 -538
  43. package/skills/collab/SKILL.md +239 -239
  44. package/skills/convert/SKILL.md +138 -138
  45. package/skills/deploy/SKILL.md +541 -541
  46. package/skills/design/SKILL.md +205 -205
  47. package/skills/env/SKILL.md +139 -139
  48. package/skills/fixit/SKILL.md +203 -203
  49. package/skills/handoff/SKILL.md +236 -236
  50. package/skills/housekeeping/SKILL.md +189 -189
  51. package/skills/onramp/SKILL.md +1459 -1459
  52. package/skills/overnight/SKILL.md +251 -251
  53. package/skills/plan/SKILL.md +345 -345
  54. package/skills/preplan/SKILL.md +90 -90
  55. package/skills/prototype/SKILL.md +150 -150
  56. package/skills/regen-media/SKILL.md +94 -94
  57. package/skills/release/SKILL.md +140 -140
  58. package/skills/report/SKILL.md +100 -100
  59. package/skills/review/SKILL.md +151 -151
  60. package/skills/self-test/SKILL.md +108 -108
  61. package/skills/status/SKILL.md +99 -99
  62. package/skills/tests/MATRIX.md +55 -55
  63. package/skills/tests/onramp.test.json +87 -87
  64. package/skills/tests/rdc-regen-media.test.json +29 -29
  65. package/skills/watch/SKILL.md +84 -84
  66. package/skills/workitems/SKILL.md +151 -151
package/CHANGELOG.md CHANGED
@@ -1,10 +1,10 @@
1
- # Changelog — @lifeai/rdc-skills
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
1
+ # Changelog — @lifeai/rdc-skills
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
8
  ---
9
9
 
10
10
  ## v0.25.5 — MCP catalog release hygiene
@@ -21,315 +21,315 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
21
21
  ---
22
22
 
23
23
  ## v0.25.0 — rdc:onramp Phase-1 enrollment skill
24
-
25
- ### Added
26
- - `rdc:onramp` — Phase-1 enrollment infrastructure orchestrator for new Place
27
- Fund projects. It gates the existing `enroll_place` RPC, `insert_work_item`
28
- enrollment epic, and `onramp-scaffold-place.mjs` disk scaffolder in strict
29
- order, with fresh/already-enrolled/spine-ahead/disk-ahead drift handling.
30
- - Tier-2 onramp test manifest coverage for the `_context.md` absence invariant,
31
- deterministic door contracts, and four-state drift behavior.
32
-
33
- ---
34
-
35
- ## v0.21.0 — channel-formatter skill
36
-
37
- ### Added
38
- - `rdc:channel-formatter` — channel-native output formatting for LinkedIn, Twitter/X,
39
- Slack/Teams, Email (external/internal), Pitch Deck, Word/DOCX, PDF Report, and
40
- Web/Landing Page. Ported from the `output-channel-formatter` claude.ai skill and
41
- **inlined into a single self-contained SKILL.md** (no `references/` files) so it works
42
- identically across the CLI plugin, the claude.ai web client (via `rdc_skill_get`, which
43
- serves only SKILL.md), and Codex.
44
-
45
- ---
46
-
47
- ## v0.9.38 — Clean-box npm install hardening
48
-
49
- ### Fixed
50
-
51
- - **Fresh Claude home install.** The installer now creates `CLAUDE_HOME` and `settings.json` when they do not exist, so a first-time machine is not blocked before Claude has written config files.
52
- - **Public package portability.** Removed the most brittle user-machine paths from public skill docs and hooks, replacing them with `{PROJECT_ROOT}`, `{RDC_SKILLS_ROOT}`, or environment-derived paths.
53
- - **Hook path fallback.** Commit hygiene hooks now use the current OS home directory instead of a user-specific fallback path.
54
-
55
- ### Added
56
-
57
- - **npm binaries.** `rdc-skills-install` and `rdc-skills-self-test` are exposed from the npm package for simpler clean-box installs.
58
-
59
- ---
60
-
61
- ## v0.9.37 — RDC hook loop guard and behavior tests
62
-
63
- ### Fixed
64
-
65
- - **Stop hook reentry.** `rdc-output-contract-gate.js` now exits cleanly when Claude is already inside an active Stop-hook retry, preventing noncompliant-but-legitimate turns from hard-looping the session.
66
- - **Marker deduplication.** `rdc-invocation-marker.js` now preserves the original marker when `UserPromptExpansion` and `UserPromptSubmit` both fire for the same RDC command within the same second.
67
-
68
- ### Added
69
-
70
- - **Hook behavioral tests.** New `scripts/test-rdc-hooks.mjs` executes the marker and Stop hooks against real JSON payloads, and `self-test --strict` now fails if those behavioral checks fail.
71
-
72
- ---
73
-
74
- ## v0.9.36 — Portable installer profiles and startup onboarding
75
-
76
- ### Added
77
-
78
- - **Installer profiles.** `--profile core` installs clean-box-safe hooks only; `--profile lifeai` keeps the LIFEAI/regen-root cwd, clauth, Supabase, and overnight hooks. `auto` chooses `lifeai` only when a sibling `regen-root` project is detected.
79
- - **Managed startup guide.** New `guides/rdc-skills-startup.md` explains what RDC skills add, the active profiles, and where to find skills, commands, guides, hooks, and installer behavior.
80
- - **Optional startup block writer.** `--project-root <path> --write-startup-blocks` writes `.rdc/guides/rdc-skills-startup.md` plus managed RDC sections in project `CLAUDE.md` and `AGENTS.md`.
81
- - **Install welcome.** The installer now prints the selected profile, what it enables, and where to look next.
82
-
83
- ### Changed
84
-
85
- - The default clean-box profile no longer wires regen-root-specific hooks such as cwd lock, Supabase work-item exit gate, rate-limit retry, or overnight open-epic guard.
86
-
87
- ---
88
-
89
- ## v0.9.35 — RDC output-contract hook enforcement
90
-
91
- ### Added
92
-
93
- - **RDC slash-command marker hook.** `rdc-invocation-marker.js` marks direct `/rdc:*` skill invocations through `UserPromptExpansion`, with a `UserPromptSubmit` fallback for older runtimes, and injects the output/engineering contract reminder.
94
- - **RDC Stop gate.** `rdc-output-contract-gate.js` blocks completion for active RDC invocations until the final assistant message includes both a checklist row and a verdict line.
95
- - **Installer wiring and self-test coverage.** The Node and PowerShell installers now wire the RDC marker/gate hooks, and `self-test` fails when required hook files or installer references are missing.
96
-
97
- ---
98
-
99
- ## 0.6.1 — Tier 2 stability + rdc:watch session watcher
100
-
101
- ### Added
102
-
103
- - **`rdc:watch` skill.** Initializes a session log and opens a static HTML viewer that tails Claude activity live via `fetch()` polling. Zero infra — pure filesystem + `.rdc/session-log/current.log` + `viewer.html`. New skill at `skills/rdc-watch.md`, init helper at `scripts/watch-init.mjs`, viewer asset at `assets/watcher/viewer.html`. Dark terminal theme, color-coded event kinds (`dispatch`/`commit`/`test`/`error`/`note`/`banner`), auto-scroll, stall detection.
104
- - **Tier 2 behavioral harness (WP1–WP9).** Full work-item delta wiring through PostgREST, 13 baseline test manifests, Tier 2 runner, CI workflow, skill documentation.
105
-
106
- ### Fixed
107
-
108
- - **Windows spawn streaming.** `scripts/lib/runner.mjs` now passes `--verbose` alongside `--output-format stream-json` so Claude emits events to stdout on Windows. Without it, stream-json output was buffered/empty.
109
- - **Main-db sandbox mode.** Tier 2 runner supports free, read-only sandbox mode against the main Supabase project so behavioral tests don't accrue hourly branch costs.
110
-
111
- ---
112
-
113
- ## v0.6.0 — Plugin conversion + agent-hide
114
-
115
- ### Added
116
-
117
- - **Claude Code plugin format.** New `.claude-plugin/plugin.json` manifest at repo root (name, version, description, author, homepage, repository) plus `.claude-plugin/marketplace.json` declaring this repo as a single-plugin marketplace pointing at itself (`source: "."`). Matches the schema used by `hookify`, `commit-commands`, `huggingface-skills`, and other official Anthropic plugins — directories (`skills/`, `hooks/`, `commands/`, `agents/`) are auto-discovered by convention, no explicit path keys needed.
118
- - **New install path.**
119
- ```
120
- /plugin marketplace add LIFEAI/rdc-skills
121
- /plugin install rdc-skills
122
- ```
123
- All 16 user-invocable skills load automatically via Claude Code's plugin runtime — no copy scripts, no `~/.claude/skills/user/` writes.
124
-
125
- ### Changed
126
-
127
- - **10 agent-type skills moved out of `skills/` into `guides/agents/`** (Thread D). Reclaims slots in the Claude Code skill menu cap. Agent playbooks (frontend, backend, data, design, infrastructure, content, cs2, viz, setup, verify) are now dispatched internally by `rdc:build` and are no longer user-invocable slash commands.
128
- - **README install section rewritten** to lead with `/plugin install`. Legacy PowerShell/Bash install path documented under "Legacy install (deprecated)".
129
-
130
- ### Deprecated
131
-
132
- - `scripts/install.ps1`, `scripts/install.sh`, `scripts/install.js` — deprecation headers added. These will be **removed in v0.7.0**. Migrate to `/plugin install rdc-skills`.
133
-
134
- ---
135
-
136
- ## [0.4.0] — 2026-04-14
137
-
138
- ### Added
139
-
140
- #### `rdc:verify` — Verification Gate Skill
141
- - New skill `skills/rdc-verify.md` — evidence-before-claims verification gate adapted from obra/superpowers `verification-before-completion` pattern
142
- - **Iron Law**: NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE — no "should", no "probably", no reasoning from memory
143
- - **Stack-specific commands**: `npx vitest run --dir <pkg>` + `npx tsc --noEmit --project <pkg>/tsconfig.json`
144
- - **Explicit ban**: `pnpm build` / `pnpm test` / `pnpm -r` — crashes machine (800MB/process)
145
- - Rationalization prevention table, required output format with quoted evidence
146
-
147
- ### Changed
148
-
149
- #### `rdc:build` — Mandatory Final Verification Phase
150
- - New step 10: invoke `rdc:verify` across every package/app touched before marking epic done
151
- - Step 11: push + version bump + summary **only after** verification evidence passes
152
-
153
- #### `rdc:review` — Verification Gate Before CLEAN Verdict
154
- - New step 9: invoke `rdc:verify` after fixes land — no CLEAN verdict without fresh vitest + tsc output quoted in report
155
- - If verify fails → loop back, fix, re-run (never emit CLEAN optimistically)
156
-
157
- ---
158
-
159
- ## [0.3.0] — 2026-04-13
160
-
161
- ### Added
162
-
163
- #### Intelligent Project Detection (`scripts/install.js`)
164
- - **`detectProjectInfo(projectRoot)`** — scans `package.json`, git remote, `.env.local` (incl. `apps/**`), `CLAUDE.md`, existing `.rdc/config.json` to auto-populate setup interview defaults
165
- - **Auto-prompt setup interview** — default install now prompts `"No .rdc/config.json found. Run setup interview now? [Y/n]:"` instead of passive tip
166
- - **Pre-filled interview** — detected values shown in `[brackets]`; press Enter to accept. Eliminates manual re-entry of already-known project metadata
167
- - **Detection summary printed** — detected project name, GitHub, Supabase ref, branches, guides dir shown after preflight
168
-
169
- #### `/rdc:setup` Skill
170
- - **New Claude skill** `rdc-setup.md` — instructs Claude to perform a full project scan (15+ file types), emit structured detection summary, generate `.rdc/config.json` and overlay guides, offer docs/ migration, commit result
171
- - Complements the `install.js` script-level detection with a richer AI-driven scan when running interactively in Claude Code
172
- - Preserves existing `agent-bootstrap.md` custom sections when updating
173
-
174
- ---
175
-
176
- ## [0.2.0] — 2026-04-13
177
-
178
- ### Added
179
-
180
- #### `.rdc/` Project Directory Convention
181
- - **`.rdc/config.json` schema** — project metadata: name, hook_scope, git config, Supabase ref, credential provider, repo list, path overrides, constraints
182
- - **Standardised paths**: `.rdc/guides/`, `.rdc/plans/`, `.rdc/reports/`, `.rdc/research/`, `.rdc/state/`
183
- - All 20 skills updated to read from `.rdc/` with fallback to legacy `docs/` structure for existing projects
184
- - `guides/agent-bootstrap.md` updated to instruct agents to check `.rdc/config.json` for project metadata
185
-
186
- #### Installer (`scripts/install.js`)
187
- - **`--migrate <path>` flag** — interactive wizard: scans for `docs/guides/`, `docs/plans/`, `docs/reports/`, `docs/research/`; offers to move each to `.rdc/`; merges files if destination already exists; auto-detects GitHub org/repo from git remote
188
- - **`--setup` generates `.rdc/config.json`** from interview answers in addition to `docs/guides/agent-bootstrap.md`
189
- - **Preflight checks** — Node ≥ 18 (hard error), clauth daemon ping (warn), `.rdc/config.json` presence check (suggest `--setup`)
190
- - **Multi-project support** — each project carries its own `.rdc/` committed to git; skills are global, intelligence travels with the repo
191
-
192
- #### Multi-Repo Support
193
- - `config.json` `repos[]` array — primary + satellite repos listed with roles
194
- - One project, many repos: monorepo root holds `.rdc/config.json`, lists satellite repo paths
195
-
196
- ---
197
-
198
- ## [0.1.0] — 2026-04-13
199
-
200
- ### Added
201
-
202
- #### Core Architecture
203
-
204
- - **Plugin scaffold** — Complete rdc-skills plugin repo structure extracted from regen-root monorepo
205
- - **Two-layer guide system** — Plugin base guides + project overlay guides enabling skill portability across codebases
206
- - Plugin base covers generic patterns (work items RPC, git workflow, standard builds)
207
- - Project overlays (frontend.md, backend.md, data.md, etc.) inject stack-specific conventions
208
- - Agent receives merged context — project layer wins on conflicts
209
- - **Skill dispatch system** — Twelve skill commands integrated with Supabase work_items RPC
210
- - `/rdc:status` — Show open epics, kanban, Coolify health, next action
211
- - `/rdc:plan <topic>` — Architecture planning, create epic + child tasks
212
- - `/rdc:preplan <topic>` — Research phase before planning
213
- - `/rdc:build <epic-id>` — Execute epic tasks in parallel with typed agents
214
- - `/rdc:review` — Quality gate: tests, types, stale docs, exports
215
- - `/rdc:overnight` — Unattended full pipeline (chains all skills across queue)
216
- - `/rdc:fixit <description>` — Sanctioned bypass for <5 files, <30 min hotfixes
217
- - `/rdc:report` — Generate nightly markdown report to docs/reports/YYYY-MM-DD.md
218
- - Plus agent bootstrap guide + domain-specific agent guides (frontend, backend, data, design, infrastructure, content, cs2)
219
-
220
- #### TDD Enforcement (Option B)
221
-
222
- - **Wave-based test-first builds** — rdc:build now requires tests-first per build wave
223
- - npx vitest run per package before proceeding to next wave
224
- - `pnpm build` NEVER invoked (memory constraints on dev machine)
225
- - Allows async test runs in subagent while supervisor waits
226
- - **Test harness integration** — skills coordinate with tsconfig paths, jest/vitest configs, test result tracking
227
- - **Coverage reporting** — per-wave coverage aggregation, integration with GitHub PR checks
228
-
229
- #### Stop Hook
230
-
231
- - **no-stop-open-epics.js** — Blocks Claude from stopping when `get_open_epics()` returns todo items
232
- - Only blocks when todo-status epics exist (in_progress = another session owns them)
233
- - Project scope guard — only fires in sessions where cwd contains PROJECT_SCOPE folder
234
- - Integrates with Supabase REST API (project-ref from env vars)
235
- - Exit code 2 = block, 0 = allow
236
- - Silent pass if Supabase credentials unavailable
237
-
238
- #### Installation & Management
239
-
240
- - **Windows installer** (scripts/install.ps1) — CLAUDE_HOME detection, symlink skills + hooks, summary report
241
- - **Unix installer** (scripts/install.sh) — Bash equivalent for macOS/Linux
242
- - **Update scripts** — git pull + reinstall (version bump reporting)
243
- - **Uninstall scripts** — Safe removal of rdc-skills files only (never touches user files)
244
- - **Validation test** (tests/validate-skills.js) — YAML frontmatter check, required sections, exit 1 on failure
245
-
246
- #### Documentation
247
-
248
- - **Plugin README** — Architecture diagram, quick start, skill reference table, guide types, Option B explanation
249
- - **Generic work-items-rpc.md** — Complete RPC reference (generic, no hardcoded project IDs)
250
- - get_open_epics, insert_work_item, update_work_item_status, get_work_items_by_epic, bump_epic_version
251
- - Valid enum values, JS client patterns, direct SQL patterns
252
- - **Project setup guide** — Two required files per project (agent-bootstrap.md, project overlay guides)
253
- - **Contributing guide** — Fork → branch → PR workflow, validate before submit
254
-
255
- #### Settings & Configuration
256
-
257
- - **.claude/settings.json** — Plugin harness permissions, nodeID detection
258
- - **.gitignore** — Standard Node.js + git exclusions
259
-
260
- ### Changed
261
-
262
- - N/A (initial release)
263
-
264
- ### Deprecated
265
-
266
- - N/A
267
-
268
- ### Removed
269
-
270
- - N/A
271
-
272
- ### Fixed
273
-
274
- - N/A
275
-
276
- ### Security
277
-
278
- - Credential handling via environment variables only (no hardcoded keys)
279
- - clauth daemon tunnel for all sensitive operations
280
- - Project scope guard prevents stop hook from firing in wrong context
281
-
282
- ---
283
-
284
- ## Installation & Setup
285
-
286
- ### For end users
287
-
288
- ```bash
289
- # Windows
290
- git clone https://github.com/LIFEAI/rdc-skills.git
291
- npm run install:win
292
-
293
- # macOS / Linux
294
- git clone https://github.com/LIFEAI/rdc-skills.git
295
- npm run install:unix
296
- ```
297
-
298
- Then configure your project:
299
- 1. Create `docs/guides/agent-bootstrap.md` with credentials
300
- 2. Create per-role overlay guides in `docs/guides/` (frontend.md, backend.md, etc.)
301
- 3. Run `/rdc:status` to verify setup
302
-
303
- ### For contributors
304
-
305
- ```bash
306
- git clone https://github.com/LIFEAI/rdc-skills.git
307
- cd rdc-skills
308
- npm run validate # Check all skills
309
- npm run test # (future: comprehensive test suite)
310
- ```
311
-
312
- ---
313
-
314
- ## Known Issues & Roadmap
315
-
316
- ### Current Limitations
317
-
318
- - Stop hook requires Supabase access (silent pass if unavailable)
319
- - No built-in skill/guide templating yet (manual creation)
320
- - Validation test basic (could extend to markdown lint, frontmatter schema, etc.)
321
-
322
- ### Phase 2 (Future)
323
-
324
- - Skill generator (`rdc:newskill`) for rapid skill creation
325
- - Guide templating system
326
- - Agent role auto-detection from codebase structure
327
- - Integration with GitHub Actions CI
328
- - Skill marketplace / package distribution
329
- - TDD enforcement integration for all major test frameworks (Vitest, Jest, pytest, Gotest)
330
-
331
- ---
332
-
333
- ## License
334
-
335
- MIT — See LICENSE file for details.
24
+
25
+ ### Added
26
+ - `rdc:onramp` — Phase-1 enrollment infrastructure orchestrator for new Place
27
+ Fund projects. It gates the existing `enroll_place` RPC, `insert_work_item`
28
+ enrollment epic, and `onramp-scaffold-place.mjs` disk scaffolder in strict
29
+ order, with fresh/already-enrolled/spine-ahead/disk-ahead drift handling.
30
+ - Tier-2 onramp test manifest coverage for the `_context.md` absence invariant,
31
+ deterministic door contracts, and four-state drift behavior.
32
+
33
+ ---
34
+
35
+ ## v0.21.0 — channel-formatter skill
36
+
37
+ ### Added
38
+ - `rdc:channel-formatter` — channel-native output formatting for LinkedIn, Twitter/X,
39
+ Slack/Teams, Email (external/internal), Pitch Deck, Word/DOCX, PDF Report, and
40
+ Web/Landing Page. Ported from the `output-channel-formatter` claude.ai skill and
41
+ **inlined into a single self-contained SKILL.md** (no `references/` files) so it works
42
+ identically across the CLI plugin, the claude.ai web client (via `rdc_skill_get`, which
43
+ serves only SKILL.md), and Codex.
44
+
45
+ ---
46
+
47
+ ## v0.9.38 — Clean-box npm install hardening
48
+
49
+ ### Fixed
50
+
51
+ - **Fresh Claude home install.** The installer now creates `CLAUDE_HOME` and `settings.json` when they do not exist, so a first-time machine is not blocked before Claude has written config files.
52
+ - **Public package portability.** Removed the most brittle user-machine paths from public skill docs and hooks, replacing them with `{PROJECT_ROOT}`, `{RDC_SKILLS_ROOT}`, or environment-derived paths.
53
+ - **Hook path fallback.** Commit hygiene hooks now use the current OS home directory instead of a user-specific fallback path.
54
+
55
+ ### Added
56
+
57
+ - **npm binaries.** `rdc-skills-install` and `rdc-skills-self-test` are exposed from the npm package for simpler clean-box installs.
58
+
59
+ ---
60
+
61
+ ## v0.9.37 — RDC hook loop guard and behavior tests
62
+
63
+ ### Fixed
64
+
65
+ - **Stop hook reentry.** `rdc-output-contract-gate.js` now exits cleanly when Claude is already inside an active Stop-hook retry, preventing noncompliant-but-legitimate turns from hard-looping the session.
66
+ - **Marker deduplication.** `rdc-invocation-marker.js` now preserves the original marker when `UserPromptExpansion` and `UserPromptSubmit` both fire for the same RDC command within the same second.
67
+
68
+ ### Added
69
+
70
+ - **Hook behavioral tests.** New `scripts/test-rdc-hooks.mjs` executes the marker and Stop hooks against real JSON payloads, and `self-test --strict` now fails if those behavioral checks fail.
71
+
72
+ ---
73
+
74
+ ## v0.9.36 — Portable installer profiles and startup onboarding
75
+
76
+ ### Added
77
+
78
+ - **Installer profiles.** `--profile core` installs clean-box-safe hooks only; `--profile lifeai` keeps the LIFEAI/regen-root cwd, clauth, Supabase, and overnight hooks. `auto` chooses `lifeai` only when a sibling `regen-root` project is detected.
79
+ - **Managed startup guide.** New `guides/rdc-skills-startup.md` explains what RDC skills add, the active profiles, and where to find skills, commands, guides, hooks, and installer behavior.
80
+ - **Optional startup block writer.** `--project-root <path> --write-startup-blocks` writes `.rdc/guides/rdc-skills-startup.md` plus managed RDC sections in project `CLAUDE.md` and `AGENTS.md`.
81
+ - **Install welcome.** The installer now prints the selected profile, what it enables, and where to look next.
82
+
83
+ ### Changed
84
+
85
+ - The default clean-box profile no longer wires regen-root-specific hooks such as cwd lock, Supabase work-item exit gate, rate-limit retry, or overnight open-epic guard.
86
+
87
+ ---
88
+
89
+ ## v0.9.35 — RDC output-contract hook enforcement
90
+
91
+ ### Added
92
+
93
+ - **RDC slash-command marker hook.** `rdc-invocation-marker.js` marks direct `/rdc:*` skill invocations through `UserPromptExpansion`, with a `UserPromptSubmit` fallback for older runtimes, and injects the output/engineering contract reminder.
94
+ - **RDC Stop gate.** `rdc-output-contract-gate.js` blocks completion for active RDC invocations until the final assistant message includes both a checklist row and a verdict line.
95
+ - **Installer wiring and self-test coverage.** The Node and PowerShell installers now wire the RDC marker/gate hooks, and `self-test` fails when required hook files or installer references are missing.
96
+
97
+ ---
98
+
99
+ ## 0.6.1 — Tier 2 stability + rdc:watch session watcher
100
+
101
+ ### Added
102
+
103
+ - **`rdc:watch` skill.** Initializes a session log and opens a static HTML viewer that tails Claude activity live via `fetch()` polling. Zero infra — pure filesystem + `.rdc/session-log/current.log` + `viewer.html`. New skill at `skills/rdc-watch.md`, init helper at `scripts/watch-init.mjs`, viewer asset at `assets/watcher/viewer.html`. Dark terminal theme, color-coded event kinds (`dispatch`/`commit`/`test`/`error`/`note`/`banner`), auto-scroll, stall detection.
104
+ - **Tier 2 behavioral harness (WP1–WP9).** Full work-item delta wiring through PostgREST, 13 baseline test manifests, Tier 2 runner, CI workflow, skill documentation.
105
+
106
+ ### Fixed
107
+
108
+ - **Windows spawn streaming.** `scripts/lib/runner.mjs` now passes `--verbose` alongside `--output-format stream-json` so Claude emits events to stdout on Windows. Without it, stream-json output was buffered/empty.
109
+ - **Main-db sandbox mode.** Tier 2 runner supports free, read-only sandbox mode against the main Supabase project so behavioral tests don't accrue hourly branch costs.
110
+
111
+ ---
112
+
113
+ ## v0.6.0 — Plugin conversion + agent-hide
114
+
115
+ ### Added
116
+
117
+ - **Claude Code plugin format.** New `.claude-plugin/plugin.json` manifest at repo root (name, version, description, author, homepage, repository) plus `.claude-plugin/marketplace.json` declaring this repo as a single-plugin marketplace pointing at itself (`source: "."`). Matches the schema used by `hookify`, `commit-commands`, `huggingface-skills`, and other official Anthropic plugins — directories (`skills/`, `hooks/`, `commands/`, `agents/`) are auto-discovered by convention, no explicit path keys needed.
118
+ - **New install path.**
119
+ ```
120
+ /plugin marketplace add LIFEAI/rdc-skills
121
+ /plugin install rdc-skills
122
+ ```
123
+ All 16 user-invocable skills load automatically via Claude Code's plugin runtime — no copy scripts, no `~/.claude/skills/user/` writes.
124
+
125
+ ### Changed
126
+
127
+ - **10 agent-type skills moved out of `skills/` into `guides/agents/`** (Thread D). Reclaims slots in the Claude Code skill menu cap. Agent playbooks (frontend, backend, data, design, infrastructure, content, cs2, viz, setup, verify) are now dispatched internally by `rdc:build` and are no longer user-invocable slash commands.
128
+ - **README install section rewritten** to lead with `/plugin install`. Legacy PowerShell/Bash install path documented under "Legacy install (deprecated)".
129
+
130
+ ### Deprecated
131
+
132
+ - `scripts/install.ps1`, `scripts/install.sh`, `scripts/install.js` — deprecation headers added. These will be **removed in v0.7.0**. Migrate to `/plugin install rdc-skills`.
133
+
134
+ ---
135
+
136
+ ## [0.4.0] — 2026-04-14
137
+
138
+ ### Added
139
+
140
+ #### `rdc:verify` — Verification Gate Skill
141
+ - New skill `skills/rdc-verify.md` — evidence-before-claims verification gate adapted from obra/superpowers `verification-before-completion` pattern
142
+ - **Iron Law**: NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE — no "should", no "probably", no reasoning from memory
143
+ - **Stack-specific commands**: `npx vitest run --dir <pkg>` + `npx tsc --noEmit --project <pkg>/tsconfig.json`
144
+ - **Explicit ban**: `pnpm build` / `pnpm test` / `pnpm -r` — crashes machine (800MB/process)
145
+ - Rationalization prevention table, required output format with quoted evidence
146
+
147
+ ### Changed
148
+
149
+ #### `rdc:build` — Mandatory Final Verification Phase
150
+ - New step 10: invoke `rdc:verify` across every package/app touched before marking epic done
151
+ - Step 11: push + version bump + summary **only after** verification evidence passes
152
+
153
+ #### `rdc:review` — Verification Gate Before CLEAN Verdict
154
+ - New step 9: invoke `rdc:verify` after fixes land — no CLEAN verdict without fresh vitest + tsc output quoted in report
155
+ - If verify fails → loop back, fix, re-run (never emit CLEAN optimistically)
156
+
157
+ ---
158
+
159
+ ## [0.3.0] — 2026-04-13
160
+
161
+ ### Added
162
+
163
+ #### Intelligent Project Detection (`scripts/install.js`)
164
+ - **`detectProjectInfo(projectRoot)`** — scans `package.json`, git remote, `.env.local` (incl. `apps/**`), `CLAUDE.md`, existing `.rdc/config.json` to auto-populate setup interview defaults
165
+ - **Auto-prompt setup interview** — default install now prompts `"No .rdc/config.json found. Run setup interview now? [Y/n]:"` instead of passive tip
166
+ - **Pre-filled interview** — detected values shown in `[brackets]`; press Enter to accept. Eliminates manual re-entry of already-known project metadata
167
+ - **Detection summary printed** — detected project name, GitHub, Supabase ref, branches, guides dir shown after preflight
168
+
169
+ #### `/rdc:setup` Skill
170
+ - **New Claude skill** `rdc-setup.md` — instructs Claude to perform a full project scan (15+ file types), emit structured detection summary, generate `.rdc/config.json` and overlay guides, offer docs/ migration, commit result
171
+ - Complements the `install.js` script-level detection with a richer AI-driven scan when running interactively in Claude Code
172
+ - Preserves existing `agent-bootstrap.md` custom sections when updating
173
+
174
+ ---
175
+
176
+ ## [0.2.0] — 2026-04-13
177
+
178
+ ### Added
179
+
180
+ #### `.rdc/` Project Directory Convention
181
+ - **`.rdc/config.json` schema** — project metadata: name, hook_scope, git config, Supabase ref, credential provider, repo list, path overrides, constraints
182
+ - **Standardised paths**: `.rdc/guides/`, `.rdc/plans/`, `.rdc/reports/`, `.rdc/research/`, `.rdc/state/`
183
+ - All 20 skills updated to read from `.rdc/` with fallback to legacy `docs/` structure for existing projects
184
+ - `guides/agent-bootstrap.md` updated to instruct agents to check `.rdc/config.json` for project metadata
185
+
186
+ #### Installer (`scripts/install.js`)
187
+ - **`--migrate <path>` flag** — interactive wizard: scans for `docs/guides/`, `docs/plans/`, `docs/reports/`, `docs/research/`; offers to move each to `.rdc/`; merges files if destination already exists; auto-detects GitHub org/repo from git remote
188
+ - **`--setup` generates `.rdc/config.json`** from interview answers in addition to `docs/guides/agent-bootstrap.md`
189
+ - **Preflight checks** — Node ≥ 18 (hard error), clauth daemon ping (warn), `.rdc/config.json` presence check (suggest `--setup`)
190
+ - **Multi-project support** — each project carries its own `.rdc/` committed to git; skills are global, intelligence travels with the repo
191
+
192
+ #### Multi-Repo Support
193
+ - `config.json` `repos[]` array — primary + satellite repos listed with roles
194
+ - One project, many repos: monorepo root holds `.rdc/config.json`, lists satellite repo paths
195
+
196
+ ---
197
+
198
+ ## [0.1.0] — 2026-04-13
199
+
200
+ ### Added
201
+
202
+ #### Core Architecture
203
+
204
+ - **Plugin scaffold** — Complete rdc-skills plugin repo structure extracted from regen-root monorepo
205
+ - **Two-layer guide system** — Plugin base guides + project overlay guides enabling skill portability across codebases
206
+ - Plugin base covers generic patterns (work items RPC, git workflow, standard builds)
207
+ - Project overlays (frontend.md, backend.md, data.md, etc.) inject stack-specific conventions
208
+ - Agent receives merged context — project layer wins on conflicts
209
+ - **Skill dispatch system** — Twelve skill commands integrated with Supabase work_items RPC
210
+ - `/rdc:status` — Show open epics, kanban, Coolify health, next action
211
+ - `/rdc:plan <topic>` — Architecture planning, create epic + child tasks
212
+ - `/rdc:preplan <topic>` — Research phase before planning
213
+ - `/rdc:build <epic-id>` — Execute epic tasks in parallel with typed agents
214
+ - `/rdc:review` — Quality gate: tests, types, stale docs, exports
215
+ - `/rdc:overnight` — Unattended full pipeline (chains all skills across queue)
216
+ - `/rdc:fixit <description>` — Sanctioned bypass for <5 files, <30 min hotfixes
217
+ - `/rdc:report` — Generate nightly markdown report to docs/reports/YYYY-MM-DD.md
218
+ - Plus agent bootstrap guide + domain-specific agent guides (frontend, backend, data, design, infrastructure, content, cs2)
219
+
220
+ #### TDD Enforcement (Option B)
221
+
222
+ - **Wave-based test-first builds** — rdc:build now requires tests-first per build wave
223
+ - npx vitest run per package before proceeding to next wave
224
+ - `pnpm build` NEVER invoked (memory constraints on dev machine)
225
+ - Allows async test runs in subagent while supervisor waits
226
+ - **Test harness integration** — skills coordinate with tsconfig paths, jest/vitest configs, test result tracking
227
+ - **Coverage reporting** — per-wave coverage aggregation, integration with GitHub PR checks
228
+
229
+ #### Stop Hook
230
+
231
+ - **no-stop-open-epics.js** — Blocks Claude from stopping when `get_open_epics()` returns todo items
232
+ - Only blocks when todo-status epics exist (in_progress = another session owns them)
233
+ - Project scope guard — only fires in sessions where cwd contains PROJECT_SCOPE folder
234
+ - Integrates with Supabase REST API (project-ref from env vars)
235
+ - Exit code 2 = block, 0 = allow
236
+ - Silent pass if Supabase credentials unavailable
237
+
238
+ #### Installation & Management
239
+
240
+ - **Windows installer** (scripts/install.ps1) — CLAUDE_HOME detection, symlink skills + hooks, summary report
241
+ - **Unix installer** (scripts/install.sh) — Bash equivalent for macOS/Linux
242
+ - **Update scripts** — git pull + reinstall (version bump reporting)
243
+ - **Uninstall scripts** — Safe removal of rdc-skills files only (never touches user files)
244
+ - **Validation test** (tests/validate-skills.js) — YAML frontmatter check, required sections, exit 1 on failure
245
+
246
+ #### Documentation
247
+
248
+ - **Plugin README** — Architecture diagram, quick start, skill reference table, guide types, Option B explanation
249
+ - **Generic work-items-rpc.md** — Complete RPC reference (generic, no hardcoded project IDs)
250
+ - get_open_epics, insert_work_item, update_work_item_status, get_work_items_by_epic, bump_epic_version
251
+ - Valid enum values, JS client patterns, direct SQL patterns
252
+ - **Project setup guide** — Two required files per project (agent-bootstrap.md, project overlay guides)
253
+ - **Contributing guide** — Fork → branch → PR workflow, validate before submit
254
+
255
+ #### Settings & Configuration
256
+
257
+ - **.claude/settings.json** — Plugin harness permissions, nodeID detection
258
+ - **.gitignore** — Standard Node.js + git exclusions
259
+
260
+ ### Changed
261
+
262
+ - N/A (initial release)
263
+
264
+ ### Deprecated
265
+
266
+ - N/A
267
+
268
+ ### Removed
269
+
270
+ - N/A
271
+
272
+ ### Fixed
273
+
274
+ - N/A
275
+
276
+ ### Security
277
+
278
+ - Credential handling via environment variables only (no hardcoded keys)
279
+ - clauth daemon tunnel for all sensitive operations
280
+ - Project scope guard prevents stop hook from firing in wrong context
281
+
282
+ ---
283
+
284
+ ## Installation & Setup
285
+
286
+ ### For end users
287
+
288
+ ```bash
289
+ # Windows
290
+ git clone https://github.com/LIFEAI/rdc-skills.git
291
+ npm run install:win
292
+
293
+ # macOS / Linux
294
+ git clone https://github.com/LIFEAI/rdc-skills.git
295
+ npm run install:unix
296
+ ```
297
+
298
+ Then configure your project:
299
+ 1. Create `docs/guides/agent-bootstrap.md` with credentials
300
+ 2. Create per-role overlay guides in `docs/guides/` (frontend.md, backend.md, etc.)
301
+ 3. Run `/rdc:status` to verify setup
302
+
303
+ ### For contributors
304
+
305
+ ```bash
306
+ git clone https://github.com/LIFEAI/rdc-skills.git
307
+ cd rdc-skills
308
+ npm run validate # Check all skills
309
+ npm run test # (future: comprehensive test suite)
310
+ ```
311
+
312
+ ---
313
+
314
+ ## Known Issues & Roadmap
315
+
316
+ ### Current Limitations
317
+
318
+ - Stop hook requires Supabase access (silent pass if unavailable)
319
+ - No built-in skill/guide templating yet (manual creation)
320
+ - Validation test basic (could extend to markdown lint, frontmatter schema, etc.)
321
+
322
+ ### Phase 2 (Future)
323
+
324
+ - Skill generator (`rdc:newskill`) for rapid skill creation
325
+ - Guide templating system
326
+ - Agent role auto-detection from codebase structure
327
+ - Integration with GitHub Actions CI
328
+ - Skill marketplace / package distribution
329
+ - TDD enforcement integration for all major test frameworks (Vitest, Jest, pytest, Gotest)
330
+
331
+ ---
332
+
333
+ ## License
334
+
335
+ MIT — See LICENSE file for details.