开源的 AI Coding Agent,运行在你的终端里。
--- > **zmo** 是一个基于开源项目 [OpenCode](https://github.com/anomalyco/opencode)(MIT 许可)二次开发的、聚焦终端的 AI 编码助手 CLI。它保留了 OpenCode 的核心 Agent 能力(自主任务、工具调用、LSP、MCP、权限系统、多模型适配),并精简为纯命令行体验。 --- ### 安装 > [!NOTE] > 以下软件包管理器渠道为**正式发布后**的目标安装方式。在正式发布前,请使用文末「从源码构建」一节的方法。 ```bash # 直接安装 (YOLO) curl -fsSL https://git.chatbot.js.cn/lmin/zmo-cli/install | bash # 软件包管理器 npm i -g zmo@latest # 也可使用 bun/pnpm/yarn scoop install zmo # Windows choco install zmo # Windows brew install zmo # macOS 和 Linux mise use -g zmo # 任意系统 ``` > [!TIP] > 安装后,在任意项目目录运行 `zmo` 即可启动交互式 TUI,或运行 `zmo run "你的需求"` 直接执行单次任务。 #### 安装目录 安装脚本按照以下优先级决定安装路径: 1. `$ZMO_INSTALL_DIR` - 自定义安装目录 2. `$XDG_BIN_DIR` - 符合 XDG 基础目录规范的路径 3. `$HOME/bin` - 如果存在或可创建的用户二进制目录 4. `$HOME/.zmo/bin` - 默认备用路径 ### Agents zmo 内置两种 Agent,可用 `Tab` 键快速切换: - **build** - 默认模式,具备完整权限,适合开发工作 - **plan** - 只读模式,适合代码分析与探索 - 默认拒绝修改文件 - 运行 bash 命令前会询问 - 便于探索未知代码库或规划改动 另外还包含一个 **general** 子 Agent,用于复杂搜索和多步任务,内部使用,也可在消息中输入 `@general` 调用。 ### 配置 zmo 在项目根目录或 `~/.config/zmo/` 下读取配置文件,支持以下文件名(按优先级): - `config.json` - `zmo.json` / `zmo.jsonc` - `opencode.json` / `opencode.jsonc`(向下兼容) 环境变量同时支持 `ZMO_*`(优先)与 `OPENCODE_*`(向下兼容)两种前缀。 ### 从源码构建(当前推荐) 在正式发布渠道上线前,可通过源码自行构建单文件可执行程序: ```bash # 1. 克隆仓库 git clone https://git.chatbot.js.cn/lmin/zmo-cli.git cd zmo-cli # 2. 安装依赖(需 Bun 1.3+) bun install # 3. 构建当前平台的单二进制 cd packages/opencode bun run build --single --skip-embed-web-ui # 4. 产物位于 packages/opencode/dist/<平台>/bin/zmo # 将其加入 PATH 即可全局使用 zmo 命令 ``` 也可在不构建的情况下直接运行(开发模式): ```bash bun run dev # 在仓库根目录 ``` ### 参与贡献 如有兴趣贡献代码,请在提交 PR 前阅读 [贡献指南](./CONTRIBUTING.md)。 ### 致谢 zmo 基于 [OpenCode](https://github.com/anomalyco/opencode)(MIT License)二次开发,感谢原项目作者与社区。本项目与 OpenCode 官方团队无隶属关系。