State — radioactive-ralph¶
This page tracks the live state of the rewrite after the binary-first pivot.
What changed in the contract¶
The repo no longer treats the Claude marketplace/plugin path as the main identity of the product.
The active contract is now:
radioactive_ralphbinary firstClaude Code via stdio MCP
personas defined in code
provider abstraction as the target direction
What is live today¶
Go CLI under
cmd/radioactive_ralph/repo init and config scaffolding
durable SQLite-backed plan store
stdio MCP server via
radioactive_ralph serve --mcpMCP registration via
radioactive_ralph mcp registerservice installation commands
repo-root Sphinx docs
generated Go API reference under
docs/api/
What is now explicitly deprecated¶
treating marketplace plugin skills as the main product story
treating HTTP MCP as a first-class integration path
describing the personas as external skill files first and code second
Legacy plugin/skill material may still exist in the tree or in archive/history documents, but it is no longer the architectural center.
High-priority implementation gaps¶
Fixit rewrites are still append-only at the DAG layer¶
Fixit now seeds the durable DAG on first creation for a topic slug, but reruns with the same slug refresh the human report and leave the existing DAG plan in place. Plan revision/replacement semantics are still missing.
Provider abstraction is still design, not code¶
The current runtime still shells out to claude. The broader provider-binding
model is the next architecture phase, not a shipped feature.
Safety and gating are still incomplete¶
Some variant gate and spend-cap behavior exists in profiles/docs but is not yet fully reflected in the runtime surface.
What is intentionally true now¶
Ralph is one binary with many personalities.
Claude is a client of the binary, not the other way around.
Repo config should become the place where future provider bindings live.
The docs should describe the current product honestly and mark target-state material as target-state.