RAC v0.10.5 - the "batteries included" release
The "batteries included" release — the package now carries the agent skills to work a RAC repository properly, installable into any project from the wheel alone. No repository checkout, no network, no AI. And the server your agent talks to now goes by the product's name: lore.
pip install --upgrade requirements-as-code
rac skill install
claude mcp add lore -- rac mcpYour agent's working habits, in the box
Lore taught your agent to read recorded knowledge. These skills teach it to work on it. Three Claude Code skills now ship inside the package itself:
- rac-artifacts — author and maintain RAC artifacts with the CLI: the right command, the right template, IDs minted properly
- rac-review — work
rac reviewfindings worst-first until validation passes, instead of fixing whatever is nearest - rac-ingest — convert DOCX, PDF, HTML, PPTX, XLSX, or Markdown documents into valid, linked artifacts
rac skill install # all three, into .claude/skills/
rac skill install rac-review # one by name
rac skill list # what is bundledInstall never overwrites: if any target file already exists, the no-arg install refuses and writes nothing — the named form is the additive path.
Why you care: the workflow this repository uses to maintain its own corpus is now a one-command install in yours — straight from the wheel, so it works offline and in CI. And because the skills are package resources, the copy you install is the copy we dogfood: each bundled skill is kept byte-identical to this repository's own by test, and the rac skill output — human and --json — is pinned by golden tests like every other contract.
The server is named lore
v0.10.3 shipped the MCP server under the label rac-guide — an internal codename that leaked into the most visible seam of the product. As of this release the agent-facing identity is lore: the config key in every documented block, the name the server reports to your client, and the namespace your agent's tool calls appear under (recorded as ADR-039, the way decisions are recorded here).
What this is not: a rename of anything you script against. The command is still rac mcp, the package is still requirements-as-code, and the four tools and every response contract are byte-for-byte unchanged. Already configured rac-guide? It keeps working — re-add as lore when convenient:
claude mcp remove rac-guide
claude mcp add lore -- rac mcp --root /path/to/your/repoThis release also carries the assets for the official MCP registry — a server.json declaring io.github.tcballard/lore and the ownership marker the registry validates. Look for the listing under that name.
Telemetry you can read before you share it
Want to tell us how the server is actually used? Now you can — on your terms:
rac mcp --telemetry # off by default
rac mcp-stats # summarise the local log
rac mcp-stats --share # prefilled usage-report issue URL — you review it, you submit itWhat it records: tool-call counts and metadata (timestamps, durations, outcomes). What it never records: arguments, queries, or a single byte of your repository's content. The log is a local file you can open, the server announces the log path on stderr so enablement is never silent, and tool responses are byte-identical with telemetry on or off. RAC still contains no network code — the only way data leaves your machine is you reading a URL and clicking it.
Also in this release (since v0.10.3)
- The growth plan is now a corpus. The repository's own forward plan lives as RAC artifacts — seven requirements, two designs, an umbrella roadmap — queryable the same way every other decision here is.
- "How this relates to spec-driven development" — a new README section placing RAC against the tools you already know, every comparison claim cited to the named tool's own documentation.
docs/ecosystem.mdseeds the ecosystem reading list, and a consolidated traceability gap report captures real authoring friction as recorded findings rather than folklore.- The banner renders on PyPI now (image URLs are absolute), and Python-version and license badges join the README.
- This repository grounds its own agents: a checked-in
.mcp.jsonserves the dogfood corpus throughlore, per the team setup indocs/mcp.md.
Full details: CHANGELOG.md and #73.
Upgrading
pip install --upgrade requirements-as-codeuv tool upgrade requirements-as-codeEverything is additive: new commands (rac skill, rac mcp-stats), one new opt-in flag (rac mcp --telemetry), and the server's new name. Every existing command, file, JSON contract, and exit code works exactly as in v0.10.3 — and with telemetry off (the default), the server's behaviour is byte-for-byte what it was before.