Signatures for open source.
Contributor License Agreements that live in your repo.
Frontmatter sets the agreement's display name and version. The body is the legal text contributors agree to. Example:
---
name: Realm
version: 1.0
---
By submitting a contribution to this project, you agree that:
1. **Ownership.** The contribution is your original work, or you have the right
to submit it under this agreement.
2. **License grant.** You grant the maintainers and all downstream recipients a
perpetual, worldwide, non-exclusive, royalty-free, irrevocable license to
use, modify, and distribute your contribution.
3. **You keep your copyright.** You retain all rights to your contribution and
may use it however you wish elsewhere.Create .github/workflows/sigil.yml. The gate validates signature PRs
(signature validity, CLA integrity, contributor consent) and posts a status
comment; merging remains manual.
name: Sigil
on: [pull_request_target]
permissions:
pull-requests: write # post status comment
contents: read # read CLA.md and signature files
jobs:
gate:
runs-on: ubuntu-latest
steps:
- uses: yourrealm/sigil@mainPoint contributors at withsigil.eu/cla/github/<owner>/<repo>. They sign in
with GitHub and Sigil opens a pull request against your repo that adds
.signatures/cla/<handle>.md.
Requires Deno 2.x.
deno task dev # Vite dev server with HMR
deno task build # production build
deno task start # run the production build
deno task check # fmt, lint, typecheck, action tests
deno task test:action # run just the action unit tests
OAuth needs GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET. See .env.example.
Architecture, conventions, and the signature-file spec:
CLAUDE.md.
Contributions require signing the Sigil CLA.