rcf-lite
v0.28.2
Published
One-install tooling for the Requirements Confidence Framework (RCF): the unified `rcf` CLI grouped into the five RCF tool groups (discover, define, build, verify, audit) plus a small core set (init, doctor, guidance, mcp), an MCP server, the live tree vie
Maintainers
Readme
rcf-lite
Build software with an AI coding agent without losing the plot.
Package name note (0.7.1+). This tool ships as
rcf-liteon npm. The retired scoped name@stravica-ai/rcf-build-litewas frozen at 0.7.0 in August 2026 and every release from 0.7.1 onwards lives here. Ifnpm install -g @stravica-ai/rcf-build-lite@<version>returns "no matching version" for any version above 0.7.0, uninstall the scoped name and installrcf-liteat the same version instead:npm uninstall -g @stravica-ai/rcf-build-lite npm install -g rcf-liteThe
rcfandrcf-verifybin names are unchanged.
Anyone who has shipped with a coding agent knows the failure mode: the code arrives fast, but what the product is supposed to do lives in prompt history, and prompt history is not a spec. Three weeks later nobody can say what is covered, what is tested, or what breaks when something changes.
RCF Lite keeps those answers machine-checkable. It maintains a live chain from what you asked for, through requirements, user stories, acceptance criteria and tests, into the code itself, as plain JSON files in your own repository. Your agent works the chain instead of improvising; rcf define validate catches drift the moment it happens; and when your app is deployed, rcf verify sends an independent verifier at it before anything gets called done.
It is the tooling for the Requirements Confidence Framework (RCF): a method for keeping AI-built software honest.
Start here
Node 24 or newer is required. The preinstall gate rejects older majors so the CLI never lands half-wired; check with node --version first.
Three steps before you start your coding agent, then one prompt inside the session.
Install the CLI:
npm install -g rcf-liteThat single install brings both the build-stage CLI (
rcf) and the ship-gate verifier (rcf verify, plus the transition-gracercf-verifyalias) in one package.In your project directory, run
rcf init(ornpx rcf-lite initwithout the install). One command sets everything up: the requirements files, the MCP server entry and your agent's instructions.Start your coding agent session in that directory (or restart the one you have open, so it picks up the new configuration).
Then hand your agent this prompt, filled in. The setup you just ran has already taught it how to work; all it needs from you is the idea:
I want to build [describe your product idea in a sentence or two].
Let's get started.If you'd rather drive it by hand, docs/getting-started.md covers the same ground at human pace. Prerequisites, install checks and agent-harness wiring live in docs/install.md.
Agent support
Claude Code is the supported path today. Codex CLI works end to end for a small app, with three sharp edges to know about before you start:
- The
.mcp.jsonthatrcf initwrites uses the Claude Code convention, which Codex does not read. To make the RCF MCP entry reachable from Codex, copy it by hand into~/.codex/config.tomlunder[mcp_servers]. - The chain discipline in
AGENTS.mdholds when nothing pushes on the session. Under user pressure for pace, Codex has been observed to drop the chain and ship code without the interveningrcf definecalls; keep an eye onrcf define validatebetween turns. rcf initdoes notgit initthe directory, so everycodex execandcodex exec resumeneeds--skip-git-repo-checkuntil you initialise git yourself.
Fuller Codex support is on the roadmap; for now the recommended path is Claude Code.
Migrating from the pre-0.7.1 packages
If your project pinned one of the pre-consolidation packages, replace it with rcf-lite:
| Old pin | New pin |
|--------------------------------------|----------------------------------------|
| @stravica-ai/rcf-build-lite | rcf-lite |
| @stravica-ai/rcf-verify-lite | rcf-lite (verify is a subcommand now) |
| @stravica-ai/rcf-lite-core | rcf-lite (core is an internal module) |
Invocation:
rcf init/rcf define validate/rcf build/rcf build finaliseare unchanged.- Prefer
rcf verify <run|report|provision|cleanup|mcp>over the legacyrcf-verifybin. The alias still works (identical dispatch, one-line stderr deprecation notice on direct invocation; suppress withRCF_QUIET=1).
The full migration story, the ratified ruling sheet and the registry runbook live at the repo root under docs/.
This repo runs on it
The umbrella's own PRD, requirements, user stories, acceptance criteria, architecture and build queue live as JSON under rcf/, validated against the open @stravica-ai/rcf-schemas. The build queue in there is the one that drove the tool's own development. The artefacts are the demo.
See them the way you'd see your own project's:
git clone https://github.com/Stravica/rcf-lite.git
cd rcf-lite && pnpm install
cd packages/rcf-lite
pnpm rcf audit view # the tree this tool was built from, rendered live in your browserThen scaffold your own: docs/getting-started.md.
Docs
| Doc | One line | |---|---| | docs/install.md | Prerequisites, install, verify, wire into an agent harness | | docs/getting-started.md | Empty directory to a validated, queried, building RCF project | | docs/how-it-works.md | The document chain, the files, the verbs, the agent contract | | docs/why-it-exists.md | The confidence gap, and why files plus a CLI is the answer | | docs/code-nodes.md | The spec-to-code bridge: Code Nodes, staleness detection, the mark-complete gate, honest limits | | docs/verify-reference.md | The verify subcommand tree (run, report, provision, cleanup, mcp) in detail |
docs/README.md is the index; rcf help <verb> is the flag reference; guidance/ is the agent-facing method pack.
Under the hood
The chain does not stop at the tests. Code Nodes make source files first-class nodes in the same graph, so a dangling spec-to-code link fails rcf define validate exactly the way a dangling spec-to-spec one does. rcf audit trace walks backward from a source file to the requirements it serves; rcf audit impact extends a change's blast radius into the code that implements it. Spec-only trees work unchanged; the code layer is additive. Full detail, deliberate limits and the roadmap beyond them: docs/code-nodes.md.
Known issues
- npm 11.6.x may install
rcf-liteempty. Runningnpm install rcf-liteon its own with npm 11.6.x reportsup to date, audited 1 packageand performs no file operations, leaving the package unusable. This is an upstream npm reify bug, not an rcf-lite defect. Workarounds: install rcf-lite alongside any other package in the same command, use npm 10, or use pnpm. The note will clear once npm ships the fix.
Contributing
Not accepting external code contributions at this stage of the project. Bug reports and feature discussion via Issues are welcome. CONTRIBUTING.md covers the development setup and house rules that will apply when that changes.
License
Apache 2.0. See LICENSE.
