Reelier
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Let your agents write. Keep the receipts.
*Your agents worked all night. Here's exactly what changed.*
Reelier records the run that worked, freezes it as a replayable skill, and replays it deterministically — every run comes back as a receipt: proof of what the agent did and what changed because of it. **Agents make claims. Reelier writes receipts.**
**Website** · **Docs** · **SPEC.md**
▶ watch with sound (27s)
---
Receipts on your agent PRs — install and done
Agent-authored PRs (Dependabot, Claude, Codex, Cursor, …) get a receipt comment in seconds: author, files changed, declared scope vs. what actually changed, sensitive paths flagged. No workflow file, no CLI, no config.
**→ Install the Reelier receipts GitHub App** — free on public repos, forever.
> **Reelier receipt — agent PR**
> Author: dependabot[bot] · Files changed: 2 (+119 −41)
> Declared scope: none (add .reelier/scope.yml to enable unexpected-write detection)
> Sensitive paths touched: ⚠ 1 — package-lock.json
> Proves scope and change, not correctness
A real receipt from Reelier's own repos — see one live. Declare scope per agent in .reelier/scope.yml (or a reelier-scope block in the PR body) and the receipt reports unexpected writes. The receipt proves scope and change, never correctness or safety.
---
Why
AI agents are non-deterministic — the same prompt, a different result every run — and they'll claim they did the work whether they did or not. Reelier records the run that worked, replays it deterministically, and writes a signed receipt that proves it. Point it at your existing CI in one workflow — it adds a verifiable receipt, it doesn't replace your stack.
Measured on a real head-to-head benchmark, same task, same data (full method):
- **1,000 / 1,000 replays byte-identical**
- **Every replay ships a signed receipt** — proof of what ran and what changed, never a claim
- **0 LLM calls at replay** — deterministic re-execution, not re-reasoning
Deterministic replay is also ~50× cheaper and ~59× faster than re-running the agent, on the same benchmark.
Install
reelier init [--dry-run] performs one checkpointed local inspection across all three Reelier paths: Path A observation coverage, Path B replay/freeze candidates, and Path C boundable/outcome-capable/shadow-only/unsupported connections and candidates. It does not deploy, gate, dispatch, upload, copy credentials, or rewrite host configuration. --dry-run writes nothing; the normal command writes only sanitized artifacts below .reelier/init/.
As an agent plugin
Teach your coding agent when to reach for Reelier. Same two commands, either host:
This installs two Agent Skills and nothing else. reelier-replay teaches your agent to freeze a
repeatable tool-call job and replay it at 0 tokens. reelier-write-safety covers bounding an
agent's writes before you grant them: what the recorder sees, what a policy refuses, and what a
receipt does and does not prove. **It ships no MCP servers**, so it does not wrap, observe, or gate
any tool call on its own; the reelier CLI does that, and the skills drive it via npx. Packaged in both the Agent Plugins v1.0.0 format (plugin/agent-plugins/) and the Claude Code format (plugin/claude/), generated from one source by scripts/build-plugin-packages.mjs.
Verified end to end on codex-cli 0.147.0-alpha.1.2: both formats install, enable, and the skill reaches the model. Other hosts are untested, and per-host status is tracked in docs/specs/agent-plugins-coverage-v1.md §4 rather than claimed here.