当前范围(2026-08-31 修订)
根据 Discussion #324 的已确认决定,本 Issue 改为复用 Pi 原生 Skill 调用与生命周期,不增加 OpenPI 的行内加载和正文恢复层。对应 PR #322;规范记录为 Decision 0002。
这是维护者主动调整需求,不是原贡献者没有完成旧要求。旧需求保留在文末作为历史,不再作为当前验收依据。
当前合同
- 模型自主选择 Skill:Pi 提供目录,正文通过原生
read 按需读取。
- 用户显式调用:使用原生
/skill:name;补全、正文展开及 steering/follow-up 继续由 Pi 负责。
- 正文通过普通用户消息或工具结果进入正常 Session 历史,压缩与恢复完全交给 Pi。
- OpenPI 不提供专门的
$skill 语法、独立正文缓存、provider-only 隐藏投影、压缩后补回正文或保活重读入口。
- 接受原生限制:压缩后不保证全文保留,也不保证模型自动重读;原生输出与上下文容量限制仍然适用。
当前验收
以上勾选表示候选代码/本地验证,不代表已经合并或发布。CI 状态随 #322 当前提交核对。Parent #282、#317 与 PR #321 没有因此自动关闭。
历史需求:行内 $skill+隐藏正文(已被上述原生方案替代)
Parent
What to build
Make $skill-name a working Inline Skill Reference for every normal Pi Session input path.
When a user submits a known reference, keep the raw user-visible message unchanged and add the referenced Skill content as hidden model-visible context. Resolve references only from the Skills that Pi supplies for that model turn. Pi remains responsible for Skill discovery, trust, collisions, diagnostics, and reload.
Acceptance criteria
Blocked by
- None — can start immediately.
当前范围(2026-08-31 修订)
根据 Discussion #324 的已确认决定,本 Issue 改为复用 Pi 原生 Skill 调用与生命周期,不增加 OpenPI 的行内加载和正文恢复层。对应 PR #322;规范记录为 Decision 0002。
这是维护者主动调整需求,不是原贡献者没有完成旧要求。旧需求保留在文末作为历史,不再作为当前验收依据。
当前合同
read按需读取。/skill:name;补全、正文展开及 steering/follow-up 继续由 Pi 负责。$skill语法、独立正文缓存、provider-only 隐藏投影、压缩后补回正文或保活重读入口。当前验收
$skill不再触发程序注入,Pi 目录和原生读取仍可用。89f6c88fab44e489be38d276d76c7f9cd63c655f的必需 CI 检查通过:Node 22.19.0 / Node 24 / Windows。以上勾选表示候选代码/本地验证,不代表已经合并或发布。CI 状态随 #322 当前提交核对。Parent #282、#317 与 PR #321 没有因此自动关闭。
历史需求:行内 $skill+隐藏正文(已被上述原生方案替代)
Parent
What to build
Make
$skill-namea working Inline Skill Reference for every normal Pi Session input path.When a user submits a known reference, keep the raw user-visible message unchanged and add the referenced Skill content as hidden model-visible context. Resolve references only from the Skills that Pi supplies for that model turn. Pi remains responsible for Skill discovery, trust, collisions, diagnostics, and reload.
Acceptance criteria
$skill-namereference in a submitted message adds the corresponding frontmatter-stripped Skill content to model-visible context.$begins a reference only at the start of input or after horizontal whitespace.abc$skill-nameremains ordinary text.\$skill-nameremains unchanged and is not expanded.$skill-nameremains unchanged and adds no Skill content.Blocked by