git-commit-best-practices — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited git-commit-best-practices (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Guide the creation of clear, meaningful Git commits that follow conventional commit standards and repository-specific conventions. Ensures commits are atomic, well-documented, and integrate with automated tooling (release-please, changelog generation).
$ARGUMENTS is "review-commits" or a commit range (e.g., HEAD~5..HEAD, main..HEAD), review existing commits and suggest improvements.$ARGUMENTS is a scope (paths or component), provide commit guidance for those changes.When reviewing commits, detect breaking changes by:
git log --format="%H%n%s%n%b" <range> (includes full body)BREAKING CHANGE: or BREAKING CHANGE in commit body (case-insensitive)BREAKING CHANGE: until:Closes #123, Fixes #456)git log --format=%B main..HEAD | grep -A 10 -i "BREAKING CHANGE"git log --format="%H%n%s%n%b%n---" <range> then parse each commit separately! after type/scope: feat!: breaking change<type>(<scope>): <subject>
<body>
<footer>feat: New feature (triggers minor version bump)fix: Bug fix (triggers patch version bump)docs: Documentation changes onlystyle: Code style changes (formatting, whitespace, no logic change)refactor: Code refactoring (no feature change or bug fix)perf: Performance improvementstest: Adding or updating testschore: Maintenance tasks (deps, config, build)ci: CI/CD changesbuild: Build system changesrevert: Revert a previous commitlimps, limps-headless) or component (cli, server, tools, resources, rlm, indexer)feat(limps,limps-headless): ...config, mcp, extensions, watcher (use when change is area-specific, not package-specific)BREAKING CHANGE: <description>Closes #123, Fixes #456, Related to #789Plan: NNNN-plan-name, Agent: 008feat(limps): add config migration utility
Adds utility to migrate config files between versions, handling
backward compatibility and preserving user settings.
Related to plan NNNN-plan-namefix(server): handle missing config gracefully
Previously, missing config files would crash the server. Now
returns helpful error message and exits cleanly.
Fixes #42refactor(config): restructure config schema
BREAKING CHANGE: Config file format changed from JSON to YAML.
Existing configs must be migrated using `limps config migrate`.
Migration guide: docs/config-migration.mdfeat(limps,limps-headless): add extension system
Adds extension loader and context system to both packages.
Extensions can register custom tools and resources.
Plan: NNNN-plan-name
Agent: 007docs: update CLAUDE.md with extension system details
Adds documentation for extension development and integration.feat(limps): ...feat: ... or feat(limps,limps-headless): ...Plan: NNNN-plan-nameAgent: 008-complex-parsingfeat(limps-headless): implement complex parsing logicAgent: 008-complex-parsingfeat → minor bump, fix → patch bumpBREAKING CHANGE: footer for major bumpsgit diff --cachednpm test (or workspace-specific: npm test --workspace <name>)npm run format:check (repo-specific command)git log -1 to verify formatgit commit --amend (before pushing)When reviewing commits (e.g., review-commits argument or commit range):
git log --format="%H%n%s%n%b%n---" <range> to get full commit messages<type>(<scope>): <subject>)BREAKING CHANGE: footer or ! in typeWhen reviewing commits, use this structure:
## Commit Review: <commit-range>
### Summary
- Total commits: X
- Format compliance: Y compliant, Z need improvement
- Breaking changes: Found in commits [list]
### Findings by Commit
#### Commit <hash>: <subject>
- ✅ Format: Conventional commit format
- ⚠️ Issues: [if any]
- 🔴 Critical: [if any]
- Suggestions: [specific improvements]
### Overall Recommendations
- [Action items]❌ Too vague: fix: update code ✅ Specific: fix(server): handle undefined config paths
❌ Past tense: feat: added new feature ✅ Imperative: feat: add new feature
❌ Too long subject: feat(limps): implement comprehensive configuration management system with validation and migration support ✅ Concise: feat(limps): add config validation and migration
❌ Multiple unrelated changes: One commit with formatting + feature + test ✅ Separate commits: One for formatting, one for feature, one for test
❌ Missing context: fix: bug fix ✅ With context: fix(indexer): prevent SQL injection in search queries
When providing commit guidance:
## Suggested Commit Message
<type>(<scope>): <subject>
<body>
## Rationale
- Why this type/scope
- What makes it atomic
- Related items (issues, plans, agents)
## Checklist
- [ ] Subject is imperative and clear
- [ ] Scope is appropriate
- [ ] Body explains context (if needed)
- [ ] Footer references issues/plans (if applicable)
- [ ] Commit is atomic
- [ ] Tests passgit commit with message over -m for complex commits (opens editor)git commit --amend to fix commit messages before pushinggit rebase -i to clean up commit history (before pushing)revert: <original-subject> format: revert: feat(limps): add feature~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.