ZCode 是由 Z.ai 团队打造的开源 AI 编程工作台,它不是简单的代码补全插件,也不是依赖云端大模型的黑盒服务,而是一个集桌面应用、终端交互界面(TUI)、浏览器 Web 工作台与可嵌入 Agent 运行时于一体的完整本地化开发环境。它专为希望在**不上传代码、不依赖 SaaS 服务、不牺牲隐私与可控性**的前提下,获得强大 AI 编程能力的开发者而设计。
核心功能
- 三端统一入口,一套代码随处运行:通过同一个
zcode命令,即可启动终端 TUI 界面、本地 Web 工作台(zcode --web)或 Electron 桌面应用,所有模式共享同一套 Agent 运行时和 UI 组件,避免学习多套操作逻辑。 - 真正的离线/私有化 Agent 运行时:Agent CLI(
@zcode/cli)完全基于 TypeScript 构建,支持本地加载 LLM 推理引擎(如 Ollama、Llama.cpp),无需联网调用第三方 API,代码始终留在你自己的设备或内网中。 - 跨环境项目协同开发:内置对 SSH 和 WSL 的原生支持,可通过 SFTP 将本地构建的 Agent 资源(含模型适配器、工具插件)自动上传至远程服务器执行,实现“本地写、远程跑、结果回传”的闭环,特别适合云开发、容器调试和嵌入式环境。
- 开箱即用的智能工作流引擎:不仅支持自然语言生成代码,还内置文件系统操作、Git 集成、测试执行、HTTP 请求调试等可编程工具(Tools),Agent 可自主规划、调用、验证,完成从需求理解到 PR 提交的完整链路。
- 零配置快速启动 Web 工作台:执行
zcode --web即可一键启动带认证保护的本地 Web IDE(默认http://localhost:5173),自动代理后端 API 和 WebSocket,无需 Nginx、反向代理或复杂环境变量设置。 - 数据与配置完全自主掌控:所有工程元数据、会话历史、插件缓存均默认存储于用户可指定的本地路径(如
$HOME/.zcode-dev-home),通过ZCODE_DATA_BASE_DIR环境变量即可隔离开发/测试/生产多环境数据,符合企业安全审计要求。 - 模块化架构,支持深度定制:采用 pnpm workspace 管理 10+ 个独立包(
@zcode/cli,@zcode/desktop,@zcode/web等),每个模块职责清晰,UI 组件库(shared-ui)可复用于自有系统,Agent 运行时亦可作为 npm 包直接集成进其他 Node.js 工具链。 - 面向真实开发场景的调试体验:桌面版支持
dev:desktop:test模式,启用独立数据目录与模拟后端;Web 开发时自动代理/ws和/api到本地服务,并单独将 OAuth 登录请求转发至线上平台,兼顾本地迭代与线上身份体系。
技术亮点
- 全栈 TypeScript + Electron + Vite 架构:前端使用现代 Vite 构建,UI 基于 React + Tailwind CSS,后端服务基于 Express + WebSocket,Agent 运行时采用可插拔的 Tool Calling 设计,各层类型定义严格对齐,大幅降低二次开发成本。
- “CLI 即发行版”设计理念:不同于打包成二进制再分发的传统做法,ZCode 的
zcode命令本质是 Node.js 模块的直接执行入口(bin/zcode.mjs),构建产物为纯 JS/CJS 文件,无平台锁死,macOS/Linux/Windows 一致运行,且便于 CI/CD 中动态注入配置。 - 资源分层加载机制:通过
mock-cdn目录模拟远程资源分发,开发阶段优先读取本地构建产物,发布时可无缝切换至 CDN 托管的模型权重、工具脚本等大文件,兼顾开发速度与生产部署灵活性。 - 细粒度环境控制:通过
.env+.env.local分层覆盖配置,配合ZCODE_SERVER_WORKSPACE、ZCODE_BUILTIN_PROVIDER等语义化变量,让团队能统一管理模型源、OAuth 服务商、默认工具集等策略,避免硬编码污染。 - Electron 与纯 Web 双轨并行:桌面端基于 Electron 但不滥用 Webview,关键性能模块(如代码解析、AST 操作)下沉至预加载脚本;而 Web 版则完全脱离 Electron 依赖,可部署为内网静态站点,满足信创环境与国产操作系统适配需求。
适合哪些人用
ZCode 尤其适合以下三类用户:
1. 注重代码隐私与合规的中大型企业开发者:例如某金融公司后端团队需在离线环境中为内部系统生成接口文档与单元测试——他们可将 ZCode 部署在内网开发机,接入本地 Ollama 模型,全程不触网,且所有生成记录留存于本地 .zcode 目录,满足等保三级日志审计要求。
2. 需频繁调试远程/容器化环境的 DevOps 工程师:比如运维同学要为 Kubernetes 集群编写 Helm Chart 并验证部署流程——只需在本地运行 zcode --web,连接目标集群的 SSH,Agent 即可自动执行 kubectl get pods、生成 YAML、diff 变更并提交 Git,整个过程在浏览器中可视化操作。
3. 希望深度定制 AI 编程体验的技术极客:例如开源项目维护者想为自家 CLI 工具增加自然语言指令支持——他可直接 fork ZCode,修改 apps/zcode-cli 中的 Tool 定义,添加 runMyTool 方法,再通过 pnpm --filter @zcode/cli... build 快速验证,无需重写整套框架。
快速上手
确保已安装 Node.js v24.14.0 和 pnpm v10.33.2(推荐使用 mise 管理版本)。执行以下命令即可启动:
git clone https://github.com/zai-org/ZCode.git
cd ZCode
pnpm bootstrap
pnpm dev:web
浏览器访问 http://localhost:5173 即可开始使用。若想尝试终端模式,新开终端执行:pnpm --filter @zcode/cli dev 或直接全局安装后运行 zcode。
同类对比 / 注意事项
相比 Cursor、GitHub Copilot 或 CodeWhisperer,ZCode 不提供托管模型服务,也不绑定特定云厂商——它更像 VS Code 之于编辑器,是“AI 编程能力的操作系统”。与开源竞品如 Continue.dev 相比,ZCode 提供了更完整的桌面客户端、更成熟的远程执行管道,以及真正一体化的 CLI/Web/Desktop 三端体验。需注意:首次运行需手动准备远程资源(pnpm prepare:remote-assets),且 Agent 能力高度依赖本地接入的 LLM 模型质量,建议搭配 Qwen2.5-Coder 或 DeepSeek-Coder 等专注代码的开源模型使用。
项目信息
zai-org/ZCode
GitHub
Z.ai’s coding agent harness. Powerful, intelligent, extensible.
6.5k
Stars
1.9k
Forks
TypeScript
Apache-2.0
TypeScript | 6462 ⭐ | Apache-2.0 开源协议 | GitHub 项目地址
如果你厌倦了在“智能”与“可控”之间做选择题,ZCode 就是那个让你把 AI 编程权真正握在自己手中的开源答案。


