pi-codex-tui-theme

A Codex-inspired Pi theme with portable TUI compatibility rendering.

Packages

Package details

extensiontheme

Install pi-codex-tui-theme from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-codex-tui-theme
Package
pi-codex-tui-theme
Version
0.3.0
Published
Aug 24, 2026
Downloads
139/mo · 139/wk
Author
te15uya
License
MIT
Types
extension, theme
Size
34.3 KB
Dependencies
0 dependencies · 2 peers
Pi manifest JSON
{
  "extensions": [
    "./extensions"
  ],
  "themes": [
    "./themes"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-codex-tui-theme

一个只改变 Pi TUI 外观的 Pi package,视觉方向参考 Codex CLI。它把目前的 UI 调整集中在一个可安装的 package 中,不依赖对其他插件 node_modules 的直接修改。现在包含主题、启动信息卡、Codex 风格输入区、原生 statusline 和一层通用兼容渲染:

  • 默认终端前景色作为主要文字
  • 青色用于选择、焦点、链接和交互边框
  • 绿色用于成功、增加和字符串
  • 红色用于错误、删除和失败状态
  • 洋红色作为 Codex 风格的品牌点缀
  • 低对比度深色表面用于用户消息、工具状态和选择项
  • 41 列启动信息卡,显示 Pi、版本、模型和工作目录
  • composer 提示符、Ask Pi to do anything 占位文案
  • 去除 Pi 默认输入框的上下横线,保留 Pi 原生编辑能力
  • 底部保留 Pi 原生 statusline,显示目录、上下文/token 状态、模型和 thinking level
  • 原生和扩展选择器统一去除右箭头/块状选择光标,改用颜色区分选中项
  • todo 任务摘要统一为 Codex 风格树形排版:首个任务使用 ,后续任务对齐,并在任务块后保留空行
  • 工具调用使用 Ran 标签和带语法高亮的命令行

这个 package 不注册新的工具、命令或快捷键,不修改提示词、模型或工具执行流程。扩展代码只替换 header、editor 和最终 TUI 行的渲染外壳;footer/statusline、编辑、补全、历史、多行输入、粘贴和提交仍由 Pi 原生组件处理。它只依赖 Pi 的两个 peer dependency,即使用户没有安装 todo、问答或其他扩展,也可以单独加载。

安装

从 npm 安装:

pi install npm:pi-codex-tui-theme

本地开发安装:

pi install /path/to/pi-codex-tui-theme

安装后,在 Pi 中打开 /settings,将 Theme 设置为 codex-tui。也可以直接运行:

pi --use-theme codex-tui

为了隐藏 Pi 默认的资源清单并让启动卡成为唯一启动界面,需要在全局设置中启用:

{
  "theme": "codex-tui",
  "quietStartup": true
}

主题文件支持热加载;修改 themes/codex-tui.json 后,重新加载或在 Pi 中执行 /reload 即可查看变化。

发布包只包含 README.mdextensions/themes/。开发用的兼容性存档位于 archives/,不会进入 Git 或 npm 发布包。

可移植性边界

Pi package 可以稳定地替换 Pi 暴露出来的 TUI 组件和最终渲染行,因此通用的输入框、光标、主界面选择器、工具调用行和 todo 摘要排版都已经收拢在本 package 中。

以下改动不能只靠一个视觉主题 package 完整接管:

  • /goal 无参数时的 Usage 文本和状态逻辑属于 @narumitw/pi-goal 自己注册的命令。Pi 当前没有公开的命令注销/替换 API;要改变它的行为,仍需该插件发布修正版或安装一个补丁版 companion package。
  • pi -r 的整页 resume 选择器在 Pi 扩展加载前就创建了。当前 Pi 没有给主题 package 提供这个启动阶段的渲染钩子;因此整页 Codex resume 布局、时间列和启动阶段选中行背景,需要 Pi 核心提供主题钩子,或由发行版/用户应用一份与 Pi 版本匹配的核心补丁。
  • 某些第三方插件把箭头、提示文本或业务符号直接写在自己的组件内部。主题层会处理通用的选择指针和最终可识别的 UI 行,但无法安全地重写所有业务文本;这类改动应由对应插件维护者收拢。
  • themequietStartup 是 Pi 的用户设置。package 不会擅自修改全局配置,所以首次安装后仍需选择 codex-tui,并按上面的配置打开 quietStartup,才能得到完整的启动界面。