Skip to content

Lyceum

Spec-driven development with a coding agent. You stay in control through approvals, and it stays out of your way when you need speed.
  1. You describe what you want. The agent works out where it fits in your spec, or whether it’s new.

  2. It asks about the things that matter: numbered questions, lettered options, its recommendation first, or your own answer.

  3. It proposes the spec change and plan. You approve it or send it back.

  4. It builds, then works through gates. A judgment gate waits for your approval. A mechanical gate clears only on a test run the CLI executed and recorded itself.

  5. Each acceptance criterion maps to a test, each approval is hashed against what you approved, and lyceum check enforces both in the commit hook and in CI.

The agent can say it’s done. Only the CLI can record that it is.

Feature gate flowspec, a judgment gate you approve, then build, then verify, a mechanical gate cleared by a recorded test run, then close.specjudgment: you approvebuildagent writes code, testsverifymechanical: recorded runcloseCLI closes the unitJudgment gate: clears by owner approvalMechanical gate: clears on a CLI-recorded run
A feature’s gates. Other unit types have their own fixed lists; see Units and gates.
Agent Tested version Status
Claude Code 2.1.318 ✅
Codex 0.164.0 ✅
OpenCode 2.0.18 ✅
Pi 0.86.0 ✅
Command Code 1.88.3 ✅

Each was tested end to end in the v1 release check. lyceum init finds the agents you use and installs the skills, slash commands and a hook for each.

Run it once without installing:

Terminal window
npx lyceum init

Supported platforms are linux-x64, linux-arm64, darwin-x64 and darwin-arm64. Windows isn’t supported. See Install for release downloads.