使用说明

项目简介

Code Assistant 是一个使用 Rust 编写的命令行工具,它提供了代码分析和辅助功能。除了可以作为独立的 Agent 运行外,它还可以作为 Model Context Protocol (MCP) 服务器运行,为支持 MCP 协议的客户端(如 Claude Desktop)提供代码上下文和工具服务,从而增强 LLM 在代码理解和生成方面的能力。

主要功能点

  • 自主探索 (Autonomous Exploration): Agent 能够智能地探索代码库,构建项目结构的工作记忆。
  • 文件读写 (Reading/Writing Files): 支持读取文件内容和修改文件。
  • 工作记忆管理 (Working Memory Management): 高效处理文件内容,支持加载和卸载文件。
  • 文件摘要 (File Summarization): 创建和存储文件摘要,快速参考和理解代码库。
  • 交互式通信 (Interactive Communication): 可以向用户提问并获取反馈,辅助决策。
  • MCP 服务器模式 (MCP Server Mode): 作为 MCP 服务器运行,为 MCP 客户端中的 LLM 提供工具和资源。

安装步骤

  1. 安装 Rust: 确保你的系统已安装 Rust 环境。
  2. 克隆仓库: 执行以下命令克隆仓库到本地:
    git clone https://github.com/stippi/code-assistant
  3. 进入项目目录: 导航到克隆下来的 'code-assistant' 目录:
    cd code-assistant
  4. 构建项目: 使用 Cargo 构建 Release 版本:
    cargo build --release
    构建完成后,可执行文件 'code-assistant' 将位于 'target/release/' 目录下。

服务器配置 (Claude Desktop)

要将 'code-assistant' 配置为 Claude Desktop 的 MCP 服务器插件,你需要编辑 Claude Desktop 的配置文件 'claude_desktop_config.json',并添加 'mcpServers' 配置。

  1. 编辑 Claude Desktop 配置:

    • 打开 Claude Desktop 应用设置 (Claude -> Settings)。
    • 切换到 Developer 标签页。
    • 点击 Edit Config 按钮。
    • 这将打开一个文件管理器窗口,并选中 'claude_desktop_config.json' 文件。用你喜欢的文本编辑器打开该文件。
  2. 配置 MCP 服务器: 在 'claude_desktop_config.json' 文件的 'mcpServers' 字段下,添加 'code-assistant' 服务器配置。配置示例如下:

    {
      "mcpServers": {
        "code-assistant": {
          "command": "/Users/<username>/workspace/code-assistant/target/release/code-assistant",  //  将 <username> 替换为你的用户名,并确保路径指向正确的可执行文件位置
          "args": [  //  启动 MCP 服务器模式的参数
            "server"
          ]
        }
      }
    }

    配置参数说明:

    • 'command': 指向 'code-assistant' 可执行文件的绝对路径。你需要将 '/Users/<username>/workspace/code-assistant/target/release/code-assistant' 替换为你实际的路径
    • 'args': 启动服务器模式的参数,这里使用 '"server"'。
  3. 配置项目 (可选): 如果你想使用 'list_projects' 和 'open_project' 工具,需要在你的 Home 目录下创建 '.code-assistant/projects.json' 文件,并配置你的项目路径。文件结构示例如下:

    {
      "code-assistant": {
        "path": "/Users/<username>/workspace/code-assistant"  //  将 <username> 替换为你的用户名,并确保路径指向正确的项目路径
      },
      "asteroids": {
        "path": "/Users/<username>/workspace/asteroids"   //  将 <username> 替换为你的用户名,并确保路径指向正确的项目路径
      },
      "zed": {
        "path": "Users/<username>/workspace/zed"    //  将 <username> 替换为你的用户名,并确保路径指向正确的项目路径
      }
    }

    注意: 路径使用绝对路径,但工具本身不会向 LLM 云服务提供商泄露绝对路径信息。

基本使用方法

  1. Agent 模式: 用于自主代码分析和任务执行。

    code-assistant agent --task "你的任务描述" --path <代码目录路径>

    例如:

    code-assistant agent --task "解释代码库的功能" --path ./my-project
  2. 服务器模式: 作为 MCP 服务器运行,无需额外命令,只需在 Claude Desktop 等 MCP 客户端中配置并启动即可。

    启动 Claude Desktop 后,如果配置正确,'code-assistant' 将作为 MCP 服务器在后台运行,并为 Claude Desktop 提供代码上下文和工具服务。

信息

分类

开发者工具