Append-only history
Signatures cannot be deleted. Every record is preserved with timestamp, hash, and session evidence.
Install a GitHub App, upload your CLA in Markdown, and every pull request is checked automatically. Signatures are tracked by immutable GitHub ID and SHA-256 content hash. Self-hostable. MIT licensed.
Free and open sourceNext.js + PostgreSQLNo vendor lock-inWorks with merge queues
Setup takes less time than writing the CLA itself.
Sign in as an org admin, install CLA Bot, and select which repositories to monitor.
Paste your agreement in Markdown. Every version is tracked by its SHA-256 hash.
Non-members get signing guidance. Checks update automatically after signature.
Merge queues, bot accounts, policy changes, manual re-checks — covered.
Signatures are cryptographically versioned and immutably stored. Both admins and contributors can download records.
No delete endpoints exist for signature data. Records are append-only at the database level.
Signatures cannot be deleted. Every record is preserved with timestamp, hash, and session evidence.
Each CLA version is identified by its SHA-256 hash. Text changes produce a new hash and trigger re-signing.
Signatures are keyed by GitHub user ID, not username. Renames never break compliance records.
Contributors download every CLA version they signed. Admins download current and archived versions.
MIT licensed. Deploy on your own infrastructure with full control over data residency. The entire stack is Next.js, PostgreSQL, and Drizzle ORM.
Next.jsPostgreSQLDrizzle ORMGitHub App APIVercel-ready
Manage agreements, view signer history, toggle enforcement, and handle CLA version transitions.
Read, sign, and track agreement versions. Re-sign prompts appear automatically when a newer CLA is published.