Token导航 LogoToken导航TokenDH.com
Project Memory (projectmemory) logo
数据服务未说明官方级别未说明来源级核验

Project Memory (projectmemory)

MCP Server

ProjectMemory是一个持久化的项目知识存储服务,为AI助手提供跨会话的记忆功能,通过SQLite数据库存储项目特定的知识,如惯例、决策、已知问题和经验教训。

工具数

10

提示词数

0

GitHub Stars

0

资源数

0
知识管理VS CodeSQLiteVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

micsh

提供方

micsh

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

项目内存

一个持久的项目知识库,为AI助手提供跨会话的内存。作为MCP(模型上下文协议)服务器交付。

它的作用

ProjectMemory维护着一个SQLite数据库,其中包含项目特定的知识——惯例、决策、已知问题、经验教训。人工智能助手在会话开始时阅读它,并在学习新东西时给它写信。随着时间的推移,数据库会使您对项目的理解不断加深。

工具

工具目的
get_context获取当前工作环境的相关知识
project_query用SQL查询知识库
project_store存储知识条目(惯例、决定、已知问题等)
project_forget删除错误或过时的知识
record_lesson记录会议期间学到的东西
mark_useful关于注入知识是否有帮助的反馈
consolidate合并几乎重复的课程,推广高重复率的课程,修剪陈旧的条目。还运行信心衰减、自动存档和自动毕业。当计数超过30时,每5节课自动调用一次。
graduate将高置信度知识推广到copilot-instructions.md。在整合过程中也会自动运行。
export_knowledge将所有知识和经验导出为JSON
import_knowledge从JSON导入知识(自动消除重复)

设置

选项1:从GitHub版本下载(推荐)

从以下网址下载适用于您平台的最新版本 发布:

  • ProjectMemory-win-x64.zip --窗户
  • ProjectMemory-linux-x64.tar.gz --Linux
  • ProjectMemory-osx-arm64.tar.gz --macOS(苹果硅)

在中提取和配置 ~/.copilot/mcp-config.json (用户级别)或 .github/mcp.json (回购级别):

{
  "mcpServers": {
    "project-memory": {
      "command": "/path/to/ProjectMemory.Server",
      "args": []
    }
  }
}

选项2:从源代码构建(需要.NET 10 SDK)

发布单个可执行文件:

git clone https://github.com/micsh/ProjectMemory.git
cd ProjectMemory
dotnet publish src/ProjectMemory.Server -c Release -r win-x64 -o publish/win-x64
# Also available: linux-x64, osx-arm64

在中配置 ~/.copilot/mcp-config.json (用户级别)或 .github/mcp.json (回购级别):

{
  "mcpServers": {
    "project-memory": {
      "command": "C:/path/to/ProjectMemory.Server.exe",
      "args": []
    }
  }
}

选项3:NuGet工具(需要.NET 10运行时)

打包并安装为全局.NET工具:

dotnet pack src/ProjectMemory.Server -c Release -o nupkg
dotnet tool install -g --add-source ./nupkg ProjectMemory

然后配置:

{
  "mcpServers": {
    "project-memory": {
      "command": "project-memory",
      "args": []
    }
  }
}

稍后更新:

dotnet tool update -g --add-source ./nupkg ProjectMemory

选项4:来源(需要.NET 10 SDK)

{
  "mcpServers": {
    "project-memory": {
      "command": "dotnet",
      "args": ["run", "--no-build", "-c", "Release", "--project", "/path/to/ProjectMemory/src/ProjectMemory.Server"]
    }
  }
}

首先发布版本: dotnet build -c Release

数据库位置

数据库创建于 .project-memory/memory.db 在工作目录中。覆盖 PROJECT_MEMORY_DB 环境变量。

系统提示添加

为了获得最佳效果,请将以下内容添加到副驾驶说明中:

You have access to a project memory database via the project-memory MCP server.
- At the start of work, call get_context() to load project-specific knowledge.
- When the user corrects you, call record_lesson() with what you learned.
- When you discover a project-specific pattern, call project_store() to remember it.
- When you find stored knowledge is wrong, call project_forget() to remove it.

知识类别

类别用途
convention事情是如何完成的(构建命令、命名模式、代码风格)
decision为什么选择某些内容(JWT而不是会议,特定的图书馆选择)
known_issue错误、不稳定的测试、解决方法
file_note文件特定上下文(目的、怪癖、依赖关系)
preference用户偏好(代码风格、方法偏好)

范围筛选

使用glob模式可以将知识和经验教训限定在特定文件中:

  • * --项目范围(默认)
  • src/Auth/* --Auth目录中的所有内容
  • tests/**/*Integration* --集成测试文件
  • *.fsproj --所有F#项目文件

get_context(scope: "src/Auth/Login.fs") 被调用时,它最多返回10个项目,按以下顺序排列:

  1. 范围精度——范围匹配模式的项目排名高于项目范围(*)项目
  2. 信心——信心越高,排名第一
  3. 最近-最近更新的项目打破了联系

知识生命周期

  1. 课程记录 --助理在纠正错误后记录课程。模糊重复数据删除(Jaccard相似度>70%)可防止近乎重复的条目。当活动课程数超过30时,合并将每5次添加自动运行一次。
  2. 整合 --合并类似的课程(通过FTS5预过滤>80%的Jaccard),将高重复率(≥5)和置信度(≥0.7)的课程提升为知识,修剪过时的条目(>30天,单次出现)。
  3. 信心追踪 --每次 get_context 当一个项目出现时,它的置信度会增加0.05(每个会话上限)。过去5个交易日未出现的项目每合并一次就会衰减0.03。置信度低于0.2的项目将自动存档。
  4. 毕业 --达到置信度≥0.75并在≥5个不同会话中出现的知识条目会自动附加到 .github/copilot-instructions.md 在自动管理的部分下。可通过以下方式配置 PROJECT_MEMORY_INSTRUCTIONS_FILE 有人是。
  5. 未毕业 --如果毕业项目的置信度后来下降到存档阈值以下,则其指令将自动从指令文件中删除。

构建与测试

dotnet build
dotnet test
dotnet build -c Release          # For MCP / distribution

建筑

ProjectMemory.Server/
├── Schema.fs           # DDL, migrations (v1→v5), schema versioning
├── Similarity.fs       # Jaccard text similarity (pure function)
├── Formatting.fs       # Context output formatting with token budgeting (pure function)
├── InstructionsFile.fs # Graduation file I/O (pure function)
├── Database.fs         # ProjectMemoryDb class — persistence layer (read/write, no domain logic)
├── DomainService.fs    # Domain orchestration — Consolidate, Graduate, Ungraduate, auto-triggers
├── Tools.fs            # MCP tool adapter layer with input validation
├── Resources.fs        # MCP resource endpoints (memory://context)
└── Program.fs          # Host setup, DI, STDIO transport

服务器使用STDIO传输——MCP客户端(Copilot CLI,VS Code)将其作为子进程启动,并通过stdin/stdout进行通信。所有日志记录都会进入stderr。

目录标签

目录标签

知识管理VS CodeSQLiteF#本地部署AI助手项目协作自动化

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP