东创龙虾面板开发者文档
本文档面向需要理解、二次开发或扩展东创龙虾面板的开发者。它保留原操作手册中的开发者文档定位,但内容按 dc-openclaw-panel-main 项目的实际架构和功能模块重新组织。
技术栈概览
| 层级 | 技术 |
|---|---|
| 桌面框架 | Electron |
| 前端 UI | React + TypeScript + Vite |
| 样式 | Tailwind CSS |
| 状态管理 | Redux Toolkit |
| 本地存储 | SQLite / sql.js 相关存储层 |
| AI 能力 | Claude Agent SDK、OpenClaw、Hermes Agent、Codex 等引擎集成 |
| 内容渲染 | Markdown、Mermaid、代码高亮等渲染能力 |
| 集成能力 | IM、MCP、Skill、自定义 Agent 工具链 |
进程模型
东创龙虾面板采用典型 Electron 多进程结构:
Main Process
├─ 应用窗口与系统能力
├─ 本地数据库与配置持久化
├─ Agent 引擎路由与实例管理
├─ Skill / MCP / IM / 定时任务等后台能力
└─ 安全、防护、授权相关服务
│
▼ IPC / preload bridge
Renderer Process
├─ React 页面和组件
├─ Redux 状态
├─ Cowork 会话与统一工作台
├─ 软件商店、实例管理、模型管理等页面
└─ 设置、安全、日志和支持入口
核心源码模块
Cowork / Agent 会话
相关路径:
src/renderer/components/cowork/src/renderer/types/cowork.tssrc/main/libs/agentEngine/src/main/libs/coworkEngineRouter.ts
该模块负责 Agent 任务会话、流式消息、权限请求、执行模式和引擎选择。引擎类型包括 OpenClaw、Hermes、Codex 等。
软件商店
相关路径:
src/renderer/components/app-store/src/renderer/store/slices/softwareStoreSlice.ts
软件商店负责热门 AI 应用的一键安装、安装模式选择、组件配置和状态展示。
实例管理
相关路径:
src/renderer/components/instances/
实例管理负责本机实例、远程实例、多实例状态、配置编辑、日志查看和文件管理等能力。
Skill 技能系统
相关路径:
src/renderer/components/skills/SkillsView.tsxSKILLs/skills.config.jsonsrc/main/skillManager.ts
Skill 系统通过配置文件和技能目录扩展 AI 能力。开发新技能时,应关注技能说明、权限边界、依赖工具和安全审计。
MCP 工具管理
相关路径:
src/renderer/components/mcp/McpView.tsxsrc/renderer/types/mcp.ts
MCP 模块负责模型上下文协议服务的统一管理,包括工具列表、资源浏览和服务配置。
API 与模型管理
相关路径:
src/renderer/components/ai-models/AiModelView.tsxsrc/renderer/config.ts
该模块负责模型提供商、API Key、Base URL、模型列表和调用格式。它是多 AI 应用共享模型能力的基础。
安全与授权
相关路径:
src/renderer/components/security/src/main/libs/folderEncryptionManager.tssrc/main/libs/sensitiveFolderManager.tssrc/main/libs/licenseManager.tssrc/main/libs/featureGate.ts
安全模块负责文件夹加密、敏感文件夹授权访问、授权码和功能门控。扩展高权限能力时,应优先检查这里的边界。
主要页面入口
面板中的主要视图包括:
- 首页
- Cowork / Chat 工作台
- 技能管理
- 定时任务
- MCP 管理
- API 模型管理
- 软件商店
- 实例管理
- 安全设置
- 日志查看
设置页通常包含常规设置、模型配置、账户、邮箱、Agent 配置、引擎配置、记忆管理、IM 集成和授权等页签。
二次开发建议
新增一个前端页面
- 在
src/renderer/components/下创建对应业务组件。 - 在主视图类型中增加页面标识。
- 在导航或路由入口中挂载页面。
- 如需持久化状态,新增 Redux slice 或复用现有服务层。
- 如需主进程能力,通过 preload 暴露安全 IPC 方法。
新增一个 Skill
- 在
SKILLs/下创建技能目录。 - 在
SKILLs/skills.config.json注册技能名称、描述和路径。 - 明确技能需要访问的文件、网络或外部工具权限。
- 在技能管理页面验证是否能正常启用和调用。
- 对涉及本地文件的技能进行安全检查。
新增一个 MCP 服务
- 准备 MCP 服务启动命令和环境变量。
- 在 MCP 管理界面添加服务配置。
- 验证工具列表是否能被读取。
- 在目标 AI 应用中调用该 MCP 工具。
- 对访问本地文件或外部账号的服务设置权限边界。
新增一个模型提供商
- 在模型配置中添加 provider 定义。
- 填写 API 格式、Base URL、默认模型和能力标识。
- 在 API 模型页面验证表单展示和保存逻辑。
- 在统一工作台中执行一次实际调用测试。
调试与验证
开发者修改后建议按顺序验证:
- 启动开发环境,确认 Electron 应用正常打开。
- 检查渲染进程控制台错误。
- 检查主进程日志。
- 修改 UI 后验证对应页面交互。
- 修改 IPC 或主进程能力后验证 preload 暴露接口。
- 修改 Agent、Skill、MCP 或安全模块后进行端到端任务测试。
发布与完整运行环境包
东创龙虾面板面向 macOS、Linux、Windows 提供完整运行环境包。开发者在发布前应分别验证:
- macOS 包是否可启动、是否能访问工作目录。
- Windows 包是否能启动、安装和保存配置。
- Linux 包是否具备必要运行权限。
- U 盘便携目录中是否包含运行所需组件。
- 软件商店、实例管理、API 模型、安全防护是否在打包后正常工作。
授权开发注意事项
个人用户和一人公司完全免费。涉及 5 人以上企业用户、软件打包售卖、商业交付或定制部署时,应确保授权码和功能门控逻辑符合官方授权策略。