项目处于 alpha 阶段,API 和 schema 可能随版本变化,需要稳定就固定 tag;运行真实任务还需额外配置沙箱提供商密钥和模型密钥;各子包需分别执行 bun install --frozen-lockfile,后端默认 :3201、前端默认 :3400。
useagent
useagenthqAGPL-3.0活跃维护开源自托管的 Devin 替代方案,在隔离的云端工作区里运行 Claude Code、Codex 或 OpenCode 等编码智能体,让自主编程任务安全可控。
The open-source Devin alternative. Run Claude Code, Codex or OpenCode in isolated cloud workspaces you can self-host.
git clone https://github.com/useagenthq/useagent.git && cd useagent
docker run -d --name useagent-pg -p 127.0.0.1:5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust pgvector/pgvector:pg16
export DATABASE_URL=postgres://postgres@localhost:5432/postgres
bun run dev:backend
bun run dev:frontendREADME 未说明 GPU 或显存要求;自托管需任意 Linux 主机,本地开发需 bun 和 Postgres 16+(含 pgvector),沙箱由 Daytona、CubeSandbox 或 Box 提供。
开源版 Devin 替代品,在可自托管的隔离云工作区里运行 Claude Code、Codex 等编码智能体
开源自托管的 Devin 替代方案,在隔离的云端工作区里运行 Claude Code、Codex 或 OpenCode 等编码智能体,让自主编程任务安全可控。
核心能力
- 为每个任务分配隔离 Linux 沙箱,可接管桌面和终端
- 用 Postgres 追加日志记录每步工具调用与审批,可回放
- 引擎可插拔,Claude Code、Codex、OpenCode、Pi 共用事件格式
- 密钥留在服务器,不进入智能体沙箱,可用已有 ChatGPT 套餐
- 支持从 Slack、Web、API、CLI、MCP 和定时任务发起工作
容易踩的坑
- native-runtime-c3a1dd480534Native runtime c3a1dd480534 (orchestrator V2)最新正式版2026-11-06 · 2026-11-06 10:41 UTC
Native runtime built from t3code fork commit c3a1dd480534347b5bfddfebd33aafd016d5b78b on upstream nightly v0.1.1-nightly.20261018.3315 (9c161462c94f7d9d6d9169da5c841457cbadf213, on upstream main), on top of native-runtime-42ef3397fa38. New since 42ef3397fa38, for OpenCode 2.1 and later (the sandbox moves to OpenCode 2.2.5): the message history of a compacted session decodes again (upstream t3code #22661, cherry-picked), and the compaction started and ended events, which OpenCode 2.1 sends without
recent, reach the thread instead of being skipped. Checked against a real OpenCode 2.2.5 server: every OpenCode call the runtime makes, and text, approval, question, file write, subagent, image read and compaction turns through the runtime's OpenCode adapter. - native-runtime-42ef3397fa38Native runtime 42ef3397fa38 (orchestrator V2)2026-10-19 · 2026-10-19 00:23 UTC
查看更新说明
Native runtime built from t3code fork commit 42ef3397fa38befec011b840c953adbff7c8770a on upstream nightly v0.1.1-nightly.20261018.3315 (9c161462c94f7d9d6d9169da5c841457cbadf213, on upstream main), on top of native-runtime-7a5654cc7499. New since 7a5654cc7499: with T3_PROVIDER_CONTINUATIONS=off the runtime refuses at dispatch any message a person did not send (pull request watch wakes, delegated questions and completions, an agent's request through T3's own tools); after a sandbox pause an OpenCode steer, and the note a declined permission steers in, wait behind the same tool-server gate as a prompt (a steer goes out anyway once the gate gives up, so it is never dropped). Codex client schema stays generated from Codex rust-v0.162.1. Dependency version 0.1.1-nightly.20261018.3315 (fff-node 0.11.0, node-pty 1.2.0-beta.15, keyring 1.3.0). Supersedes native-runtime-7a5654cc7499.
Assets:
- native-runtime-42ef3397fa38.tar.gz: server dist plus bundled client, T3_SOURCE_COMMIT and SHA256SUMS inside
- t3code-fork-42ef3397fa38.patch: the same changes as a diff against v0.1.1-nightly.20261018.3315
- native-runtime-7a5654cc7499Native runtime 7a5654cc7499 (orchestrator V2)2026-10-18 · 2026-10-18 22:44 UTC
查看更新说明
Native runtime built from t3code fork commit 7a5654cc7499e56dfbcddbb6061fd25bb077c884 on upstream nightly v0.1.1-nightly.20261018.3315 (9c161462c94f7d9d6d9169da5c841457cbadf213, on upstream main), 499 upstream commits past v0.1.0. All 22 fork commits of native-runtime-23456795847f are carried; upstream's two v0.1.0 release-branch commits are left out because main has them, and a fork commit makes the runtime report t3 v0.1.1-nightly.20261018.3315. Codex client schema stays generated from Codex rust-v0.162.1. Dependency version 0.1.1-nightly.20261018.3315 (fff-node 0.11.0, node-pty 1.2.0-beta.15, keyring 1.3.0). Supersedes native-runtime-23456795847f.
Assets:
- native-runtime-7a5654cc7499.tar.gz: server dist plus bundled client, T3_SOURCE_COMMIT and SHA256SUMS inside
- t3code-fork-7a5654cc7499.patch: the same changes as a diff against v0.1.1-nightly.20261018.3315
- native-runtime-be5e6f862275Native runtime be5e6f862275 (orchestrator V2)2026-10-16 · 2026-10-16 17:17 UTC
查看更新说明
Native runtime built from t3code fork commit be5e6f86227515d0d7bcce23bfb4c5fef89f1e9e, rebased onto upstream release v0.1.0 (81493efb71e8e8244f95d3e9f71d8369654ab151, 302 upstream commits past the previous base ed0f7b908b). Upstream's own release commits come first: "chore(release): prepare v0.1.0" (the runtime reports t3 v0.1.0) and its test fix #20068. The fork's commits are carried over; replay fixtures and tests now expect upstream's new Codex thread config (mcp_optional_startup_grace_ms), and the fork's own version-string commit is dropped because upstream's release commit sets it. New: on a host that turned continuations off (T3_PROVIDER_CONTINUATIONS=off) the runtime starts no work from restart continuation (which v0.1.0 turned on by default), whatever a project's override says, and its scheduler runs no due work (persisted scheduled tasks, usage-limit resumes). Codex client schema stays generated from Codex rust-v0.162.1. Dependency version 0.1.0 (fff-node 0.11.0, node-pty 1.2.0-beta.15, keyring 1.3.0). Supersedes native-runtime-5236b150bb78 and native-runtime-d8c046c1cf31, which were never deployed.
Assets:
- native-runtime-be5e6f862275.tar.gz: server dist plus bundled client, T3_SOURCE_COMMIT and SHA256SUMS inside
- t3code-fork-be5e6f862275.patch: the same changes as a diff against v0.1.0
- native-runtime-d8c046c1cf31Native runtime d8c046c1cf31 (orchestrator V2)2026-10-16 · 2026-10-16 16:30 UTC
查看更新说明
Native runtime built from t3code fork commit d8c046c1cf31223d227b925d5939cb4006a57e76, rebased onto upstream release v0.1.0 (81493efb71e8e8244f95d3e9f71d8369654ab151, 302 upstream commits past the previous base ed0f7b908b). Upstream's own release commits come first: "chore(release): prepare v0.1.0" (the runtime reports t3 v0.1.0) and its test fix #20068. The fork's commits are carried over; replay fixtures and tests now expect upstream's new Codex thread config (mcp_optional_startup_grace_ms), and the fork's own version-string commit is dropped because upstream's release commit sets it. New: a restart never continues interrupted work on a host that turned continuations off (T3_PROVIDER_CONTINUATIONS=off), whatever a project's override says; v0.1.0 turned that continuation on by default. Codex client schema stays generated from Codex rust-v0.162.1. Dependency version 0.1.0 (fff-node 0.11.0, node-pty 1.2.0-beta.15, keyring 1.3.0). Supersedes native-runtime-5236b150bb78, which was never pinned.
Assets:
- native-runtime-d8c046c1cf31.tar.gz: server dist plus bundled client, T3_SOURCE_COMMIT and SHA256SUMS inside
- t3code-fork-d8c046c1cf31.patch: the same changes as a diff against v0.1.0
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
UseAgent gives Claude Code, Codex, OpenCode and Pi a shared workspace with repositories, a terminal, a browser and your team's tools. Ask for research, a website, a spreadsheet or a code change from the web app, Slack or the API. Follow the work live, step in when you need to, and keep the files it makes.
Why teams pick UseAgent
It runs on your server. Self-host the whole thing on any Linux box. Your code, prompts and files stay where you put them, which is what compliance teams ask for first.
Every run is on the record. Postgres stores each step, tool call and approval as an append-only log. Replay any run, see who approved what, and survive a restart mid-task.
Use the accounts you already pay for. Run Codex on your ChatGPT plan, or bring API keys for any engine. Keys live on your server and never enter the agent's sandbox.
Swap the agent, keep everything else. Claude Code, Codex, OpenCode and Pi share one event format, so threads, files and memory carry over when you change engines.
Alpha software. UseAgent runs real daily workloads, but APIs and schemas can change between releases. Pin a tag if you need stability.
UseAgent and Devin
| Devin | UseAgent | |
|---|---|---|
| Source code | Closed | Open source (AGPL) |
| Where it runs | Cognition's cloud; enterprise plans can put the workspace in your VPC, the agent itself stays in Cognition's cloud | All of it on our cloud, your own servers, or your laptop |
| Which agent | Devin's own | Claude Code, Codex, OpenCode or Pi, side by side |
| Model bill | Paid through Devin | Your own keys, your ChatGPT plan for Codex, or free models |
| Record of the work | In Devin's app | Every step in your own Postgres, replayable |
UseAgent is not a new model, and not a proven replacement for every Devin workflow. It is the workspace around the agents you already use: a computer per task, your team's tools and context, and a full record of what happened.
Use the hosted app
No install, no credit card. Start here:
- Sign up at app.useagent.org with your email.
- Start a thread from the home page and say what you want done: a website, a research report, a spreadsheet, a fix in one of your repositories.
- Pick a model. Free models are always available. Choose one from the Free list in the model menu and go.
- Bring the plan you already have. Open Settings → Provider connections and connect your ChatGPT account to run Codex on your own plan. In India, the free ChatGPT Go plan works too.
- Add more models when you want them. Paste an API key in the same place. Keys are write-only and never enter the agent's sandbox.
Watch the agent work in its browser and terminal, answer it when it asks, and open the files it makes.
Features
A computer for every thread
Watch an agent research in a real browser, run commands, and work with your repositories. Open its desktop or terminal and take control when you need to. Daytona and CubeSandbox provide isolated Linux workstations with screen recording.
Teach it how your team works
Import skills from GitHub, pin a playbook to a task, and reuse the procedures that work. Skills are versioned, so a run records exactly what it used.
Context that carries forward
Keep knowledge, wiki pages, and optional team memory beside the work. Inspect recalled facts, correct them, and keep personal and organization memory separate.
Also in the workspace:
- Files you can use - documents, spreadsheets, presentations, PDFs, images, and videos. Supported workpieces have revisioned edits and native exports.
- Work from Slack - mention an agent, send attachments, and receive artifacts in the thread.
- Recurring work - schedule tasks, inspect their history, or run one immediately.
- Approval controls - gated tools pause for a decision and resume with a one-shot, argument-bound capability.
- Durable sessions - Postgres stores the event timeline; recovery re-probes live sessions after a restart.
Supported agents
One session UI and event format across engines. Connect a provider account or API key; the models, login methods and tools you get depend on the engine and your configuration. See the engine guide.
Integrations
| Surface | What's connected |
|---|---|
| Where work starts | Web app, Slack, email, REST API, CLI and MCP, schedules. Every channel enters through the same run door |
| Native | Slack (mentions, threads, delivery), GitHub (App auth, clones, PRs) |
| Via connectors | Gmail, Linear, Notion, HubSpot. OAuth runs through the broker and tokens stay sealed on the server |
| Workspace | Knowledge base, team memory, skills and playbooks, scheduled automations |
| Open for contributors | Discord, Telegram, Microsoft Teams, webhooks, a GitHub Action |
Get started
Hosted. Follow Use the hosted app above.
From source. You need bun and Postgres 16+ with pgvector. No Postgres handy? One container does it:
git clone https://github.com/useagenthq/useagent.git && cd useagent
docker run -d --name useagent-pg -p 127.0.0.1:5432:5432 \
-e POSTGRES_HOST_AUTH_METHOD=trust pgvector/pgvector:pg16
export DATABASE_URL=postgres://postgres@localhost:5432/postgres
for workspace in \
packages/agent-harness packages/artifact-workspace \
packages/agent-client packages/artifact-formats packages/sandbox-contract \
packages/conformance packages/cli \
backend frontend; do
(cd "$workspace" && bun install --frozen-lockfile)
done
bun run dev:backend # API and orchestration on :3201
bun run dev:frontend # UI on :3400 (proxies /api/* to the backend)
Running a real agent task also needs a sandbox provider key and a model key.
The setup guide walks
through both. bun run typecheck covers every package.
Self-hosting
UseAgent runs on any Linux host: AWS, Google Cloud, Azure or bare metal.
infra/self-host/ has the full guide, a
one-command reference host (Terraform) and the provider-agnostic
deploy-app.sh:
SERVER_IP=<host-ip> PG_PASSWORD=... OPENROUTER_API_KEY=... \
infra/self-host/deploy-app.sh /path/to/this/repo
Sandboxes are plugins: Daytona (managed, the easiest start),
CubeSandbox (runs on your own hardware for full data locality) or Box.
Docker Compose for a single machine is in
docs/operations/compose-releases.md.
Architecture
Three properties do the heavy lifting:
- The engine is a plug. Every engine speaks one event format through its adapter, so you can swap engines and keep your threads, files and memory.
- Every run is an event log. Postgres is the source of truth: runs survive backend restarts, replay exactly and stay inspectable afterwards.
- Credentials never enter the sandbox. The agent's computer is isolated. Every integration call crosses the trusted gateway as a typed tool, and the keys stay on your control plane.
| Path | What it owns |
|---|---|
frontend/ | Product UI: chat, sessions, skills, playbooks, wiki, artifacts, automations, settings |
backend/ | Control plane: auth, runs, sandboxes, engines, knowledge, memory, artifacts, connectors |
packages/ | Shared contracts: thread events, engine events, sandbox providers, the CLI |
docs-site/ | Documentation site: concepts, architecture, API, operations |
infra/self-host/ | Self-hosting on any provider, with a reference Terraform host |
memory/ | Optional team-memory service |
More in the documentation and the interactive request-flow diagram.
Hacktoberfest 2026
UseAgent is in Hacktoberfest. Pick an issue with
the hacktoberfest
label, comment that you're taking it, and open a pull request.
- New here? Start with
good first issue. - Want something bigger? The channel issues (Discord, Telegram, Microsoft Teams) build on the existing connector framework, with the email connector as a worked example.
- How it counts: merged, approved or
hacktoberfest-acceptedpull requests count. Low-effort pull requests are closed.
Read CONTRIBUTING.md before your first pull request.
Community
- Report a bug or request a feature
- Read the release notes
- Our sister project threads is an agent framework for TypeScript and Python built on the same idea: every run is a log you can replay.
License
UseAgent is free and open-source software under the GNU AGPL v3.0 (AGPL-3.0-only). You may use, modify and self-host it under the AGPL.
To embed UseAgent in proprietary software, distribute it without AGPL obligations, or build an OEM or white-label product, a commercial license is available.
Contributions are accepted under the CLA. The UseAgent name and logo are covered by the trademark policy, not the code license. Third-party components are listed in NOTICE; vendored and ported files carry per-file attribution headers.