Skip to content

zql0805/memforge

Repository files navigation

Memforge

让 AI 编程助手拥有团队记忆 — 代码越写越好,团队越用越强

Engineering Intelligence Platform for AI-Powered Development

CI License: MIT Node.js PostgreSQL pgvector

快速开始 · 功能特性 · 架构 · MCP 工具 · 部署指南 · 用户指南


是什么

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

关于 ripgrepscan_topology 拓扑扫描引擎的运行时依赖。未安装时仍可正常使用记忆和规范功能,但无法发现 RPC 调用链(仅能检测 Maven/npm 级 SDK 依赖)。

二、配置 Embedding

.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

~/.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,并引导完成首次初始化。


Docker Compose 快速启动(团队模式)

# 复制配置
cp .env.example .env
# 编辑 .env,填写 JWT_SECRET 和 Embedding 配置

# 启动完整服务栈(PostgreSQL + Redis + Gateway + Memory + Rules + Web UI)
docker compose --profile gateway up -d

# 查看状态
docker compose ps

Web 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 统一认证,多用户共享记忆库,产品线数据隔离。


Web UI 预览

部署完成后访问 http://localhost:8080(或你的服务地址)

记忆管理 规范管理 拓扑可视化
搜索、筛选、审核全量记忆 提议/投票/激活编码规范 服务调用链可视化

记忆管理

规范管理

拓扑视图


MCP 工具

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 自动安装

首次启动时自动安装两条规则到 ~/.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   # 运行测试

License

MIT © 2026 Memforge Contributors


Star History Chart

About

Let AI coding assistants remember your team's knowledge across sessions

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors