Files
yuanzonghao 2b0b9c6f8d feat(repo): add CLA mechanism for external contributors
Introduce a Contributor License Agreement (CLA) so external contributions
can be licensed under AGPL-3.0 and any other terms (incl. closed-source),
keeping the AGPL-3.0 codebase usable in closed-source projects.

- CLA.md: authoritative English CLA (ICLA + employer authorization, v1.0)
- CLA.zh.md: non-binding Chinese reference translation
- CONTRIBUTING.md: bilingual contributing guide, points to CLA
- .github/workflows/cla.yml: self-hosted cla-assistant-action that records
  signatures into cla-signatures/version-1.json; exempts maintainers & bots
  via allowlist; skips when CLA_BOT_TOKEN is unset
- .github/PULL_REQUEST_TEMPLATE.md: guides contributors to sign
- README.{md,en.md,ja.md}: add License & contributing footer
- app/terms: note CLA requirement in the IP section

Enforcement requires repo-level setup (PAT secret + branch protection)
documented in cla.yml; not covered by this commit.
2026-06-17 12:23:46 +08:00

6.2 KiB
Raw Permalink Blame History

贡献者许可协议(CLA)— InfiPlot

免责声明:本中文版本仅供参考,不具法律约束力。如中英文有任何不一致,以 CLA.md 英文版本为准。

感谢你有兴趣为 InfiPlot(以下简称"本项目")做贡献。本《贡献者许可协议》(以下简称"本 CLA")规定了你就你所提交的贡献授予项目维护者的权利。一旦你签署本 CLA,即表示你已阅读并同意其全部条款。 本 CLA 的版本号为 1.0

1. 定义

  • "你"(或"贡献者":指提交贡献并签署本 CLA 的个人。若你代表雇主提交贡献,则第 4 条(雇主授权)的规定一并适用。
  • "我们"(或"项目维护者":指 InfiPlot 项目的维护者——经授权管理本项目的个人与实体,包括依本 CLA 使用贡献的权利。
  • "贡献":指由你有意提交给本项目的任何原创作品,包括对现有源代码、文档、素材或其他资料的任何修改或新增。为避免歧义,这包括以电子方式(通过 pull request、commit、issue、评论或任何其他渠道)提交的内容,以及任何为本项目提交的代码、文字或其他内容。
  • "本项目":指由我们维护的 InfiPlot 软件及其所有相关仓库与资料。

2. 版权许可

在本 CLA 条款的前提下,你在此授予我们以及我们分发软件的接收者一项永久的、全球范围的、非独占的、免费的、免版税的、不可撤销的版权许可,允许其复制、制作衍生作品、公开展示、公开表演、再许可(sublicense)及分发你的贡献及其衍生作品。

前述许可明确允许我们依据 GNU Affero General Public License v3.0(本项目当前所采用的开源协议)以及我们自行选择的任何其他许可条款——包括专有、闭源或商业许可条款——来使用、修改和分发你的贡献。这是本 CLA 的核心目的。

3. 专利许可

在本 CLA 条款的前提下,你在此授予我们以及我们分发软件的接收者一项永久的、全球范围的、非独占的、免费的、免版税的、不可撤销的(除第 6 条另有规定外)专利许可,允许其制造、委托他人制造、使用、许诺销售、销售、进口或以其他方式转让该贡献;该许可仅限于你有权许可的、且仅因你的贡献单独存在或你的贡献与提交该贡献的本项目结合而必然侵权的那些专利权利要求。

4. 雇主授权

你声明:如果你的贡献是在受雇期间创作的,或者你的雇主(或你以外的任何实体)可能对该贡献享有任何权利、所有权或利益(例如因为你使用了雇主所有的设备、资源或工作时间),则下列任一情形成立:

  1. 你的雇主(或该其他实体)已授权你提交该贡献,并授予第 2 条与第 3 条中的许可;
  2. 你的贡献不受你的雇主(或任何该等其他实体)的知识产权约束——例如,该工作完全在你的个人时间内、仅使用你自己的资源完成,且不在你的雇佣职责范围之内。

如果我们提出要求,你同意以我们认可的形式提供来自你的雇主(或该等其他实体)的书面授权确认。你知悉:当雇主(或你以外的任何实体)可能对某一贡献享有权利时,在获得适当授权之前,我们可拒绝接受该贡献。

5. 你的陈述与保证

你声明并保证:

  1. 你的每一项贡献均为你完全的原创作品(若非如此,则已在适当署名且在一种与本 CLA 兼容的许可下提交给本项目),且你有权提交该贡献;
  2. 据你所知,每一项贡献均不侵犯任何第三方的知识产权(包括但不限于版权与专利权);
  3. 你在法律上有权授予第 2 条与第 3 条中的许可,且不存在任何其他协议、义务或限制(包括但不限于任何雇佣协议或开源协议)阻止你这样做。

你按"现状"提供你的贡献。除本 CLA 中明示的陈述与保证外,你不作任何其他明示或暗示的陈述与保证。

6. 撤回与撤销

你可以通过向我们发出书面通知(发送电子邮件至 hi@infiplot.com)来撤销本 CLA 或第 3 条授予的专利许可。任何此类撤销仅对你在我们收到通知之后提交的贡献生效,不影响你在该日期之前提交的贡献或在该等贡献中已授予的权利。

7. 免责声明

除本 CLA 中明示的陈述与保证外,你的贡献按"现状"提供,不附带任何种类的保证,无论是明示还是暗示,包括但不限于对适销性、特定用途适用性或不侵权的任何保证。在任何情况下,你均不对我们或任何其他方因本 CLA 或你的贡献而产生或与之相关的任何直接、间接、特殊、附带或后果性损害承担责任。

8. 其他

  1. 无义务。 本 CLA 中的任何内容均不要求我们必须接受或使用任何贡献,也不要求我们必须分发包含你贡献的任何项目版本。
  2. 权利保留。 本 CLA 仅授予我们对你贡献的许可,并不将你版权或专利权的所有权转让给我们。在本协议授予的许可前提下,你保留对你贡献的全部权利、所有权与利益。
  3. 完整协议。 本 CLA 连同其中援引的任何条款,构成你与我们之间关于本协议标的事项的完整协议,并取代此前关于该标的事项的任何协议。
  4. 修改。 我们可能会不时发布本 CLA 的新版本(例如 version-2)。当我们发布新版本时,该新版本将适用于你在其生效之后提交的贡献;你在先前版本下提交的贡献仍受该先前版本约束。
  5. 可分性。 若本 CLA 的任何条款被裁定为不可执行或无效,该条款将被在必要的最小范围内予以限制或排除,其余条款继续完全有效。
  6. 适用法律。 本 CLA 受项目维护者所在司法管辖区适用的法律管辖,不适用其法律冲突原则。

9. 联系方式

如对本 CLA 有任何疑问,请通过 hi@infiplot.com 联系我们。


一旦你签署本 CLA(例如在 pull request 中回复"I have read the CLA Document and I hereby sign the CLA"),即表示你已阅读、理解并同意受其条款约束。