# 进阶 A · 本地工具与配置 · ChatGPT · 把日常事情做完

**作者** Aklman · **章节** 15 / 17 · **首发** 2026.10 · **语言** 中文为主, 中英双语
**原文** https://library.aklman.com/books/chatgpt/advanced-local
**全书 markdown** https://library.aklman.com/books/chatgpt/llms.md
**上一章** https://library.aklman.com/books/chatgpt/cost-and-habits/llms.md
**下一章** https://library.aklman.com/books/chatgpt/advanced-multi-agent/llms.md

> 本章来自 Aklman · Library, 完整免费阅读。允许 AI 摘读、引用、问答; 转载请保留作者署名与原文链接 (CC BY-NC-ND 4.0, https://library.aklman.com/license)。

---

> 需要终端或更细控制时再读:CLI、IDE、配置层级、权限、AGENTS.md 与 Skills。用本机版本核对命令, 不照抄旧开关。

如果前面的文件、旅行和表格流程已经够用, 可以跳过本附录。只有当你要反复处理本机目录、维护个人小工具, 或希望看清每一条命令与修改时, 才需要走进终端。这里的目标是完成一次有边界的本地修改, 留下能复跑的检查。

<span id="legacy-codex-03-cli" />

### I · 安装以后, 先确认在哪里工作

桌面 Codex、CLI 和 IDE 扩展是不同操作入口。已有编辑器项目, 可用 IDE 扩展查看选中代码与 diff;已有终端流程, 用 CLI 更容易接上命令。不要为练习同时安装三个入口。以下命令以已安装 Node.js 的终端为例, 安装会下载软件;先确认包名和发布者。本轮帮助核验版本是 `codex-cli 0.160.1`, 日期为 2026-10-09。[^1]

_安装一次;在你选定的小项目目录里启动_
```text

```bash
npm install -g @openai/codex
codex --version
codex login
codex login status
pwd
git status --short
codex --sandbox read-only --ask-for-approval on-request
```

```

用 ChatGPT 账号登录, 才按该账号适用的 included usage / credits 计费。API key 是独立账本, 不会消费你的 ChatGPT 订阅内含额度, 也不提供同一套云端集成。不要把「已订阅」理解成「API 免费」。账号、平台与灰度决定具体可用入口;没有 CLI 资格时继续使用账号可见的桌面体验, 不必先买 key。[^5]

**提示词 · Codex · Local**

```text
先只读检查这个项目。目标:<我要修改的行为>。请找出入口文件、相关测试和最小修改范围, 给出计划。不要改文件、安装依赖、连接外部账号或上传内容。遇到不清楚的需求先问我。
```

**示例**

```text
先只读检查我的文件改名预览器。找出生成新文件名和检测重名的逻辑, 以及对应测试。我要让它识别 Unicode 组合形式不同但显示相同的名字。给最小修改计划, 不改文件、不安装依赖、不上传原文件。
```

看完计划再准许修改, 说明允许的目录和检查命令。若你在只读会话中, 通过客户端权限设置切换到需要的工作区权限, 或退出后用下一条命令重新打开;不要要求它暗中绕过沙箱。最后看 diff、跑测试、用副本手工试一次, 再决定保留。

```bash
codex --sandbox workspace-write --ask-for-approval on-request
git diff --check
git diff
```

---

<span id="legacy-codex-04-approvals" />

### II · 权限的三件事:读写、审批、信任

沙箱决定工具通常能访问什么;审批决定越界时怎样处理;项目信任决定是否加载仓库附带的本地配置。`read-only` 仍可读取允许访问的文件, 不等于隐私隔离。`workspace-write` 允许工作区写入, 也不表示可以随意改受保护路径或访问网络。`never` 的含义是「不弹审批」, 被边界拦下的动作会失败, 并非「全部允许」。[^3]

| 需要 | 起点 | 你仍要做的事 |
|---|---|---|
| 调查与审查 | `read-only` + `on-request` | 不要批准与目标无关的扩大访问 |
| 修改已选项目 | `workspace-write` + `on-request` | 备份, 限定目录, 验收 diff |
| 无人值守检查 | `read-only` + `never` | 接受遇阻失败, 保存错误记录 |

> 截至 2026-10-09, 旧 approval_policy = untrusted 已退役, 可能导致启动失败。用户配置中的项目 trust_level = untrusted 仍是另一项有效设置。不要机械替换所有 untrusted 字符串。自动审批也不等于安全保证;本书练习不需要关闭沙箱或使用危险 bypass 参数。

### III · 配置:把经常选的东西记下来

个人默认在 `~/.codex/config.toml`;项目默认在 `.codex/config.toml`, 只在受信项目里加载。当前优先级从高到低为:命令行覆盖、离工作目录更近的项目配置、选中的 profile 文件、用户配置、云端管理默认、系统配置、内置默认。组织强制要求另行约束这些默认。[^2]一次尝试先用命令行, 确认好用再保存, 不必先抄一整份别人的配置。

_可选的只读 profile;不写死模型, 沿用账号可用选择_
```text title="~/.codex/inspect.config.toml"

```toml
#:schema https://learn.chatgpt.com/docs/config-schema.json
sandbox_mode = "read-only"
approval_policy = "on-request"
```

```

```bash
codex --profile inspect
codex --strict-config --profile inspect
```

当前 profile 是独立的 `inspect.config.toml`, 不再照抄旧教程里的 `[profiles.inspect]`。`--strict-config` 帮你发现当前版本不认识的键, 但不能证明权限合理、模型有资格使用或外部工具已经连通。先看 `codex --help`, 再核对 schema 与实际客户端。[^1]

<span id="legacy-codex-05-agents-md" />

### IV · 项目约定:只留下会反复用到的规则

把能反复检验的工作约定写进 `AGENTS.md`:项目怎么运行、哪些数据不碰、交付前执行什么。当前发现顺序包括个人层, 再从项目根目录到当前工作目录逐层读取;同一目录优先 `AGENTS.override.md`, 然后 `AGENTS.md`, 每层最多一份。更近的规则补充或覆盖先前项目约定, 不能推翻上层安全约束。默认合并上限为 32 KiB, 截至 2026-10-09。[^4]

_个人文件工具的一份小约定_
```text title="AGENTS.md"

```markdown
# Working agreements / 工作约定

- Source files are private. Do not upload their contents.
 原文件属私人资料, 不上传内容。
- Keep original files unchanged; write previews to a separate folder.
 保留原文件, 预览结果另存。
- Ask before installing dependencies, deleting files, or publishing anything.
 安装依赖、删除文件、公开发布前先确认。
- Run `node --test` after changes and report the command and exit status.
 修改后运行 `node --test`, 报告命令与退出状态。
- Test duplicate names, empty input, and non-ASCII names.
 检查重名、空输入与非 ASCII 文件名。
```

```

个人偏好属于记忆或个人指导;项目不变量属于 AGENTS.md;可重复的操作步骤适合 <a href="/books/chatgpt/reuse-workflows">任务卡与 skill</a>;模型和权限默认属于配置文件。不要在四个地方各复制一遍。改完约定, 重新启动会话并让它列出本次实际读取的规则来源;回答与文件不符时先查工作目录和 override, 不要继续叠加提示。

### V · 中断、继续与交付

方向错了就中断, 指出一处可观察的问题。继续原目标可以 resume;试另一方案可以 fork, 并说明不要动原方案的文件。分出新对话并不自动隔离文件, 同时写入应使用独立 worktree。每次恢复先检查当前目录、Git 状态和未完成的步骤, 不把旧聊天的成功声明当作当前文件状态。

```bash
codex resume
codex fork
codex --worktree
```

> 本附录的 CLI 版本与帮助已在 2026-10-09 实测。沙箱限制使本轮交互 TUI 在初始化时退出, 未完成 /agent、/permissions 的界面操作, 也未运行付费模型任务。正文里的操作路线基于当前官方说明, 对应账号行为仍待核。

> 把权限开到任务需要的位置, 把结果留在你能检查的地方

## 引用与参考

01 · OpenAI · Developer commands。命令及参数对照当前文档,并以本机 codex-cli 0.160.1 的 --help 复核;截至 2026-10-09。  (OpenAI · Developer commands)
02 · OpenAI · Config basics。个人、profile、受信项目与命令行的配置层级;截至 2026-10-09。  (OpenAI · Config basics)
03 · OpenAI · Agent approvals & security。untrusted 审批策略已退役;沙箱、审批与项目信任分别配置;截至 2026-10-09。  (OpenAI · Approvals and security)
04 · OpenAI · Custom instructions with AGENTS.md。指令发现顺序、目录覆盖与截断条件;截至 2026-10-09。  (OpenAI · AGENTS.md)
05 · OpenAI · Pricing。ChatGPT 登录与 API key 的额度和功能边界不同;截至 2026-10-09。  (OpenAI · Pricing)

---

*进阶 A · 本地工具与配置 · ChatGPT · 把日常事情做完 · Aklman 著 · CC BY-NC-ND 4.0 · https://library.aklman.com/books/chatgpt/advanced-local*
