Commits

SkillFiles & storage

Use when picking a branch name, staging files, or writing a commit message — covers branch conventions, the project's Conventional Commits format with the scope vocabulary observed in history, and the documentation-update gate that fires before every commit (`docs/*`, `README.md`, godoc, Helm values).

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Commits skill

What this skill tells your AI

The instructions your AI receives, as published by vavallee/bindery in .claude/skills/commits/SKILL.md and read by ahel’s review.

Branches

UseForm
Feature workfeature/<short-slug>
Bug fix tied to an issuefix/<NN>-<short-slug> (NN = issue number)
Codex / agent branchescodex/<slug>
Release / deploybot-owned — never push manually

Branch from main, not development (no development branch in this repo). Keep one branch focused on one change. If you find yourself fixing two unrelated things, that's two branches.

Commit messages — Conventional Commits

<type>(<scope>): <imperative subject, lowercase, no trailing period>

<optional body — explain *why*, not *what*. Wrap at ~72 cols.>

Types observed in history: feat, fix, chore, docs, test, perf. The repo doesn't use refactor, style, or ci as types — ci is a scope.

Scopes (use one of these when it fits; invent sparingly):

LayerScopes
Backend domainapi, auth, oidc, db, metadata, indexer, downloader, importer, recommender, scheduler, notifier, series, author, abs, calibre, telemetry, opds, httpsec
Cross-cuttingci, release, deploy, lint, deps / deps-dev, migrate, sync, scanner, search
Othertest, docs, web

Issue link in the subject: append (#NN) — e.g. fix(indexer): strip possessive author prefix from title before relevance matching (#446).

Reserved: chore(deploy): promote bindery to vX.Y.Z [skip ci] is bot-only. Never include [skip ci] in human or agent commits — it bypasses CI and CI is the gate.

Subject examples from real history:

  • feat(oidc): test discovery button surfaces IdP errors before login (#460)
  • fix(recommender): don't gate author-new / series / genre-popular on ratings count
  • perf(author): parallelize author work discovery and searches
  • test(downloader): cover download client edge-case matrix (#451)
  • docs(series): document enhanced hardcover series workflow

Documentation-update gate

Before staging the commit, walk the diff and update the matching docs in the same commit (or at minimum the same PR — never a follow-up).

If your diff touches…Update…
Env vars, config, startup flags, upgrade pathdocs/DEPLOYMENT.md
Auth modes / OIDC / proxy authdocs/auth-multiuser.md, docs/auth-oidc.md, docs/auth-proxy.md, docs/troubleshooting-auth.md as applicable
ABS import flowdocs/abs_import.md (+ docs/ABS-Import-Wiki.md for user-facing changes)
Hardcover / series featuredocs/Hardcover-Series-Wiki.md
Upgrade-from-v1 pathdocs/upgrade-v2.md
Multi-user behaviourdocs/multi-user.md
Feature surface advertised at top levelREADME.md
Helm chart values, env, image configcharts/bindery/values.yaml
New exported Go symbol with non-obvious behaviourgodoc comment on the symbol
Agent process / lifecycle / skill triggersAGENTS.md (only when the agent contract genuinely changes — don't routinely touch)

Rule of thumb: the entire docs/ directory and README.md are maintained at every commit — they should never lag behind the code. AGENTS.md is updated only when contributor / agent process actually shifts. CONTRIBUTING.md is human-maintained — don't auto-edit unless the user asks.

Pure refactors with no behaviour change require no doc update.

Out of scope (release-time only)

CHANGELOG.md sections are authored at tag/deploy time, not at commit time. Don't add an [Unreleased] entry; don't modify versioned sections. The tag-release skill covers CHANGELOG authoring when cutting ## [vX.Y.Z].

Don't

  • Don't include [skip ci] in human or agent commits.
  • Don't --amend after a hook failure — the commit didn't happen, so amend modifies the previous one. Re-stage and create a new commit.

Signals

GitHub stars
456
Forks
57
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
commits-vavallee
Source
github.com/vavallee/bindery