원클릭으로
smart-commit
Create conventional commits in production context with strict validation, tests, linters, and confirmation.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Create conventional commits in production context with strict validation, tests, linters, and confirmation.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | smart-commit |
| description | Create conventional commits in production context with strict validation, tests, linters, and confirmation. |
| tools | Bash, AskUserQuestion |
smart-commitCreate conventional commits in a production context. This skill enforces tests, linters, commit conventions, and safety checks.
All commits must pass before being accepted.
git status --short
git status --porcelain | grep -E '.(env|key|pem|secret|password)$|credentials'
just check
Based on changed files, recommend:
Draft a suggested commit title (imperative, English) and compute its character count. Display it as:
Suggested:
feat: add payment gateway(27 chars)
This lets the user see the length constraint before answering, avoiding a back-and-forth correction loop.
Use AskUserQuestion to get:
domain, feature, ci) — leave blank for no scopefeat/fix titles are user-facing. Only feat and fix titles reach the generated CHANGELOG.md (release.py's Added/Fixed sections), which some projects render verbatim in an in-app "What's new". Write the title's description as a plain user-visible outcome — no rule IDs/trigrams (REF-010), no internal jargon or abbreviations. Push the technical why into the body. (The conventional-commit scope is separate and fine.) Titles for other types (chore, refactor, docs, test, ci) don't reach the changelog and may stay technical.BREAKING CHANGE: is ignored toward the 5-line limit. Co-Authored-By: is forbidden (blocked by the commit-msg hook). Refs: (e.g. Refs: #123) is allowed and counts toward the 5 lines.feat, fix, docs, test, chore, refactor, ci! after the type (e.g. refactor!: drop foo); the release script will major-bump the versionBREAKING CHANGE: footer lines excluded from count)Display the full formatted commit title (and body if provided) as plain text in the chat, then ask the user to confirm:
Ready to commit:
type(scope): messageProceed?
Use AskUserQuestion with a Yes / Cancel option. Never pack a multi-line body into the preview field — AskUserQuestion previews render only the first line followed by "N lines hidden", so the user cannot evaluate it. Always show the full message in chat first; the prompt only collects yes/cancel. If the user cancels, stop and do not commit.
Stage only the relevant files identified in step 1 (never use git add -A — it can accidentally include sensitive or unintended files):
git add <file1> <file2> ...
# Without scope:
git commit -m "feat: add payment gateway"
# With scope:
git commit -m "feat(billing): add payment gateway"
Format: type: message (no scope) or type(scope): message (with optional scope).
git log -1 --oneline
just check) before committingtype: message or type(scope): messagefeat/fix titles are user-facing — only they reach the CHANGELOG; write them as plain outcomes (no rule IDs, trigrams, or internal jargon), technical detail goes in the bodygit add -A — stage files explicitly by nameSurveys pending work across TODOs, planning docs, unfinished feature plans, open spec questions, in-flight git work, and open GitHub issues, then returns a value/effort table with a recommended next action. Use at session start to triage what to work on, especially after a gap when context has faded.
After a kit sync, verifies every entry in `.claude/kit-manifest.txt` is on disk and reconciles `CLAUDE.md` against `.claude/kit-tools.md` — surfacing sync gaps, drift, gaps, and redundancies. Proposes a CLAUDE.md patch the user reviews and applies manually.
Interactive spec writer for new features. Interviews the user to understand the feature (even if vague), reads the existing domain, then produces docs/spec/{feature}.md with structured TRIGRAM-NNN business rules and an optional UX draft. For new features only — not for documenting existing code.
Captures and commits visual proof screenshots for any `.tsx` / `.css` change. Generates a full preview for every component state (idle/loading/results/empty/error) in both light and dark mode, captures with Playwright via `scripts/visual-proof-capture.mjs`, and reports any console errors found. Auto-discovers project config on first run.
Pre-release validator for kit artifacts. Checks downstream-readiness of agents/skills (no kit-centric language, correct paths), script quality, and cross-component coherence. Use before releasing kit updates to downstream projects.
Audit the project for structural simplification — fewer lines, methods, and unnecessary code — without touching architecture or DDD structure. Coverage report is mandatory; refuses to proceed without one. Read-only; produces a prioritized report for human review.