Git日志管理工具

一个基于Git的开发者工具,用于管理会议记录和项目待办事项,支持AI自动化处理和高级搜索功能。

  • by jhleee
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 jhleee/backlog-mcp-server

使用说明

Git聊天日志

以开发人员为中心的工具,利用Git作为后端来管理会议记录和后台日志。通过模型上下文协议(MCP)和LangChain,您可以与LLM结合使用自然语言自动执行文档管理任务。

🚀 主要功能

📋 后台管理

  • 创建/修改/删除:管理backlog物品的整个生命周期
  • 状态跟踪:待办事项、正在进行中、审核、已完成、已阻止、已取消
  • 优先级管理:1-5级优先级系统
  • 分配联系人:指定和跟踪工作联系人
  • 标记系统:灵活的分类体系
  • 管理截止日期:设置截止日期和超时通知

📝 管理会议记录

  • 结构化会议记录:对参与者、案件、笔记等进行系统管理
  • 自动生成文件名:基于日期的自动命名
  • Git版本管理:跟踪所有更改

🔍 高级搜索功能

  • 全文搜索:在标题和说明中搜索关键字
  • 多重过滤:状态、联系人、优先级、标签等
  • 搜索日期范围:创建日期、修改日期、截止日期
  • 排序选项:可按各种字段排序
  • 分页:高效处理大量数据
  • 统计信息:提供实时聚合数据
  • 矢量搜索:使用ChromaDB进行基于语义的搜索

🤖 AI集成

  • MCP服务器:实现基于FastAPI的MCP协议
  • LangChain代理:处理自然语言命令
  • 自动摘要:通过LLM的文本摘要
  • 智能搜索:基于语义的backlog搜索

🛠️ 技术堆栈

  • 后端:Python、FastAPI
  • Git集成:GitPython
  • LLM集成:LangChain、LangChain mcp适配器
  • 矢量数据库:ChromaDB
  • 调度程序:APScheduler
  • MCP支持:fastapi mcp

📦 安装

1.存储库克隆

git clone https://github.com/yourusername/git-chat-log.git
cd git-chat-log

2.设置虚拟环境

python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

3.安装依赖性

pip install -r requirements.txt

4.设置环境变量

.env 创建文件并设置以下内容:

# Git 설정
GIT_REPO_PATH=./git_repo
GIT_USER_NAME=Your Name
GIT_USER_EMAIL=your.email@example.com

# OpenAI API (선택사항)
OPENAI_API_KEY=your-api-key

# ChromaDB
CHROMA_PERSIST_PATH=./chroma_db
CHROMA_COLLECTION_NAME=backlogs

# 알림 설정 (선택사항)
SLACK_WEBHOOK_URL=your-slack-webhook
DISCORD_WEBHOOK_URL=your-discord-webhook

🚀 执行

FastAPI-MCP服务器运行

python fastapi_mcp_server.py

服务器 http://localhost:8001在中运行。

  • API文档:http://localhost:8001/docs
  • MCP SSE:http://localhost:8001/mcp/sse
  • MCP HTTP:http://localhost:8001/mcp

📖 API使用示例

创建备份日志

curl -X POST http://localhost:8001/backlogs/create \
  -H "Content-Type: application/json" \
  -d '{
    "title": "새로운 기능 구현",
    "description": "사용자 인증 시스템 추가",
    "priority": 2,
    "assignee": "developer1",
    "tags": ["feature", "security"]
  }'

后台搜索(高级查询)

# GET 방식
curl "http://localhost:8001/backlogs/query?status=todo&priority_min=1&priority_max=3&sort_by=priority"

# POST 방식 (더 복잡한 쿼리)
curl -X POST http://localhost:8001/backlogs/query \
  -H "Content-Type: application/json" \
  -d '{
    "full_text": "security",
    "status": ["todo", "in_progress"],
    "tags": ["security"],
    "sort_by": "updated_at",
    "sort_order": "desc",
    "include_stats": true
  }'

备份日志更新

curl -X PUT http://localhost:8001/backlogs/update \
  -H "Content-Type: application/json" \
  -d '{
    "item_id": "your-backlog-id",
    "title": "업데이트된 제목",
    "status": "in_progress",
    "priority": 1
  }'

只更改backlog状态

curl -X PUT http://localhost:8001/backlogs/status \
  -H "Content-Type: application/json" \
  -d '{
    "item_id": "your-backlog-id",
    "status": "done"
  }'

删除备份日志

# 아카이브 후 삭제 (기본값)
curl -X DELETE http://localhost:8001/backlogs/your-backlog-id

# 영구 삭제
curl -X DELETE http://localhost:8001/backlogs/your-backlog-id?archive=false

🔍 查询参数选项

搜索文本

  • full_text -在标题和说明中搜索
  • title_contains -仅在标题中搜索
  • description_contains -仅在说明中搜索

过滤

  • status -状态过滤器(可以有多个)
  • assignee -联系人筛选器
  • priority_min, priority_max -优先级范围
  • tags -标签过滤器(匹配任何一个)
  • tags_all -标签筛选器(全部匹配)

日期筛选器

  • created_after, created_before -创建日期范围
  • updated_after, updated_before -修改日期范围
  • due_after, due_before -截止日期范围
  • has_due_date -是否存在截止日期

排序和分页

  • sort_by - 정렬 필드 (created_at、updated_at、优先级、标题、状态)
  • sort_order -对齐方向(asc,desc)
  • limit -最大结果数(1-100)
  • offset -跳过的结果数

其他选项

  • include_stats -包括统计信息
  • include_archived -包括已存档的项目

📁 项目结构

git-chat-log/
├── src/
│   ├── models/          # 데이터 모델
│   │   ├── backlog.py
│   │   └── meeting.py
│   ├── services/        # 비즈니스 로직
│   │   ├── git_service.py
│   │   ├── vector_service.py
│   │   ├── scheduler_service.py
│   │   └── notification_service.py
│   └── api/            # API 엔드포인트
│       └── mcp_tools.py
├── config/             # 설정 파일
│   └── settings.py
├── git_repo/          # Git 저장소 (자동 생성)
│   ├── meetings/      # 회의록
│   ├── backlogs/      # 백로그
│   └── archives/      # 아카이브
├── chroma_db/         # 벡터 데이터베이스
├── fastapi_mcp_server.py  # 메인 서버
├── requirements.txt   # 의존성
└── README.md         # 문서

🔧 开发状态

已完成的功能

  • Git后端系统
  • 后台CRUD操作
  • 管理会议记录
  • 高级搜索和过滤
  • 实施MCP协议
  • ChromaDB矢量搜索
  • 日程表管理系统
  • 通知系统基础

🚧 正在开发

  • Slack/Discord机器人集成
  • Web UI界面
  • 更多LLM集成

📝 许可证

MIT许可证

🤝 贡献

欢迎您的贡献!请发送Pull Request。

📧 询问

请通过GitHub Issues留下问题或疑问。