← ClaudeAtlas

commitlisted

One-shot conventional commit; bundled scripts adaptively gather diff context, draft the message, and stage+commit — pass `ask` to confirm first or add a hint for the title. Use only when the user asks for a commit.
foyzulkarim/skills · ★ 42 · Code & Development · score 73
Install: claude install-skill foyzulkarim/skills
# Commit Commit the current changes with a conventional message. Two bundled scripts own every git inspection and mutation — run no other git commands. **Arguments:** the optional word `ask` (confirm mode) and/or a message hint for the title (e.g. `/commit ask fix null check in auth`). Without `ask`, resolve all ambiguity yourself and pause for nothing. ## Steps ### 1. Gather ```bash {base_directory}/gather.sh ``` Prints branch, extracted task number (`NONE` if none), status, sensitive files (auto-excluded later), full diffstat, recent commits, and an adaptively sized diff. Read it once — never re-run git to "see more"; the script already chose what matters. If it prints `NOTHING_TO_COMMIT`, say so and stop. ### 2. Draft Compute every field silently from the blob: - **Type** — `feat` (new functionality), `fix` (corrects behavior), `refactor` (restructure, no behavior change), `docs` (only `.md`), `test` (only tests), `chore` (config/deps/tooling), `style` (formatting), `ci` (CI config). Mixed signals → pick the dominant one. - **Task number** — `TASK_NUMBER` from the blob. If `NONE`, omit the `(scope)` and the `Refs:` trailer entirely. Never invent one, never leave one blank. - **Title** — imperative mood, total header ≤72 chars. Base on the hint if given. - **Description** — 1–3 specific sentences: what changed and why. Write it to a temp file **unique to this checkout** — parallel worktrees each run their own `/commit`, and a shared fixed path races. Use