一套为 Codex 制作的嘉然(Diana)非商业同人视觉方案。
日间与暗夜分别设计,保留 Codex 原本的阅读层级,让嘉然、阿草与手绘线稿安静地停留在工作区边角。
在线演示 · CodexThemes 视觉参考 · 下载发行包 · 兼容性记录 · 安全说明
Important
从 v0.2.2 起,公开版不再提供 CDP 调试端口、后台 watcher、自动挂载任务或 .codedrobe-theme 安装包。旧方案虽然只监听本机回环地址,但同机程序可以在没有认证的情况下使用高权限调试接口,因此不符合公开发行的安全边界。
完整角落立绘目前没有经过验证的官方桌面注入入口。仓库保留全部定稿美术、日夜 CSS 蓝图与部署 Skill;普通安装默认以完整视觉为目标,由用户自己的 Codex 先检查正式入口。若只能使用本机 CDP,Codex 会在执行期间说明风险并等待确认,再针对当前机器生成本地实验适配器;仓库仍不分发预制监听器。
Note
这是非官方、非商业的粉丝项目,与 OpenAI、Codex 及 A-SOUL 官方没有隶属或背书关系。代码采用 MIT License;嘉然、阿草及相关美术素材不包含在 MIT 授权中。本项目中的相关视觉内容均为 A-SOUL 二创内容,请勿用于任何商业化用途。
把下面这句话发给 Codex:
请使用 $skill-installer 从 https://github.com/lanmengSakura/diana-codex-theme/tree/main/skills/diana-codex-theme 安装 Diana Codex Theme。安装完成后只告诉我安装路径和验证结果,本条消息不要继续挂载主题。
安装器会把 Skill 放进当前用户的 Codex Skills 目录,新 Skill 从下一条消息开始可用。安装完成后另发一条:
使用 $diana-codex-theme 帮我完整挂载这套 Diana Codex 主题。
第二条指令默认要求完整效果,包括角落立绘、阿草、星星、糖果和叙事线稿。Codex 会优先使用正式主题、插件、Pet 或用户样式入口;若当前版本只能通过实验性 CDP 完成,它必须先通知用户同机访问风险以及准备创建的端口、进程、文件、日志和恢复方法,等待确认后再继续。
公开包不会下载或恢复旧 watcher,也不会把适配器写进 Codex 安装包。实验适配器由用户自己的 Codex 根据当前系统和 Codex 版本生成在用户可写目录中。用户不接受 CDP 风险时,才降级为原生配色并保留完整美术素材。
Tip
v0.2.9 已收入 Codex 26.818.5229.0 的顶部渐变、上方装饰线和右侧面板首行标题星星挂载规则。星星不再匹配“环境信息”“Environment”或“输出内容”等固定文字,而是识别可见右侧面板的第一条有效标题行,以独立、不可交互的手绘星星节点挂载,并在面板重绘后去重恢复。顶部适配只抬高经过验证的会话前景层,不会再批量改写主工作区所有直属子层。
最新版 Release 提供 diana-codex-theme-skill-0.2.9.zip,用于离线保存或手动安装。ZIP 是 Skill 分发包,拖进对话并不等于已经注册到 Codex。把 ZIP 附到任务后,应明确告诉 Codex:
请把附件中的 diana-codex-theme Skill 安装到我的 Codex Skills 目录,验证 SKILL.md 后只报告安装结果;下一条消息我再调用它。
仍需在下一条消息中使用 $diana-codex-theme 完成主题部署。若只是解压、复制素材或打开预览页,均不能算作主题已经挂载。
- Skill 安装成功:用户 Skills 目录中存在
diana-codex-theme/SKILL.md,且下一条消息能识别$diana-codex-theme。 - 配色部署成功:真实 Codex 的日间或暗夜原生配色已经变化,并完成恢复验证。
- 完整挂载成功:真实 Codex 工作区能看到立绘与装饰,且点击、输入、滚动、主题切换和恢复均已实测。
- 只复制文件、生成方案、通过 ZIP 校验或打开模拟页面,都不等于真实主题已经挂载。
Codex 自身保存的配色与字体会在下次启动时继续生效,不需要额外程序。完整角落立绘目前没有官方自动加载接口;首次完整挂载应先以手动、临时方式完成启用、停用、完全退出、正常重开和恢复验证。验证通过后,如果更看重启动后的完整视觉效果,可以再让自己的 Codex 制作本地自动挂载方案:
帮我把这套 Diana Codex 主题设置为启动后自动挂载。如果需要本地监听,请先说明实现方式、访问范围、安全风险和卸载方法,等我确认后再执行。
这类方案通常需要开启本机 CDP 调试端口,并运行后台 watcher 或登录启动项,在 Codex 创建新页面后重新注入立绘与线稿。它确实更方便,但会带来这些隐患:
- CDP 即使只监听
127.0.0.1,同一台电脑上的其他程序仍可能连接它,读取页面文字、执行脚本或截图。 - watcher 需要持续接触 Codex 页面结构,会增加常驻资源占用,也可能在 Codex 更新后失效或误操作新界面。
- 计划任务或登录启动项会形成持久化残留;卸载不完整时,监听器可能继续运行。
- 自动挂载器如果通过强制结束 Codex 来恢复主题,可能中断正在执行的任务并造成界面状态不同步。
选择便利方案前,应让 Codex 列出将创建的进程、端口、启动项、日志和删除方法。至少应限制为本机回环地址,不记录消息正文、任务标题或截图,不连接外部服务器,不强制关闭正在工作的 Codex,并提供一次操作即可移除的恢复方式。这些措施只能降低风险,不能让 CDP 注入获得与原生外观相同的安全边界。
Caution
公开发行包不包含监听器和自动注入脚本。普通安装默认追求完整视觉,但并不静默授权 CDP 或自动启动;两者都必须在执行期间告知风险并分别获得确认。不接受上述风险时,保留 Codex 原生配色即可。
v0.2.1 及更早的完整桌面皮肤为了把立绘和角落线稿放进 Codex 工作区,会用 --remote-debugging-port=9336 启动 Codex,再由常驻 watcher 通过 Chrome DevTools Protocol(CDP)修改渲染页面。端口虽然只绑定到本机回环地址,不会直接暴露给局域网或互联网,但它没有独立认证:同一台电脑上的其他程序可能连接这个高权限调试接口,读取页面内容或操作渲染器。
这不是素材本身的问题,也不是普通 CSS 配色的问题;风险来自“为了注入 CSS 而持续开放桌面应用调试接口”这一运行方式。问题不在于完整皮肤不能做,而在于公开发行包不应替所有用户默认安装一个长期存在、没有独立认证的高权限入口。
- 删除桌面 CDP 运行器、watcher、自动挂载脚本与开机计划任务安装脚本。
- 删除
@codedrobe/core运行依赖和.codedrobe-theme可执行主题包。 - 发布流程会拒绝重新打包上述文件,并自动清理旧的
.codedrobe-theme产物。 - GitHub 历史 Release 中的旧桌面注入附件已经撤回;历史源码标签仅用于审计,不建议安装。
- 保留
security:audit和security:remove-legacy,只用于检查、清理旧版残留,不会连接 CDP,也不会读取 Codex 会话。
v0.2.3 没有把旧运行器重新放回发行包,而是把完整视觉部署交给用户自己的 Codex:
- 普通指令“帮我安装并挂载这套 Diana Codex 主题”默认以完整效果为目标,不再默认停在配色层。
- Codex 会先检查当前版本是否提供正式主题、插件、Pet、扩展或用户样式入口;存在正式入口时优先使用。
- 只能使用 CDP 时,Codex 会在执行期间说明同机访问风险,并列出端口、进程、文件、日志、资源占用、停止和卸载方法。
- 用户确认后,Codex 才针对当前系统与 Codex 版本在用户可写目录生成本机实验适配器,不下载或复用旧 watcher。
- 首次完整挂载保持手动、临时运行;自动挂载需要在完整恢复验证后再次单独确认。
这样保留了完整立绘与装饰的实际入口,也避免把一套固定端口、固定 watcher 和计划任务无差别地装到所有用户电脑上。
v0.2.4 修正了 v0.2.3 把“安装 Skill”和“挂载主题”挤在同一条消息里的流程问题:
- 推荐安装改为
$skill-installer+ GitHub Skill 路径,不再把拖入 ZIP 描述成确定性的自动安装入口。 - 安装与挂载拆成两条消息,确保新 Skill 已被 Codex 加载后再调用。
- Release ZIP 保留为离线和手动安装备用,并明确要求安装到用户 Skills 目录。
- Skill 必须分别报告“Skill 已安装”“原生配色已部署”“完整美术已挂载”,不得把复制文件或生成方案误报为完成。
- 完整美术仍以真实 Codex 界面为验收对象;预览页、CSS 校验和 ZIP 校验只能证明素材完整。
v0.2.5 到 v0.2.8 是同一轮 Starberry 消息导轨修正:先处理长会话过密,再兼容当前 Codex 的嵌套 MarkerLine,最后依据真实界面反馈定稿为混合节奏。完整过程见 合并发布说明。
- 按总消息数切换疏(
1–32)、中(33–96)、密(97+)三档比例。 - 所有真实消息均保留可见的 2px 实线与 Codex 原生点击区域,不再通过透明空格降低密度。
- 普通短线使用静态不规则起伏,每五条一次的分隔也使用多种长度,避免形成刻度尺或规则波浪。
- Codex 原生悬停起伏、键盘焦点、真实当前落点八角星与跳转能力保持不变。
- 导轨首尾菱形始终可见,修复当前落点位于最后一条时缺少尾端的问题。
- 日间版锁定
v0.2.4之前的莓粉色相与视觉透明度;暗夜版使用确认后的实色莓粉层级。 - 日间、暗夜主题、展示页以及独立 Skill 内的 CSS 蓝图与精细适配规则已同步。
v0.2.9 把 v0.2.8 发布后积累的 Skill 兼容经验收入正式发行包,针对 Codex 26.818.5229.0 修正顶部层级与右侧面板标题:
- 保留 Codex 原生固定工具栏和顶部渐变,不删除渐变,也不把一次实测高度当成跨版本常量。
- 只识别并抬高同时包含真实会话视口与输入框的直属前景层;不再对主工作区所有直属子层批量设置
position和z-index,避免工具栏错位及装饰线被“黑雾”覆盖。 - 上方装饰仍保持不可交互并位于任务内容下方;只有在当前构建实测仍偏暗时,才允许对右上细线做轻量透明度补偿。
- 先定位当前可见的右侧原生面板,再识别第一条包含有效文字的标题行。
- 在标题行起始处挂载一个独立的
aria-hidden手绘星星,不修改或替换 Codex 原生标题。 - 面板重绘、切换内容或折叠后会清理旧节点并恢复当前星星,界面中始终只保留一个。
- 星星保持
21 × 21px,暗夜/日间透明度分别为.72 / .64,并使用pointer-events: none,不抢占标题、按钮或面板内容的交互区域。 - Skill 在安装后的下一条消息收到“继续”时,会恢复用户原先的完整挂载请求,不会重复安装或要求用户再粘贴一套指令。
- 公开包仍然没有运行器、监听端口、后台 watcher 或自动挂载任务;本机实验适配器继续由用户自己的 Codex 在告知风险并获得确认后生成。
完整说明见 v0.2.9 发布说明。
- Diana Night / Diana Day 的原生配色数值。
- 嘉然立绘、阿草、星星、糖果、草莓和简笔线稿等全部定稿美术资源。
- 日夜 CSS 视觉蓝图,供正式接口或用户确认后的本机实验适配器复用。
- 静态在线演示与高保真模拟截图。
- 经过验证的 Windows Terminal 主题;它与旧桌面注入运行器没有依赖关系。
| 功能 | v0.2.9 公开版状态 | 是否需要后台进程或监听端口 |
|---|---|---|
| Codex 日夜原生配色 | 可直接使用 | 否 |
| Codex UI/代码字体 | 可直接使用 | 否 |
| Codex 角落立绘和线稿 | 默认完整挂载;正式入口优先,否则由用户 Codex 提出本机实验方案 | 正式入口不需要;CDP 方案需告知风险并确认 |
| 在线演示页面 | 可直接打开 | 否,页面为静态文件 |
| Diana PowerShell / CMD | Windows Terminal 1.24+ 已验证 | 否 |
OpenAI 当前公开的原生外观范围是基础主题、强调色、背景色、前景色、对比度以及 UI/代码字体,并支持主题导入和复制;没有角落贴图字段。因此仓库不再分发未认证调试端口运行器,但 Diana Skill 会把完整美术与部署决策交给用户自己的 Codex:先寻找正式入口,没有正式入口时再通知风险并询问是否继续本机实验挂载。
Diana Night · 暖黑、莓粉与低亮度粉笔线稿
Diana Day · 暖白、浅莓色与彩色细线简笔画
截图由仓库内的 高保真桌面模拟页 生成。任务、路径与环境信息均为虚构内容,不包含作者的真实会话或项目截图。
如果曾经运行过旧版 theme:dark、theme:light 或自动挂载命令,请在更新仓库后执行:
npm run security:remove-legacy随后完全退出所有 Codex 窗口和进程,再从开始菜单正常打开 Codex,最后检查:
npm run security:audit只有输出 SAFE 才说明旧 watcher、计划任务、调试端口启动参数和 9336 监听都已消失。清理工具不会连接旧调试端口,也不会读取任何会话内容。详细说明见 v0.2.2 安全迁移。
如果清理前仍能看到角落立绘,说明旧运行器可能仍在当前 Codex 进程中生效。清理和完全退出 Codex 后,立绘消失属于预期结果;它没有被删除,仍保存在 Skill 和 assets/ 中。
Windows Terminal 版本使用本地静态 PNG 和原生 Fragment,不运行 watcher、动画、着色器或后台进程,因此可以继续作为正式发行功能。
这里的 Diana CMD 指 Windows Terminal 中以 cmd.exe 为命令行的 Diana 配置,不是传统 conhost.exe 黑框窗口。传统 CMD 本身没有这套背景图能力;请从 Windows Terminal 的下拉菜单或开始菜单中的 Diana CMD 快捷方式打开。
Diana Terminal · 模拟命令与公开路径,不包含作者的真实终端内容
从最新版 Release 下载 diana-terminal-0.2.8.zip,解压后任选一种方式。终端内容在本轮没有变化,因此 v0.2.9 Release 继续附带经过验证的 v0.2.8 终端包,不用重复制造仅版本号不同的附件:
| 路线 | 双击文件 | 从源码安装 | 对现有终端的影响 |
|---|---|---|---|
| 独立保留 | install-independent.cmd |
npm run terminal:install |
新增 Diana PowerShell / CMD,不修改默认项 |
| 设为默认 | install-as-default.cmd |
npm run terminal:default |
备份设置后,将 Diana PowerShell 设为当前用户默认配置 |
# 安装并立即打开独立 Diana PowerShell
npm run terminal:open
# 为指定脚本创建固定使用 Diana 配置的快捷方式
npm run terminal:shortcut -- -CommandPath "D:\Tools\monitor.cmd"
# 完整移除终端主题
npm run terminal:uninstall两条安装路线都不会覆盖或删除原生 PowerShell、CMD 配置。终端主题要求 Windows Terminal 1.24 或更高版本,详细说明见 terminal/README.md。
| 内容 | 当前用户路径 | 用途 |
|---|---|---|
| 配置 Fragment | %LOCALAPPDATA%\Microsoft\Windows Terminal\Fragments\DianaCodexTheme\diana-terminal.json |
注册 Diana PowerShell / CMD 和配色 |
| 本地背景图 | 同目录下的 diana-terminal-bg-v2.png |
由 Windows Terminal 直接读取 |
| 开始菜单快捷方式 | %APPDATA%\Microsoft\Windows\Start Menu\Programs\Diana Terminal |
独立打开两个 Diana 配置 |
| 默认项恢复状态 | Fragment 目录下的 diana-terminal.state |
仅在选择“设为默认”时记录原默认配置 |
| 设置备份 | Windows Terminal settings.json.diana-时间.bak |
仅在选择“设为默认”时生成 |
安装器不写系统服务、不注册计划任务、不访问网络、不开放端口,也不替换 cmd.exe、powershell.exe、pwsh.exe 或 Windows Terminal 可执行文件。卸载时只移除上述主题文件与快捷方式;如果默认项仍是 Diana,才恢复此前记录的默认配置。
npm run preview:open| 操作 | 功能 |
|---|---|
| D | 切换日间/暗夜主题 |
| Space | 播放或暂停时间轴 |
| ← / → | 切换演示场景 |
| 右上面板按钮 | 展开或收起模拟环境信息 |
演示页是独立的静态模拟界面,不连接本机 Codex,也不会读取本地任务。
assets/ 嘉然、阿草、线稿和装饰素材
docs/ 架构、安全迁移、兼容性与发布说明
preview/ 高保真展示页面与日夜截图
skills/ 自包含日夜素材、安全部署决策与验证流程
terminal/ Windows Terminal 暗夜主题、安装与移除脚本
tests/ 安全边界、素材同步与展示页测试
themes/ Diana Night / Diana Day 配色与 CSS 蓝图
tools/ 旧版风险检测、清理与发行打包工具
npm ci
npm run check
npm run release:packrelease:pack 只生成 Windows Terminal 发行包和自包含视觉 Skill,不生成可执行的桌面注入包。贡献代码前请阅读 CONTRIBUTING.md。
- 代码、脚本与主题配置使用 MIT License。
- 嘉然、阿草的名称、形象、原始美术和派生图片不包含在 MIT 授权中,均为 A-SOUL 二创内容,请勿用于任何商业化用途。
- 素材来源、处理方式和再使用边界记录在 ASSET_LICENSES.md。
今天也要活力满满呀。
