Codex 寵物上線,一鍵即可喚醒
整理版優先睇
Codex 寵物功能:浮動狀態面板,提升多任務效率,仲暗示用戶由 Claude Code 搬過來
呢篇文章係整理 OpenAI Codex 新推出嘅寵物功能,資料來源包括官方公佈、工程師解釋、CEO 嘅社交媒體貼文等等。作者想講嘅問題係:點解一個編程工具要整寵物?背後有咩實際用途?整體結論係:呢個寵物唔係玩具,而係一個浮動狀態面板,幫你喺多任務之間隨時監控 Codex 嘅運行狀態,唔使成日轉返去 Codex 窗口。
功能上,叫得做養寵物,其實係一個始終喺前台顯示嘅覆蓋層。你可以逗佢玩,又可以拖走。佢會顯示當前線程、運行狀態同進度描述,點擊就跳返 Codex。呢個設計似 iOS 嘅 Live Activities,實用性高。另外,Codex 內置 8 隻寵物,每隻有不同台詞,仲可以自定義,用 /pet 同 hatch-pet skill 生成自己嘅版本。
文章下半部分提到源碼實現,寵物動畫同 CLI 加載動畫係同一套引擎,桌面版升級做圖形化精靈表。最關鍵嘅係,官方暗示用戶可以從 Claude Code 無縫搬過嚟,仲話天級更新,速度驚人。作者自己就由年初 2:8 變到而家 8:2 用 Codex 多過 Claude Code,仲話佢哋交叉用。
- 寵物本質係浮動狀態面板,唔係玩具,可以始終顯示喺畫面,顯示 Codex 嘅運行狀態,提升多任務效率。
- 內置 8 隻寵物,每隻有獨特台詞同動畫,代表唔同嘅編程狀態,例如 Fireball 構建時「盯着火花」。
- 可以用 /pet 命令同 hatch-pet skill 自定義寵物,輸入描述就生成精靈圖,擴展性強。
- 源碼係開源嘅,寵物動畫同 CLI 加載動畫共用同一套幀動畫引擎,桌面版升級做圖形化精靈表。
- OpenAI 官方暗示用戶由 Claude Code 搬過嚟,強調無縫遷移,仲以天級更新速度追趕功能,競爭激烈。
OpenAI Devs 官方宣佈寵物功能
X 貼文,發佈 Codex 寵物功能,附 15 秒影片。
Codex 設定頁面 - Pets
官方設定頁面,可以選寵物、自定義等。
Romain Huet 嘅搬家暗示
OpenAI 開發者關係負責人嘅 X 貼文,話遷移無縫。
寵物功能實際係浮動狀態面板
Codex 今日上線一個新功能:養寵物。OpenAI 官方話:「Pets. Now in Codex. Use /pet to wake your pet.」但呢個寵物唔係純粹娛樂,而係一個 浮動狀態面板。
工程師 thsottiaux 解釋:「喺 Codex 孵一隻寵物吧。讓上下文跟着我喺多任務間切換,其實提高咗我嘅效率。」寵物本質係 Live Activities 覆蓋層,始終喺前台,顯示 當前線程、運行狀態(跑緊、等輸入、可審查)同 進度描述。
你唔使成日盯住 Codex 窗口,做其他嘢嘅時候,餘光一瞥就知任務進度。點擊寵物直接跳返 Codex,仲可以拖到任何位置。用鼠標 逗佢,佢會跳躍互動,唔係靜態 icon。
8 隻「原住民」寵物各有性格
Codex 內置咗 8 隻寵物,每隻有獨特角色同台詞,而且台詞會根據 Codex 工作狀態變化。例如 Fireball 構建時話:「構建正在升温,我盯着火花呢。」BSOD 出錯時話:「出了點狀況,我喺重試之前保存咗確切嘅報錯信息。」
- Codex:藍色默認機器人,台詞:「我喺設置裏發現咗一個鬆動嘅小線頭,要唔要我拽一下?」
- Dewey:一滴水,台詞:「我將嗰啲雜亂嘅信息整理成咗一份清爽嘅清單。」
- Fireball:一團火,構建時嘅狀態提示。
- Rocky:一塊石頭,台詞:「呢個 diff 確實大,但我揾到咗一個穩定嘅落腳點。」
- Stacky:暗色機器人,台詞:「我按來源將上下文堆好咗,然後從頭開始。」
- BSOD:藍屏死機,出錯時保存報錯。
- Null Signal:暗紅色小幽靈,無新告警時監聽信號。
- Seedy:一顆發芽種子,台詞:「一個新想法啱啱從你上一個 prompt 冒咗出嚟。」
呢啲寵物等於 8 種擬人化狀態指示器,將抽象嘅進度同錯誤狀態變成可愛嘅互動角色,降低監控嘅心理負擔。
仲可以自定義寵物
如果嫌 8 隻唔夠,你可以用 /pet 命令</highlight> 喚醒或收起寵物,或者用 Hatch Pet</highlight> 生成自定義精靈表。
$skill-installer hatch-pet
# 裝完之後重新加載 skill,然後:
$hatch-pet create a new pet inspired by my recent projects
呢個用 Codex Skills 系統,根據你嘅描述生成一套 精靈圖(sprite sheet),包含動畫幀,然後註冊成新寵物。你喺 Settings > Appearance > Pets 就可以揀到。
源碼解讀:幀動畫引擎
Codex 係開源嘅,寵物動畫同 CLI 加載動畫共用同一套 幀動畫引擎。喺 codex-rs/tui/src/ascii_animation.rs 中,有一個通用結構:
pub(crate) struct AsciiAnimation {
variants: &'static [&'static [&'static str]],
variant_idx: usize,
frame_tick: Duration,
start: Instant,
}
每個動畫由多組「變體」組成,每組變體包含一系列幀。引擎根據時間計算當前幀並渲染。幀數據喺編譯時嵌入:
macro_rules! frames_for {
($dir:literal) => {
[include_str!(concat!("../frames/", $dir, "/frame_1.txt")),
include_str!(concat!("../frames/", $dir, "/frame_2.txt")),
// ... 每個變體 24 幀
]
},
}
桌面版寵物將呢套機制由終端 ASCII 升級到 圖形化精靈表,運行邏輯一樣:按時間軸循環播放幀。寵物覆蓋層係獨立浮動窗口,類似 iOS Live Activities,始終置頂。
天級更新,暗示搬家
OpenAI 開發者關係負責人 romainhuet 發文話:「遷移到 Codex 應該係無縫嘅。我哋已經令你更容易將項目、設置同插件從目前嘅 Agent 搬過嚟。」呢句話明顯係 暗示用戶從 Claude Code 搬過嚟。
CEO Sam Altman 更直接:有人問揀邊個,佢話「你應該揀 Codex。」佢仲話所有投票都無聊,但同時宣佈 OpenClaw 可以用 ChatGPT 賬號直接登錄,叫用戶「happy lobstering」。
thsottiaux 話同事打賭某個功能要四個鐘,結果 真係四個鐘就上線,連自己人都覺得快。作者自己用 Codex 比例已經由年初 2:8 變成而家 8:2,仲話複雜編程用 Codex + GPT-5.5,創作用 Claude Code + Opus。最後佢話:「你哋越卷越借鑑越好,我哋用得爽就好。」
Codex 今日上線咗一個新功能:養寵物。
冇錯,就係字面意思。你個編程工具而家可以養一隻虛擬寵物喇。

OpenAI 官方嘅介紹係:
“ Pets. Now in Codex. Use /pet to wake your pet.
(寵物,登陸 Codex。輸入 /pet 喚醒你隻寵物。)
同時仲配咗一段 15 秒嘅片,一個藍色嘅機械人仔從終端圖標度「孵化」出嚟,搖搖擺擺咁企咗喺桌面上面。

Sam Altman 都跟住發咗一條:「嚟睇下 Codex 裏面嘅寵物啦,試下孵一隻。」
然後又補多句:
01“ 講真,我莫名其妙就想令某個任務跑出最長運行記錄。
唔係玩具
呢個寵物,其實係個浮動狀態面板。

OpenAI 嘅工程師 thsottiaux 解釋咗呢個功能嘅實際用途:
“ 喺 Codex 度孵一隻寵物啦。令上下文跟住我喺多任務之間切換,其實提高咗我嘅效率。唔好吐槽我哋玩得太開心,我哋同時都喺度拼命提升能力上限。
一個細節係:Pets 本質上係一個 Live Activities 覆蓋層。你可以打機,可以碌網頁,寵物會一直懸浮喺屏幕上,令你隨時睇到 Codex 做緊乜。
佢會顯示:
• 而家正在處理嘅線程
• Codex 嘅運行狀態,係跑緊、等緊輸入、定係可以審查
• 一段簡短嘅進度描述
即係話,你唔使成日望住 Codex 嘅窗口。切去第二個應用做第二啲嘢,餘光瞄一瞄桌面上面個小傢伙,就知道任務去到邊一步。
而且呢隻寵物係始終顯示喺前台嘅,無論你切去瀏覽器、Figma、Slack 定係任何其他應用,佢都會乖乖咁匿喺屏幕角落。
撳佢,就會直接跳返去 Codex 嘅主界面,相當於一個隨時可用嘅快捷入口。如果嫌佢阻掟,都可以將佢拖去其他任何你覺得合適嘅地方。
你都可以用滑鼠去逗佢,佢會跳躍、做出各種反應,同你互動。唔係一個靜態圖標,而係一個真係會「動」嘅可愛小夥伴。
八隻「原住民」
Codex 內置咗 8 隻寵物,每隻都有自己嘅性格同台詞。

Codex,藍色機械人,亦係默認寵物。佢嘅台詞係:「我喺設置裏面發現咗一個鬆咗嘅小線頭,要唔要我扯一下?」

Dewey,一滴水。台詞:「我將啲雜亂嘅信息整理成咗一份清爽嘅清單。」

Fireball,一團火。台詞:「構建正在升温,我睇住啲火花㗎。」

Rocky,一塊石頭。台詞:「呢個 diff 真係大,但我揾到咗一個穩定嘅落腳點。」

Stack,一個暗色機械人。台詞:「我按來源將上下文堆好咗,然後從頭開始。」

BSOD,個名就係藍屏死機。台詞:「出咗啲狀況,我喺重試之前保存咗確切嘅報錯信息。」

Null Signal,一個暗紅色嘅小幽靈。台詞:「冇新嘅告警,我仲喺度監聽下一個信號。」

Seedy,一粒發芽嘅小種子。台詞:「一個新想法啱啱從你上一個 prompt 度冒咗出嚟。」
每隻寵物嘅台詞都同編程相關,而且會根據 Codex 當前嘅工作狀態變化。例如 Fireball 喺構建嘅時候「睇住火花」,BSOD 喺出錯嘅時候「保存報錯」。
8 隻寵物,就係 8 種擬人化嘅狀態指示器。
03可自定義
如果呢 8 隻你嫌唔夠,或者想要自己特有嘅版本,你都可以自己養一隻。

喺 Codex 度輸入 /pet,會彈出兩個選項:
• Pet:喚醒或收起桌面寵物
• Hatch Pet:生成 Codex 兼容嘅動畫寵物精靈表
要養自定義寵物,需要先裝一個叫 hatch-pet 嘅 skill:
●●●
$skill-installer hatch-pet└
裝完之後重新加載 skill,然後就可以叫 Codex 幫你生成一隻喇:
●●●
$hatch-pet create a new pet inspired by my recent projects└
呢度用嘅係 Codex 嘅 Skills 系統。佢會根據你嘅描述生成一套精靈圖(sprite sheet),包含動畫幀,然後註冊為一隻新嘅寵物。
你喺 Settings > Appearance > Pets 度就可以見到佢。
04源碼解讀
Codex 係開源嘅,所以可以直接睇佢係點樣實現嘅。
從源碼嚟睇,寵物嘅動畫機制同 CLI 裏面嘅加載動畫其實係同一套體系。
在 codex-rs/tui/src/ascii_animation.rs 中,有一個通用嘅幀動畫引擎:
●●●
pub(crate) structAsciiAnimation {
variants: &'static [&'static [&'static str]],
variant_idx: usize,
frame_tick: Duration,
start: Instant,
}└
每個動畫由多組「變體」組成,每組變體包含一系列幀。引擎根據經過嘅時間計算當前應該顯示邊一幀,然後渲染出嚟。
幀數據喺編譯時就已經嵌入咗二進制文件:
●●●
macro_rules! frames_for {
($dir:literal) => {
[
include_str!(concat!("../frames/", $dir, "/frame_1.txt")),
include_str!(concat!("../frames/", $dir, "/frame_2.txt")),
// ... 每個變體 24 幀
]
}
}└
CLI 版本嘅動畫存儲喺 codex-rs/tui/frames/ 目錄之下,已經有 codex、openai、dots、blocks 等多種風格嘅 ASCII 動畫變體。
而桌面版嘅寵物則進一步將呢套機制從終端 ASCII 升級到圖形化嘅精靈表。每隻寵物本質上就係一組帶動畫幀嘅圖像序列,運行邏輯係相通嘅:按時間軸循環播放幀。

寵物覆蓋層本身則係一個獨立嘅浮動窗口,類似 iOS 嘅 Live Activities,始終置頂顯示喺其他應用之上。
05從 Claude Code 搬家
romainhuet(OpenAI 嘅開發者關係負責人)喺發寵物功能嘅同時,仲順便提咗一句:
“ 遷移到 Codex 應該係無縫嘅。我哋已經令你更容易將項目、設置同插件從你當前嘅 Agent 搬過嚟。
呢句雖然講得好似冇乜嘢,但明嘅人都明啦:呢個係暗示大家快啲從 Claude Code 搬過嚟呢……

作為 CEO 嘅 Sam Altman 自然都要打個好配合,佢先係發咗一條看似和平嘅,並直接點名 Claude Code:
“ 你知唔知,所有呢啲「邊個好啲」嘅投票都好無聊。用 Codex 定係 Claude Code,邊個好用就用邊個。我好感恩我哋生活喺有咁正嘅工具嘅時代,亦感恩有得揀。
顯得幾有格局,但一轉頭就回覆一個糾結嘅用戶:
“ 咁你應該揀 Codex。
BTW,同馬斯克打緊官司嘅話癆 Sam 仲宣佈咗 OpenClaw 而家可以用 ChatGPT 賬號直接登錄,對住 OpenClaw 嘅用戶們講咗句「happy lobstering」(快樂捕龍蝦啦)。
06天級更新
見到 Claude Code 幾乎每日都喺度更新功能,Codex 顯然都坐唔住,正在以一種相當激進(會令我用到 bug)嘅節奏向外發布。
thsottiaux 自己就話,一個同事打賭話某個功能要四個鐘先上到線:
“ 結果……真係只用咗 4 個鐘。我賭輸咗。
連 OpenAI 自己人,都覺得快。言外之意係話:用 codex 超快㗎,快啲嚟用啦……
不過我自己用 Codex 同 Claude Code 嘅比例,都已經從年初嘅 2:8 變成而家大約 8:2。
寫作、調研、探索呢類開放性嘅任務,我會用 Claude Code + Opus 4.7 / 4.6(冇錯,雖然已經有咗 4.7,但不少任務我仍然用 4.6)。而複雜、精細嘅編程任務,我就會用 Codex + GPT-5.5。
當然,唔少時候我會 Claude Code + Codex 交叉聯動,甚至自動化嚟完成大型嘅任務。
不過 OpenAI 出新「寵物」功能呢件事,其實都算係受 Claude Code 寵物功能嘅啟發……
當然呢個唔可以叫抄襲,只可以叫借鑑,或者……叫:致敬。
Claude Code 借鑑 OpenClaw 在先,Codex 咁樣借鑑一下,自然也係無可厚非喇。
總之,你哋越卷越借鑑越致敬越好,我哋用得爽就OK。
◇ ◆ ◇
相關連結:
https://x.com/openaidevs/status/2050275713824211041
https://developers.openai.com/codex/app/settings#codex-pets
https://x.com/romainhuet/status/2050338262955557221
Codex 今天上線了一個新功能:養寵物。
沒錯,就是字面意思。你的編程工具現在可以養一隻虛擬寵物了。

OpenAI 官方的介紹是:
“ Pets. Now in Codex. Use /pet to wake your pet.
(寵物,登陸 Codex。輸入 /pet 喚醒你的寵物。)
同時還配了一段 15 秒的視頻,一個藍色的小機器人從終端圖標中「孵化」出來,搖搖晃晃地站在了桌面上。

Sam Altman 也跟着發了一條:「來看看 Codex 裏的寵物吧,試試孵一隻。」
然後又補了一句:
01“ 說真的,我莫名其妙地就想讓某個任務跑出最長運行記錄。
不是玩具
這個寵物,其實是個浮動狀態面板。

OpenAI 的工程師 thsottiaux 解釋了這個功能的實際用途:
“ 在 Codex 裏孵一隻寵物吧。讓上下文跟着我在多任務間切換,其實提高了我的效率。請不要吐槽我們玩得太開心了,我們同時也在拼命提升能力上限。
一個細節是:Pets 本質上是一個 Live Activities 覆蓋層。你可以打遊戲,可以刷網頁,寵物會一直懸浮在屏幕上,讓你隨時看到 Codex 在幹什麼。
它會顯示:
• 當前正在處理的線程
• Codex 的運行狀態,正在跑、等待輸入、還是可以審查了
• 一段簡短的進度描述
也就是說,你不用一直盯着 Codex 的窗口了。切到別的應用幹別的事,餘光瞥一眼桌面上的小傢伙,就知道任務到哪一步了。
而且這隻寵物是始終顯示在前台的,不管你切到瀏覽器、Figma、Slack 還是任何其他應用,它都會乖乖待在屏幕角落。
點擊它,則會直接跳回 Codex 的主界面,相當於一個隨時可用的快捷入口。如果嫌它礙事,也可以把它拖到其他任何你覺得合適的地方去。
你也可以用鼠標去逗它,它會跳躍、做出各種反應,跟你互動。不是一個靜態圖標,是一個真的會「動」的可愛小夥伴。
八隻「原住民」
Codex 內置了 8 只寵物,每隻都有自己的性格和台詞。

Codex,藍色機器人,也是默認寵物。它的台詞是:「我在設置裏發現了一個鬆動的小線頭,要不要我拽一下?」

Dewey,一滴水。台詞:「我把那些雜亂的信息整理成了一份清爽的清單。」

Fireball,一團火。台詞:「構建正在升温,我盯着火花呢。」

Rocky,一塊石頭。台詞:「這個 diff 確實大,但我找到了一個穩定的落腳點。」

Stack,一個暗色機器人。台詞:「我按來源把上下文堆好了,然後從頭開始。」

BSOD,名字就是藍屏死機。台詞:「出了點狀況,我在重試之前保存了確切的報錯信息。」

Null Signal,一個暗紅色的小幽靈。台詞:「沒有新的告警,我還在監聽下一個信號。」

Seedy,一顆發芽的小種子。台詞:「一個新想法剛從你上一個 prompt 裏冒出來了。」
每隻寵物的台詞都和編程相關,而且會根據 Codex 當前的工作狀態變化。比如 Fireball 在構建的時候「盯着火花」,BSOD 在出錯的時候「保存報錯」。
8 只寵物,就是 8 種擬人化的狀態指示器。
03可自定義
如果這 8 只你嫌不夠,或者想要自已特有的版本,你也可以自己養一隻。

在 Codex 裏輸入 /pet,會彈出兩個選項:
• Pet:喚醒或收起桌面寵物
• Hatch Pet:生成 Codex 兼容的動畫寵物精靈表
要養自定義寵物,需要先裝一個叫 hatch-pet 的 skill:
●●●
$skill-installer hatch-pet└
裝完之後重新加載 skill,然後就可以讓 Codex 幫你生成一隻了:
●●●
$hatch-pet create a new pet inspired by my recent projects└
這裏用的是 Codex 的 Skills 系統。它會根據你的描述生成一套精靈圖(sprite sheet),包含動畫幀,然後註冊為一隻新的寵物。
你在 Settings > Appearance > Pets 裏就能看到它。
04源碼解讀
Codex 是開源的,所以可以直接看它是怎麼實現的。
從源碼來看,寵物的動畫機制和 CLI 裏的加載動畫其實是一套體系。
在 codex-rs/tui/src/ascii_animation.rs 中,有一個通用的幀動畫引擎:
●●●
pub(crate) structAsciiAnimation {
variants: &'static [&'static [&'static str]],
variant_idx: usize,
frame_tick: Duration,
start: Instant,
}└
每個動畫由多組「變體」組成,每組變體包含一系列幀。引擎根據經過的時間計算當前應該顯示哪一幀,然後渲染出來。
幀數據在編譯時就被嵌入了二進制文件:
●●●
macro_rules! frames_for {
($dir:literal) => {
[
include_str!(concat!("../frames/", $dir, "/frame_1.txt")),
include_str!(concat!("../frames/", $dir, "/frame_2.txt")),
// ... 每個變體 24 幀
]
}
}└
CLI 版本的動畫存儲在 codex-rs/tui/frames/ 目錄下,已有 codex、openai、dots、blocks 等多種風格的 ASCII 動畫變體。
而桌面版的寵物則進一步把這套機制從終端 ASCII 升級到了圖形化的精靈表。每隻寵物本質上就是一組帶動畫幀的圖像序列,運行邏輯是相通的:按時間軸循環播放幀。

寵物覆蓋層本身則是一個獨立的浮動窗口,類似 iOS 的 Live Activities,始終置頂顯示在其他應用之上。
05從 Claude Code 搬家
romainhuet(OpenAI 的開發者關係負責人)在發寵物功能的同時,還順帶提了一句:
“ 遷移到 Codex 應該是無縫的。我們已經讓你更容易把項目、設置和插件從你當前的 Agent 搬過來了。
這話雖然說得好像沒啥,但懂的都懂啊:這是在暗示大家趕緊地從 Claude Code 搬家過來呢……

作為 CEO 的 Sam Altman 自然也得打了個好配合,他先是發了一條看似和平的,並直接點名 Claude Code:
“ 你知道嗎,所有這些「哪個更好」的投票都挺無聊的。用 Codex 還是 Claude Code,哪個好用就用哪個。我很感恩我們生活在有這麼棒的工具的時代,也感恩有得選。
顯得倒是挺有格局的,但一轉頭就回復一個糾結的用戶:
“ 那你應該選 Codex。
BTW,和馬斯克正打着官司的話癆 Sam 還宣佈了 OpenClaw 現在可以用 ChatGPT 賬號直接登錄了,對着 OpenClaw 的用戶們說了句「happy lobstering」(快樂捕龍蝦吧)。
06天級更新
看到 Claude Code 幾乎每天都在更新功能,Codex 顯然也坐不住了,正在以一種相當激進(能讓我用出 bug)的節奏往外發布。
thsottiaux 自己則說,一個同事打賭說某個功能得四個小時才能上線:
“ 結果……真就只用了 4 個小時。我賭輸了。
連 OpenAI 自己人,都覺得快。言外之意是在說:用 codex 超快的,快來用吧……
不過我自己使用 Codex 和 Claude Code 的比例,也已經從年初的 2:8 變成了現在的大約 8:2。
寫作、調研、探索這類開放性的任務,我會用 Claude Code + Opus 4.7 / 4.6(沒錯,雖然已經有了 4.7,但不少任務我仍然用 4.6)。而複雜、精細的編程任務,我則會用 Codex + GPT-5.5。
當然,不少時候我會 Claude Code + Codex 交叉聯動,甚至自動化來完成大型的任務。
不過 OpenAI 上新「寵物」功能這件事,其實也算是受 Claude Code 寵物功能的啓發了……
當然這不能叫抄襲,只能叫借鑑,或者……叫:致敬。
Claude Code 借鑑 OpenClaw 在先,Codex 這麼借鑑一下,自然也是無可厚非了。
總之,你們越卷越借鑑越致敬越好,我們用得爽就好。
◇ ◆ ◇
相關連結:
https://x.com/openaidevs/status/2050275713824211041
https://developers.openai.com/codex/app/settings#codex-pets
https://x.com/romainhuet/status/2050338262955557221