codex-threadripper 0.1.5

Human-first CLI that keeps Codex thread history aligned to one provider bucket.
codex-threadripper-0.1.5 is not a library.

codex-threadripper

codex-threadripper 是一个面向人的小型 CLI,用来让 CODEX_HOME/state_5.sqlite 持续对齐当前 model_provider

它的目标很直接:让 Codex 线程列表和 resume 流程始终落在同一个 provider 桶里,这样线程历史会更完整、更连续。

适合谁

  • 经常在同一个 CODEX_HOME 下切换 provider 的人
  • 想让 codex resume 和基于 app-server 的线程列表看到同一批历史线程的人
  • 想把这件事做成后台常驻服务的人

功能

  • status
    • 查看当前 config provider、SQLite 分布和后台服务状态
  • sync
    • 立刻执行一次 SQLite 收敛
  • watch
    • 持续监听 config.toml,并定时收敛新增线程
  • print-plist
    • 打印 launchd plist
  • install-launchd
    • 安装并加载后台服务
  • uninstall-launchd
    • 卸载后台服务

安装

cargo install codex-threadripper

也可以从源码目录直接运行:

cargo run -- --help

示例

codex-threadripper status
codex-threadripper sync
codex-threadripper watch
codex-threadripper install-launchd

本地化

当前支持两种语言:

  • 简体中文
  • 英文

语言选择顺序:

  1. CODEX_THREADRIPPER_LANG
  2. LC_ALL
  3. LC_MESSAGES
  4. LANG
  5. macOS 系统语言

平台

launchd 相关命令面向 macOS。
statussyncwatch 这类核心命令适合任何能访问 CODEX_HOME/state_5.sqlite 的环境。

English

codex-threadripper is a human-first CLI that keeps CODEX_HOME/state_5.sqlite aligned with the current model_provider.

It helps Codex thread lists and resume flows stay in one provider bucket, so thread history remains complete and continuous.

Install

cargo install codex-threadripper

Commands

  • status shows the current provider, SQLite distribution, and background service state
  • sync reconciles SQLite once right now
  • watch keeps listening for provider changes and new thread rows
  • print-plist prints the generated launchd plist
  • install-launchd installs the background service
  • uninstall-launchd removes the background service

Release flow

This project uses a tag-driven cargo-release + cargo-dist flow.

Preview the next release:

cargo release patch --dry-run

Publish a real release:

cargo release patch --execute

The release tag format is:

vX.Y.Z

After the tag is pushed, GitHub Actions runs cargo-dist and builds release artifacts for:

  • macOS Intel
  • macOS Apple Silicon
  • Linux x64
  • Linux ARM64
  • Windows x64

Generated installers and package outputs include:

  • shell installer
  • PowerShell installer
  • Homebrew formula artifact
  • Windows MSI

GitHub Release keeps the native archives and installers. npm uses a matrix package layout:

  • codex-threadripper
  • @wangnov/codex-threadripper-macos-arm64
  • @wangnov/codex-threadripper-macos-x64
  • @wangnov/codex-threadripper-linux-arm64
  • @wangnov/codex-threadripper-linux-x64
  • @wangnov/codex-threadripper-windows-x64

The root package stays human-friendly. The platform packages carry the native binaries.

.github/workflows/npm-publish.yml runs on version tags, waits for the GitHub Release artifacts to appear, assembles the npm matrix locally in CI, and publishes both the platform packages and the root package with npm trusted publishing.

Whenever you change dist-workspace.toml, rerun:

cargo dist init --yes