README
🚀 代码管理工具 codemcp 使用指南
本工具 codemcp 是一款代码管理工具,它能够实现代码的自动化操作,如格式化和测试,还能与 Claude 交互,帮助开发者提升开发效率。
🚀 快速开始
安装与配置
安装依赖
- 若尚未安装 Python 和 pip,请先进行安装。
- 安装
codemcp:
pip install codemcp
配置项目
在项目根目录创建一个 codemcp.toml 文件,内容如下:
[commands]
format = ["black ."]
test = ["pytest tests/ --cov"]
初始化项目
在 Claude Desktop 中新建一个 Project 并添加初始化指令:
Initialize codemcp with $PROJECT_DIR
其中 $PROJECT_DIR 需替换为实际的项目路径。
与 Claude 交互
通过 Claude 进行代码修改,每次对话后可检查生成的提交:
git log --oneline --decorate
✨ 主要特性
自动化操作
- 格式化代码:执行
!format命令。 - 运行测试:执行
!test命令。
提交历史
每轮对话会生成一个提交,可使用 git reflog 查看历史修改。
📦 安装指南
安装依赖
- 若尚未安装 Python 和 pip,请先进行安装。
- 安装
codemcp:
pip install codemcp
配置项目
在项目根目录创建一个 codemcp.toml 文件,内容如下:
[commands]
format = ["black ."]
test = ["pytest tests/ --cov"]
💻 使用示例
基础用法
初始化项目
在 Claude Desktop 中新建一个 Project 并添加初始化指令:
Initialize codemcp with $PROJECT_DIR
其中 $PROJECT_DIR 需替换为实际的项目路径。
与 Claude 交互
通过 Claude 进行代码修改,每次对话后检查生成的提交:
git log --oneline --decorate
高级用法
项目提示
在 codemcp.toml 中添加初始提示:
project_prompt = """
Before beginning work on this feature, write a short haiku. Do this only once.
"""
自定义命令
配置自定义命令及其文档:
[commands.test]
command = ["pytest tests/ --cov"]
doc = "Runs the test suite with coverage"
📚 详细文档
理念与注意事项
- 手动介入:每次对话后需手动检查提交内容。
- 防止滥用:避免长时间连续操作以防超出限制。
- 经济模式:当达到速率限制时,可进行其他任务如代码审查或会议。
高级配置
项目提示
在 codemcp.toml 中添加初始提示:
project_prompt = """
Before beginning work on this feature, write a short haiku. Do this only once.
"""
自定义命令
配置自定义命令及其文档:
[commands.test]
command = ["pytest tests/ --cov"]
doc = "Runs the test suite with coverage"
故障排除
开发模式
运行调试服务器:
PYTHONPATH=. mcp dev codemcp/__main__.py
日志记录
配置全局日志级别:
[logger]
verbosity = "INFO" # 可选:DEBUG, INFO, WARNING, ERROR, CRITICAL
日志文件位于 ~/.codemcp/codemcp.log。
类型检查
项目使用 pyright 进行类型检查,配置如下:
- 类型stub:
- 自定义类型stub存放于
stubs/目录。 - 配置文件映射在
pyproject.toml中。
- 自定义类型stub存放于
- 忽略策略:
- 对复杂动态类型情况的文件使用特定忽略策略,通过
tool.pyright.ignoreExtraErrors实现。 执行下列命令确保类型检查通过:
- 对复杂动态类型情况的文件使用特定忽略策略,通过
./run_typecheck.sh
贡献指南
查看 CONTRIBUTING.md 获取贡献信息。
🔧 技术细节
本工具主要基于 Python 开发,通过 pip 进行安装。使用 toml 文件进行配置,结合 git 进行版本控制和提交管理。与 Claude 的交互实现了代码的自动化修改和提交,同时提供了高级配置和故障排除的方法。
📄 许可证
文档未提及相关许可证信息。
⚠️ 重要提示
- 每次对话后需手动检查提交内容。
- 避免长时间连续操作以防超出限制。
- 当达到速率限制时,进行其他任务如代码审查或会议。
💡 使用建议
建议结合手动审查以保障代码质量。
微信扫一扫