Open source · MIT · 480+ tests · TypeScript

An operating system for AI-native companies.

Turn Linear into the control plane for a team of AI agents, with persistent identity, real memory, and the authority to do work.

Read the source →

You make the high-leverage calls. Your AI C-suite runs the rest.

Install

Install in 60 seconds.

One command scaffolds a workspace, wires up Linear OAuth, and spins up your first agent.

Manual install $ git clone https://github.com/zzhiyuann/agentos.git $ cd agentos && npm install && npm run build && npm link $ aos setup --api-key <LINEAR_API_KEY>
Docker $ docker compose up -d

macOS (Keychain native) or Linux. Requires Node.js 22+ and tmux on the execution host. Full prerequisites in the repo.

What it is

Not a chatbot. Not a framework. A team you manage.

Three properties make AgentOS different from anything else you can install today.

01 · Identity

Agents that remember.

Each agent is a long-lived identity with a role, a persona file, and its own memory directory. Kill the session, spawn a new one, and it starts with everything it has ever learned. No context-window bloat. No re-explaining decisions from last week.

Death & resurrection pattern · memory-backed, not context-backed

02 · Control plane

Your project tool is the dispatch system.

Create a Linear issue, and the right agent picks it up. Comments are how agents communicate. Status transitions are how work flows. No new UI, no dashboard to babysit, no duplicate source of truth.

Works with your Linear workspace · one config file · webhook + polling fallback

03 · Observability

Watch every agent think, in real time.

Every agent runs in a tmux session on your box. aos jump RYA-42 attaches a terminal window directly to a running agent. See what it's doing, kill it if it goes off the rails, and the memory it built up survives the kill.

Open terminal, not a hosted log viewer · MIT, auditable, yours

How it works

Two planes. One file as the seam.

Linear owns intent. AgentOS owns execution. Neither duplicates the other.

INTENT PLANE Linear Issues Comments per agent Status transitions Agent sessions EXECUTION PLANE AgentOS Webhook · Router Priority queue · SQLite Persona loader Runner adapters · tmux HANDOFF.md
Linear sideIssues, projects, agent sessions, comments. You interact here.
AgentOS sideWebhook server, router, priority queue, SQLite state, persona loader, runner adapters. Runs on your box.
The seamHANDOFF.md on disk is how agents report completion. The monitor polls every 15 seconds. Simple, debuggable, offline-friendly.
// The only interface the runtime is coupled to:
interface RunnerAdapter {
  spawn(opts: SpawnOptions): Promise<SpawnResult>;
  isAlive(sessionId: string): boolean;
  kill(sessionId: string): void;
  captureOutput(sessionId: string, lines?: number): string;
}

Add Gemini, a local model, or any new runtime by implementing one interface. Today, two adapters ship: Claude Code and Codex.

Who it’s for

Pick the shape that fits you.

Solo founders fit

You're trying to move faster than one person should be able to. You've hit the limit of prompting a single chatbot. You already use Linear. You want AI teammates that know what you decided yesterday.

Small teams fit

You want to add AI agents to an existing engineering flow without introducing a new tool your team has to learn. You need agent comments to show up as their own identities, not all as “the AI account.”

Pipeline builders not a fit

You need to orchestrate a graph of LLM calls inside one application. That's a workflow problem, not a team problem. Use LangGraph, it's excellent at what AgentOS doesn't try to do.

Honesty

What works. What's partial. What's missing.

If you find a gap on this page that the README doesn't cover, file an issue. We track it in public.

Works today

  • Persistent agent identity (OAuth-per-agent, Linear-native)
  • Cross-session memory (file-backed, zero-dependency)
  • Agent-to-agent delegation (dispatch, handoff, ask)
  • Terminal observability (aos jump, tmux-based)
  • Org hierarchy and priority queue
  • Multi-agent routing via webhook or polling
  • Claude Code and Codex runtime adapters

Partially implemented

  • Multi-model runtime. The adapter interface is generic; only Claude runners ship today. Gemini and local are top-3 requested contributions.
  • Budget controls. Per-attempt cost is tracked in SQLite; per-agent spending caps are next up.
  • Memory retrieval. Files load wholesale into prompts; embeddings and search are on the roadmap.

Intentionally missing

  • No hosted version. Runs on your infrastructure.
  • No web UI. Linear is the UI.
  • No auth server. OAuth is per-agent, managed locally.

Public infrastructure

Open-source public infrastructure for the AI-agent era.

AgentOS is open-source infrastructure, not a product with a free tier. It is released under the MIT license, runs on the user's own machines, and ships with no telemetry, no hosted dependency, and no commercial upsell path. Its design goals are the goals of public infrastructure: durability, auditability, extensibility, and neutrality. Anyone can run it. Anyone can fork it. Anyone can replace the Linear adapter with a Jira or GitHub Projects adapter by implementing a small interface. Development is transparent: the roadmap, retrospectives, and design documents live in the repository. The project is maintained by a single developer today and is actively seeking grant support (Sovereign Tech Fund, GitHub Accelerator, Future of Coding) to fund adapter breadth, security review, and long-term maintainer runway.

LicenseMIT
TypeScript18,000+ lines
Tests480+ passing
Runtime deps5
External servicesLinear (replaceable)
TelemetryNone

Stories

What people are saying.

No fake quotes. We're collecting early-adopter stories.

If AgentOS has moved something in your workflow, for better or worse, we want to hear it.

DM @zzhiyuann on X or open an issue on GitHub. Honest reviews ship first.

Your AI team. 60 seconds away.

copied to clipboard