核心概念与架构
Codex 的工作原理
Codex 作为一个 AI 编程代理,其核心架构围绕"理解-规划-执行-验证"的循环展开。当您向 Codex 提出请求时,它会经历以下流程:
- 理解请求 — 解析自然语言指令,理解您的真实意图
- 探索项目 — 通过文件系统工具浏览相关代码,建立上下文
- 制定计划 — 基于项目结构和技术栈确定最佳实现方案
- 执行操作 — 创建、编辑文件或运行命令来实现计划
- 验证结果 — 检查执行结果,必要时进行调整
三种核心模式
Codex 提供三种主要的操作模式,分别适用于不同场景:
项目模式(Project Mode)
这是 Codex 的默认模式。在此模式下,Codex 可以:
- 浏览和索引整个项目结构
- 跨多个文件进行上下文感知操作
- 执行大规模重构和功能开发
- 管理项目的依赖关系
当您在一个已有项目目录中启动 Codex 时,它会自动进入项目模式。
终端代理模式(Terminal Agent Mode)
Codex 能够直接在您的终端中执行命令,这使得它能够:
- 安装和更新依赖包
- 运行测试和构建脚本
- 启动开发服务器
- 执行 Git 操作
- 检查和调试运行时错误
此模式的关键特性是 Codex 会实时观察命令的输出,并根据输出结果自主决定下一步操作。
对话模式(Conversation Mode)
Codex 支持持续对话,可以记住上下文中讨论的内容。特性包括:
- 多轮对话上下文维护
- 代码片段引用和讨论
- 历史命令和操作追溯
- 结果比较和迭代优化
文件操作核心工具
Codex 通过以下工具与文件系统交互:
Read(读取)
读取文件内容到对话上下文中,支持:
- 指定行范围读取
- 读取整个文件
- 读取多个文件
- 自动识别文件编码
// 内部调用示例
read("src/index.ts");
read("src/index.ts", { offset: 10, limit: 50 });
Edit(编辑)
对现有文件进行精确修改,特性包括:
- 精确字符串替换
- 支持正则匹配
- 保留文件其余部分不变
- 修改前后对比显示
// 内部调用示例
edit("src/index.ts", 旧文本, 新文本);
Write(写入)
创建新文件或覆盖已有文件:
- 自动创建中间目录
- 支持二进制文件
- 大文件流式写入
Bash(命令执行)
在终端中执行命令并获取输出:
- 实时流式输出
- 自动设置工作目录
- 超时控制
- 后台任务支持
Mode 切换
根据任务需求,您可以在不同类型的工作模式之间切换:
| 模式 | 适用场景 | 命令 |
|---|---|---|
| 开发模式 | 日常编码、调试 | claude |
| 审查模式 | 代码审查、安全检查 | claude --review |
| 批量模式 | 自动化脚本、批量处理 | claude --execute |
| 交互模式 | 学习、探索、问答 | claude --interactive |
上下文管理
Codex 的上下文管理是其核心能力之一:
- 文件索引:自动扫描并索引项目文件,建立关系图谱
- Token 配额:智能管理上下文窗口,优先保留重要信息
- 会话压缩:在长对话中自动压缩历史,保持关键上下文
- 项目缓存:跨会话缓存项目结构和常用文件
理解这些核心概念是高效使用 Codex 的基础,后续章节将深入讲解每个特性的具体用法。