How nickvasilescu/grokbot-clone works
Grokbot Clone is a self-hosted team of configurable Bots that work through chat, connected apps, and individual desktops. A user sends a task through the web app; server routes hand it to the agent loop, which builds context, calls the model, runs tools, and persists and streams progress. The product also supports Bot configuration and memory, groups and delegation, scheduled/event-driven work, computer viewing and control, and realtime voice. Edges reflect excerpts and README statements; unsampled subsystem links are included only where the README or source index supports them.
Main entry points: loop.ts Agent loop · App.tsx App shell · tools.ts Agent tools · routes.ts Server routes
Components 27
Web app
- App shell
web/src/App.tsx - Client state
web/src/store.ts - Chat interface
web/src/components/ChatView.tsx - Computer viewer
web/src/components/ComputerViewer.tsx - Bot configuration
web/src/components/config/BotSettingsModal.tsx - Tasks view
web/src/components/config/TasksView.tsx - Voice controls
web/src/voice/call.ts
Bot runtime
- Agent loop
server/src/agent/loop.ts - Agent tools
server/src/agent/tools.ts - Memory and context
server/src/agent/memory.ts
Work coordination
- Groups and subagents
server/src/agent/rooms.ts - Routines and triggers
server/src/routines.ts - Proactive check-ins
server/src/proactive.ts
Connected services
- Computer manager
server/src/computer.ts - Orgo computers
server/src/orgo.ts - Connected apps
server/src/composio.ts - Voice sessions
server/src/voice.ts
Server platform
- HTTP API
web/src/lib/api.ts - Server routes
server/src/routes.ts - Session auth
server/src/lib/auth.ts - Data and Bot store
server/src/store.ts - SQLite database
server/src/db.ts - Event hub
server/src/lib/hub.ts
Other components
- User
- Grok API
- Orgo service
- Composio service
Connections 36
- User → App shell: uses
README.md - App shell → Client state: loads state
web/src/App.tsx - App shell → Chat interface: renders
web/src/App.tsx - App shell → Computer viewer: renders
web/src/App.tsx - App shell → Bot configuration: opens settings
web/src/App.tsx - App shell → Tasks view: renders
web/src/App.tsx - Client state → HTTP API: fetches data
web/src/store.ts - Chat interface → Client state: uses state
web/src/App.tsx - Bot configuration → Client state: uses state
web/src/components/config/BotSettingsModal.tsx - Tasks view → Client state: uses state
web/src/components/config/TasksView.tsx - Voice controls → Voice sessions: starts calls
README.md - HTTP API → Server routes: sends requests
README.md - Server routes → Session auth: checks sessions
server/src/routes.ts - Server routes → Agent loop: starts task turns
server/src/routes.ts - Server routes → Connected apps: starts connections
server/src/routes.ts - Server routes → Routines and triggers: changes routines
server/src/routes.ts - Agent loop → Grok API: requests responses
README.md - Agent loop → Agent tools: executes tools
README.md - Agent loop → Memory and context: compacts context
server/src/agent/loop.ts - Agent loop → Connected apps: loads app tools
server/src/agent/loop.ts - Agent loop → Data and Bot store: reads and writes
server/src/agent/loop.ts - Agent tools → Computer manager: dispatches actions
server/src/agent/tools.ts - Agent tools → Connected apps: dispatches app actions
server/src/agent/tools.ts - Agent tools → Groups and subagents: delegates work
server/src/agent/tools.ts - Agent tools → Routines and triggers: manages routines
server/src/agent/tools.ts - Agent tools → Proactive check-ins: requests check-ins
server/src/agent/tools.ts - Groups and subagents → Agent loop: starts subagent work
- Routines and triggers → Agent loop: runs Bot tasks
README.md - Proactive check-ins → Agent loop: prompts primary Bot
README.md - Computer manager → Orgo computers: manages VM lifecycle
server/src/computer.ts - Orgo computers → Orgo service: provisions computers
README.md - Connected apps → Composio service: connects apps
README.md - Voice sessions → Agent loop: hands off tasks
README.md - Data and Bot store → SQLite database: persists state
server/src/store.ts - Data and Bot store → Event hub: emits updates
server/src/store.ts - Server routes → Event hub: streams events
server/src/routes.ts