Skill 工作流
Vdoc Skill 是安装到 Agent runtime 的工作流包。它不存数据、不计算 diff、不直接调用后端,而是教 Agent 什么时候必须通过 Vdoc MCP 查询事实。
使用前准备
- Agent 已配置 MCP 工具,并能成功调用 Vdoc
tools/list。 - 目标 runtime 支持安装 skill 或自定义工作流说明。
- 你知道 runtime 要求的 skill folder 位置。
- 不要把原始 MCP Token、JWT、DB password、storage secret 或
Authorizationheader 值写进 Skill 文件、示例、日志或 issue。
尚未启动 Vdoc 时,先按 部署指南 完成初始化。建议在安装 Skill 前先完成 第一次已发布文档查询,确认 MCP 连接和文档权限已经可用。
安装
把 Skill 安装到 $HOME/.agents/skills/vdoc(个人范围)或 .agents/skills/vdoc(当前仓库范围),并让 SKILL.md 位于 vdoc skill root。安装 commit 必须和发布包 workspace.lock.json 中的 Vdoc-skill 一致:
sh
# 个人安装;仓库范围请改成 .agents/skills/vdoc
VDOC_SKILL_DIR="$HOME/.agents/skills/vdoc"
VDOC_SKILL_COMMIT=4a9252cc906b08984c05c4f36d29718f06480aef
test ! -e "$VDOC_SKILL_DIR"
mkdir -p "$(dirname -- "$VDOC_SKILL_DIR")"
git init "$VDOC_SKILL_DIR"
git -C "$VDOC_SKILL_DIR" remote add origin https://github.com/ChnMig/Vdoc-skill.git
git -C "$VDOC_SKILL_DIR" fetch --depth 1 origin "$VDOC_SKILL_COMMIT"
git -C "$VDOC_SKILL_DIR" checkout --detach FETCH_HEAD
test "$(git -C "$VDOC_SKILL_DIR" rev-parse HEAD)" = "$VDOC_SKILL_COMMIT"
test -f "$VDOC_SKILL_DIR/SKILL.md"如果目标目录已存在,先核对当前 HEAD;升级时只 fetch 并 checkout 新版已审核 lock 中的 commit,不要对已安装 Skill 执行未固定来源的 git pull。
目录内容应包含:
text
SKILL.md
templates/
endpoint-integration.md
frontend-change-summary.md
examples/
endpoint-query-example.md
compare-versions-example.mdSkill 必须和 @vdoc/mcp 配套使用。Skill 是工作流说明,MCP 才是实时 tool surface 和事实来源。
验证 package:
sh
cd Vdoc-skill
npm testAgent 必须先查 Vdoc 的场景
- 写前端或后端 endpoint integration。
- 判断 endpoint、field、enum、response property、auth scheme 或 server 是否存在。
- 比较两个 API 或 Markdown Version。
- 根据 semantic diff 准备迁移说明。
- 引用已发布 Markdown 文档原文。
- 创建、更新或提交 Draft。
工作流 1:endpoint 集成
- 用户提出集成某个 endpoint。
- Agent 加载 Vdoc Skill。
- Agent 通过 MCP 调用
list_projects、list_documents或list_api_versions定位目标版本。 - Agent 调用
get_endpoint_detail获取 method、path、parameters、request body、response body 和 auth 信息。 - Agent 根据查询结果写代码或说明。
- Agent 在回答中说明事实来自 Vdoc,而不是猜测。
工作流 2:迁移分析
- 用户询问两个 API 版本的迁移影响。
- Agent 通过 MCP 定位
from_version_id和to_version_id。 - Agent 调用
compare_api_versions或get_change_summary。 - Agent 只基于返回结果说明 breaking change、兼容变化和迁移动作。
- 如果 Vdoc 没有对应版本,Agent 应要求先在 Admin 中发布版本,而不是编造结论。
工作流 3:Markdown 文档 Draft
- 用户要求修改已托管的 Markdown 文档。
- Agent 调用
get_latest_doc读取已发布内容。 - Agent 基于用户要求生成修改稿。
- Agent 使用
create_doc_draft或update_doc_draft创建 Draft。 - Agent 使用
submit_doc_draft提交人工审核。 - Admin 或 SuperAdmin 在 Admin 中审核并发布。
好提示示例
text
先查 Vdoc。找到 POST /orders 的已发布 endpoint detail,再更新客户端 payload 校验。text
比较当前 prod OpenAPI version 和上一个 version,先总结 breaking changes,再改文档。text
读取 Vdoc 中已审核的 runbook Markdown,然后只基于这些事实回答部署问题。如何验证
- 让 Agent 说明某个 endpoint 的请求字段。
- 观察 Agent 是否先调用 Vdoc MCP。
- 检查回答是否引用
get_endpoint_detail或相关 Vdoc tool 的结果。 - 要求 Agent 发布版本,确认它只提交 Draft,并提示需要 Admin 或 SuperAdmin 审核。
失败信号
- Agent 没有查询 Vdoc 就编造 endpoint fields。
- Agent 使用显示名称替代 stable ID 或
relative_path。 - Agent 说 Draft 已发布,但 Admin 中还没有新 Version。
- Agent 把 MCP Token 放进 CLI args、日志或文档。
- Live E2E 被指向应用数据库,而不是一次性
VDOC_TEST_POSTGRES_DB,默认vdoc_e2e。
出现这些情况时,重新加载 Skill,确认 MCP 可用,并明确要求 Agent 先查询 Vdoc MCP。