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
5.7 KiB
5.7 KiB
开放平台文档 (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 只查官方开发者文档