Observed since 20 Oct, 17:32 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
0agent
A persistent, learning AI agent that runs on your machine. An agent that learns.
A persistent, learning AI agent that runs on your machine.
Runs a local daemon. Learns from every task. Remembers everything. Gets better over time.
npx 0agent@latest
0agent is a CLI agent that runs as a background daemon on your machine. It executes real tasks — shell commands, file operations, web search, browser automation — using your API key, and learns from every outcome via a weighted knowledge graph.
Unlike chat-based AI tools, 0agent:
npx 0agent@latest
The wizard asks for:
gh CLI if installed)~/0agent-workspace)After setup, the chat TUI opens automatically. No manual steps.
0agent # open chat (starts daemon if needed)
npx 0agent@latest
0agent — anthropic/claude-sonnet-4-6
Type a task, or /help for commands.
› make a website for my coffee shop and deploy it locally
› build a REST API in Go with auth
› research my competitor's pricing and draft a response strategy
Type while the agent works — messages queue automatically and run one after another.
# Software engineering
0agent /review # code review current branch
0agent /build # run build, fix errors
0agent /qa # generate and run tests
0agent /debug # debug a failing test or error
0agent /refactor # refactor a file or module
0agent /test-writer # write unit tests
0agent /doc # generate documentation
# Planning & strategy
0agent /office-hours "I want to build a payments feature"
0agent /plan-eng-review
0agent /plan-ceo-review
0agent /retro # weekly retrospective
0agent /ship # pre-release checklist
# Research
0agent /research "Acme Corp Series B"
0agent /security-audit
› /schedule add "run /retro" every Friday at 5pm
› /schedule add "check the build" every day at 9am
› /schedule list
| Command | Description |
|---|---|
/model | Show or switch model |
/model add anthropic sk-ant-... | Add a provider API key |
/key anthropic sk-ant-... | Update a stored key |
/status | Daemon health + graph stats |
/skills | List available skills |
/schedule | Manage scheduled jobs |
/update | Update to latest version |
/graph | Open 3D knowledge graph |
/clear | Clear screen |
Ctrl+C | Cancel current task |
Every task updates a weighted knowledge graph stored in ~/.0agent/graph.db.
Edge weights: 0.0 ──── 0.5 ──── 1.0
bad neutral good
After each task:
success → weight += 0.1 × learning_rate
failure → weight -= 0.1 × learning_rate
decay → weight → 0.5 over time (forgetting)
After ~50 interactions, plan selection measurably improves. The graph also stores:
memory_write tool)0agent can back up its knowledge graph to a private GitHub repo:
# Set up during init, or add manually to ~/.0agent/config.yaml:
github_memory:
enabled: true
token: ghp_...
owner: your-username
repo: 0agent-memory
| Capability | How |
|---|---|
| Run shell commands | shell_exec — bash, any CLI tool |
| Read / write files | file_op — read, write, list, mkdir |
| Search the web | web_search — DuckDuckGo, no API key needed |
| Scrape pages | scrape_url — full page text, tables, links |
| Open browser | browser_open — system Chrome or default OS browser |
| Remember facts | memory_write — persists to knowledge graph |
| Schedule tasks | Natural language cron via /schedule |
| Self-heal | Detects runtime errors, proposes + applies patches |
npx 0agent@latest
│
▼
┌─────────────────────────────────────────────────────────┐
│ CLI (bin/0agent.js + bin/chat.js) │
│ • Init wizard • Chat TUI • Slash commands │
└───────────────────────┬─────────────────────────────────┘
│ HTTP + WebSocket
▼
┌─────────────────────────────────────────────────────────┐
│ Daemon (dist/daemon.mjs) — port 4200 │
│ │
│ SessionManager ── AgentExecutor ── LLMExecutor │
│ │ │ │ │
│ │ CapabilityRegistry │ │
│ │ • shell_exec │ │
│ │ • file_op │ │
│ │ • web_search │ │
│ │ • scrape_url │ │
│ │ • browser_open │ │
│ │ • memory_write │ │
│ │ │ │
│ KnowledgeGraph ◄────── outcome feedback ┘ │
│ (SQLite + HNSW) │
│ │ │
│ GitHubMemorySync ── SchedulerManager ── SelfHealLoop │
└─────────────────────────────────────────────────────────┘
Key packages:
| Package | Description |
|---|---|
packages/core | Knowledge graph, inference engine, storage adapters |
packages/daemon | HTTP server, session manager, agent executor, capabilities |
bin/chat.js | Claude Code-style TUI with message queue, WS events, spinner |
bin/0agent.js | CLI entry point, init wizard, daemon lifecycle |
~/.0agent/config.yaml — created by 0agent init, edit anytime:
llm_providers:
- provider: anthropic
model: claude-sonnet-4-6
api_key: sk-ant-... # never committed to git
is_default: true
workspace:
path: /Users/you/0agent-workspace # agent creates files here
sandbox:
backend: docker # docker | podman | process | firecracker
github_memory:
enabled: true
token: ghp_...
owner: your-username
repo: 0agent-memory
embedding:
provider: nomic-ollama # nomic-ollama | openai | none
model: nomic-embed-text
dimensions: 768
git clone https://github.com/cadetmaze/0agentv1
cd 0agentv1
pnpm install
pnpm build
# Run init wizard
node bin/0agent.js init
# Or start daemon directly
node bin/0agent.js start
node bin/chat.js
# Bundle daemon into single file
node scripts/bundle.mjs
# Check status
node bin/0agent.js status
open http://localhost:4200 # 3D knowledge graph dashboard
Requirements:
npm install -g pnpm)Issues and PRs welcome. This is early-stage software — things break, APIs change.
pnpm install && pnpm buildpackages/daemon/src/ or bin/node scripts/bundle.mjs to rebuild the bundlenode bin/0agent.js initApache 2.0 — use it, fork it, build on it.
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
wsEnvironment{
"local_name": "ws",
"alias": false,
"peer_metadata": null
} | ^8.18.0 | runtime |
zodEnvironment{
"local_name": "zod",
"alias": false,
"peer_metadata": null
} | ^3.23.0 | runtime |
honoEnvironment{
"local_name": "hono",
"alias": false,
"peer_metadata": null
} | ^4.6.0 | runtime |
yamlEnvironment{
"local_name": "yaml",
"alias": false,
"peer_metadata": null
} | ^2.6.0 | runtime |
better-sqlite3Environment{
"local_name": "better-sqlite3",
"alias": false,
"peer_metadata": null
} | ^11.6.0 | runtime |
@hono/node-serverEnvironment{
"local_name": "@hono/node-server",
"alias": false,
"peer_metadata": null
} | ^1.13.0 | runtime |
turboEnvironment{
"local_name": "turbo",
"alias": false,
"peer_metadata": null
} | ^2.1.0 | development |
esbuildEnvironment{
"local_name": "esbuild",
"alias": false,
"peer_metadata": null
} | ^0.27.4 | development |
typescriptEnvironment{
"local_name": "typescript",
"alias": false,
"peer_metadata": null
} | ^5.5.0 | development |
@types/nodeEnvironment{
"local_name": "@types/node",
"alias": false,
"peer_metadata": null
} | ^25.5.0 | development |
@biomejs/biomeEnvironment{
"local_name": "@biomejs/biome",
"alias": false,
"peer_metadata": null
} | ^1.9.0 | development |
Source distribution
{
"shasum": "36b80bc9a460fc9c0f28f477bb4425c142750565",
"tarball": "https://registry.npmjs.org/0agent/-/0agent-1.0.9.tgz",
"fileCount": 25,
"integrity": "sha512-kw4fto+iVw7YrRnvcUldJN225X1PA82Ffh29u3bkPX8KEPSTZh45UPYNNIuZGWt/PWDEBoMwaYfa2kCMZ0s64w==",
"signatures": [
{
"sig": "MEQCIGwwCRLw3BlPQ3cxKaOYY7XK+t2L07EjOcBklBlSxXIMAiAUpIfLOp/k89lUHCO1Ae5YiqgPYEpRzY6G9tz1e+A2/g==",
"keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
}
],
"unpackedSize": 243069
}Observed since 20 Oct, 17:32 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:200afce9aaafd526800b8badadc824cc2f7bd10f2e23c96cd4da8d8f12ced35e