跳到主要内容

社区

SoduWork 公开开发。你可以提问、报告问题、提建议,也可以直接提交修改。

交流渠道​

渠道用途
GitHub Issues缺陷报告和功能建议
GitHub Discussions提问、讨论想法、分享你做的东西
Discord与其他用户和维护者交流
soduwork@outlook.com不适合公开的事项(安全问题除外)

新建之前,请先搜索已有的 Issue 和讨论。

报告问题​

提交缺陷报告

请写明:

  • 源码版本(提交号或发行版)、操作系统、Python 和 Node.js 版本
  • Hub 的运行方式(start.py、Docker 或自行部署)
  • 复现步骤、预期结果和实际结果
  • 涉及的 Agent 底座和模型(如有)
  • 去掉密钥后的日志。源码启动的 Hub,日志是数据目录里的 startup.log

请使用单独的测试账号和编造的数据。不要粘贴 API Key、密码、令牌、私有地址或客户数据,也不要附带含个人信息的截图。

提功能建议​

提交功能建议

说明你想解决什么问题、谁遇到这个问题。一个具体例子比一套方案更有帮助。维护者会在 Issue 里回复;较大的改动可能先放到 Discussions 讨论。

参与贡献​

代码​

  1. 按从源码启动准备一个本地实例,并阅读仓库里的 CONTRIBUTING.md。首版包含哪些内容,以 tools/distribution/PUBLIC-SOURCE.json 和 docs/release-scope.md 为准。

  2. 较大的改动,先新建 Issue 或在已有 Issue 下留言,再动手。

  3. 建一个短期分支。验证时只用单独的测试账号、临时端口和编造的数据。

  4. 说明用户遇到的问题、复现方式和预期行为。数据结构变化使用 Alembic 迁移;不要删除设备身份、用户数据或公开协议字段。

  5. 按改动范围运行检查:

    范围命令
    客户端在 client/ 运行 npm test
    管理端在 hub-frontend/ 运行 npm run build 和 node --test tests/*.test.mjs
    Hub在 hub-backend/ 运行 python quality_gate.py --help,选择对应门禁
    启动器python -m unittest tools.dev.test_start_local
    公开范围与第三方node tools/check-public-source.cjs、node tools/check-third-party.cjs
    文档与密钥扫描node tools/check-docs.cjs、python tools/security/scan_secrets.py --download
  6. 新增的公开文件先加入 Git,再用 node tools/check-source-manifest.cjs --write-manifest 更新源码清单,用 node tools/check-source-manifest.cjs 校验,并把更新后的清单一起提交。

  7. 提交里不要包含运行日志、截图、数据库、账号、令牌、私有地址、安装包或依赖缓存。

  8. PR 说明里写清楚问题和行为、实际运行过的检查及平台,以及没有覆盖的部分。测试夹具不能代替真实模型或生产验收。

提交签名​

本项目使用 Developer Certificate of Origin 1.1(DCO)。在提交上签名,表示你有权按本项目的许可提交这段修改。

git commit -s -m "Fix upload retry after a timeout"

提交信息末尾会多一行 Signed-off-by: 你的名字 <you@example.com>。请使用真实姓名和能联系到你的邮箱。已经提交但漏签时,最近一次提交用 git commit --amend -s 补签,当前分支上的所有提交用 git rebase --signoff main 补签。

文档与翻译​

随源码提供的指南在仓库的 docs/ 目录。本站页面有问题,请提交 Issue。

  • 欢迎修正任何语言版本里的错误、不清楚的步骤和失效链接。
  • 中英文页面保持一致。只改了一种语言时,请在 PR 里注明,方便同步另一种。
  • 句子写短,命令、路径和版本号写准确。

插件与 Skill​

欢迎分享你做的插件和 Skill。

  • 每个插件放在单独的目录里,包含 plugin.json、README 和许可文件。
  • 不要包含密钥、内网地址或客户数据。
  • 第三方素材要保留许可和来源。许可不允许再分发的素材不要提交。
  • 新增依赖要记录来源、版本和许可。
  • 新增内置 Skill,还需要在 tools/distribution/PUBLIC-SOURCE.json 里明确更新发布范围。

包格式见插件开发。

报告安全问题​

不要在公开的 Issue 或讨论里报告安全问题。

凭据泄露、权限绕过、任意代码执行、越权访问等问题,请私下报告:打开仓库的 Security 页,点击 Report a vulnerability(直接打开)。无法使用 GitHub 时,发邮件至 soduwork@outlook.com,标题以 [Security] 开头。

请提供受影响的版本、操作系统、部署方式、最小复现步骤、影响范围,以及去掉密钥后的日志。只在你自己控制的环境里测试,不要访问他人的工作区、执行机或数据。

修复发布后,维护者会公布影响范围和升级步骤。详见 SECURITY.md。

行为准则​

参与本项目的每个人都遵守行为准则(Contributor Covenant 2.1)。遇到不可接受的行为,请发邮件至 soduwork@outlook.com。

贡献者​

感谢每一位贡献者。

在 GitHub 上查看所有贡献者。

许可​

SoduWork 自有源码的版权属于 MDiRi,按 MIT 许可 发布。第三方代码、依赖和素材保留各自的许可。本站文档文字按 CC BY 4.0 授权,示例代码按 MIT 授权。

harness harnesses runtime runtimes 底座