关于 sourcebot
为使用 Sourcebot MCP 搜索外部库、框架和代码模式提供操作指南,面向需要研究 API、示例或迁移方式的开发者。指南强调先列出仓库、限定搜索范围,并将外部代码搜索与本地代码搜索区分开。
主要功能
- 01外部代码与模式搜索流程
- 02仓库 ID 格式说明
- 03按仓库筛选搜索结果
- 04获取指定文件内容
- 05外部与本地搜索工具分工
适用场景
- 01查找外部库的 API 用法
- 02检索官方仓库中的代码示例
- 03研究框架实现和最佳实践
- 04查找依赖升级与迁移模式
MCP 相关
该指南针对 Sourcebot MCP 的使用,包含列出仓库、搜索代码和获取文件内容的步骤。搜索代码时要求通过仓库 ID 限定范围。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ pedronauck/ skills --skill sourcebot安装后在 Claude Code 中输入/sourcebot确认已加载。
详细介绍
Sourcebot 指南
关于使用 Sourcebot MCP 搜索外部库、框架和代码模式的专业指南。
何时使用
- 外部库研究: 查找 Effect-TS、TanStack、Vercel AI SDK 等中的代码模式
- API 探索: 了解外部库如何实现特定功能
- 文档示例: 查找官方代码库中的实际用法示例
- 框架模式: 从外部框架代码库中学习最佳实践
- 迁移指南: 查找外部库中的升级模式和不兼容变更
何时不使用
- 本地项目代码: 改用
codebase_search或osgrep search - 本地组件: 使用本地搜索工具查找项目文件
- 本地实用工具: 切勿使用 Sourcebot 搜索自己的代码库
必需的工作流程
- 首先调用
list_repos获取可用的仓库 ID - 确定搜索相关的仓库 ID(例如,EffectTS 对应
"Effect-TS/effect") - 调用
search_code时始终包含filterByRepoIds - 必要时使用
get_file_source获取特定文件的内容
仓库 ID 格式
- 关键: 仓库 ID 必须采用
"owner/repo"格式(例如,"Effect-TS/effect"、"vercel/ai") - 不要包含
github.com/前缀 list_repos工具返回的 ID 类似于"github.com/owner/repo";在filterByRepoIds中使用时,请去掉此前缀
使用示例
搜索 EffectTS 模式
{
"query": "Effect.gen yield",
"filterByRepoIds": ["Effect-TS/effect"],
"includeCodeSnippets": true
}
搜索 AI SDK
{
"query": "streamText tool calling",
"filterByRepoIds": ["vercel/ai"],
"includeCodeSnippets": true
}
搜索多个仓库
{
"query": "error handling patterns",
"filterByRepoIds": ["Effect-TS/effect", "vercel/ai"],
"includeCodeSnippets": true
}
最佳实践
- 使用描述性查询(不要只用关键词,而要提供完整描述)
- 始终指定
filterByRepoIds,限定搜索范围 - 需要实际代码示例时,设置
includeCodeSnippets: true - 找到相关文件后,使用
get_file_source查看完整上下文
代码搜索工具层级
- Sourcebot - 仅用于外部库和框架
codebase_search(如可用)- 用于本地项目代码osgrep search-codebase_search不可用时,用于搜索本地代码grep/find- 精确匹配字符串时的最后手段
关键要求
- 必须: 研究外部库时,使用 Sourcebot MCP 5-7 次
- 关键: 切勿使用 Sourcebot 搜索本地项目代码
- 关键: 每次调用
search_code时都必须使用filterByRepoIds - 任务无效: 处理外部库时,如果不使用 Sourcebot 5-7 次,任务将无效
- 使用 Sourcebot 后: 还要使用 Perplexity 和 Context7 获取外部库的最新信息
评论
支持 Markdown