Branches & Commits
This page is for contributors to the Plugwerk codebase in plugwerk/plugwerk. Branch naming and commit conventions are normative and enforced in review — the Git Workflow section of the main repository's AGENTS.md is the source of truth.
Branch naming
Section titled “Branch naming”Every branch ties back to a GitHub Issue. Use the issue ID and a short description:
feature/<issue-id>_<short-description>Examples:
feature/123_marketplace-searchfix/124_descriptor-validation-npechore/130_bump-spring-boot
Never commit directly to main.
Commit messages
Section titled “Commit messages”Commit messages follow Conventional Commits. Allowed types:
feat, fix, docs, refactor, test, chore, perf, ci
Example:
feat: add plugin search filter to catalog endpoint
Closes #42Reference the issue with Closes #N (or Relates to #N) so GitHub auto-closes it on merge.
AI co-authorship
Section titled “AI co-authorship”If part of a commit was produced by an AI agent (Claude Code, Copilot, Cursor, etc.), add a Co-Authored-By: trailer naming the agent. This is required when an AI agent generated the diff, not optional.
feat: add plugin search filter to catalog endpoint
Closes #42
Co-Authored-By: Claude <noreply@anthropic.com>The PR-level disclosure is described in Pull Request Process — AI Agent Disclosure.
Issues
Section titled “Issues”Every GitHub Issue must have:
- Type (Feature / Bug / Task)
- Milestone
- Labels
Issues for the Plugwerk codebase live in plugwerk/plugwerk. Issues for this website (docs, landing page) live in plugwerk/website. Cross-repo references use plugwerk/plugwerk#N or plugwerk/website#N.
Further reading
Section titled “Further reading”AGENTS.md— Git Workflow — full conventions including PR scope and AI commit attribution- Conventional Commits