Official agent skill

Gitmoji

by github in github/awesome-copilot

Generates commit messages following the gitmoji convention (https://gitmoji.dev) — picks the right emoji for the intent of the change and writes a well-formed message.

OfficialMITAuto-check passedDevelopment

Install Gitmoji

skills CLI
$ npx skills add github/awesome-copilot --skill gitmoji -a claude-code

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

GitHub CLI
$ gh skill install github/awesome-copilot gitmoji --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/github/awesome-copilot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/gitmoji .claude/skills/gitmoji && 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
gitmoji
GitHub stars
40k
Token cost
~1.8k tokens
SKILL.md length
795 words
Files
2 (incl. references)
Skills in repo
417
Repo updated
First seen
Licence
MIT

At a glance

Generates commit messages following the gitmoji convention (https://gitmoji.dev) — picks the right emoji for the intent of the change and writes a well-formed message.

  • Works in 5 steps: Understand the Change → Identify the Dominant Intent → Pick Exactly One Emoji → …
  • Asked to write a gitmoji commit
  • SKILL.md covers When to Use This Skill, Message Format, How It Works and Edge Cases, plus 1 more section
  • Calls git

What it does

Gitmoji is an agent skill from github/awesome-copilot, published by the product's own GitHub organization. Generates commit messages following the gitmoji convention (https://gitmoji.dev) — picks the right emoji for the intent of the change and writes a well-formed message. Use when asked to "write a gitmoji commit", "add an emoji to my commit message", "which gitmoji should I use", "gitmoji this change", or when a project uses gitmoji-style commit messages. Works from a git diff, staged changes, or a plain description of the change. Generates the message only — does not run git commands.

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/gitmoji-reference.md`).

It sits in Development, covering Commit messages. It works with Git and GitHub. The repository describes itself as: Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot. The licence is MIT.

When your agent uses it

  • Asked to write a gitmoji commit
  • Add an emoji to my commit message
  • Which gitmoji should I use
  • Gitmoji this change

Example prompts

  • “write a gitmoji commit”
  • “add an emoji to my commit message”
  • “which gitmoji should I use”
  • “/gitmoji”

Workflow steps

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

  1. Understand the Change
  2. Identify the Dominant Intent
  3. Pick Exactly One Emoji
  4. Write the Message
  5. Output

What it can do on your machine

Read from SKILL.md and the folder at commit 727ff2e. 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

    Links to these hosts (documentation or services it may open):

    • gitmoji.dev
    • conventionalcommits.org

    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

Gitmoji loads about 1.8k tokens when it runs, and up to ~3k if it reads all its reference files. Until then it costs about 124 tokens; SKILL.md has 795 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~124
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3k

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 github/awesome-copilot at commit 727ff2e, republished under its MIT licence (© github). 795 words, ~1,777 tokens.

Download SKILL.mdSave it as .claude/skills/gitmoji/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
gitmoji
description
Generates commit messages following the gitmoji convention (https://gitmoji.dev) — picks the right emoji for the intent of the change and writes a well-formed message. Use when asked to "write a gitmoji commit", "add an emoji to my commit message", "which gitmoji should I use", "gitmoji this change", or when a project uses gitmoji-style commit messages. Works from a git diff, staged changes, or a plain description of the change. Generates the message only — does not run git commands.
license
MIT

Gitmoji

Generates commit messages that follow the gitmoji convention: every commit starts with an emoji that identifies the intent of the change at a glance. Given a diff, a list of staged files, or a plain description of a change, this skill picks the single most appropriate gitmoji and writes a concise, well-formed commit message around it.

This skill only generates the message — it never runs git commit or any other git command. The output is a copyable message for the user to use.

When to Use This Skill

  • User says "write a gitmoji commit", "gitmoji this change", or "add an emoji to my commit message"
  • User asks "which gitmoji should I use for this?"
  • User pastes a git diff or describes a change in a project that uses gitmoji-style commit history
  • User wants an expressive, scannable commit history using emojis

When not to use: if the project follows plain Conventional Commits (feat:, fix:, ...) without emojis, use the conventional-commit or commit-message-storyteller skill instead. If unsure which convention the project uses, ask the user to provide recent commit history (for example, the output of git log --oneline -10).

Message Format

The gitmoji specification:

<intention> [scope?][:?] <message>
  • intention — exactly one gitmoji expressing the goal of the commit
  • scope (optional) — the section of the codebase affected, in parentheses
  • message — a brief imperative explanation of the change

Examples:

✨ add multi-tenant support to the billing service
🐛 (auth) prevent token refresh loop on expired sessions
♻️ (api): extract pagination logic into shared helper
Emoji Style: Unicode vs Shortcode

Gitmoji supports two equivalent notations:

StyleExampleWhen to prefer
Unicode✨ add dark modeDefault — renders everywhere, shorter subject line
Shortcode:sparkles: add dark modePlatforms that render shortcodes (GitHub, GitLab) or teams that grep commit logs by code

Match the repository's existing history. If recent commits use :sparkles:-style shortcodes, generate shortcodes; otherwise default to unicode emojis.

How It Works

Step 1: Understand the Change

Work from whatever the user provides:

  1. A git diff — read it and identify what changed and why
  2. A list of staged/modified files — infer intent from file names and paths
  3. A plain description — use it directly

If the intent is genuinely ambiguous (e.g. "updated auth.js" could be a fix, a feature, or a refactor), ask one short clarifying question rather than guessing.

Step 2: Identify the Dominant Intent

Determine the primary purpose of the change. Common intents and their gitmojis:

EmojiShortcodeIntent
✨:sparkles:Introduce new features
🐛:bug:Fix a bug
🚑️:ambulance:Critical hotfix
📝:memo:Add or update documentation
♻️:recycle:Refactor code (no behavior change)
✅:white_check_mark:Add, update, or pass tests
⚡️:zap:Improve performance
🎨:art:Improve structure / format of the code
🔥:fire:Remove code or files
🔒️:lock:Fix security or privacy issues
⬆️:arrow_up:Upgrade dependencies
🔧:wrench:Add or update configuration files
💄:lipstick:Add or update the UI and style files
💥:boom:Introduce breaking changes
🚨:rotating_light:Fix compiler / linter warnings
🌐:globe_with_meridians:Internationalization and localization

This is only the most common subset — always consult references/gitmoji-reference.md for the full official list of 75 gitmojis before settling on one; a more specific emoji often exists (e.g. 🩹 for a trivial fix, ✏️ for a typo, 🚚 for a file move).

Show full SKILL.md (299 more words)Show less
Step 3: Pick Exactly One Emoji

Rules for ambiguous cases:

  • Specific beats generic — a typo fix is ✏️, not 🐛; moving files is 🚚, not ♻️; a trivial non-critical fix is 🩹, not 🐛
  • Tests: ✅ for adding/updating passing tests; 🧪 only for intentionally failing tests (e.g. TDD red step)
  • Fix vs hotfix: 🚑️ only for urgent production fixes; everyday bug fixes are 🐛
  • Security fix: 🔒️ wins over 🐛 when the bug is a security issue
  • Formatting-only changes: 🎨 for code structure/formatting; 💄 only for UI/style files (CSS, themes)
  • One emoji per commit — never stack emojis; if two intents feel equally dominant, see mixed changes below
Step 4: Write the Message
  • Imperative mood: "add", "fix", "remove" — not "added" or "fixes"
  • Keep the subject line under 72 characters including the emoji
  • Lowercase start, no trailing period
  • Add a scope in parentheses when the project's history uses scopes
  • Add a body (separated by a blank line) only when the why is not obvious from the subject
Step 5: Output

Produce the commit message in a copyable code block, followed by one line explaining why that gitmoji was chosen. Do not execute git commit.

Example output:

🐛 (auth) prevent token refresh loop on expired sessions

Expired sessions triggered a refresh that failed validation and
re-triggered itself, crashing the app. A recursion guard now aborts
the cycle and returns a clean 401.

Why 🐛: the change corrects incorrect runtime behavior — a bug fix, not urgent enough for 🚑️.

Edge Cases

SituationHow to Handle
Mixed changes (e.g. feature + refactor in one diff)Pick the emoji for the dominant intent, and suggest splitting into separate commits if the concerns are unrelated
Breaking changeUse 💥 as the intention and describe the break in the body
Revert⏪️ with a subject referencing the reverted commit
Merge commit🔀 merge branch '<name>' into <target>
Initial commit🎉 begin project
Work in progress🚧 with a clear note of what remains
No matching emoji feels rightRe-scan the full reference; if still nothing fits, fall back to the closest generic intent (✨, 🐛, or ♻️)

Quick Reference

bash
# Get your staged diff to paste into Copilot
git diff --staged

# Check which emoji style the repo already uses
git log --oneline -10

See references/gitmoji-reference.md for the complete official gitmoji list.

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

Files

SKILL.md and 1 other file (references) in skills/gitmoji of github/awesome-copilot.

  • SKILL.md
  • references/gitmoji-reference.md

Open the folder on GitHubat commit 727ff2e

Compare with similar skills

Gitmoji 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.

Gitmoji compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Gitmoji this skillgithub/awesome-copilot40k—~1.8kAutomated safety check: PassMIT
React Router Pull Request Creatorremix-run/react-router57k—~2.5kAutomated safety check: PassMIT
Verdaccio Pull Request Workflowverdaccio/verdaccio18k—~1.9kAutomated safety check: PassMIT
Draft Pull Request Creatorwordpress-mobile/WordPress-Android3.2k—~881Automated safety check: NotesGPL-2.0
Submit PRtisfeng/Easydict15k—~595Automated safety check: PassGPL-3.0
Create PREmiyaaaaa/HiveMind1.1k—~1.7kAutomated safety check: PassCustom licence

Similar skills

  • 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 yesterday
    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 yesterday
    DevelopmentAuto-check passed
  • Draft Pull Request Creator

    wordpress-mobile/WordPress-Android

    Commits and pushes current changes, writes a pull request title and body from the branch history and template, and opens a draft PR on GitHub after you approve it.

    3.2k GitHub stars~881 tokensUpdated today
    DevelopmentAuto-check: notes
  • Submit PR

    tisfeng/Easydict

    创建或复用当前 checkout 已提交变更的 GitHub PR,必要时推送任务分支。PR 审查使用 review-pr;仅本地提交使用 git-commit。

    15k GitHub stars~595 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Create PR

    Emiyaaaaa/HiveMind

    Create a GitHub pull request with gh pr create. An agent skill from Emiyaaaaa/HiveMind.

    1.1k GitHub stars~1.7k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Publishes a GitHub PR for the checked-out branch with a Conventional Commits style title, a description backed by commands run, and screenshots when the UI changed.

    5.9k GitHub stars~1.2k tokensUpdated 7 days ago
    DevelopmentAuto-check passed

More from github/awesome-copilot

All 417 skills in this repo
  • Acquire Codebase Knowledge

    github/awesome-copilot

    Official

    Maps an unfamiliar codebase into seven evidence-backed documents in docs/codebase/, using a scan script and templates, for onboarding or architecture write-ups.

    40k GitHub starsUsed in 1 repo~2.3k tokens
    Auto-check passed
  • Azure Architecture Autopilot

    github/awesome-copilot

    Official

    Designs Azure infrastructure from a natural-language description, or diagrams an existing resource group, then refines the design through conversation and deploys it with Bicep.

    40k GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Draw.io Diagram Generator

    github/awesome-copilot

    Official

    Generates, edits and validates draw.io files with correct mxGraph XML, covering flowcharts, architecture, sequence, ER and UML class diagrams.

    40k GitHub starsUsed in 1 repo~4.9k tokens
    Auto-check passed
  • Credit Risk Data Cleaning

    github/awesome-copilot

    Official

    Cleans raw credit data and screens variables before loan modeling, dropping unstable, noisy or redundant features and writing an Excel report of every step.

    40k GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Daily Focus Board

    github/awesome-copilot

    Official

    Builds a warm, browser-based daily focus board the user updates by talking to their agent, with Eisenhower priorities, a brain-dump box and kind not-today carryover.

    40k GitHub stars~3k tokensUpdated today
    Auto-check passed
  • Python Pypi Package Builder

    github/awesome-copilot

    Official

    End-to-end skill for building, testing, linting, versioning, and publishing a production-grade Python library to PyPI.

    40k GitHub starsUsed in 1 repo~4.6k tokens
    Auto-check passed

Works with

Categories

Questions about Gitmoji

What does Gitmoji do?

Generates commit messages following the gitmoji convention (https://gitmoji.dev) — picks the right emoji for the intent of the change and writes a well-formed message. Gitmoji is an agent skill from github/awesome-copilot, published by the product's own GitHub organization.dev) — picks the right emoji for the intent of the change and writes a well-formed message.

When should I use Gitmoji?

Gitmoji fits situations like: asked to write a gitmoji commit; add an emoji to my commit message; which gitmoji should I use; gitmoji this change.

How do I install Gitmoji in Claude Code?

Run `npx skills add github/awesome-copilot --skill gitmoji -a claude-code`. Or copy the skill folder (skills/gitmoji in github/awesome-copilot) into .claude/skills/gitmoji in your project. Claude Code loads it when a task matches its description.

How do I install Gitmoji in Codex?

Run `npx skills add github/awesome-copilot --skill gitmoji -a codex`. Or copy the skill folder (skills/gitmoji in github/awesome-copilot) into .agents/skills/gitmoji in your project. Codex loads it when a task matches its description.

Can I use Gitmoji 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 github/awesome-copilot --skill gitmoji -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/gitmoji, .gemini/skills/gitmoji, .github/skills/gitmoji and .opencode/skills/gitmoji in your project.

What does Gitmoji need to run?

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

Does Gitmoji access the network?

SKILL.md names 2 domains. As links in the text: gitmoji.dev and conventionalcommits.org. This is read from the text; nothing was executed.

Is Gitmoji 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 Gitmoji use?

Gitmoji is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Gitmoji use?

About 1.8k tokens (SKILL.md is roughly 7.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.2k tokens, read only when the agent opens those files.

What are the alternatives to Gitmoji?

Skills that share tags, products or a category with Gitmoji: React Router Pull Request Creator (remix-run/react-router, 57k stars), Verdaccio Pull Request Workflow (verdaccio/verdaccio, 18k stars), Draft Pull Request Creator (wordpress-mobile/WordPress-Android, 3.2k stars) and Submit PR (tisfeng/Easydict, 15k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Gitmoji?

github (a GitHub organization, an official publisher) maintains it in github/awesome-copilot, which has 39,748 GitHub stars. The repository holds 417 skills in this directory. The repository was last updated on October 7, 2026.

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