fabric_exec 是运行类型检查 TypeScript 程序的执行环境,默认使用隔离 QuickJS 执行器。只有返回值会传给模型,print()/console.log 输出进入活动面板。π 本身不是工具。
用途与主要能力:提供 Pi 核心工具(read、bash、grep、find、ls、edit、write)的调用签名与返回结构;支持 provider 直接代理调用(memory、state、schema、compact 等),以及 mcp.<server>.<tool> 和 extensions.<tool> 动态调用;提供 tools 发现与通用调用接口(providers、catalog、search、describe、call、list、models)。
使用方式:pi.<tool>(arg) 接受裸字符串(主字段)或选项对象;grep/find/write/edit 支持多位置参数,read/bash/ls 仅单参数。别名会在宿主校验前归一化,如 cmd/shell→command、query/regex→pattern、max→limit。需要字面量 ${...} 时应使用普通引号字符串或通过 strings 读取,避免 TS 模板插值。已知动作优先用直接代理;运行时发现的 ref 用 tools.call()。出错时按“读取错误→tools.describe({ref})→匹配 inputSchema→重跑”恢复。
适用场景:需要在一个类型安全程序中组合文件操作、命令执行、状态与记忆查询、schema 校验及 MCP/扩展调用的自动化任务。
限制:bash 普通非零退出会 reject,传 settle:true 可返回 {ok:false,...};超时、取消、审批、安全与 spawn 失败仍 reject。ref 必须带命名空间,裸名被拒绝。catalog 描述仅作导航元数据,不构成会话证据。编排类技能需用户显式调用,不得自动加载。agents 与 actors 默认 runner 为 pi,claude 不支持递归与直接 Fabric API。未提供具体收费、价格与平台信息。