让 AI 编程助手拥有团队记忆 — 代码越写越好,团队越用越强
Engineering Intelligence Platform for AI-Powered Development
Memforge 是一个基于 MCP(Model Context Protocol)的工程师智能记忆平台。它让 Cursor、Claude Code 等 AI 编程助手具备跨会话持久记忆、团队编码规范感知和微服务架构认知能力。
没有 Memforge 的 AI:
- 每次对话从零开始,不记得上次的架构决策
- 不了解团队的编码规范和禁用写法
- 不知道这个服务调用了哪些下游
有了 Memforge 的 AI:
- 修改代码前自动检索相关历史经验和规范
- Bug 修复后自动沉淀到团队知识库
- 理解服务拓扑,修改接口时主动提醒上游影响
# 1. 修复了一个 Bug —— AI 自动记住
store_memory({
title: "Redis 连接池耗尽:maxConnections 默认值过小",
content: "现象: TimeoutError after 5000ms...",
scope: "bug_pattern",
visibility: "product_line"
})
→ ✓ 已存储,自动向量化,已检测重复,已关联规则候选
# 2. 下次遇到类似问题 —— AI 自动召回
recall_memory({ query: "Redis 连接超时", product_line: "myteam" })
→ [1] Redis 连接池耗尽:maxConnections 默认值过小 (相似度 0.94)
修复方案:将 DB_POOL_MAX 从默认 10 改为 50...
# 3. 规律提升为团队规范
propose_rule({
title: "外部连接必须显式设置连接池上限",
rule_type: "infra",
severity: "error"
})
→ ✓ 规则候选已创建,等待 lead/admin 投票激活
→ ✓ 激活后自动同步为 .cursor/rules/memforge-rules.mdc
- 语义检索:基于 pgvector HNSW 索引,毫秒级语义召回
- 三层可见性:project → product_line → global 级联查询
- 分支感知:Git 分支/Worktree 自动隔离记忆上下文
- 敏感防护:入库前自动检测并拒绝 API Key / Token / PII
- 文档索引:扫描
docs/目录,将文档拆分为语义段落批量入库 - Commit 学习:分析 Git 历史,提取 Bug 修复/重构/性能优化知识
- Code Review 提取:从 Review 评论中自动归纳团队编码规范
- 实时监控:文件变更时自动触发增量索引
- 规则提议:AI 自动发现并提议候选规范,支持冲突检测
- 加权投票:admin / lead / developer 三级投票权重
- 自动同步:激活的规范自动同步为 Cursor
.mdc规则文件 - 效果度量:追踪规范应用次数和违反事件
- 自动扫描:内置扫描引擎,支持 15+ 语言/框架的依赖检测
- 调用链查询:查询服务的上下游调用关系
- 变更影响分析:修改接口前自动分析上游影响范围
- 发布顺序推导:拓扑排序生成正确的多服务发布顺序
- MCP Gateway:OAuth 2.1 + PKCE + RBAC,支持多用户
- 产品线隔离:多团队/多产品线数据隔离,按权限过滤
- Web UI:Vue 3 管理面板,可视化记忆、规范、拓扑
- 审计日志:所有操作可追溯
- Node.js 20+
- PostgreSQL 15+ with pgvector
- 兼容 OpenAI
/v1/embeddings协议的 Embedding 服务(推荐 SiliconFlow + BGE-M3,免费额度够用)
# macOS 安装依赖
brew install postgresql@17 pgvector redis ripgrep
# 初始化数据库
createuser memforge && createdb -O memforge memforge
psql -U memforge -d memforge -f sql/init.sql
# 安装依赖 & 构建
git clone https://github.com/YOUR_GITHUB_USERNAME/memforge.git
cd memforge
npm install && npm run build关于 ripgrep:
scan_topology拓扑扫描引擎的运行时依赖。未安装时仍可正常使用记忆和规范功能,但无法发现 RPC 调用链(仅能检测 Maven/npm 级 SDK 依赖)。
在 .env 中配置(复制 .env.example 修改):
DATABASE_URL=postgresql://memforge:memforge_dev@localhost:5432/memforge
OPENAI_BASE_URL=https://api.siliconflow.cn/v1
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxx
OPENAI_EMBEDDING_MODEL=BAAI/bge-m3在 ~/.cursor/mcp.json 中添加:
{
"mcpServers": {
"memforge": {
"command": "node",
"args": ["/path/to/memforge/packages/memory-service/dist/index.js"],
"env": {
"DATABASE_URL": "postgresql://memforge:memforge_dev@localhost:5432/memforge",
"OPENAI_BASE_URL": "https://api.siliconflow.cn/v1",
"OPENAI_API_KEY": "sk-xxxxxxxxxxxxxxxx",
"OPENAI_EMBEDDING_MODEL": "BAAI/bge-m3"
}
},
"memforge-rules": {
"command": "node",
"args": ["/path/to/memforge/packages/rules-engine/dist/index.js"],
"env": {
"DATABASE_URL": "postgresql://memforge:memforge_dev@localhost:5432/memforge",
"OPENAI_BASE_URL": "https://api.siliconflow.cn/v1",
"OPENAI_API_KEY": "sk-xxxxxxxxxxxxxxxx",
"OPENAI_EMBEDDING_MODEL": "BAAI/bge-m3"
}
}
}
}重启 Cursor 后,在对话框中执行:
帮我执行 bootstrap,导入现有知识资产
Memforge 会自动安装 Cursor Rules,并引导完成首次初始化。
# 复制配置
cp .env.example .env
# 编辑 .env,填写 JWT_SECRET 和 Embedding 配置
# 启动完整服务栈(PostgreSQL + Redis + Gateway + Memory + Rules + Web UI)
docker compose --profile gateway up -d
# 查看状态
docker compose psWeb UI 默认访问地址:http://localhost:8080
┌─────────────────────────────────────────────────────┐
│ AI 编程助手 │
│ (Cursor / Claude Code / VS Code) │
└──────────────────┬──────────────────────────────────┘
│ MCP Protocol
┌─────────┴──────────┐
│ Memforge Gateway │ OAuth 2.1 + RBAC + 审计
│ (Port 3000) │
└────┬──────────┬────┘
│ │
┌─────────┴──┐ ┌───┴──────────┐
│ Memory │ │ Rules │
│ Service │ │ Engine │
│ (Port 3001)│ │ (Port 3002) │
└────┬───────┘ └──────┬───────┘
│ │
┌────┴─────────────────┴────┐
│ PostgreSQL + pgvector │
│ (记忆 / 规范 / 拓扑 / 审计) │
└───────────────────────────┘
│
┌────┴──────┐
│ Redis │ L2 缓存(可选)
└───────────┘
单机模式(个人开发者):Memory Service + Rules Engine 直接以 stdio 接入 Cursor,无需 Gateway。
团队模式:通过 Gateway 统一认证,多用户共享记忆库,产品线数据隔离。
部署完成后访问
http://localhost:8080(或你的服务地址)
| 记忆管理 | 规范管理 | 拓扑可视化 |
|---|---|---|
| 搜索、筛选、审核全量记忆 | 提议/投票/激活编码规范 | 服务调用链可视化 |
Memory Service(30 个工具)
记忆存取
| 工具 | 说明 |
|---|---|
store_memory |
存储记忆(自动向量化 + 去重 + 脱敏) |
recall_memory |
语义检索(支持 product_line 三层级联) |
list_memories |
分页列出(多维筛选) |
update_memory |
更新记忆 |
archive_memory |
归档 |
自动学习
| 工具 | 说明 |
|---|---|
index_documents |
批量索引目录文档 |
sync_documents |
基于 git diff 增量同步 |
learn_from_commits |
从 Git 历史提取知识 |
learn_from_review |
从 Code Review 提取规范 |
watch_prdocs |
实时监控文档变更 |
拓扑
| 工具 | 说明 |
|---|---|
scan_topology |
自动扫描仓库,检测 15+ 语言依赖 |
import_topology |
从注册表导入服务架构 |
query_topology |
查询服务调用关系 |
get_topology_release_order |
生成发布顺序 |
get_topology_change_impact |
分析变更影响范围 |
resolve_service_path |
模糊匹配服务路径 |
知识积累
| 工具 | 说明 |
|---|---|
bootstrap |
一键冷启动 |
store_session_summary |
存储会话决策摘要 |
store_log_insight |
日志排查结论入库 |
store_troubleshoot |
排查流程知识化 |
store_incident |
线上故障结构化录入 |
store_code_review |
Code Review 结果存储 |
工作追踪
| 工具 | 说明 |
|---|---|
start_work_context |
开始工作上下文 |
update_work_context |
更新进度 |
evaluate_work_context |
完成评价,自动沉淀经验 |
其他
| 工具 | 说明 |
|---|---|
get_developer_profile |
开发者技能画像 |
get_system_rules |
加载团队规范(非 Cursor IDE 适用) |
verify_memory |
标记记忆为已验证(+15% 排序权重) |
export_memories / import_memories |
数据导入导出 |
Rules Engine(17 个工具)
| 工具 | 说明 |
|---|---|
propose_rule |
提议规则(自动冲突检测) |
list_rules |
列出规则 |
get_rule |
获取详情(含投票和度量) |
vote_rule |
加权投票 |
update_rule |
更新候选规则 |
deprecate_rule |
废弃规则 |
enforce_rules |
对代码执行规则检查 |
discover_rules |
分析内容发现规则候选 |
measure_rules |
规则效果度量 |
record_rule_event |
记录应用/违反事件 |
assess_skill |
技能评估 |
get_growth_path |
成长路径推荐 |
record_milestone |
记录成长里程碑 |
get_skill_radar |
技能雷达图数据 |
get_team_matrix |
团队技能矩阵 |
add_knowledge_relation |
建立知识图谱关系 |
get_knowledge_graph |
查询知识图谱 |
memforge/
├── packages/
│ ├── memory-service/ # 核心记忆 MCP 服务(30 个工具)
│ ├── rules-engine/ # 编码规范引擎(17 个工具)
│ ├── gateway/ # MCP Gateway(OAuth 2.1 + RBAC + 审计)
│ ├── web-ui/ # Vue 3 + Element Plus 管理面板
│ └── shared/ # 共享类型、PG 连接池、缓存
├── sql/
│ ├── init.sql # 初始化 Schema
│ └── migrations/ # 增量迁移脚本
├── scripts/ # 启动、备份、日志轮转、看门狗
├── deploy/
│ └── k8s/ # Kubernetes Helm Chart
├── docs/ # 项目文档
├── .github/workflows/ # CI/CD(GitHub Actions)
└── docker-compose.yml
| 变量 | 默认值 | 说明 |
|---|---|---|
TRANSPORT_MODE |
stdio |
传输模式(stdio / http) |
DATABASE_URL |
— | PostgreSQL 连接串 |
OPENAI_BASE_URL |
— | Embedding API 地址 |
OPENAI_API_KEY |
— | Embedding API 密钥 |
OPENAI_EMBEDDING_MODEL |
— | 模型名称(推荐 BAAI/bge-m3) |
MEMFORGE_AUTO_MODE |
smart |
自动化模式(smart / full / silent) |
MEMFORGE_RULES_SCOPE |
global |
Rules 安装位置(global / workspace) |
REDIS_URL |
— | Redis 连接串(L2 缓存,可选) |
首次启动时自动安装两条规则到 ~/.cursor/rules/:
memforge-auto-recall.mdc— AI 交互时自动检索/存储记忆memforge-human-confirm.mdc— AI 执行变更前征求人工确认
设置 MEMFORGE_RULES_SCOPE=workspace 可切换为工作区级安装。
查看完整里程碑历史
- M1: 核心记忆服务(SQLite + 本地向量化)
- M2: 编码规范引擎(Rules Engine — 投票 + 冲突检测 + 度量)
- M3a: PostgreSQL 迁移(pgvector + FTS + Docker Compose)
- M3b: MCP Gateway(OAuth 2.1 + PKCE + RBAC + 审计)
- M3c: 多租户(RLS + Redis 缓存 + Prometheus 可观测性)
- M4: Web UI(Vue 3 + Element Plus)
- M5: 生产就绪(备份恢复 + Helm Chart + 部署手册)
- M6: 技能树与成长体系
- M7: 自动知识获取(文档索引 + Commit 学习 + Review 提取)
- M8: 工程化补全(Dockerfile + CI 加固 + E2E 覆盖)
- M9: Smart Semi-Auto(Auto-Init Hook)
- M10: Web UI 实战化(拓扑可视化)
- M11: Cursor Rules 自动安装
- M12: 知识闭环(bootstrap + 双向规范同步)
- M13: 三层可见性(project → product_line → global)
- M14: 工作上下文追踪
- M15: 规范治理增强(rule-bridge + store_code_review)
- M16: 拓扑查询 MCP 化(4 个只读查询工具)
- M17: 运维工具链(watchdog + log-rotate + backup)
- M18: 开发者画像
- T1: 团队化改造(RBAC + 产品线 ACL + Gateway 原生 MCP)
- M19: 智能体任务中心(Agent Task + Kanban)
如果你之前使用了基于 SQLite 的旧版本:
node scripts/migrate-sqlite-to-pg.mjs \
--memory-db ~/.memforge/data/memforge.db \
--rules-db ~/.memforge/data/rules.db欢迎 PR 和 Issue!请阅读 用户指南 了解项目架构。
# 本地开发
npm install
docker compose up -d # 启动 PostgreSQL + Redis
npm run build # 编译所有包
npm run test -w packages/memory-service # 运行测试MIT © 2026 Memforge Contributors


