SuperAPI AI 工具集

codebase-exploration

编程与开发

查看项目

更新于 10-16 01:10

技能介绍

用途:在已由 Repowise 建立索引的代码库中探索、理解代码并回答问题。项目根目录存在 .repowise/ 目录时激活。核心思路是先用 Repowise MCP 工具,而不是直接 grep 和阅读原始源码,因为工具能返回文档、归属、历史、决策与图结构,通常一次往返即可完成。

主要能力与工具选择:初次了解陌生仓库用 get_overview(),返回架构摘要、关键模块、入口点、git 健康度与知识地图;直接回答“X 如何/在哪/为何工作”用 get_answer(question="…"),返回带引用的综合答案与一个置信度信号;查找符号、文件或模糊概念用 search_codebase(query="…"),为混合搜索,mode="auto" 会把标识符路由到符号命中、路径路由到文件页、散文路由到语义 wiki 搜索,可用 mode=symbol|path|concept|hybrid 强制分支,用 symbol_kind 缩小符号范围;获取特定文件或符号的速览卡用 get_context(targets=[…]),含标题、摘要、签名、热点标记、主要调用方、决策标题与 symbol_ids,可一次批量多个目标;获取某符号实际源码用 get_symbol("path/to/file.py::Name"),返回精确字节与行范围。

推荐流程:陌生区域先调用一次 get_overview();具体问题先用 get_answer;高置信度则直接作答并引用路径;中低置信度则沿 best_guesses[0].file 或 fallback_targets[0] 进入 get_context,再用 get_symbol 取字节;已知符号或路径用 search_codebase,符号命中直接接 get_symbol,文件命中接 get_context;围绕某概念扩展文件时先 search_codebase,再批量 get_context,最后只对需要的正文调用 get_symbol。仅当索引上下文未覆盖用户所问细节时,才回退到自己的文件读取与搜索工具。

信任信号:出现 _meta.stale_warning(索引已偏离 HEAD)、置信度为中/低、或结果的 search_method 为 bm25 时需验证;否则响应是当前的,可直接采用。

错误处理:提示“No repositories found. Run 'repowise init' first.”时建议执行 /repowise:init;若仓库是临时克隆、测试夹具或 worktree,加 --no-editor-setup,否则 init 会把用户唯一的全局 repowise MCP 条目指向它。MCP 工具不可用时,若已安装插件,优先使用对应 CLI 斜杠命令 /repowise:ask、/repowise:context、/repowise:symbol、/repowise:search,而不是盲目 grep。get_answer/search_codebase 返回空时,仓库可能使用模板渲染的 wiki,回退到带显式路径的 get_context,并说明模型生成的页面(repowise generate,或带 LLM 提供方的 /repowise:init)可解锁更丰富的文档与语义搜索。工具完全无法连接时,可能未安装 repowise 二进制,建议 /repowise:init。

限制:仅适用于已建立 Repowise 索引的代码库;索引可能过期;部分结果依赖 bm25 或模板 wiki,需人工验证。