Skip to content

getomnico/omni

Repository files navigation

omni-logo-256 omni-logo-dark-256

Omni is an AI Agent Platform for the Workplace.

Connect your company’s apps, create a unified context layer over workplace knowledge, and deploy agents that can search, reason, and act across your organization.

DocumentationDeploymentFeaturesArchitecture

Omni Demo


What is Omni?

Omni is a self-hosted AI agent platform for the workplace.

It connects to tools like Google Drive, Gmail, Slack, Confluence, Jira, HubSpot, and internal file systems, indexes your company knowledge, and gives agents the context they need to answer questions, analyze information, and help employees get work done.

Instead of wiring every agent directly to every business system, Omni gives you a shared context and tool layer for workplace AI.

Features

  • Workplace AI Agents: Build agents that can search company knowledge, read documents, analyze data, and use tools to complete work.
  • Unified Context Layer: Index Google Drive/Gmail, Slack, Confluence, Jira, HubSpot, local files, websites, and more into one searchable knowledge layer.
  • Hybrid Search: Full-text BM25 search with ParadeDB and semantic search with pgvector, all inside Postgres.
  • Tool Use & Code Execution: Agents can execute Python and bash in a sandboxed container to inspect files, analyze data, and generate outputs.
  • Self-hosted by Design: Run Omni entirely on your own infrastructure. Your data stays within your cloud/on-prem environment.
  • Permission Inheritance: Respects source system permissions. Users only see data they're already authorized to access.
  • Bring Your Own LLM: Anthropic, OpenAI, Gemini, AWS Bedrock, Vertex AI, Azure AI Foundry, or any OpenAI-compatible endpoint (vLLM, Ollama, LM Studio, LiteLLM, etc.).
  • Simple Deployment: Docker Compose for single-server setups, Terraform for production AWS/GCP deployments.

Architecture

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 AI and LLM 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.

Deployment

Omni can be deployed entirely on your own infra. See our deployment guides:

Supported Integrations

Google Workspace

 
Google Drive
 
 
Gmail
 
 
Google Chat
 
Google Drive Gmail Google Chat

Microsoft 365

 
SharePoint
 
 
OneDrive
 
 
Outlook and Calendar
 
 
Teams
 
SharePoint OneDrive Outlook & Calendar Teams

Knowledge Base & Documents

 
Confluence
 
 
Notion
 
 
Nextcloud
 
 
Paperless-ngx
 
 
Web
 
 
Local Files
 
Confluence Notion Nextcloud Paperless-ngx Web Local Files

Communication & Meetings

 
Slack
 
 
Fireflies
 
 
IMAP
 
Slack Fireflies IMAP

Project Management & Engineering

 
Jira
 
 
GitHub
 
 
ClickUp
 
 
Linear
 
Jira GitHub ClickUp Linear

Business Apps

 
HubSpot
 
 
Google Ads
 
 
Darwinbox
 
HubSpot Google Ads Darwinbox

Build a Connector

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).

License

Apache License 2.0. See LICENSE for details.


About

Workplace AI Assistant and Search Platform

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages