The self-hosted agent layer: build, run and govern AI agents on your own infrastructure.
Your team and its agents in one live chat, with Claude Code and Codex on hand, a real browser, MCP and an API, under budgets, approvals and a recorded run.
Apache-2.0 · built on Pydantic AI
See it · Highlights · What is it? · Quick start · Integrations · Product tour · Find your path · What ships · FAQ · Website · Introduction deck · Documentation
AgenticOS gives every team AI teammates: agents that work with files, run code, browse the web and use your company's tools and knowledge. Your colleagues and your agents work in the same live chat, and any agent can hand code to Claude Code or Codex, on the ChatGPT or Claude subscription you already pay for. It is open source (Apache-2.0) and self-hosted, a layer you run on your own infrastructure. Build and publish agents in the browser, share them with colleagues, and manage their access, cost and results in one place.
**New here?** Click through the [17-slide introduction](https://vstorm-co.github.io/agenticos/presentation/): the problem, the idea, the product on real screens, its controls and limits, and how to start. For every screen in detail, open the [47-slide product tour](https://vstorm-co.github.io/agenticos/presentation/tour/). Arrow keys step through either deck; `O` lists every slide.
## ⚡ Highlights
### Your team and your agents, in one live room
A project gives everyone the same files, instructions and a computer for the agents. Invite colleagues and work the way a team works: see who is here, watch a teammate's agent answer as it is written, and bring in any agent, tool or document with an `@`.
### Reply to anyone, and the agent knows who said what
Reply to a person or an agent's answer, and the agent applies the change and says whose it was. Every message carries a name, so a decision has an owner.
### Claude Code and Codex, on your team
Any agent can hand software work to Claude Code or Codex. They build in the agent's own computer, on your ChatGPT or Claude subscription, and report what they changed, what they checked and what they need from you.
### Ask how it works, get a drawing you can use
An agent draws while it writes: a diagram from your documents, a calculator with sliders, a chart or a 3D scene, live under its message. One click saves it as an app your team opens by link.
### Write to an agent and leave
Ask for research that takes a while and close the tab. The agent keeps working, the answer lands in the conversation, and the bell tells you it is done.
### Your day, on one screen
Open the console to what your agents did, the calls waiting on you and the conversations to pick up again - with a tour of what they can do that is easy to miss.
### Agents that work as a team
A lead agent hands parts of a task to colleagues and writes up what they found - you see who it asked, and what each said.
### A real browser, right in the chat
Watch it click through sites, take over when a sign-in needs you, point at a spot to comment.
### Build, equip and test in one window
Switch tools on from illustrated cards, then give the draft a real job in the test chat beside them - here it charts a quarter's revenue against costs and reads the margin, before anyone else sees the agent.
### Apps, not just answers
An agent publishes a dashboard or a report as a page with a stable link and versions.
### 4,700+ MCP servers
Connect Notion, GitHub, Jira or your own server, and choose which tools each agent may call.
### Work in AgenticOS from Claude Code, Codex or Cursor
AgenticOS is an MCP server. Add it with one command and sign in through the browser: your coding assistant can list and run agents, read runs and what they cost, and search and fill knowledge bases, within what you allowed.
## 📸 See it in action
AgenticOS in two minutes. A recorded session: a chief of staff hands work to other agents, the Architect drafts a new agent for approval, a finance agent gets its tools, is tested and publishes a dashboard, another browses GitHub, and one reads Notion over MCP. Narrated with a synthetic voice. Watch (2:11)
## 💡 What is AgenticOS? **AgenticOS is an open-source (Apache-2.0), self-hosted layer for building, sharing and governing AI agents across a company.** Teams configure an agent in the browser by writing its instructions, choosing a model and switching on tools. They connect it to company documents and apps, and publish it to web chat, Slack, Mattermost, Telegram, a website widget or an API. Administrators control who can use each agent, what it may spend and which actions need a person's approval. Every run is recorded. Most agent frameworks give you a library, so every change to an agent's behaviour is a pull request, a review and a release. That is the wrong shape for the small agents a company actually wants, because the person who knows what the agent should say is not the person with commit access. **Code defines, configuration composes:** engineers extend what there is to assemble, and configuration can only ever reach what code registered. It runs on your own infrastructure with Docker Compose and works with 28 model providers, including your ChatGPT subscription and local models through Ollama and vLLM. Agents run on [Pydantic AI](https://ai.pydantic.dev) and [pydantic-ai-harness](https://github.com/pydantic/pydantic-ai-harness); the layer around them uses FastAPI, PostgreSQL with pgvector and Next.js. It is maintained by [Vstorm](https://vstorm.co). **Who it is for:** - Companies that want **an internal AI agent layer** they own, instead of per-seat assistants in a vendor's cloud. - Teams with **repeated work over documents and tools**, such as reports, support answers, contract checks and data analysis. - IT and security teams that need **data sovereignty, company sign-in, budgets, approvals and an audit trail** for AI agents. - Engineers who want **typed Python extension points** and a console their non-technical colleagues can use.
How it fits into your company. Illustrated people; the agents are examples.
**How AgenticOS fits into a company:** departments such as finance, operations or the board use shared agents in web chat, Slack or a private workspace. Your systems call agents through the API, and events or schedules start them automatically. Every request passes the same controls: roles, budgets, approvals, guardrails and a recorded run. Your data, vectors, code sandboxes, the credential vault and optional local models stay on your infrastructure. Hosted models, SaaS tools and document sources outside are used only when you configure them.
At a glance: 29 built-in capabilities · 8 places an agent answers · 28 model providers · 5 document sync sources · 4,700+ MCP servers · 29 tutorials.
## ✨ What you can do | For your team | What AgenticOS provides | |---|---| | [Work with files and code](#-work-with-files-and-code) | Analyze CSVs, produce charts and documents, work on repositories | | [Build reusable agents](#-build-agents-your-team-can-reuse) | Choose models and tools, publish versions, share agents with colleagues | | [Connect company knowledge](#-teach-agents-how-your-team-works) | Reuse skills, context and searchable documents across agents | | [Share the results](#-publish-results-as-interactive-pages) | Publish interactive pages with stable links and version history | | [Run and monitor](#-track-runs-costs-and-approvals) | Customize dashboards, inspect runs, schedule tasks and set budgets | | [Organize company access](#-organize-teams-with-roles-and-groups) | Combine roles, department groups and company sign-in | ## 🚀 Quick start Start with Docker Compose and access to a model provider. On macOS or Linux, run: ```bash curl -fsSL https://raw.githubusercontent.com/vstorm-co/agenticos/main/scripts/quickstart.sh | bash ``` On Windows, run the same command inside WSL2 with Docker Desktop's WSL2 integration switched on. The installer asks for a model provider and key, your login and an organization name, pulls the published images and starts a deployment with a working agent in it. A host with 4 vCPU and 8 GB of RAM runs it. Then open **http://localhost:3000** and sign in with the login you chose during installation. **Your first agent:** follow the [document-assistant walkthrough](https://vstorm-co.github.io/agenticos/howto/first-document-agent/) to upload a handbook, ask questions and check answers against cited sources. Then pick a next task from [29 tutorials](https://vstorm-co.github.io/agenticos/use-cases/), each with a sample input and a check you can run.
| Connect | How | Read |
|---|---|---|
| **Chat tools** | Publish an agent to Slack, Mattermost or Telegram, a website widget, a hosted page, the API or a WebSocket | [Channels](https://vstorm-co.github.io/agenticos/channels/) |
| **Business tools** | **4,700+ MCP servers** in the gallery (Notion, GitHub, Jira, HubSpot, Stripe…) and your own servers; choose which tools each agent may call | [MCP](https://vstorm-co.github.io/agenticos/mcp/) |
| **Documents** | Sync Google Drive, S3/MinIO, Git repositories, websites, SharePoint and OneDrive into knowledge bases | [Sync sources](https://vstorm-co.github.io/agenticos/howto/configure-sync-sources/) |
| **Events** | Start agents on a schedule, a new GitHub issue, a Gmail message or a signed webhook | [Routines](https://vstorm-co.github.io/agenticos/triggers/) |
| **Models** | 28 providers, your ChatGPT subscription, your cloud contract (Azure, Bedrock, Vertex) or local models (Ollama, vLLM) | [Models](https://vstorm-co.github.io/agenticos/models/) |
Registry listings are publisher-provided metadata; each connection needs its own setup and access review. Outlook email and calendar connect through a third-party MCP service. Logos identify connection options and do not imply a partnership.
## 🧩 Build, share and operate
### 🤖 Build agents your team can reuse
Choose an agent's model, instructions and tools in the browser. Publish a version for colleagues to use; inspect earlier versions and roll back when needed. Keep specialized agents for research, reporting, coding or operations in one catalog.
The agent builder has four areas: **(1)** the name and publishing status, where a draft stays private until you publish a version; **(2)** tabs for the toolbox, MCP servers, limits, availability and version history; **(3)** the instructions, written in plain language like a brief for a new colleague; and **(4)** the model, chosen per agent from your configured providers.
Colleagues can use a published agent in **web chat, Slack, Mattermost or Telegram** when those channels are configured, on a **website widget** or a **hosted page**, or through the **API** and **WebSocket**. [Build an agent](https://vstorm-co.github.io/agenticos/first-agent/) · [Connect a channel](https://vstorm-co.github.io/agenticos/channels/)
### 📂 Work with files and code
Ask an agent to analyze a spreadsheet, produce a chart, prepare a document or work on a repository. With a container-backed sandbox configured and command execution enabled, it can **read and edit files, run shell commands, and execute Python or JavaScript**. The bundled workbench includes data, charting and document tools, including LibreOffice.
If you use [Claude Code](https://code.claude.com/docs/en/overview) or [Codex](https://developers.openai.com/codex/cli/), the file-and-command workflow will feel familiar. AgenticOS brings that kind of work into a shared, self-hosted layer with company knowledge, reusable agents and organization access controls. What an agent can accomplish depends on its model, enabled tools and instructions. [Sandbox configuration](https://vstorm-co.github.io/agenticos/sandbox/)
### 🧠 Teach agents how your team works
- **Skills** hold reusable procedures: how to review code, write a report or research a market. Maintain them once and reuse them across agents.
- **Context** holds standing knowledge such as a glossary, policy or brand voice. Include it in the prompt or let the agent read it on demand.
- **Knowledge bases (RAG)** make uploaded documents searchable. Choose parsing options, inspect processing status and chunks, or sync them from a source listed below.
**How retrieval-augmented generation (RAG) works in AgenticOS:** documents are uploaded or synced from Google Drive, S3/MinIO, Git, websites, SharePoint or OneDrive. They are read by a parser: PyMuPDF and LiteParse run locally, with OCR for scans, while LlamaParse is a cloud service. Documents are then split into chunks, embedded with an OpenAI, OpenRouter or local Ollama model, and stored in PostgreSQL with pgvector. At question time the agent searches the vectors with filters and answers with citations.
[Skills](https://vstorm-co.github.io/agenticos/skills/) · [Context](https://vstorm-co.github.io/agenticos/context/) · [Document processing](https://vstorm-co.github.io/agenticos/file-processing/) · [Sync sources](https://vstorm-co.github.io/agenticos/howto/configure-sync-sources/)
### 🎨 Publish results as interactive pages
Agents can publish reports, interactive comparisons and small dashboards as **apps**. Choose who can open them; updates keep the same link and earlier versions remain readable. Public links can expire, require a password or restrict which sites may embed them. [Share an app](https://vstorm-co.github.io/agenticos/artifacts/)
### 📊 Track runs, costs and approvals
The dashboard answers six questions for a chosen period: how many runs there were, how many finished, what they cost and how many people used agents; how runs changed over time; what failed, waited for approval or was stopped by a budget; where runs came from; and which agents people actually use.
Customize the **dashboard** around your work. **Activity** lets you inspect runs and tool calls, compare agent versions and export records. **Budgets** per agent and organization are checked before each model request. **Approval policies** make sensitive tools wait for a person, and **routines** repeat work on schedules or events such as a new GitHub issue, a Gmail message or a signed webhook. [Run history, budgets and approvals](https://vstorm-co.github.io/agenticos/governance/) · [Routines](https://vstorm-co.github.io/agenticos/triggers/)
### 👥 Organize teams with roles and groups
**Roles define what people may do. Groups define who you share with.** Use roles such as Builder, Operator, Member and Viewer, then create departments or working groups such as Operations, Engineering, Finance and Research. Share an agent, skill, collection, context file or app with a group in one step, or limit it to chosen departments when you create it. [Departments and groups](https://vstorm-co.github.io/agenticos/departments/)
Bring existing company accounts through **OIDC single sign-on** (Entra ID, Okta, Keycloak and others), **LDAP directory login** or **Kerberos integrated Windows sign-in**. **Directory mappings** connect directory groups to a role and a group at sign-in. [Roles and permissions](https://vstorm-co.github.io/agenticos/permissions/) · [Directory sign-in](https://vstorm-co.github.io/agenticos/directory/)
## 🧭 Find your path
Building on it? Go to [For developers and operators](#-for-developers-and-operators).
Security is layered. Credentials sit in an envelope-encrypted vault. Code runs in isolated sandboxes. Published pages are sandboxed. Every organisation has a hash-chained audit log. Sessions are short-lived and revocable, and rate limits apply. Logs are redacted and data is swept on a retention schedule.
| Outbound destination | Used when | Local alternative |
|---|---|---|
| Model provider | Every agent run | Ollama, vLLM or LM Studio on your hardware |
| Embedding provider | Indexing and searching documents | Local Ollama embedding models |
| LlamaParse | Collections set to that parser | PyMuPDF or LiteParse, both local |
| Web search | Agents with web search enabled | Turn the capability off |
| MCP servers, chat channels | Only those you connect | Self-hosted servers, web chat |
| Logfire tracing | Only when a token is configured | Built-in run history |
- **Vault:** a data key per secret, wrapped per organization and key version; master keys rotate; values are never shown again.
- **Sandboxes:** the API holds no Docker socket; containers get no network unless needed, with CPU, process and time limits; gVisor optional.
- **Audit log:** hash-chained per organization, verifiable and exportable.
- **HIPAA profile:** [`deploy/profiles/hipaa/`](deploy/profiles/hipaa/) and `agenticos cmd doctor --profile hipaa` check a running deployment against the §164.312 technical safeguards. It is a configuration check, not a certification. [What it does not claim](https://vstorm-co.github.io/agenticos/security/#the-hipaa-profile-and-what-it-does-not-claim)
- **Stays with your IT:** disk encryption at rest, egress firewall, MFA through your identity provider (no native MFA, SAML or SCIM), and backups that include the vault key.
[Security and data flows](https://vstorm-co.github.io/agenticos/security/) · [Data protection](https://vstorm-co.github.io/agenticos/data-protection/) · [Secrets](https://vstorm-co.github.io/agenticos/secrets/) · [SECURITY.md](SECURITY.md)
[All tutorials](https://vstorm-co.github.io/agenticos/use-cases/). 24 have a reference run by the maintainers; they are starting points, not customer results.
**Where agents answer:** web chat, a website widget, a hosted page, the HTTP API, a streaming WebSocket, Slack, Mattermost and Telegram.
**Model providers:**
- **Hosted (22):** OpenAI, Anthropic, Google Gemini, OpenRouter, Mistral, DeepSeek, xAI, Cohere, Groq, Cerebras, Together, Fireworks, Hugging Face, GitHub Models, Alibaba, Moonshot, Z.AI, Nebius, OVHcloud, SambaNova, Heroku and Vercel AI Gateway.
- **Your subscription:** ChatGPT, through Codex, after one sign-in.
- **Through your cloud contract:** Azure OpenAI, AWS Bedrock and Google Vertex AI.
- **Self-hosted:** Ollama and LiteLLM, plus vLLM and LM Studio through an OpenAI-compatible endpoint.
## 🔐 Own your deployment, models and access
**Sovereign means control over deployment, model providers, data flows and agent access.** AgenticOS is Apache-2.0 software you can inspect, modify and operate.
There are two common setups. **Self-hosted, with hosted models:** AgenticOS, documents, vectors and logs run on your servers, and models come from a provider under your own contract and keys. **Fully local:** the same layer with open models through Ollama or vLLM on your hardware, plus local parsers and tools. Self-hosting the console does not make every model, parser or tool local, so review each destination you configure. [Configure models](https://vstorm-co.github.io/agenticos/models/) · [Security and data flows](https://vstorm-co.github.io/agenticos/security/)
## 🛠️ For developers and operators
AgenticOS is built with FastAPI, Pydantic AI, PostgreSQL with pgvector, Redis and Next.js. Engineers add capabilities, sync connectors and MCP catalog entries in typed Python; teams compose agents from the registered capabilities in the console.
| Layer | What runs there |
|---|---|
| Console | Next.js |
| API | FastAPI |
| Agent runtime | [Pydantic AI](https://ai.pydantic.dev) and [pydantic-ai-harness](https://github.com/pydantic/pydantic-ai-harness), one runner behind every surface |
| Background work | A job queue in PostgreSQL, served by `python -m app.worker` |
| Data | PostgreSQL with pgvector |
| Code execution | Containers started by `sandboxd` |
Call a published agent with `POST /api/v1/agents/{id}/run` as an authenticated member, or stream tokens over the WebSocket.
[Architecture](https://vstorm-co.github.io/agenticos/architecture/) · [API](https://vstorm-co.github.io/agenticos/api/) · [Add a capability](https://vstorm-co.github.io/agenticos/howto/add-capability/) · [Capability reference](https://vstorm-co.github.io/agenticos/reference/capabilities/) · [Contributing](https://vstorm-co.github.io/agenticos/help/)
The [operating-system analogy](https://vstorm-co.github.io/agenticos/about/) explains the architecture. The optional [desktop app](https://vstorm-co.github.io/agenticos/desktop/) adds a dedicated window, a pet and a macOS screenshot shortcut.
## ❓ Frequently asked questions