How prolet1966/qq-agent-for-linux works
QQ-Agent is a Linux desktop QQ group AI bot: QQ messages arrive through the OneBot v11/SnowLuma connection, are handled by the agent, and replies or scheduled messages are sent back to chats. Its central workflow combines conversation orchestration, OpenAI-compatible model access, and registered skills/plugins; the desktop console provides configuration and session controls. The map also preserves the documented knowledge, memory, media, search, and scheduling capabilities. README and sampled excerpts support the broad boundaries, but most runtime wiring was not sampled, so uncertain internal call edges are omitted.
Main entry points: orchestrator.js Conversation Orchestrator · store.js Agent Data · server.js HTTP API · onebot.js OneBot Adapter
Components 23
Desktop and API
- Electron Shell
electron/main.js - Web Console
ui/app.js - HTTP API
src/server.js - API Routes
src/routes.js
Agent Runtime
- OneBot Adapter
src/onebot.js - Conversation Orchestrator
src/orchestrator.js - Model Access
src/llm.js - Prompt Assembly
src/prompt.js - Message Sender
src/sender.js - Agent Data
src/store.js
Skills and Plugins
- Skill Manager
src/skills/manager.js - Plugin Loader
src/plugin-loader.js - Skills
skills - Plugins
plugins
Conversation Capabilities
- Schedules
skills/schedule/index.js - Timed Messages
skills/timed-message/index.js - Knowledge Growth
plugins/kb-growth/index.js - Conversation Memory
plugins/conversation-memory/index.js - Search Aggregation
plugins/search-aggregator/index.js - Media Download
plugins/media-download/index.js
Other components
- Operator
- Linux QQ
- SnowLuma
Connections 24
- Operator → Linux QQ: sends message
- Linux QQ → SnowLuma: provides client
- SnowLuma → OneBot Adapter: OneBot events
- OneBot Adapter → Conversation Orchestrator: delivers events
- Conversation Orchestrator → Prompt Assembly: builds context
- Conversation Orchestrator → Model Access: requests response
- Model Access → Conversation Orchestrator: returns response
- Conversation Orchestrator → Message Sender: dispatches reply
- Message Sender → OneBot Adapter: sends messages
- Electron Shell → HTTP API: starts core
- Operator → Web Console: configures
- Web Console → HTTP API: API requests
- HTTP API → API Routes: dispatches
- API Routes → Agent Data: reads or updates
- Plugin Loader → Skill Manager: registers
- Plugin Loader → Plugins: loads
- Skill Manager → Skills: manages
- Schedules → Agent Data: stores schedules
- Schedules → Conversation Orchestrator: adds reminders
- Timed Messages → Agent Data: stores messages
- Knowledge Growth → Agent Data: persists knowledge
- Conversation Memory → Agent Data: persists memory
- Search Aggregation → Conversation Orchestrator: provides search
- Media Download → Conversation Orchestrator: provides downloads