- runs locally
- SQLite and FAISS on your disk by default. Set DATABASE_URL and the same code moves to Postgres with pgvector.
- one agent per folder
- Persona, model, provider, tools, permissions, guardrails, and compaction are YAML files you can read, layered project over user over package.
- tools on demand
- The model searches a registry and loads only what a task needs, so a large tool surface costs almost nothing in context.
- asks before acting
- Shell and write access are default deny. A gated call pauses the turn for your approval, and headless runs fail closed.
- keeps its own notes
- Long-term memory per user and workspace, plus automatic compaction that folds old turns into a running summary instead of dropping them.
- speaks MCP
- Connect external servers over stdio, SSE, or streamable HTTP. Their tools join the same registry as everything else.