How agentbull/ankole works
Ankole is an enterprise agent harness backed by a shared Company Brain. Its main workflow admits an event, schedules an addressable actor, runs a turn on an Agent Computer worker, routes model requests through the control plane, and preserves durable state and results. The README documents the boundaries and major capabilities; sampled source confirms actor serialization and browser-session dispatch, but most subsystem internals were not sampled, so uncertain internal wiring is omitted.
Main entry points: turn_execution.ts Agent Computer · session_controller.ex Actor Runtime · signals_gateway Signals Gateway · ankole Schedules
Components 18
Control and coordination
- Signals Gateway
app/control_plane/lib/ankole/signals_gateway - Schedules
app/control_plane/lib/ankole - Actor Runtime
app/control_plane/lib/ankole/signals_gateway/actor_runtime/session_controller.ex - Runtime Fabric
app/agent_computer/src/fabric/fabric.ts
Agent execution
- Agent Computer
app/agent_computer/src/worker/turn_execution.ts - Agent turn loop
app/agent_computer/src/core/agent-loop.ts - Agent tools
app/agent_computer/src/tools/computer/index.ts - Browser sessions
app/ankole-browser/src/daemon/session-manager.ts
Knowledge and models
- Company Brain
app/control_plane/lib/ankole/brain - AI Gateway
app/control_plane/lib/ankole/ai_gateway
Durable work
- Background and automation jobs
app/control_plane/lib/ankole/background_agent_jobs
User interfaces
- Operator Console
app/webapps/console/app.tsx - Sign-in UI
app/webapps/auth/app.tsx - Setup UI
app/webapps/setup/app.tsx
Other components
- People and events
- PostgreSQL
- Shared Agent Home
- AI providers
Connections 21
- People and events → Signals Gateway: sends events
- People and events → Schedules: configures work
- Signals Gateway → Actor Runtime: admits actor events
- Schedules → Actor Runtime: wakes actors
- Signals Gateway → Background and automation jobs: admits webhooks
- Schedules → Background and automation jobs: triggers jobs
- Actor Runtime → Runtime Fabric: dispatches execution
- Runtime Fabric → Agent Computer: carries actor traffic
- Agent Computer → Agent turn loop: runs turns
- Agent turn loop → Agent tools: invokes capabilities
- Agent tools → Browser sessions: uses browser
- Agent Computer → AI Gateway: requests AI
- AI Gateway → AI providers: routes provider calls
- Agent Computer → Shared Agent Home: uses workspaces
- Actor Runtime → PostgreSQL: persists actor state
- Background and automation jobs → PostgreSQL: persists job state
- People and events → Company Brain: supplies knowledge
- Company Brain → PostgreSQL: stores knowledge
- People and events → Operator Console: administers
- People and events → Sign-in UI: signs in
- People and events → Setup UI: configures platform