The open-source AI workbench for teams.
Self-hosted. Real Docker sandboxes — not prompt wrappers.
English | 中文
# 1. Download & extract
curl -fsSL https://raw.githubusercontent.com/oinone/ainowork/refs/heads/master/docker/ainowork-starter.zip -o ainowork-starter.zip
unzip ainowork-starter.zip && cd ainowork-starter
# 2. Start
bash start-mac.sh # or start-linux.sh / start-win.ps1
# 3. Open https://localhost:3000
# 4. Log in: admin@ainowork.dev / admin123456
# 5. Add an LLM provider and start a conversationPrerequisites: Docker + Docker Compose v2.24+, 8 GB+ RAM.
AinoWork serves two audiences with one platform:
Employees using personal AI accounts creates data leak risks, and expertise walks out the door when people leave.
- Data stays yours. Deploy on-premises, in your VPC, or air-gapped. Conversations and code never leave your infrastructure.
- Bring your own keys. Use your own LLM API keys — OpenAI, Anthropic, or any OpenAI-compatible endpoint. No vendor lock-in.
- Skills as assets. Turn repeatable tasks into shared skills. One person builds it, the whole team reuses it.
Most AI coding tools are either chat-only UIs (great conversation, can't touch your code) or IDE plugins (local-only, single-user). AinoWork gives AI agents a real isolated environment — a Docker container with filesystem, shell, browser, and git — that you collaborate with through a web workbench.
- Real sandbox isolation. Every agent session gets a full Docker container. The agent can read, write, execute, and break things without affecting your machine.
- Built-in git workflow. Clone repos, browse files, view diffs, stage, commit, and push — all from within a conversation.
- Browser automation. Agents drive a real Chromium browser via VNC inside the sandbox.
- WebSocket terminal. Drop into a live shell inside the agent's sandbox anytime.
- 200+ LLM models. OpenAI, Anthropic, and any OpenAI-compatible endpoint. Per-user provider configuration.
- Skill marketplace. Install skills from community repositories — build once, reuse everywhere.
- 48 visual themes. 8 accent colors × 2 modes × 3 density levels.
- Full i18n. Chinese and English, from UI to agent conversations.
Personal cloud AI tools make one person faster. AinoWork gives your whole team a shared, self-hosted AI workspace.
| Dimension | Generic Cloud Agent | AinoWork |
|---|---|---|
| Deployment | SaaS-only, on vendor's cloud | ✓ Self-hosted / on-premises / VPC |
| Data ownership | Hosted on vendor infrastructure | ✓ Stays inside your environment |
| Model control | Locked to platform provider | ✓ Bring your own keys, multi-model |
| Who pays | Individual employees | ✓ Team / enterprise |
| Knowledge retention | Locked in personal accounts, lost on departure | ✓ Retained as shared team skills |
* "Generic Cloud Agent" refers to the category of personal AI tools, not any specific product.
| Category | Capabilities |
|---|---|
| AI Agent Workspace | Multi-turn conversations, tool calling, goal mode, conversation undo, real-time SSE streaming |
| Docker Sandbox | Isolated per-session containers with filesystem, shell, and network; MCP connections run inside sandbox |
| MCP Server Management | CRUD for Model Context Protocol server connections with tool discovery, test, and JSON import |
| File & Git Management | File browser + git status, diff, stage, commit, branch, push/pull, merge |
| Browser Automation | VNC-based Chromium control within sandbox |
| WebSocket Terminal | Live interactive shell into the agent's sandbox |
| LLM Usage Billing | Token usage tracking and visualization with per-organization dashboards and user-level drill-down |
| Self-Hosted | Deploy on-premises, in your VPC, or air-gapped — data never leaves |
| Skill Marketplace | Shareable, reusable AI skills — build once, use across the organization |
| Scheduled Tasks | Recurring AI-powered tasks with execution history and batch management |
| Conversation Memory | SessionDB-based browser for exploring and managing agent conversation history |
| AI Memory | Persistent memory across sessions for contextual agents |
| RBAC | Role-based access control with user management |
| End-to-End Encryption | Request/response body encryption between frontend and backend |
AinoWork follows a three-tier web architecture:
- Frontend (React 19 + Vite) communicates with the backend via REST, SSE streams, and WebSockets. It provides the chat interface, file browser, terminal, VNC viewer, and admin panels.
- Backend (Python FastAPI) handles authentication, session management, RBAC, and orchestrates AI agent conversations. It manages sandbox containers via the Docker API and persists data in PostgreSQL and Redis.
- Sandbox (Docker containers) are ephemeral Linux environments created per agent session — each with its own filesystem, shell, git client, and headless Chromium.
- AI Engine (Hermes Agent) runs in-process within the backend, handling LLM interaction, tool dispatch, and agent memory. The AI Engine executes tools — code, shell commands, browser automation, git operations — inside the Sandbox.
The backend uses an SPI (Service Provider Interface) module system — 29 pluggable modules auto-register at startup. Adding a new feature means adding a module, no central registry to touch.
AinoWork is built on Hermes Agent (MIT license, v0.16.0), an open-source LLM agent framework from Nous Research. Hermes Agent provides the core AI engine — tool calling, multi-turn conversation orchestration, agent memory, and sandboxed execution. AinoWork layers on the web platform, multi-tenant workspaces, RBAC, persistence, real-time streaming, and the skill marketplace.
We are grateful to the Hermes Agent team for building such a capable foundation.
We welcome contributions! Please ensure:
- Pre-commit hooks pass (linting, formatting, type checking)
- Follow existing code conventions and the SPI module pattern (see
backend/CLAUDE.md) - One logical change per commit
- Test your changes before submitting
For local development:
- Python 3.12+
- Node.js 18+ with pnpm
- Docker and Docker Compose
git clone https://github.com/oinone/ainowork.git
cd ainoworkcd backend
cd docker-infra && docker compose up -d && cd - # start PG + Redis
cp .env.dev .env # dev defaults
uv sync # install dependencies
source .venv/bin/activate
uvicorn app.main:app --host 0.0.0.0 --port 3003
.env.devships with development defaults that work out of the box with thedocker-infra/docker-compose.ymlmiddleware services.
cd frontend
pnpm install
pnpm dev # https://localhost:5170, proxies /api → 127.0.0.1:3003Start using AinoWork at www.ainowork.ai.
Scan the QR code to add Oinone Assistant on WeChat for API Key applications, technical support, and business cooperation inquiries.
Follow the AinoWork official WeChat account for the latest updates, release notes, and community highlights.
For partnerships, media, or other inquiries: cpc@shushi.pro
AinoWork is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). See LICENSE for the full license text.
If you modify this software and make it available as a network service, you must also make the shared source code available to users of that service under the terms of the AGPL v3.
⭐ If AinoWork is useful to you, star us on GitHub — it helps others discover the project.


