给模型装一个“工程外脑”:解决 Agent 乱调用工具、重复踩坑、上下文爆炸
最近我开源了一个项目:
FAME Knowledge Agent Gateway
项目地址:
https://github.com/superalp1985/fame-knowledge-agent-gateway
一句话介绍:
这是一个给 AI Agent 用的外部工程记忆 + 工具调用安全网关 + 知识路由系统。
再说直白点:
大模型用它,可以少飘一点。
本地小模型用它,可以更像一个能干工程活的助手。
一、为什么要做这个项目?
现在很多人都在玩 AI Agent、本地大模型、自动写代码、自动调用工具。
但真正用过的人都知道,一个 Agent 真正进入工程环境后,问题非常多:
它会忘记前面做过什么;
它会重复犯同样的错误;
它会乱调用 PowerShell、git、npm、文件操作;
它会把上下文塞满;
它经常“看起来完成了”,但没有证据;
本地小模型尤其明显,稍微复杂一点就容易跑偏。
所以我做这个项目的初衷不是再造一个聊天机器人,也不是做一个普通知识库。
我想解决的是:
如何让本地小模型真正进入工程化使用?
我的判断是:
以后本地小模型会越来越强,但它不可能只靠模型参数解决所有问题。
它需要一套外部系统来帮它:
记住工程过程;
管住工具调用;
保留失败经验;
按需加载上下文;
按知识路线思考;
不要每次都从零开始。
这就是 FAME Knowledge Agent Gateway 的定位。
二、它现在能做什么?
目前这个项目已经能做到下面这些事:
功能 作用
知识网路由 Agent 开工前先拿到当前任务相关的知识路线
工程记忆 记录项目中的成功、失败、工具结果和决策
工具调用防错 对 PowerShell、Git、Node/npm、JSONL 等高风险操作做预检
失败签名 把错误变成可复用经验,下次遇到类似问题提前拦截
上下文裁剪 只加载当前任务需要的摘要,不把全部日志塞进上下文
FAME 参数 给知识路线记录可靠性、及时性、成功率和负经验
可视化工作台 用 3D/2D 图谱查看知识网和工程记忆
Agent 接入协议 让 Codex、Cursor、Claude Code、OpenHands 等工具类 Agent 按协议接入
它不是普通 RAG。
普通 RAG 主要是“查资料”。
FAME 更偏向“工程执行前的路线规划 + 工具调用约束 + 失败经验回写”。
三、一个典型例子:PowerShell 翻车
很多 Agent 在 Windows 上调用 PowerShell 时,特别容易犯错。
比如:
中文乱码;
路径带空格没处理;
删除命令范围不清楚;
PowerShell 和 cmd 混用;
相对路径不确认;
git 工作区有用户改动还直接覆盖。
这些问题不是模型完全不知道,而是它在真实工程里容易忽略。
FAME 的做法是:
用户任务
-> 知识路由
-> 找到 PowerShell 风险域
-> 生成 ProposedAction
-> 检查路径、权限、预期结果、回滚方式
-> 必要时要求用户确认
-> 执行工具
-> 写回 ToolResultSummary
-> 更新失败签名和 FAME 参数
也就是说,Agent 不再是“想到命令就直接跑”,而是先过一层工程安全网关。
四、核心设计:大模型防飘,小模型增效
这个项目的核心目标可以概括成一句话:
大模型防飘,小模型增效。
对于大模型,它的问题往往是:
自信过头;
上下文太长后开始漂;
工具调用时不够谨慎;
没有把失败经验稳定沉淀下来。
FAME 可以给它加一层外部约束。
对于本地小模型,它的问题更实际:
上下文短;
记忆弱;
工具调用不稳定;
工程经验不足;
复杂任务容易断。
FAME 则相当于给它装了一个“工程外脑”。
模型本身不用记住所有东西。
它只需要在开工前读取路线,在调用工具前读取规则,在结束后写回摘要。
五、FAME 参数是什么?
FAME 可以理解成一套路线评分机制。
每一条知识路线、工具经验、失败教训,都不是静态的。
它需要知道:
这条路线以前成功过吗?
最近还有效吗?
有没有失败记录?
失败是环境问题,还是方法问题?
这条知识适合当前任务吗?
可以用一个简化公式理解:
route_score =
可靠性
- 及时性
- 证据强度
- 成功反馈
- 失败惩罚
如果某条路线经常导致工具调用失败,它不会被删除,而是会变成负经验。
这点很重要。
工程里失败不是垃圾数据。
失败是下一次避坑的路标。
六、快速开始
项目地址:
https://github.com/superalp1985/fame-knowledge-agent-gateway
克隆项目:
git clone https://github.com/superalp1985/fame-knowledge-agent-gateway.git
cd fame-knowledge-agent-gateway
Windows 下可以直接运行:
.\start.ps1
或者:
start.bat
手动启动方式:
npm run install:all
npm run generate:all
npm run dev
打开:
http://127.0.0.1:5178/
启动运行时网关:
npm run gateway
默认网关地址:
http://127.0.0.1:5191/
七、当前内置检查结果
目前项目内置了中英文两个开源版本的知识网和测试机制。
英文版当前检查结果示例:
graph_nodes: 45
graph_edges: 84
routes: 48
content_units: 104
errors: 0
warnings: 0
Release 检查示例:
scanned_files: 969
errors: 0
warnings: 0
这些不是第三方 benchmark,只是项目自带的工程健康检查。
它的目标不是证明模型变聪明了,而是证明:
知识网结构完整;
路由能返回;
Agent 协议能读;
工具防错场景能跑;
中英文版本机制对齐。
八、知识网可以怎么扩展?
这个项目开源后,我最希望大家一起补的是知识网。
目前开源版重点放在:
编程;
工具调用;
PowerShell;
Git;
Node/npm;
JSONL;
数据库同步;
Agent 工程记忆;
失败签名;
本地小模型工程化。
后续大家可以继续补充:
Python 工程常见错误;
Docker 部署踩坑;
Linux shell 安全;
前端构建错误;
CI/CD 发布错误;
本地模型部署经验;
各种 Agent 的接入模板;
真实项目的失败案例。
补充知识时不是随便扔一段文本进去,而是按照这个结构:
学科分类
-> 抽象层级
-> 具体知识点
-> 路由关系
-> FAME 参数
-> 失败签名
-> 数据库详细内容
这样知识网才不会变成一个乱糟糟的资料堆。
九、它适合谁?
这个项目适合下面几类人:
正在用本地小模型的人;
正在折腾 AI Agent 的人;
经常让 Agent 调用命令行工具的人;
想沉淀个人工程知识资产的人;
做开源项目、长期项目、复杂工程的人;
想让 Agent 少犯低级错误的人。
如果你只是想找一个聊天机器人,这个项目可能不适合。
如果你想让 AI 真正在本地参与工程,它会比较有用。
十、我为什么开源?
因为我觉得未来每个人都会有自己的 AI 工具链。
模型会换。
Agent 框架会换。
IDE 会换。
但个人积累下来的知识网、工程记忆和失败经验,应该保留下来。
FAME Knowledge Agent Gateway 想做的就是这层东西:
模型之外的长期工程资产
它不追求替代任何 Agent。
它更像是一个通用外部插件。
你可以把它接给 Codex、Cursor、Claude Code、OpenHands,也可以接给自己的本地 Agent。
最后目标很简单:
让 Agent 少犯错,让本地小模型更能干活,让个人经验真正沉淀下来。
项目地址
GitHub:
https://github.com/superalp1985/fame-knowledge-agent-gateway
欢迎 Star、Fork、提 Issue,也欢迎直接补知识网。
更多推荐


所有评论(0)