Adds a CLA so future contributions can be relicensed if the project later offers commercial terms alongside AGPL-3.0. Adapted from the Apache 2.0 ICLA with Dutch-law modifications: moral rights waiver under Auteurswet art. 25, GDPR data-processing notice referencing cla-assistant.io, and Amsterdam jurisdiction. Signing is administered via the hosted cla-assistant.io service (configured outside this repo); the Gist referenced there is kept in sync with CLA.md. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2.6 KiB
Contributing to Nextcloud MCP Server
Thank you for your interest in contributing! This project is licensed under AGPL-3.0 and welcomes contributions from the community.
Contributor License Agreement (CLA)
DRAFT — NOT YET IN EFFECT. The CLA process described below is a planned change. Until the CLA is finalized and the CLA Assistant workflow is enabled on this repository, no signature is required.
To keep the project's licensing flexible — including the ability to offer commercial licensing alongside AGPL-3.0 in the future — we ask all contributors to sign our Contributor License Agreement. The CLA gives the project maintainer the rights needed to relicense or dual-license the project while letting you retain copyright in your contributions.
How signing works:
- Open a pull request as you normally would.
- The CLA Assistant bot (cla-assistant.io) will comment on your PR with a link inviting you to sign.
- Click the link, review the agreement, and sign in with your GitHub account to record your signature.
- Your signature is recorded once per GitHub account. Subsequent PRs are covered automatically.
If you contribute on behalf of an employer, please confirm with your employer that you are permitted to contribute under the CLA. For larger organizations, a separate Corporate CLA may be required — open an issue if this applies to you.
Version Management
This project uses commitizen for version management following PEP 440 (major_version_zero = true, 0.x.x for pre-1.0).
Note: The Helm chart has been moved to cbcoutinho/helm-charts. The Astrolabe Nextcloud app has been moved to cbcoutinho/astrolabe.
Commit Message Format
Use conventional commits:
feat: add new feature
feat(mcp): add calendar sync API
fix: resolve authentication bug
docs: update README
Release Workflow
1. Make Changes with Conventional Commits
git commit -m "feat: add calendar sync"
2. Bump Version
./scripts/bump-mcp.sh
# → Creates tag: v0.54.0
# → Updates: pyproject.toml
3. Push Tags
git push --follow-tags
Manual Version Bumps
For specific increments:
# Patch bump (0.53.0 → 0.53.1)
uv run cz bump --increment PATCH
# Minor bump (0.53.0 → 0.54.0)
uv run cz bump --increment MINOR
# Major bump (0.53.0 → 1.0.0)
uv run cz bump --increment MAJOR