Agentpath
L2 · extension、skill、权限与分发

改造 Pi

Pi 的核心刻意做得很小 —— sub-agent、plan mode、权限门、沙箱全都是扩展。这一阶段把这套扩展体系吃透,你就能把任何 harness 掰成自己的形状。

7 节课 · 约 4 小时已完成 0/7
  1. 1

    extension 能碰到什么

    原理30 分钟

    工具、命令、快捷键、事件、TUI —— 扩展点的边界,就是你能改造的边界。

    • 列出 Pi 的扩展点,并为一个需求选出该挂在哪个点上
    • 读懂一个官方示例扩展的完整结构
    • 说明扩展的加载顺序、隔离边界与 `/reload` 的作用
  2. 2

    写第一个扩展:给 agent 加一件新武器

    动手45 分钟

    从一个真实需求出发(查内部系统、跑项目脚本),把它变成 agent 手里的工具。

    • 写出一个带参数校验与错误处理的自定义工具并装进 Pi
    • 加一个斜杠命令和一个快捷键,把常用操作固化下来
    • 用事件钩子在每轮开始前注入动态上下文
  3. 3

    skill:按需装载的能力包

    原理30 分钟

    把「指令 + 工具」打成一包,用得上才进上下文 —— 渐进披露的关键是别把缓存打碎。

    • 判断一件事该做成 skill 还是写进系统提示词
    • 写出一个 skill 的触发描述,让它在该出现的时候出现
    • 解释渐进披露怎么和 prompt 缓存共存
  4. 4

    权限门与路径保护:让它别删库

    动手40 分钟

    Pi 不内置权限弹窗 —— 这不是缺陷,是让你自己定义什么叫危险。

    • 实现一个按工具与参数分级的确认门
    • 用路径白名单/黑名单挡住写操作越界
    • 为无人值守场景设计「不弹窗也安全」的策略
  5. 5

    sub-agent 编排:为什么核心不内置

    原理35 分钟

    子 agent 是省上下文的利器,也是把问题藏起来的利器。自己造一遍才知道该不该用。

    • 说清 sub-agent 真正解决的是上下文隔离而不是并行加速
    • 实现一个把结果结构化返回给主 agent 的子 agent 工具
    • 判断哪些任务不该派出去
  6. 6

    打包成 Pi package 并分发

    动手30 分钟

    扩展写完只在你机器上有用;打成包就能给团队用,也能被别人的 agent 装上。

    • 把扩展、skill、提示词模板、主题打成一个可安装的包
    • 通过 npm 与 git 两条路径分发并验证安装
    • 为包写出让人一眼看懂装了会多什么的说明
  7. 7

    闯关:agent 卡在工具死循环里

    闯关30 分钟

    同一个工具连调二十次,token 一路涨,任务毫无进展。在模拟终端里找出根因。

    • 从事件流里定位重复调用的起点与触发条件
    • 区分三类根因:工具返回没信息、提示词冲突、退出条件缺失
    • 给出修复方案并说明为什么这次不会再犯