Skip to content
Zcode-CEPublic

About

ZCode-CE is the open-source community edition of the ZCode AI coding workbench, offering a desktop application, a browser interface, and a terminal agent.

Topics

Resources

Stars

44 stars

Watchers

0 watching

Forks

Latest commit

 

History

432 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ZCode-CE

ZCode-CE

问题反馈 · 讨论区 · 上游项目

简体中文 | English

ZCode-CE 是 AI 编程工作台 ZCode 的开源社区版,提供桌面应用、浏览器界面和终端 Agent。本仓库包含客户端、后端服务、共享 UI,以及 Agent CLI 与运行时源码。

关于本项目

ZCode-CE 基于 zai-org/ZCode(Apache-2.0)构建,面向希望完全掌控自己开发环境的用户。欢迎社区成员参与建设 —— 无论是功能开发、问题反馈还是文档改进。

当前发布 3.16.3-ce.1.fix.1(3.16.3-ce.1 的启动热修复):代码基线是上游开源 3.16.2(3c5b2276)的逐特性移植;版本号对齐官方闭源 3.16.3(3.16.3 未开源)。逐条状态见上游同步,本版变更见 Releases。

我们与官方发行版的差异目前集中在七个方面:

方面 说明
无遥测 移除官方发行版中的遥测与监控组件。仅使用自带 API 时,不产生任何与官方服务相关的后台上报
保留权益 官方服务权益(套餐额度、限时赠送额度)完整保留。客户端已具备领取与计费所需的全部能力
社区反馈 反馈默认走本项目的 GitHub Issues(可在设置中切换为官方工单渠道或关闭)
开源文档能力 Office 文档能力(Word / PowerPoint / Excel)由 MIT 许可的开源实现提供,不依赖官方闭源插件。文档生成与结构校验自带 Node 载荷,零外部依赖;仅渲染(转 PDF / 视觉检查)为可选增强,需要 LibreOffice
桌面自动化 Computer Use 由 MIT 许可的开源实现(trycua/cua)提供,不依赖官方未标注许可的闭源 helper。Windows 正式支持;Linux 实验性(默认关闭)
无头服务器 + 浏览器面板 把「服务端 + 浏览器面板」作为一条独立使用路径:可跑在没有桌面环境的机器上,用同一局域网/私网内的浏览器(含手机窄屏)操作这台机器上的工作台。它不接管桌面端:不是接管桌面端正在开的会话,桌面端已连的远端 SSH / Docker 目标不会共享给浏览器。默认只监听回环 127.0.0.1;要对外监听必须同时给令牌,否则拒绝启动。自托管、不经任何中继、不采集遥测;不是官方那套「登录 + 云 relay + Android 壳」(客户端随上游开源树分发,中继与配对服务端闭源;本仓库不引入)。IM 机器人(Bot Channel)已与官方同步:默认关闭、用户同意后可用,桌面端带有管理面板(建机器人 / 绑定 IM 渠道 / 授权工作区 / 配命令白名单)。见网页远控与Bot 管理面板
工具权限可控 危险命令不生成宽泛的持久授权(记住 sudo apt install foo 只记住这一条,不会记住「sudo apt install 任意包」);授权弹窗显示真实范围(任意 / 前缀 / 精确三种都列出);设置里提供「工具与权限」页管理危险命令清单与持久授权策略;自主模式下执行危险命令前会先弹出确认(说明将要执行什么、为什么被判为危险),确认粒度可在设置里调整,与既有的清单策略并存

我们不是什么

  • 不是官方发行版。ZCode-CE 由社区维护,不代表 Z.ai 或智谱的官方立场。
  • 不提供账号服务。模型访问、套餐与计费仍由官方服务提供,本项目不代理、不转售。

已知限制

以下限制长期存在,与具体版本无关;发版说明只记录「因本次变更而新出现」的限制,避免每版重复同样的内容。

  • 桌面自动化(Computer Use):Windows 为正式支持;Linux 为实验性(默认关闭,需在设置中开启)。官方发行版不支持 Linux 桌面自动化,本版通过开源实现提供,但受上游验证范围限制。详见桌面自动化文档。

  • 桌面自动化在 Linux 上有环境限制:已在 X11 / Sway / KDE Wayland 验证,Wayland 下截图不可用(元素操作不受影响),GNOME 未完整验证。

  • Windows 构建未签名:首次运行需在 SmartScreen 提示中选择「仍要运行」,原因与进展见下方安装一节。

  • Windows / macOS 未在真机做完整功能回归:CI 会为两个平台打包,但本项目的日常验证以 Linux 为主。

  • macOS 无自动更新:macOS 客户端不检查更新(electron-updater 在 darwin 保持关闭)。安装包随版由 CI 产出(.dmg / .zip,ad-hoc 签名、未公证,首次打开需允许 Gatekeeper)。见上方安装一节。

  • 无头/Web 面板的安全默认值:服务默认只监听回环;非回环监听必须带令牌,否则拒绝启动。明文 http 只应出现在可信局域网内,公网/不可信网络请放在 TLS 终结的反向代理或隧道之后(否则令牌与流量可被窃听/替换);令牌等价于 agent 级访问,拿到它就能执行工具调用。

  • 手机窄屏仍有未完成的打磨项:主内容区裁切与头部控件重叠已修(窄屏默认收起侧栏、头部按窄屏简化、浮层命中区补到 44px),仍有三项未完成:发送/停止键命中区偏小、composer 存在结构错位、软键盘避让只做了单行 meta 修复(真机 IME 未验证)。桌面宽度不受影响。

  • 手机与桌面同时连的行为未测:两个客户端可各自建立连接,但同一会话被两端同时操作的并发语义没有测(见网页远控 §8),不要在依赖它之前假定行为。

后续计划

以下能力官方发行版包含但未随源码分发。本版的实际状态见各行(有的已补齐、有的只补齐部分),仍未提供的计划在后续版本补齐 —— 某一行若自带限制说明,以该行的说明为准。

能力 状态
PDF 制作 已提供基础能力:随包 Node 载荷(PDFKit + FontKit,均为 MIT,零外部依赖)从零制作 PDF —— 中文正文、表格、页码「第 n 页 / 共 m 页」、字体自动子集嵌入;交付前必须过结构校验器(页数、字体嵌入、文本层字形覆盖),不过就不产出文件。字体只取系统已安装字体(不随包、不下载),缺失时报出缺哪些字并拒绝产出(不静默产豆腐 PDF)。LaTeX / 数学公式排版仍未提供(需要外部 TeX 的另一条链路);Office 文档转 PDF 仍走 LibreOffice(可选增强)。详见 PDF 插件
工具精细化管理 部分补齐:MCP 已支持按单个工具启停(在 MCP 服务器配置里写 disabledTools,或在设置页的表单折叠区逐行填写;关闭后模型看不到、直接调用也会失败)。插件内单个工具的启停仍未提供(插件当前只能整包启停)。规则见工具与权限:按资源/工具精细启停
远程工作区(SSH / Docker / WSL) 代码完整(连接、鉴权、部署、握手、远端会话都在),但远程运行时资源不随包分发。本项目已投运社区 CDN(https://cdn.eidolonmachine.xyz,自建对象存储 + 自定义域名,不中继、不采集)并托管了各版本资产:我们发布的安装包默认指向它、开箱可用(该版本未托管时需自行指向发布点)。Docker 已在真 Docker 29.8.0 / rootless / cgroup v2 上实测通过;WSL 未实测(需 Windows 客户端)。自建者可在桌面端设置页填自定义 CDN 地址、或设 ZCODE_REMOTE_ASSET_CDN_BASE_URL(Web / CLI 只能用这个环境变量),也可按远程工作区文档自建三步走(远端需 POSIX shell:Linux / macOS 的 x64 / arm64;Windows 远端被拒绝,32 位 ARM、ppc64le/s390x、BSD 无资产,Alpine(musl) 实测不可用)

其余未提供的能力及其原因见与官方发行版的差异。

CLI/Web 发行包目前支持 Linux-x64(glibc):Alpine / musl 不在正式支持范围;实测在 Alpine 上装满足 engines 的 musl 版 Node ≥24 后,服务与面板可用,终端功能不可用(会给出明确提示,而不是崩溃)。Windows / macOS 需按目标平台构建并补齐原生载荷与终端后端(conpty),另需为 Windows 提供令牌轮换的替代通道(Windows 没有 SIGHUP)。支持边界见无头服务器文档。

安装

桌面应用

从 Releases 下载对应平台的安装包。

平台 格式 说明
Windows .exe(NSIS) 直接运行安装。当前未签名,首次运行需在 SmartScreen 提示中选择「仍要运行」
Linux .AppImage / .deb / .rpm / .pkg.tar.zst AppImage 需先 chmod +x 再运行
macOS .dmg / .zip darwin-x64 与 darwin-arm64 各一份,CI 随版产出(自 3.15.1-ce.1 起实际交付,见 Releases)。ad-hoc 签名、未公证:首次打开需允许 Gatekeeper——右键点击应用选「打开」,或执行 xattr -dr com.apple.quarantine /path/to/ZCode-CE.app

数据目录:与官方 ZCode 共享 ~/.zcode/v2,两者可并存安装(安装身份独立),但不建议同时运行。

关于 Windows 签名:官方发行版使用 DigiCert 签发的组织验证(OV)证书签名。本项目作为社区项目无法申请同类证书,正在申请 SignPath Foundation 的免费开源代码签名(证书签发给 SignPath Foundation,非本项目),通过后将消除 SmartScreen 提示。详见 Code signing policy。

无头服务器(CLI / Docker)

不装桌面应用、只在服务器上跑工作台并用浏览器(含手机窄屏)操作时走这两条。它们不接管桌面端,也不含桌面端的本地能力(Computer Use、内嵌浏览器等)。

形态 用法 当前状态
Docker(本地构建) 仓库根 compose.yaml + Dockerfile 现在可用,前提是有仓库源码。本版不向任何 registry 推镜像,镜像由你本地 docker compose up -d --build 构建
npm CLI npx zcode-ce --web 已发布:版本用 npm view zcode-ce version 现取(不在此写死)。包名 zcode-ce,npx zcode-ce 可直接用。新版本以 next 标签先行发布(预发布版本号必须带 --tag,故 latest 会落后一版)⇒ 取最新版用 npx zcode-ce@next,或直接指定版本号。包体较大(解包约 293 MB、11864 个文件,含随包发布的原生依赖),首次 npx 需先下载解包,请预留时间。包名与发布形态以无头服务器发行包 §6–§7 为准

Docker 形态要先产出构建上下文 dist/zcode/(需要仓库源码,命令见无头服务器发行包 §2),然后:

# 1) 准备令牌(compose 会读同目录 .env)
printf "ZCODE_SERVER_TOKEN=%s\n" "$(openssl rand -hex 16)" > .env
: > tokens.txt        # compose 会把它挂成令牌文件(追加即可轮换)

# 2) 构建 + 启动(首次会构建镜像,约几分钟)
docker compose up -d --build

# 3) 探活(本机)
curl -s -o /dev/null -w "%{http_code}\n" http://127.0.0.1:3030/   # 200

卷与备份、令牌与轮换、局域网访问、安全边界见无头服务器:Docker;参数、安全默认值与平台支持见无头服务器发行包。

想从源码构建或参与开发?见下方初始化与开发与运行。

入口

入口 用途 开发命令
Desktop Electron 桌面应用 pnpm dev:desktop
Web / ZCode 命令行版 终端与浏览器工作台;将 TUI、Web、后端和 Agent 组装为独立运行包 pnpm dev:web
Agent CLI 在终端中使用 zcode,也为 Desktop 和 Web 提供 Agent 运行时 pnpm --filter @zcode/cli dev
无头服务器 + Web 面板 无桌面环境也可用:zcode --web 起服务,浏览器(含手机)打开面板操作这台机器上的工作台 pnpm dev:web(开发);pnpm build:zcode 产出可独立部署的包

初始化

准备 Git、Node.js 24.14.0 和 pnpm 10.33.2,版本以 mise.toml 为准。以下开发和打包命令均在仓库根目录执行。

pnpm bootstrap

pnpm bootstrap 安装 workspace 依赖、准备桌面本地运行资源,再执行 build:bootstrap。

Agent CLI 与运行时源码位于 apps/zcode-cli/,作为普通目录随本仓库一起克隆,无需单独拉取或初始化 Git submodule。

根据需要选择其他初始化或构建入口:

命令 用途
pnpm install 安装依赖
pnpm prepare:desktop-runtime 准备桌面运行资源,默认包含远程资源准备
pnpm prepare:remote-assets 单独准备远程运行资源
pnpm bootstrap:with-remote 初始化依赖、本地与远程资源,并串行构建相关包;跳过桌面应用 bundle
pnpm build 递归执行各 workspace 包的构建脚本,包括包内的资源准备步骤

默认 bootstrap 跳过远程资源准备,适合本地桌面开发。使用远程工作区或验证远程发行资源时,再运行对应准备命令。

开发与运行

桌面版

pnpm dev:desktop

# 使用测试环境
pnpm dev:desktop:test

pnpm dev:desktop 默认等同于 pnpm dev:desktop:prod,使用生产服务配置。启动脚本会准备本地运行资源、构建桌面 Agent,再启动 Electron 和源码监听。

需要独立开发数据目录时,可设置 ZCODE_DATA_BASE_DIR。例如在 macOS / Linux 中:

ZCODE_DATA_BASE_DIR="$HOME/.zcode-dev-home" pnpm dev:desktop:test

Web 开发

pnpm dev:web

该命令同时启动 Web 开发服务器和后端;浏览器访问前者。

验证

用途 命令
类型检查 pnpm typecheck
Lint pnpm lint
测试 pnpm test
架构检查 pnpm architecture:check --changed
提交前检查 pnpm verify:pre-push

改动桌面端 main/renderer 时,额外运行 bash scripts/desktop-typecheck-baseline.sh diff —— pnpm typecheck 的工程列表不覆盖这两个子工程。

数据与配置

路径 内容
~/.zcode/v2/ 会话、凭据、任务索引、设置
~/.config/ZCode-CE/(Linux) Electron 运行时状态

ZCode-CE 与官方 ZCode 使用独立的安装身份,可以并存。两者共享 ~/.zcode/v2/ 数据目录,因此不建议同时运行并写入同一工作区。

文档

开发者文档见 docs/:

开源参考与致谢

ZCode-CE 站在许多开源项目的肩膀上。以下按用途分类列出我们复用或参考的项目。

复用的代码组件

这些项目的代码被直接引入本仓库,完整清单与许可快照见 third-party/copied-components.json。

项目 许可 用途
zai-org/ZCode Apache-2.0 本仓库的上游
deepseek-ai/deepseek-harness MIT Office 文档能力(skill-office);Computer Use 的架构参考
vercel/ai-elements Apache-2.0 AI 对话界面组件
shadcn-ui/ui MIT UI 基础组件
microsoft/vscode MIT 编辑器相关实现
withfig/autocomplete MIT 命令补全数据
material-extensions/vscode-material-icon-theme MIT 文件图标主题
vercel-labs/agent-browser Apache-2.0 浏览器自动化
vercel-labs/agent-skills MIT Agent 技能定义
obra/superpowers MIT Agent 技能实现

运行时依赖

项目 许可 用途
trycua/cua MIT / MPL-2.0 Computer Use 的桌面驱动(@trycua/cua-driver)

完整的 npm 依赖许可清单见 THIRD-PARTY-NOTICES.md。

设计参考

以下项目未复用代码,但其设计与接口约定对本项目的实现有重要参考价值。

项目 参考内容
zcode-api 官方服务接口的协议还原,用于权益能力(套餐额度、领取、计费)的实现
openai/codex Computer Use 的应用级访问控制设计
trycua/cua 平台行为台账与安全语义(possibly_sent 防重放、controller lease、kill switch)

第三方服务

模型访问、套餐与计费由 Z.ai / 智谱 提供,本项目不代理、不转售。


感谢上述项目的作者与维护者。如果你的项目出现在这里但归属或表述有误,欢迎提 issue 指正。

许可

本项目基于 zai-org/ZCode 构建,遵循 Apache-2.0。

第三方组件声明见 THIRD-PARTY-NOTICES.md,功能说明与风险提示见 NOTICE.md。

About

ZCode-CE is the open-source community edition of the ZCode AI coding workbench, offering a desktop application, a browser interface, and a terminal agent.

Topics

Resources

Stars

44 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages