用途:根据用户当前源码光标或选区,找到最近的 JSDoc Example,并生成一个 scratchpad TypeScript 文件。
主要能力:确定源码路径与行号(优先使用 IDE 当前文件与选区/光标行,也可由用户显式提供文件与行号;若都没有则需询问);运行 node .agents/skills/scratchpad/scripts/extract-example.mjs <source-path> <line> 提取示例;脚本会优先选择包含该行的 Example 段,否则选其后第一个示例,再否则选最近的前一个示例;文件名由源文件与示例标题派生,例如 scratchpad/Schedule-retrying-and-repeating-effects.ts;已存在文件不会被覆盖,而是追加数字后缀。
使用方式:若脚本以退出码 2 结束(没有明显 runner),需询问用户是原样保留示例、指定要运行的 Effect 值,还是取消。原样保留时用 --mode preserve 重跑;指定 Effect 值时用 --runner <identifier> 重跑。完成后把生成路径作为可点击文件链接报告。除非用户明确要求,否则不要运行该 scratchpad 文件。
限制:自动模式下,若存在顶层 program 绑定,脚本会追加 Effect.runPromise(program).then(console.log, console.error);若示例已含 Effect runner 则保留原样。其余细节暂未提供。