Skip to main content
Hybrid mode runs the service on your machine (or a VPS) for channel processing, while tasks and contacts are stored in the cloud for team access.

What you get

  • Service processes channels locally — messages never leave your machine
  • Tasks and contacts persist in Supabase via the cloud API
  • Team members access shared data through the cloud web UI or mobile app
  • API token (PAK) authentication between service and cloud

Setup

1
Deploy the cloud
2
Deploy the cloud component to Vercel or your hosting platform of choice. Set up a Supabase project and run the migrations in cloud/supabase/migrations/.
3
Create an API token
4
Sign in to the cloud web UI, go to Settings, and create a new API token. Copy the token — it starts with obk_.
5
Configure the service
6
BACKEND=remote
REMOTE_API_URL=https://your-cloud-url.vercel.app
REMOTE_API_TOKEN=obk_your-token-here
REMOTE_TEAM_ID=your-team-uuid
OPENROUTER_API_KEY=sk-or-v1-your-key
OPENROUTER_MODEL=anthropic/claude-sonnet-4
7
Start the service
8
cd service
npm install && npm run dev

How data flows

  • Messages are stored locally in SQLite (they never leave the service)
  • Tasks and contacts are created and updated via HTTP calls to the cloud API
  • The cloud API enforces team-scoped access using the PAK token and X-Team-Id header
  • The cloud can push events back to the service via SSE (e.g., Gmail notifications)

When to use this mode

  • Teams that want shared task management
  • When channel credentials must stay on a local or private machine
  • When you need the cloud web UI and mobile app access