【譯】玩轉 Codex(來自 Codex 官方團隊分享)
整理版優先睇
Codex 已經從代碼助手進化為一個持久對話、整合工具、自動化執行嘅計算機工作系統,開發者可以透過語音、任務排隊、自動化同共享記憶嚟更高效完成工作。
呢篇文章係 Codex 官方團隊嘅分享翻譯,原作者 jxnlco 喺 X 平台上發布。文章指出,大多數開發者最初只係喺代碼層面用 Codex:檢查代碼庫、生成 diff、運行測試、提交 PR。但隨住瀏覽器、桌面控制、API 等界面逐步開放,Codex 已經唔再只係一個代碼助手,而係一個可以用嚟完成計算機工作嘅系統。
文章詳細介紹咗 Codex 嘅幾項新功能:持久對話(保留上下文、跨會話運作)、語音輸入(捕捉未成形嘅想法)、實時引導同任務排隊(中斷或排隊工作)、工具觸達範圍(瀏覽器、Chrome、桌面、MCP 伺服器等)、自動化(定時或對話自動化)、目標(有明確終點線嘅長期任務)、側邊欄(就地審查工件)同共享記憶(跨對話保留上下文)。呢啲功能結合,令開發者可以更自然咁控制 Codex 完成複雜工作。
整體結論係:Codex 仍然係由寫代碼開始,但而家圍繞代碼嘅更多工作都可以透過同一個系統觸達,包括瀏覽器界面、桌面控制、對話自動化同側邊欄審查。呢個改變咗我哋控制 Codex 嘅方式,由單次指令變成持續互動,令開發者可以更專注於創造性工作。
- 結論:Codex 已從代碼助手進化為一個可持久對話、使用工具、自動化運行嘅計算機工作系統。
- 方法:持久對話結合任務排隊、實時引導,讓開發者可以深度參與並控制工作流程。
- 差異:相比傳統每次重置嘅對話,Codex 嘅持久對話保留上下文,並可透過固定對話快速跳轉。
- 啟發:對話自動化與目標功能讓 Codex 可以自主推進任務,直至滿足終點線,配合驗證器確保質量。
- 可行動點:善用共享記憶(如 AGENTS.md 或 Obsidian 知識庫)讓跨對話嘅上下文得以保留,提高效率。
AGENTS.md 模板
一個示範點樣組織持久上下文嘅檔案結構:將 ~/vault 視為持久工作記憶;使用規範筆記;分發待辦事項、人員、項目、每日摘要;保留決策、阻礙因素、責任人、日期同有用連結;避免無謂改動。
官方記憶功能位置
Codex 設置 > 個性化 > 記憶(Settings > Personalization > Memories)提供官方記憶功能,記住個人偏好、循環工作流同踩過嘅坑。
持久對話:工作空間而非短暫聊天
持久對話係跨多個會話長期運行並保留工作上下文嘅 Codex 對話。佢哋對於週期性工作流非常有用,例如專屬嘅「總參謀」對話、產品版本發佈對話、文檔審查對話或外部監控對話。
置頂對話係令持久對話保持觸手可及嘅方式,透過 Command-1 到 Command-9 快捷鍵可以直接跳轉。
- 一個專屬嘅「總參謀」對話,幫你處理各種雜事。
- 一個專門負責產品版本發佈嘅對話。
- 一個專門負責文檔審查嘅對話。
- 一個專門用於外部監控嘅對話。
語音輸入、實時引導與任務排隊
語音輸入寶貴在於能夠捕捉想法最原始嘅版本,特別適用於模糊起點:例如「我記得 Slack 裏有個叫 Ben 嘅人提過呢件事」,智能體就可以自動搜索。會議記錄或者口述規劃筆記都係好素材。
實時引導可以喺當前步驟結束前中斷 Codex 任務,輸入新方向,例如網站審查時即時標註「調細呢個」或者「間距唔對」。
任務排隊就唔會中斷當前任務,而係將下一個任務加入隊列,例如「完成後喺 Slack 發預覽連結」。實時引導改變而家做緊嘅事,任務排隊改變跟住要做嘅事。
- 1 實時引導:喺當前步驟未完成前中斷並修正方向。
- 2 任務排隊:喺當前步驟完成後自動執行下一個任務。
工具觸達範圍、自動化與目標
Codex 嘅工具可以層層向外擴展:$browser 用於側邊欄瀏覽器審查,@chrome 用於已登錄瀏覽器狀態,@computer 用於桌面 GUI。MCP 伺服器同連接器進一步延伸到 Slack、Gmail 等工作流。
技能(Skills)令重複工作流可複用,一旦證明有用就可以打包,唔使重新學習。
自動化令 Codex 工作按計劃運行。定時自動化適用於週期性任務;對話自動化則按計劃返回到同一個對話,持續檢查條件。例如一個「總參謀」對話每30分鐘檢查 Slack 同 Gmail。
- 測試套件
- 基準測試
- 缺陷復現
- 驗證矩陣
- 必須保持通過嘅端到端工作流
側邊欄與共享記憶
側邊欄令工作保持喺產生佢嘅對話旁邊。用戶可以當場審查代碼、幻燈片、PDF、網頁等工件,仲可以直接標註修改。應用內瀏覽器允許 Codex 檢查渲染頁面並響應標註。
共享記憶係存儲喺單一對話之外嘅持久上下文,例如 Obsidian 知識庫。
- 檢查工件
- 標註需要更改嘅內容
- 操作網頁界面
- 審查更改
一個實用模式係將長期對話錨定喺 Obsidian 知識庫,包含 TODO.md、people/、projects/ 等目錄,並喺最外層放 AGENTS.md 定義規則。Codex 仲有官方記憶功能(設置 > 個性化 > 記憶),配合 Chronicle 組件自動構建記憶。
大部分開發者一開始都係喺程式碼層面用編程智能體:檢查程式碼庫、生成 diff、執行測試同埋提交 Pull Request。
呢啲仍然係 Codex 嘅核心重點。但係電腦上嘅大部分工作其實已經透過程式碼嚟實現:執行終端命令、瀏覽網頁、呼叫 API、匯出文件、回應事件同埋觸發自動化。隨住呢啲界面逐步向 Codex 開放,佢感覺唔再只係一個狹義上嘅程式碼助手,而更加似一個用嚟完成電腦工作嘅系統。
Codex 應用令呢個轉變變得具體同清晰。一個對話可以保留上下文、使用工具、呈現工件,並跨提示詞持續進行,而唔係每次交流後重置。
想要更充分咁利用 Codex,意味住需要將呢啲能力結合起嚟:
◆ 能夠保留上下文嘅持久對話
◆ 喺用戶參與過程中嘅語音輸入、即時引導同任務排隊
◆ 令 Codex 能夠觸及程式碼庫以外嘅瀏覽器、電腦使用(computer-use)、MCP 伺服器同連接器
◆ 喺用戶離開時仲可以繼續工作嘅對話自動化同目標(Goals)
◆ 側邊欄,用戶可以喺入面審查程式碼、文件、幻燈片同其他工件
持久對話
持久對話:跨多個會話長久運行並保留工作上下文嘅 Codex 對話。
置頂對話係令持久對話保持隨手可得嘅一種方式。佢哋對於週期性嘅工作流程非常有用,例如:
◆ 一個專屬嘅「總參謀」對話(幫你處理各樣雜務)
◆ 一個專門負責產品版本發佈嘅對話
◆ 一個專門負責文件審查嘅對話
◆ 一個專門用於外部監控嘅對話
呢啲係持久化嘅工作空間,而唔係短暫嘅傾偈。Codex 能夠隨住時間推移不斷重訪佢哋,保留之前嘅決策、偏好同工作上下文,否則呢啲內容每次開始都要從頭構建。
固定對話嘅快捷鍵令呢一切變得非常實用。透過 Command-1 到 Command-9 可以直接跳轉到保存嘅對話中。
語音輸入
語音輸入之所以寶貴,係因為佢能夠喺想法被壓縮成精心雕琢嘅文字之前,捕捉到最原始嘅版本。
Codex 有內置嘅語音輸入功能。佢特別適用於一啲講出嚟好自然、但寫起嚟好古怪嘅模糊起點:
我記得好似有個叫 Ben 嘅人在 Slack 入面提過呢件事。
我唔記得具體細節喇。
請去幫我查嚇。
對於一個能夠搜索、收集上下文並反饋結果嘅智能體嚟講,呢啲通常就夠曬數。
佢同樣適用於你嘅想法仲未完全成形之前,先進行兩到三分鐘嘅腦力激盪。
會議記錄都係同樣道理。一份原始嘅會議記錄或口述嘅規劃筆記,往往比簡短嘅摘要提供咗更好嘅素材,因為佢保留咗不確定性、重點同未完成嘅思緒。
即時引導與任務排隊
當語音同對當前任務嘅明確控制相結合時,會變得更加有用。
即時引導:喺當前步驟結束之前,用新嘅方向中斷正在執行嘅 Codex 任務。
當智能體行錯咗方向、需要喺佢完成前進行修正時,即時引導就大派用場。例如,喺進行網站審查時,用戶可以中斷工作,同時喺側邊欄嘅界面上進行標註:
◆ 將呢個整細啲
◆ 呢兩個元素之間嘅間距感覺唔啱
◆ 呢段文案係錯嘅
任務排隊:為 Codex 添加喺當前步驟完成後要執行嘅工作。
任務排隊就唔同。佢唔會中斷緊進行嘅任務,而係將下一個任務加入隊列。用戶可能會講:
一旦工作完成,將預覽連結喺 Slack 上發俾審查人員。
即時引導改變咗 Codex 而家做緊嘅嘢。任務排隊改變咗接下來應該發生乜嘢。呢兩者都能夠令用戶喺工作展開時保持深度參與。
工具與觸及範圍
一旦對話具備咗連續性,接下來嘅問題就係佢能夠對乜嘢採取行動。Codex 可以層層向外擴展:
◆ $browser 用於側邊欄中嘅應用內瀏覽器,Codex 可以喺入面檢查同標註網頁界面
◆ @chrome 用於已登入嘅瀏覽器狀態同基於 Chrome 嘅工作流程
◆ @computer 用於僅透過桌面 GUI 存在嘅工作
$browser 適用於側邊欄瀏覽器審查。@chrome 適用於依賴用戶 Chrome 上下文嘅已登入瀏覽器工作。@computer 適用於只能透過桌面 GUI 完成嘅任務。
MCP 伺服器同連接器將同樣嘅概念延伸到工作流程嘅其餘部分。Slack、Gmail 同 Calendar 非常重要,因為好多重要任務喺變成程式碼之前,首先表現為訊息、收件箱條目或日程安排問題。
技能(Skills)令重複嘅工作流程可以重用。一旦某個工作流程被證明有用,就可以將佢打包為一個技能,咁樣 Codex 就可以再次運行佢,而無需重新學習該流程。
隨時隨地工作
Codex 流動應用改變咗用戶一定要坐喺辦公桌前嘅情況。一項任務可以喺保留咗文件、權限同本地配置嘅 Mac 上啟動,然後喺用戶透過手機查看時繼續進行。
呢啲喺微小嘅瞬間入面至關重要。有人可以離開辦公枱,讓 Codex 運行較長耗時嘅任務,從外部回答問題、批准下一步操作,或者喺返回之前重新引導對話。本地環境保持原樣;用戶就唔使受呢個束縛。
自動化
自動化可以令 Codex 嘅工作按計劃運行。當需要從一個工作空間全新啟動週期性任務時(例如每日報告或定期嘅程式碼庫檢查),可以使用定時自動化。當日程安排應該返回到具有運行上下文嘅活躍對話中時,請使用對話自動化。
對話自動化:心跳式嘅週期性喚醒調用,可以按計劃返回到同一個 Codex 對話中。
置頂對話雖然好用,但佢哋仍然喺度等待用戶嘅回歸。而對話自動化可以每隔幾分鐘或幾小時檢查一次某件事,持續運行直到滿足某個條件,並隨住時間推移調整節奏。
一個「總參謀」對話可以每 30 分鐘運行一次:
每 30 分鐘檢查一次 Slack 同 Gmail,睇下有邊啲需要我處理嘅未讀訊息。
幫我排好優先級。
如果有人問我問題,盡可能深入研究答案並為我起草一份回覆,但係暫時唔好送出。
當用戶返回時,收集上下文呢個成本高昂嘅部分通常已經完成咗。人類仍然係決定送出啲乜嘢嗰個人。
對話自動化同樣適用於反饋循環。對話自動化可以監控 Pull Request 評論、Google Docs 評論或 Slack 回覆,並喺用戶離開時讓周圍嘅工作保持推進。
設想一個影片製作者喺 Slack 中分享影片嘅動畫工作流程。對話自動化可以按計劃檢查該對話,喺評論送達時渲染更新版本,並喺同一對話中回覆並提及審查人員。如果某項整合無法完成最終嘅上載,桌面自動化可以透過 GUI 完成呢一步驟。
呢個循環跨越咗用於反饋嘅 Slack、用於渲染嘅程式碼庫,以及用於最終上載嘅桌面自動化。
目標
當任務擁有一個智能體可以持續推進嘅真實終點線時,「目標」先至係最強大。一個弱目標係:
目標(Goals): 運行時間較長嘅 Codex 任務,擁有一個智能體可以隨住時間推移持續邁進嘅終點線。
一個「差嘅目標」係咁樣設置嘅:
執行呢個 Markdown 文件入面嘅計劃。
而一個「好嘅目標」必須有可衡量嘅成功標準:
例如,工程師可能想將一個內部工具從 Python 遷移到 Rust,佢哋可以透過設置新目錄、定義目標並讓終點線變得明確:
喺單元測試通過之前,新嘅實現都唔算完成。
目標就係將「持續嘅執行」同「驗證」結合埋一齊。用戶定義咗結果、停止條件以及表示 Codex 係咪正在接近目標嘅信號。
有用嘅驗證器包括:
◆ 測試套件
◆ 基準測試
◆ 缺陷重現
◆ 驗證矩陣
◆ 必須保持通過嘅端到端工作流程
有野心固然重要,但係冇驗證,佢亦都只係一個願望。
側邊欄
側邊欄令工作保持喺產生佢嘅對話旁邊。用戶可以當場審查產物,而無需導出工件並切換上下文。輸出嘅內容可能係程式碼,但亦都可能係幻燈片、PDF、網頁、表格或喺過程中創建嘅其他工件。
佢特別能夠勝任以下四項工作:
1、檢查工件
2、標註需要更改嘅內容
3、操作網頁界面
4、審查更改
側邊欄允許用戶喺適當嘅位置審查 Markdown、電子表格、數據表、文件同幻燈片。佢哋可以檢查、標記同修改工件,而無需打破現有嘅閉環。

幻燈片或 PDF 可以保持打開狀態,就在產生佢嘅對話旁邊,隨時可以進行直接審查同修復。

應用內瀏覽器允許 Codex 檢查渲染後嘅頁面、對其進行控制,並直接喺接受審查嘅界面上回應標註。頁面或工件上嘅評論會保存喺工作閉環內部,而唔係變成獨立嘅交接件。
網絡既變成咗輸出,亦變成咗控制界面。Codex 可以構建一個工件,喺側邊欄中打開佢、檢查佢、對其進行除錯,並喺適當嘅位置持續優化同一個對象。

以下呢啲場景配合側邊欄使用尤其出色:
◆ 用單個 index.html 嚟做輕量級嘅靜態展示
◆ 行 Storybook 嚟審查用戶界面 (UI) 組件
◆ 用 Remotion Studio 搞程式碼生成嘅動畫
◆ 喺瀏覽器入面放映嘅幻燈片演示
◆ 用於分析數據工作流程嘅數據應用
單個 index.html 文件就能變成一個好玩嘅互動式小應用,無需伺服器。對話自動化仲可以隨住時間嘅推移刷新呢啲靜態文件(就好似 CC 工程師 Thariq 前兩日喺 X 上發表嘅最新提示詞所能達到嘅效果一樣),噉樣等你返回時,對話中會有一啲全新嘅內容喺度等你。
共享記憶
當長效運行嘅對話喺任何單一對話之外共享記憶時,佢哋會變得更加有用。
共享記憶: 儲存在單一對話以外嘅持久上下文,以便未來嘅工作可以從明確且可審查嘅內容中恢復。
一種持久嘅模式係將長期存在嘅對話錨定喺 Obsidian 知識庫中。喺實踐中,呢個意味住一個由純文件組成嘅文件夾,可以非常直觀咁進行檢查、編輯、移動並長期保存。團隊可以將該文件夾儲存在雲端儲存、Git、Dropbox、Google Drive 或其他符合其工作流程嘅同步層中。
一個知識庫可能睇起嚟係噉樣:
vault/
├── TODO.md
├── people/
├── projects/
├── agent/
└── notes/
喺最外層嘅目錄下,你可以放置一個 AGENTS.md 文件。你可以俾 Codex 定規則:當佢瞭解到關於人員、項目、決策以及待辦事項嘅新情況時,應該點樣更新呢個知識庫。
唔好生搬硬套某一個完全相同嘅知識庫結構。教曉智能體持久上下文應該擺喺邊度、要保留邊啲上下文,以及幾時唔好製造無謂嘅改動。
一份切實可行嘅 AGENTS.md 可能會咁樣寫:
◆ 將 ~/vault 視為持久嘅工作記憶。
◆ 相比於筆記嘅野蠻生長,更傾向於使用規範筆記。
◆ 明確分發待辦事項、人員、項目、每日摘要同草稿筆記。
◆ 保留決策、阻礙因素、負責人、日期同有用嘅連結。
◆ 如果冇發生實質性嘅改變,唔好對知識庫進行無謂嘅改動。
程式碼庫保存程式碼。知識庫則保存滾動嘅上下文:涉及嘅人員、發生咗乜嘢改變、乜嘢被阻塞咗、乜嘢需要跟進,以及啲如果唔係就會喺會話之間消失嘅內容。
重要嘅上下文唔應該只存在於對話記錄中。將佢寫喺某個地方,讓下一個對話能夠重新拾起。
Codex 仲喺“”(Settings > Personalization > Memories)中提供咗官方嘅記憶功能。佢會記住你嘅個人偏好、循環工作流程以及你踩過嘅坑,同時會提供本地回溯能力。佢哋係對明確嘅書面上下文嘅補充,而唔係取代佢。Chronicle 組件透過幫助 Codex 從最近嘅屏幕上下文中構建記憶,向住相同嘅方向推進。設置>個性化>記憶(Settings > Personalization > Memories)中提供咗官方嘅記憶功能。佢會記住你嘅個人偏好、循環工作流程以及你踩過嘅坑,同時會提供本地回溯能力。佢哋係對明確嘅書面上下文嘅補充,而唔係取代佢。Chronicle 組件透過幫助 Codex 從最近嘅屏幕上下文中構建記憶,向住相同嘅方向推進。
從程式碼向外延伸
Codex 仍然係由寫程式碼開始。但係而家,圍繞程式碼嘅更多工作都可以透過同一個系統觸及:MCP 伺服器、瀏覽器界面、桌面控制、對話自動化同埋啲可以喺側邊欄中直接審查嘅文件。
呢個改變咗我哋控制 Codex 嘅方式。
「任務幹預」可以中斷緊進行嘅工作。
「任務排隊」可以將下一項任務排好。
「對話自動化」可以喺用戶離開時保持對話活躍。
「目標」就增加咗一個明確嘅終點線,令 Codex 可以持續努力咁向住目標衝刺。
而家嘅 Codex 已經可以將工作流程從「指令帶到執行」>「再到最終文件嘅審查」,即使某些工作已經超出咗程式碼庫嘅範疇,佢依然能夠遊刃有餘。
作者:jason
連結:https://x.com/jxnlco/status/2057153744630890620
既然睇到呢度,如果覺得仲唔錯,幫手順手點個「讚」、「在看」、「轉發」三連;如果想第一時間收到推送,亦都可以俾我加個星標★,非常感謝!
大多數開發者最初都是在代碼層面使用編程智能體:檢查代碼庫、生成 diff、運行測試以及提交 Pull Request。
這仍然是 Codex 的核心重心。但計算機上的大部分工作其實已經通過代碼來實現:執行終端命令、瀏覽網頁、調用 API、導出文檔、響應事件以及觸發自動化。隨着這些界面逐步向 Codex 開放,它感覺不再只是一個狹義上的代碼助手,而更像是一個用於完成計算機工作的系統。
Codex 應用 讓這一轉變變得具體而清晰。一個對話可以保留上下文、使用工具、呈現工件,並跨提示詞持續進行,而不是在每次交流後重置。
想要更充分地利用 Codex,意味着需要將這些能力結合起來:
◆ 能夠保留上下文的持久對話
◆ 在用戶參與過程中的語音輸入、實時引導和任務排隊
◆ 讓 Codex 能夠觸達代碼庫之外的瀏覽器、計算機使用(computer-use)、MCP 服務器和連接器
◆ 在用戶離開時仍能繼續工作的對話自動化和目標(Goals)
◆ 側邊欄,用戶可以在其中審查代碼、文檔、幻燈片和其他工件
持久對話
持久對話:跨多個會話長久運行並保留工作上下文的 Codex 對話。
置頂對話是讓持久對話保持觸手可及的一種方式。它們對於週期性的工作流非常有用,例如:
◆ 一個專屬的「總參謀」對話(幫你處理各種雜事兒)
◆ 一個專門負責產品版本發佈的對話
◆ 一個專門負責文檔審查的對話
◆ 一個專門用於外部監控的對話
這些是持久化的工作空間,而不是短暫的聊天。Codex 能夠隨着時間的推移不斷重訪它們,保留之前的決策、偏好和工作上下文,否則這些內容在每次開始時都需要從頭構建。
固定對話的快捷鍵使這一切變得非常實用。通過 Command-1 到 Command-9 可以直接跳轉到保存的對話中。
語音輸入
語音輸入之所以寶貴,是因為它能夠在想法被壓縮成精雕細琢的文字之前,捕捉到其最原始的版本。
Codex 擁有內置的語音輸入功能。它特別適用於那些說起來很自然、但寫起來很彆扭的模糊起點:
我記得好像有個叫 Ben 的人在 Slack 裏提過這件事。
我不記得具體細節了。
請去幫我查一下。
對於一個能夠搜索、收集上下文並反饋結果的智能體來說,這通常就足夠了。
它同樣適用於你的想法還暫未完全成型之前,先進行兩到三分鐘的頭腦風暴。
會議記錄也是同樣的道理。一份原始的會議記錄或口述的規劃筆記,往往比簡短的摘要提供了更好的素材,因為它保留了不確定性、重點和未完成的思緒。
實時引導與任務排隊
當語音與對當前任務的明確控制相結合時,會變得更加有用。
實時引導:在當前步驟結束之前,用新的方向中斷正在執行的 Codex 任務。
當智能體走錯了方向、需要在其完成前進行修正時,實時引導就派上用場了。例如,在進行網站審查時,用戶可以中斷工作,同時在側邊欄的界面上進行標註:
◆ 把這個調小一點
◆ 這兩個元素之間的間距感覺不對
◆ 這段文案是錯的
任務排隊:為 Codex 添加在當前步驟完成後要執行的工作。
任務排隊則不同。它不會中斷正在進行的任務,而是將下一個任務加入隊列。用戶可能會說:
一旦工作完成,把預覽連結在 Slack 上發給審查人員。
實時引導改變了 Codex 現在正在做的事情。任務排隊改變了接下來應該發生什麼。這兩者都能讓用戶在工作展開時保持深度參與。
工具與觸達範圍
一旦對話具備了連續性,接下來的問題就是它能對什麼採取行動。Codex 可以層層向外擴展:
◆ $browser 用於側邊欄中的應用內瀏覽器,Codex 可以在其中檢查和標註網頁界面
◆ @chrome 用於已登錄的瀏覽器狀態和基於 Chrome 的工作流
◆ @computer 用於僅通過桌面 GUI 存在的工作
$browser 適用於側邊欄瀏覽器審查。@chrome 適用於依賴用戶 Chrome 上下文的已登錄瀏覽器工作。@computer 適用於只能通過桌面 GUI 完成的任務。
MCP 服務器和連接器將同樣的概念延伸到工作流的其餘部分。Slack、Gmail 和 Calendar 非常重要,因為許多重要任務在變成代碼之前,首先表現為消息、收件箱條目或日程安排問題。
技能(Skills)使重複的工作流可複用。一旦某個工作流被證明是有用的,就可以將它打包為一個技能,這樣 Codex 就可以再次運行它,而無需重新學習該流程。
隨時隨地工作
Codex 移動應用 改變了用戶必須坐在辦公桌前的情況。一項任務可以在保留了文件、權限和本地配置的 Mac 上啓動,然後在用戶通過手機查看時繼續進行。
這在微小的瞬間裏至關重要。有人可以離開辦公桌,讓 Codex 運行較長耗時的任務,從外部回答問題、批准下一步操作,或者在返回之前重新引導對話。本地環境保持原樣;用戶則不必受此束縛。
自動化
自動化可以讓 Codex 的工作按計劃運行。當需要從一個工作空間全新啓動週期性任務時(例如每日報告或定期的代碼庫檢查),可以使用定時自動化。當日程安排應當返回到具有運行上下文的活躍對話中時,請使用對話自動化。
對話自動化:心跳式的週期性喚醒調用,可以按計劃返回到同一個 Codex 對話中。
置頂對話雖然好用,但它們仍然在等待用戶的迴歸。而對話自動化可以每隔幾分鐘或幾小時檢查一次某件事,持續運行直到滿足某個條件,並隨着時間的推移調整節奏。
一個「總參謀」對話可以每 30 分鐘運行一次:
每 30 分鐘檢查一次 Slack 和 Gmail,查看有哪些需要我處理的未讀消息。
幫我排好優先級。
如果有人問我問題,儘可能深入地研究答案併為我起草一份回覆,但先不要發送。
當用戶返回時,收集上下文這一成本高昂的部分通常已經完成了。人類仍然是決定發送什麼的那個人。
對話自動化同樣適用於反饋循環。對話自動化可以監控 Pull Request 評論、Google Docs 評論或 Slack 回覆,並在用戶離開時讓周圍的工作保持推進。
設想一個視頻製作者在 Slack 中分享視頻的動畫工作流。對話自動化可以按計劃檢查該對話,在評論送達時渲染更新版本,並在同一對話中回覆並提及審查人員。如果某項集成無法完成最終的上傳,桌面自動化可以通過 GUI 完成這一步驟。
這個循環跨越了用於反饋的 Slack、用於渲染的代碼庫,以及用於最終上傳的桌面自動化。
目標
當任務擁有一個智能體可以持續推進的真實終點線時,「目標」才是最強大的。一個弱目標是:
目標(Goals): 運行時間較長的 Codex 任務,擁有一個智能體可以隨着時間的推移持續邁進的終點線。
一個「糟糕的目標」是這樣設置的:
執行這個 Markdown 文件中的計劃。
而一個「優秀的目標」必須具有可衡量的成功標準:
例如,工程師可能想將一個內部工具從 Python 遷移到 Rust,他們可以通過設置新目錄、定義目標並讓終點線變得明確:
在單元測試通過之前,新的實現都不算完成。
目標就是將「持續的執行」與「驗證」結合在一起。用戶定義了結果、停止條件以及表示 Codex 是否正在接近目標的信號。
有用的驗證器包括:
◆ 測試套件
◆ 基準測試
◆ 缺陷復現
◆ 驗證矩陣
◆ 必須保持通過的端到端工作流
有野心固然重要,但沒有驗證,它也就只是一個願望。
側邊欄
側邊欄讓工作保持在產生它的對話旁邊。用戶可以當場審查產物,而無需導出工件並切換上下文。輸出的內容可能是代碼,但也可能是幻燈片、PDF、網頁、表格或在過程中創建的其他工件。
它特別能勝任以下四項工作:
1、檢查工件
2、標註需要更改的內容
3、操作網頁界面
4、審查更改
側邊欄允許用戶在適當的位置審查 Markdown、電子表格、數據表、文檔和幻燈片。他們可以檢查、標記和修改工件,而無需打破現有的閉環。

幻燈片或 PDF 可以保持打開狀態,就在產生它的對話旁邊,隨時可以進行直接審查和修復。

應用內瀏覽器允許 Codex 檢查渲染後的頁面、對其進行控制,並直接在接受審查的界面上響應標註。頁面或工件上的評論會保存在工作閉環內部,而不是變成獨立的交接件。
網絡既變成了輸出,也變成了控制界面。Codex 可以構建一個工件,在側邊欄中打開它、檢查它、對其進行調試,並在適當的位置持續優化同一個對象。

以下這些場景配合側邊欄使用尤其出色:
◆ 用單個 index.html 來做輕量級的靜態展示
◆ 跑 Storybook 來審查用戶界面 (UI) 組件
◆ 用 Remotion Studio 搞代碼生成的動畫
◆ 在瀏覽器裏放映的幻燈片演示
◆ 用於分析數據工作流的數據應用
單個 index.html 文件就能變成一個好玩兒的交互式小應用,無需服務器。對話自動化還可以隨着時間的推移刷新這些靜態文件(就像 CC 工程師 Thariq 前兩天在 X 上發表的最新提示詞所能達到的效果一樣),這樣以便在你返回時,對話中會有一些全新的內容在等待着你。
共享記憶
當長效運行的對話在任何單一對話之外共享記憶時,它們會變得更加有用。
共享記憶: 存儲在單一對話之外的持久上下文,以便未來的工作可以從明確且可審查的內容中恢復。
一種持久的模式是將長期存在的對話錨定在 Obsidian 知識庫中。在實踐中,這意味着一個由純文件組成的文件夾,可以非常直觀地進行檢查、編輯、移動並長期保存。團隊可以將該文件夾存儲在雲存儲、Git、Dropbox、Google Drive 或其他符合其工作流的同步層中。
一個知識庫可能看起來像這樣:
vault/
├── TODO.md
├── people/
├── projects/
├── agent/
└── notes/
而在最外層的目錄下,你可以放置一個 AGENTS.md 文件。你可以給 Codex 定規則:當它瞭解到關於人員、項目、決策以及待辦事項的新情況時,應該如何更新這個知識庫。
不要生搬硬套某一個完全相同的知識庫結構。教會智能體持久上下文應該存放在哪裏、要保留哪些上下文,以及何時不要製造無謂的改動。
一份切實可行的 AGENTS.md 可能會這樣寫:
◆ 將 ~/vault 視為持久的工作記憶。
◆ 相比於筆記的野蠻生長,更傾向於使用規範筆記。
◆ 明確分發待辦事項、人員、項目、每日摘要和草稿筆記。
◆ 保留決策、阻礙因素、責任人、日期和有用的連結。
◆ 如果沒有發生實質性的改變,不要對知識庫進行無謂的改動。
代碼庫保存代碼。知識庫則保存滾動的上下文:涉及的人員、發生了什麼改變、什麼被阻塞了、什麼需要跟進,以及那些否則會在會話之間消失的內容。
重要的上下文不應該只存在於對話記錄中。把它寫在某個地方,讓下一個對話能夠重新拾起。
Codex 還在“設置>個性化>記憶”(Settings > Personalization > Memories)中提供了官方的記憶功能。它會記住你的個人偏好、循環工作流以及你踩過的坑,同時會提供本地回溯能力。它們是對明確的書面上下文的補充,而不是取代它。Chronicle 組件通過幫助 Codex 從最近的屏幕上下文中構建記憶,朝着相同的方向推進。
從代碼向外延伸
Codex 仍然是從寫代碼開始。但現在,圍繞代碼的更多工作都可以通過同一個系統觸達:MCP 服務器、瀏覽器界面、桌面控制、對話自動化和那些可以在側邊欄中直接審查的文件。
這改變了我們控制 Codex 的方式。
「任務干預」可以中斷正在進行的工作。
「任務排隊」可以把下一項任務排好。
「對話自動化」可以在用戶離開時保持對話活躍。
「目標」則增加了一個明確的終點線,讓 Codex 可以持續努力地向着目標衝刺。
現在的 Codex 已經可以將工作流從「指令帶到執行」>「再到最終文件的審查」,即使某些工作已經超出了代碼庫的範疇,它也依然能夠遊刃有餘。
作者:jason
連結:https://x.com/jxnlco/status/2057153744630890620
既然看到這兒了,如果覺得還不錯,幫忙隨手點個「贊」、「在看」、「轉發」三連;如果想第一時間收到推送,也可給我加個星標★,非常感謝!