项目简介

Glide是一个基于Model Context Protocol (MCP) 的服务器,旨在通过人工智能辅助开发者编写高质量的Git提交信息,并自动化解决复杂的代码合并冲突。它无缝集成到开发工作流程中,提供智能建议和自动修复能力。

主要功能点

  • 智能提交信息生成: 分析您的暂存代码更改,自动生成有上下文、符合规范的Git提交信息。
  • AI合并冲突解决: 智能识别和解决Git合并冲突,提供AI建议的解决方案并自动应用,显著减少手动干预。
  • 相似提交搜索: 利用代码嵌入技术,查找历史中相似的提交,为提交信息生成和冲突解决提供更好的上下文参考。
  • 多语言支持: 支持Python, JavaScript, TypeScript, Java, C++等多种编程语言。
  • 冲突解决撤销: 提供撤销已应用冲突解决方案的功能,方便用户调整。

安装步骤

  1. Python环境: 确保您已安装 Python 3.13+。
  2. uv 包管理器: 安装 'uv' 包管理器。通常可以通过 'pip install uv' 进行安装。
  3. Git: 确保您的系统已安装并配置 Git。
  4. Ollama: 如果需要使用合并冲突解决功能,请在本地安装 Ollama。
    • 访问 Ollama 官网 'https://ollama.ai' 进行安装。
    • 拉取所需模型:在命令行运行 'ollama pull hf.co/SoarAILabs/breeze-3b:Q4_K_M'。
  5. API 密钥: 根据需要,获取并配置以下服务的API密钥作为环境变量:
    • 'VOYAGEAI_API_KEY' (用于代码嵌入)
    • 'HELIX_API_ENDPOINT' (联系开发者获取)
    • 'CEREBRAS_API_KEY' (用于LLM推理)
    • 'CEREBRAS_MODEL_ID' (例如 'qwen-3-32b')
    • 'MORPHLLM_API_KEY' (用于代码编辑应用)
    • 'HELIX_LOCAL' (设置为 'true' 可使用本地Helix客户端)

服务器配置

MCP客户端(如Cursor, Claude Code, VS Code等)需要以下配置信息来连接和运行Glide MCP服务器。请将以下JSON配置添加到您的MCP客户端配置文件中(例如VS Code的'mcp.json'):

{
    "glide-mcp": {
        "env": {
            "VOYAGEAI_API_KEY": "您的VoyageAI API密钥",
            "HELIX_API_ENDPOINT": "您的Helix API端点 (如果使用)",
            "CEREBRAS_API_KEY": "您的Cerebras API密钥",
            "CEREBRAS_MODEL_ID": "qwen-3-32b",
            "HELIX_LOCAL": "False",
            "MORPHLLM_API_KEY": "您的MorphLLM API密钥"
        },
        "command": "uvx",
        "args": [
            "--from",
            "git+https://github.com/SoarAILabs/glide.git",
            "glide"
        ]
    }
}
  • 'glide-mcp': 服务器的名称,可自定义。
  • 'env': 环境变量配置,用于传入API密钥和模型ID等。
  • 'command': 启动MCP服务器的命令,这里使用'uvx'从Git仓库安装并运行。
  • 'args': 传递给'command'的参数,指定从哪个Git仓库安装'glide'并运行'glide'。

基本使用方法

一旦MCP服务器配置完毕并运行,您可以通过MCP客户端调用其工具。例如:

  • 生成提交信息: 在您的代码仓库中暂存更改后,在MCP客户端中调用'split_commit'工具。它会分析您的更改并建议提交信息,甚至可能自动创建提交。
  • 解决合并冲突: 当您的Git仓库出现合并冲突时,在MCP客户端中调用'resolve_conflict'工具。它将自动检测冲突文件,使用AI生成解决方案并直接应用到文件中。
  • 撤销冲突解决: 如果对'resolve_conflict'的结果不满意,可以调用'revert_conflict_resolution'工具,将文件恢复到原始冲突状态。

信息

分类

开发者工具