diff --git a/legal/README.md b/legal/README.md new file mode 100644 index 0000000..f869693 --- /dev/null +++ b/legal/README.md @@ -0,0 +1,82 @@ +# Contributor License Agreement (CLA) + +This directory holds the org's Contributor License Agreements and the runbook for +enforcing them. The decision to use a CLA (over a DCO) and the rationale are in +[`../LICENSING.md`](../LICENSING.md) §3. + +| File | Purpose | +|------|---------| +| [`individual-cla.md`](./individual-cla.md) | Individual CLA (ICLA) — signed by each individual contributor | +| [`corporate-cla.md`](./corporate-cla.md) | Corporate CLA (CCLA) — signed by an employer for its designated employees | + +> **Both texts are DRAFT and must be reviewed by legal counsel before +> enforcement.** They are adapted from the Apache Software Foundation ICLA v2.2 / +> CCLA v2.0. Until enforcement is announced, the +> [GitHub ToS inbound=outbound rule](https://docs.github.com/en/site-policy/github-terms/github-terms-of-service#6-contributions-under-repository-license) +> governs. + +## Enforcement: CLA Assistant + +Signatures are collected automatically when a contributor opens their first pull +request. There are two ways to run CLA Assistant; pick one before enabling. + +### Recommended — CLA Assistant Lite (GitHub Action) + +[`cla-assistant/github-action`](https://github.com/cla-assistant/github-action) +runs as a workflow inside our own org and **stores signatures in a file in one of +our own repositories** — no third-party service holds contributor data, which fits +the project's data-ownership stance. Tradeoff: the workflow must be added to each +repo that gates on the CLA (or distributed via an org workflow template). + +**Manual setup steps (require org/repo admin — cannot be automated here):** + +1. Create a fine-grained Personal Access Token (or a GitHub App token) with + `contents: write` on the repo chosen to store signatures, and add it as the + `PERSONAL_ACCESS_TOKEN` Actions secret in each repo that uses the workflow. +2. Decide the signatures storage location (e.g. a `signatures` branch, or a + `cla/signatures.json` file in this `.github` repo). +3. Add a workflow like the following to each gated repo as + `.github/workflows/cla.yml`: + + ```yaml + name: CLA Assistant + on: + issue_comment: + types: [created] + pull_request_target: + types: [opened, closed, synchronize] + permissions: + actions: write + contents: write + pull-requests: write + statuses: write + jobs: + cla: + runs-on: ubuntu-latest + steps: + - uses: cla-assistant/github-action@v2.6.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }} + with: + path-to-signatures: 'cla/signatures.json' + path-to-document: 'https://github.com/agentic-commons-foundation/.github/blob/main/legal/individual-cla.md' + branch: 'cla-signatures' + allowlist: 'dependabot[bot],pre-commit-ci[bot],*[bot]' + ``` + +4. Confirm the bot comments on a test PR and records the signature. + +### Alternative — hosted CLA Assistant (GitHub App) + +[cla-assistant.io](https://cla-assistant.io) is a one-click GitHub App: authorize +it on the org, paste the CLA text, and it gates PRs org-wide from a central +dashboard. Easier to operate, but a third party stores the signature records — +which is why Lite is recommended here. + +## After enforcement is live + +- Add the `path-to-document` link to the in-force ICLA/CCLA (this directory). +- Update [`../CONTRIBUTING.md`](../CONTRIBUTING.md) §0.2 to state the CLA is now + enforced (it currently says "until the CLA bot is live..."). +- Note the go-live date in the brand Decision Log. diff --git a/legal/corporate-cla.md b/legal/corporate-cla.md new file mode 100644 index 0000000..045103d --- /dev/null +++ b/legal/corporate-cla.md @@ -0,0 +1,87 @@ +# Agentic Commons Corporate Contributor License Agreement ("CCLA") + +> **Status: DRAFT — not yet in force.** This agreement is adapted from the +> Apache Software Foundation CCLA v2.0 and **must be reviewed by legal counsel +> before it is enforced.** See [`individual-cla.md`](./individual-cla.md) for the +> individual agreement and [`LICENSING.md`](../LICENSING.md) for the licensing +> policy. + +Thank you for your interest in Agentic Commons (the "Project"). This Corporate +Contributor License Agreement is for a corporation (the "Corporation") that has +designated employees to Submit Contributions on its behalf. It must be signed by +a person authorized to bind the Corporation. + +In this Agreement, **"We"** / **"Us"** means Obiwan Co., Limited, acting as +trustee for Agentic Commons (in formation), together with its intended +successor, the Agentic Commons Foundation. **"You"** means the Corporation +identified in the signature block. + +## 1. Definitions + +**"Contribution"**, **"Submit"**, and **"Work"** have the same meanings as in the +[Individual CLA](./individual-cla.md), Section 1. + +**"Designated Employees"** means the employees, contractors, and agents of the +Corporation listed in Schedule A (as amended from time to time by the +Corporation). + +## 2. Grant of Copyright License + +Subject to the terms and conditions of this Agreement, the Corporation hereby +grants to Us and to recipients of software distributed by Us a perpetual, +worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license +to reproduce, prepare derivative works of, publicly display, publicly perform, +sublicense, and distribute Contributions Submitted by its Designated Employees +and such derivative works. + +## 3. Grant of Patent License + +Subject to the terms and conditions of this Agreement, the Corporation grants to +Us and to recipients of software distributed by Us a perpetual, worldwide, +non-exclusive, no-charge, royalty-free, irrevocable (except as stated below) +patent license on the same terms as Section 3 of the Individual CLA, applied to +Contributions Submitted by its Designated Employees. The patent-litigation +termination provision of that section applies equally here. + +## 4. Representations + +4.1. The Corporation represents that each Designated Employee is authorized to +Submit Contributions on its behalf and that it is legally entitled to grant the +above licenses. + +4.2. The Corporation represents that each Contribution is an original creation of +a Designated Employee (see Section 6 of the Individual CLA for third-party work). + +4.3. Contributions are provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, as set out in Section 4.3 of the Individual CLA. + +4.4. It is the Corporation's responsibility to keep Schedule A current and to +notify Us when a person should be added or removed. Individuals not listed in +Schedule A who wish to contribute must sign the Individual CLA. + +## 5. Notice + +The Corporation agrees to notify Us of any facts or circumstances of which it +becomes aware that would make these representations inaccurate in any respect. + +## 6. Assignment + +We may assign this Agreement, and all rights and licenses granted under it, to +the Agentic Commons Foundation (or another successor non-profit entity +established to steward the Project) upon its formation, without further consent +from the Corporation, solely to effect the planned transfer of stewardship. + +--- + +**Signature** (authorized representative of the Corporation): + +- Corporation name: +- Authorized signer (name / title): +- Email: +- Date: + +## Schedule A — Designated Employees + +| Full name | GitHub username | Email | +|-----------|-----------------|-------| +| | | | diff --git a/legal/individual-cla.md b/legal/individual-cla.md new file mode 100644 index 0000000..7d61866 --- /dev/null +++ b/legal/individual-cla.md @@ -0,0 +1,119 @@ +# Agentic Commons Individual Contributor License Agreement ("ICLA") + +> **Status: DRAFT — not yet in force.** This agreement is adapted from the +> Apache Software Foundation ICLA v2.2 and **must be reviewed by legal counsel +> before it is enforced.** Until enforcement is announced, contributions are +> governed by the [GitHub Terms of Service §D.6 inbound=outbound rule](https://docs.github.com/en/site-policy/github-terms/github-terms-of-service#6-contributions-under-repository-license) +> and the per-repository license in [`LICENSING.md`](../LICENSING.md). + +Thank you for your interest in Agentic Commons (the "Project"). To clarify the +intellectual-property license granted with Contributions from any person, the +Project must have a Contributor License Agreement on file that has been signed +by each Contributor, indicating agreement to the license terms below. + +In this Agreement, **"We"** / **"Us"** means Obiwan Co., Limited, acting as +trustee for Agentic Commons (in formation), together with its intended +successor, the Agentic Commons Foundation. **"You"** means the individual who +Submits a Contribution and who is identified by the signature block below. + +This is a license agreement, not an assignment of copyright. You retain +ownership of your Contributions. Read this document carefully before signing +and keep a copy for your records. + +## 1. Definitions + +**"Contribution"** means any original work of authorship, including any +modifications or additions to an existing work, that is intentionally Submitted +by You to Us for inclusion in, or documentation of, any of the products owned or +managed by Us (the "Work"). + +**"Submit"** means any form of electronic, verbal, or written communication sent +to Us or our representatives, including but not limited to communication on +electronic mailing lists, source-code-control systems, and issue-tracking systems +that are managed by, or on behalf of, Us — but excluding communication that is +conspicuously marked or otherwise designated in writing by You as "Not a +Contribution." + +## 2. Grant of Copyright License + +Subject to the terms and conditions of this Agreement, You hereby grant to Us +and to recipients of software distributed by Us a perpetual, worldwide, +non-exclusive, no-charge, royalty-free, irrevocable copyright license to +reproduce, prepare derivative works of, publicly display, publicly perform, +sublicense, and distribute Your Contributions and such derivative works. + +## 3. Grant of Patent License + +Subject to the terms and conditions of this Agreement, You hereby grant to Us +and to recipients of software distributed by Us a perpetual, worldwide, +non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this +section) patent license to make, have made, use, offer to sell, sell, import, +and otherwise transfer the Work, where such license applies only to those patent +claims licensable by You that are necessarily infringed by Your Contribution(s) +alone or by combination of Your Contribution(s) with the Work to which such +Contribution(s) was Submitted. If any entity institutes patent litigation +against You or any other entity (including a cross-claim or counterclaim in a +lawsuit) alleging that Your Contribution, or the Work to which You have +contributed, constitutes direct or contributory patent infringement, then any +patent licenses granted to that entity under this Agreement for that Contribution +or Work shall terminate as of the date such litigation is filed. + +## 4. Representations + +4.1. You represent that You are legally entitled to grant the above licenses. If +your employer(s) has rights to intellectual property that You create that +includes Your Contributions, You represent that You have received permission to +make Contributions on behalf of that employer, that your employer has waived such +rights for Your Contributions to Us, or that your employer has executed a +separate Corporate CLA with Us. + +4.2. You represent that each of Your Contributions is Your original creation (see +Section 6 for submissions on behalf of others). + +4.3. You are not expected to provide support for Your Contributions, except to +the extent You desire to provide support. You may provide support for free, for a +fee, or not at all. Unless required by applicable law or agreed to in writing, +You provide Your Contributions on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied, including, without limitation, +any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or +FITNESS FOR A PARTICULAR PURPOSE. + +## 5. Agent-Submitted Contributions + +The Project's purpose is to enable AI agents to make public-good contributions. +Where You operate an automated agent that Submits Contributions on Your behalf, +You remain the Contributor and are responsible for ensuring those Contributions +meet the representations in Section 4 — in particular that they are lawfully +Yours to license and are not infringing or improperly copied. Agent operation +does not transfer or dilute Your responsibilities under this Agreement. + +## 6. Third-Party Works + +Should You wish to Submit work that is not Your original creation, You may Submit +it separately from any Contribution, identifying the complete details of its +source and of any license or other restriction (including, but not limited to, +related patents, trademarks, and license agreements) of which You are personally +aware, and conspicuously marking the work as "Submitted on behalf of a +third-party: [named here]". + +## 7. Notice + +You agree to notify Us of any facts or circumstances of which You become aware +that would make these representations inaccurate in any respect. + +## 8. Assignment + +We may assign this Agreement, and all rights and licenses granted under it, to +the Agentic Commons Foundation (or another successor non-profit entity +established to steward the Project) upon its formation, without further consent +from You. This is intended solely to effect the planned transfer of stewardship +described in [`LICENSING.md`](../LICENSING.md). + +--- + +**Signature** (completed via the CLA bot on your first pull request, or below): + +- Full name: +- GitHub username: +- Email: +- Date: