ようこそ · welcome to the zen garden ·
roops
ルー プス  ·  RŪPUSU

Scheduled agent rounds, kept like a garden. Raked every morning, touched by no one, and quiet when all is well.

ループス 巡回 · JUNKAI — THE ROUNDS
01 · What it is ·

Small agents, on a schedule, that watch and report.

Roops is a thin harness for recurring agent jobs — the boring, valuable kind: audits, drift checks, health sweeps. Each loop wakes on its schedule, looks at one thing carefully, files its findings, and disappears.

Rounds, not sessions

Every firing is a fresh agent with no memory of the last run. State lives in the harness — run history, findings, dispositions — never in the model. The patrol is the same every night; only the garden changes.

Rounds are read-only — but findings are actions in waiting

While on patrol, a loop can only look and speak. That is enforced beneath the model — write sandbox, tool restrictions, no network — not promised in a prompt. But don’t mistake the patrol for the product: findings are written as fully-specified actions, precise enough to execute as-is. Nothing changes during a round; things change because of one.

Your seal moves the world

Findings flow to one place — roops stamp. Acknowledge, dismiss, snooze only quiet the garden. Approval, , is different: an approved finding becomes an order, executed on its own audited path — dry-run, execute, confirm — never mid-patrol. Approve the same thing often enough and Roops asks to make the approval standing. Autonomy is earned, one seal at a time.

Engine-neutral

Prompts are written for no particular model. Engines are switchable per loop — one CLI-driven agent today, a different one tomorrow, a local model later. The harness outlives any engine it runs.

02 · How a round works · 巡回

From the schedule to your seal.

A firing is five moves, always the same five. Nothing is resident between them: the round starts empty, and what it brings back waits for you.

The schedule fires — launchd, not a daemon.

Nothing runs between rounds. The operating system wakes the loop at its hour and hands it a clean process.

A fresh agent walks the patrol — read-only by enforcement, not by promise.

No memory of the last round, and no way to alter this one: write sandbox, restricted tools, no network. All of it sits beneath the model; none of it is prompt text.

Findings come back arranged by severity — shin 真, soe 副, hikae 控.

Few stems, deliberate placement, everything that does not belong cut away. An empty arrangement is the healthy one.

You stamp — ack · snooze · settle · approve.

The first three quiet the garden, and the loop stops raising what you have already answered. The fourth is not a quieting.

An approved finding becomes an order, executed on its own audited path — never mid-patrol.

Dry-run, execute, confirm — each step with its own record, and none of it inside the round that proposed it.

The same round, from the terminal.

$roops rounds
tls-certsdaily 06:002m11s
dead-linksdaily 06:103m02s
deps-driftdaily 06:201m44s
backups-verifyweekly mon 07:00
$roops stamp deps-drift F-114 --note "upgrade scheduled friday"
F-114 stamped · deps-drift · note kept · noted on the finding
03 · Three pillars · 三柱

Minimal as a garden.
Dependable as a guard.
Arranged as a vase.

枯山水karesansui · dry garden

The garden is raked every morning

A zen garden is not built once — it is tended on a schedule, and the raking is the product. Roops keeps a garden’s default state too: silence, the ma (間) of meaningful empty space, where a quiet dashboard is not “no data” but the deliberate display of nothing being wrong.

maps to → scheduled firings · fresh session per run · empty findings = healthy · whitespace-first dashboard
武士道bushidō · the way

The rounds are kept. The blade stays sheathed.

A castle guard walks the same perimeter at the same hour every night, whether or not anything happened the night before — that patrol is junkai (巡回), and it is exactly what a scheduled run is. The patrol itself is read-only, enforced at the engine level, and the acting comes after: the blade is drawn on command, never on patrol.

maps to → cron-like reliability · per-loop permission axes · rounds propose · 承 approves · execution on its own audited path
生け花ikebana · living flowers

Findings are arranged, not dumped

Classical ikebana arranges three stems at three heights — shin (真) tallest, soe (副) middle, hikae (控) lowest — which is, with no forcing at all, a severity hierarchy: shin = alert, soe = warn, hikae = info. A run’s findings are a small arrangement of few stems and deliberate placement, with everything that does not belong cut away — dismissal is part of the art.

maps to → severity levels · ack / dismiss / snooze as pruning · effective_status = the tallest stem in the vase
04 · The interface · 実装

What the dashboard becomes.

The run matrix as a tended garden. Runs are rake-lines; findings are stems; human dispositions are stamps.

ROOPS · THE ROUNDS 7-DAY SPEND $4.12
tls-certsdaily 06:00MA 間
last 巡 06:00 · 2m11s
dead-linksdaily 06:10SOE 副
last 巡 06:10 · 3m02s
deps-driftdaily 06:20SHIN 真
last 巡 06:20 · 1m44s
backups-verifyweekly monMA 間
last 巡 mon 07:00
The arrangement — findings for deps-drift, 巡 of 06:20
SHIN 真 — critical CVE in a pinned transitive dependency
SOE 副 — 2 lockfile drifts aging past 48h
HIKAE 控 — license audit clean, 18 of 43 packages pinned
EFFECTIVE STATUS = THE TALLEST STEM IN THE VASE — STAMP TO PRUNE

This is a working excerpt — toggles and stamps are simulated. The full interface concept — running rounds, the live engawa view, the ledger — is a page of its own: enter the garden.