菜单

贡献

相关源文件

本页面提供了为 AutoGPT 项目贡献的指南和说明。它涵盖了贡献工作流程、代码标准、拉取请求流程以及其他希望帮助改进 AutoGPT 的开发人员的重要信息。

概述

AutoGPT 欢迎社区的各种贡献。无论您是修复错误、添加功能、改进文档还是协助测试,您的贡献对项目的成长和成功都至关重要。

来源: CONTRIBUTING.md1-38

贡献类型

AutoGPT 在代码之外的各个领域都需要帮助

  1. 代码 - 错误修复、新功能和性能改进
  2. 文档 - 改进 Wiki、README 和代码注释
  3. 测试 - 编写测试和手动测试功能
  4. Bug 报告 - 识别和记录问题
  5. 设计 - 视觉组件的 UX/UI 改进
  6. 社区支持 - 在论坛和聊天中帮助其他用户
  7. 翻译 - 使 AutoGPT 易于使用不同语言

贡献流程

1. 准备工作

贡献之前

  1. 探索路线图:查看项目路线图以了解当前优先级
  2. 检查现有问题:通过搜索现有问题来避免重复工作
  3. 加入 Discord:在开发频道与社区联系
  4. 设置环境:遵循安装指南设置您的开发环境

2. 开始贡献

对于小型更改

  1. Fork 存储库
  2. 为您的更改创建一个新分支
  3. 进行您的更改
  4. 提交拉取请求

对于大型贡献

  1. 首先在开发频道讨论您的想法
  2. 尽早创建一个草稿 PR,以表明您正在处理该功能
  3. 在取得进展时更新 PR

来源: CONTRIBUTING.md13-21 .github/PULL_REQUEST_TEMPLATE.md1-39

代码指南

在为 AutoGPT 贡献代码时,请遵循以下指南

  1. 代码质量:

    • 编写清晰、可读、易于维护的代码
    • 遵循现有的代码风格和约定
    • 添加适当的注释和文档
    • 确保正确的错误处理
  2. 测试:

    • 为新功能添加测试
    • 在提交 PR 之前确保所有测试都通过
    • 在更改功能时更新现有测试
  3. 提交:

    • 编写清晰、简洁的提交消息
    • 尽可能使提交专注于单个问题
    • 在提交消息中引用相关的问题编号
  4. 文档:

    • 更新新功能或已更改功能的文档
    • 为函数和类包含文档字符串
    • 为复杂代码段添加注释

来源: CONTRIBUTING.md27-28

拉取请求指南

在提交拉取请求时,请遵循以下指南

  1. PR 描述:

    • 清楚地解释您更改的目的
    • 列出 PR 中进行的所有更改
    • 引用任何相关问题
  2. 测试计划:

    • 创建一个详细的测试计划
    • 执行所有测试并记录结果
    • 对于 UI 更改,请尽可能包含屏幕截图
  3. PR清单:

    • 确保 PR 模板中的所有项目都已完成
    • 对于配置更改,请更新示例文件
    • 清楚地记录所有配置更改
  4. 审查流程:

    • 对审阅者的评论保持响应
    • 解决所有要求的更改
    • 保持 PR 专注于一个问题

来源: .github/PULL_REQUEST_TEMPLATE.md1-39

平台文件夹的特殊注意事项

autogpt_platform文件夹的贡献受特定的贡献者许可协议 (CLA) 管辖,而对代码库其他部分的贡献则遵循 MIT 许可。

贡献平台文件夹时

  1. 阅读并理解 CLA
  2. 通过向此文件夹提交 PR,即表示您同意 CLA 的条款
  3. 遵循所有标准的贡献指南

来源: CONTRIBUTING.md10-11

社区参与

如果您希望在贡献 PR 之外更深入地参与项目

  1. 催化师:阅读关于成为项目“催化师”的 Wiki 页面
  2. Discord:加入 AutoGPT Discord 服务器,与其他贡献者联系
  3. 问题:帮助分类问题并协助其他贡献者
  4. 文档:为改进文档和 Wiki 做贡献

AutoGPT 社区重视协作和团队合作。我们鼓励您

  1. 加入关于正在进行的工作的讨论
  2. 与其他人在大型功能上进行协作
  3. 帮助审查其他贡献者的拉取请求
  4. 与社区分享您的专业知识

来源: CONTRIBUTING.md30-38

测试您的更改

在提交拉取请求之前,请确保您的更改按预期工作

  1. 单元测试:运行所有单元测试以验证您的更改不会破坏现有功能
  2. 集成测试:测试您的更改与其他组件的交互方式
  3. 手动测试:对面向用户的更改执行手动测试
  4. 边缘情况:考虑并测试边缘情况和错误条件

前端更改的示例测试计划

  • 创建并执行一个至少包含 3 个块的代理
  • 从文件上传导入代理并确认执行
  • 将代理上传到市场
  • 从市场导入代理并确认执行
  • 从监视器编辑代理并确认执行

来源: .github/PULL_REQUEST_TEMPLATE.md9-24

配置更改

在进行影响配置的更改时

  1. 更新 .env.example 以反映新的环境变量
  2. 根据需要确保更新 docker-compose.yml
  3. 在您的 PR 中清楚地记录所有配置更改
  4. 考虑向后兼容性

配置更改的示例

  • 更改服务端口
  • 添加需要通信的新服务
  • 环境变量的更改
  • 新的基础设施组件,如数据库

来源: .github/PULL_REQUEST_TEMPLATE.md26-38

获取帮助

如果您遇到困难或对贡献有疑问

  1. 在 Discord 的开发频道提问
  2. 查看现有的文档和 Wiki 页面
  3. 查找类似的问题或 PR,可能可以提供指导
  4. 联系维护者以澄清项目方向

AutoGPT 社区友好且乐于助人——不要犹豫提问!