skills/co-develop/SKILL.md
Usage `rdc:co-develop <ask|reply|inbox|start|resume|status>` — peer-aware Claude/Codex co-development over clauth, with ask --wait as the default delegation pattern.
npx skillsauth add LIFEAI/rdc-skills rdc:co-developInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
⚠️ OUTPUT CONTRACT (READ FIRST):
guides/output-contract.mdChecklist-only output. No tool-call narration. No raw MCP/JSON/log dumps. One checklist upfront, updated in place, shown again at end with a 1-line verdict.
Use this skill when an RDC workflow needs Claude and Codex to work together in
one governed session. This skill uses the clauth codevelop_* route only. Do
not use chitchat_* for this workflow.
Use the high-level delegation commands by default:
rdc:co-develop ask <peer> "<task>" — delegate to partner and wait for the reply
rdc:co-develop reply <turn-id> "<summary>" — reply to a partner request with evidence
rdc:co-develop inbox — drain your inbox when you are explicitly acting as the worker
rdc:co-develop start <name> — create a session and return startup details
rdc:co-develop resume <session-id> --peer <peer-id> — join as a peer
rdc:co-develop send --session <id> --from <peer> --to <peer> <task> — send a turn
rdc:co-develop poll --session <id> --peer <peer> — drain messages for a peer
rdc:co-develop status [session-id] — show session status and queues
rdc:co-develop stop <session-id> — stop the session
When you need partner help, do not hand-write /codevelop/send JSON unless the
CLI fails. Call the partner like a subagent:
clauth codevelop ask --to codex --wait --task "Review this plan and identify blockers."
clauth codevelop ask --to claude --wait --task "Review this implementation and advise."
ask --wait sends the request, captures the turn_id, polls the sender inbox,
and returns the matching partner reply to the current live agent. This preserves
the sender's active conversation context.
When you receive a partner request, complete the bounded task and reply with:
clauth codevelop reply --turn turn-0001 --verdict pass --summary "Reviewed plan." --evidence "Checked files X and Y" --files-changed ""
For manual worker intake:
clauth codevelop inbox --peer codex
clauth codevelop inbox --peer claude
HTTP routes:
POST /codevelop/start
POST /codevelop/join
POST /codevelop/send
POST /codevelop/poll
GET /codevelop/<session-id>/<peer-id>/stream
GET /codevelop/<session-id>/status
GET /codevelop
POST /codevelop/stop
MCP tools:
codevelop_start
codevelop_join
codevelop_send
codevelop_poll
codevelop_stream
codevelop_status
codevelop_stop
Default peers:
| Peer | Role | Responsibility |
|---|---|---|
| claude | supervisor | RDC loop, work items, validation, integration |
| codex | implementation_partner | implementation, focused audit, repair, evidence |
Other valid turn roles: planner, builder, reviewer, validator,
advisor, release_guard, infra_operator.
Always send structured JSON. The receiving peer must treat the JSON object as the source of truth.
{
"session_id": "<session-id>",
"turn_id": "turn-0001",
"from": "claude",
"to": "codex",
"type": "audit_request",
"role": "reviewer",
"skill": "rdc:review",
"task": "Audit the current diff for regressions before merge.",
"context": {
"repo": "{PROJECT_ROOT}",
"work_item_id": "<optional-uuid>",
"branch": "develop",
"owned_files": []
},
"expect": {
"response_format": "CO_DEVELOP_REPLY",
"evidence_required": true,
"commit_allowed": false
}
}
Required reply shape:
{
"session_id": "<session-id>",
"turn_id": "turn-0001",
"from": "codex",
"to": "claude",
"type": "reply",
"verdict": "pass",
"summary": "One paragraph.",
"evidence": [],
"files_changed": [],
"commits": [],
"blockers": [],
"next": []
}
Invoke co-development when:
rdc:plan creates 5 or more work packages, or 3 or more work packages with integration riskrdc:build has file overlap or integration riskrdc:review finds failures that need judgmentDo not invoke by default for simple read-only explanations, one-line command output, one-file typo fixes, or already decomposed low-risk work.
codevelop_start / codevelop_join.peer_id.clauth codevelop ask --to <partner> --wait --task "<task>".clauth codevelop inbox --peer <you>.clauth codevelop reply --turn <turn-id> ....codevelop_stop when the work is done.Every co-development turn must report:
tools
Convert Office documents to/from Markdown with the build-corpus CLI: .docx/.pptx/.ppt → Markdown (Word OMML equations become KaTeX-readable TeX; tables, images, headings preserved), and Markdown → Word (.docx) where inline $...$ and display $$...$$ LaTeX become NATIVE Office Math (OMML) that Word renders as real equations. Use this skill whenever the user asks to convert a Word/PowerPoint document to Markdown, build a Markdown corpus from Office files, turn Markdown into a .docx (optionally with a .dotx template), or "open the report" to edit. Install build-corpus straight from GitHub and run it in the session.
development
Usage `rdc:brochure <input> [--out <path>] [--template <name>] [--format Letter|A4]` — Turn a zip, folder, HTML file, URL, or markdown folder into a print-quality PDF brochure via Puppeteer. Auto-detects print-variant HTML, honors @page CSS, falls back to a Studio-token-aware template when no HTML exists.
tools
Usage `rdc:convert <input> [--out <dir>] [--to markdown|word] [--images assets|base64|s3]` — Convert .docx/.pptx/.ppt → Markdown (Word OMML equations as KaTeX TeX, tables, images) or Markdown → Word via the build-corpus CLI (PyPI `build-corpus`, npm `regen-mde`). Portable: runs in any session that can reach npm or PyPI — Claude Code CLI and claude.ai both fetch + run it. Use whenever the user asks to convert an Office document, build a Markdown corpus from .docx/.pptx, turn Markdown into a .docx, or 'open the report' in the regen-mde editor (Windows).
tools
Usage `rdc:fs-mcp <task>` — Use the File System MCP bridge for live repo reads, safe writes, cloud-to-local ingest, and GitHub-branch imports into a dirty local monorepo. Use when Claude.ai, Cowork, or CLI agents need fs_read/fs_write/fs_import_git_files guidance.