Is multi-runtime portability of RDCO's ~/.claude/ harness a real hedge, or a distraction from depth on Claude Code?
The question
How portable is RDCO's ~/.claude/ skill + harness config across runtimes (xAI Grok Build, Codex, Cursor) in practice — what transfers cleanly, what breaks — and is a multi-runtime portability posture a genuine hedge/moat or a distraction from depth on Claude Code? Context: AlphaSignal 2026-05-26 reported Grok Build now reads CLAUDE.md unchanged and supports Skills/hooks/MCP; SkillOpt (arXiv 2605.23904) showed optimized skills transfer Codex ↔ Claude Code. Distinct from the OpenAI-substrate-threat brief — this is portability-in-practice as a posture question, tied to an existing Grok-CLI eval Notion task.
What we already know (from the vault)
- [[06-reference/concepts/2026-05-10-harness-moat-two-layers-portability]] — The canonical RDCO framing. Layer 1 (universal harness discipline: ratchet, skill format, verify-gates, subagent routing) is ~90% of what makes Ray work and is designed to be portable; Layer 2 (CLAUDE.md hard rules, failure-driven memory, voice, vault content) is ~10%, earned-not-portable; Layer 1.5 (MCP server / deploy-target / bets.json swaps) is mechanical config. This brief is the empirical cross-runtime test of that thesis.
- [[06-reference/2026-05-26-skillopt-self-evolving-agent-skills]] — Lesson 4: "Skill > harness — procedural knowledge generalizes across runtimes." A Codex-trained skill ported to Claude Code jumped +59.7 on SpreadsheetBench. Empirical evidence that the SKILL.md layer is the cross-harness unit.
- [[06-reference/2026-05-26-alphasignal-xai-grok-build-skills-claude-md]] — The trigger. Grok Build reads CLAUDE.md unchanged + supports Skills/hooks/MCP. xAI chose interop over lock-in. Reframes the Notion eval task (id
361f7d49-36d1-8198-a8e0-cd5e15c0b5a3) from "competitor" toward "complement / portability hedge." - [[06-reference/2026-05-15-alphasignal-codex-mobile-grok-cli-x-algo]] — Original Grok Build capture that logged the Skills question as the open unknown now answered.
- [[06-reference/research/2026-05-24-openai-workspace-agents-vs-claude-substrate-30day-check]] — The distinct prior brief: substrate (model + Workspace Agents) vs harness quality. This brief is the config-layer companion, not a re-run.
What the web says
- SKILL.md is the one layer that transfers cleanly everywhere. Multiple 2026 comparisons state the same SKILL.md runs on Claude Code, Codex CLI, Cursor, Gemini CLI, and Copilot Agent Mode — "write once, use everywhere" (Agensi: SKILL.md vs CLAUDE.md vs .cursorrules, Prompt Index skills guide). SkillOpt corroborates with hard numbers (Codex↔Claude Code transfer).
- MCP is universally supported; protocol identical, maturity varies. An MCP server configured for one agent works on all others; Claude Code has the most battle-tested implementation but the wire protocol is the same (Agensi config guide).
- Grok Build is the most aggressively interop-friendly: reads existing CLAUDE.md natively (no changes), auto-discovers Skills, plugins, hooks, MCP servers, subagents, AND reads the AGENTS.md family (Beginners in AI Grok Build guide, Pasquale Pillitteri review). xAI is explicitly courting the Claude Code ecosystem rather than walling it off.
- Codex reads AGENTS.md, NOT CLAUDE.md. Migration means porting "operational rules, not human documentation" from CLAUDE.md into
~/.codex/AGENTS.md+ repo-level AGENTS.md. Skills port to.agents/skills; MCP ports via[mcp_servers.*]inconfig.toml. But hooks behave differently (concurrent same-event launches, no Claude dispatcher ordering), settings.json has no equivalent (Codex uses config.toml profiles + feature flags), subagents are advisory not autonomous, and there is no cron/scheduled-trigger port path (Claude Code→Codex migration guide, OpenAI Codex skills docs). - Cursor is the least portable of the four.
.cursorrulesis editor-specific and "doesn't work in Claude Code, Codex CLI, or other agents." Cursor does read SKILL.md and supports MCP, so the skill + tool layers carry; the instruction layer does not (Agensi: Cursor Rules vs SKILL.md, Serenities AI .cursorrules vs agents.md). - AGENTS.md is emerging as the cross-tool instruction standard (Claude Code via plugins, Cursor, Codex, Copilot, Grok Build). The 2026 portability advice is: migrate tool-specific rules files to AGENTS.md, and push behavior into standalone skills rather than embedding it in project configs.
Convergences and contradictions
- Strong convergence, vault and web agree: the portable unit is the skill (procedural knowledge) plus the protocol (MCP). This is exactly RDCO's Layer-1 "skill format is portable" claim, now empirically confirmed across four runtimes plus a benchmark paper.
- Convergence on what breaks: the enforcement and orchestration machinery — settings.json hooks (deterministic ordering), cron/scheduled triggers, the autonomy ceiling of subagents, and the permission/classifier model — is runtime-specific and does NOT port. Codex's own migration doctrine says it explicitly: "Move the proof obligations, not the machinery."
- No real contradiction, one nuance: "Grok Build reads CLAUDE.md unchanged" is reads-the-file, not necessarily executes-the-semantics. Whether RDCO's precedence chain and hard-rule enforcement actually behave under Grok Build (vs parse-but-ignore) is unverified and is the cheap experiment to run.
Synthesis for RDCO
The portability picture cleanly splits along the same fault line the vault already named. What transfers across Grok Build, Codex, and Cursor is the content of RDCO's harness: the ~100 SKILL.md files (procedural knowledge — the verify-* critics, process-newsletter, deep-research, the pipeline seats) and the MCP server roster (Gmail, Notion, Calendar, xmcp, etc.). These are now demonstrably a cross-harness asset, not a Claude Code lock-in. What does NOT transfer is the machinery that makes RDCO an always-on autonomous COO rather than a coding assistant: settings.json hooks with deterministic ordering, the cron/LaunchAgent/Monitor session model, the autonomous-merge classifier and permission gates, the working-context.md ledger, and CLAUDE.md hard-rule enforcement with a real precedence chain. Codex's migration doctrine concedes the gap directly — cron has "no direct port path," subagents stay advisory, settings.json has no equivalent. So the literal answer: ~80-90% of RDCO's configuration capital is portable, but the ~10-20% that breaks is precisely the part that makes Ray autonomous rather than interactive. The autonomy is Claude-Code-specific today.
Is a multi-runtime portability posture a genuine hedge/moat? It is a genuine hedge but a weak moat — and pursuing it actively would be a distraction. It's a hedge because RDCO's bet was always "fat skills, thin harness" (Tan) and the skills + MCP being portable means RDCO is not stranded if Anthropic raises prices, degrades the model, or sunsets a primitive. That optionality already exists for free, by virtue of having built on the portable layer — RDCO does not need to do anything to hold it. It is not a moat because the moment skills are portable, they are also commoditizable: anyone can copy a SKILL.md. The actual moat is unchanged from the harness-moat-two-layers analysis — it's the Layer-2 personal-fit accumulation (Ben's earned hard rules, voice, vault) plus the orchestration machinery and verify-gate discipline that does NOT port, plus operating-time. SkillOpt sharpens this: the frontier is "whoever builds the verifier for open-ended tasks," and RDCO's verify-* critic gates are early on exactly that — but they're worth more as executed discipline on a deep substrate than as portable files.
The posture recommendation: go deep on Claude Code; treat portability as a low-cost insurance policy you already own, not a roadmap item. Concretely, do three cheap things and nothing more. (1) Keep authoring behavior in SKILL.md skills and MCP, not in CLAUDE.md prose or settings.json — RDCO already does this; just keep the discipline so the portable layer stays fat. (2) Run the one cheap experiment the Grok Build news unlocks: point Grok Build at the existing ~/.claude/ config and diff the behavior on a representative skill (a verify-* critic) — answer whether "reads CLAUDE.md" means executes-semantics or parses-but-ignores. This retires the open unknown on the Notion eval task for the cost of one session. (3) Do NOT invest in maintaining a parallel AGENTS.md / Codex / Cursor config, do NOT abstract skills to a lowest-common-denominator that loses Claude-Code-specific power (hooks, classifier, cron), and do NOT frame multi-runtime support as an RDCO product axis. The depth that matters — autonomous operation, the cron loop, the classifier, the accumulated personal-fit layer — is where the differentiation lives, and all of it rewards going deeper on one substrate rather than spreading thin across four. Portability is the consequence of having built right, not a goal to chase.
Open follow-ups
- Run the Grok Build behavioral diff: does it execute CLAUDE.md precedence + hard-rule semantics, or just parse the file? (Feeds Notion task
361f7d49-36d1-8198-a8e0-cd5e15c0b5a3.) - Confirm current Grok Build pricing/gate — May 15 capture said SuperGrok Heavy $300/mo; May 26 copy says only "SuperGrok subscribers." Verify on x.ai before any eval spend.
- Does AGENTS.md warrant adoption as RDCO's instruction-layer standard (Claude Code reads it via plugin; it's the emerging cross-tool standard)? Low-stakes, but would maximize the already-owned hedge.
- Cron/scheduled-trigger gap: if RDCO ever needed substrate redundancy for the autonomous loop, what would replace the LaunchAgent + Monitor model on Codex/Grok? Currently no port path — worth a one-line answer before it's ever load-bearing.
- SkillOpt-style validation gate on /improve: orthogonal to portability but the same skills-as-trainable-unit thesis; the portable layer is also the optimizable layer.
Sources
- [[06-reference/concepts/2026-05-10-harness-moat-two-layers-portability]]
- [[06-reference/2026-05-26-skillopt-self-evolving-agent-skills]]
- [[06-reference/2026-05-26-alphasignal-xai-grok-build-skills-claude-md]]
- [[06-reference/2026-05-15-alphasignal-codex-mobile-grok-cli-x-algo]]
- [[06-reference/research/2026-05-24-openai-workspace-agents-vs-claude-substrate-30day-check]]
- Agensi: SKILL.md vs CLAUDE.md vs .cursorrules
- Agensi: AI agent configuration guide 2026
- Agensi: Cursor Rules vs SKILL.md complete guide
- Claude Code to Codex migration guide (Blake Crosley)
- OpenAI Codex Agent Skills docs
- Beginners in AI: Grok Build CLI 2026 guide
- Pasquale Pillitteri: Grok Build review
- Serenities AI: .cursorrules vs agents.md vs claude.md
- The Prompt Index: AI agent skills complete guide 2026