项目简介

LLM代码生成实验室 (Codegen Lab) 提供了一系列工具和工作流,旨在简化和增强AI辅助代码生成流程。它受到Harper Reed的LLM代码生成工作流的启发,并构建了一个MCP服务器,作为LLM客户端与代码库之间的桥梁,提供上下文信息和代码生成工具。

主要功能点

  • 资源管理与访问: 通过MCP服务器托管和管理代码库资源,为LLM提供结构化的代码访问能力。
  • 工具注册与执行: 允许注册和执行各种代码生成和分析工具,例如代码审查、测试生成、问题识别等,并通过MCP协议供LLM客户端调用。
  • Prompt模板定制: 支持定义和渲染Prompt模板,用户可以根据项目需求定制LLM交互模式,优化代码生成效果。
  • Cursor IDE集成: 提供了与Cursor代码编辑器集成的Cursor Agent规则,利用自定义规则文件增强Cursor的AI辅助能力。
  • Taskfile工作流: 通过Taskfile自动化上下文收集和LLM交互流程,简化开发任务。
  • UV Workspace: 利用UV工作区管理模块化代码包,组织和管理复杂的代码库。

安装步骤

  1. 安装依赖: 确保已安装以下工具:

    • repomix: 用于代码库打包
    • llm: 用于与多种LLM模型交互
    • Cursor: AI原生代码编辑器(可选,但推荐使用Cursor Agent规则)
    • UV: 快速Python包管理器
    • Taskmise: 任务运行器 (选择其一)
  2. 克隆仓库:

    git clone https://github.com/bossjones/codegen-lab.git
    cd codegen-lab
  3. 安装Python依赖 (可选): 如果需要运行Python工具或MCP服务器,请安装Python环境和依赖:

    uv venv  # 创建虚拟环境 (推荐)
    uv pip install -e .
    uv pip install -e packages/cursor-rules-mcp-server # 安装MCP服务器包
  4. 安装Cursor Agent规则 (可选): 如果使用Cursor编辑器,可以将预定义的Cursor规则复制到Cursor规则目录:

    mkdir -p ~/.cursor/rules
    cp hack/drafts/cursor_rules/*.mdc ~/.cursor/rules/

服务器配置

此仓库包含一个基于FastMCP实现的Python MCP服务器,位于 'packages/cursor-rules-mcp-server' 目录中。

MCP客户端配置示例 (JSON):

为了与此MCP服务器建立连接,MCP客户端需要配置服务器的启动命令。以下是一个可能的配置示例,用于连接到 'cursor_rules_mcp_server':

{
  "servers": {
    "codegen-lab-server": {
      "type": "stdio",
      "command": "uv",  // 或者使用 "python" 如果未安装uv
      "args": [
        "run",
        "python",
        "-m",
        "cursor_rules_mcp_server.server" // MCP服务器启动命令
      ],
      "serverRoot": "packages/cursor_rules_mcp_server" // MCP服务器代码根目录 (可选,如果客户端需要定位服务器代码)
    }
  },
  "default_server": "codegen-lab-server" // 设置默认服务器 (可选)
}

配置参数说明:

  • 'server name': 服务器名称,例如 '"codegen-lab-server"',客户端用此名称引用服务器。
  • 'type': 连接类型,这里使用 'stdio' (标准输入输出流)。
  • 'command': 启动服务器的命令,例如 '"uv"' 或 '"python"' (根据你的环境选择)。
  • 'args': 启动命令的参数列表,包括运行Python模块的参数。
  • 'serverRoot': (可选) MCP服务器代码的根目录,客户端可能需要此信息来定位服务器端代码。

请注意,实际的客户端配置可能需要根据具体的MCP客户端软件进行调整。

基本使用方法

  1. 启动MCP服务器: 在 'packages/cursor_rules_mcp_server' 目录下,使用以下命令启动MCP服务器:

    uv run python -m cursor_rules_mcp_server.server

    python -m packages.cursor_rules_mcp_server.src.cursor_rules_mcp_server.server
  2. 配置MCP客户端: 根据MCP客户端的要求,配置连接到上述启动的MCP服务器。配置信息参考上面的 服务器配置示例

  3. 使用LLM客户端: 使用配置好的MCP客户端(例如Cursor编辑器),连接到MCP服务器后,即可利用服务器提供的资源、工具和Prompt模板进行AI辅助代码生成和相关操作。具体操作方式取决于LLM客户端的功能和界面。

  4. 探索Taskfile任务: 使用 'task -l' 或 'mise tasks' 命令查看可用的Taskfile任务,例如 'llm:generate_bundle' (生成代码库bundle)、'llm:generate_missing_tests' (生成缺失的测试) 等,通过这些任务可以自动化代码分析和生成流程。

关键词

代码生成, LLM辅助, 规则引擎, 自动化工具, 开发工作流

信息

分类

开发者工具