commit-msg_skill

This skill helps you commit staged changes with meaningful, structured messages following project conventions, improving traceability and collaboration.
  • Python

65

GitHub Stars

1

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill synthesys-lab/assassyn --skill commit-msg

  • SKILL.md3.4 KB

Overview

This skill commits staged changes to git with clear, convention-driven messages. It enforces message structure, chooses appropriate tags from docs/git-msg-tags.md, and respects milestone versus delivery semantics. It also handles bypassing pre-commit hooks only when a valid milestone commit is requested. The goal is readable audit trails and consistent progress tracking for development workflows.

How this skill works

The skill inspects the staged files, the current branch name, and the provided purpose (delivery or milestone). It reads docs/git-msg-tags.md to pick a tag and formats either a short or full commit message based on the size of the changes. For milestone commits it inserts [milestone], includes the issue number and test-case summary, and may use --no-verify per the user's instruction. For delivery commits it never bypasses pre-commit hooks and produces a short single-line message.

When to use it

  • Committing a small delivery change (under ~20 lines) that only needs a short message.
  • Committing larger changes that require a full, file-by-file description in the body.
  • Marking progress on a tracked issue using a milestone commit on a development branch.
  • When you need consistent tags for module-level or change-type classification.
  • When you must enforce pre-commit hook policies depending on commit purpose.

Best practices

  • Always ensure docs/git-msg-tags.md exists and contains the tag list; refuse to commit otherwise.
  • Use short messages only for deliveries and full messages for larger commits (>~20 lines).
  • Derive the issue number from branch name formatted as issue-<number>-<brief-title> for milestone commits.
  • Never claim co-authorship; the user is fully responsible for the commit message and contents.
  • Only use --no-verify for milestone commits on development branches and only when explicitly requested.

Example use cases

  • Small bugfix: stage two-line change and create a short delivery commit with [core] tag.
  • Feature work: stage many files and produce a full commit detailing changes per file and referencing the issue.
  • Progress checkpoint: create a milestone commit on branch issue-42-improve-cache with [milestone] and test-case summary.
  • Docs update: use [docs] tag listed in docs/git-msg-tags.md and include affected file paths in the body.
  • Test-only changes: use [tests] tag and ensure the commit contains only test modifications.

FAQ

Reject the commit and ask the user to provide docs/git-msg-tags.md with the tag definitions before proceeding.

When can pre-commit hooks be bypassed?

Only for milestone commits on a development branch and only if the user explicitly requests bypassing with --no-verify.

How is the issue number determined for a milestone?

Extract the issue number from the branch name using the convention issue-<number>-<brief-title> and include it in the commit summary.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational