我给 Windows 版 Codex 做了一个主题注入器

📅 2026/7/22 12:31:25 👁️ 阅读次数 📝 编程学习
我给 Windows 版 Codex 做了一个主题注入器

我给 Windows 版 Codex 做了一个主题注入器:让 AI 编程工具也能长成你喜欢的样子

如果你每天都要长时间打开 Codex 写代码、跑任务、看终端,那你大概率也会遇到一个小小的遗憾:

工具很好用,但界面不一定是你想要的样子。

深色、浅色、背景图、侧边栏、输入区、代码块、终端配色、Logo、首页 Hero、头像、图标、装饰层……这些东西如果都能自己调,甚至能让 AI 帮你生成一整套主题,会不会更有意思?

于是我做了一个项目:Theme Inject

它是一个给Windows 版 Codex注入自定义主题的独立启动器。项目地址:

  • GitHub:https://github.com/codecnmc/codex-theme-inject

项目仍在开发中,如果你觉得这个方向有意思,欢迎 Star、试用、提 Issue。你的反馈会直接影响它后面能长成什么样。

它解决了什么问题?

Codex 本身是一个很强的 AI 编程工具,但在视觉个性化上留给用户的空间并不算大。

Theme Inject 想做的事情很直接:

不改 Codex 安装包,不动 app.asar,不污染原始配置,只在运行时把主题能力注入进去。

它通过 Chromium DevTools Protocol,也就是 CDP,连接到 Codex renderer,然后注入一套主题运行时。你打开 Codex 之后,会看到一个主题入口,可以在里面实时修改界面风格、切换主题、导入导出主题包,甚至用 AI 生成一套完整皮肤。

简单说,它不是给你一张静态壁纸,而是给 Codex 加了一套可编辑、可保存、可分享的主题系统。

先看效果

主题库可以直接管理、切换、导入、导出主题:

皮肤配置可以控制 Logo、Hero 图、头像、侧栏水印、装饰层等高级资源:

也可以做成更有辨识度的主题:



核心亮点

1. 独立启动器,不修改 Codex 本体

Theme Inject 是一个独立的 Windows 启动器。

它不会修改:

  • Codex 的app.asar
  • Codex 安装目录
  • ~/.codex配置

它做的是运行时注入:启动 Codex 时带上调试端口,然后通过 CDP 把主题运行时注入到页面里。

这样做的好处是边界比较清晰。你不需要手动改安装包,也不需要担心把 Codex 原始文件改坏。遇到显示异常,关闭 Codex 后重新启动即可恢复。

2. 不只是换背景,而是覆盖完整工作区

很多主题工具只能换一张背景图,Theme Inject 的目标更进一步:让 Codex 的主要工作区都能被主题覆盖。

目前支持的区域包括:

  • 左侧导航栏
  • 对话区
  • 输入区
  • 弹窗
  • 代码块
  • 终端
  • 标题栏
  • 右侧边栏
  • 空白首页

颜色、字体、圆角、透明度、模糊、阴影、终端 ANSI 色都可以配置。主题运行时还会做布局约束,尽量避免主题把 Codex 原本的结构撑坏。

3. 全屏背景和分区背景都支持

背景不只有一种玩法。

你可以选择:

  • 全屏统一背景
  • 内容区背景
  • 左侧导航背景
  • 纯色背景
  • 渐变背景
  • 本地图片背景

每个背景区域还可以单独调:

  • 图片焦点
  • 适应方式
  • 透明度
  • 表面遮罩
  • 模糊
  • 饱和度

这意味着你既可以做一个干净的工作主题,也可以做一个非常个性化的沉浸式主题。

4. 高级皮肤:让 Codex 真的变成你的工作台

Theme Inject 里有一套高级皮肤能力,不只是调 token。

你可以配置:

  • 品牌 Logo
  • 侧栏水印
  • 首页 Hero 图片
  • Hero 徽章
  • 头像
  • 输入区装饰
  • 角落贴纸
  • 动作图标
  • 首页快捷卡片
  • 最多 16 个装饰层
  • 标题栏、侧栏、内容区、卡片、输入区、浮层等表面样式

这套能力非常适合做个人专属 Codex、团队主题、动漫主题、游戏主题、品牌主题,或者任何你想每天打开都能开心一点的界面。

最有意思的部分:AI 主题工作台

Theme Inject 里我做了一个 AI 主题生成工作台。

你可以输入一句主题需求,例如:

做一个偏未来科技感的深色主题,带蓝绿色霓虹光,输入区要清爽,终端要适合长时间看代码。

也可以上传参考图,让视觉模型先分析参考图,再根据不同资源用途生成背景、Hero、Logo、头像、装饰、卡片图标等资源。

AI 工作台支持:

  • 兼容 OpenAI 协议的模型服务
  • 文字生成主题
  • 参考图生成主题
  • 图片资源生成
  • 单个资源重新生成
  • 只重新生成配色
  • 请求日志查看
  • 失败资源续跑
  • 主题包检查点
  • 生成完成后继续手动微调

如果某些图片生成失败,已经完成的资源不会丢。你用相同需求再次生成时,它可以从缺失资源继续补,不需要整套主题重跑。

生成期间也不会频繁刷新 Codex 主 DOM,而是先进入 staging 预览区;你可以在合适的时候刷新预览、微调、保存为新主题。

这部分是我自己最喜欢的功能,因为它让主题创作从“手动调几十个配置项”变成了“先用 AI 起稿,再自己精修”。

主题包可以导入、导出、分享

Theme Inject 的主题包是 ZIP 格式,根目录至少包含:

theme.json

也可以包含:

custom.css preview.png assets/

导入后主题会进入主题库,点击卡片就能立即切换。导出时会把主题配置和引用的本地图片资源一起打包,方便分享给别人。

仓库里也提供了示例主题包,可以下载后直接导入体验:

  • 团子大家族主题
  • 雨姐主题
  • ikun 主题
  • 高达主题

安全和边界我也做了考虑

因为这是运行时注入工具,所以我尽量把风险边界做清楚。

Theme Inject 不会修改 Codex 本体文件,也不会在你没点击生成时主动请求 AI 服务。

另外:

  • 自定义 CSS 默认禁用,只有显式启用并信任后才会执行
  • 主题 ZIP 导入会做大小、路径和扩展名校验
  • 主题资源引用会校验,避免残缺或越界路径
  • API Key 不会写入主题 JSON、ZIP 或诊断日志
  • Windows 下 AI Key 会使用当前用户 DPAPI 加密保存
  • 日志会记录请求阶段、模型、状态和耗时,但不会记录完整 Key

当然,它目前仍是开发版本,Codex 后续更新也可能导致部分选择器或界面结构需要适配。如果你追求绝对稳定,可以等等更成熟的版本;如果你喜欢折腾,那现在就很适合上车试试。

使用方法

  1. 关闭所有正在运行的 Codex 窗口。
  2. 运行theme-inject.exe
  3. Theme Inject 会带着 CDP 参数启动 Codex。
  4. 进入 Codex 后,点击右下角的“主题”按钮。
  5. 在面板里选择主题、调整颜色、背景、皮肤,点击“应用”保存。

再次运行 Theme Inject 时,如果已经有实例在运行,它会通知已有实例打开主题面板。

为什么要做这个?

AI 编程工具正在变成很多开发者每天停留时间最长的软件之一。

当一个工具只是偶尔打开,它好不好看可能没那么重要;但当它变成工作台,视觉体验、信息层次、颜色舒适度、个性化表达就会开始影响心情和效率。

Theme Inject 想证明一件事:

开发工具也可以有自己的气质。

它可以严肃、简洁、克制,也可以热闹、个人、带一点中二。你可以把它调成最适合自己长时间工作的样子,也可以把喜欢的作品、角色、团队品牌变成每天打开 Codex 时第一眼看到的界面。

如果你也喜欢 Codex,也想让它更像自己的工作台,欢迎来试试 Theme Inject。

项目地址:

  • GitHub:https://github.com/codecnmc/codex-theme-inject

觉得有用的话,点个 Star 就是最大的支持。