FIG. 01 / THE PREMISE
watchd
Your AI agents run while you sleep. They watch, learn, and act. Every cycle sharpens them.
agents/market_watch.py5 LINES
INFRANONE
STATEPERSISTENT
COST$0/MO
DEPLOY1 COMMAND
FIG. 02 / WHAT OTHERS REQUIRE20 ITEMS
One Python file.One SQLite DB.
Your agent keeps its memory in SQLite. State persists across runs. Every cycle builds on the last. No cloud, no containers, no prayers. Just a function that gets smarter over time.
FIG. 03 / HOW IT WORKS
01WATCH
Teach it what to see.
Write a Python function. Give it a schedule. It wakes up, observes, and remembers. ctx.state persists across every run.
@agent(schedule=every.hours(1))
def intel_scan(ctx):
signals = scan_sources()
ctx.state["baseline"] = signals
return compare(signals, ctx.state)02LEARN
It builds memory.
Each run reads previous state, compares against history, and writes what it learned back. The gap between you and everyone else widens daily.
$ watchd up [watchd] intel_scan scheduled (every 1h) [watchd] intel_scan [3 new signals] 430ms [watchd] intel_scan [baseline updated]
03SHIP
Deploy and forget.
One command. Any VPS. Atomic deploys with rollback. It runs while you sleep, compounds while you think.
$ watchd deploy Syncing to production... done Installing deps... done Your agents are live.
FIG. 04 / ARCHITECTURE9 MODULES
Nine modules. Zero dependencies.
scheduler
Cron + interval triggers
runner
Execute with retries and capture
state
Persistent memory across runs
logger
Structured, queryable logs
retry
Automatic backoff on failure
history
Every run tracked and searchable
deployer
Atomic deploys, any VPS
watcher
Hot-reload in development
cli
init, up, deploy, logs, state
cli -> schedulercli -> deployercli -> watcherscheduler -> runnerrunner -> staterunner -> loggerrunner -> retryrunner -> historystate -> history
FIG. 05 / COMPARISON
1STEPS AND COUNTING
vs
5STEPS TOTAL
THE WATCHD WAY
$ uv add watchd
$ watchd init
$ vim agents/market_watch.py
$ watchd up
$ watchd deploy # live in 2 min
FIG. 06 / START THE LOOP
THE GAP COMPOUNDS DAILY. / © LEVEL09