Parts of the system
Search2o has three parts: a cloud service, an agent server that runs in your enterprise, and the interfaces through which people and programs reach that agent server.
Search2o Cloud
The cloud service holds all state: accounts and users, agent definitions and drafts, configuration, conversation context, the search index, and the data behind the reports. It checks agent definitions, indexes the description a developer writes for a published agent, and answers searches. Only agent servers call the cloud's API. The Search2o license prohibits calling it directly, because a direct call can leave data inconsistent.
The agent server
The agent server, with the bundled UI, is a Python 3.12+ package installed with pip install search2o. It runs inside your enterprise and holds no state. At startup it loads the account's configuration, keeps that configuration current, and runs agents. Its REST API is described at /openapi.json, with Swagger UI at /docs and ReDoc at /redoc.
The server is asynchronous and needs nothing beyond its Python packages. Run one on a laptop, run one as a standalone server, or run several as a load-balanced cluster. No server holds state, so any server can serve any request.
Interfaces
Every interface is a client of the agent server's REST API. Four kinds are in use.
Browser chat
The bundled UI is a single-page application served by the agent server at /ui. What a person sees depends on their role. Users get search and conversations. Developers also get drafts, the editor with Draft with AI, validation and publishing, agent configuration and agent execution reports. Administrators also get users, authentication, system configuration and user reports. Owners get account settings and billing as well. A chat of your own can replace it, since it uses nothing but the REST API. See UI.
Chat applications
People can use agents from Slack, Microsoft Teams or Google Chat. Search2o provides the integration points; the bot that sits between the chat application and the agent server is written by your company. See Chat integrations.
Agent harness
An agent harness such as Claude Code, or any client that implements Agent Skills, uses your agents through one skill, search2o-skill. The assistant chooses which published agent runs, the agent runs on your agent server, and each person authenticates with their own integration token. See Skill integration.
REST client
Your own scripts, schedulers and applications call the same REST API the bundled UI uses. Every call under /api/ is an HTTP POST with a JSON body, and the API is described at /openapi.json on the agent server. See REST API and Creating your own client.

