Files
修雨 f522a9c2c2 Merge upstream/main into feat/dws-devapp
Sync with DingTalk-Real-AI/main (1.0.35–1.0.40):
- 1.0.35–1.0.39: chat @-mentions, sheet export, doc strip unsafe chars,
  PAT batch grants, devdoc RAG, agent_code detection, AI-tag opt-in
- 1.0.40 (#486): China mirror via Gitee + npmmirror
- (#488) embed skills/ into binary
- (#464) strip duplicate H1 on JSONML doc-create

# Conflicts:
#	.github/workflows/release.yml
#	CHANGELOG.md
#	README.md
#	README_zh.md
#	docs/command-index.md
#	internal/app/runner.go
#	internal/app/runner_test.go
#	internal/auth/channel.go
#	internal/helpers/devdoc.go
#	internal/helpers/devdoc_test.go
#	internal/pat/chmod.go
#	internal/pat/chmod_test.go
#	internal/pat/pat.go
#	internal/transport/client.go
#	scripts/install-skills.sh
#	scripts/install.ps1
#	scripts/install.sh
#	skills/mono/references/products/devdoc.md
#	skills/mono/references/products/simple.md
#	skills/multi/dingtalk-devdoc/references/devdoc.md
#	skills/multi/dingtalk-skill/references/skill.md
#	test/cli_compat/devdoc_test.go
#	test/cli_compat/helpers_test.go
#	test/skill_tests.md
#	test/skill_tests_results.md
#	test/unit/pat_host_owned_signal_test.go
2026-06-24 20:15:53 +08:00

5.7 KiB
Raw Permalink Blame History

开放平台文档 (devdoc) 命令参考

搜索钉钉开放平台开发文档,用于回答开发者关于 OpenAPI、字段、错误码、接入指南、配额等技术问题。

命令总览

搜索开发文档

Usage:
  dws devdoc article search [flags]
Example:
  dws devdoc article search "MCP"
  dws devdoc article search --query "OAuth2 接入"
  dws devdoc article search --keyword "机器人" --size 10
  dws devdoc article search --query "消息卡片" --page 2 --size 5
  dws devdoc article search --query "消息卡片" --cursor "<NEXT_CURSOR>" --size 5
Flags:
      --query string     搜索关键词 (必填)
      --keyword string   搜索关键词 (--query 的别名)
      --page int         分页页码 (从 1 开始,默认 1)
      --cursor string    分页游标,翻页传上次返回的 nextCursor;传入后不再使用 --page
      --size int         分页大小 (默认 10)

错误排查

Usage:
  dws devdoc error diagnose [flags]
  dws devdoc error troubleshoot [flags]
Example:
  dws devdoc error diagnose --request-id 15r6h45w0muec
  dws devdoc error diagnose --trace-id 15r6h45w0muec --api "创建日程"
  dws devdoc error diagnose --error-code 33012 --error-message "missing scope"
  dws devdoc error diagnose --query "机器人回调失败" --context "HTTP 403"
Flags:
      --query string           原始排查问题
      --request-id string      开放平台 requestId
      --trace-id string        requestId 的兼容别名
      --error-code string      错误码
      --error-message string   错误描述,会合并进原始问题
      --api string             API 名称,会合并进原始问题作为补充检索词
      --context string         额外排查上下文,会合并进原始问题
      --page int               分页页码 (从 1 开始,默认 1)
      --cursor string          分页游标,翻页传上次返回的 nextCursor;传入后不再使用 --page
      --size int               分页大小 (默认 10)

意图判断

用户问开放平台 API / 字段 / 错误码 / SDK / 鉴权 / 回调 / 配额相关的技术细节:

  • 走 devdoc article search,把用户问的关键短语作为位置参数或 --query
  • 用户已经给出错误码、错误描述或 requestId:
  • 先走 devdoc error diagnose;若后端返回 PARAM_ERROR - 未找到指定工具 / unknown tool,降级 devdoc article search,同时把该结果标记为 needs_gateway_tool_registration

用户已经提供 requestId / traceId / 错误码 / 错误描述 / 失败上下文:

  • 走 devdoc error diagnose,优先传 --request-id,没有 requestId 时传 --error-code、--error-message、--query 或 --context

关键区分:

  • devdoc(钉钉开放平台开发者文档,面向研发) vs doc(钉钉在线文档,面向普通用户内容)
  • devdoc 只做搜索/诊断,不做读取;命中条目返回标题、摘要、文档链接,由 Agent 引用链接或进一步浏览
  • devdoc error diagnose 只返回诊断事实、参考资料和链接,不生成 AI 分析结论
  • --api、--error-message、--context 是 CLI 侧易用参数,调用 MCP 时会合并到 query;MCP 入参只发送 query、requestId、errorCode、page/cursor、size

核心工作流

# 开发者问"OAuth2 怎么接"
dws devdoc article search --query "OAuth2 接入" --format json

# 简短关键词可直接作为位置参数
dws devdoc article search "MCP" --format json

# 命中结果多时翻页
dws devdoc article search --query "消息卡片" --page 2 --size 5 --format json

# 推荐动态翻页:优先使用上一页返回的 nextCursor
dws devdoc article search --query "消息卡片" --cursor "<NEXT_CURSOR>" --size 5 --format json

# 查错误码 / 字段含义
dws devdoc article search --query "errcode 40078" --format json

# 已经有 requestId 时排查
dws devdoc error diagnose --request-id 15r6h45w0muec --format json

# 只有 traceId 时按 requestId 兼容处理
dws devdoc error diagnose --trace-id 15r6h45w0muec --api "创建日程" --format json

# 只有错误码和错误描述时排查
dws devdoc error diagnose --error-code 33012 --error-message "missing scope" --format json

# 错误排查结果继续翻页
dws devdoc error diagnose --error-code "40014" --query "access_token" --cursor "<NEXT_CURSOR>" --format json

上线/注入验收

dws devdoc --help
dws devdoc article search --query "OAuth2 接入" --dry-run --format json
dws devdoc error diagnose --error-code "40014" --query "access_token" --dry-run --format json
dws schema devdoc.search_open_platform_docs_rag --format json || true
dws schema devdoc.search_open_error_code_rag --format json || true
  • --help / --dry-run 只能证明 CLI 命令面和映射存在,不能证明后端工具已注册
  • 真实调用若返回 PARAM_ERROR - 未找到指定工具,不是用户参数问题;记录为网关/工具注册待闭环,并降级到 article search 或本地已挂载 Markdown

注意事项

  • 关键词必填;可用位置参数、--query 或兼容别名 --keyword。建议传用户原话里的关键名词(API 名、错误码、能力名),不要过度改写
  • 错误排查至少提供 --query、--request-id、--error-code、--error-message、--context 之一;单独 --api 只作为补充上下文,不足以发起排查
  • 返回按相关性排序,默认 --size 10;响应有 hasMore=true 时,用 nextCursor 传给 --cursor 继续翻页,不要手写猜测下一页
  • 命中结果里的链接是钉钉开放平台公开文档,可直接给用户做参考
  • 不要把 devdoc 用来查业务数据(那是 aitable / doc / report 的事);devdoc 只查官方开发者文档