recensa
Recensa is a self-hosted web viewer that indexes Claude Code session transcripts into a local SQLite database, enabling full-text search, replay, and audit of all past agent conversations without uploading data anywhere.
它引入了严格的“循环工程”模式:代理从不评判自己的工作,每轮使用全新上下文,可通过本地调度器或 Modal 云调度,并带有类型化守卫和退出码。
Loop.js is the framework for loop engineering.
You state a goal and what "done" means. The engine runs an agent at it, Round after Round — fresh context every Round, memory read back from disk — until a separate, skeptical judge rules the bar met. Run it from a terminal, schedule it — on your machine or deployed to Modal's cloud — or embed it in a product: same engine, same guarantees.
import { Loop } from "@loop.js/core"
const loop = Loop.define({
goal: "Build a playable 2D platformer",
verify: "It builds clean, `bun test` passes, and the game boots to a controllable character",
limits: { rounds: 20, usd: 10 },
})
const exit = await loop.run().done()
// { settled: true, verdict: { ok: true, reason: "…" } } — the judge said done, not the worker
Loop engineering is designing the system that prompts an agent instead of prompting it turn by turn: a goal, a way to work, a way to verify, a stop discipline — the loop does the iterating. loop.js is that system as a framework: what is loop engineering →
Running an agent in while (true) is one line. Whether that loop ever converges is
everything around it — and that is the part loop.js owns:
| The pain | The machinery |
|---|---|
| The agent says "done" when it isn't | A separate Verify agent — own session, own (cheaper, if you like) model, read-only by default — judges every Round. Only its verdict settles the Loop; the worker never grades its own homework. |
| Long sessions bloat and drift | Every Round starts with fresh context and reads its memory back from disk — the worker's own handoff notes. Round 40 starts as fresh as Round 1. |
| Retries that don't converge | A "not yet" verdict carries a mandatory reason, fed to the next Round. A goal that can never pass settles as an explicit give-up instead of burning the budget. |
| Money runs away | Declared guards: total usd (step-granular ledger), rounds, per-Round timeout — and they default tight ($1, 3 Rounds, 5m). Every ending is a typed Exit with its own process exit code. |
| Crashes, restarts, double triggers | All state lives on disk; loop run is idempotent and resumes from the cursor. The Lock (co |
A loop engineering framework — state a Goal; Rounds run until a skeptical, read-only Verify agent settles it.
根据分类、Topic 和编程语言匹配的相似项目。
Recensa is a self-hosted web viewer that indexes Claude Code session transcripts into a local SQLite database, enabling full-text search, replay, and audit of all past agent conversations without uploading data anywhere.
OpenClaude is an open-source CLI coding agent that runs on any platform and supports a wide range of LLM providers, offering the same tools and workflows as Claude Code.

A collection of notes on building coding agents, derived from the production development of the desktop agent Reina, with each mechanism simplified into a zero-dependency, single-file Node.js demo.