How minomiao/dolphincode-cli works
Dolphin CLI is a model-backed coding agent: the user interacts through a terminal command loop, which manages conversations and sends chat turns to an LLM; tool calls extend those turns with skills, plugins, and file operations. Conversation state and workspace restrictions are distinct from pending file-change backups, which users can apply or revert. The graph preserves documented extension and safety capabilities; several internal call paths are inferred only where excerpts are partial, so uncertain wiring is omitted.
Main entry points: chat.py Chat engine · skill_manager.py Skill manager · commands.py CLI commands · conversation_service.py Conversation service
Components 21
CLI interaction
- Application startup
main.py - Command loop
modules/CLIserver/main_loop.py - CLI commands
modules/CLIserver/commands.py
Agent runtime
- Chat engine
modules/chater/chat.py - Prompt manager
modules/main_server/prompt_manager.py - Request dispatcher
modules/main_server/middleware/request_manager.py
Tools and extensions
- Skill manager
modules/loader/skill_manager.py - Built-in skills
skills - Plugin skills
modules/loader/plugin_skill_loader.py - Standard skills
modules/loader/standard_skill_loader.py - MCP tools
modules/loader/mcp_manager.py - File operations
modules/functions/file_operation.py - PowerShell runner
modules/functions/powershell_manager.py
Workspace and state
- Conversation service
modules/core/services/conversation_service.py - Conversation metadata
modules/chater/dpc_manager.py - Workspace files
- Configuration
modules/main_server/config.py - Backup service
modules/core/services/backup_service.py - Backup manager
modules/functions/backup_manager.py
Other components
- User
- LLM API
Connections 23
- User → Command loop: enters commands
- Application startup → Command loop: starts loop
- Command loop → CLI commands: dispatches commands
- Command loop → Chat engine: submits chat turns
- Chat engine → LLM API: requests completion
- Chat engine → Prompt manager: requests prompts
- Chat engine → Skill manager: uses tools
- Skill manager → Built-in skills: loads skills
- Skill manager → Standard skills: loads standard skills
- Skill manager → Plugin skills: loads plugins
- Chat engine → MCP tools: calls MCP tools
- Request dispatcher → Prompt manager: handles prompt requests
- Request dispatcher → File operations: handles file requests
- CLI commands → Conversation service: manages conversations
- Conversation service → Conversation metadata: reads and writes metadata
- Conversation service → Chat engine: loads conversation
- Conversation service → Skill manager: reloads skills
- File operations → Workspace files: reads and modifies files
- CLI commands → Configuration: updates settings
- CLI commands → Backup service: manages pending changes
- Backup service → Backup manager: queries or applies changes
- Built-in skills → PowerShell runner: runs scripts
- PowerShell runner → Workspace files: executes in workspace