How davidondrej/cloudroom-core works
Cloudroom Core is a self-hostable service for running coding agents on a Linux VM and retaining their session histories. The main workflow is an authenticated client request through the HTTP API into session management, which starts or controls a harness runtime and records session events. The README also describes account management, workspaces, previews, Mac access, and diagnostics. Paths identify the relevant modules; some subsystem wiring is inferred only from documented capabilities because those sources were not sampled.
Main entry points: api/mod.rs HTTP API · session/mod.rs Session manager · runtime/mod.rs Harness runtime · workspace/mod.rs Workspace management
Components 21
Service and sessions
- HTTP API
src/api/mod.rs - Session manager
src/session/mod.rs - Account management
src/session/accounts.rs - Workspace management
src/workspace/mod.rs - Service config
src/config.rs
Agent execution
- Harness runtime
src/runtime/mod.rs - Harness adapters
src/runtime/claude.rs - Process control
src/runtime/process.rs
State and diagnostics
- Session journal
src/session/outbox.rs - Workspace storage policy
src/workspace/storage.rs - Observability
src/observability/mod.rs - Metric history
src/observability/metrics.rs
Client integrations
- Preview access
src/preview/mod.rs - Preview client
src/preview/client.py - Mac access
src/mac/mod.rs - Settings and auth sync
src/sync/client.py - TypeScript client
integrations/bb/client.ts
Other components
- User or GUI
- Coding agent
- PostgreSQL history store
- Model providers
Connections 20
- User or GUI → HTTP API: sends requests
- HTTP API → Session manager: dispatches session commands
- HTTP API → Account management: handles account routes
- HTTP API → Workspace management: handles workspace routes
- HTTP API → Observability: records API signals
- Session manager → Harness runtime: starts and controls
- Harness runtime → Harness adapters: selects adapter
- Harness runtime → Process control: drives processes
- Process control → Coding agent: launches
- Coding agent → Model providers: makes model calls
- Session manager → Session journal: appends session events
- Session journal → PostgreSQL history store: uploads history
- Workspace management → Workspace storage policy: checks storage policy
- Observability → Metric history: records and reads metrics
- HTTP API → Preview access: serves preview routes
- Preview client → HTTP API: requests preview access
- HTTP API → Mac access: serves Mac routes
- Settings and auth sync → HTTP API: syncs settings and auth
- TypeScript client → HTTP API: calls session API
- Session manager → Service config: uses harness configuration