Pi 上的 Felo SearchPi Coding Agent

Pi 读得了你的仓库,却读不了更新日志

内核小是优点,直到任务依赖上个月刚发布的东西。Felo Search 把带日期的答案连同它们的出处页面一起交给会话,于是升级决策依据的是供应商自己的说明,而不是记忆里的 API。

为 Pi 打造四个根目录没有沙箱——先读再装
获取 API Key查看平台指南

Pi 上的 Felo Search

01技能包
felo-skills/felo-search
02凭据
FELO_API_KEY
03返回形式
结论、来源、日期
04常见根目录
~/.pi/agent/skills/
只为一次会话加载pi --skill /path/to/felo-search
Pi Coding Agent 标志
该技能运行于

Pi Coding Agent

极简终端编码框架

阅读 Pi Coding Agent 指南

Pi 刻意把内核做得极小,并要求你自己扩展,所以技能正是它期望的扩展方式:不新增需要维护的工具,又能拿到触角。

从哪加载
~/.pi/agent/skills/ · .pi/skills/ · 包
安装方式
复制文件夹,或 pi install npm:@scope/pkg
值得注意
没有沙箱——挂载前先读一遍 SKILL.md
你会得到

答案到手时带着页面和日期

在框架里用搜索,价值不在于文字更多,而在于每一条结论都能核对。日期和链接一样重要:五天前的一条更新日志说的是你即将运行的那个版本,去年的那条说的不是。

结论来源发布时间
v3 客户端重命名了流式助手docs.vendor.com/sdk/v3-migration5 天前
重试现在默认 5 次并带退避github.com/vendor/sdk/releases5 天前
连接池耗尽已在 2.4.1 修复github.com/vendor/sdk/issues/441211 天前
Node 24 是当前的活跃 LTS 线nodejs.org/en/about/previous-releases3 周前
旧端点将在六月停止响应status.vendor.com/deprecations2 周前

把要求写进提示词,而不是指望它自己做到:「每一项都给出来源和日期,无法核实的请标注出来。」

实际用法

只读仓库的会话答不上来的两个问题

这两个都取决于工作树之外的东西,挂上技能包之后都能核查。

输入这句我们刚把驱动升到 3.x。只列出会影响 src/db/ 下内容的变化,并逐条注明来源。返回内容

一份指向迁移说明和发版记录的简短清单,只影响你手上没有的那些代码的变化已经被剔掉。

输入这句弄坏我们包装层的那套重试行为,是这个版本已知的问题吗?告诉我你是在哪里读到的。返回内容

那个 issue 讨论或更新日志条目,和你自己文件里的行为并排放着,你可以直接看出两者是否真的对得上。

在 Pi 上安装

Pi 的四个加载位置,和一个把它们全部跳过的参数

没有东西要编译,也不需要注册表账号。唯一要决定的是技能包该放进哪个根目录——而 Pi 自己的规则是,项目级技能只有在你信任该项目之后才会启用。

  1. 01
    ~/.pi/agent/skills/全局

    本机所有项目。读完之后如果你想让它到处可用,就放这里。

  2. 02
    ~/.agents/skills/共享

    其他框架也会读这个文件夹,所以一次克隆能同时服务 Pi 和你跑的别的东西。

  3. 03
    .pi/skills/项目

    只对这个仓库生效,而且只在你信任该项目之后。还没读过的技能包适合先放这里评估。

  4. 04
    pi install npm:@scope/pkg

    某个包的 skills/ 目录,纳入版本管理、可以更新。技能包一旦确定长期使用,这是更干净的路子。

或者只为一次会话加载,不复制pi --skill /path/to/felo-search # additive even when you start with --no-skills
固定套路

每次版本变动都值得重跑一遍的升级检查

这套流程在 Pi 上很好用:把问题收窄到一个版本,然后逼着答案说出它的证据。

触发条件

lockfile 里的某个版本动了,或者马上就要动,而更新日志比你手头的时间长。

  1. 01

    把问题钉在一个版本上

    先从 lockfile 里读出已安装的版本,再问那个发布以及它之后的版本。问「最新版」只会得到关于一个你根本没在跑的版本的答案。

  2. 02

    每一项都要链接和日期

    关于某个库、没有出处的说法,只是语法通顺的猜测。日期让你能丢掉比你当前版本更旧的一切。

  3. 03

    把结论映射到你手上的文件

    问这些变化里哪些会影响会话在这个仓库里看得见的路径。这才把更新日志变成待办清单。

  4. 04

    把答案留在下一个会话会看的地方

    Pi 的会话之间不共享记忆,所以把结果写进仓库——一个笔记文件、一条评论、一条提交信息。只活在滚屏里的结论,关掉就没了。

留下一份筛选过的、会影响本仓库的变更清单,每一项都带链接和日期,并明确标注哪些无法核实。

边界在哪

搜索不会替你做的三件事

知道边界在哪,反而更容易在它成立的范围内信任它的答案。

它回答的是外部世界,不是你的代码

搜索告诉你供应商发布了什么。那会不会弄坏你的模块是代码问题,值得作为一个代码问题去问,对照会话眼前的文件。

来源的质量取决于那一页本身

一条带日期的更新日志是有力证据;一条论坛回复只是线索。日期让差别变得可见,你可以据此权衡,而不是把每个链接都当成同等可信。

后台什么都不抓

只有会话判断任务需要最新信息时,技能才会运行。一次完全不问外部世界的重构不产生任何开销,也不联网。

常见问题

Pi 用户关于 Felo Search 的疑问

Pi 需要 Felo CLI 吗?
需要。技能包是流程,CLI 才是和服务通信的那一层。装一次 felo-ai,把 Key 放在用户配置里,它就永远不会落在仓库里。
用包还是用文件夹?
还在评估的技能包,复制文件夹最快。等你想在多台机器上用同一个技能、并且需要更新机制时,pi install npm: 或 git: 更合适。
为什么我要用 ~/.agents/skills/ 而不是 ~/.pi/agent/skills/?
因为它是共享根目录:其他框架也读同一个文件夹,一次克隆不止服务 Pi。想让某个技能包只属于 Pi 时,再用 Pi 专属的根目录。
没有日期的答案说明什么?
说明你多半读到的是模型记忆,而不是实时结果。重新问一次,要求每一项都有来源和日期;凡是仍然两样都没有的,都当作未核实。
Pi Coding Agent 的更多技能

Pi Coding Agent 的全部 Felo 技能

这 5 个技能都是为 Pi Coding Agent 编写的。它们在这个平台上的用法一致,所以你可以放在同一次会话里组合使用,不必重复说明自己的环境。

现成技能之外

一个 API Key,一整套 Agent 工具

从技能开始,再按 Pi 工作流的需要组合模型、实时数据、知识和输出工具——用的还是 Felo 技能已经在用的那个 Key。

模型

当 Agent 需要自定义推理或生成时,使用性价比更高的 LLM 接入。

  • LLM API
  • 对话补全
  • 模型接入
浏览 LLM API →

实时信息

为 Agent 提供最新的 Web 与社交信号,而不是依赖过时的上下文。

  • Web Search
  • X Search
  • Web Fetch
浏览实时数据工具 →

知识与输出

把工作建立在可复用的知识之上,再转化为可以分享的交付物。

  • LiveDoc
  • PPT 生成
  • 思维导图
浏览知识工具 →

创意工具

把工作流从调研延伸到视觉呈现和可直接交付的 Office 成果。

  • 图像生成
  • 页面工具
  • Office 输出
浏览平台工具 →