Architecture of pewdiepie-archdaemon/odysseus
pewdiepie-archdaemon/odysseus is 2,507 source files holding 29,621 symbols across 15 modules, written mainly in Python, JavaScript, Shell. The largest module is tests, with 1,430 files, and 5 files are entry points into the dependency graph.
How odysseus fits together
Input enters through app.py, an entry point that serves the HTTP API, and through static/app.js, the browser-side entry point. The routes module assembles the route modules and provides shared helpers, sitting between the web framework and the rest of the codebase. The agent execution loop lives in src/agent_loop.py, which drives calls to models and tools. The core module holds shared persistence primitives such as models and database utilities, along with the session management that routes rely on. Email, image generation, memory and RAG retrieval are provided as separate MCP servers under mcp_servers, and the results are returned to users as generated pages, documents, sessions and interactive UI surfaces.
Largest modules
- tests: 1,430 files and 183,437 lines of code
- static: 272 files and 145,472 lines of code
- src: 207 files and 120,598 lines of code
- scripts: 176 files and 40,996 lines of code
- routes: 90 files and 45,575 lines of code
- services: 51 files and 10,903 lines of code
- frontend: 43 files and 5,556 lines of code
- core: 11 files and 4,606 lines of code
Languages
By file count: Python 1,835 files, JavaScript 448 files, Shell 17 files, Swift 3 files, Dockerfile 1 file, TypeScript 1 file.
Documentation
Repowise documents odysseus in 2,663 pages generated from the source, 29 of them written explanations of the repository and its modules. Module guides include:
- routes/admin_wipe: Admin Wipe and Comparison
- src/agent_tools: Agent Tool Interfaces
- static/js/calendar: Calendar Frontend Modules
More on odysseus: summary and FAQ, codebase overview, code health.
Related guide: Best dependency graph tools for monorepos