AutoAgent is an open-source, provider-agnostic developer agent platform with guarded execution and context-efficient orchestration.
- BYOK model access via OpenAI-compatible provider interfaces
- Policy-gated tool execution for safer autonomy
- Repo-aware context compiler and history selection
- Evaluation-driven optimization for quality, cost, and safety
- Desktop-first Electron operation with local control-plane services
apps/control-plane: API orchestration and run lifecycleapps/runner: sandboxed execution workerapps/web: desktop Electron app (Vite + React renderer)packages/protocol: typed platform contractspackages/provider-sdk: provider abstraction layerpackages/context-engine: context compilation pipelinepackages/policy-engine: action policy and approval gatespackages/evals: scoring and optimization workflowsinfra: deployment referencesdocs: security and contributor documentation
- Install dependencies:
pnpm install
- Start control-plane API:
pnpm --filter @autoagent/control-plane dev
- Start desktop app:
pnpm --filter @autoagent/web dev
- On first launch, complete onboarding:
- configure
openai-compatibleprovider metadata - save ChatGPT key securely
- run chat + repo trial steps
- configure
- In the Electron window, navigate:
- Dashboard, Runs, Approvals, Traces, Settings, Providers
- Click
Playfrom Dashboard to run a guarded execution test.
- Build desktop binaries:
pnpm --filter @autoagent/web dist
- Build unpacked app directory:
pnpm --filter @autoagent/web package
- Dashboard stats:
curl http://localhost:8080/api/dashboard/stats
- Runs list:
curl http://localhost:8080/api/runs
- Create run:
curl -X POST http://localhost:8080/api/runs -H "Content-Type: application/json" -d "{\"projectId\":\"demo\",\"objective\":\"first test\"}"
- Approvals list:
curl http://localhost:8080/api/approvals
- Providers list:
curl http://localhost:8080/api/providers
- Provider get:
curl http://localhost:8080/api/providers/openai-default
- Control-plane data persists in SQLite:
~/.autoagent/control-plane.db - Context/index data persists in SQLite:
~/.autoagent/context.db
- Create a timestamped backup:
pnpm --filter @autoagent/control-plane db:backup
- Create backup to a specific file path:
pnpm --filter @autoagent/control-plane db:backup "C:/temp/control-plane-backup.db"
- Restore from a backup file:
pnpm --filter @autoagent/control-plane db:restore "C:/temp/control-plane-backup.db"
- Recommended restore flow:
- stop
@autoagent/control-planeprocess, - run restore command,
- restart control-plane and verify
GET /api/dashboard/stats.
- stop
- Retention settings are in
/api/settings:traceRetentionDaysartifactRetentionDayspromptRetentionDayspromptCacheRetentionDayscleanupIntervalMinutes
- Cleanup executes on control-plane startup and then on a fixed interval.
- Built-in coding tools now include:
edit_filesearch_codeglob_filesgit_status,git_diff,git_add,git_commit(guarded subset)
run_commandnow uses async process execution with timeout and abort handling.- Run timeline supports incremental assistant deltas for streaming-like UX.
- Optional file at repo root:
.autoagent.json - Supported fields:
toolAllowlist(array of tool names)preferredModelmaxTokenscontextHistoryMaxMessagescontextSummaryMaxChars