项目简介
CodeOctopus 是一个旨在实现代码文档自动化的系统,它利用大型语言模型 (LLM) 的能力,帮助开发者进行自然语言代码调试和自动错误修复。该系统构建为 MCP 服务器,可以为 LLM 客户端提供项目代码、文档等上下文信息,从而增强 LLM 在代码理解和生成方面的能力。
主要功能点
- 代码和文档上下文管理: 系统能够管理项目中的代码和文档资源,并以结构化的方式存储和检索,为 LLM 提供丰富的上下文信息。
- 向量数据库和知识图谱: 利用向量数据库和内存图技术,实现代码和文档的语义表示和关系挖掘,支持高效的相似性搜索和关联查询,提升 LLM 理解代码和文档的能力。
- 多文档导航: 提供多游标文档导航工具,方便 LLM 在代码和文档之间跳转和浏览,快速定位相关信息。
- 统一 API 接口: 提供 GraphQL API 和 Code Node API 等多种接口,方便 LLM 客户端访问和使用系统功能。
- 自然语言代码调试: 支持使用自然语言进行代码调试,LLM 可以利用 CodeOctopus 提供的上下文信息,帮助开发者理解代码逻辑和定位错误。
- 自动化代码修复: 通过 LLM 和 CodeOctopus 的上下文能力,实现代码错误的自动修复。
安装步骤
-
安装依赖: 打开终端,进入仓库根目录,运行以下命令安装项目依赖:
npm install -
启动服务器: 安装完成后,在终端中运行以下命令启动 MCP 服务器:
npm start
服务器配置
MCP 客户端需要配置以下信息才能连接到 CodeOctopus MCP 服务器。以下是 JSON 格式的配置示例,请根据实际情况填写:
{ "serverName": "CodeOctopus Server", // MCP 服务器名称,可自定义 "command": "npm", // 启动服务器的命令,这里使用 npm "args": ["start"], // 启动服务器命令的参数,这里使用 start 启动 npm 脚本 "protocol": "stdio" // (可选) 通信协议,默认为 stdio,CodeOctopus 可能支持其他协议,请参考项目文档 }
配置说明:
- 'serverName': 为 MCP 服务器指定一个易于识别的名称。
- 'command': 指定启动服务器的可执行命令。根据 'npm start' 命令,这里设置为 'npm'。
- 'args': 指定传递给启动命令的参数。'npm start' 实际执行的是 'package.json' 中定义的 'start' 脚本,因此参数设置为 '["start"]'。
- 'protocol': (可选) 指定 MCP 客户端与服务器通信的协议。如果 CodeOctopus 支持除 'stdio' 以外的协议 (例如 WebSocket, SSE),可以在这里配置。如果未指定,通常默认为 'stdio'。 请查阅 CodeOctopus 的文档或代码确认其支持的协议。
注意: 上述配置假设 'npm start' 命令能够成功启动 CodeOctopus 服务器。请确保已正确安装 Node.js 和 npm,并且在仓库根目录下执行 'npm start' 可以正常启动服务。
基本使用方法
- 启动 MCP 服务器: 按照上述 "安装步骤" 和 "服务器配置" 中的说明启动 CodeOctopus MCP 服务器。
- 配置 MCP 客户端: 在 MCP 客户端中,配置上述 JSON 格式的服务器配置信息,确保客户端能够连接到 CodeOctopus 服务器。
- 使用 LLM 与 CodeOctopus 交互: 通过 MCP 客户端,LLM 可以向 CodeOctopus 服务器发送请求,获取代码和文档上下文信息,并利用这些信息进行代码调试、文档生成等任务。 具体 API 使用方法请参考 'api/' 目录下的 API 文档或 Postman 集成文件。
信息
分类
开发者工具