当用户询问库、框架或需要代码示例时,使用 Context7 获取当前文档,而不是依赖训练数据。
何时使用此技能
在以下情况下激活此技能:
- 用户询问设置或配置问题(例如:“如何配置 Next.js 代理?”)
- 用户请求涉及库的代码(例如:“写一个 Prisma 查询以...”)
- 用户需要 API 参考(例如:“Supabase 的身份验证方法有哪些?”)
- 用户提及特定框架(React、Vue、Svelte、Express、Tailwind 等)
如何获取文档
第一步:解析库 ID
调用 resolve-library-id 并附带:
libraryName:从用户问题中提取的库名称query:要在库文档中查找的内容(提高相关性排名)
第二步:选择最佳匹配
从解析结果中,根据以下条件选择:
- 与用户要求的库名称完全匹配或最接近的名称
- 更高的基准分数表示更好的文档质量
- 如果用户提到了版本(例如“React 19”),优先选择版本特定的 ID
第三步:获取文档
调用 query-docs 并附带:
libraryId:选定的 Context7 库 ID(例如/vercel/next.js)query:要在库文档中查找的内容,限定为单一概念
如果用户的问题涉及多个不同概念(例如路由、身份验证和缓存),请为每个概念使用相同的库 ID 分别调用 query-docs,除非问题是关于这些概念如何交互——合并查询会稀释排名,导致每个主题的结果浅显。
第四步:使用文档
将获取的文档整合到你的回答中:
- 使用当前准确的信息回答用户的问题
- 包含文档中的相关代码示例
- 在相关时引用库版本
指南
- 具体明确:描述要在库文档中查找的内容,但每个查询限定为一个概念
- 每查询一个主题:将多主题问题拆分为多个
query-docs调用——解析库 ID 一次,然后按概念查询,除非问题是关于这些概念如何交互 - 版本感知:当用户提及版本时(例如“Next.js 16”、“React 19”),如果解析步骤中可用,请使用版本特定的库 ID
- 优先官方来源:当存在多个匹配时,优先选择官方/主要包,而不是社区分支