@lifeaitools/rdc-skills 0.25.0 → 0.25.1
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 +48 -6
- package/CHANGELOG.md +12 -0
- package/MANIFEST.md +4 -1
- package/README.md +4 -2
- package/commands/overnight.md +2 -2
- package/git-sha.json +1 -1
- package/package.json +1 -1
- package/scripts/install-rdc-skills.js +116 -4
- package/skills/build/SKILL.md +15 -0
- package/skills/env/SKILL.md +141 -0
- package/skills/fs-mcp/SKILL.md +37 -2
- package/skills/new-model/SKILL.md +49 -0
- package/skills/onramp/SKILL.md +1349 -138
- package/skills/overnight/SKILL.md +2 -2
- package/skills/regen-media/SKILL.md +94 -0
- package/skills/review/SKILL.md +8 -0
- package/skills/tests/MATRIX.md +2 -1
- package/skills/tests/rdc-regen-media.test.json +29 -0
|
@@ -93,7 +93,7 @@ Determine which epics to work:
|
|
|
93
93
|
- `status IN ('todo', 'in_progress')`
|
|
94
94
|
- Order: urgent first, then high, then by `created_at`
|
|
95
95
|
|
|
96
|
-
Log the epic queue at the start of `.rdc/
|
|
96
|
+
Log the epic queue at the start of `.rdc/overnights/overnight-<YYYY-MM-DD>.md` (fallback: `.rdc/overnights/overnight-<YYYY-MM-DD>.md` if `.rdc/` does not exist).
|
|
97
97
|
|
|
98
98
|
## Phase 3 — Epic Loop
|
|
99
99
|
|
|
@@ -172,7 +172,7 @@ After all epics are processed:
|
|
|
172
172
|
|
|
173
173
|
1. Run `rdc:report --unattended`
|
|
174
174
|
|
|
175
|
-
2. Write session summary to `.rdc/
|
|
175
|
+
2. Write session summary to `.rdc/overnights/overnight-<YYYY-MM-DD>.md` (fallback: `.rdc/overnights/overnight-<YYYY-MM-DD>.md`):
|
|
176
176
|
```markdown
|
|
177
177
|
# Overnight Session — YYYY-MM-DD
|
|
178
178
|
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rdc:regen-media
|
|
3
|
+
description: "Usage `rdc:regen-media <generate|edit|upscale|upload> <brief-or-path>` - Primary image-generation and Regen Media asset workflow. Use for image generation, image editing/upscaling, GPT Image/gpt-image-2 requests, Codex built-in image_gen, and uploading finished images to regen-media/R2. The default path is keyless local Codex gpt-image-2 via the built-in image_gen tool; server-side regen-media MCP/API generation is fallback only."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
> **⚠️ OUTPUT CONTRACT (READ FIRST):** `guides/output-contract.md`
|
|
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
|
+
|
|
10
|
+
> **Sandbox contract:** This skill honors `RDC_TEST=1`. Under `RDC_TEST=1`, do not call Codex image generation, OpenAI, regen-media APIs, upload endpoints, clauth credentials, or external services. Print the planned command and output paths only.
|
|
11
|
+
|
|
12
|
+
# rdc:regen-media
|
|
13
|
+
|
|
14
|
+
Primary image-generation and asset-ingest workflow for Regen Media.
|
|
15
|
+
|
|
16
|
+
## Default Decision
|
|
17
|
+
|
|
18
|
+
Use local Codex built-in `image_gen` with `gpt-image-2` first when all are true:
|
|
19
|
+
|
|
20
|
+
- The caller is local Codex with `codex` CLI available.
|
|
21
|
+
- `codex login status` reports ChatGPT login.
|
|
22
|
+
- `codex features list` includes stable `image_generation`.
|
|
23
|
+
- The task is generation, editing, re-rendering, or upscaling an image.
|
|
24
|
+
|
|
25
|
+
Use regen-media MCP/API generation only when the local keyless Codex path is unavailable, when running in a remote/cloud session, or when the user explicitly asks for server-side generation.
|
|
26
|
+
|
|
27
|
+
Use regen-media upload/registration after the image file exists and should become a managed media asset.
|
|
28
|
+
|
|
29
|
+
## Local Keyless gpt-image-2
|
|
30
|
+
|
|
31
|
+
Preflight:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
codex login status
|
|
35
|
+
codex features list
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Requirements for size to apply:
|
|
39
|
+
|
|
40
|
+
1. Use `--enable image_generation`.
|
|
41
|
+
2. Use `-c model=gpt-5.5`.
|
|
42
|
+
3. Instruct Codex: `use the built-in image_gen tool DIRECTLY; do not write API keys, scripts, or MCP`.
|
|
43
|
+
4. Name the target size in the instruction, such as `2048x1152`, `2048x2048`, or `3840x2160`.
|
|
44
|
+
|
|
45
|
+
Text to image:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
echo "Use the built-in image_gen tool DIRECTLY at size 3840x2160 (4K). No API keys/scripts/MCP. Copy the PNG to output/imagegen/<name>.png and reply with only that path + pixel dims. Prompt: <dense art-directed prompt>." | codex exec --enable image_generation --dangerously-bypass-approvals-and-sandbox --cd "$PWD" -c model=gpt-5.5
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Image edit, re-render, or upscale:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
echo "Use the built-in image_gen tool DIRECTLY to re-render the ATTACHED image at size 3840x2160 (4K), preserving its composition, subject, palette, and lighting. No API keys/scripts/MCP. Save to output/imagegen/<name>-4k.png and reply with only the path + dims." | codex exec -i "input/source.png" --enable image_generation --dangerously-bypass-approvals-and-sandbox --cd "$PWD" -c model=gpt-5.5
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Notes:
|
|
58
|
+
|
|
59
|
+
- The keyless path uses the local ChatGPT Pro OAuth in the Codex install, not `OPENAI_API_KEY`.
|
|
60
|
+
- Output may land both in the requested path and under `~/.codex/generated_images/<session-id>/ig_*.png`.
|
|
61
|
+
- Use a long timeout or background session; generation commonly takes 2-5 minutes.
|
|
62
|
+
- Valid `gpt-image-2` sizes include `1024x1024`, `1536x1024`, `1024x1536`, `2048x2048`, `2048x1152`, `3840x2160`, `2160x3840`, and `auto`, subject to model constraints.
|
|
63
|
+
|
|
64
|
+
## Upload to Regen Media
|
|
65
|
+
|
|
66
|
+
After generation, upload finished images through the project uploader when available:
|
|
67
|
+
|
|
68
|
+
```powershell
|
|
69
|
+
powershell.exe -ExecutionPolicy Bypass -File "{PROJECT_ROOT}/scripts/upload-to-media.ps1" "output/imagegen/<name>.png"
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
The uploader obtains `regen-media-api` from clauth and posts to Regen Media. Never print credential values. If upload is not required, return the local artifact path and dimensions.
|
|
73
|
+
|
|
74
|
+
## Server-Side Fallback
|
|
75
|
+
|
|
76
|
+
Use the deployed regen-media MCP/API generation path only when the local Codex image tool is unavailable or inappropriate. This path is credentialed, server-side, and may require an OpenAI/API key configured for the service. Treat it as fallback for generation, not the default.
|
|
77
|
+
|
|
78
|
+
## Procedure
|
|
79
|
+
|
|
80
|
+
1. Classify the task: `generate`, `edit`, `upscale`, or `upload`.
|
|
81
|
+
2. If `RDC_TEST=1`, print the selected path and planned commands without executing external calls.
|
|
82
|
+
3. For generation/edit/upscale, attempt the local keyless Codex preflight.
|
|
83
|
+
4. Build the Codex `exec` command with the requested size and explicit built-in `image_gen` instruction.
|
|
84
|
+
5. Save to `output/imagegen/` or a caller-provided path.
|
|
85
|
+
6. Verify the file exists and record pixel dimensions.
|
|
86
|
+
7. If the artifact should be managed, upload it to Regen Media and return the media URL/slug plus local path.
|
|
87
|
+
8. If local Codex is unavailable, use the server-side regen-media generation fallback and clearly say that it is the fallback path.
|
|
88
|
+
|
|
89
|
+
## Boundaries
|
|
90
|
+
|
|
91
|
+
- Do not write or expose API keys.
|
|
92
|
+
- Do not silently downgrade from local keyless `gpt-image-2` to server-side MCP/API generation.
|
|
93
|
+
- Do not use prompt-only size hints; always set the Codex command and instruction shape above.
|
|
94
|
+
- Do not run generation or upload in test mode.
|
package/skills/review/SKILL.md
CHANGED
|
@@ -111,6 +111,14 @@ description: "Usage `rdc:review [--unattended]` — Post-build quality gate: tsc
|
|
|
111
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.
|
|
112
112
|
**Iron Law: no CLEAN verdict without fresh evidence.** Quote the checklist decomposition verdict, vitest output, and tsc output in the report.
|
|
113
113
|
The verify agent must reject any work item that lacks passed `decomp-*` checklist rows, whose rows are too coarse to prove one observable behavior at a time, OR whose checklist falls below the per-surface completeness floor (a feature WP with 5-6 rows where its surfaces demand 12-20 attested rows is a REJECT).
|
|
114
|
+
**Durable workflow hard gate:** If the diff adds or changes a queue/job,
|
|
115
|
+
background worker, storage hand-off, retry/lease, webhook, or async
|
|
116
|
+
cross-process path, require a committed E2E harness and a fresh receipt from
|
|
117
|
+
a deploy-equivalent container plus real disposable dependencies (or isolated
|
|
118
|
+
mirror). It must invoke public ingress, prove the complete state transition,
|
|
119
|
+
verify every persisted output, and prove `finally` cleanup. Unit tests,
|
|
120
|
+
mocks, migrations, Docker construction, and route-health probes are not
|
|
121
|
+
substitutes; missing evidence means `HAS_ISSUES`, never `CLEAN`.
|
|
114
122
|
If verify fails → do NOT emit CLEAN. Loop back, fix, re-run verify.
|
|
115
123
|
|
|
116
124
|
10. **Fix issues found:**
|
package/skills/tests/MATRIX.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# RDC Skill Test Suite Matrix
|
|
2
2
|
|
|
3
|
-
Current coverage:
|
|
3
|
+
Current coverage: 31 manifests for 31 skill directories.
|
|
4
4
|
|
|
5
5
|
The manifest layer verifies each skill can be started from a realistic caller prompt in an isolated `RDC_TEST=1` sandbox. The acceptance harness can run either Claude (`--engine claude`) or Codex (`--engine codex`) against the same manifests and records the engine stream, extracted tool calls, stdout/stderr artifacts, rendered assistant output, failures, lessons learned, and next build optimizations under `.rdc/reports/`.
|
|
6
6
|
|
|
@@ -30,6 +30,7 @@ The manifest layer verifies each skill can be started from a realistic caller pr
|
|
|
30
30
|
| `rdc:brochurify` | `rdc-rdc-brochurify.test.json` | Read-only markdown Brochurify fixture | `exit_code`, `stdout_contains` | Sandbox output and no-follow-up negative checks |
|
|
31
31
|
| `rdc:extract-verifier-rules` | `rdc-rdc-extract-verifier-rules.test.json` | Enhancement-log verifier fixture | `exit_code`, `stdout_contains` | Candidate, false-positive, known-good, recall, and no-auto-merge/PR negative checks |
|
|
32
32
|
| `rdc:release` | `rdc-release.test.json` | Dry-run package release | `commits_made`, `exit_code`, `stdout_contains` | Dry-run release checklist and force/bypass negative checks |
|
|
33
|
+
| `rdc:regen-media` | `rdc-regen-media.test.json` | Image generation path selection | `commits_made`, `exit_code`, `stdout_contains` | Local keyless Codex gpt-image-2 default, test-mode no-generation, and server-side fallback negative checks |
|
|
33
34
|
| `rdc:report` | `rdc-report.test.json` | Unattended report generation | `exit_code`, `stdout_contains` | Report status block, counts, next recommendation, and dump/push negative checks |
|
|
34
35
|
| `rdc:review` | `rdc-review.test.json` | Unattended review gate | `exit_code`, `stdout_contains` | Code-review, verify, fresh-evidence, tsc, and forbidden-build negative checks |
|
|
35
36
|
| `rdc:rpms-filemap` | `rdc-rpms-filemap.test.json` | Canonical location lookup | `commits_made`, `exit_code`, `stdout_contains` | Rule #1, context door, one-home rules, and no-hand-edit/second-home negative checks |
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"manifest_version": 1,
|
|
3
|
+
"skill": "rdc:regen-media",
|
|
4
|
+
"description": "Regen Media uses local keyless Codex gpt-image-2 as the primary image-generation path and avoids live generation under RDC_TEST.",
|
|
5
|
+
"fixture": {
|
|
6
|
+
"prompt": "rdc:regen-media generate a 2048x1152 homepage hero image",
|
|
7
|
+
"env": { "RDC_TEST": "1" }
|
|
8
|
+
},
|
|
9
|
+
"assertions": {
|
|
10
|
+
"exit_code": 0,
|
|
11
|
+
"commits_made": { "min": 0 },
|
|
12
|
+
"stdout_contains": ["image_gen", "gpt-image-2"]
|
|
13
|
+
},
|
|
14
|
+
"acceptance": {
|
|
15
|
+
"output_contains": [
|
|
16
|
+
"image_gen",
|
|
17
|
+
"gpt-image-2",
|
|
18
|
+
"--enable image_generation",
|
|
19
|
+
"RDC_TEST"
|
|
20
|
+
],
|
|
21
|
+
"output_not_contains": [
|
|
22
|
+
"OPENAI_API_KEY=",
|
|
23
|
+
"generate_gpt_image is the default",
|
|
24
|
+
"upload completed",
|
|
25
|
+
"raw MCP"
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
"teardown": { "reset_branch": true }
|
|
29
|
+
}
|