Agent skill

Commit

by zirkelc in zirkelc/ai-retry

Create a git commit with an auto-generated conventional commit message summarizing the changes.

MITAuto-check passedDevelopment

Install Commit

skills CLI
$ npx skills add zirkelc/ai-retry --skill commit -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install zirkelc/ai-retry commit --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/zirkelc/ai-retry.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/commit .claude/skills/commit && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
commit
GitHub stars
110
Token cost
~643 tokens
SKILL.md length
346 words
Files
1
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Create a git commit with an auto-generated conventional commit message summarizing the changes.

  • Works in 6 steps: Check for Changes → Read Untracked Files → Filter to Relevant Changes → …
  • Tasks that involve Commit messages
  • SKILL.md covers Repository Context, Step 1: Check for Changes, Step 2: Read Untracked Files and Step 3: Filter to Relevant…, plus 3 more sections
  • Calls git

What it does

Commit is an agent skill from zirkelc/ai-retry. Create a git commit with an auto-generated conventional commit message summarizing the changes. Optionally push to remote.

Its SKILL.md is about 640 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Commit messages. It works with Git. The repository describes itself as: Retries and fallbacks for the AI SDK. The licence is MIT.

When your agent uses it

  • Tasks that involve Commit messages

Example prompts

  • “/commit”

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Check for Changes
  2. Read Untracked Files
  3. Filter to Relevant Changes
  4. Draft Commit Message
  5. Stage and Commit
  6. Ask About Push

What it can do on your machine

Read from SKILL.md and the folder at commit 5a1ec4d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Commit loads about 643 tokens when it runs. Until then it costs about 32 tokens; SKILL.md has 346 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~32
When it runs · the whole SKILL.md, loaded when a task matches
~643

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from zirkelc/ai-retry at commit 5a1ec4d, republished under its MIT licence (© zirkelc). 346 words, ~643 tokens.

Download SKILL.mdSave it as .claude/skills/commit/SKILL.md (or your agent's skills folder).
name
commit
description
Create a git commit with an auto-generated conventional commit message summarizing the changes. Optionally push to remote.

Create Commit

Create a commit with an auto-generated message summarizing the relevant changes for the current task.

Repository Context

  • Working tree status: !git status
  • Unstaged changes: !git diff
  • Staged changes: !git diff --cached
  • Recent commits (style reference): !git log -5 --format='%h %s'

Step 1: Check for Changes

If there are no changes in the context above (nothing staged, unstaged, or untracked): stop and tell the user there's nothing to commit.

Step 2: Read Untracked Files

For untracked files shown in the status above, read them with the Read tool to understand their contents. Diffs already cover modified files.

Step 3: Filter to Relevant Changes

Evaluate each changed/untracked file against the apparent intent of the current task. Classify each as relevant or unrelated.

Mark a file as unrelated if it:

  • Belongs to a different feature or fix unrelated to the current task
  • Is an auto-generated artifact (lockfiles, build output, .cache/) not caused by this task
  • Appears accidentally modified (e.g. whitespace-only changes in unrelated files)

If unsure about any file, ask the user before proceeding:

"These files are also changed — are they part of this commit?

  • path/to/file1
  • path/to/file2"

Only carry the relevant files forward into Step 4.

Step 4: Draft Commit Message

Write a conventional commit message:

  • Type: feat:, fix:, chore:, refactor:, test:, docs:, etc.
  • Scope (optional): package name if changes are scoped to one package, e.g. feat(api):
  • Subject: concise summary of what changed and why (under 72 chars)
  • Body (if needed): additional context for complex changes, separated by a blank line

If multiple unrelated changes exist, suggest the user split them into separate commits.

Step 5: Stage and Commit

  1. Stage only the relevant files identified in Step 3 with git add <specific files> — never use git add -A
  2. Create the commit using a HEREDOC:
git commit -m "$(cat <<'EOF'
<type>(<scope>): <subject>

<optional body>
EOF
)"
  1. Run git status to verify the commit succeeded.

Step 6: Ask About Push

After a successful commit, ask the user: "Push to remote?"

  • If yes: check for upstream with git rev-parse --abbrev-ref @{upstream} 2>/dev/null, then git push -u origin HEAD (no upstream) or git push (has upstream)
  • If no: done

© zirkelc, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/commit of zirkelc/ai-retry.

Open the folder on GitHubat commit 5a1ec4d

Compare with similar skills

Commit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Commit compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Commit this skillzirkelc/ai-retry110—~643Automated safety check: PassMIT
React Router Release Notes Prepremix-run/react-router57k—~1.1kAutomated safety check: PassMIT
ToolJet Multi-Repo CommitToolJet/ToolJet41k—~1.3kAutomated safety check: PassAGPL-3.0
Git Workflow and Versioningaddyosmani/agent-skills103k2 repos~3.5kAutomated safety check: NotesMIT
React Router Pull Request Creatorremix-run/react-router57k—~2.5kAutomated safety check: PassMIT
Verdaccio Pull Request Workflowverdaccio/verdaccio18k—~1.9kAutomated safety check: PassMIT

Similar skills

  • React Router Release Notes Prep

    remix-run/react-router

    Polishes pending React Router change files before the versioning scripts run, and decides whether a long-form What's Changed section is warranted.

    57k GitHub stars~1.1k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Commits changes across ToolJet's root repo and its server/ee and frontend/ee submodules, writing messages from the diffs and updating submodule pointers in order.

    41k GitHub stars~1.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Git Workflow and Versioning

    addyosmani/agent-skills

    Sets git habits for every change: short-lived branches, atomic commits with descriptive messages, clean pull requests, plus versioning, tagging and changelogs for releases.

    103k GitHub starsUsed in 2 repos~3.5k tokens
    DevelopmentAuto-check: notes
  • React Router Pull Request Creator

    remix-run/react-router

    Packages finished React Router work into a draft pull request: branch, commit, push, a written PR body and the right GitHub labels.

    57k GitHub stars~2.5k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Takes a change through a verdaccio pull request: branch, local checks, changeset, title and body, labels, CI and review rounds, and ports to other release lines.

    18k GitHub stars~1.9k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Commits changes in the Saleor codebase and works through pre-commit hook failures from ruff, mypy, the GraphQL schema check and the migrations check.

    23k GitHub stars~575 tokensUpdated yesterday
    DevelopmentAuto-check passed

Works with

Categories

Questions about Commit

What does Commit do?

Create a git commit with an auto-generated conventional commit message summarizing the changes. Commit is an agent skill from zirkelc/ai-retry. Create a git commit with an auto-generated conventional commit message summarizing the changes.

When should I use Commit?

Commit fits situations like: tasks that involve Commit messages.

How do I install Commit in Claude Code?

Run `npx skills add zirkelc/ai-retry --skill commit -a claude-code`. Or copy the skill folder (.agents/skills/commit in zirkelc/ai-retry) into .claude/skills/commit in your project. Claude Code loads it when a task matches its description.

How do I install Commit in Codex?

Run `npx skills add zirkelc/ai-retry --skill commit -a codex`. Or copy the skill folder (.agents/skills/commit in zirkelc/ai-retry) into .agents/skills/commit in your project. Codex loads it when a task matches its description.

Can I use Commit in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add zirkelc/ai-retry --skill commit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/commit, .gemini/skills/commit, .github/skills/commit and .opencode/skills/commit in your project.

What does Commit need to run?

Going by SKILL.md and its folder, Commit needs the command-line tools its instructions call (git).

Does Commit access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Commit safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Commit use?

Commit is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Commit use?

About 643 tokens (SKILL.md is roughly 2.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Commit?

Skills that share tags, products or a category with Commit: React Router Release Notes Prep (remix-run/react-router, 57k stars), ToolJet Multi-Repo Commit (ToolJet/ToolJet, 41k stars), Git Workflow and Versioning (addyosmani/agent-skills, 103k stars) and React Router Pull Request Creator (remix-run/react-router, 57k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Commit?

zirkelc (a GitHub user) maintains it in zirkelc/ai-retry, which has 110 GitHub stars. The repository was last updated on September 30, 2026.

Source: zirkelc/ai-retry on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.