.pi/agent/skills/work-commit/SKILL.md
Git commit message conventions. Used during implement phase when committing after each completed TODO.
npx skillsauth add popoffvg/dotfiles work-commitInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
<prefix>: <why this change exists>
| Prefix | When |
|--------|------|
| feat | New functionality, new behavior |
| fix | Bug fix — describe the bug, not the fix |
| doc | Documentation changes only |
| test | Adding or updating tests only |
| build | Build system, CI, dependencies |
| refactor | Code restructuring without behavior change |
The message describes why, not what.
❌ feat: add handleRefresh function — describes what was added
✅ feat: support token refresh on expired sessions — describes why
❌ fix: check for nil pointer in handler — describes the fix
✅ fix: crash when auth token is missing from request — describes the bug
❌ refactor: move code to utils — describes what
✅ refactor: isolate auth logic for reuse across endpoints — describes the goal
feat), not testEach TODO = one commit. Exception: if the user explicitly says "join", "merge", or "squash" multiple TODOs, combine them into one commit with a unified message covering all of them.
When squashing N commits on request:
git reset --soft HEAD~N
git commit -m "<prefix>: <unified why covering all N changes>"
The unified message must cover the full scope — do not just repeat the first TODO's message.
Eval checklist:
feat for a bug fix)?Test inputs:
Can change: prefix list, message examples, formatting rules Cannot change: imperative mood requirement, why-not-what principle, 72-char limit Min sessions before eval: 5 Runs per experiment: 3
testing
Use when the user asks to create test sets, enumerate scenarios, generate edge cases, or draft a coverage matrix before implementation.
testing
Use when the user asks to review, audit, score, or validate test sets for missed cases before execution or merge.
tools
Test harness plugins in isolation using tmux panes. Runs MCP servers, unit tests, typecheck, and Claude plugin loading. Use when user says "test plugin", "check plugin", "run plugin tests", "validate plugin", or names a specific plugin to test.
development
Guide for designing integration and e2e tests using BDD (Behavior-Driven Development) methodology with Cucumber-style Given/When/Then scenarios. Use when writing or reviewing tests for any service, API, or component. Language-agnostic — covers scenario structure, step notation, assertion principles, async patterns, and common anti-patterns.