10分钟认识repowise:给AI编码代理装上代码库记忆,告别重复grep的完整入门

原创2026-09-23 00:00:161,715 阅读

10分钟认识repowise:给AI编码代理装上代码库记忆,告别重复grep的完整入门

repowise 是一款开源的代码库智能(codebase intelligence)工具:它把代码、依赖图、git 历史、测试、文档和架构决策一次性索引成本地知识图谱,再通过 MCP 协议交给 Claude Code、Codex、Cursor 等 AI 编码代理,同时提供代码健康评分、自动文档生成、git 分析、死代码检测和架构决策追溯。换句话说,你只需要索引一次,代理就再也不用每接一个任务都从 grep 读文件重新"认路"了。

repowise 本地仪表盘演示:健康评分、代码健康图、重构计划与自动生成文档

为什么需要它?代理每接任务都在"重新发现"你的仓库

没有索引时,AI 代理回答"这个函数谁在调用?"或"改这个文件会破坏什么?"的唯一办法就是 grep、读文件、再读一遍、然后忘记。每次任务都重复一遍,既烧 token 又烧时间。

repowise 的思路是:一次索引,三处复用 —— 同一个本地索引同时服务于代理(MCP 工具)、开发者(仪表盘/编辑器)和 PR 审查(PR Bot):

场景 repowise 做什么
🧠 理解代码 带引用的问答、架构与执行流探索、永远最新的文档、追溯代码背后的决策
🛡️ 安全修改 符号级影响范围、只跑 diff 真正触达的测试、合并前发现破坏性契约变更
📈 持续改进 找出易出缺陷的文件、分离可维护性与性能风险、清理死代码、生成图谱感知的重构计划

官方在 43 个 django/django 真实问题上实测:接入 repowise 后,代理自身输出减少 31.6%,平均工具调用从 7.2 次降到 3.8 次。这些核心分析(图、风险、健康度、测试、死代码、PR 审查)零 LLM 调用,数据全部留在你的机器上。

10分钟上手:四步完成 repowise 快速入门

第 1 步:安装(1分钟)

要求 Python 3.11+ 和 Git:

pip install repowise
repowise --version

第 2 步:索引你的仓库(几分钟)

cd /path/to/your/repo
repowise init --no-prose -y

--no-prose 模式免费、无需 API Key、无任何提问:解析全部文件到 AST、构建依赖图、读取 git 历史、给每个文件打代码健康分、找出死代码,并从代码结构渲染出完整 wiki。3000 文件的仓库,核心分析 30 秒内完成。

第 3 步:打开仪表盘

repowise serve

一个命令同时启动 MCP 服务器和本地 Web 仪表盘,无云端、无额外配置。

第 4 步:接上你的代理

  • Claude Codeinit 已自动写好 .mcp.json 并注册好服务器,开箱即用
  • Codex CLI:在 ~/.codex/config.toml 加一段 MCP 配置即可
  • VS Code:安装 Repowise 扩展(Marketplace 或 Open VSX 搜索),运行 Repowise: Set Up This Repository
  • 其他 MCP 客户端repowise agents print-config claude-code 会打印一段可直接粘贴的配置

然后直接对代理说:"用 repowise 的 get_overview 总结这个仓库",或 "src/auth.py 会破坏什么?" —— 拿到的就是图谱支撑的架构摘要和逐文件分诊,而不是一串 grep。

10个MCP工具:给代理的"任务形"记忆

repowise 只暴露 10 个刻意收敛的 MCP 工具,每个都围绕"任务"而非单个文件设计,一次调用批量返回完整上下文:

工具 回答什么问题
get_overview() 架构摘要、模块地图、入口点 —— 陌生仓库的第一次调用
get_answer(question) 混合检索 + PageRank + 图谱一跳扩展,一次往返给出带引用的答案
get_context(targets) 文件/模块/符号的分诊卡:签名、热点位、治理决策、调用方
get_symbol("file.py::Name") 单个符号的源码与精确行界
search_codebase(query) wiki 上的语义 + 全文混合搜索
get_risk(targets) 热点、依赖方、共变更伙伴、测试缺口、bug 历史
get_change_risk(revspec) 某个 commit/范围新引入了什么风险
get_why(query) 架构决策及其原文证据
get_dead_code(...) 按置信度分层的不可达代码 + 清理影响估算
get_health(targets) 三个维度的逐文件健康标记 + 结构化重构计划

每个响应都带 _meta 信封(索引年龄、索引到的 commit、过期警告),代理永远知道自己读到的信息有多新鲜。完整参考见 docs/agent/MCP_TOOLS.md

代码健康评分:不只有分数,还告诉你怎么修

很多工具停在"这个文件有风险",repowise 会定位风险集中在哪,并点名具体修复:Extract Class、Move Method、Break Cycle 等,附上精确的移动符号、调用方影响范围和图谱感知的优先级排序。51 个确定性检测器(圈复杂度、脑方法、LCOM4 内聚度、god class、克隆检测、未测试热点等),全程无 LLM、无云依赖。

repowise 代码健康地图:每个文件是一个气泡,悬停查看健康评分

更贴心的是自检机制:每次索引后,它拿自己的评分和你的 git 历史对质,报告类似"健康分最低的 20 个文件里 16 个近 6 个月有过 bug 修复,是 24% 基线的 3.3 倍"。数字在你的仓库上算出,不好用你会看得见。

自动生成的文档与Chat问答

索引完成后,每个模块和文件都有了 wiki 页面,带 Mermaid 图、新鲜度徽标,增量重建:

repowise 自动生成的文档中心:仓库总览、技术栈与入口点

仪表盘里的 Chat 页面支持用自然语言直接问代码库,答案引用具体的文件和页面出处,还能追溯"这个架构决策是什么时候、为什么做的":

repowise Chat 界面:询问架构决策并获得带证据引用的答案

知识图谱视图则把 1500+ 节点、3000+ 边的依赖关系画成可缩放画布,社区聚类、热点与死代码一目了然:

repowise 知识图谱:代码库依赖关系与执行流可视化

合并前就知道危险:变更风险与PR审查

  • repowise risk main..HEAD 一行命令,给 commit 或分支范围打 0-10 分,按你仓库自己的 commit 分布排名,返回 may_breakmissing_cochangesmissing_teststests_to_run 等可执行指令
  • 测试智能:从调用图推断哪些测试真正触及你的 diff —— 没有覆盖率报告也能答
  • PR Bot:每个 PR 一条评论(原地更新),符号级影响范围、漏掉的共变更伙伴、可门禁的 Check Run,零 LLM 调用,同一个 diff 永远得到同一份审查

repowise 变更风险面板:分支对比的风险评分与最高风险文件列表

repowise PR Bot 在 Pull Request 上的真实评论:健康度、影响范围与合并前检查

支持的代理与语言

代理:Claude Code、Codex CLI 为 Full 档(MCP 工具 + 技能 + 斜杠命令 + hook 拦截 + 会话挖掘);VS Code、Cursor、OpenCode、Hermes 为 Good 档;其余任何 MCP 客户端粘贴一段配置即可接入。完整矩阵见 docs/agent/INTEGRATIONS.md

语言:26 种语言完整 AST 解析(Python、TypeScript、JavaScript、Java、Kotlin、Go、Rust、C++、C#、Scala、Ruby、Svelte、Vue),40 种语言五级梯队,连 COBOL 都在内。SQL 的 ref()/source() 血缘、shell 函数级符号、OpenAPI/Protobuf/GraphQL/Dockerfile 处理器都有专属支持,详见 docs/layers/LANGUAGE_SUPPORT.md

进一步探索

想深入了解 去哪里看
完整安装流程 docs/start/QUICKSTART.md
所有 CLI 命令 docs/reference/CLI_REFERENCE.md
各仪表盘页面说明 docs/start/DASHBOARD.md
代理集成与 hooks docs/agent/HOOKS.md
智能层原理 docs/layers/INTELLIGENCE_LAYERS.md
Claude Code 插件 plugins/claude-code/
核心分析引擎源码 packages/core/src/repowise/
实战示例(风险/死代码/决策) examples/

AGPL-3.0 开源,免费自托管,核心分析零云依赖 —— 跑一次 pip install repowise,10 分钟后你的代理就不再需要重复 grep 了。

登录后查看全文
repowise