How liyituo/venus works
Venus’s main workflow is a user request from a frontend to the llm_server harness, which uses an LLM and local/MCP tools to perform work; longer requests can become tracked background jobs. The README also documents team collaboration, a separate RAG service, and a Windows quota widget, so these appear as distinct branches. Some backend and integration wiring is based on README documentation because the corresponding source was not sampled; uncertain links are omitted.
Main entry points: llm_server.py LLM Server · rag_server.py RAG HTTP Service · app.py Quota Widget · worker_hub.py Worker Hub
Components 25
User Interfaces
- CLI
src/cli.py - VenusChat
src/venuschat_v1/app.py - Telegram Bot
src/telegram_bot.py
Agent Runtime
- LLM Server
src/llm_server.py - Agent Memory
src/agent_memory.py - Browser and Tools
src/browser_tools.py - MCP Manager
src/mcp_manager.py
Tasks and Teams
- Dispatch Router
src/dispatch_router.py - Async Jobs
src/agent_jobs.py - Schedules
src/schedule_store.py - Team Projects
src/team_collab.py - Project Versions
src/team_versions.py - Worker Hub
src/worker_hub.py - Remote Worker
src/remote_worker.py
Local Services
- Screen Daemon
src/app.py
Knowledge and Utilities
- RAG HTTP Service
RAG/rag_server.py - Chunking, Embedding, Retrieval
RAG/rag_core - RAG Collections
RAG/rag_core/store.py - Quota Widget
local-quota-widget/app.py - Codex and Cursor
local-quota-widget/providers - Widget Settings and Secrets
local-quota-widget/storage.py
Other components
- User
- OpenAI-compatible LLM
- MCP Services
- Ollama Embeddings
Connections 28
- User → CLI: sends request
- User → VenusChat: sends request
- User → Telegram Bot: sends request
- CLI → LLM Server: HTTP requests
- VenusChat → LLM Server: HTTP requests
- Telegram Bot → LLM Server: HTTP requests
- LLM Server → OpenAI-compatible LLM: requests completion
- LLM Server → Agent Memory: reads and updates
- LLM Server → Browser and Tools: dispatches tools
- LLM Server → MCP Manager: loads MCP tools
- MCP Manager → MCP Services: connects to
- LLM Server → Dispatch Router: routes work
- Dispatch Router → Async Jobs: creates async jobs
- LLM Server → Schedules: manages schedules
- Schedules → Async Jobs: creates due jobs
- LLM Server → Team Projects: serves team APIs
- Team Projects → Project Versions: manages project changes
- LLM Server → Worker Hub: includes worker routes
- Worker Hub → Async Jobs: creates worker jobs
- Remote Worker → Worker Hub: polls and submits
- Browser and Tools → Screen Daemon: controls screen
- User → RAG HTTP Service: submits documents or queries
- RAG HTTP Service → Chunking, Embedding, Retrieval: chunks and searches
- RAG HTTP Service → RAG Collections: reads and writes
- Chunking, Embedding, Retrieval → Ollama Embeddings: requests embeddings
- User → Quota Widget: views usage
- Quota Widget → Codex and Cursor: fetches quotas
- Quota Widget → Widget Settings and Secrets: loads and saves settings