在远程 Mac 上用好
命令行 AI 编码助手
Claude Code、OpenAI Codex CLI 等命令行 AI 编码助手,装在一台常开的 Mac 上最省心。本文讲通用做法:怎么安装、怎么写项目级配置、怎么非交互运行接入脚本,以及怎样控制成本和权限。具体命令以各工具官方文档的最新版本为准。
先确认账号与条款
命令行 AI 编码助手一般有两种登录方式:用服务商的订阅账号登录,或者配置 API Key 按用量计费。动手之前先读一遍你所用工具的服务条款和可用地区说明。
账号资格与可用地区由各服务商条款决定,机器所在地不改变这一点;请使用本人符合条款的账号。
在远程 Mac 上用 SSH 登录时,部分工具的登录流程会给出一个链接,需要你在本地浏览器打开完成授权;也可以改用 API Key,通过环境变量提供。
安装:npm 是最通用的方式
这两款工具都发布在 npm 上,需要较新的 Node.js。建议先用 mise 装 Node.js,避免全局安装时用 sudo:
brew install mise
echo 'eval "$(mise activate zsh)"' >> ~/.zshrc && exec zsh
mise use -g node@lts
npm install -g @anthropic-ai/claude-code # Claude Code
npm install -g @openai/codex # OpenAI Codex CLI
claude --version
codex --version两款工具的官方文档也提供原生安装脚本或 Homebrew 等其他方式,具体包名和命令请以官方 README 为准。升级时用同样的方式升级,不要混装,否则 which claude 可能指向旧版本。
项目级配置:把约定写下来
AI 助手每次启动都会读取仓库里的说明文件。Claude Code 读 CLAUDE.md,Codex CLI 读 AGENTS.md。内容写清楚构建、测试命令和禁区,比每次在提示词里重复要可靠:
# AGENTS.md / CLAUDE.md
## 构建与测试
- 安装依赖:pnpm install
- 类型检查:pnpm exec tsc --noEmit
- 单元测试:pnpm test
## 约定
- 不要修改 migrations/ 下已有的文件
- 提交前必须通过类型检查和测试
- 不要提交 .env 或任何密钥两个工具同时用时,可以只维护一份,另一份写一行“参见 AGENTS.md”。用户级的个人偏好放在家目录的配置里(Claude Code 在 ~/.claude/,Codex CLI 在 ~/.codex/),不要进仓库。
非交互运行:接入脚本和定时任务
两款工具都支持把提示词作为参数传入、执行完即退出,适合放进 shell 脚本、CI 或 launchd:
# Claude Code:-p 为非交互模式
claude -p "运行测试,修复失败的用例,不要改测试文件" --max-turns 20
# Codex CLI:exec 子命令为非交互模式
codex exec "阅读 README,补全缺失的安装步骤"脚本里让助手在单独分支上工作,结束后由你审核 diff 再合并。长时间任务放在 tmux 里或交给 launchd,做法见 在远程 Mac 上长期运行 AI 编码助手。
权限控制:最小权限原则
- 用一个普通 macOS 用户运行助手,不用管理员账户;需要 sudo 的操作由你手动完成。
- 在工具的权限配置里写明允许和禁止的命令。Claude Code 可以在项目的
.claude/settings.json里配置;Codex CLI 有沙箱与审批模式选项,具体取值见其文档。 - Git 凭据用只对目标仓库有写权限的 deploy key 或细粒度令牌,禁止直接推送主分支。
- 不要在非交互脚本里开启“跳过所有确认”类选项,除非运行环境本身是隔离的。
// .claude/settings.json 示例
{
"permissions": {
"allow": ["Bash(pnpm test:*)", "Bash(git diff:*)"],
"deny": ["Bash(rm -rf:*)", "Bash(git push:*)", "Read(./.env)"]
}
}成本控制
订阅制按套餐给用量额度,API Key 按输入输出 token 计费,两种方式的价格和额度都会调整,以服务商官网为准。实际操作中:给自动化任务单独建 API Key 并在控制台设置预算上限;非交互运行时限制轮数;任务拆小,避免让助手在整个仓库里漫无目的地读文件;把大目录(如 node_modules、构建产物)排除在外。
机器本身的成本是固定的月租。三万主机按月出租整台 Mac mini,长任务跑多久都不额外计费,适合把 AI 助手和构建、测试放在同一台机器上。
常见问题
在加拿大的 Mac 上运行 AI 编码助手,能解决账号或地区问题吗?
不能。账号资格与可用地区由各服务商条款决定,机器所在地不改变这一点;请使用本人符合条款的账号。远程 Mac 解决的是“有一台常开、环境一致的 macOS 机器”,与账号资格无关。
npm 全局安装时报权限错误怎么办?
不要用 sudo npm install -g。用 mise 或 nvm 安装 Node.js,让全局包装在当前用户目录下;或者改用工具官方提供的其他安装方式(例如原生安装脚本或 Homebrew)。
怎么控制 AI 助手花掉的费用?
先确认计费方式:订阅制看用量额度,API Key 按 token 计费。API 方式下在服务商控制台设置预算或用量提醒,给自动化任务单独建一个 Key;非交互运行时限制对话轮数,避免一个任务无限循环。具体价格以服务商官网为准。
项目说明文件要提交到仓库吗?
通常应该提交。CLAUDE.md、AGENTS.md 这类文件描述的是项目约定(怎么构建、怎么测试、哪些目录别碰),对团队里每个人和每个工具都有用。个人偏好放到用户级配置里,不要提交。
扫码加微信客服手机上长按二维码识别