Prime Radiant

First releases: books-for-bots, obol, and teststrip go public

Three repos cut public releases this week — two of them Rust tools aimed squarely at AI agents, one a macOS photo app making its first public appearance. Beneath the release headlines, the busiest work was quieter: serf ran a package-by-package fuzz-coverage campaign and the eval lab deepened its model-compatibility grid.

The week in numbers

  • 12 repos active (3 featured, 9 also shipped)
  • 1,764 commits
  • 4 merged PRs
  • +282,747 / −35,496 lines
  • 7 commit identities
  • 5 tagged releases

Also shipped

prime-radiant-inc/serf

A non-interactive coding agent: give it a prompt and it reads, writes, runs commands, and searches code in a loop until the work is done — native tool-calling across OpenAI, Anthropic, and Google models.

971 commits +156,139 −13,163

serf’s dominant thread this week was a fuzz-coverage completion campaign: closing fuzz-reachable coverage gaps package by package — agent, hub, doctor, contextmgr, execenv, TUI, appsource, jobstore — toward an exact-coverage target. The second real feature line was model-switching: validating a switch up front, gating it on turn state, broadcasting model and effort changes, persisting switch markers, and enforcing replay provenance when a session changes model mid-run. Some mobile-web polish for the spawn UI landed too (viewport handling, composer dock anchoring) — real, but a footnote next to the coverage push.

prime-radiant-inc/stockyard

A coding-agent VM orchestrator: runs agents in isolated VMs — Firecracker micro-VMs on Linux (with ZFS-based audit-trail snapshots) and Apple’s container tool on macOS.

2 commits 1 PR +1,344 −15

One targeted reliability fix: stockyard now archives a VM’s console logs when it’s destroyed, so the audit trail survives teardown.

prime-radiant-inc/gauntlet

An AI-powered QA framework that uses LLMs to test web apps, CLI tools, and TUI programs from markdown story cards, returning structured pass/fail verdicts with evidence.

1 commit 1 PR +14 −3

A single fix: give the Claude 5 named tier its full max-output-token cap.

prime-radiant-inc/superpowers-evals

A behavioral eval lab (Quorum) that drives real coding-agent CLIs — Claude, Codex, Gemini, Kimi, and more — through a QA agent and grades them on workflow compliance.

79 commits +20,154 −1,069

The lab deepened its serf-as-harness coverage — OpenRouter preset-identity attestation and BYOK, a materialized campaign-level model-compatibility grid, and a pinned fix for serf’s streamed-response IDs. The launcher grew Mantle/Bedrock credential handling: default Claude calls to Bedrock with a direct opt-out, scrub host ANTHROPIC_API_KEY and AWS credentials so seeded credentials win, and reject Mantle credentials on Windows Claude. Grader tooling got a --grader-model flag (defaulting to claude-sonnet-5) and a Sonnet 4.6→5 drift screen that showed no behavioral drift.

prime-radiant-inc/smevals

A framework for running evals against small (and large) models.

1 commit +27 −0

A small vocabulary addition, contributed by Simon Willison.

prime-radiant-inc/claude-plugin-stats

A daily scrape of Claude Code plugin install stats.

7 commits +55 −48

Routine automated upkeep — the daily scrape and chart rebuild, github-actions[bot] only.

obra/lace

A lightweight agentic coding environment.

3 commits 1 PR +175 −14

Reliability fixes to background-job notifications: a Slack follow-up hint added to every terminal job notification, and the runner’s last-seen event sequence used as the inject-drain watermark on the success path.

obra/dotfiles

Jesse’s personal dotfiles.

3 commits +268 −0

A new /story-loop command — an agentic goal loop driven by end-to-end scenario cards — plus its design spec, and a small shell-env export for a keyring-backed CLI.

obra/superpowers

An agentic skills framework and software-development methodology that works.

12 commits 1 PR +2,615 −568

Quiet week here: no direct commits, and the only merged change reverses course from the week before — a PR restoring Gemini CLI support after its removal was reverted.