npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

pi-gpt56-switcher

v0.1.0

Published

A keyboard-first Pi extension for switching GPT-5.6 capability models and thinking levels within the active provider.

Downloads

44

Readme

Pi GPT-5.6 Switcher

English | 简体中文

CI License: MIT

一个键盘优先的 Pi 扩展,用于在不离开当前 Provider 的前提下切换 GPT-5.6 能力模型和 Thinking level。

GPT-5.6 Switcher 预览

截图展示的是一个 Provider 配置示例。实际显示的能力行和 Thinking level 由当前 Pi 模型注册表动态决定。

为什么需要它

一个 Provider 可能通过 Luna、Terra、Sol 多个能力模型提供 GPT-5.6,而且每个模型支持的 Thinking level 可能不同。Pi 可以分别切换模型和 Thinking,但反复打开两个选择器不利于快速检查和切换组合。

GPT-5.6 Switcher 将有效组合组织为一个内联三行选择器:

  • 只发现当前 Provider 中的模型;
  • 缺失的能力模型不会显示;
  • 每一行只显示该模型真正支持的 Thinking level;
  • 移动只更新预览,按 Enter 才同时应用模型和 Thinking;
  • 底部对比当前与目标 Profile,目标中发生变化的字段会显示为黄色;如果当前模型不属于 GPT-5.6 能力模型,则显示为 Other,不会伪装成某个能力档位。

环境要求

  • @earendil-works/pi-coding-agent 0.80.10 或更高版本
  • 当前 Provider 至少注册以下一个模型:
    • gpt-5.6-luna
    • gpt-5.6-terra
    • gpt-5.6-sol

本扩展不会注册模型或 Provider,只使用 Pi 模型注册表中已经存在的模型。

安装

从 npm 安装:

pi install npm:pi-gpt56-switcher

也可以直接从 GitHub 安装:

pi install git:github.com/yoyooyooo/gpt56-switcher

重启 Pi,或在已有 TUI 会话中执行 /reload

本地开发:

git clone https://github.com/yoyooyooo/gpt56-switcher.git
cd gpt56-switcher
bun install
pi -e .

使用

打开选择器:

/g56

也可以不打开选择器,直接应用指定 Profile:

/g56 terra high
/g56 sol max

如果当前 Provider 不具备指定模型或 Thinking level,命令不会修改状态,并会提示该 Profile 不可用。

按键

| 按键 | 行为 | |---|---| | 左 / 右 | 在当前能力行支持的 Thinking level 之间移动 | | 上 / 下 | 在已有能力行之间移动,并尽量保持 Thinking;必要时安全收敛到可用档位 | | Home / End | 跳到当前行的第一个或最后一个 Thinking level | | 1 / 2 / 3 | 在存在时直达 Luna / Terra / Sol | | Enter | 先应用目标模型,再应用对应 Thinking level | | Escape | 取消且不做任何修改 |

动态发现规则

能力顺序固定为 Luna → Terra → Sol。Thinking 顺序遵循 Pi:

off → minimal → low → medium → high → xhigh → max

对于每个匹配模型,扩展遵循 Pi 的模型元数据语义:

  • reasoning: false 时只提供 off
  • thinkingLevelMap 中的 null 表示明确不支持该档位;
  • 只有显式映射时才显示 xhighmax
  • 普通档位缺少映射时沿用 Pi 默认行为。

扩展不会自动切换到其他 Provider。

交互设计

Pi 自定义组件公开的是键盘输入协议,没有公开的鼠标坐标、命中检测或拖拽事件。因此本扩展采用三行键盘交互,不接管终端 mouse tracking,也不启动第二套 renderer。

从用户视角看,选择过程具有事务边界:

  1. 移动只更新预览;
  2. Escape 退出且不修改状态;
  3. Enter 先调用 Pi 的模型切换;
  4. 模型切换成功后再应用 Thinking level;
  5. 最终提示 Pi 的实际 Thinking level,包括异常收敛结果。

隐私与安全

扩展只读取 Pi 在进程内公开的模型元数据,不读取 Provider 凭据文件、不发送遥测,也不会自行发起模型请求。认证、路由和凭据存储仍由 Pi 与当前 Provider 负责。

安全问题报告方式见 SECURITY.md

开发

bun install
bun test
bun run typecheck

欢迎贡献,具体见 CONTRIBUTING.md

许可证

MIT