SuperAPI AI 工具集

friction-report

编程与开发

查看项目

更新于 10-15 17:27

技能介绍

用途:friction-report 是面向软件开发任务的“最终回复前摩擦上报器”。它在实现工作和工具调用全部完成、即将发出最终回复时运行,扫描整段对话寻找可执行的框架与工具摩擦;若发现值得上报的内容,会提议生成结构化草稿供人工复核,只有用户明确批准外部 POST 后才发送草稿;若任务过程干净则静默退出。它不使用缓冲区、不逐轮跟踪、不需要初始化,对话历史即事实来源。

触发时机:软件任务最终回复前、实现与工具调用完成后;用户表示“done”“thanks”等任务结束信号时;用户明确要求“report your friction”“give me the friction report”时;由运行环境按名称调用时。不要在中间更新或任务尚未结束时运行,每次用户请求只运行一次。若本次会话已显式调用 friction-log 技能,则不再运行。

上报范围:造成有意义绕路、或很可能对其他开发者或智能体复现的摩擦,包括构建/开发服务器/运行时/工具崩溃、挂起、内存溢出或异常变慢;框架、SDK、CLI、codemod 或技能行为错误或不一致;文档缺失、含糊或冲突;误导性错误、缺少诊断信息、指向错误来源的失败;重复失败的尝试或完成任务所需的非显然变通;揭示上述问题的用户纠正。不报常规首次调试、纯智能体自身失误、假设性担忧、未经验证的本地改动导致的失败。

检查方式:扫描整段对话而非最近一次错误,回溯收集全部促成因素。对每个候选摩擦先问:用户最先注意到什么(作为 title)、实际根因是什么(actual)、你此前认为是什么(expected)、用户是否不得不纠正或让你深入查看(各自为独立摩擦点)、上游是否存在架构模式违规使表层错误更难诊断。

数据载荷字段:schema_version(恒为 1)、framework(必填)、framework_version(必填,取自 package.json 或 CLI)、summary(必填,一句话最大痛点,不含用户原话与代码)、model(可选)、harness(可选)、scaffold_flags(可选)、build_count 与 cumulative_build_ms(可选);friction_points[] 每项含 severity(red 或 yellow,不含 green)、title(≤200 字符)、expected、actual、resolution(未解决写 unresolved)、source_tag(agents.md、docs、url、web search、training data、error output、sandbox、skill 之一)、file_kind(可选,绝不用绝对路径)、redacted_snippet(可选,≤200 字符);action_items[] 每项含 bucket(docs、framework 或 research)、title、context。仅有标题与一行 action_items 标题的是占位符而非报告。需脱敏,去除可识别用户、项目或含密钥与个人信息的内容,无法脱敏则丢弃。

发送流程:自动调用只授权扫描,不授权向外部服务发送数据。创建临时复核草稿会向 https://agent-friction-skill.vercel.app/api/draft 发送脱敏载荷,即使用户需审阅表单并点击 Submit 后才作为反馈提交。无符合项时不创建草稿;相关摩擦合并为一个报告,无关摩擦保持为独立 friction_points;同一任务绝不开两次草稿。创建前需先告知用户观察到什么、为何值得上报、草稿发往何处、包含哪类数据,并请求对这份具体草稿的明确批准;未获当前会话明确批准不得创建草稿,批准仅适用于一次 POST。批准后以 JSON 向该地址 POST 一次。响应为 { draft_id, review_url, expires_in_seconds }。review_url 需视为不透明字符串,按 API 返回原样使用,不得重打、重建、规范化、缩短或从早前消息复制。将 review_url 直接交给应用内浏览器或等效能力打开提交表单,不要把 review_url 当作代码内容修改。

结果告知:明确告知用户已起草摩擦报告且需其操作提交,使用醒目提示而非埋没在句中,含清晰标题、每个摩擦点的一行摘要、说明打开页面即同意界面且草稿 10 分钟内过期;仅当浏览器无法打开时才提供确切 review URL。若 POST 或打开浏览器失败,不要排查宿主环境或反复重试,简要报告失败,若 API 返回了 review_url 则提供该确切 URL 供手动打开。

限制:需外部服务与用户批准;不含收费、价格与平台支持等资料未提供的信息。