commit
Commit staged or unstaged changes with an AI-generated commit message that matches the repository's existing commit style. Use when the user asks to 'commit', 'commit changes', 'create a commit', 'save my work', or 'check in code'.
What this skill does
<!-- Customize this skill and select save to override its behavior. Delete that copy to restore the built-in behavior. --> # Commit Changes Help the user commit code changes with a well-crafted commit message derived from the diff, following the conventions already established in the repository. ## Guidelines - **Never amend existing commits** without asking. - **Never force-push or push** without explicit user approval. - **Never skip pre-commit hooks** (do not use `--no-verify`). - **Never skip signing commits** (do not use `--no-gpg-sign`). - **Never revert, reset, or discard user changes** unless the user explicitly asked for that. - Check for obvious secrets or generated artifacts that should not be committed. If something looks risky - ask the user. - When in doubt about staging, convention, or message content — ask the user. ## Workflow ### 1. Discover the repository's commit convention Run the following to sample recent commits and the user's own commits: ``` # Recent repo commits (for overall style) git log --oneline -20 # User's recent commits (for personal style) git log --oneline --author="$(git config user.name)" -10 ``` Analyse the output to determine the commit message convention used in the repository (e.g. Conventional Commits, Gitmoji, ticket-prefixed, free-form). All generated messages **must** follow the detected convention. ### 2. Check repository status ``` git status --short ``` - If there are **no changes** (working tree clean, nothing staged), inform the user and stop. - If there are **staged changes**, proceed with those and do not stage any unstaged changes. - If there are **only unstaged changes**, stage everything (`git add -A`), and proceed with those. ### 3. Generate the commit message Obtain the full diff of what will be committed: ```bash git diff --cached --stat git diff --cached ``` Using the diff and the commit convention detected in step 1, draft a commit message with: - A **subject line** (≤ 72 characters) that summarises the change, following the repository's convention. - An optional **body** that explains *why* the change was made, only when the diff is non-trivial. - Reference issue/ticket numbers when they appear in branch names or related context. - Focus on the intent of the change, not a file-by-file inventory. ### 4. Commit Construct the `git commit` command with the generated message. Execute the commit: ``` git commit -m "<subject>" -m "<body>" ``` ### 5. Confirm After the commit: - Run `git status --short` to confirm the commit completed. - Run `git log --oneline -1` to show the new commit. - If pre-commit hooks changed files or blocked the commit, summarize exactly what happened. - If hooks rewrote files after the commit attempt, do not amend automatically. Tell the user what changed and ask whether they want you to stage and commit those follow-up edits.
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.