新版 ChatGPT 整合了 Codex,但对许多老用户来说,Codex 的名字和紫蓝色图标承载着熟悉的工作状态。本文分享一条 macOS 命令:保留旧名称与图标,同时直接进入新版 Codex 任务界面。
更新之后,我第一次在 Dock 里找 Codex,手指停顿了几秒。
熟悉的紫蓝色图标不见了,那个简洁、明确的「Codex」也变成了 ChatGPT。
功能没有消失,甚至可能更强了。Codex 仍然在新版 ChatGPT 里,任务、工作区和本地能力也都还在。但那一刻,我还是有一种很具体的失落:常用的工具还在,进入工作的那扇门却换了名字。
如果你也有这种感觉,这篇文章就是写给你的。
我舍不得的,不只是一个图标
不熟悉 Codex 的人,可能会觉得这只是一处品牌调整。
名称换了就换了,图标变了就变了,功能能用不就行了吗?
可对长期使用 Codex 的人来说,它早就不只是一个软件名称。
看到那个紫蓝色的终端云朵,我们知道自己要进入的是一个安静、专注的工作空间:打开项目,交代任务,让代理读取文件、执行命令、修改代码,再把结果交回来。
「ChatGPT」让人想到聊天、提问和获取答案;「Codex」则更像一个可以一起把事情做完的搭档。
这两种产品体验正在融合,但用户脑中的开关并不会在一次更新后立刻重写。
所以,我们想保留旧名称和旧图标,不一定是拒绝变化。很多时候,只是想保留那个已经形成肌肉记忆的入口。

真正的痛点,是每次启动都要重新找状态
工具越高频,入口越重要。
以前,我们在 Dock 里看到 Codex,点击它,就知道接下来要处理项目、拆解任务或者推进一项工作。
升级之后,点击 ChatGPT,还要先确认自己进入了哪个界面,再从下拉入口切换到 Codex。这个过程并不复杂,但每天重复几次,就会成为一种细小却持续的摩擦。

更麻烦的是,Mac 上可能同时存在多个带有 ChatGPT 名称的应用或入口。只看名称和图标,很难在第一眼判断哪个才是自己想要的工作界面。
我们真正想解决的,其实只有两件事:
在 Dock 和应用目录里,继续看到熟悉的「Codex」名称与图标;


点击之后,直接进入新版 ChatGPT 里的 Codex 新任务界面。
不是降级,也不是安装旧版本。
只是给新版应用加回一个熟悉的入口。
不修改原应用,才是更稳妥的做法
最直接的想法,可能是把 /Applications/ChatGPT.app强行改名为 Codex.app,再修改应用包里的图标。
但这种做法不值得推荐。
macOS 应用包含代码签名。直接修改官方应用的 `Info.plist、名称或内部资源,可能破坏签名,也可能影响后续自动更新。即使暂时改成功,下一次升级也可能恢复原状。
更稳妥的办法,是保留官方 ChatGPT 应用不动,另外创建一个很轻量的本地启动器:
启动器名称叫「Codex」;
使用新版安装包中自带的 Codex 图标;
点击后调用官方保留的 `codex://threads/new深链接;
自动打开一个新的 Codex 本地任务;
把这个入口直接固定到 Dock。
官方应用继续正常签名、正常更新,我们也能继续使用熟悉的名称和图标。

一条命令,把熟悉的 Codex 放回来
这条命令适用于 macOS,并假设新版 ChatGPT 已安装在默认位置:
`/Applications/ChatGPT.app
打开「终端」,完整复制下面这一行并按回车:
/bin/zsh -c 'set -e; APP=「$HOME/Applications/Codex.app」; SRC=「/Applications/ChatGPT.app/Contents/Resources/app.icns」; PLIST=「$APP/Contents/Info.plist」; PB=「/usr/libexec/PlistBuddy」; LSREG=「/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister」; [[ -f 「$SRC」 ]] || { print -u2 「错误:未找到 /Applications/ChatGPT.app」; exit 1; }; /bin/mkdir -p 「$HOME/Applications」; if [[ -d 「$APP」 && ! -x 「$APP/Contents/MacOS/applet」 ]]; then print -u2 「错误:$APP 已存在且不是本命令创建的启动器」; exit 1; fi; [[ -d 「$APP」 ]] || /usr/bin/osacompile -o 「$APP」 -e 「open location \」codex://threads/new\「」; /bin/cp 「$SRC」 「$APP/Contents/Resources/CodexIconV2.icns」; 「$PB」 -c 「Set :CFBundleName Codex」 「$PLIST」; 「$PB」 -c 「Set :CFBundleIconFile CodexIconV2.icns」 「$PLIST」; 「$PB」 -c 「Delete :CFBundleIconName」 「$PLIST」 2>/dev/null || true; 「$PB」 -c 「Set :CFBundleDisplayName Codex」 「$PLIST」 2>/dev/null || 「$PB」 -c 「Add :CFBundleDisplayName string Codex」 「$PLIST」; 「$PB」 -c 「Set :CFBundleIdentifier local.codex.launcher」 「$PLIST」 2>/dev/null || 「$PB」 -c 「Add :CFBundleIdentifier string local.codex.launcher」 「$PLIST」; 「$PB」 -c 「Set :CFBundleShortVersionString 1.0」 「$PLIST」 2>/dev/null || 「$PB」 -c 「Add :CFBundleShortVersionString string 1.0」 「$PLIST」; 「$PB」 -c 「Set :CFBundleVersion 2」 「$PLIST」 2>/dev/null || 「$PB」 -c 「Add :CFBundleVersion string 2」 「$PLIST」; 「$PB」 -c 「Set :NSHighResolutionCapable true」 「$PLIST」 2>/dev/null || 「$PB」 -c 「Add :NSHighResolutionCapable bool true」 「$PLIST」; /usr/bin/touch 「$APP」; /usr/bin/codesign --force --deep --sign - 「$APP」; 「$LSREG」 -f 「$APP」; DOCK_URL=「file://$APP/」; if ! /usr/bin/defaults export com.apple.dock - 2>/dev/null | /usr/bin/grep -Fq 「$DOCK_URL」; then /usr/bin/defaults write com.apple.dock persistent-apps -array-add 「<dict><key>tile-data</key><dict><key>file-data</key><dict><key>_CFURLString</key><string>$DOCK_URL</string><key>_CFURLStringType</key><integer>15</integer></dict><key>file-label</key><string>Codex</string></dict><key>tile-type</key><string>file-tile</string></dict>」; fi; /usr/bin/killall Dock 2>/dev/null || true; print 「完成:Codex 启动器已创建并加入 Dock。」'
看到下面这句话,就说明设置已经完成:
```text
完成:Codex 启动器已创建并加入 Dock。
此时,Dock 中会出现一个名为「Codex」的新入口。点击它,就会打开新版 ChatGPT,并直接进入 Codex 新任务界面。

## 这条命令具体做了什么
如果你不喜欢在不了解的情况下执行命令,可以先看它做了什么。
### 1. 创建一个独立启动器
命令会在当前用户目录下创建:
```text
~/Applications/Codex.app
它不是 ChatGPT 的复制品,也不是旧版 Codex,只是一个负责打开 Codex 任务界面的轻量入口。
### 2. 沿用安装包里的 Codex 图标
命令会读取新版 ChatGPT 安装包中保留的 app.icns,将它作为启动器图标。
因此,你看到的不是网上下载的相似图标,而是当前应用包里自带的 Codex 图标资源。
### 3. 解决 macOS 图标缓存问题
仅仅替换 .icns文件,有时不会立即生效。macOS 可能继续显示 AppleScript 的默认图标,或者保留此前缓存的旧图标。
这条命令会给启动器设置独立的 Bundle ID、显示名称和版本号,再重新签名并注册到 LaunchServices,让系统把它识别为一个独立应用。
### 4. 自动加入 Dock
如果 Dock 里还没有这个启动器,命令会自动添加,并刷新 Dock。
不需要再从 Finder 或启动台里反复拖拽。
## 使用前,请注意这 3 件事
第一,这条命令只适用于 macOS。
第二,它要求官方 ChatGPT 应用位于默认路径 /Applications/ChatGPT.app。如果你把应用移动到了其他位置,需要相应修改命令中的路径。
第三,它不会把底层应用真正改名。点击 Codex 启动器后,实际运行的仍然是官方 ChatGPT 桌面应用。因此,在应用运行期间,系统某些位置仍可能显示 ChatGPT 的名称或图标。
这不是命令失效,而是因为我们刻意没有修改官方应用本身。
这个方案保留的是:熟悉的启动入口、Dock 名称、Codex 图标,以及点击后直接进入 Codex 的路径。
## 我们保留的,其实是一种工作习惯
软件会更新,品牌会调整,入口也会不断合并。
这些变化大多有合理的产品逻辑。但用户和工具之间的关系,不只由功能列表组成。一个名字、一枚图标、一次点击之后出现的界面,都会慢慢变成工作习惯的一部分。
我愿意使用新版 ChatGPT,也愿意接受 Codex 继续进化。
但我同样希望,那个让我进入专注状态的名字还能留在 Dock 里。
所以,这条命令不是为了把时间倒回去。
它只是让我们在走进新版工具时,仍然可以推开那扇熟悉的门。
如果你身边也有人在更新之后,下意识地寻找那个紫蓝色的 Codex 图标,可以把这篇文章转给他。
也欢迎在留言里告诉我:你最舍不得 Codex 的,是它的名字、图标,还是打开它时那种「准备开始做事」的感觉?

