代码库的 AI 架构师

Manon · 马浓
从需求到上线,每一步基于代码事实

知识图谱引擎 + 开发技能体系。不是补全代码的打字员,是理解整个代码库的架构师。

模型越强,上下文不足 + 流程无结构的问题越严重 — 强模型 + 差上下文 + 无流程 = 自信地输出垃圾,而且更快

AI 编程的两个结构性缺陷

不是模型不够强,是这两个问题没解决

上下文不足

模型看不到调用图、依赖链、模块边界

幻觉 — 猜关系、漏副作用、改一处坏一片

流程无结构

模型不做需求分析就直接写代码

失控 — 范围蔓延、没测试、静默回归

这两个缺陷在架构、模块、代码三个层面产生 19 种具体失败模式, 且在 AI 生成速度远快于人类的情况下以机器速度扩散

两层解决方案

知识图谱解决上下文问题,技能体系解决流程问题

第一层 · 基础设施

知识图谱

  • 索引每个函数、类、调用关系、导入链、模块边界
  • 向量 + 图混合搜索——语义模糊查询 + 结构精确遍历
  • 代码留在本地,只上传 AST 数据,增量同步
  • 毫秒级查询,支持 Python / TS / JS / Java / PHP 深度解析
第二层 · 工作流

开发技能体系

/idea → 开发 → /dao → /tc → /exp

需求 开发 维护 测试 验证

↑ 全部基于知识图谱

五个开发技能

技能只在纯 LLM 对话无法胜任时才存在——需要外部工具、确定性流程或结构化输出

/idea需求

需求精化

查询知识图谱 + GitHub 调研,然后基于代码事实进行苏格拉底式追问——「模块 X 的 fan-in 很高,新功能放这里还是新建模块?」经过 3-7 轮追问后,输出 2-3 个技术方案 + 影响分析 + 可审阅的开发文档。

为什么需要技能而不是直接聊?

问题基于代码事实,不是泛泛而谈

图谱工具开发

基于图谱写代码

用 manon_search / manon_graph 写代码时自动获取精准上下文。每次 commit 后自动触发 manon_impact 分析影响传播链,输出 0-100 风险评分。

为什么需要技能而不是直接聊?

Hooks 强制图谱优先,坏模式在提交时被拦截

/dao维护

代码简化

扫描代码健康度,将复杂度分为三层:架构层和模块层展示面板让你选择,代码层全部自动修复 + 图谱验证(死代码删除前先确认零调用者)。

为什么需要技能而不是直接聊?

批量架构/模块/代码分析 + 图谱验证,不会误删

/tc测试

测试覆盖

扫描覆盖率数据,查询图谱获取实体重要性(fan-in、复杂度、中心性),生成未测代码优先级列表,写测试、跑测试、提交。

为什么需要技能而不是直接聊?

按结构重要性排序,不是随机补测

/exp验证

体验验证

AI Agent 像真实用户一样操作产品。支持 Web(Playwright)、CLI(Bash)、Service(curl + 日志)、Hybrid(全栈)。最多 3 轮自动修复,发布前发现真实 Bug。

为什么需要技能而不是直接聊?

真实点击、输入、读日志——不是想象

实测数据

真实项目测试,不是合成 benchmark

16-24×
开发周期提速
30 分钟 vs 8-12 小时
真实项目基准,OpenClaw 2100 文件
91%
工具调用减少
平均 1 次 vs 13.7 次
20 个真实查询样本测试
94%
Token 节省
~19.5K vs ~350K(20 次查询)
直接降低 AI 编程成本
+30%
准确率提升
95%+ vs 60-70%
代码搜索和架构分析任务

自举验证:Manon 用自己的技能开发自己

Manon v1.0→v1.2.4 完全通过自己的技能开发——/idea 定需求、图谱工具写代码、/dao 清理、/tc 补测试、/exp 验证上线。以下是 /dao 应用于自身代码库(93 文件,800+ 实体)的真实数据:

指标之前之后变化
代码健康度88/10097/100+9
死代码实体4729-38%
测试覆盖率32%61%+29pp

/exp 在发布 /idea 技能前用 Playwright 进行 3 轮测试,发现 4 个真实 Bug(API 响应解析错误、Windows GBK 编码崩溃、符号过滤器过严、中文查询崩溃)——全部在上线前修复。

四个图谱查询工具

单次 MCP 调用完成原生工具 7-20 次调用的任务

manon_search语义代码搜索

自然语言 → 向量嵌入 → 检索最相关实体,沿图谱边展开关联。解决「不知道关键词」的问题。

最佳场景:探索性搜索、新人 onboarding

manon_graph调用图遍历

方向性遍历(调用者 / 被调用者 / 双向),可配置深度。解决「改这个函数会影响哪里」的问题。

最佳场景:改代码前影响评估、追踪数据流

manon_deep_query多轮深度查询

服务端 LLM 迭代查询,自动识别信息缺口并补充,一次调用覆盖跨模块架构问题。

最佳场景:跨模块架构理解、复杂依赖分析

manon_impactCommit 影响分析

解析 diff → 提取变更符号 → 沿调用边追踪 2 跳 → 计算风险评分(0-100)。即时 CI/CD 门控。

最佳场景:code review、CI/CD 门禁

工具选择决策树

├── 找代码(不知道关键词)→ manon_search

├── 找代码(知道精确关键词)→ Grep

├── 查调用关系 / 依赖 → manon_graph

├── 理解跨模块架构 → manon_deep_query

├── 评估 commit 影响 → manon_impact

├── 改代码前 → search + graph

└── 简单文件查找 → Glob

代码健康度评分(8 维度)

MC
模块耦合度
跨模块依赖比例
CD
循环依赖
循环数量
FI
扇入集中度
高扇入实体比例
DC
死代码
零调用者实体比例
FS
函数复杂度
超大函数比例
TD
技术债务
TODO/FIXME 密度
MF
模块碎片化
微型模块 + 深路径比例
RE
间接层密度
桶式重导出比例

开箱即用

安装完成后重启编辑器,输入 /manon 激活

1

安装

# macOS / Linux

git clone https://github.com/brandonzyy/manon.git

cd manon && bash install.sh

# Windows

install.bat

自动检测编辑器、安装依赖、注册账号、配置 MCP

2

初始化

/manon

# 在 Claude Code 中激活

manon_init

manon_setup_hooks

manon_code_health

构建知识图谱、安装 hooks、获取健康评分基线

3

自动运转

git push → 图谱自动更新

git commit → manon_impact 自动触发

/idea → /dao → /tc → /exp

之后零操作,所有工具和技能自动可用

语言支持

专用解析器(深度提取:符号、调用、导入、继承、路由)

PythonTypeScriptJavaScriptJavaPHP

通用解析器(符号 + 导入,tree-sitter 自动下载)

GoRustCC++C#RubySwiftKotlinScalaLuaRElixirDartHaskellOCamlBashZig

让马浓加入你的工程团队

官方 SaaS 免费使用,零配置,按区域自动路由。企业私有部署或接入一码行云自有算力可联系我们。