commit-staged

Conventional Commit from Staged Changes

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "commit-staged" with this command: npx skills add mubshrx/agent-skills/mubshrx-agent-skills-commit-staged

Conventional Commit from Staged Changes

When to Use

Apply this skill when the user asks to create a commit, write a commit message, or commit staged changes, especially when they mention conventional commits or a ticket number in the branch.

Workflow

  1. Multi-root workspace: which project?

The user often has multiple projects in a single VS Code/Cursor workspace (e.g. a .code-workspace with several folders). Each folder is usually its own git repo.

  • Do not run any commands to detect which project has staged changes.

  • If it's unclear which project to generate the commit for, ask the user at the start (before running any git commands). Use the AskQuestion tool when available, with the workspace folder names as options; otherwise ask in chat (e.g. "Which project should I use for this commit?" and list the folder names).

  • Only after the project is known, run git commands from that project's root (e.g. cd path/to/project && git ... or use the working_directory / cwd for that path).

  1. Get branch name and staged changes

git branch --show-current git diff --staged --stat git diff --staged

Run these from the chosen project root. Use the output to infer scope and ticket. If no changes are staged, tell the user to stage first (git add ).

  1. Extract ticket from branch name

Branch names often look like: PROJ-194-ui-mismatch-in-email-management , feature/JIRA-123-add-login , fix/ABC-456 .

  • Match the first segment that looks like PREFIX-NUMBER (e.g. PROJ-194 , JIRA-123 ). Common patterns: uppercase letters + hyphen + digits.

  • Use that as the scope in parentheses: (PROJ-194) , (JIRA-123) .

  • If no ticket pattern is found, omit the scope or use a short scope from the change (e.g. module or area).

  1. Choose conventional type

From the staged diff, pick one:

Type Use when

feat

New feature or user-facing capability

fix

Bug fix

chore

Build, tooling, deps, config, no app logic

docs

Documentation only

style

Formatting, whitespace, no logic change

refactor

Code change that is not a fix or feature

test

Adding or updating tests

perf

Performance improvement

Default to feat for new behavior, fix for defect fixes, chore for everything else when unclear.

  1. Write the subject line
  • Format: type(scope): imperative subject

  • Scope = ticket ID from branch (e.g. PROJ-194 ).

  • Subject: lowercase, imperative ("add" not "added"), no period at end, ~50 characters or less.

  • Example: feat(PROJ-194): fix email management UI mismatch

  1. Write the body (optional)
  • Add a body if the change needs explanation (what changed and why).

  • Put each item on its own line (no bullets); use newlines inside the body string.

  • Wrap long lines at ~72 characters.

  1. Output the git command (do not run it)

Output a copy-pastable git commit command for the user to run—do not execute git commit unless the user explicitly asks you to run it (e.g. "run it", "execute it", "commit for me"). Otherwise, only show the command so the user can review and run it themselves.

Use one -m for the subject; if there is a body, add a second -m with the body. Use real newlines inside the body string so each item is on a separate line. In a multi-root workspace, prefix with cd <project-path> && so the command runs in the chosen project, or tell the user to run it from that folder.

  • Subject only: git commit -m "type(scope): subject"

  • Subject + body (multiple items on separate lines): use one -m with newlines inside the quoted string.

Examples

Example 1

  • Branch: PROJ-194-ui-mismatch-in-email-management

  • Staged: Changes in email management modals and notification CC list UI.

git commit -m "feat(PROJ-194): align email management UI with design" -m "Update notification CC modals and list section to match specs Fix avatar and remitter sections styling"

Example 2

  • Branch: fix/PROJ-200-login-timeout

  • Staged: Increase auth timeout and retry logic.

git commit -m "fix(PROJ-200): increase login timeout and add retry" -m "Prevent session expiry during slow networks by extending timeout and retrying once on failure."

Example 3

  • Branch: chore-deps

  • No ticket in branch; staged: package.json and lockfile.

git commit -m "chore(deps): bump axios to 1.6.0"

Checklist

  • If multi-root and project unclear, ask user which project at the start (do not run commands to detect)

  • Read branch name and staged diff from the chosen project

  • Ticket/scope from branch (or omit if none)

  • Type chosen from content (feat/fix/chore/etc.)

  • Subject: type(scope): imperative , < ~50 chars

  • Body only if needed; one item per line; wrap at 72 chars

  • Output a copy-pastable git commit command (not just the message); do not run git commit unless the user explicitly asks to run it

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

gh-draft-pr

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

commit-staged

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

vercel-composition-patterns

React composition patterns that scale. Use when refactoring components with boolean prop proliferation, building flexible component libraries, or designing reusable APIs. Triggers on tasks involving compound components, render props, context providers, or component architecture. Includes React 19 API changes.

Repository Source
85.9K23Kvercel
Automation

vercel-react-native-skills

React Native and Expo best practices for building performant mobile apps. Use when building React Native components, optimizing list performance, implementing animations, or working with native modules. Triggers on tasks involving React Native, Expo, mobile performance, or native platform APIs.

Repository Source
60.3K23Kvercel