CCMem-克劳德代码存储服务器
一个复杂的模型上下文协议(MCP)服务器,为Claude Code会话提供持久的开发上下文和项目内存管理。
概述
CCMem是一个基于TypeScript的MCP服务器,它使用SQLite在Claude Code会话中维护全面的开发上下文。它提供了跟踪故事、任务、缺陷、项目架构和开发模式的工具,以提高代码一致性并避免重复错误。
特性
📋 项目管理
- 故事和任务:跟踪开发故事并将其分解为可管理的任务
- 缺陷管理:记录并跟踪缺陷的完整历史记录
- 会话历史记录:保持完整的会话跟踪,包括开始/结束时间和摘要
🏗️ 系统知识
- 架构文档:存储和检索架构决策和模式
- 操作信息:跟踪部署、测试和操作程序
- 项目上下文:维护一般项目信息和惯例
⚠️ 风险管理
- 地雷探测:标记有问题的模式和失败的方法
- 风险关键词:建立可搜索的风险模式知识库
- 黄金标准:将成功的实现标记为参考模式
📊 分析
- 项目报告:跟踪故事、任务、缺陷和会话计数
- 完整项目摘要:项目所有方面的全面概述
安装
通过带有本地克隆的NPX(建议MCP检查员使用)
# Clone and install dependencies
git clone https://github.com/adestefa/ccmem_.git
cd ccmem_
npm install
# Run the server
npm start
# or directly: tsx main.ts直接NPX(有限-依赖关系可能不会自动安装)
npx github:adestefa/ccmem_*注意:此方法可能需要手动安装依赖关系*
用于MCP检验员测试
MCP Inspector最可靠的方法是本地克隆方法:
- 在本地克隆存储库
- 安装依赖项
npm install - 在MCP检查器中,使用:
- 命令: tsx - 参数: main.ts (从克隆目录中)
全球安装
npm install -g github:adestefa/ccmem_
ccmemMCP工具可用
高级上下文
get-full-project-summary-全面的项目概述和指标
系统记忆体
set-project-info-存储一般项目详细信息set-architecture-info-记录架构决策set-operation-info-跟踪操作程序set-deployment-info-存储部署信息set-testing-info-文档测试方法
故事与任务管理
write-story-创造新的发展故事create-task-将故事分解为可操作的任务list-tasks-for-story-查看故事的所有任务get-task-details-完整的任务历史和详细信息
缺陷管理
create-defect-记录新缺陷list-defects-for-story-按故事查看缺陷get-defect-details-完整的缺陷历史记录
工作流操作
start-work-on-task-开始任务的工作会话record-task-result-记录任务完成情况,文件已更改record-defect-result-记录缺陷解决方案flag-landmine-用上下文标记有问题的模式set-gold-standard-标记成功实施find-relevant-risks-搜索过去类似的问题get-landmine-details-检索特定的地雷报告
效用
test-验证服务器连接
数据库模式
CCMem使用SQLite和以下关键表:
- 故事 -开发故事和要求
- 任务 -故事中的单个任务
- 缺陷 -跟踪的问题和错误
- task_log -详细的任务执行历史记录
- 缺陷日志 -缺陷解决历史
- 历史 -会话跟踪
- 地雷 -失败的方法和有问题的模式
- 风险 -分类风险模式
- 通用/架构/操作/部署/测试 -系统知识
使用MCP检查器
使用MCP检查器测试服务器:
# Start MCP Inspector
npx -y @modelcontextprotocol/inspector
# Configure server endpoint: stdio main.ts
# Test available tools and functionality工作流示例
// 1. Start a new story
write-story: "Implement user authentication system"
// 2. Break down into tasks
create-task: { storyId: 1, description: "Design user schema" }
create-task: { storyId: 1, description: "Implement JWT authentication" }
create-task: { storyId: 1, description: "Add login/logout endpoints" }
// 3. Work on tasks with session tracking
start-work-on-task: { taskId: 1, sessionId: "auth-session-1" }
record-task-result: {
taskId: 1,
sessionId: "auth-session-1",
summary: "Completed user schema with email and password fields",
filesEdited: ["models/User.ts", "migrations/001_create_users.sql"]
}
// 4. Flag issues for future reference
flag-landmine: {
taskId: 2,
sessionId: "auth-session-2",
errorContext: "JWT secret configuration caused deployment failure",
attemptedFixes: "Tried environment variables, Docker secrets",
riskKeywords: ["jwt", "secrets", "deployment", "environment"]
}
// 5. Mark successful patterns
set-gold-standard: {
taskId: 3,
commitHash: "abc123",
summary: "Clean JWT implementation with proper error handling",
filesEdited: ["auth/jwt.ts", "middleware/auth.ts"]
}发展
先决条件
- Node.js 16+
- TypeScript
- 更好的SQLite3
脚本
npm start-启动MCP服务器./scripts/inspector.sh-启动MCP检查器./scripts/install.sh-安装依赖项./scripts/kill-port.sh [port]-终止指定端口上的进程
贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 使用MCP检查员进行测试
- 提交拉取请求
许可证
MIT许可证-有关详细信息,请参阅许可证文件
支持
有关问题和疑问,请使用GitHub问题页面。
