@lifeaitools/rdc-skills 0.25.9 → 0.26.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/plugin.json +1608 -1551
- package/.github/workflows/self-test.yml +34 -34
- package/CHANGELOG.md +332 -319
- package/MANIFEST.md +224 -224
- package/README.md +368 -367
- package/RELEASE.md +50 -45
- package/bin/rdc-skills-mcp.mjs +1 -1
- package/commands/build.md +181 -181
- package/commands/collab.md +180 -180
- package/commands/deploy.md +173 -148
- package/commands/fixit.md +150 -150
- package/commands/handoff.md +173 -173
- package/commands/overnight.md +220 -220
- package/commands/plan.md +158 -158
- package/commands/preplan.md +131 -131
- package/commands/prototype.md +145 -145
- package/commands/report.md +99 -99
- package/commands/review.md +120 -120
- package/commands/status.md +86 -86
- package/commands/workitems.md +127 -127
- package/deploy/install-systemd.sh +16 -0
- package/deploy/systemd/rdc-skills-mcp.service +19 -0
- package/git-sha.json +1 -1
- package/guides/agent-bootstrap.md +195 -195
- package/guides/agents/backend.md +102 -102
- package/guides/agents/content.md +94 -94
- package/guides/agents/cs2.md +56 -56
- package/guides/agents/data.md +86 -86
- package/guides/agents/design.md +77 -77
- package/guides/agents/frontend.md +91 -91
- package/guides/agents/infrastructure.md +81 -81
- package/guides/agents/setup.md +272 -272
- package/guides/agents/verify.md +119 -119
- package/guides/agents/viz.md +106 -106
- package/guides/orchestration-epic.md +17 -0
- package/hooks/check-rdc-environment.js +172 -318
- package/hooks/lib/box-lock.js +28 -8
- package/package.json +1 -2
- package/scripts/install-rdc-skills.js +1244 -1474
- package/scripts/probe-installed-hooks.mjs +2 -2
- package/scripts/self-test.mjs +1459 -1459
- package/scripts/validate-publish-manifests.js +502 -502
- package/skills/build/SKILL.md +662 -578
- package/skills/channel-formatter/SKILL.md +538 -538
- package/skills/collab/SKILL.md +239 -239
- package/skills/convert/SKILL.md +138 -138
- package/skills/deploy/SKILL.md +583 -541
- package/skills/design/SKILL.md +205 -205
- package/skills/env/SKILL.md +146 -139
- package/skills/fixit/SKILL.md +203 -203
- package/skills/handoff/SKILL.md +236 -236
- package/skills/housekeeping/SKILL.md +189 -189
- package/skills/onramp/SKILL.md +1459 -1459
- package/skills/overnight/SKILL.md +251 -251
- package/skills/plan/SKILL.md +345 -345
- package/skills/preplan/SKILL.md +90 -90
- package/skills/prototype/SKILL.md +150 -150
- package/skills/refactor/SKILL.md +51 -0
- package/skills/regen-media/SKILL.md +94 -94
- package/skills/release/SKILL.md +140 -140
- package/skills/report/SKILL.md +100 -100
- package/skills/review/SKILL.md +151 -151
- package/skills/self-test/SKILL.md +108 -108
- package/skills/status/SKILL.md +99 -99
- package/skills/tests/MATRIX.md +59 -55
- package/skills/tests/README.md +1 -1
- package/skills/tests/onramp.test.json +101 -87
- package/skills/tests/rdc-env.test.json +12 -0
- package/skills/tests/rdc-new-model.test.json +12 -0
- package/skills/tests/rdc-refactor.test.json +29 -0
- package/skills/tests/rdc-regen-media.test.json +29 -29
- package/skills/watch/SKILL.md +84 -84
- package/skills/workitems/SKILL.md +151 -151
- package/tests/no-local-pm2.test.mjs +45 -0
- package/scripts/local-install-with-stop.sh +0 -41
- package/scripts/probe-lock-holders.mjs +0 -36
- package/scripts/rebuild-mcp.mjs +0 -107
package/commands/handoff.md
CHANGED
|
@@ -1,173 +1,173 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: rdc:handoff
|
|
3
|
-
description: >-
|
|
4
|
-
Usage `rdc:handoff <topic>` — structured handoff from planning session to CLI agents. Produces plan doc in .rdc/plans/, work items in DB, prototype registry entry if applicable. Use when plan/prototype is finalized and ready for implementation.
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
8
|
-
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
9
|
-
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
10
|
-
|
|
11
|
-
> If dispatching subagents or running as a subagent: read `{PROJECT_ROOT}/.rdc/guides/agent-bootstrap.md` first (fallback: `{PROJECT_ROOT}/.rdc/guides/agent-bootstrap.md`).
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
# rdc:handoff — Planning → CLI Bridge
|
|
15
|
-
|
|
16
|
-
## When to Use
|
|
17
|
-
|
|
18
|
-
- A prototype has been built and needs production implementation
|
|
19
|
-
- A design decision has been made and needs to be executed
|
|
20
|
-
- Project lead says "hand this off", "give this to the CLI", "write it up"
|
|
21
|
-
- A plan exists in the conversation but hasn't been saved to disk or database yet
|
|
22
|
-
|
|
23
|
-
## What This Skill Produces
|
|
24
|
-
|
|
25
|
-
1. **Plan doc** → `.rdc/plans/<topic-slug>.md` (fallback: `.rdc/plans/<topic-slug>.md`)
|
|
26
|
-
2. **Database epic + child tasks** (with agent types and guide file refs)
|
|
27
|
-
3. **Prototype registry entry** (if a prototype was built)
|
|
28
|
-
4. **Design context entries** (for decisions made in the session)
|
|
29
|
-
|
|
30
|
-
## Procedure
|
|
31
|
-
|
|
32
|
-
### Step 1 — Extract the Plan
|
|
33
|
-
|
|
34
|
-
Identify from the conversation:
|
|
35
|
-
- What is the goal?
|
|
36
|
-
- What prototypes or designs were built? Where are they?
|
|
37
|
-
- What decisions were made? What was rejected and why?
|
|
38
|
-
- What is the sequencing (what depends on what)?
|
|
39
|
-
- Which agent types are needed?
|
|
40
|
-
|
|
41
|
-
### Step 2 — Write the Plan Doc
|
|
42
|
-
|
|
43
|
-
```
|
|
44
|
-
.rdc/plans/<topic-slug>.md
|
|
45
|
-
```
|
|
46
|
-
(fallback: `.rdc/plans/<topic-slug>.md` if `.rdc/` does not exist)
|
|
47
|
-
|
|
48
|
-
Template:
|
|
49
|
-
```markdown
|
|
50
|
-
# Plan: <Topic>
|
|
51
|
-
> Route: <app route or package>
|
|
52
|
-
> Status: Ready for CLI build
|
|
53
|
-
> Created: <date>
|
|
54
|
-
> Source: planning session
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
## What Already Exists (Do NOT Re-implement)
|
|
59
|
-
|
|
60
|
-
[List any existing components, database tables, or files
|
|
61
|
-
that agents must use rather than recreate]
|
|
62
|
-
|
|
63
|
-
## What Was Built in Planning (Prototype)
|
|
64
|
-
|
|
65
|
-
[Describe the prototype — file location, key design decisions,
|
|
66
|
-
what to preserve vs what to adapt]
|
|
67
|
-
|
|
68
|
-
## Work Packages
|
|
69
|
-
|
|
70
|
-
### Package 1 — <Name>
|
|
71
|
-
- Agent type: frontend | backend | data | design | infra | content | cs2 | viz
|
|
72
|
-
- Guide: .rdc/guides/<type>.md (fallback: .rdc/guides/<type>.md)
|
|
73
|
-
- Files to create/modify: [list]
|
|
74
|
-
- Deliverables: [specific outputs]
|
|
75
|
-
- Depends on: [other packages if sequential]
|
|
76
|
-
|
|
77
|
-
### Package 2 — <Name>
|
|
78
|
-
[...]
|
|
79
|
-
|
|
80
|
-
## Sequencing
|
|
81
|
-
|
|
82
|
-
Wave 1 (parallel): Package 1, Package 2
|
|
83
|
-
Wave 2 (after Wave 1): Package 3
|
|
84
|
-
|
|
85
|
-
## Definition of Done
|
|
86
|
-
|
|
87
|
-
- [ ] [specific acceptance criterion]
|
|
88
|
-
- [ ] [build verification: zero new TS errors]
|
|
89
|
-
- [ ] [functional test]
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
### Step 3 — Create Database Epic + Tasks
|
|
93
|
-
|
|
94
|
-
```sql
|
|
95
|
-
-- Check for existing epics first
|
|
96
|
-
SELECT get_open_epics();
|
|
97
|
-
|
|
98
|
-
-- Create epic
|
|
99
|
-
SELECT insert_work_item(
|
|
100
|
-
p_title := 'EPIC: <Topic>',
|
|
101
|
-
p_description := 'See .rdc/plans/<topic-slug>.md for full spec.',
|
|
102
|
-
p_item_type := 'epic',
|
|
103
|
-
p_priority := 'high',
|
|
104
|
-
p_labels := ARRAY['<system-label>'],
|
|
105
|
-
p_source := 'planning'
|
|
106
|
-
);
|
|
107
|
-
|
|
108
|
-
-- Create tasks (one per work package)
|
|
109
|
-
SELECT insert_work_item(
|
|
110
|
-
p_title := '<Package Name>',
|
|
111
|
-
p_description := 'What: <deliverable>
|
|
112
|
-
Where: <files>
|
|
113
|
-
Agent type: <type>
|
|
114
|
-
Guide: .rdc/guides/<type>.md (fallback: .rdc/guides/<type>.md)
|
|
115
|
-
Design doc: .rdc/plans/<topic-slug>.md (fallback: .rdc/plans/<topic-slug>.md)
|
|
116
|
-
Depends on: <other task if applicable>
|
|
117
|
-
Est: <hours>',
|
|
118
|
-
p_parent_id := '<epic-uuid>'::uuid,
|
|
119
|
-
p_item_type := 'task',
|
|
120
|
-
p_priority := 'high',
|
|
121
|
-
p_labels := ARRAY['<label>'],
|
|
122
|
-
p_estimated_hours := 2,
|
|
123
|
-
p_source := 'planning'
|
|
124
|
-
);
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
### Step 4 — Register Prototype (if one was built)
|
|
128
|
-
|
|
129
|
-
```sql
|
|
130
|
-
INSERT INTO prototype_registry (name, component, source_path, notes, created_by)
|
|
131
|
-
VALUES (
|
|
132
|
-
'<Component Name> v1',
|
|
133
|
-
'<ComponentName>',
|
|
134
|
-
'docs/source/<filename>.jsx',
|
|
135
|
-
'<Key design decisions, data shapes, what to preserve>',
|
|
136
|
-
'planning'
|
|
137
|
-
)
|
|
138
|
-
ON CONFLICT DO NOTHING;
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
### Step 5 — Record Design Decisions
|
|
142
|
-
|
|
143
|
-
```sql
|
|
144
|
-
INSERT INTO design_context (topic, context_type, summary, source, created_by)
|
|
145
|
-
VALUES
|
|
146
|
-
('<Topic>', 'decision', '<What was decided and why>', 'planning session', 'planning'),
|
|
147
|
-
('<Topic>', 'rejected', '<What was considered but not chosen, and why>', 'planning session', 'planning');
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
## System Labels Reference
|
|
151
|
-
|
|
152
|
-
| Label | When |
|
|
153
|
-
|-------|------|
|
|
154
|
-
| `project-a` | Your-app-specific label |
|
|
155
|
-
| `marketing` | Marketing / outreach work |
|
|
156
|
-
| `ui` | Component library work |
|
|
157
|
-
| `data` | Schema, migrations |
|
|
158
|
-
| `infrastructure` | CI/CD, deployment |
|
|
159
|
-
| `cs2` | Core paradigm packages |
|
|
160
|
-
| `website` | Public-facing sites |
|
|
161
|
-
| `media` | Media/asset work |
|
|
162
|
-
|
|
163
|
-
## Output
|
|
164
|
-
|
|
165
|
-
When complete, tell the project lead:
|
|
166
|
-
```
|
|
167
|
-
Handoff complete:
|
|
168
|
-
- Plan: .rdc/plans/<topic-slug>.md
|
|
169
|
-
- Epic: <epic-id> ("<title>")
|
|
170
|
-
- Tasks: <N> tasks created, wave structure: [Wave 1: X, Y | Wave 2: Z]
|
|
171
|
-
- Prototype: registered at docs/source/<file> (if applicable)
|
|
172
|
-
- CLI agents will pick this up on next run.
|
|
173
|
-
```
|
|
1
|
+
---
|
|
2
|
+
name: rdc:handoff
|
|
3
|
+
description: >-
|
|
4
|
+
Usage `rdc:handoff <topic>` — structured handoff from planning session to CLI agents. Produces plan doc in .rdc/plans/, work items in DB, prototype registry entry if applicable. Use when plan/prototype is finalized and ready for implementation.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
8
|
+
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
9
|
+
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
10
|
+
|
|
11
|
+
> If dispatching subagents or running as a subagent: read `{PROJECT_ROOT}/.rdc/guides/agent-bootstrap.md` first (fallback: `{PROJECT_ROOT}/.rdc/guides/agent-bootstrap.md`).
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# rdc:handoff — Planning → CLI Bridge
|
|
15
|
+
|
|
16
|
+
## When to Use
|
|
17
|
+
|
|
18
|
+
- A prototype has been built and needs production implementation
|
|
19
|
+
- A design decision has been made and needs to be executed
|
|
20
|
+
- Project lead says "hand this off", "give this to the CLI", "write it up"
|
|
21
|
+
- A plan exists in the conversation but hasn't been saved to disk or database yet
|
|
22
|
+
|
|
23
|
+
## What This Skill Produces
|
|
24
|
+
|
|
25
|
+
1. **Plan doc** → `.rdc/plans/<topic-slug>.md` (fallback: `.rdc/plans/<topic-slug>.md`)
|
|
26
|
+
2. **Database epic + child tasks** (with agent types and guide file refs)
|
|
27
|
+
3. **Prototype registry entry** (if a prototype was built)
|
|
28
|
+
4. **Design context entries** (for decisions made in the session)
|
|
29
|
+
|
|
30
|
+
## Procedure
|
|
31
|
+
|
|
32
|
+
### Step 1 — Extract the Plan
|
|
33
|
+
|
|
34
|
+
Identify from the conversation:
|
|
35
|
+
- What is the goal?
|
|
36
|
+
- What prototypes or designs were built? Where are they?
|
|
37
|
+
- What decisions were made? What was rejected and why?
|
|
38
|
+
- What is the sequencing (what depends on what)?
|
|
39
|
+
- Which agent types are needed?
|
|
40
|
+
|
|
41
|
+
### Step 2 — Write the Plan Doc
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
.rdc/plans/<topic-slug>.md
|
|
45
|
+
```
|
|
46
|
+
(fallback: `.rdc/plans/<topic-slug>.md` if `.rdc/` does not exist)
|
|
47
|
+
|
|
48
|
+
Template:
|
|
49
|
+
```markdown
|
|
50
|
+
# Plan: <Topic>
|
|
51
|
+
> Route: <app route or package>
|
|
52
|
+
> Status: Ready for CLI build
|
|
53
|
+
> Created: <date>
|
|
54
|
+
> Source: planning session
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## What Already Exists (Do NOT Re-implement)
|
|
59
|
+
|
|
60
|
+
[List any existing components, database tables, or files
|
|
61
|
+
that agents must use rather than recreate]
|
|
62
|
+
|
|
63
|
+
## What Was Built in Planning (Prototype)
|
|
64
|
+
|
|
65
|
+
[Describe the prototype — file location, key design decisions,
|
|
66
|
+
what to preserve vs what to adapt]
|
|
67
|
+
|
|
68
|
+
## Work Packages
|
|
69
|
+
|
|
70
|
+
### Package 1 — <Name>
|
|
71
|
+
- Agent type: frontend | backend | data | design | infra | content | cs2 | viz
|
|
72
|
+
- Guide: .rdc/guides/<type>.md (fallback: .rdc/guides/<type>.md)
|
|
73
|
+
- Files to create/modify: [list]
|
|
74
|
+
- Deliverables: [specific outputs]
|
|
75
|
+
- Depends on: [other packages if sequential]
|
|
76
|
+
|
|
77
|
+
### Package 2 — <Name>
|
|
78
|
+
[...]
|
|
79
|
+
|
|
80
|
+
## Sequencing
|
|
81
|
+
|
|
82
|
+
Wave 1 (parallel): Package 1, Package 2
|
|
83
|
+
Wave 2 (after Wave 1): Package 3
|
|
84
|
+
|
|
85
|
+
## Definition of Done
|
|
86
|
+
|
|
87
|
+
- [ ] [specific acceptance criterion]
|
|
88
|
+
- [ ] [build verification: zero new TS errors]
|
|
89
|
+
- [ ] [functional test]
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Step 3 — Create Database Epic + Tasks
|
|
93
|
+
|
|
94
|
+
```sql
|
|
95
|
+
-- Check for existing epics first
|
|
96
|
+
SELECT get_open_epics();
|
|
97
|
+
|
|
98
|
+
-- Create epic
|
|
99
|
+
SELECT insert_work_item(
|
|
100
|
+
p_title := 'EPIC: <Topic>',
|
|
101
|
+
p_description := 'See .rdc/plans/<topic-slug>.md for full spec.',
|
|
102
|
+
p_item_type := 'epic',
|
|
103
|
+
p_priority := 'high',
|
|
104
|
+
p_labels := ARRAY['<system-label>'],
|
|
105
|
+
p_source := 'planning'
|
|
106
|
+
);
|
|
107
|
+
|
|
108
|
+
-- Create tasks (one per work package)
|
|
109
|
+
SELECT insert_work_item(
|
|
110
|
+
p_title := '<Package Name>',
|
|
111
|
+
p_description := 'What: <deliverable>
|
|
112
|
+
Where: <files>
|
|
113
|
+
Agent type: <type>
|
|
114
|
+
Guide: .rdc/guides/<type>.md (fallback: .rdc/guides/<type>.md)
|
|
115
|
+
Design doc: .rdc/plans/<topic-slug>.md (fallback: .rdc/plans/<topic-slug>.md)
|
|
116
|
+
Depends on: <other task if applicable>
|
|
117
|
+
Est: <hours>',
|
|
118
|
+
p_parent_id := '<epic-uuid>'::uuid,
|
|
119
|
+
p_item_type := 'task',
|
|
120
|
+
p_priority := 'high',
|
|
121
|
+
p_labels := ARRAY['<label>'],
|
|
122
|
+
p_estimated_hours := 2,
|
|
123
|
+
p_source := 'planning'
|
|
124
|
+
);
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Step 4 — Register Prototype (if one was built)
|
|
128
|
+
|
|
129
|
+
```sql
|
|
130
|
+
INSERT INTO prototype_registry (name, component, source_path, notes, created_by)
|
|
131
|
+
VALUES (
|
|
132
|
+
'<Component Name> v1',
|
|
133
|
+
'<ComponentName>',
|
|
134
|
+
'docs/source/<filename>.jsx',
|
|
135
|
+
'<Key design decisions, data shapes, what to preserve>',
|
|
136
|
+
'planning'
|
|
137
|
+
)
|
|
138
|
+
ON CONFLICT DO NOTHING;
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### Step 5 — Record Design Decisions
|
|
142
|
+
|
|
143
|
+
```sql
|
|
144
|
+
INSERT INTO design_context (topic, context_type, summary, source, created_by)
|
|
145
|
+
VALUES
|
|
146
|
+
('<Topic>', 'decision', '<What was decided and why>', 'planning session', 'planning'),
|
|
147
|
+
('<Topic>', 'rejected', '<What was considered but not chosen, and why>', 'planning session', 'planning');
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## System Labels Reference
|
|
151
|
+
|
|
152
|
+
| Label | When |
|
|
153
|
+
|-------|------|
|
|
154
|
+
| `project-a` | Your-app-specific label |
|
|
155
|
+
| `marketing` | Marketing / outreach work |
|
|
156
|
+
| `ui` | Component library work |
|
|
157
|
+
| `data` | Schema, migrations |
|
|
158
|
+
| `infrastructure` | CI/CD, deployment |
|
|
159
|
+
| `cs2` | Core paradigm packages |
|
|
160
|
+
| `website` | Public-facing sites |
|
|
161
|
+
| `media` | Media/asset work |
|
|
162
|
+
|
|
163
|
+
## Output
|
|
164
|
+
|
|
165
|
+
When complete, tell the project lead:
|
|
166
|
+
```
|
|
167
|
+
Handoff complete:
|
|
168
|
+
- Plan: .rdc/plans/<topic-slug>.md
|
|
169
|
+
- Epic: <epic-id> ("<title>")
|
|
170
|
+
- Tasks: <N> tasks created, wave structure: [Wave 1: X, Y | Wave 2: Z]
|
|
171
|
+
- Prototype: registered at docs/source/<file> (if applicable)
|
|
172
|
+
- CLI agents will pick this up on next run.
|
|
173
|
+
```
|