@lifeaitools/rdc-skills 0.9.38 → 0.11.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.
@@ -1,104 +1,99 @@
1
1
  ---
2
2
  name: rdc:help
3
- description: "Usage `rdc:help` — Show all rdc:* skills with full argument syntax. Call when unsure which skill to use or what args it takes."
3
+ description: "Usage `rdc:help` — Show all rdc:* skills with usage, requirements, and codeflow status. Reads `.claude-plugin/plugin.json` skills_meta (single source of truth). Call when unsure which skill to use or what args it takes."
4
4
  ---
5
5
 
6
6
  > **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
7
7
  > Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
8
- > One checklist upfront, updated in place, shown again at end with a 1-line verdict.
9
8
 
10
- # rdc:help — Command Reference
9
+ # rdc:help — Command Reference (manifest-driven)
11
10
 
12
- > **⚠️ HARD OUTPUT RULE:** Your ENTIRE response MUST be the block below, copied verbatim.
13
- > No preamble. No follow-up question. No summary. No "what would you like to do?".
14
- > Do NOT add any text before or after the block. Emit it exactly as written. This is non-negotiable.
11
+ > **⚠️ HARD OUTPUT RULE:** Read the plugin manifest, render the table, exit.
12
+ > No preamble. No follow-up question. No summary.
15
13
 
16
- ## When to Use
14
+ ## Procedure
17
15
 
18
- - The project lead asks what RDC commands exist
19
- - The active task is unclear and needs command selection
20
- - A user needs syntax for planning, build, review, deployment, design, or release workflows
16
+ 1. Resolve the plugin manifest path. Try in order, take the first that exists:
17
+ - `{PLUGIN_ROOT}/.claude-plugin/plugin.json` ← preferred when running from the published plugin
18
+ - `C:/Dev/rdc-skills/.claude-plugin/plugin.json` source-checkout fallback
19
+ - `~/.claude/plugins/cache/rdc-skills/rdc-skills/latest/.claude-plugin/plugin.json` ← installed cache
20
+ 2. Read it. Parse JSON. Read `skills_meta`.
21
+ 3. Group entries by `category` in this order: `planning, build, deploy, release, dev-loop, reporting, tooling, infra`.
22
+ 4. For each entry render one row: `{slash} — {usage} — needs: {requires.join(',')} — cf: {codeflow_required ? 'yes' : 'no'}`.
23
+ 5. Print a Decision Tree at the end that maps natural-language phrases to skills, derived from each entry's `triggers[]`.
24
+ 6. Hard rules section at the bottom (see below — verbatim).
21
25
 
22
- ## Arguments
26
+ ## Required output format
23
27
 
24
- - `rdc:help` — print the full command reference menu
25
- - `rdc` — alias; same as `rdc:help`
26
-
27
- ## Workflow — the RDC loop
28
-
29
- | Command | Usage |
30
- |---|---|
31
- | `rdc:preplan` | `rdc:preplan <topic> [--unattended]` — research, no code |
32
- | `rdc:plan` | `rdc:plan <topic> [--unattended]` — architecture + epic/tasks |
33
- | `rdc:build` | `rdc:build <epic-id\|topic> [--unattended]` — dispatch agents, commit, close items |
34
- | `rdc:review` | `rdc:review [--unattended]` — typecheck, tests, fix, commit |
35
- | `rdc:report` | `rdc:report [--unattended]` — write `.rdc/reports/YYYY-MM-DD.md` |
36
- | `rdc:overnight` | `rdc:overnight [epic-id\|label=X]` — chain preplan→plan→build→review→report |
37
- | `rdc:status` | `rdc:status` — read-only dashboard |
38
- | `rdc:fixit` | `rdc:fixit <description>` — bypass the loop, <5 files / <30 min |
39
-
40
- ## Ops
41
-
42
- | Command | Usage |
43
- |---|---|
44
- | `rdc:deploy` | `rdc:deploy <slug> [build-id]` · `rdc:deploy new <slug>` · `rdc:deploy diagnose <slug>` · `rdc:deploy audit [--fix]` |
45
- | `rdc:release` | `rdc:release <repo> [version]` · `rdc:release <repo> --patch\|--minor\|--major` · `rdc:release <repo> --dry-run` |
46
-
47
- ## Planning ↔ CLI bridge
48
-
49
- | Command | Usage |
50
- |---|---|
51
- | `rdc:handoff` | `rdc:handoff <topic>` — finalize plan → work items for CLI |
52
- | `rdc:prototype` | `rdc:prototype <description>` — JSX mock for review |
53
- | `rdc:workitems` | `rdc:workitems <add\|update\|done\|list\|epics> [args]` |
54
- | `rdc:collab` | `rdc:collab --session <id>` — claude.ai bidirectional relay |
55
- | `rdc:co-develop` | `rdc:co-develop <start\|resume\|send\|poll\|status\|stop>` — Claude/Codex peer-aware co-development |
56
- | `rdc:design` | `rdc:design <command\|brief>` — RDC/Studio design, tokens, palettes, themes, Rampa CLI |
57
-
58
- ## Agent guides (dispatched by rdc:build, not user-invocable)
59
-
60
- These live under `guides/agents/` — they are role playbooks the build skill spawns as sub-agents. You do NOT invoke them directly.
61
-
62
- - `guides/agents/frontend.md` — [agent-only — dispatched by rdc:build, not user-invocable]
63
- - `guides/agents/backend.md` — [agent-only — dispatched by rdc:build, not user-invocable]
64
- - `guides/agents/data.md` — [agent-only — dispatched by rdc:build, not user-invocable]
65
- - `guides/agents/design.md` — [agent-only — dispatched by rdc:build, not user-invocable]
66
- - `guides/agents/infrastructure.md` — [agent-only — dispatched by rdc:build, not user-invocable]
67
- - `guides/agents/content.md` — [agent-only — dispatched by rdc:build, not user-invocable]
68
- - `guides/agents/cs2.md` — [agent-only — dispatched by rdc:build, not user-invocable]
69
- - `guides/agents/viz.md` — [agent-only — dispatched by rdc:build, not user-invocable]
70
- - `guides/agents/setup.md` — [agent-only — dispatched by rdc:build, not user-invocable]
71
- - `guides/agents/verify.md` — [agent-only — dispatched by rdc:build, not user-invocable]
72
-
73
- Each agent reads `.rdc/guides/agent-bootstrap.md` first, then its role guide.
74
-
75
- ## Decision tree
76
-
77
- ```
78
- Project lead says → invoke
79
- ─────────────────────────────────────────────────
80
- "research this" / "how do others do" → rdc:preplan <topic>
81
- "plan this out" / "architect" → rdc:plan <topic>
82
- "build it" / "go" / "execute" → rdc:build <topic>
83
- "run overnight" / "while I sleep" → rdc:overnight
84
- "quick fix" / "hotfix" / "typo" → rdc:fixit <desc>
85
- "review" / "is it clean" → rdc:review
86
- "report" / "summarize" → rdc:report
87
- "status" / "where are we" → rdc:status
88
- "deploy" / "ship" → rdc:deploy <slug>
89
- "release" / "publish" → rdc:release <repo>
90
- "hand this off" / "give to agents" → rdc:handoff
91
- "show me what it looks like" → rdc:prototype
92
- "add to backlog" / "create a ticket" → rdc:workitems
93
- "work together" / "partner review" → rdc:co-develop start <name>
94
- "design/tokens/palette/theme" → rdc:design <command>
95
- "what commands" / "what skills" → rdc:help
96
28
  ```
97
-
98
- ## Hard rules (apply everywhere)
99
-
100
- - NEVER `pnpm build` — crashes the machine. Typecheck with `npx tsc --noEmit`.
29
+ RDC SKILLS — manifest: .claude-plugin/plugin.json @ v{version}
30
+
31
+ ## planning
32
+ /rdc:preplan <topic> needs: codeflow cf: yes
33
+ /rdc:plan <topic> needs: supabase,clauth,codeflow,work-items-rpc cf: yes
34
+ /rdc:handoff [--from-prototype <id>] needs: supabase,clauth,codeflow,work-items-rpc,git cf: yes
35
+
36
+ ## build
37
+ /rdc:build <epic-id> needs: supabase,clauth,codeflow,agent-dispatch,work-items-rpc,git cf: yes
38
+ /rdc:design <topic> needs: supabase,clauth,codeflow,git cf: yes
39
+ /rdc:prototype <desc> needs: supabase,clauth,codeflow cf: yes
40
+ /rdc:overnight [scope] needs: supabase,clauth,codeflow,agent-dispatch,work-items-rpc,git cf: yes
41
+ /rdc:review [--unattended] needs: supabase,clauth,codeflow,agent-dispatch,git cf: yes
42
+
43
+ ## deploy
44
+ /rdc:deploy <slug> [new|diagnose|audit] [--fix] needs: clauth,coolify,pm2,supabase,codeflow cf: yes
45
+
46
+ ## release
47
+ /rdc:release <repo> [version|--patch|--minor|--major|--dry-run] needs: clauth,git,npm,coolify cf: no
48
+ ⚠ Production promotion requires explicit user go-ahead.
49
+
50
+ ## dev-loop
51
+ /rdc:fixit <description> needs: supabase,clauth,codeflow,agent-dispatch,work-items-rpc,git cf: yes
52
+ constraint: < 5 files AND < 30 min — otherwise use /rdc:plan
53
+ /rdc:collab --session <id> needs: clauth,git cf: yes
54
+ /rdc:co-develop <ask|reply|inbox|start|resume|status> needs: clauth cf: no
55
+
56
+ ## reporting
57
+ /rdc:status needs: supabase,clauth cf: no
58
+ /rdc:report needs: supabase,clauth,codeflow cf: yes
59
+ /rdc:watch needs: (none) cf: no
60
+ /rdc:help needs: (none) cf: no
61
+
62
+ ## tooling
63
+ /rdc:workitems [add|done|status|list|query] needs: supabase,clauth,work-items-rpc cf: no
64
+ /rdc:fs-mcp <task> needs: clauth cf: no
65
+
66
+ ## infra
67
+ /rdc:self-test [--strict] needs: clauth cf: no
68
+ /rdc:terminal-config <task> needs: git cf: no
69
+
70
+ ## Decision tree (derived from skills_meta[].triggers)
71
+
72
+ "research before planning" / "what should we use" → /rdc:preplan
73
+ "plan this" / "architecture" / "epic breakdown" → /rdc:plan
74
+ "build the epic" / "execute the plan" / "go" → /rdc:build
75
+ "let claude run" / "overnight" / "drain queue" → /rdc:overnight
76
+ "quick fix" / "typo" / "<5 files" → /rdc:fixit
77
+ "code review" / "audit" / "tsc check" → /rdc:review
78
+ "session report" / "summarize" → /rdc:report
79
+ "where are we" / "snapshot" → /rdc:status
80
+ "deploy to dev" / "audit watch paths" → /rdc:deploy
81
+ "promote" / "push to prod" / "ship" → /rdc:release
82
+ "convert prototype" / "finalize plan" → /rdc:handoff
83
+ "mock it up" / "show me" → /rdc:prototype
84
+ "add work item" / "list epics" → /rdc:workitems
85
+ "ask codex" / "peer-aware" → /rdc:co-develop
86
+ "claude.ai relay" / "collab session" → /rdc:collab
87
+ "palette" / "studio design" / "tokens" → /rdc:design
88
+
89
+ ## Hard rules
90
+
91
+ - `cf: yes` skills MUST consult CodeFlow before acting. Hooks fail-closed on unreachable CodeFlow for these.
92
+ - NEVER `pnpm build` at monorepo level — single scoped builds only.
101
93
  - NEVER commit to `main` without explicit approval. Default branch is `develop`.
102
94
  - NEVER overlap agents on the same files.
103
95
  - ALWAYS update work items in real time via RPCs (see `.claude/rules/work-items-rpc.md`).
104
- - ALWAYS credentials via clauth daemon: `curl -s http://127.0.0.1:52437/v/<service>` (returns plain text).
96
+ - ALWAYS credentials via clauth daemon: `curl -s http://127.0.0.1:52437/v/<service>` (plain text).
97
+ ```
98
+
99
+ > If the manifest file is unreachable, fall back to the static table above (the manifest values it was generated from). Tell the user the fallback was used so they know to investigate.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: rdc:overnight
3
- description: "Usage `rdc:overnight [epic-id|label=<label>]` — Unattended end-to-end: drain the entire work queue autonomously (preplan → plan → build → review → report). Use when leaving Claude to run unsupervised for an extended session."
3
+ description: "Usage `rdc:overnight [epic-id|label=<label>]` — Unattended end-to-end: drain the entire work queue autonomously (preplan → plan → build → review → report). Inherits mandatory per-wave code-review (pr-review-toolkit:code-reviewer) from rdc:build and rdc:review. Use when leaving Claude to run unsupervised for an extended session."
4
4
  ---
5
5
 
6
6
  > **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
@@ -119,6 +119,8 @@ Agents receive the relevant guide file from `.rdc/guides/` (fallback: `.rdc/guid
119
119
  After each wave: check `BUILD_STATUS`. If `escalated: true`, log the escalation
120
120
  in the overnight doc and continue — don't stop the loop.
121
121
 
122
+ **Mandatory code-review gate inherited from rdc:build (Step 9b).** Every wave inside `rdc:build` runs a `pr-review-toolkit:code-reviewer` pass before the next wave dispatches. Critical/high findings reopen the affected work items to `todo` and the next wave fixes them. Overnight does not skip or weaken this gate. If a wave's code-review escalates twice, advisor decides; otherwise the loop continues.
123
+
122
124
  ### 3d. Review
123
125
 
124
126
  ```
@@ -32,6 +32,7 @@ If `<repo>` is not resolvable from the current workspace, ask for its local path
32
32
 
33
33
  ```
34
34
  rdc:release: <repo> vX.Y.Z -> vA.B.C
35
+ [ ] PUBLISH.md status gate: status=active AND prod in environments (block if not)
35
36
  [ ] Source path resolved
36
37
  [ ] Release metadata read
37
38
  [ ] Working tree clean or user-approved dirty scope identified
@@ -40,6 +41,7 @@ rdc:release: <repo> vX.Y.Z -> vA.B.C
40
41
  [ ] Dry-run gate handled
41
42
  [ ] Version files updated
42
43
  [ ] Tests/self-test passed
44
+ [ ] Mandatory release code-review (pr-review-toolkit:code-reviewer on `git diff <last-released-tag>..HEAD`). Block release on `critical`/`high` findings; record `medium`/`low` in the release notes and proceed.
43
45
  [ ] Commit created
44
46
  [ ] Tag created
45
47
  [ ] Branch and tag pushed
@@ -51,6 +53,27 @@ rdc:release: <repo> vX.Y.Z -> vA.B.C
51
53
  ✅ rdc:release <repo>: vA.B.C live and verified
52
54
  ```
53
55
 
56
+ ## PUBLISH.md Status Gate (Step 0 — before any production-touching step)
57
+
58
+ Before touching any production system, read `PUBLISH.md` from the app root and validate promotion eligibility.
59
+
60
+ ```bash
61
+ PUBLISH_MD="<monorepo_path>/PUBLISH.md"
62
+ ```
63
+
64
+ **Block promotion if ANY of the following are true:**
65
+
66
+ 1. **PUBLISH.md is missing AND the app has a row in `app_deployments`** — emit warn and continue (during rollout period); becomes a hard block after Option A rollout is complete.
67
+ 2. **PUBLISH.md exists AND `status` field is NOT `active`** — hard block regardless of rollout status.
68
+ - `status: draft` → `BLOCKED: PUBLISH.md status=draft for <slug> — promote requires status=active`
69
+ - `status: deprecated` → `BLOCKED: PUBLISH.md status=deprecated for <slug> — promote requires status=active`
70
+ 3. **PUBLISH.md exists AND `environments` array does not include `prod`** → `BLOCKED: PUBLISH.md environments=[dev] for <slug> — prod must be declared before promotion`
71
+ 4. **Any required surface field is missing** (`source_dir` or `path` absent on any surface) → `BLOCKED: PUBLISH.md surface <id> missing required field for <slug>`
72
+
73
+ If blocked, abort immediately with the message above. Do NOT proceed to the version bump, commit, or any Coolify call.
74
+
75
+ If PUBLISH.md is absent and app has no `app_deployments` row (library/package), skip this gate.
76
+
54
77
  ## Resolution Order
55
78
 
56
79
  1. Current repo if `<repo>` is `.` or omitted and the user clearly refers to the current workspace.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: rdc:review
3
- description: "Usage `rdc:review [--unattended]` — Post-build quality gate: tsc, tests, stale docs, export conflicts across modified packages. Fixes what it can automatically, escalates the rest. Call after rdc:build and before merging to main."
3
+ description: "Usage `rdc:review [--unattended]` — Post-build quality gate: tsc, tests, stale docs, export conflicts, and a mandatory pr-review-toolkit:code-reviewer pass across modified packages. Fixes what it can automatically, escalates the rest. Call after rdc:build and before merging to main."
4
4
  ---
5
5
 
6
6
  > **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
@@ -80,6 +80,32 @@ description: "Usage `rdc:review [--unattended]` — Post-build quality gate: tsc
80
80
  - Never silently leave orphaned tasks
81
81
  - **⛔ Raw `UPDATE work_items SET parent_id = ...` is forbidden** — bypasses RLS and all constraint checks
82
82
 
83
+ 8b. **Mandatory code-review gate — dispatch pr-review-toolkit:code-reviewer:**
84
+
85
+ ⛔ **No CLEAN verdict without a code-review pass.** This is the second half of the quality gate; tsc/vitest catch type and behavior errors, code-reviewer catches logic, security, and convention drift.
86
+
87
+ Dispatch ONE `pr-review-toolkit:code-reviewer` agent on the full diff under review:
88
+
89
+ ```
90
+ Agent({
91
+ subagent_type: "pr-review-toolkit:code-reviewer",
92
+ description: "rdc:review code-review pass",
93
+ prompt: "Review `git diff origin/main...HEAD` on the development branch.
94
+ Focus on: bugs, logic errors, security vulnerabilities, project-convention
95
+ adherence (.claude/rules/*, CLAUDE.md, engineering-behavior.md).
96
+ Confidence-based filtering — high-confidence findings only.
97
+ Return CODE_REVIEW_COMPLETE with: { critical_count, high_count, medium_count,
98
+ low_count, findings: [{severity, file:line, issue, suggested_fix}] }."
99
+ })
100
+ ```
101
+
102
+ **Severity gate:**
103
+ - `critical` or `high` → verdict cannot be CLEAN. Interactive: report and pause. Unattended: auto-fix if mechanical (rename, missing await, obvious null check), otherwise escalate via advisor and mark HAS_ISSUES.
104
+ - `medium` or `low` → record in the review report's "Issues" section; verdict can still be CLEAN.
105
+ - Zero findings → log `CODE_REVIEW: CLEAN` and continue.
106
+
107
+ Under `RDC_TEST=1`: echo `[RDC_TEST] skipping code-review dispatch` and continue.
108
+
83
109
  9. **Verification gate — dispatch the verify agent:**
84
110
  After any fixes land, run the verify gate on every touched package. See `guides/agents/verify.md`.
85
111
  Apply `guides/engineering-behavior.md` while reviewing: flag unnecessary abstraction, drive-by refactors, missing assumptions, hidden uncertainty, out-of-scope edits, and prose-only verification.