<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>自主编程 on Codexer</title><link>https://codexer.com/tags/%E8%87%AA%E4%B8%BB%E7%BC%96%E7%A8%8B/</link><description>Recent content in 自主编程 on Codexer</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Sun, 31 May 2026 09:00:00 +0800</lastBuildDate><atom:link href="https://codexer.com/tags/%E8%87%AA%E4%B8%BB%E7%BC%96%E7%A8%8B/index.xml" rel="self" type="application/rss+xml"/><item><title>Codex Goal Mode：让 AI 编程助手连续工作数小时，你只需要下一次指令</title><link>https://codexer.com/posts/2026-05-31-codex-goal-mode-autonomous-coding/</link><pubDate>Sun, 31 May 2026 09:00:00 +0800</pubDate><guid>https://codexer.com/posts/2026-05-31-codex-goal-mode-autonomous-coding/</guid><description>&lt;h2 id="你有没有遇到过这样的场景"&gt;你有没有遇到过这样的场景？&lt;/h2&gt;
&lt;p&gt;你有一个 40 个文件的 API 迁移任务要完成。你打开 Codex，输入指令，它帮你改了两三个文件。然后呢？你得再发一条消息，告诉它继续。改完，再发消息。再改，再发。整个下午，你基本上就是一个「继续」按钮的搬运工。&lt;/p&gt;
&lt;p&gt;这种情况在 2026 年 5 月 21 日之后有了根本性的改变。&lt;/p&gt;
&lt;p&gt;OpenAI 在那天一次性发布了三个 Codex 更新，内部称之为 &amp;ldquo;Codex Thursday&amp;rdquo;。其中最核心的一个功能就是 Goal Mode 正式版。它从实验阶段走向全平台稳定发布，覆盖 Codex 桌面应用、VS Code 和 JetBrains 扩展，以及 CLI。&lt;/p&gt;
&lt;p&gt;简单来说，Goal Mode 让你可以给 Codex 一个跨越数小时的长期目标，设定一个验证成功条件，然后就去做别的事。等你回来的时候，任务已经完成了。&lt;/p&gt;
&lt;h2 id="从工具到有任务的-agent"&gt;从「工具」到「有任务的 Agent」&lt;/h2&gt;
&lt;p&gt;要理解 Goal Mode 的价值，得先看清楚传统 AI 编程助手的工作模式有什么问题。&lt;/p&gt;
&lt;p&gt;绝大多数基于大语言模型的编程工具都是「请求响应」式的：你写一段提示词，模型写一段代码，你检查，再提修改意见，它再改。这种方式处理单个函数、解释一个 Bug、生成一段测试代码，效果很好。&lt;/p&gt;
&lt;p&gt;但它有一个致命的短板：一旦任务需要跨文件规划、执行测试、修复失败、再重跑测试这样的循环流程，请求响应模式就撑不住了。因为每一轮对话结束后，模型的状态就重置了。它不记得上一轮干了什么，也不知道接下来该干什么。全靠你在每一轮重新描述目标。&lt;/p&gt;
&lt;p&gt;Goal Mode 增加的是一层「持久化记忆」。当你设定一个目标后，这个目标会存活在本地 SQLite 数据库里，不会因为对话轮次的切换、中断、预算暂停或恢复而丢失。Codex 会持续追踪目标的完成状态，把自己的输出和你定义的成功条件做对比，然后不断迭代，直到目标完成或者触发了你设定的边界条件。&lt;/p&gt;
&lt;p&gt;用一句话概括：模型从「你问它答」的工具，变成了「领了任务就干活」的自主 Agent。&lt;/p&gt;
&lt;h2 id="五层架构让目标运转起来"&gt;五层架构，让目标运转起来&lt;/h2&gt;
&lt;p&gt;理解 Goal Mode 的内部架构，能帮你写出更高效的目标定义，也能在出问题时快速定位原因。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;状态层（SQLite）&lt;/strong&gt;：每个线程只能有一个活跃目标。目标的完整生命周期信息都存在一张本地 SQLite 表里，包括目标文本、当前状态（&lt;code&gt;active&lt;/code&gt;、&lt;code&gt;paused&lt;/code&gt;、&lt;code&gt;budget_limited&lt;/code&gt;、&lt;code&gt;complete&lt;/code&gt;）、Token 预算（可选）和实时消耗计数。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;应用服务 API（JSON-RPC）&lt;/strong&gt;：Codex 应用服务器暴露了 &lt;code&gt;thread/goal/set&lt;/code&gt;、&lt;code&gt;thread/goal/get&lt;/code&gt;、&lt;code&gt;thread/goal/clear&lt;/code&gt; 三个接口。你在 TUI 界面输入的 &lt;code&gt;/goal pause&lt;/code&gt; 或 &lt;code&gt;/goal clear&lt;/code&gt; 命令，底层调的就是这些接口。&lt;/p&gt;</description></item></channel></rss>