@black942026/pi-trust-like0.1.1
独立的 Pi 目录信任扩展。首次进入目录时只显示「是否信任此目录?」及 **是 / 否** 两个选项:选「是」后记录目录;选「否」或取消则退出 Pi。父目录和子目录必须分别信任。
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.
Reports 0
No reports yet.
Readme
pi-trust-like
独立的 Pi 目录信任扩展。首次进入目录时只显示「是否信任此目录?」及 是 / 否 两个选项:选「是」后记录目录;选「否」或取消则退出 Pi。父目录和子目录必须分别信任。
对 /、/root、/home、/Users、/etc、/usr、/var、当前用户主目录及 /home 或 /Users 下的直接子目录(用户主目录)加强风险提醒:展示完整路径与影响,并将「否」放在首位作为默认选择。普通项目子目录不额外提醒;所有目录仍只有两个选项。
安装
建议以用户级扩展安装,不能放在待信任项目的 .pi/extensions 下:
pi install "$(pwd)"
也可以临时测试:pi -e /绝对路径/pi-trust-like/index.ts。安装后重启 Pi;不要用 --no-extensions。Pi 需要 Node.js 22.19 或更新版本。
信任记录
保存在 ${PI_CODING_AGENT_DIR:-~/.pi/agent}/trust-dir.json(JSON 中的 trustedDirectories 数组),不读取或写入 Pi 原生的 trust.json。只比较目录的 realpath 规范化后的完整路径;软链接指向同一实际目录时视为相同目录,父子目录之间不继承。删除对应数组条目即可撤销信任。
无可用交互界面(如 print/JSON 模式)且目录未信任时直接拒绝启动;RPC 模式由客户端响应选择框。信任文件损坏或无法写入时也拒绝进入。
Pi API 限制: 有受保护项目资源且未指定 --approve/--no-approve 时,本扩展会通过 project_trust 在加载项目扩展之前询问,并返回本次运行的原生信任决定(不保存到原生文件);没有受保护资源或使用了上述命令行覆盖参数时,只能在 session_start 询问,此时 Pi 可能已经加载项目资源。Pi 原生的信任配置仍是独立机制,可能影响项目资源加载;此扩展并非沙箱,也不能替代原生项目信任边界。
测试
npm test