omp packages

@ssk_dev/pi-docs-slim0.3.1

Keep Pi's built-in documentation guidance out of the system prompt unless you ask for it with /pi. Fork of pi-slim, updated for Pi 0.87.1+ (tested on 1.0).

ssk_dev Published 17 days ago MIT ~349 downloads/mo

Untested on omp

This is a pi package. No one has reported whether it works on omp yet. If you try it, add your result below.

Did it work for you?

Result

One report per person. A new report replaces your old one.

Reports 0

No reports yet.

Readme

@ssk_dev/pi-docs-slim

看看我的完整 Pi 配置

English

一个 Pi 扩展,把 Pi 默认附带的文档说明从系统提示词里去掉。真要问 Pi 本身的问题时,用 /pi 提问,这一次会把文档说明带回来。

本项目 fork 自 Rob Zolkos 的 robzolkos/pi-slim。思路和 /pi 命令都来自原版,fork 主要是为了让它能在新版 Pi 上正常工作。

安装

pi install npm:@ssk_dev/pi-docs-slim

如果装过原版 pi-slim,先卸载。两个扩展都会注册 /pi 命令。

需要 Pi 0.87.1 或更新版本(已在 0.87.1 和 1.0.0 上测试)。

使用

  • 普通请求:模型看不到 Pi 的文档说明。
  • /pi <关于 Pi 的问题>:这一次保留文档说明,工具调用的轮次也保留;下一条普通请求恢复清理。
  • 你自己写的 <docs>、项目指令和代码示例不动;用户消息、助手回答和工具输出一律不改。

安装或更新后执行 /reload,发一条普通消息,再看看 /context。

为什么要 fork

原版 0.2.1 靠替换系统提示词里的一段字符串来去掉文档说明。Pi 0.87.1 开始,系统提示词改成按结构化的 section 拼出来,并保存成 system 消息,这种替换就不起作用了,文档说明照样会发给模型(见 pi-slim#3)。

这个 fork 改了这些:

  • 在新的结构化提示词里去掉文档说明。 不让 Pi 把 docs section 重新填回来,system 消息在保存前、发送前都会清理。
  • 旧历史也清理。 之前 /pi 留下的文档说明,在后面的普通请求里会被去掉。
  • /context 显示的是实际内容。 pi-context-view 看到的是清理后的提示词,而不是原始版本。
  • /pi 更可靠。 “保留文档”的许可只绑定到 /pi 发出的那一次请求;就算这次请求被拦截,也不会漏到你的下一条消息。
  • 提示词不会被冻结。 其他扩展后来加的工具和规则照样生效。
  • 加了离线集成测试。 用真实的 Pi 会话加离线模型 provider 跑,不调用模型服务。

没有新增运行时依赖。

测试

npm test

测试需要装好 Pi 0.87.1 以上版本和 pi-context-view 0.6.0。默认找全局的 Pi 和 ~/.pi/agent/npm/node_modules/pi-context-view;装在别处的话,指向包的根目录:

PI_CODING_AGENT_DIR=/path/to/pi-coding-agent PI_CONTEXT_VIEW_DIR=/path/to/pi-context-view npm test

设置 PI_SLIM_ENTRY 可以拿这套测试去跑别的实现。

限制

  • 不改写旧的会话文件。/context 的 Usage 视图在下一条普通请求后就是干净的。Initial 视图是第一次请求时的快照,要重新加载才会更新;如果第一次请求用的是 /pi,里面有文档说明是正常的。
  • 模型自己用工具去读 Pi 文档,读到的内容会保留。
  • 清理逻辑依赖 Pi 0.87.1 的事件顺序,升级 Pi 后要重跑测试。如果别的扩展在最后一步上下文处理之后又塞回文档说明,这里清不掉。

许可证

MIT。原作品版权归 pi-slim contributors(Rob Zolkos)所有,见 LICENSE。