API Key 登录 Codex 也能用插件了,还支持会话删除和导出

大家好,我是子昕。

上次 Codex Chrome Extension 出来之后,我就一直想体验。

但有个问题特别烦:

用 API Key 登录的话,插件入口是锁死的。

点进去就一行提示:需要登录 ChatGPT 账号。

我用的是第三方中转站的 API Key,没有 ChatGPT 账号登录,也就意味着插件功能跟我完全没关系。

当时第一反应:能不能直接改 Codex 的安装文件,强行绕过去?

让 AI 帮我分析了一通。

结果越分析越复杂。

什么资源校验、签名、拦截......

最后 AI 给我列了一堆实现不了的原因。

我对这块也不熟,就没继续了。

后来看到一个开源项目 Codex++

GitHub:github.com/BigPizzaV3/...

借助 AI 把原理搞明白之后,我才发现:

我一开始的方向就完全错了。

因为这东西。

根本不用改文件。

Codex++ 是什么

它是一个外部增强启动器,不碰 Codex 的任何原始文件。

通过外部 launcher 启动 Codex 的同时,把增强功能直接注入进去。

我体验了一下,最大的感受是:

Codex 原本那种「官方客户端」的封闭感,一下子没了。

API Key 用户终于能正常用插件了。

装上之后,左侧出现「插件 - 已解锁」:

Codex 顶部也注入了一个"Codex++"配置面板按钮。点开可以看到支持的功能:

  • 插件选项解锁:API Key 模式下正常使用插件
  • 特殊插件强制安装:解除前端「App unavailable」限制
  • 会话删除:悬停显示删除按钮,支持撤销(Codex 原生没有)
  • Markdown 导出:导出带时间戳的对话记录
  • 会话项目移动:把对话移到其他项目

安装步骤

前提:Python 3.11+,已安装 Codex App。

先克隆仓库并安装依赖:

bash 复制代码
git clone https://github.com/BigPizzaV3/CodexPlusPlus.git
cd CodexPlusPlus
python -m pip install -e .

macOS

arduino 复制代码
python -m codex_session_delete setup

执行后自动生成 /Applications/Codex++.app,以后从这个 app 启动(启动台),不要再开原版 Codex。

卸载:

arduino 复制代码
python -m codex_session_delete remove

Windows

双击项目目录里的 setup.bat,按菜单选 Install,桌面生成 Codex++.lnk 快捷方式。

或命令行:

arduino 复制代码
python -m codex_session_delete setup

注意:必须从 Codex++ 快捷方式启动。直接开原版 Codex,注入不会生效。

它是怎么做到的(对原理不感兴趣可以跳过)

Codex 的桌面 App,底层其实是用网页技术做的------界面本质上就是一个跑在壳子里的网页。

这个壳子叫 Electron,很多你用过的桌面软件都是这么做的,比如 VS Code、Slack、Notion。

因为内核是浏览器,Chrome 官方有一套专门给开发者调试网页用的协议,叫 CDP

它原本的用途是:让你用外部工具连进浏览器,检查代码、修改页面、注入脚本。

搞明白这个之后,我让 AI 帮我写了个最简单的验证脚本:往 Codex 页面中央,强行插一个紫色弹框。

如果真能弹出来,说明外部程序确实可以直接控制 Codex 的前端页面。

第一步:用调试模式启动 Codex

ini 复制代码
/Applications/Codex.app/Contents/MacOS/Codex \
    --remote-debugging-port=9229 \
    --remote-allow-origins=http://127.0.0.1:9229 \
    > /tmp/codex-debug.log 2>&1 &

这样 Codex 启动后,本地 9229 端口就可以接受外部连接了。

第二步:用 Python 连进去,塞一段 JS

scss 复制代码
import json
import urllib.request
import websocket

print("📡 正在连接 CDP...")
targets = json.loads(urllib.request.urlopen('http://127.0.0.1:9229/json').read())
page = [t for t in targets if t['type'] == 'page'][0]
print(f"✅ 找到页面: {page['title']}")

ws = websocket.create_connection(page['webSocketDebuggerUrl'], timeout=10)
print("✅ WebSocket 已连接")

print("💉 正在注入代码...")
script = """
(function() {
    const box = document.createElement('div');
    box.innerHTML = '🎉 成功!这是你注入的代码!';
    box.style.cssText = `
        position: fixed; top: 50%; left: 50%;
        transform: translate(-50%, -50%);
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        color: white; padding: 30px; border-radius: 15px;
        font-size: 20px; font-weight: bold;
        box-shadow: 0 20px 60px rgba(0,0,0,0.4); z-index: 999;
    `;
    document.body.appendChild(box);
    setTimeout(() => box.remove(), 5000);
    return '✅ 注入成功!';
})();
"""
payload = {
    "id": 1,
    "method": "Runtime.evaluate",
    "params": {
        "expression": script,
        "returnByValue": True,
        "allowUnsafeEvalBlockedByCSP": True
    }
}
ws.send(json.dumps(payload))
response = json.loads(ws.recv())
print(f"✅ {response['result']['result']['value']}")
print("\n💡 现在看你的 Codex 窗口,应该有一个紫色的通知框!")
ws.close()

脚本跑起来,终端里逐行打印连接状态:

结果下一秒,Codex 窗口中央,真的弹出了那个紫色框。

那一刻我就明白 Codex++ 在干嘛了。

它本质上不是「修改 Codex」。 而是在运行中的 Codex 页面里,动态塞进去一层新能力。

相当于你在浏览器里按 F12 打开控制台、手动粘贴一段 JS。

Codex++ 把这件事自动化了,每次帮你启动 Codex 的时候都做一遍。

这件事真正有意思的地方,其实不是插件解锁。

而是:

Codex 发布没多久,社区已经开始给它做运行时增强层了。

不改文件,不破解,用官方协议。

这很像当年的浏览器插件生态。 只是这一次,被「增强」的对象,变成了 AI 客户端。

AI IDE 的下一阶段,可能不只是模型竞争。 而是谁先形成真正的增强生态。

更多内容,欢迎关注微信公众号【子昕AI编程】查看~

相关推荐
win4r8 小时前
MiniMax M3 深度体验:这可能是国产模型里最接近“全能工程师”的一次
aigc·ai编程·claude
卷毛的技术笔记8 小时前
告别硬编码!Spring AI Alibaba 实现 AI Agent 智能工具调用(Tool Calling)
java·人工智能·后端·python·spring·ai编程
adrninistrat0r8 小时前
Java调用链MCP分析工具
java·python·ai编程
陆业聪10 小时前
WebView代理方案实现:拦截请求、注入资源与离线包架构
人工智能·ai编程
kyriewen11 小时前
AI生成代码快如闪电,但我修了三个小时——它到底帮了谁?
前端·javascript·ai编程
颜进强11 小时前
09-不要只让 AI 进入 Plan 模式,要先给 AI 一套工程制度
ai编程
miaowmiaow12 小时前
PSD2Code 近期更新与深度解析:从设计稿到生产级代码的完整技术栈
前端·人工智能·ai编程
lifallen12 小时前
第一章 Agent 为什么会出现
人工智能·ai·ai编程
Holman13 小时前
Java 项目中的 Claude Code 提效场景 Top 10
ai编程
亦暖筑序13 小时前
单模型成本高、风险大?Spring AI多模型路由实战:成本降70%,可用性更稳
java·后端·ai编程