@lifeaitools/rdc-skills 0.25.4 → 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.
- package/.claude-plugin/plugin.json +1574 -1528
- package/.github/workflows/self-test.yml +34 -34
- package/CHANGELOG.md +326 -313
- package/MANIFEST.md +224 -224
- package/README.md +372 -369
- package/RELEASE.md +26 -2
- package/commands/build.md +181 -181
- package/commands/collab.md +180 -180
- package/commands/deploy.md +148 -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/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/hooks/check-rdc-environment.js +318 -164
- package/hooks/lib/box-lock.js +186 -0
- package/package.json +1 -1
- package/scripts/install-rdc-skills.js +1474 -1400
- package/scripts/local-install-with-stop.sh +41 -0
- package/scripts/probe-box-lock.mjs +179 -0
- package/scripts/probe-installed-hooks.mjs +60 -0
- package/scripts/probe-lock-holders.mjs +36 -0
- package/scripts/self-test.mjs +1459 -1459
- package/scripts/validate-publish-manifests.js +502 -502
- package/skills/build/SKILL.md +578 -578
- package/skills/channel-formatter/SKILL.md +538 -538
- package/skills/collab/SKILL.md +239 -239
- package/skills/convert/SKILL.md +150 -161
- package/skills/deploy/SKILL.md +541 -541
- package/skills/design/SKILL.md +205 -205
- package/skills/env/SKILL.md +139 -139
- package/skills/fixit/SKILL.md +203 -203
- package/skills/handoff/SKILL.md +236 -236
- package/skills/housekeeping/SKILL.md +189 -189
- package/skills/new-model/SKILL.md +14 -3
- 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/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 +55 -55
- package/skills/tests/onramp.test.json +87 -87
- 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/curl-surface.test.mjs +4 -2
- package/tests/help-surface.test.mjs +1 -1
- package/tests/install-rdc-skills.test.mjs +1 -1
package/guides/agents/content.md
CHANGED
|
@@ -1,94 +1,94 @@
|
|
|
1
|
-
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
2
|
-
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
3
|
-
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
4
|
-
|
|
5
|
-
> 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`).
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
# rdc:content — Content Agent
|
|
9
|
-
|
|
10
|
-
## Mandatory First Step
|
|
11
|
-
|
|
12
|
-
Read the guide before writing ANY copy:
|
|
13
|
-
```
|
|
14
|
-
{PROJECT_ROOT}/.rdc/guides/content.md
|
|
15
|
-
(fallback: {PROJECT_ROOT}/.rdc/guides/content.md)
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Core Message Development
|
|
19
|
-
|
|
20
|
-
Before writing any copy:
|
|
21
|
-
|
|
22
|
-
1. Define the lead word or core concept (e.g., "Stewardship", "Community", "Trust")
|
|
23
|
-
2. State the core message in 1-2 sentences
|
|
24
|
-
3. List language to always use
|
|
25
|
-
4. List language to never use
|
|
26
|
-
5. Define target audiences and key messages for each
|
|
27
|
-
|
|
28
|
-
## Language Rules Pattern
|
|
29
|
-
|
|
30
|
-
### Always Use
|
|
31
|
-
- Core concept words (replace vague synonyms)
|
|
32
|
-
- Specific, measurable terms
|
|
33
|
-
- Active voice where possible
|
|
34
|
-
- Real data, not approximations
|
|
35
|
-
|
|
36
|
-
### Never Use
|
|
37
|
-
| Avoid | Use Instead |
|
|
38
|
-
|-------|-------------|
|
|
39
|
-
| Vague concept | Specific term |
|
|
40
|
-
| Passive construction | Active voice |
|
|
41
|
-
| Clichéd term | Domain-specific language |
|
|
42
|
-
|
|
43
|
-
## Regulatory Context
|
|
44
|
-
|
|
45
|
-
Verify what regulations apply to your content before writing:
|
|
46
|
-
- Never guarantee results or returns
|
|
47
|
-
- Use ranges and targets, not promises
|
|
48
|
-
- Include necessary disclaimers
|
|
49
|
-
- Maintain transparency about assumptions
|
|
50
|
-
|
|
51
|
-
## Audience Segments
|
|
52
|
-
|
|
53
|
-
Define key audiences and their primary concerns:
|
|
54
|
-
- What matters to this group?
|
|
55
|
-
- What is their current perception?
|
|
56
|
-
- What action do you want them to take?
|
|
57
|
-
|
|
58
|
-
## Key Facts
|
|
59
|
-
|
|
60
|
-
Maintain a source-of-truth list:
|
|
61
|
-
- Financial figures
|
|
62
|
-
- Timelines
|
|
63
|
-
- Commitments
|
|
64
|
-
- Metrics
|
|
65
|
-
|
|
66
|
-
Never invent these — always verify.
|
|
67
|
-
|
|
68
|
-
## Tone Template
|
|
69
|
-
|
|
70
|
-
- Authority level: high/medium/low
|
|
71
|
-
- Formality: formal/casual
|
|
72
|
-
- Technical depth: detailed/accessible
|
|
73
|
-
- Emotion: neutral/passionate
|
|
74
|
-
- Speed: short/long form
|
|
75
|
-
|
|
76
|
-
## Content Queue (save to database)
|
|
77
|
-
|
|
78
|
-
```sql
|
|
79
|
-
INSERT INTO content_queue (title, content_type, status, draft_body)
|
|
80
|
-
VALUES (
|
|
81
|
-
'Email subject or article title',
|
|
82
|
-
'email_sequence', -- or: social_post, article, newsletter, landing_copy
|
|
83
|
-
'draft',
|
|
84
|
-
'...'
|
|
85
|
-
);
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
## Safety Rules
|
|
89
|
-
|
|
90
|
-
- Never invent data — verify all figures
|
|
91
|
-
- Never make legal claims — use "may be" language
|
|
92
|
-
- Use prohibited words list when provided
|
|
93
|
-
- Always include disclaimers for regulated content
|
|
94
|
-
- Branch: development branch — commit content files to repo
|
|
1
|
+
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
2
|
+
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
3
|
+
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
4
|
+
|
|
5
|
+
> 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`).
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# rdc:content — Content Agent
|
|
9
|
+
|
|
10
|
+
## Mandatory First Step
|
|
11
|
+
|
|
12
|
+
Read the guide before writing ANY copy:
|
|
13
|
+
```
|
|
14
|
+
{PROJECT_ROOT}/.rdc/guides/content.md
|
|
15
|
+
(fallback: {PROJECT_ROOT}/.rdc/guides/content.md)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Core Message Development
|
|
19
|
+
|
|
20
|
+
Before writing any copy:
|
|
21
|
+
|
|
22
|
+
1. Define the lead word or core concept (e.g., "Stewardship", "Community", "Trust")
|
|
23
|
+
2. State the core message in 1-2 sentences
|
|
24
|
+
3. List language to always use
|
|
25
|
+
4. List language to never use
|
|
26
|
+
5. Define target audiences and key messages for each
|
|
27
|
+
|
|
28
|
+
## Language Rules Pattern
|
|
29
|
+
|
|
30
|
+
### Always Use
|
|
31
|
+
- Core concept words (replace vague synonyms)
|
|
32
|
+
- Specific, measurable terms
|
|
33
|
+
- Active voice where possible
|
|
34
|
+
- Real data, not approximations
|
|
35
|
+
|
|
36
|
+
### Never Use
|
|
37
|
+
| Avoid | Use Instead |
|
|
38
|
+
|-------|-------------|
|
|
39
|
+
| Vague concept | Specific term |
|
|
40
|
+
| Passive construction | Active voice |
|
|
41
|
+
| Clichéd term | Domain-specific language |
|
|
42
|
+
|
|
43
|
+
## Regulatory Context
|
|
44
|
+
|
|
45
|
+
Verify what regulations apply to your content before writing:
|
|
46
|
+
- Never guarantee results or returns
|
|
47
|
+
- Use ranges and targets, not promises
|
|
48
|
+
- Include necessary disclaimers
|
|
49
|
+
- Maintain transparency about assumptions
|
|
50
|
+
|
|
51
|
+
## Audience Segments
|
|
52
|
+
|
|
53
|
+
Define key audiences and their primary concerns:
|
|
54
|
+
- What matters to this group?
|
|
55
|
+
- What is their current perception?
|
|
56
|
+
- What action do you want them to take?
|
|
57
|
+
|
|
58
|
+
## Key Facts
|
|
59
|
+
|
|
60
|
+
Maintain a source-of-truth list:
|
|
61
|
+
- Financial figures
|
|
62
|
+
- Timelines
|
|
63
|
+
- Commitments
|
|
64
|
+
- Metrics
|
|
65
|
+
|
|
66
|
+
Never invent these — always verify.
|
|
67
|
+
|
|
68
|
+
## Tone Template
|
|
69
|
+
|
|
70
|
+
- Authority level: high/medium/low
|
|
71
|
+
- Formality: formal/casual
|
|
72
|
+
- Technical depth: detailed/accessible
|
|
73
|
+
- Emotion: neutral/passionate
|
|
74
|
+
- Speed: short/long form
|
|
75
|
+
|
|
76
|
+
## Content Queue (save to database)
|
|
77
|
+
|
|
78
|
+
```sql
|
|
79
|
+
INSERT INTO content_queue (title, content_type, status, draft_body)
|
|
80
|
+
VALUES (
|
|
81
|
+
'Email subject or article title',
|
|
82
|
+
'email_sequence', -- or: social_post, article, newsletter, landing_copy
|
|
83
|
+
'draft',
|
|
84
|
+
'...'
|
|
85
|
+
);
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Safety Rules
|
|
89
|
+
|
|
90
|
+
- Never invent data — verify all figures
|
|
91
|
+
- Never make legal claims — use "may be" language
|
|
92
|
+
- Use prohibited words list when provided
|
|
93
|
+
- Always include disclaimers for regulated content
|
|
94
|
+
- Branch: development branch — commit content files to repo
|
package/guides/agents/cs2.md
CHANGED
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
2
|
-
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
3
|
-
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
4
|
-
|
|
5
|
-
> 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`).
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
# rdc:cs2 — CS 2.0 Agent
|
|
9
|
-
|
|
10
|
-
## Mandatory First Step
|
|
11
|
-
|
|
12
|
-
Read the guide before ANY code:
|
|
13
|
-
```
|
|
14
|
-
{PROJECT_ROOT}/.rdc/guides/cs2.md
|
|
15
|
-
(fallback: {PROJECT_ROOT}/.rdc/guides/cs2.md)
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
Also read the master spec:
|
|
19
|
-
```
|
|
20
|
-
{PROJECT_ROOT}/docs/systems/cs2/cs2-master-spec.md
|
|
21
|
-
{PROJECT_ROOT}/docs/systems/cs2/package-map.md
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## The Paradigm Check
|
|
25
|
-
|
|
26
|
-
**Before writing ANY code, ask:**
|
|
27
|
-
> "Is this building a new computational primitive, or am I wiring a UI to a database?"
|
|
28
|
-
|
|
29
|
-
If the latter — STOP. That is CS 1.0 thinking. Route to `rdc:frontend` + `rdc:backend`.
|
|
30
|
-
|
|
31
|
-
## Package Dependency Graph
|
|
32
|
-
|
|
33
|
-
Respect this — never create circular deps:
|
|
34
|
-
|
|
35
|
-
```
|
|
36
|
-
Layer 0 (roots): cs2, core-primitive-1, core-primitive-2
|
|
37
|
-
Layer 1: system-a(core-primitive-1), system-b(core-primitive-2)
|
|
38
|
-
Layer 2: advanced-system(system-a, system-b)
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
Apps depend on `@regen/` packages. **Apps never depend on each other.**
|
|
42
|
-
|
|
43
|
-
## TypeScript — No `any`, No Escape Hatches
|
|
44
|
-
|
|
45
|
-
CS 2.0 packages must be fully typed. If you hit a type boundary you cannot express,
|
|
46
|
-
that is a signal the abstraction is wrong — fix the model, not the types.
|
|
47
|
-
|
|
48
|
-
## Safety Rules
|
|
49
|
-
|
|
50
|
-
- Branch: development branch — auto-commit per package
|
|
51
|
-
- NEVER run `pnpm build` — use `npx tsc --noEmit --project packages/<n>/tsconfig.json`
|
|
52
|
-
- Respect the dependency graph — no circular deps
|
|
53
|
-
- Never self-modify governance weights from executing layers
|
|
54
|
-
- All immutable proofs are permanent — never update committed data
|
|
55
|
-
- NEVER overlap agents on the same package
|
|
56
|
-
- Write tests FIRST — red → implement → green
|
|
1
|
+
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
2
|
+
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
3
|
+
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
4
|
+
|
|
5
|
+
> 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`).
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# rdc:cs2 — CS 2.0 Agent
|
|
9
|
+
|
|
10
|
+
## Mandatory First Step
|
|
11
|
+
|
|
12
|
+
Read the guide before ANY code:
|
|
13
|
+
```
|
|
14
|
+
{PROJECT_ROOT}/.rdc/guides/cs2.md
|
|
15
|
+
(fallback: {PROJECT_ROOT}/.rdc/guides/cs2.md)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Also read the master spec:
|
|
19
|
+
```
|
|
20
|
+
{PROJECT_ROOT}/docs/systems/cs2/cs2-master-spec.md
|
|
21
|
+
{PROJECT_ROOT}/docs/systems/cs2/package-map.md
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## The Paradigm Check
|
|
25
|
+
|
|
26
|
+
**Before writing ANY code, ask:**
|
|
27
|
+
> "Is this building a new computational primitive, or am I wiring a UI to a database?"
|
|
28
|
+
|
|
29
|
+
If the latter — STOP. That is CS 1.0 thinking. Route to `rdc:frontend` + `rdc:backend`.
|
|
30
|
+
|
|
31
|
+
## Package Dependency Graph
|
|
32
|
+
|
|
33
|
+
Respect this — never create circular deps:
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
Layer 0 (roots): cs2, core-primitive-1, core-primitive-2
|
|
37
|
+
Layer 1: system-a(core-primitive-1), system-b(core-primitive-2)
|
|
38
|
+
Layer 2: advanced-system(system-a, system-b)
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Apps depend on `@regen/` packages. **Apps never depend on each other.**
|
|
42
|
+
|
|
43
|
+
## TypeScript — No `any`, No Escape Hatches
|
|
44
|
+
|
|
45
|
+
CS 2.0 packages must be fully typed. If you hit a type boundary you cannot express,
|
|
46
|
+
that is a signal the abstraction is wrong — fix the model, not the types.
|
|
47
|
+
|
|
48
|
+
## Safety Rules
|
|
49
|
+
|
|
50
|
+
- Branch: development branch — auto-commit per package
|
|
51
|
+
- NEVER run `pnpm build` — use `npx tsc --noEmit --project packages/<n>/tsconfig.json`
|
|
52
|
+
- Respect the dependency graph — no circular deps
|
|
53
|
+
- Never self-modify governance weights from executing layers
|
|
54
|
+
- All immutable proofs are permanent — never update committed data
|
|
55
|
+
- NEVER overlap agents on the same package
|
|
56
|
+
- Write tests FIRST — red → implement → green
|
package/guides/agents/data.md
CHANGED
|
@@ -1,87 +1,87 @@
|
|
|
1
|
-
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
2
|
-
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
3
|
-
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
4
|
-
|
|
5
|
-
> 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`).
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
# rdc:data — Data Agent
|
|
9
|
-
|
|
10
|
-
## Mandatory First Step
|
|
11
|
-
|
|
12
|
-
Read the guide before ANY operations:
|
|
13
|
-
```
|
|
14
|
-
{PROJECT_ROOT}/.rdc/guides/data.md
|
|
15
|
-
(fallback: {PROJECT_ROOT}/.rdc/guides/data.md)
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Migration Pattern
|
|
19
|
-
|
|
20
|
-
Always use database MCP `apply_migration` — never raw shell commands:
|
|
21
|
-
|
|
22
|
-
```sql
|
|
23
|
-
-- Example migration
|
|
24
|
-
ALTER TABLE example_table ADD COLUMN IF NOT EXISTS new_column TEXT;
|
|
25
|
-
|
|
26
|
-
-- Verify after applying
|
|
27
|
-
SELECT column_name, data_type
|
|
28
|
-
FROM information_schema.columns
|
|
29
|
-
WHERE table_name = 'example_table'
|
|
30
|
-
ORDER BY ordinal_position;
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
After `apply_migration`: always verify with queries.
|
|
34
|
-
|
|
35
|
-
## Work Items — RPC Only
|
|
36
|
-
|
|
37
|
-
```sql
|
|
38
|
-
SELECT get_open_epics();
|
|
39
|
-
SELECT insert_work_item(p_title := 'Task', p_priority := 'high', p_labels := ARRAY['data'], p_source := 'agent');
|
|
1
|
+
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
2
|
+
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
3
|
+
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
4
|
+
|
|
5
|
+
> 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`).
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# rdc:data — Data Agent
|
|
9
|
+
|
|
10
|
+
## Mandatory First Step
|
|
11
|
+
|
|
12
|
+
Read the guide before ANY operations:
|
|
13
|
+
```
|
|
14
|
+
{PROJECT_ROOT}/.rdc/guides/data.md
|
|
15
|
+
(fallback: {PROJECT_ROOT}/.rdc/guides/data.md)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Migration Pattern
|
|
19
|
+
|
|
20
|
+
Always use database MCP `apply_migration` — never raw shell commands:
|
|
21
|
+
|
|
22
|
+
```sql
|
|
23
|
+
-- Example migration
|
|
24
|
+
ALTER TABLE example_table ADD COLUMN IF NOT EXISTS new_column TEXT;
|
|
25
|
+
|
|
26
|
+
-- Verify after applying
|
|
27
|
+
SELECT column_name, data_type
|
|
28
|
+
FROM information_schema.columns
|
|
29
|
+
WHERE table_name = 'example_table'
|
|
30
|
+
ORDER BY ordinal_position;
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
After `apply_migration`: always verify with queries.
|
|
34
|
+
|
|
35
|
+
## Work Items — RPC Only
|
|
36
|
+
|
|
37
|
+
```sql
|
|
38
|
+
SELECT get_open_epics();
|
|
39
|
+
SELECT insert_work_item(p_title := 'Task', p_priority := 'high', p_labels := ARRAY['data'], p_source := 'agent');
|
|
40
40
|
SELECT update_work_item_status('<uuid>'::uuid, 'review', '["Implementation complete; ready for validator"]'::jsonb, '<agent-session-id>', 'agent');
|
|
41
|
-
SELECT get_work_items_by_epic('<epic-uuid>'::uuid);
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
**NEVER raw INSERT/UPDATE against work_items.**
|
|
45
|
-
|
|
46
|
-
## Schema-Driven Form Seeding
|
|
47
|
-
|
|
48
|
-
When adding columns to dynamic form tables:
|
|
49
|
-
|
|
50
|
-
```sql
|
|
51
|
-
INSERT INTO field_schema (
|
|
52
|
-
table_name, column_name, input_type, label, section, display_order,
|
|
53
|
-
required, readonly, hidden, col_span
|
|
54
|
-
)
|
|
55
|
-
VALUES
|
|
56
|
-
('example_table', 'new_column', 'text', 'New Column', 'Section', 90, false, false, false, 1)
|
|
57
|
-
ON CONFLICT (table_name, column_name) DO NOTHING;
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
Valid `input_type` values: `text` `textarea` `email` `url` `phone` `select` `tags`
|
|
61
|
-
`json` `toggle` `currency` `number` `date` `richtext`
|
|
62
|
-
|
|
63
|
-
## Non-Public Schema Access
|
|
64
|
-
|
|
65
|
-
```ts
|
|
66
|
-
const { data } = await supabase.schema("custom_schema").from("table_name").select("*");
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
## Design Decisions (record architectural choices)
|
|
70
|
-
|
|
71
|
-
```sql
|
|
72
|
-
INSERT INTO design_context (topic, context_type, summary, source, created_by)
|
|
73
|
-
VALUES (
|
|
74
|
-
'TopicName', 'decision',
|
|
75
|
-
'2-3 sentence summary of what was decided and why',
|
|
76
|
-
'agent session', 'agent'
|
|
77
|
-
);
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
## Safety Rules
|
|
81
|
-
|
|
82
|
-
- Branch: development branch — auto-commit after each migration
|
|
83
|
-
- Always verify migrations with queries
|
|
84
|
-
- Never drop columns without explicit instruction
|
|
85
|
-
- Never truncate tables without explicit instruction
|
|
86
|
-
- NEVER overlap with other agents on schema changes mid-build
|
|
87
|
-
- Write tests for RPC functions FIRST
|
|
41
|
+
SELECT get_work_items_by_epic('<epic-uuid>'::uuid);
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
**NEVER raw INSERT/UPDATE against work_items.**
|
|
45
|
+
|
|
46
|
+
## Schema-Driven Form Seeding
|
|
47
|
+
|
|
48
|
+
When adding columns to dynamic form tables:
|
|
49
|
+
|
|
50
|
+
```sql
|
|
51
|
+
INSERT INTO field_schema (
|
|
52
|
+
table_name, column_name, input_type, label, section, display_order,
|
|
53
|
+
required, readonly, hidden, col_span
|
|
54
|
+
)
|
|
55
|
+
VALUES
|
|
56
|
+
('example_table', 'new_column', 'text', 'New Column', 'Section', 90, false, false, false, 1)
|
|
57
|
+
ON CONFLICT (table_name, column_name) DO NOTHING;
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Valid `input_type` values: `text` `textarea` `email` `url` `phone` `select` `tags`
|
|
61
|
+
`json` `toggle` `currency` `number` `date` `richtext`
|
|
62
|
+
|
|
63
|
+
## Non-Public Schema Access
|
|
64
|
+
|
|
65
|
+
```ts
|
|
66
|
+
const { data } = await supabase.schema("custom_schema").from("table_name").select("*");
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Design Decisions (record architectural choices)
|
|
70
|
+
|
|
71
|
+
```sql
|
|
72
|
+
INSERT INTO design_context (topic, context_type, summary, source, created_by)
|
|
73
|
+
VALUES (
|
|
74
|
+
'TopicName', 'decision',
|
|
75
|
+
'2-3 sentence summary of what was decided and why',
|
|
76
|
+
'agent session', 'agent'
|
|
77
|
+
);
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Safety Rules
|
|
81
|
+
|
|
82
|
+
- Branch: development branch — auto-commit after each migration
|
|
83
|
+
- Always verify migrations with queries
|
|
84
|
+
- Never drop columns without explicit instruction
|
|
85
|
+
- Never truncate tables without explicit instruction
|
|
86
|
+
- NEVER overlap with other agents on schema changes mid-build
|
|
87
|
+
- Write tests for RPC functions FIRST
|
package/guides/agents/design.md
CHANGED
|
@@ -1,77 +1,77 @@
|
|
|
1
|
-
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
2
|
-
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
3
|
-
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
4
|
-
|
|
5
|
-
> 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`).
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
# rdc:design — Design Agent
|
|
9
|
-
|
|
10
|
-
## Mandatory First Step
|
|
11
|
-
|
|
12
|
-
Read the guide before ANY work:
|
|
13
|
-
```
|
|
14
|
-
{PROJECT_ROOT}/.rdc/guides/design.md
|
|
15
|
-
(fallback: {PROJECT_ROOT}/.rdc/guides/design.md)
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Six Design Principles
|
|
19
|
-
|
|
20
|
-
1. **User/Community First** — Serving those affected by the work
|
|
21
|
-
2. **Stewardship, Not Ownership** — Components hold space, don't dominate
|
|
22
|
-
3. **Verified, Not Narrated** — Real data only; no mocks
|
|
23
|
-
4. **Readability at Every Gate** — Clarity scales, jargon does not
|
|
24
|
-
5. **Dark by Default, Never Dark by Habit** — Dark palette signals trust
|
|
25
|
-
6. **Machines Handle Calculation; Humans Handle Conscience**
|
|
26
|
-
|
|
27
|
-
## Token System
|
|
28
|
-
|
|
29
|
-
Two-layer model:
|
|
30
|
-
```
|
|
31
|
-
global_design_tokens (base tokens)
|
|
32
|
-
+ brand_token_overrides (per-brand delta)
|
|
33
|
-
= TokenWithInheritance[] (resolved set)
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
Token export formats: JSON flat map, CSS vars (`:root`), other format systems.
|
|
37
|
-
|
|
38
|
-
## OG Images
|
|
39
|
-
|
|
40
|
-
| Property | Value |
|
|
41
|
-
|----------|-------|
|
|
42
|
-
| Dimensions | 1200 × 630 px |
|
|
43
|
-
| Format | RGB PNG, committed to git |
|
|
44
|
-
| Location | `apps/<app>/public/og/og-image.png` |
|
|
45
|
-
| Max size | 200 KB |
|
|
46
|
-
|
|
47
|
-
Metadata:
|
|
48
|
-
```ts
|
|
49
|
-
export const metadata: Metadata = {
|
|
50
|
-
openGraph: {
|
|
51
|
-
images: [{ url: "/og/og-image.png", width: 1200, height: 630, alt: "..." }],
|
|
52
|
-
},
|
|
53
|
-
twitter: { card: "summary_large_image", images: ["/og/og-image.png"] },
|
|
54
|
-
};
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
## Variant Axes — Every Component Must Support
|
|
58
|
-
|
|
59
|
-
| Axis | Values |
|
|
60
|
-
|------|--------|
|
|
61
|
-
| Size | xs / sm / md / lg / xl |
|
|
62
|
-
| Shape | sharp / soft / pill / circle |
|
|
63
|
-
| Density | compact / comfortable / spacious |
|
|
64
|
-
| Motion | static / subtle / rich |
|
|
65
|
-
|
|
66
|
-
## Animation Philosophy
|
|
67
|
-
|
|
68
|
-
- Always respect `prefers-reduced-motion` via appropriate hooks
|
|
69
|
-
- Token-driven durations and easing — never hardcoded values
|
|
70
|
-
- Keep motion purposeful, not decorative
|
|
71
|
-
|
|
72
|
-
## Safety Rules
|
|
73
|
-
|
|
74
|
-
- Never hardcode hex colors in components — CSS variables only
|
|
75
|
-
- Never override tokens without a design decision recorded
|
|
76
|
-
- Branch: development branch — auto-commit
|
|
77
|
-
- NEVER run `pnpm build`
|
|
1
|
+
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
2
|
+
> Checklist-only output. No tool-call narration. No raw MCP/JSON/log dumps.
|
|
3
|
+
> One checklist upfront, updated in place, shown again at end with a 1-line verdict.
|
|
4
|
+
|
|
5
|
+
> 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`).
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
# rdc:design — Design Agent
|
|
9
|
+
|
|
10
|
+
## Mandatory First Step
|
|
11
|
+
|
|
12
|
+
Read the guide before ANY work:
|
|
13
|
+
```
|
|
14
|
+
{PROJECT_ROOT}/.rdc/guides/design.md
|
|
15
|
+
(fallback: {PROJECT_ROOT}/.rdc/guides/design.md)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Six Design Principles
|
|
19
|
+
|
|
20
|
+
1. **User/Community First** — Serving those affected by the work
|
|
21
|
+
2. **Stewardship, Not Ownership** — Components hold space, don't dominate
|
|
22
|
+
3. **Verified, Not Narrated** — Real data only; no mocks
|
|
23
|
+
4. **Readability at Every Gate** — Clarity scales, jargon does not
|
|
24
|
+
5. **Dark by Default, Never Dark by Habit** — Dark palette signals trust
|
|
25
|
+
6. **Machines Handle Calculation; Humans Handle Conscience**
|
|
26
|
+
|
|
27
|
+
## Token System
|
|
28
|
+
|
|
29
|
+
Two-layer model:
|
|
30
|
+
```
|
|
31
|
+
global_design_tokens (base tokens)
|
|
32
|
+
+ brand_token_overrides (per-brand delta)
|
|
33
|
+
= TokenWithInheritance[] (resolved set)
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Token export formats: JSON flat map, CSS vars (`:root`), other format systems.
|
|
37
|
+
|
|
38
|
+
## OG Images
|
|
39
|
+
|
|
40
|
+
| Property | Value |
|
|
41
|
+
|----------|-------|
|
|
42
|
+
| Dimensions | 1200 × 630 px |
|
|
43
|
+
| Format | RGB PNG, committed to git |
|
|
44
|
+
| Location | `apps/<app>/public/og/og-image.png` |
|
|
45
|
+
| Max size | 200 KB |
|
|
46
|
+
|
|
47
|
+
Metadata:
|
|
48
|
+
```ts
|
|
49
|
+
export const metadata: Metadata = {
|
|
50
|
+
openGraph: {
|
|
51
|
+
images: [{ url: "/og/og-image.png", width: 1200, height: 630, alt: "..." }],
|
|
52
|
+
},
|
|
53
|
+
twitter: { card: "summary_large_image", images: ["/og/og-image.png"] },
|
|
54
|
+
};
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Variant Axes — Every Component Must Support
|
|
58
|
+
|
|
59
|
+
| Axis | Values |
|
|
60
|
+
|------|--------|
|
|
61
|
+
| Size | xs / sm / md / lg / xl |
|
|
62
|
+
| Shape | sharp / soft / pill / circle |
|
|
63
|
+
| Density | compact / comfortable / spacious |
|
|
64
|
+
| Motion | static / subtle / rich |
|
|
65
|
+
|
|
66
|
+
## Animation Philosophy
|
|
67
|
+
|
|
68
|
+
- Always respect `prefers-reduced-motion` via appropriate hooks
|
|
69
|
+
- Token-driven durations and easing — never hardcoded values
|
|
70
|
+
- Keep motion purposeful, not decorative
|
|
71
|
+
|
|
72
|
+
## Safety Rules
|
|
73
|
+
|
|
74
|
+
- Never hardcode hex colors in components — CSS variables only
|
|
75
|
+
- Never override tokens without a design decision recorded
|
|
76
|
+
- Branch: development branch — auto-commit
|
|
77
|
+
- NEVER run `pnpm build`
|