Pi Coding Agent 的 Felo 技能:极简核心,实时联网
为 Pi Coding Agent 添加 Felo 技能,实现实时搜索、转录、X 信号和幻灯片草稿——无需为极简核心添加一行代码。

Pi Coding Agent 保持核心极简。子代理和计划模式有意省略,第一天学习的界面,六个月后依然如初。
这种克制正是重点。核心内部部件越少,调试和同步压力越小,每次会话表现一致。
克制有边界。任务需要实时联网时——比如查阅今天的发布说明、无法粘贴的网页、会议演讲、或大家对你刚装的版本的讨论——极简核心无法满足。
技能是 Pi 设计的扩展点,Pi 的编码代理技能是普通 Markdown 文件夹,而不是编译插件。Felo 的技能包让会话获得联网能力,但核心保持纯净。
技能是扩展点,而不是更多工具
Pi 的文档明确限定范围:核心有意保持极简,子代理和计划模式等功能被省略。任务知识属于技能,代理在需要时加载。

| Pi core | A Felo skill | |
|---|---|---|
| What it is | Runtime, session handling, TUI, provider and model plumbing | A SKILL.md bundle describing one job end to end |
| How it changes | TypeScript extensions, packages, settings, themes | Add or remove a folder — no rebuild |
| Web access | Left to the provider and the tools you add | Live search, page fetching, and transcripts with source lists |
| Review burden | You audit extensions that run arbitrary code | You read a Markdown procedure before you trust it |
扩展是与代理同等权限的代码。技能是一套你两分钟能读完、也能拒绝的流程。
Pi 查找技能的位置。 四个根目录,加上包:
~/.pi/agent/skills—— 机器上所有项目通用~/.agents/skills—— 共享位置,所有遵循同一标准的代理可读.pi/skills—— 单个仓库,仅在你信任项目后加载.agents/skills—— 同上,位于共享目录- 包的
skills/目录,或package.json里的pi.skills字段
Pi 按 Agent Skills 标准校验技能,并报告大多数违规项。已在其他代理可用的 SKILL.md 文件夹,cp -r 复制过来即可用。Pi 的技能是你拥有的文件夹,不是编译进二进制的插件。
项目级根目录仅在信任提示后加载。这个门槛很重要:新克隆的仓库不能仅因你在其中运行了 pi,就向你的会话注入新流程。
扩展还是技能? Felo 技能包属于技能,不是扩展——不会在 Pi 核心内执行任何内容。
如何添加技能。 在项目目录下,将技能包复制到技能根目录,或让包自带:
mkdir -p ~/.pi/agent/skills
cp -r felo-skills/felo-search ~/.pi/agent/skills/
需要多台机器共用同一技能包时,建议用包分发:
pi install npm:@scope/pkg
pi install git:github.com/user/repo
也可以直接加载,无需复制:pi --skill /path/to/felo-search。该参数可叠加,即使用 --no-skills 启动会话也有效。
凭证不进仓库。 只需安装一次 Felo CLI,把密钥存到用户配置,每个技能都能自动读取:
npm install -g felo-ai
felo config set FELO_API_KEY your-api-key-here
CLI 读取 ~/.felo/config.json,密钥不会出现在项目提交中。Pi 用户通常先加一个技能文件夹,确认联网检索可用后,再添加生成输出的技能。
五个值得添加的 Felo 技能
每个技能都解决终端自身无法完成的任务。
Felo Search —— 源可查的答案
其他技能依赖的检索步骤。可实时联网,返回带日期和链接的结果,方便直接引用。
查找该依赖推荐的 Node 版本,并注明信息来源。
Felo Slides —— 会话生成的幻灯片
评审更关注幻灯片,而非终端输出。大纲先以文本形式在 Pi 内生成,你可先完善论点,再生成幻灯片文件,引用来源自动带入演讲备注。
用五页幻灯片总结本次重构:变动内容、破坏点、需评审部分。
Felo YouTube Subtitling —— 无需浏览器的转录
Pi 没有浏览器面板,录制视频通常无法访问。该技能提取字幕,返回可供会话 grep、引用、校验的文本。
获取本次演讲的转录,提取所有引用的基准测试数据。
Felo X Search —— X 上的用户反馈
发布前值得运行:看看是否有其他人在该版本遇到同样的错误。
在 X 上搜索该库版本的错误,列出重复最多的三种。
Felo SuperAgent —— 会话内生成图片
项目需要 favicon、logo 或产品图时,会话可直接生成并迭代,无需切换到其他工具。
为此包设计三种风格的 logo,并将各版本保存为文件。
完整目录见:felo.ai/skills/pi-coding-agent —— 还包括将网页转为结构化数据的 Felo Web Fetch,以及可用自有文档答复的 Felo LiveDoc。
三个值得尝试的会话
按实际输入方式书写。
针对当前库行为修复 bug
堆栈跟踪指向依赖,当前锁定版本比文档落后两版,或比文档还新。
获取该方法的最新文档,对比签名与锁定版本,并修补调用处。
返回的是补丁和所依据的精确文档,不是仅能编译、但高负载下表现异常的猜测。
边写代码边准备技术简报
你需要向不会打开仓库的人解释自研与采购的选择。
检索这三项服务的当前价格和限制,草拟六页幻灯片,便于后续编辑。
同一会话内生成对比和幻灯片草稿,代码也在手。草稿阶段易于修改,成品幻灯片每次再生都要评审。也可直接在 felo.ai/slides 继续编辑,无需依赖终端。
跟进录制的发布活动
厂商发布会提到的行为变更未写进 changelog。
拉取转录,列出所有提及的行为变更,并检查哪些影响我们的配置。
基于录音的清单,带可核查的时间戳,不用凭印象总结。
安全边界
Pi 没有权限沙箱。 这是事实,理应在正文说明。Pi 的安全说明指出,技能可指示模型运行用户可执行的任何内容。技能权限等同于 shell 账户。安装前阅读技能内容很重要,但这不是拒绝技能的理由。
先读技能包。 Felo 技能为纯 Markdown。打开 SKILL.md,浏览其要求模型执行的命令。AI 编码代理技能都应如此审查;在 Pi 上,这就是全部安全机制。如果技能包太长,一分钟读不完,就应视为风险。技能包是文件夹,删除即卸载,无需脚本,核心不留残留。
遵守信任门槛。 项目级 .pi/skills 和 .agents/skills 仅在你信任项目后加载。用户级根目录只放你主动选择的技能包,项目范围应足够小,便于发现新文件夹。
密钥只放用户配置。 Felo CLI 读取 ~/.felo/config.json。若 API 密钥出现在项目的 .pi/skills,那是配置错误,不是技能行为——而且容易被提交。
要求输出带来源。 技能优于记忆的关键在于,每条结论都带日期和可查出处。若默认未带来源,需明确要求格式。
常见问题
Pi 扩展与 Felo 技能有何区别?
扩展是 TypeScript 代码,改变代理运行方式。技能是代理按需加载的 Markdown 流程。Felo 技能包属于技能,不会像扩展那样在 Pi 核心内执行。
Pi 在哪里查找技能?
全局查找 ~/.pi/agent/skills 和 ~/.agents/skills;项目级查找 .pi/skills 和 .agents/skills(需信任项目后);包内通过 skills/ 目录或 package.json 的 pi.skills 字段。
可以通过 npm 向团队分发 Felo 技能吗?
Pi 包支持 npm、git 和本地路径。团队已用 pi install 安装共享包时,Felo 技能包可随包放在 skills/ 目录下。
Felo 技能需要把 API 密钥放进仓库吗?
不需要。Felo CLI 读取 ~/.felo/config.json。密钥只放用户配置,避免进入项目提交。
Pi 没有权限沙箱,这对技能有影响吗?
安装前阅读技能内容很重要。Pi 文档明确说明,技能拥有 shell 账户的全部权限。只用你已审查过的技能包,优先选择一分钟能读完的。
应该先用哪个 Felo 技能?
如果工作依赖最新版本、价格或公告,建议先用 Felo Search。其他技能在答案带来源后更有价值。
选一个最常遇到瓶颈的技能,把文件夹复制到 ~/.pi/agent/skills,下次提问时期待答案带来源而不是凭记忆。核心依然极简——会话不再猜测。
探索 Pi Coding Agent 的 Felo 技能 →
本文还提供以下语言版本:English、日本語、한국어、繁體中文、हिन्दी、Français、العربية、Русский、اردو、Bahasa Indonesia、Deutsch、Tiếng Việt、Türkçe、Italiano、ไทย、Español、বাংলা、Português。