The open-source AI agent for your company.
Omni works across the tools your company already uses. It gathers relevant context, analyzes information, and carries out tasks while respecting existing permissions.
Website • Documentation • Deployment • Features • Architecture
Omni is an open-source, self-hosted AI agent for company-wide work.
It connects to tools like Google Drive, Gmail, Slack, Confluence, Jira, HubSpot, and internal file systems. Employees can ask Omni to investigate an issue, prepare an update, analyze company data, find information, or carry out supported actions across these systems from one conversation.
Omni brings the agent runtime, company context, tool access, model support, and source permissions into one system your team can deploy and operate.
- Cross-Tool Task Execution: Gather context and carry out supported actions across connected company systems.
- Permission-Aware Company Context: Keep indexed information scoped by the permissions inherited from each source system.
- Grounded Answers with Citations: Answer questions using company context and show the sources behind each response.
- Hybrid Search and Retrieval: Full-text BM25 search with ParadeDB and semantic search with pgvector, all inside Postgres.
- Tool Use and Sandboxed Code Execution: Run Python and bash in an isolated environment to inspect files, analyze data, and generate outputs.
- Workplace Connectors: Connect Google Workspace, Microsoft 365, Slack, Jira, Confluence, HubSpot, and other company systems.
- Use the Models You Choose: Anthropic, OpenAI, Gemini, AWS Bedrock, Vertex AI, Azure AI Foundry, or any OpenAI-compatible endpoint (vLLM, Ollama, LM Studio, LiteLLM, and others).
- Self-Hosted by Design: Run Omni entirely in your cloud, on-premises, or in an isolated environment.
- Simple Deployment: Use Docker Compose for single-server deployments or Terraform for production deployments on AWS and GCP.
- Extensible with MCP and Connector SDKs: Connect MCP tools or build company-specific integrations in Python or TypeScript.
Omni uses Postgres (ParadeDB) as the core data layer for BM25 full-text search, pgvector semantic search, and application data.
No Elasticsearch. No dedicated vector database. One database to tune, backup, monitor, and operate.
Core services are written in Rust for search, indexing, and connector orchestration; Python for the agent runtime and model orchestration; and SvelteKit for the web frontend. Each connector runs as its own lightweight container, allowing integrations to use different languages and dependencies without affecting the rest of the system.
The agent runtime can execute code in a sandboxed container on an isolated Docker network, with no access to internal services or the internet. It uses Landlock filesystem restrictions, resource limits, and a read-only root filesystem.
See the full architecture documentation for more details.
Omni can be deployed entirely on your own infra. See our deployment guides:
| |
|
|
| Google Drive | Gmail | Google Chat |
| |
|
|
|
| SharePoint | OneDrive | Outlook & Calendar | Teams |
| |
|
|
|
|
|
| Confluence | Notion | Nextcloud | Paperless-ngx | Web | Local Files |
| |
|
|
| Slack | Fireflies | IMAP |
| |
|
|
|
| Jira | GitHub | ClickUp | Linear |
| |
|
|
| HubSpot | Google Ads | Darwinbox |
Use the Connector SDK to build your own integrations with Omni.
See CONTRIBUTING.md for development setup and guidelines.
If you use Claude Code, this repo includes a skill to help build connectors. Run /build-connector <service name> (e.g., /build-connector Asana).
Apache License 2.0. See LICENSE for details.