Odysseus – self-hosted AI workspace
Recorded: May 31, 2026, 5:01 p.m.
| Original | Summarized |
GitHub - pewdiepie-archdaemon/odysseus: Self-hosted AI workspace. · GitHub Skip to content Navigation Menu Toggle navigation
Sign in
Appearance settings PlatformAI CODE CREATIONGitHub CopilotWrite better code with AIGitHub SparkBuild and deploy intelligent appsGitHub ModelsManage and compare promptsMCP RegistryNewIntegrate external toolsDEVELOPER WORKFLOWSActionsAutomate any workflowCodespacesInstant dev environmentsIssuesPlan and track workCode ReviewManage code changesAPPLICATION SECURITYGitHub Advanced SecurityFind and fix vulnerabilitiesCode securitySecure your code as you buildSecret protectionStop leaks before they startEXPLOREWhy GitHubDocumentationBlogChangelogMarketplaceView all featuresSolutionsBY COMPANY SIZEEnterprisesSmall and medium teamsStartupsNonprofitsBY USE CASEApp ModernizationDevSecOpsDevOpsCI/CDView all use casesBY INDUSTRYHealthcareFinancial servicesManufacturingGovernmentView all industriesView all solutionsResourcesEXPLORE BY TOPICAISoftware DevelopmentDevOpsSecurityView all topicsEXPLORE BY TYPECustomer storiesEvents & webinarsEbooks & reportsBusiness insightsGitHub SkillsSUPPORT & SERVICESDocumentationCustomer supportCommunity forumTrust centerPartnersView all resourcesOpen SourceCOMMUNITYGitHub SponsorsFund open source developersPROGRAMSSecurity LabMaintainer CommunityAcceleratorGitHub StarsArchive ProgramREPOSITORIESTopicsTrendingCollectionsEnterpriseENTERPRISE SOLUTIONSEnterprise platformAI-powered developer platformAVAILABLE ADD-ONSGitHub Advanced SecurityEnterprise-grade security featuresCopilot for BusinessEnterprise-grade AI featuresPremium SupportEnterprise-grade 24/7 supportPricing Search or jump to... Search code, repositories, users, issues, pull requests...
Search Clear
Search syntax tips Provide feedback Include my email address so I can be contacted Cancel Submit feedback Saved searches
Name Query To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up
Appearance settings Resetting focus You signed in with another tab or window. Reload to refresh your session. Dismiss alert pewdiepie-archdaemon odysseus Public
Notifications
Fork
Star Code Issues Pull requests Actions Projects Security and quality Insights
Additional navigation options
Code Issues Pull requests Actions Projects Security and quality Insights
mainBranchesTagsGo to fileCodeOpen more actions menuFolders and filesNameNameLast commit messageLast commit dateLatest commit History4 Commits4 Commitsconfig/searxngconfig/searxng corecore dockerdocker docsdocs licenseslicenses mcp_serversmcp_servers routesroutes scriptsscripts servicesservices srcsrc staticstatic teststests .dockerignore.dockerignore .env.example.env.example .gitignore.gitignore ACKNOWLEDGMENTS.mdACKNOWLEDGMENTS.md DockerfileDockerfile LICENSELICENSE README.mdREADME.md ROADMAP.mdROADMAP.md SECURITY.mdSECURITY.md app.pyapp.py docker-compose.ymldocker-compose.yml install-service.shinstall-service.sh odysseus-ui.serviceodysseus-ui.service package-lock.jsonpackage-lock.json package.jsonpackage.json pyproject.tomlpyproject.toml requirements-optional.txtrequirements-optional.txt requirements.txtrequirements.txt setup.pysetup.py View all filesRepository files navigationREADMEMIT licenseSecurityOdysseus A self-hosted AI workspace -- meant to be the self-hosted version of the UI experience you get from ChatGPT and Claude. But with more jank and fun. Running on your own hardware, with your own data -- local-first, privacy-first, and no trojan. Chat -- chat with any local model or API; adding them is super simple. vLLM · llama.cpp · Ollama · OpenRouter · OpenAI Demo Deep Research Compare Documents Notes & Tasks Quick Start The Cookbook model catalog check should print a non-zero count. If it prints # Arch # Fedora Keep AUTH_ENABLED=true for any network-accessible deployment. Putting it behind HTTPS Variable LLM_HOST LLM_HOSTS OPENAI_API_KEY SEARXNG_INSTANCE AUTH_ENABLED LOCALHOST_BYPASS DATABASE_URL CHROMADB_HOST CHROMADB_PORT EMBEDDING_URL Bundled services ChromaDB → vector store for semantic memory. In Docker, Odysseus connects to chromadb:8000; from the host it is exposed as localhost:8100. Optional external services Ollama → local LLM server -- ollama.ai Architecture Data About Self-hosted AI workspace. Readme MIT license Security policy Security policy Uh oh! There was an error while loading. Please reload this page. Activity 1.9k 30 290 Report repository Releases Packages
Uh oh! There was an error while loading. Please reload this page. Contributors Uh oh! There was an error while loading. Please reload this page. Languages JavaScript Python CSS HTML Shell TypeScript
Footer © 2026 GitHub, Inc. Footer navigation Terms Privacy Security Status Community Docs Contact Manage cookies Do not share my personal information You can’t perform that action at this time. |
Odysseus is presented as a self-hosted artificial intelligence workspace designed to deliver a local-first, privacy-first user experience analogous to platforms like ChatGPT and Claude, emphasizing running entirely on local hardware with data remaining private. The system is designed to integrate various AI and operational features into a cohesive environment. The core functionality of Odysseus encompasses several advanced capabilities. It supports direct chat with local models or external APIs, integrating frameworks such as vLLM, llama.cpp, Ollama, OpenRouter, and OpenAI. Advanced agent capabilities are provided, allowing users to equip agents with tools to execute complex tasks autonomously, built upon underlying systems like opencode, MCP, web access, file handling, shell access, skills, and memory. A feature known as the Cookbook assists in hardware awareness by scanning the system to recommend and facilitate the download and serving of appropriate models, utilizing metrics like llmfit and VRAM awareness with formats such as GGUF, FP8, and AWQ, alongside vLLM and llama.cpp serving technologies. Deep research capabilities enable multi-step processes for gathering, reading, and synthesizing information from sources into comprehensive visual reports, adapted from methodologies like Tongyi DeepResearch. Other features include a comparison tool for side-by-side model testing, a document editor supporting markdown, HTML, and various formatting, and integrated memory and skills management, which utilize ChromaDB and fastembed for vector and keyword retrieval, allowing the agent to evolve its understanding through persistent memory. Furthermore, Odysseus includes features for managing communication, such as an integrated email inbox that features AI triage for summarization, tagging, routing, and auto-drafting responses, as well as local-first calendar synchronization via CalDAV. It is engineered to be responsive, functioning effectively on mobile devices through a Progressive Web App (PWA). The deployment of Odysseus is facilitated through several methods, with Docker Compose being the recommended approach. This method provisions essential bundled services automatically, including ChromaDB for semantic memory, SearXNG for web search, and ntfy for local notifications. Manual installation options exist for Linux, macOS, and Windows, which require installing dependencies like Python and tmux. The system architecture is structured around several key components, including the FastAPI entry point in app.py, core functionalities concerning authentication, databases, and middleware, and service modules for memory, search, and hardware fitting. All sensitive user data, including sessions, messages, documents, and configuration files, is stored in the data directory and is intentionally excluded from version control systems like Git. Security considerations are paramount, stressing the need to treat Odysseus as an administrative console due to its access to powerful local tools, shell access, and API token management. The system strongly advises keeping AUTH_ENABLED true for network access and prohibits direct exposure to the public internet without employing a TLS-terminating reverse proxy, such as Caddy, to encrypt communication and mitigate cleartext transmission of login credentials and tokens. Access control is granular; non-admin users are restricted from privileged operations like model serving or MCP management, ensuring that access to sensitive routes and tools is gated by user privileges. Various configuration variables allow granular control over external integrations, such as specifying LLM hosts, search instances, and embedding endpoints. The repository structure reflects this modular design, separating the application logic, core services, dynamic content, and data storage to maintain a clean separation of concerns. |