Orchidea Code Desktop
面向组织级架构与集群开发的 AI 开发桌面。
该项目提供面向组织开发的图形化交互与编辑体验,并以 orchidea-code 作为核心能力层(模型、工具、会话、规则等),桌面端与 CLI 共享同一套能力与配置。
产品定位
Code Desktop 面向组织构建:接入组织代码库、平台完整代码与 DevBase 组织级权限,支持跨服务架构、集群工程与组织应用构建,发布走组织发布流程。
它与 Desktop 是两条隔离的开发轨道:Code Desktop 负责组织级架构与集群开发,Desktop 负责个人 vibe coding 与轻应用;个人作品要成为组织应用,必须经 DevBase 代码审核、组织权限审批与 Guard 发布审批。
2026-11 能力更新(v0.2.0)
- DevBase / Archive 同步体系:会话与产物/工具同步、项目文档同步状态、CodeGraph 索引推送、Git commit/push 到 DevBase
- 分享与存储:文档分享到频道、存储分享与频道文件上传
- 界面:设置页 SyncPanel 与主进程 IPC 通道
项目简介 / 定位
orchidea-code-desktop 是基于 Electron 构建的桌面应用,是 orchidea-code(AI 编码 Agent)的组织级桌面客户端,面向组织架构、集群工程与组织应用构建。它把 CLI 的编码能力封装进完整的图形界面:在窗口内聊天、审批模型发起的工具调用、管理会话 / 技能 / 循环任务、查看任务树(TaskCenter),并集成代码图谱(CodeGraph)、空间画布 IDE(Cate)、Agent 原生设计工具(Open Design)等内置能力。
- 核心运行时:直接依赖
@orchidea/code(file:../orchidea-code),模型、工具、会话、规则均复用核心能力层。 - UI 与交互:React 19 + TypeScript + Tailwind CSS v4,内置终端(xterm.js)、文件管理、Git 面板、任务树等。
- 版本信息:见
VERSION文件与CHANGELOG.md。
核心功能
AI 编码对话
- 图形化聊天界面,支持自然语言描述任务、工具调用审批、Markdown 渲染与 Diff 查看。
- 会话管理、技能(Skills)管理、循环任务(Loop / Ralph / Replicate)管理,详见 docs/user-manual.md。
- 应用内嵌
orchidea-codeServer(src/main/server/),渲染进程通过 WebSocket(/ws,基于@orchidea/protocol)连接后端 Agent。
安全与审批体系
- 审批策略(
src/main/approval.ts/approval-policy.ts)、安全策略(security-policy.ts)、托管策略(managed-policy.ts)、安全操作(secure-action.ts)。 - 审计日志(
audit-log.ts)、敏感信息脱敏(redaction.ts)、密钥管理(secrets.ts)、隐私策略(privacy.ts)。 - 安全模式(
safe-mode.ts)、崩溃恢复(recovery.ts)、网络出站策略(net-outbound.ts/network-config.ts)。
内置组件与插件
- 插件系统(
src/main/plugins/):文件系统(editor / search / tree / watch)、SCM(scm.ts)、CAD、Cate、CodeGraph、Open Design 等插件。 - CodeGraph(
codegraph/+src/main/codegraph/):语义代码图谱,通过codegraph插件为编码 Agent 提供模块依赖图与符号语义搜索能力。 - Cate(
cate/+src/main/cate/):无限画布空间 IDE,可自由排布代码、终端、浏览器与 Git 面板。 - Open Design(
open-design/+src/main/open-design/):Agent 原生的开源设计工具集成。 - CAD 查看(
src/main/cad/):内嵌 CAD 模型查看器。 - 代码服务器(
src/main/code-server/):内置 VS Code Server(下载、安装、代理、ripgrep 集成)。
桌面基础设施
- 终端(
src/main/pty/):基于 node-pty 的 PTY 终端。 - 自动更新(
src/main/updater/):基于 electron-updater 的自动更新与更新源配置(dev-app-update.yml)。 - 可观测性(
src/main/telemetry.ts/crash-report.ts/crash-upload.ts/support-bundle.ts/event-log.ts):遥测、崩溃报告、支持包导出。 - macOS / Windows 自动化(
src/main/automation/):系统级自动化辅助(配合scripts/build-mac-automation.mjs/build-win-automation.mjs)。 - 任务树(
task-tree.ts/todo-task-tree-sync.ts):任务树与 TODO 的双向同步。 - 国际化(
src/renderer/core/i18n/):多语言支持。
技术架构简述
- 进程模型:Electron 主进程(
src/main/)+ 预加载(src/preload/)+ 渲染进程(src/renderer/)。 - 技术栈:Electron、React 19、TypeScript、electron-vite、Tailwind CSS v4、Zustand、i18next;终端使用
@xterm/xterm+node-pty。 - 核心依赖:
@orchidea/code(核心能力层)、@orchidea/protocol(消息协议)、web-tree-sitter(语法解析)、better-sqlite3(本地存储)。 - 内置子项目:
cate/、codegraph/、open-design/三个独立子项目通过构建脚本(scripts/build-cate.mjs、build-codegraph.mjs、build-open-design.mjs)打包集成。 - 测试:Vitest(单元测试)+ Playwright(端到端测试,
e2e/)。
安装与构建
环境要求:Node.js >= 20.16、npm >= 9(见 package.json 的 engines)。
# 安装依赖
npm install
# 开发模式(主进程 + 渲染进程热更新)
npm run dev
# 类型检查 / 单元测试
npm run typecheck
npm test
# 端到端测试(Playwright)
npm run test:e2e
打包(electron-builder)
# macOS(正式包,含 core 构建)
npm run package:mac
# Windows / Linux
npm run package:win
npm run package:linux
# 开发构建(macOS arm64 + x64)
npm run package:dev:mac
# 本地快速打包(仅当前平台)
npm run package:local
打包配置位于 configs/electron-builder.mjs,应用图标与签名文件位于 build/。
快速开始
- 获取桌面端安装包(通常为
.dmg或.zip),安装后启动应用。 - 首次启动后打开 Settings 完成 Provider 配置:
- 环境变量方式:提前设置 Provider 的 API Key(如
OPENAI_API_KEY、ANTHROPIC_API_KEY等); - 交互方式:在聊天中运行
/login选择 Provider 并粘贴 API Key,再运行/model选择模型。
- 环境变量方式:提前设置 Provider 的 API Key(如
- 在聊天输入目标,审批模型发起的工具调用,并在任务中心观察执行进度。
详细使用说明见 docs/user-manual.md。
文档入口
- 用户手册(Desktop + CLI 合并版):docs/user-manual.md
- 架构说明:docs/agent/architecture.md
- 编码规范:docs/agent/coding_standards.md
- 测试约定:docs/agent/testing.md
- macOS 代码签名:docs/agent/macos-code-signing.md
- 内置子项目:cate/README.md、codegraph/README.md、open-design/README.md