AI 编码助手

在远程 Mac 上用好
命令行 AI 编码助手

Claude Code、OpenAI Codex CLI 等命令行 AI 编码助手,装在一台常开的 Mac 上最省心。本文讲通用做法:怎么安装、怎么写项目级配置、怎么非交互运行接入脚本,以及怎样控制成本和权限。具体命令以各工具官方文档的最新版本为准。

三万主机 · 更新于

01 / ACCOUNT

先确认账号与条款

命令行 AI 编码助手一般有两种登录方式:用服务商的订阅账号登录,或者配置 API Key 按用量计费。动手之前先读一遍你所用工具的服务条款和可用地区说明。

账号资格与可用地区由各服务商条款决定,机器所在地不改变这一点;请使用本人符合条款的账号。

在远程 Mac 上用 SSH 登录时,部分工具的登录流程会给出一个链接,需要你在本地浏览器打开完成授权;也可以改用 API Key,通过环境变量提供。

02 / INSTALL

安装: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 可能指向旧版本。

资料来源:Claude Code 文档 · OpenAI Codex CLI(GitHub)

03 / PROJECT

项目级配置:把约定写下来

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/),不要进仓库。

04 / HEADLESS

非交互运行:接入脚本和定时任务

两款工具都支持把提示词作为参数传入、执行完即退出,适合放进 shell 脚本、CI 或 launchd:

# Claude Code:-p 为非交互模式
claude -p "运行测试,修复失败的用例,不要改测试文件" --max-turns 20

# Codex CLI:exec 子命令为非交互模式
codex exec "阅读 README,补全缺失的安装步骤"

脚本里让助手在单独分支上工作,结束后由你审核 diff 再合并。长时间任务放在 tmux 里或交给 launchd,做法见 在远程 Mac 上长期运行 AI 编码助手。

05 / PERMISSION

权限控制:最小权限原则

  • 用一个普通 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)"]
  }
}
06 / COST

成本控制

订阅制按套餐给用量额度,API Key 按输入输出 token 计费,两种方式的价格和额度都会调整,以服务商官网为准。实际操作中:给自动化任务单独建 API Key 并在控制台设置预算上限;非交互运行时限制轮数;任务拆小,避免让助手在整个仓库里漫无目的地读文件;把大目录(如 node_modules、构建产物)排除在外。

机器本身的成本是固定的月租。三万主机按月出租整台 Mac mini,长任务跑多久都不额外计费,适合把 AI 助手和构建、测试放在同一台机器上。

FAQ

常见问题

在加拿大的 Mac 上运行 AI 编码助手,能解决账号或地区问题吗?

不能。账号资格与可用地区由各服务商条款决定,机器所在地不改变这一点;请使用本人符合条款的账号。远程 Mac 解决的是“有一台常开、环境一致的 macOS 机器”,与账号资格无关。

npm 全局安装时报权限错误怎么办?

不要用 sudo npm install -g。用 mise 或 nvm 安装 Node.js,让全局包装在当前用户目录下;或者改用工具官方提供的其他安装方式(例如原生安装脚本或 Homebrew)。

怎么控制 AI 助手花掉的费用?

先确认计费方式:订阅制看用量额度,API Key 按 token 计费。API 方式下在服务商控制台设置预算或用量提醒,给自动化任务单独建一个 Key;非交互运行时限制对话轮数,避免一个任务无限循环。具体价格以服务商官网为准。

项目说明文件要提交到仓库吗?

通常应该提交。CLAUDE.md、AGENTS.md 这类文件描述的是项目约定(怎么构建、怎么测试、哪些目录别碰),对团队里每个人和每个工具都有用。个人偏好放到用户级配置里,不要提交。

微信
微信客服二维码扫码加微信客服手机上长按二维码识别
Telegram 客服