AGENT SKILL

vendor-api-param-validation

第三方 API / SDK 集成开工前,强制先列参数 checklist 并对照官方文档逐项验证(名称 / 类型 / 必填 / 默认 / 上限),通过后再编码——不是「写完再调通」。Use when 新接 vendor API/SDK(Slack / LongPort / freee / LLM API 等)、既有集成追加新 endpoint 或新字段、用户说「调通某接口」「接入 X」「集成 X」。

适用职业开发工程师
使用场景后端与接口
License 许可
MIT
所属仓库
KarryViber/Orb
最近更新
2026-05-14
Stars
★ 66
Forks
8

01 前言 Front Matter

name
vendor-api-param-validation
provenance
user-authored
description
第三方 API / SDK 集成开工前,强制先列参数 checklist 并对照官方文档逐项验证(名称 / 类型 / 必填 / 默认 / 上限),通过后再编码——不是「写完再调通」。Use when 新接 vendor API/SDK(Slack / LongPort / freee / LLM API 等)、既有集成追加新 endpoint 或新字段、用户说「调通某接口」「接入 X」「集成 X」。

03 SKILL.md 正文

Vendor API 参数前置验证

When to Use(满足任一)

  • 新接 vendor API / SDK:Slack / LongPort / freee / Anthropic / OpenAI / AWS / Google API 等
  • 既有集成追加新 endpoint / 新字段
  • 用户说「调通 X 接口」「接入 X」「集成 X 服务」「这个接口怎么调」
  • 准备开始写第一行调用代码前

Workflow

1. 列参数 checklist(编码前)

按 endpoint 列表格:

字段 位置 类型 必填 默认 上限 / 取值 来源页
channel body string Y — C/D/G prefix <doc URL>
text body string Y* — ≤4000 chars <doc URL>

位置 = path / query / header / body / form。必填 标 Y/N/conditional。来源页 必须是 vendor 官方文档 URL,不是 SDK README / blog。

2. 对照 source of truth

  • ✅ vendor 官方 API reference(developer portal / docs.vendor.com)
  • ❌ Stack Overflow / blog / 第三方 SDK README / 老 issue
  • 三方资源只能作辅助,最终以 vendor 官方页为准

3. 发现歧义立刻问

  • 文档没说必填?→ 问,不要按经验填默认
  • 类型模糊(string vs enum)?→ 问 / 翻 vendor changelog
  • 上限不明(max length / rate limit)?→ 翻 docs,找不到就构造测试探测一次再记录

4. checklist 完成才开始编码

跳过 checklist 直接写代码 = 把 debug 时间从「编码前 5 分钟」推到「编码后 30 分钟 + 已 commit + 已被引用」。

为什么

编码后才发现参数差异 → 已经写了引用 / 已经 debug 过 / 已经 commit → 返工成本远高于前置验证。

vendor 文档是唯一 source of truth:

  • SDK wrapper 有滞后(vendor 改了字段,SDK 没跟)
  • blog 容易过期(写于旧版本)
  • Stack Overflow 答案常基于错误前提

Gotchas

  • ❌ 用 SDK 类型定义当 source of truth——SDK 字段可能比 API 少 / 字段名 snake_case vs camelCase 转换
  • ❌ 跳过「条件必填」验证——LongPort replace_order 的 quantity 在 ELO 单和 LO 单条件不同
  • ❌ Slack filesUploadV2 的 channels vs channel_id 历史改名,老文档还写 channels
  • ❌ 信任 vendor 错误码文档——很多 vendor 实际返回的 error 字段比 doc 列的多 / 少;要拿真实 sandbox 探一次
  • ❌ 不验证 rate limit / size limit → 上线后 burst 触发 429 / 413 才发现

与其他 skill 的关系

  • truth-ladder → 验证后说「checklist 已完成」是 attempted,调通一次拿到响应是 observed,跑过完整流程才是 confirmed
  • execution-discipline § Fail-fast / 边界处悲观 → 本 skill 是「边界处悲观」在 vendor API 边界的具体落地
  • slack-cli-api-reference / longport-* 等工具类 skill → 用本 skill 验证后的 checklist 落到对应 vendor 的工具类 skill 里沉淀

04 同仓库更多 Skills

KarryViber
KarryViber/Orb

webapp-testing

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

测试与质量前端开发
★ 66
KarryViber
KarryViber/Orb

vendor-doc-actionability

对外合作文档(交付文档 / POC 文档 / Solution Doc / 提案书)必须为每个「需对方执行」的动作写清具体操作入口(URL / 工单系统 / 脚本路径 / 联系人 + 联系方式 / 步骤编号)。Use when 给客户、vendor、合作方写交付文档、POC 文档、Solution Doc、提案书;或检视已有对外文档是否抽象到无法执行。

★ 66
KarryViber
KarryViber/Orb

truth-ladder

状态放行三层阶梯(attempted / observed / confirmed)—— 汇报任务、API、命令、消息或外部动作状态时强制分层,避免把"动作已发起"误写成"结果已达成"。Use when 准备写「任务已完成」「API 返回成功」「exit code 0」「用户已收到」「ok:true」类状态汇报;或在 cron 报告 / Slack 回报 / project status / receipt 中表达完成度时。

开发工程师
★ 66
KarryViber
KarryViber/Orb

thread-object-realignment

长 thread 切题后的对象重定协议——thread 历史 ≥5 条且检测到切题信号时,回复前必做「用户最后显式问题对象 vs 待发回复对象」一致性校验,不一致则改写或反问。Use when Slack thread 历史 ≥5 条且当前用户消息出现切题信号(主题词突变、问句指向新实体、时间线跳跃、出现「另外」「话说」「回到 X」「换个话题」等切题语,或 ≥3 turn 后用户显式问题对象与最近 assistant 回复对象不同)。

★ 66
KarryViber
KarryViber/Orb

theme-factory

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

视觉设计
★ 66
KarryViber
KarryViber/Orb

terse-intent-classifier

短指令作用层判定协议——对 ≤15 字、含指代词或动词型短指令(改/删/切/跑/停/加)或元问句(更优雅/更好/有没有办法)的输入,先判层再动手。Use when 用户消息 ≤15 字且含「这个/那个/上面/刚才/它」指代,或形如「改一下」「删掉它」「跑一下」「有没有更优雅的方法」「切回 X」这类省略了对象或意图的短输入。

★ 66