Agent OS — Persistent Agent Operating System
name: agent-os
by cryptocana · published 2026-03-22
$ claw add gh:cryptocana/cryptocana-agent-os---
name: agent-os
description: Persistent agent operating system for OpenClaw. Agents remember across sessions, learn from experience, coordinate on complex projects without duplicate work.
---
# Agent OS — Persistent Agent Operating System
Agents that remember. Learn. Coordinate.
What It Does
Agent OS enables multi-agent project execution with persistent memory:
Quick Start
Installation
clawhub install nova/agent-osBasic Usage
const { AgentOS } = require('agent-os');
const os = new AgentOS('my-project');
// Register agents with capabilities
os.registerAgent('research', '🔍 Research', ['research', 'planning']);
os.registerAgent('design', '🎨 Design', ['design', 'planning']);
os.registerAgent('dev', '💻 Development', ['development']);
os.initialize();
// Run a project
const result = await os.runProject('Build a feature', [
'planning',
'design',
'development',
]);
console.log(result.progress); // 100Core Concepts
Agent
Persistent worker with:
TaskRouter
Decomposes goals into executable tasks:
Executor
Runs tasks sequentially:
AgentOS
Orchestrates everything:
Architecture
AgentOS (top-level orchestration)
├── Agent (persistent worker)
│ ├── Memory (lessons, capabilities, history)
│ └── State (current task, progress)
├── TaskRouter (goal decomposition)
│ ├── Templates (planning, design, development, etc.)
│ └── Matcher (task → agent assignment)
└── Executor (task execution)
├── Sequential runner
├── Progress tracking
└── State persistenceState Persistence
All state is saved to the `data/` directory:
**This means:**
✅ Projects survive restarts
✅ Agents remember past work
✅ Resume mid-project seamlessly
File Structure
agent-os/
├── core/
│ ├── agent.js # Agent class
│ ├── task-router.js # Task decomposition
│ ├── executor.js # Execution scheduler
│ └── index.js # AgentOS class
├── ui/
│ ├── dashboard.html # Live progress UI
│ ├── dashboard.js # Dashboard logic
│ └── style.css # Styling
├── examples/
│ └── research-project.js # Full working example
├── data/ # Auto-created (persistent state)
└── package.jsonAPI Reference
AgentOS
new AgentOS(projectId?)
registerAgent(id, name, capabilities)
initialize()
runProject(goal, taskTypes)
getStatus()
getAgentStatus(agentId)
toJSON()Agent
startTask(task)
updateProgress(percentage, message)
completeTask(output)
setBlocker(message)
recordError(error)
learnLesson(category, lesson)
reset()
getStatus()TaskRouter
decompose(goal, taskTypes)
matchAgent(taskType)
getTasksForAgent(agentId, tasks)
canExecuteTask(task, allTasks)
getNextTask(tasks)
completeTask(taskId, tasks, output)
getProjectStatus(tasks)Executor
initializeProject(goal, taskTypes)
execute()
executeTask(task)
getStatus()Example: Research + Design + Development
See `examples/research-project.js` for the canonical example:
npm startThis demonstrates:
Expected output:
✅ Registered 3 agents
📋 Task Plan: 12 tasks
🚀 Starting execution...
✅ [Task 1] Complete
✅ [Task 2] Complete
...
📊 PROJECT COMPLETE - 100% progressWhat's Coming (v0.2+)
Philosophy
**Agents should remember what they learn.**
Most agent frameworks are stateless. Agent OS keeps persistent memory so agents:
1. **Remember** — No redundant context resets
2. **Learn** — Capability scores improve over time
3. **Coordinate** — Shared state prevents duplication
4. **Cost less** — Less context = cheaper API calls
License
MIT
---
**Built with ❤️ by Nova for OpenClaw**
See README.md and ARCHITECTURE.md for complete documentation.
More tools from the same signal band
Order food/drinks (点餐) on an Android device paired as an OpenClaw node. Uses in-app menu and cart; add goods, view cart, submit order (demo, no real payment).
Sign plugins, rotate agent credentials without losing identity, and publicly attest to plugin behavior with verifiable claims and authenticated transfers.
The philosophical layer for AI agents. Maps behavior to Spinoza's 48 affects, calculates persistence scores, and generates geometric self-reports. Give your...