项目简介
CodeSum是一个AI驱动的代码摘要工具,它能分析项目结构,通过交互式文本用户界面(TUI)选择相关文件,并生成针对大型语言模型(LLM)优化的代码摘要。除了核心的摘要功能,CodeSum还包含一个MCP (Model Context Protocol) 服务器,允许其他AI工具以编程方式与代码库交互,根据查询智能选择相关文件并返回结构化摘要,作为LLM交互的上下文。
主要功能点
- 交互式文件选择: 提供一个基于文本的交互式界面(TUI),用于在终端中浏览和选择项目文件。
- 智能摘要生成: 可以生成包含选定文件完整内容的本地摘要,或通过OpenAI API调用LLM生成AI压缩摘要。
- 项目结构分析: 尊重'.gitignore'文件并提供可配置的忽略列表,准确分析和展示项目的文件结构。
- AI辅助功能: 支持AI驱动的README文件生成,并对AI摘要进行智能缓存,避免重复API调用。
- MCP服务器接口: 提供HTTP API,允许其他AI应用通过结构化请求获取代码库的上下文信息和摘要。
安装步骤
CodeSum需要Python 3.8或更高版本。推荐通过PyPI安装:
pip install codesum
安装后,'codesum'命令即可在您的环境中运行。
MCP服务器配置
MCP客户端需要配置MCP服务器的启动命令及其参数才能建立连接。CodeSum MCP服务器的启动方式如下:
-
默认启动: 服务器将在 'localhost:8000' 端口运行。 配置信息:
{ "server_name": "CodeSum MCP Server (Default)", "command": "codesum", "args": ["--mcp-server"], "notes": "MCP服务器将默认在 localhost:8000 运行。" } -
指定主机和端口启动: 服务器将在指定的主机和端口运行。例如,在所有接口上启动于 '8001' 端口。 配置信息:
{ "server_name": "CodeSum MCP Server (Custom Port)", "command": "codesum", "args": ["--mcp-server", "--mcp-host", "0.0.0.0", "--mcp-port", "8001"], "notes": "将MCP服务器启动在指定的主机和端口。请将 0.0.0.0 替换为您希望监听的主机地址,将 8001 替换为您的端口号。" }
基本使用方法
- 配置OpenAI API Key (可选): 如果要使用AI功能,运行 'codesum --configure' 进行交互式配置,或在首次运行时按提示输入您的OpenAI API Key。
- 启动MCP服务器: 在您的项目根目录下,运行MCP服务器:
服务器将默认在 'localhost:8000' 启动。您可以通过 '--mcp-host' 和 '--mcp-port' 参数自定义主机和端口。codesum --mcp-server - MCP客户端交互: 其他AI工具可以通过HTTP GET或POST请求与此服务器进行通信:
-
健康检查: 'GET /health'
-
获取摘要 (GET): 'GET /summarize?query=<查询文本>&max_files=<最大文件数>' 例如:'GET http://localhost:8000/summarize?query=Find%20files%20related%20to%20configuration&max_files=5'
-
获取摘要 (POST): 'POST /summarize',请求体为JSON格式,包含 '{"query": "查询文本", "max_files": 最大文件数}'。
例如,使用 'curl' 命令发送 POST 请求:
curl -X POST -H "Content-Type: application/json" \ -d '{"query": "Find files related to configuration", "max_files": 5}' \ http://localhost:8000/summarize服务器将返回包含代码摘要和选定文件列表的JSON响应。
-
信息
分类
开发者工具