English | 中文简体
感谢你对 Camel 项目的关注!我们欢迎各种形式的贡献,包括但不限于代码、文档、Bug 报告和功能建议。
参与本项目即表示你同意遵守我们的 行为准则。请以尊重和包容的态度对待社区成员。
- 报告 Bug:在 GitHub Issues 中提交,使用
bug标签 - 功能建议:开启 Issue 讨论,使用
enhancement或feature标签 - 代码贡献:Fork 本仓库,修改后提交 Pull Request
- 文档改进:欢迎改进文档,可直接提交 PR
标有 beginner-friendly 的 Issue 适合首次贡献者入门。
请参阅 开发环境配置指南(English),完成以下组件的安装:
| 组件 | 最低版本 |
|---|---|
| Python | 3.9 |
| Node.js | 18 |
| Java | 11 |
| Clang | 19 |
| CMake | 3.20 |
| Conan | 2.10 |
| Ninja | 1.11 |
-
Fork 并克隆仓库
git clone https://github.com/YOUR_USERNAME/Camel.git cd Camel -
安装依赖
pip install camel-lang npm install npm run init
-
构建项目
npm run build
-
运行测试
npm run test -
提交前检查
npm run format # 格式化 C++ 代码 npm run check # 代码检查
- C++ 代码:使用
clang-format格式化,对src/和include/下的.cpp、.h文件执行npm run format - Camel 源码:遵循项目既有的语法和风格
- 文档:Markdown 格式,保持与现有文档风格一致
src/:C++ 实现include/:C++ 头文件libs/:库模块(如python)test/:测试用例docs/:文档
- 提交信息清晰、简洁,说明改动内容
- 关联 Issue 时使用
Fix #123或Closes #123 - 遵循 Conventional Commits 风格(可选):
feat:新功能fix:Bug 修复docs:文档refactor:重构test:测试
- 在提交前搜索是否已有相关 Issue
- 使用合适的标签(
bug、enhancement、question等) - 提供可复现的步骤、环境信息和预期行为
- 基于最新的
main分支创建分支 - 保持 PR 范围聚焦,便于审查
- 确保 CI 通过
- 请求至少一位维护者 Review
再次感谢你的贡献!🐪 Join the Herd – 与我们一起构建 AI 基础设施的未来!