Human Control Layer for AI Agents. Built on OpenClaw by SapienX
Human operating layer for coordinating AI agents, projects, and companies from a single workspace.
Built on top of OpenClaw, the agent orchestration kernel.
Website · Watch Demo · Try in 5 minutes · Why AgentOS · Architecture · Highlights · Setup · Roadmap
Install AgentOS:
curl -fsSL https://raw.githubusercontent.com/SapienXai/AgentOS/main/install.sh | bash
Or use a package manager:
pnpm add -g @sapienx/agentos
Open the UI:
agentos start --open
Verify the local runtime:
agentos status
agentos doctor
First thing to try:
If OpenClaw is already installed, AgentOS connects to the live control plane and shows the current Gateway, models, agents, and runtimes.
If OpenClaw is missing or not ready yet, AgentOS opens in an explicit unavailable/onboarding state instead of showing a fake live state.
The screenshots below show the current product flow in the order a new visitor is most likely to explore it.
LaunchpadGuided onboarding for OpenClaw, models, and the first workspace. |
Control PlaneLive graph, task flow, and inspector visibility in one place. |
Agent BuilderCreate agents from scratch, presets, or imports. |
Agent ChatTalk to agents directly and turn intent into action. |
Add ModelsConnect providers and discover models without leaving AgentOS. |
Workspace WizardShape a workspace from one prompt and a guided flow. |
Workspace SurfacesConnect Telegram, Discord, Slack, and more to every workspace. |
|
As AI agents become cheaper to run, the bottleneck shifts from raw orchestration to human control.
Someone still has to decide what matters, inspect active work, route missions, review outputs, and keep multiple projects legible.
Most agent systems expose runtimes, sessions, and CLI primitives.
AgentOS adds the missing operating layer above them: a control-plane interface for humans coordinating teams of agents across real workspaces.
This repository contains the current AgentOS control plane: a Next.js application that sits above OpenClaw and turns live agent state into an operator-facing system for planning, execution, inspection, and workspace management.
Running one agent is not the hard part.
Operating many agents across many projects is.
AgentOS is built for that coordination problem:
Use the packaged launcher:
pnpm add -g @sapienx/agentos
agentos start --open
agentos doctor
Run the app locally from this repository:
pnpm install
pnpm dev
If OpenClaw is not ready yet, AgentOS starts in an explicit onboarding or fallback path instead of pretending a live control plane exists.
flowchart TD
Human["Human Operator"] --> AgentOS["AgentOS<br/>control layer / operating layer"]
AgentOS --> OpenClaw["OpenClaw<br/>agent orchestration kernel"]
OpenClaw --> Runtime["LLMs, tools, channels, automations, agents"]
| Layer | Responsibility |
|---|---|
| Human operator | Sets direction, reviews work, approves risky actions, and steers the system |
| AgentOS | Presents topology, planning, inspection, workspace bootstrap, settings, and mission dispatch |
| OpenClaw | Owns agent orchestration, gateway state, models, sessions, channels, and execution surfaces |
| LLMs and tools | Perform the underlying reasoning and tool-backed work |
flowchart LR
UI["AgentOS UI<br/>Sidebar / Canvas / Inspector / Command Bar / Planner"] --> API["Next.js App Router + API routes"]
API --> APP["OpenClaw application services<br/>workspace, agent, mission, runtime, settings"]
APP --> ADAPTER["OpenClawAdapter<br/>stable compatibility boundary"]
ADAPTER --> CLIENT["OpenClawGatewayClient<br/>Gateway-first client"]
CLIENT --> GATEWAY["OpenClaw Gateway RPC + WebSocket events"]
CLIENT --> CLI["OpenClaw CLI fallback<br/>install, recovery, unsupported operations"]
GATEWAY --> STATE["Gateway state<br/>models, agents, sessions, channels, skills, approvals, config"]
CLI --> STATE
APP --> FS["Workspace filesystem + .mission-control state"]
API --> STREAM["SSE snapshot stream"]
STREAM --> UI
OpenClaw is the kernel.
It handles the underlying agent runtime, CLI, gateway, models, sessions, automations, and execution primitives.
AgentOS is the operating layer above it.
It does not replace OpenClaw.
Instead, it reads live OpenClaw state, normalizes it into a control-plane snapshot, and gives the human operator a coherent surface for acting on that state.
In practice, that means:
AgentOS is Gateway-first on top of OpenClaw. Use agentos doctor and the in-app diagnostics panel to confirm the installed OpenClaw version, Gateway protocol range, native auth state, model readiness, and fallback activity before dispatching real missions.
The 0.6.8 release expects Node.js 24 or newer and the OpenClaw supported baseline from lib/openclaw/versions.ts. If compatibility is degraded, update OpenClaw, repair Gateway token/device access, restart the Gateway, and re-run agentos doctor --deep.
requires_approval account access rules are intentionally blocked until approval dispatch exists. They are persisted as policy state but cannot run a task yet.agentos doctor --deep is the release-readiness diagnostic for Gateway protocol, native auth, scopes, required methods, config access, schema/patch support, channel status, model readiness, fallback count, and the last native failure.pnpm check:release and pnpm smoke:agentos-package; use the clean-install smoke checklist before publishing or announcing a release.AgentOS is local-first and is intended to bind to loopback by default. Packaged AgentOS generates an API token under the local runtime directory, starts the server with token authentication, and the launcher opens an authenticated local URL. API routes are protected centrally before route handlers run. Remote OpenClaw Gateway URLs are blocked by default unless AGENTOS_ALLOW_REMOTE_GATEWAY_URL=1 is set explicitly. Sensitive local config/auth files are written with owner-only permissions where applicable. Do not expose AgentOS publicly without your own network controls, access policy, and monitoring.
MissionControlSnapshot.empty, clone, existing), templates, team presets, model profiles, and kickoff missions.AGENTS.md, SOUL.md, IDENTITY.md, USER.md, TOOLS.md, HEARTBEAT.md, MEMORY.md, docs/, memory/, deliverables/, skills/, and .openclaw/project-shell/.worker, setup, browser, monitoring, custom) plus heartbeat, file-access, install-scope, and network controls.| Surface | Purpose |
|---|---|
MissionSidebar |
Gateway diagnostics, workspace navigation, models, agents, and workspace or agent CRUD |
MissionCanvas |
Visual topology for workspaces, agents, and runtimes with selection and mission feedback |
InspectorPanel |
Detailed inspection of selected entities, transcript output, raw payloads, and created files |
CommandBar |
Mission composition, agent targeting, thinking level selection, refresh, and quick suggestions |
WorkspaceWizardDialog |
Handle both basic workspace creation and advanced planner-driven workspace design and deploy |
OpenClawOnboarding |
Detect, install, start, verify OpenClaw, and guide model readiness when the local machine is not ready |
ResetDialog |
Preview AgentOS reset or full uninstall actions and stream execution progress and logs |
app/
api/
agents/
diagnostics/
files/reveal/
gateway/control/
mission/
onboarding/
onboarding/models/
planner/
reset/
runtimes/[runtimeId]/
settings/
snapshot/
stream/
system/open-terminal/
update/
workspaces/
layout.tsx
page.tsx
components/mission-control/
canvas.tsx
command-bar.tsx
create-agent-dialog.tsx
inspector-panel.tsx
mission-control-shell.tsx
openclaw-onboarding.tsx
operation-progress.tsx
reset-dialog.tsx
sidebar.tsx
nodes/
workspace-wizard/
workspace-wizard-dialog.tsx
workspace-wizard-draft-pane.tsx
workspace-wizard-header.tsx
wizard-composer.tsx
wizard-message-list.tsx
wizard-suggestion-chips.tsx
hooks/
use-mission-control-data.ts
use-workspace-wizard-draft.ts
lib/openclaw/
agent-heartbeat.ts
agent-presets.ts
cli.ts
fallback.ts
operation-progress.ts
planner.ts
planner-core.ts
planner-presenters.ts
presenters.ts
readiness.ts
reset.ts
service.ts
types.ts
adapter/
application/
client/
domains/
state/
workspace-presets.ts
workspace-wizard-inference.ts
workspace-wizard-mappers.ts
packages/agentos/
bin/
scripts/
README.md
package.json
This is a representative map of the current control-plane code, not an exhaustive file listing.
Many internal files still use legacy mission-control naming.
pnpmPATHIf OpenClaw is installed in a non-standard location:
export OPENCLAW_BIN=/absolute/path/to/openclaw
GitHub Release installer:
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/SapienXai/AgentOS/main/install.sh | bash
agentos start --open
agentos stop
agentos doctor
Windows PowerShell:
iwr https://raw.githubusercontent.com/SapienXai/AgentOS/main/install.ps1 | iex
agentos start --open
agentos stop
agentos doctor
Install a specific published version:
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/SapienXai/AgentOS/main/install.sh | AGENTOS_VERSION=0.6.8 bash
Windows PowerShell:
$env:AGENTOS_VERSION='0.6.8'; iwr https://raw.githubusercontent.com/SapienXai/AgentOS/main/install.ps1 | iex
Package manager install:
pnpm add -g @sapienx/agentos
# or
npm install -g @sapienx/agentos
agentos start --open
agentos stop
agentos doctor
Stop a running server:
agentos stop
Uninstall:
agentos uninstall
If AgentOS was installed with pnpm or npm, remove it with your package manager instead:
pnpm remove -g @sapienx/agentos
# or
npm uninstall -g @sapienx/agentos
Local development:
pnpm install
openclaw --version
openclaw gateway status --json
If the gateway service is missing or not loaded:
openclaw gateway install --json
openclaw gateway status --json
Push a tag in the format below to build platform-specific release assets on GitHub Releases:
pnpm check:release
pnpm smoke:agentos-package
git tag agentos-v0.6.8
git push origin agentos-v0.6.8
packages/agentos/package.json is the published CLI/package version source. The root package is private and may keep a separate workspace app version.
The release workflow uploads:
agentos-darwin-arm64.tgzagentos-darwin-x64.tgzagentos-linux-x64.tgzagentos-win32-x64.tgz.sha256 filespnpm dev
Open the URL printed by Next.js, typically:
http://localhost:3000
If OpenClaw is unavailable when the app starts, AgentOS shows an explicit unavailable/onboarding state and tells the operator what to repair before write actions can run.
pnpm lint
pnpm typegen
pnpm typecheck
pnpm test
pnpm build
pnpm check:release
pnpm smoke:agentos-package
For a real local release rehearsal, run the clean-install smoke checklist in
docs/agentos-clean-install-smoke-checklist.md.
next.config.mjs.| Route | Method | Purpose |
|---|---|---|
/api/snapshot |
GET |
Return the normalized AgentOS snapshot |
/api/stream |
GET |
Stream snapshot updates over SSE |
/api/diagnostics |
GET |
Return gateway diagnostics, capabilities, and presence |
/api/mission |
POST |
Dispatch a mission to a real OpenClaw agent |
/api/agents |
GET, POST, PATCH, DELETE |
Read and mutate agents |
/api/workspaces |
GET, POST, PATCH, DELETE |
Read and mutate workspace projects |
/api/runtimes/:runtimeId |
GET |
Load transcript-backed runtime output |
/api/onboarding |
POST |
Install or start OpenClaw and verify readiness |
/api/onboarding/models |
POST |
Discover models, refresh readiness, set a default model, or guide provider login |
/api/update |
POST |
Run openclaw update and stream output |
/api/gateway/control |
POST |
Start, stop, or restart the OpenClaw gateway |
/api/planner |
POST |
Create a new workspace planning draft |
/api/planner/:planId |
GET, PUT |
Load or save a planning draft |
/api/planner/:planId/turn |
POST |
Process a planner conversation turn |
/api/planner/:planId/simulate |
POST |
Simulate the planner team |
/api/planner/:planId/deploy |
POST |
Deploy a planned workspace |
/api/reset |
POST |
Preview or execute an AgentOS reset or full uninstall flow |
/api/settings/gateway |
PATCH |
Update the OpenClaw gateway endpoint |
/api/settings/workspace-root |
PATCH |
Update the default workspace root |
/api/system/open-terminal |
POST |
Open a supported OpenClaw command in Terminal on macOS |
/api/files/reveal |
POST |
Reveal a local file in Finder, Explorer, or the platform file manager |
AgentOS keeps most durable operational state close to the workspace and to OpenClaw itself.
.mission-control/gateway-events/ and merged into runtime/task snapshots when available..mission-control/settings.json path..mission-control/planner/ path..openclaw/planner/, including blueprint.json and deploy-report.json.localStorage.This repository already shows the shape of a broader operating system for AI work.
Directionally, the next layer looks like this:
Contributions are welcome.
If you want to extend the control plane, the planner, the workspace bootstrap flow, or the OpenClaw integration, open an issue or pull request.
Please keep contributions aligned with the current design principles:
pnpm lint, pnpm typecheck, and pnpm build before opening a PR.MIT