Skip to main content
OpenNous Cloud and a self-hosted instance run the same open-source code. Cloud adds a private layer on top.

The same on both

  • The graph: identity resolution, observations, entities and claims
  • Accounts, People, Graph and Activity
  • Integrations, webhooks and automations
  • API keys, usage and settings
  • The full REST API and MCP server
  • Insights, over MCP and REST
  • RevBoxes and the Job Builder, which turns a chat into a RevBox job. On self-host it runs on your own model keys.

Cloud only

Cloud runs a private layer on top of the open-source code. In the Cloud codebase it lives in src/cloud/ folders in the API and the frontend; the open-source repository is that codebase without them. The layer contains:
  • The in-app agent: chat, routines, skills and the sandbox
  • Tasks
  • Reports
  • Forecasting
  • The Insights page. Insights themselves are read and written over MCP and REST on both.
  • The Slack connector and agent
  • Managed LinkedIn
  • Billing
  • The learned ICP scorer
  • Clerk sign-in
On a self-hosted instance, endpoints for Cloud-only features return 403 cloud_only_feature. The list lives in CLOUD_ONLY_FEATURES in apps/api/src/lib/access.mjs. The learned ICP scorer trains on your won and lost deals. A self-hosted workspace scores accounts with its own system and posts the results to POST /v2/scores. This is the default on self-host, so there is nothing to switch on.

Moving between them

Both use the same API and the same MCP server. To point an agent at a different instance, pass its API URL:
Without --url, the CLI and MCP server use Cloud at https://api.opennous.cloud.