The agent that
grows with your work
Storms.CLI is a self-hosted autonomous runtime that lives on your server, remembers what it learns, and grows more capable the longer it runs. Bring your own keys, your own models — and never lose your work.
An agent that compounds,
not one that forgets.
Every run writes episodes and distilled lessons to a local store. Nothing is uploaded, nothing expires, and nothing is lost when a model changes.
It reads your repo, your notes, your schedule. Every run is journaled from the first minute.
Distilled notes start landing hits. Plans get shorter, tool calls fewer, results steadier.
It schedules its own wakes, retries what failed, and stops asking questions it already answered.
Memory keeps growing on your disk. Swap models any time — the learning stays with you.
Six subsystems. One binary.
Nothing phones home. Every subsystem is a file you can read, a process you can kill, and a log you can diff.
Embedded vector + relational store on your own filesystem. Episodes, distilled notes, retrieval that never leaves the box.
Crash-restarts, resumes its plan queue, appends every run to an on-disk journal you can read with cat.
Cron triggers plus reactive hooks. The agent decides when to revisit a task and requeues its own work.
Isolated subagents with their own context, terminals and tool budgets — coordinated by one planner.
Every tool call runs behind an allowlist: filesystem scope, egress rules, hard wall-clock budget per step.
Every prompt, tool result and decision written as JSONL. Diff two runs, replay one exactly.
It wakes itself, then improves itself.
A scheduled wake pulls fresh signals — files, repos, webhooks, your own notes — into a working context.
Specialist passes argue the read; a coordinator collapses them into one structured decision with a confidence band.
Tools execute inside the sandbox under a hard time budget. Failures are caught, retried, or escalated.
The result is journaled and the distilled lesson lands in local memory, ready for the next wake.
$ storms replay 8842 --diff 8830 wake : cron(0 4 * * *) budget 90s/step context : 6 signals · 2 memory hits · 1.8k tokens tools : repo.diff, note.recall, file.write decision : ship (conf 0.79) prev: ship (0.71) memory : +1 note "changelog wants imperative verbs" journal : ~/.storms/journal/8842.jsonl (14 events)
Two commands. One agent.
Bring your own keys, your own models, your own infrastructure. The agent belongs to you from minute zero — no account, no dashboard, no gateway in the middle.
$ curl -fsSL https://get.storms.cli | sh$ storms.cli setup --sandbox strict$ storms.cli daemon up --autonomousSelf-hosted, line by line.
| criterion | storms.cli | hosted agent |
|---|---|---|
| Where it runs | Your machine | Someone's cluster |
| Model keys | Yours, on disk | Uploaded |
| Memory | Local store that grows | Vendor database |
| Telemetry | None | Always on |
| Audit trail | JSONL you own | Dashboard export |
| Cost at idle | Electricity | Seat pricing |
Own the loop.
Download Storms.CLI and boot it in under a minute. Self-hosted, replayable, MIT licensed — and it keeps getting better while you sleep.
runs autonomously on your infrastructure