安装
men(门)以 npm 包(@cgartlab/men)与 Git 仓库双通道分发:npx @cgartlab/men 可在任意目录一步 scaffold 并完成安装;Git 一键脚本负责检测依赖、拉取仓库,两条路径最终都调用共享核心 scripts/install.mjs 完成依赖安装、环境配置与端到端验证。
前置要求
安装器会检测以下三个命令是否存在,任一缺失即报错退出(提示先安装 Node ≥ 18 与 git):
- Node.js ≥ 18 — 运行
scripts/install.mjs与机械验证脚本(node --version检查) - npm — 安装
.opencode/依赖 - git — 拉取 / 克隆仓库(一键安装时自动执行)
install.mjs 会在流程最前做 Node 版本检查,主版本低于 18 时直接报错并以非 0 退出码结束。npm 一步安装(npx @cgartlab/men)
在任意目录运行(前置:Node ≥ 18、已装 OpenCode;模型密钥由 CC Switch 在本地托管,无需提供):
npx @cgartlab/men首次执行 npx 会询问 "Ok to proceed? (y)"——输入 y 回车即可;或直接 npx -y @cgartlab/men 跳过确认。
安装器自动完成:scaffold 运行时资产到当前目录(opencode.json / .opencode/ / scripts/ / config/ / knowledge/)→ 安装 .opencode/ 依赖 → 从 .env.example 生成 .env → 端到端验证。若当前目录已是 men 仓库根,则幂等跳过复制、直接就地安装;依赖安装失败仅告警不中止(插件为增强项,加载失败不阻止 OpenCode 启动;V2 下 @opencode/plugin 自带类型,无需 V1 @opencode-ai/plugin)。
完成后在当前目录运行 opencode 即可进入 TUI:
opencode一键安装(Linux·macOS)
在支持 bash 的 Linux / macOS 终端中,直接运行一键命令(使用 curl 拉取 install.sh 并交给 bash 执行),脚本会检测依赖、git clone 到默认目录 men/,再调用共享核心完成安装:
bash <(curl -fsSL https://raw.githubusercontent.com/cgartlab/men/main/install.sh)可追加选项控制安装行为,例如指定安装目录:
bash <(curl -fsSL https://raw.githubusercontent.com/cgartlab/men/main/install.sh) --dir ~/mencurl 因网络/代理失败,进程替换可能静默成功(无任何输出)。建议先显式下载再执行,失败时能看到明确报错:curl -fsSL https://raw.githubusercontent.com/cgartlab/men/main/install.sh -o /tmp/men-install.sh && bash /tmp/men-install.sh [选项]一键安装(Windows)
在 PowerShell 5.1+(推荐 7+) 中运行一键命令(使用 irm 拉取 install.ps1 并交给 iex 执行),脚本同样会检测依赖并 git clone 到默认目录 men/:
irm https://raw.githubusercontent.com/cgartlab/men/main/install.ps1 | iex管道模式不支持传参(iex -Dir ... 会把 -Dir 当作 iex 的参数导致报错)。如需指定目录,请先下载脚本再本地运行:
irm https://raw.githubusercontent.com/cgartlab/men/main/install.ps1 -OutFile install.ps1
./install.ps1 -Dir C:\men就地安装
如果已克隆 / 已拥有仓库源码,可在仓库根目录就地执行引导脚本——脚本检测到 scripts/install.mjs 存在时,直接以当前目录为安装目标,不再重复拉取。
Linux / macOS(先赋予执行权限):
chmod +x install.sh
./install.sh [选项]Windows / PowerShell:
./install.ps1 [-Dir <path>] [-SkipDeps] [-SkipVerify] [-Json] [-Help]也可绕过平台引导,直接调用共享核心安装器:
node scripts/install.mjs [--dir <path>] [--skip-deps] [--skip-verify] [--json] [--help]INSTALL_URL 与 REPO_URL 已硬编码为真实地址:前者指向安装脚本的原始 URL(即 raw.githubusercontent.com/cgartlab/men/main/<install.sh|install.ps1>),后者是 git clone 使用的仓库地址(github.com/cgartlab/men.git)。选项说明
共享核心 install.mjs 定义了三平台一致的选项;install.sh(-- 前缀)与 install.ps1(大写开关)只是语法上的平台差异,透传给核心后行为相同:
| 选项 | PowerShell | 说明 |
|---|---|---|
--dir <path> | -Dir <path> | 安装目标目录。默认当前目录;指向不存在的目录时从当前仓库根复制源码(排除 node_modules、.env 等运行态路径)。 |
--global | —(仅 npm 通道) | 完整全局安装:部署 agents/commands/skills/plugins 到 ~/.config/opencode/,合并全局 opencode.json 仅设置 default_agent: men(不动 mcp 与 plugin,两者由 CC Switch 统一管理),TUI 插件以相对路径注册(不依赖 opencode npm 缓存);重启 OpenCode 后任意目录生效。用法:npx @cgartlab/men --global。 |
--global-remove | —(仅 npm 通道) | 卸载全局安装:删除部署的 agents/commands/skills/plugins,还原 opencode.json(有备份则从备份还原;无备份则移除 default_agent,不动 plugin 数组),从 tui.json 注销(插件清空时删除文件)。幂等,重复执行安全。用法:npx @cgartlab/men --global-remove。 |
--skip-deps | -SkipDeps | 跳过 .opencode/ 依赖安装(npm install --prefix .opencode)。 |
--skip-verify | -SkipVerify | 跳过端到端验证(scripts/verify.mjs men --json)。 |
--json | -Json | 以 JSON 格式输出安装摘要。 |
--help / -h | -Help | 显示帮助信息后退出。 |
.opencode/ 依赖 → 4. 环境配置(.env 不存在时从 .env.example 复制)→ 5. 端到端验证 → 6. 检测运行环境(opencode 命令、模型配置)。第 3、5 步分别由 --skip-deps、--skip-verify 跳过。opencode.json 不含 mcp 配置——MCP 由 CC Switch 统一管理(模型 / 密钥 / MCP 均本地托管)。需联网的 MCP 服务(Exa / Context7 / grep.app / GitHub / memory / sequential-thinking 等)由你的 OpenCode 运行环境按需提供并注入;MCP 连接失败通常只是降级提示,不阻塞核心使用。验证安装
安装器默认会在末尾执行端到端验证 scripts/verify.mjs men --json,退出码为 0 才打印「安装成功」;验证失败则以非 0 退出码终止。如需手动复核环境,可运行:
# 1. 检查 Node 版本(要求 ≥ 18)
node --version
# 2. 运行端到端机械验证(JSON 输出)
node scripts/verify.mjs men --json若输出中验证项全部 PASS 且退出码为 0,说明安装正确;安装完成后,在项目目录运行 opencode 即可进入 TUI 使用。