filipebraida/adonisjs-starter-kit/git-commit

Claude Code and agent skill by filipebraida/adonisjs-starter-kit

Trust tier 2
  • community
  • ext:[{"type":"hook","description":"Pre/post lifecycle hooks"}]
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Execute a git commit that follows semantic conventional-commits — type, optional scope, imperative subject in English under 70 chars, body explaining WHY. User-invoked via /git-commit or "/commit".

Install

npx vskill@latest install filipebraida/adonisjs-starter-kit/git-commit

Semi-extensibleMentions customization, but needs skill-specific knowledge. Read the extensible skills standard

SKILL.md

Git Commit

Create semantic git commits that match the existing history in this repo. Analyze the actual diff to pick the right type, an optional scope, and a subject that reads well next to git log --oneline. Body explains the why — the diff already shows the what.

Commit format

<type>(<optional-scope>): <imperative subject>
[optional body — WHY, not WHAT]
[optional footer(s)]
  • Subject: imperative mood, English, ≤ 70 characters. No trailing period.
  • Scope: the single module or package most affected. Omit when the change is cross-cutting.
  • Body: explain motivation (constraint, incident, decision). The diff already shows what.
  • Footers: Closes #123, BREAKING CHANGE: …, etc.

Commit types

TypeWhen
featNew user-visible capability
fixBug fix (behavior was wrong, now correct)
refactorInternal change, same behavior
testAdd or adjust tests
dbSchema / migration change
ciPipeline, actions, coverage, release plumbing
choreHousekeeping (deps, config, tooling) that isn't ci or db
docsDocs-only change
styleFormatting only (no logic)
perfChange motivated by a measurable performance win

Scopes

Only use a scope when the change clearly centers on one area. Common shapes:

  • Domain module: name of the module the diff sits in (auth, users, <feature>).
  • Monorepo package: name of the package (ui, eslint-config, typescript-config, skills).
  • Cross-cutting infrastructure (docker, CI, tooling at the repo root): usually no scope.

If the diff spans several modules or packages without a clear center, omit the scope entirely.

Breaking changes

Two forms — pick one, not both:

# Exclamation mark after type/scope
feat!: drop legacy /v1 endpoints
# Or a BREAKING CHANGE footer at the bottom of the body
feat(auth): rework session guard
BREAKING CHANGE: web guard now returns null when the session is missing
instead of throwing E_UNAUTHORIZED_ACCESS.

Workflow

1. Read what's changing
bash
git status
git diff --staged # if anything is staged
git diff # working tree, unstaged
git log --oneline -10 # match the tone of recent messages
2. Stage the right files
  • Stage by explicit path (git add path/to/file), not git add -A or git add ..
  • Never stage secrets (.env, credentials, tokens, keys).
  • Never stage unrelated in-flight work — split into separate commits if needed.
3. Check code health (when applicable)

Before proposing a commit that touches TS/TSX under an app or a package:

bash
pnpm typecheck
pnpm lint
pnpm test # when the change is testable

Skip for docs-only, config-only, asset-only, or pure renames.

4. Draft the message
  • Type: which semantic type best describes the change?
  • Scope: is one module or package clearly the focus? If not, omit.
  • Subject: one imperative-mood line in English, ≤ 70 chars, no trailing period.
  • Body: only if the diff doesn't already speak for itself — explain the WHY (motivation, constraint, past incident, decision that isn't obvious). Wrap at ~72 chars.
5. Commit

Single line:

bash
git commit -m "<type>(<scope>): <subject>"

Multi-line body — use HEREDOC to preserve formatting:

bash
git commit -m "$(cat <<'EOF'
<type>(<scope>): <subject>
<body — why this change, not what>
<footers>
EOF
)"

Repo conventions

  • Do not add Co-Authored-By or coauthor trailers unless the user explicitly requests them.
  • Avoid emojis unless the user asks for them.

Git safety protocol

  • Never edit git config.
  • Never run destructive commands (--force, reset --hard, clean -f, branch -D) without an explicit request.
  • Never skip hooks (--no-verify) unless the user asks.
  • Never force-push to main / master.
  • Prefer new commits over --amend. If a pre-commit hook fails, fix the underlying issue and create a new commit — the previous commit didn't happen, so amending would edit an unrelated older commit.
  • Never commit or push unprompted.

Anti-patterns

  • ❌ chore: various changes — vague; split by intent.
  • ❌ fix: fix bug — subject repeats the type. Say what was wrong.
  • ❌ Past tense (added button) — use imperative (add button).
  • ❌ Subject describing the file (update index.ts) — describe the behavior change.
  • ❌ Body restating the diff line-by-line — the body explains the reason, not the code.
  • ❌ Multiple unrelated changes in one commit — impossible to revert cleanly later.
  • ❌ Bare git add -A when unrelated files are dirty — stage by path.

Security

  • Security scanPassed, 93 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
94
Repository forks
12
7-day trend score
23

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Extension points

  • hookPre/post lifecycle hooks

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/filipebraida/adonisjs-starter-kit/git-commit/badge)](https://verified-skill.com/skills/filipebraida/adonisjs-starter-kit/git-commit)

Something wrong with this skill or its page? Tell us.