欢迎参与 openJiuwen 社区贡献!openJiuwen 作为开源 Agent 平台,致力于提供灵活、强大且易用的 AI Agent 开发与运行能力。我们鼓励开发者以各种方式参与社区贡献,包括但不限于代码贡献、文档改进、问题反馈、功能建议等。
openJiuwen 为原生支持多智能体协同和智能体自演进而设计,系统架构主要由 openJiuwen Core、openJiuwen Studio 和 openJiuwen Ops(即将开放)三大部分组成,为开发者提供从 Agent 开发、调优到部署的一站式平台。
社区热门仓库:
- openJiuwen Studio - Agent 零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理
- openJiuwen Core - AI Agent 开发、运行、调优与演进相关的全套 SDK 及工具
- community - 社区章程、社区规范、CLA 签署等社区运作类相关信息
- docs - openJiuwen 文档中心,存放社区所有 SIG 组的技术文档和手册
openJiuwen 是一个开源社区,它完全依赖于社区提供友好的开发和协作环境。在参与社区贡献之前,请先阅读并遵守 openJiuwen 社区行为准则。
重要: 您必须首先签署完成 openJiuwen 社区"开发者贡献协议"(CLA),才能参与 openJiuwen 社区贡献。
SIG(Special Interest Group,特别兴趣小组)是 openJiuwen 社区的技术组织单元。如何参与 SIG,请参考 SIG 治理章程。
openJiuwen 社区欢迎多种形式的贡献:
您可以对现有代码进行评价、更改、反馈问题或贡献原创代码,我们鼓励开发者以各种方式参与代码反馈和贡献。
-
安装 Git
- 针对 Git 的安装、环境配置及使用方法,请参考 GitCode 帮助中心的 Git 知识大全
-
配置 SSH 公钥
- 注册 SSH 公钥,请参考 GitCode 帮助中心的 公钥管理
-
找到感兴趣的仓库
- 在 openJiuwen 的代码托管平台上找到您感兴趣的 Repository
- 找到并打开对应 Repository 的首页
- 点击右上角的 Fork 按钮,按照指引,建立一个属于个人的云上 Fork 分支
-
创建本地工作目录
mkdir ${your_working_dir} cd ${your_working_dir}
-
克隆远程仓库
- 在仓库页面复制远程仓库的地址(
$remote_link) - 在本地执行克隆命令:
git clone $remote_link - 在仓库页面复制远程仓库的地址(
-
拉分支
更新您的本地分支:
git remote add origin $remote_link git fetch origin git checkout main git pull --rebase基于远端 main 分支拉取本地调试分支:
git branch myfeature origin/main git checkout myfeature
然后在 myfeature 分支上编辑和修改代码。
openJiuwen 采用 Apache License 2.0 (Apache-2.0)。
重要: 用户提交的代码必须是原创内容,不得侵犯他人知识产权。
- 贡献代码请遵守许可证与版权规范
- 若新贡献代码涉及第三方开源软件引入或片段引用,请严格遵守许可证与特殊许可证评审指导中的要求
- openJiuwen 有权根据相关规范修改/删除开发者贡献的内容,直至符合对应规范要求
请遵循 openJiuwen 编程规范,进行代码开发、检视,务必保持代码风格统一。
- Python 语言编程规范:PEP 8
- JavaScript 语言编程规范:openJiuwen JavaScript 编码规范
提交信息遵循 Conventional Commits(约定式提交规范)。采用此规范有助于提升提交历史的可读性,同时便于自动化工具生成变更日志。
格式:
<type>(<scope>): <subject>
注意事项:
- 提交信息采用英文格式。
- 通过
git rebase将多次零散提交合并为单个原子性提交,确保主干提交历史清晰可追溯。
类型(type):
feat:新功能fix:错误修复docs:仅文档更改style:不影响代码含义的更改(空格、格式等)refactor:既不修复错误也不添加功能的代码更改perf:提高性能的代码更改test:添加缺失的测试或更正现有测试ci:CI 配置文件和脚本的更改chore:对构建过程或辅助工具和库的更改
范围(scope): 可选,表示影响的范围,如 model、agent、workflow 等。
示例:
feat(model): add user authentication module
fix(front): resolve button click event issue
docs(guide): update contribution guidelines
style(agent): adjust code formatting to match style guide
refactor(workflow): simplify component structure
perf(runtime): optimize runtime performance
test(endpoint): add unit tests for API endpoints
ci: configure GitCode CI pipeline
chore: update dependencies to latest versions复杂提交格式: 对于需要详细说明的提交,可以使用多行格式:
feat(core): add configuration management feature
Add configuration management module to support dynamic settings loading.
This feature includes:
- Configuration file parser
- Environment variable support
- Settings validation logic
Refs: #12345
git add .
git commit -sm "feat: xxx" # 提交信息包含signoff邮箱您可能会在前次提交的基础上,继续编辑构建并测试更多内容,可以使用 commit --amend 继续添加提交。
准备进行审查(或只是建立工作的异地备份)时,将分支推到您的 fork 仓库:
git push -f origin myfeature- 访问您的 Fork 仓库页面
- 点击 创建 Pull Request 按钮
- 选择您的功能分支生成 PR
- 详细操作请参考 GitCode 帮助中心的开发协作指导
PR 描述建议包含:
- 变更的目的和背景
- 变更的详细说明
- 测试情况
- 相关 Issue 编号(使用
#I12345格式)
- 找到并打开对应 Repository 的首页
- 选择左上角的 Issues 页签
- 点击右侧 新建 Issue 按钮
- 按照指引建立一个专属的任务,用于相关联的代码(开发特性/修改 Bug)执行 CI 门禁
创建 PR 或编辑已有的 PR 时,在描述框输入 #I + 五位 Issue ID(例如:#I12345),即可将 Issue 与 PR 关联。
门禁执行完成,会在该 Issue 关联的所有 PR 中自动评论门禁执行结果。
- 需要达到最低评审人数
- 评审问题全部解决才能合入
- 禁止合入自己创建的 Pull Request
- 合并 PR 前需确保关联的流水线任务成功运行并通过检查
openJiuwen 通过持续集成(CI,Continuous Integration)及时发现代码问题,确保代码质量可靠和功能稳定:
- 代码门禁:开发者向 openJiuwen 提交代码合入申请后,会触发门禁检查,例如静态检查、代码编译、功能测试等,门禁通过后才能合入代码
- 每日构建:openJiuwen 的持续集成流水线每日自动执行,以便提前发现代码静态检查、编译、功能等方面的问题,及时修复问题,确保代码质量
如果您在使用 openJiuwen 过程中遇到问题,请加入邮件群组参与讨论。这是参与 openJiuwen 社区讨论的正确方式,请参考订阅邮件列表。
- 查看文档:openJiuwen 文档中心
- 提交 Issue:在对应仓库的 Issues 页面创建问题
- 参与讨论:通过邮件列表与社区成员交流
感谢您对 openJiuwen 社区的关注和贡献!我们期待您的参与,共同推动 AI Agent 技术的发展。🎉


