更新介绍、安装方式、配置说明、链接为 zmo,标注基于 OpenCode(MIT) 二开。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
107 lines
3.5 KiB
Markdown
107 lines
3.5 KiB
Markdown
<p align="center">
|
||
<a href="https://git.chatbot.js.cn/lmin/zmo-cli">
|
||
<img src="https://img.shields.io/badge/zmo-CLI-blue?style=for-the-badge" alt="zmo logo">
|
||
</a>
|
||
</p>
|
||
<p align="center">开源的 AI Coding Agent,运行在你的终端里。</p>
|
||
<p align="center">
|
||
<a href="https://git.chatbot.js.cn/lmin/zmo-cli"><img alt="repo" src="https://img.shields.io/badge/repo-zmo--cli-green?style=flat-square" /></a>
|
||
<a href="LICENSE"><img alt="license" src="https://img.shields.io/badge/license-MIT-blue?style=flat-square" /></a>
|
||
</p>
|
||
|
||
<p align="center">
|
||
<a href="README.md">English</a> |
|
||
<a href="README.zh.md">简体中文</a>
|
||
</p>
|
||
|
||
---
|
||
|
||
> **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 官方团队无隶属关系。
|