agentleFS
agentconfigagentconfig/agentconfig.org/.github/skills/semantic-commit/SKILL.md

semantic-commit

Skill7 starsChanged 3 months agoISCView on GitHub

Generate semantic commit messages following conventional commit format for agentconfig.org. Use when creating commits, reviewing staged changes, or when the user asks for help with commit messages.

4 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

12 rules. 0 are common, 12 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 4 edited versions we read keep these.

  • 12

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Create clean, semantic git commits following strict commit discipline.

    line 8
  2. Distinctive:

    Prefer multiple small commits over one large commit.

    line 60
  3. Distinctive:

    Use imperative mood: "add", "fix", "update" (not "added", "fixes")

    line 64
  4. Distinctive:

    No period at the end

    line 66
  5. Distinctive:

    Only intended files are staged

    line 74
  6. Distinctive:

    No debug code or console.logs (unless intentional)

    line 75
  7. Distinctive:

    When asked to commit:

    line 79
  8. Distinctive:

    Unstage if needed: - If changes span multiple features, commit separately

    line 83
  9. Distinctive:

    Verify: - Run lint, typecheck, and tests

    line 85
  10. Distinctive:

    Commit: only after verification passes

    line 86
  11. Distinctive:

    When changes span multiple areas:

    line 111
  12. Distinctive:

    If not, use the most significant scope

    line 113

“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Semantic Commit

Create clean, semantic git commits following strict commit discipline.

Commit Format

<type>(<scope>): <description>

[optional body]

[optional footer(s)]

Types

TypeWhen to Use
featNew feature or functionality
fixBug fix
docsDocumentation changes only
styleFormatting, whitespace (no code logic change)
refactorCode restructuring without behavior change
testAdding or updating tests
choreMaintenance, configs, dependencies

Scopes (Project-Specific)

Common scopes for agentconfig.org:

  • file-tree - FileTree component/visualization
  • cards - PrimitiveCards component
  • comparison - ProviderComparison component
  • hero - Hero section
  • navigation - Navigation component
  • theme - ThemeProvider, ThemeToggle, dark/light mode
  • data - Data files in site/src/data/
  • e2e - Playwright tests
  • skills - Skill files in .github/skills/

Rules

1. Atomic Commits

Each commit must represent ONE logical change. If you're tempted to use "and" in your description, split it into multiple commits.

# Bad
feat(ui): add file tree component and update navigation

# Good - Two separate commits
feat(file-tree): add collapsible tree node component
fix(navigation): update scroll offset for new header

2. Minimize Files

Prefer multiple small commits over one large commit. Ask: "Can this be split further?"

3. Clear Descriptions

The description should complete: "This commit will..."

  • Use imperative mood: "add", "fix", "update" (not "added", "fixes")
  • Be specific but concise
  • No period at the end

4. Pre-Commit Verification

Before committing, verify:

  1. bun run lint passes
  2. bun run typecheck passes
  3. bun run test passes
  4. Only intended files are staged
  5. No debug code or console.logs (unless intentional)

Workflow

When asked to commit:

  1. Review changes with git status and git diff --staged
  2. Assess scope - Determine if this should be one or multiple commits
  3. Unstage if needed - If changes span multiple features, commit separately
  4. Write message following the format
  5. Verify - Run lint, typecheck, and tests
  6. Commit only after verification passes

Good Examples

feat(file-tree): add TreeNode component with expand/collapse
chore(deps): add @radix-ui/react-collapsible
test(navigation): verify smooth scroll to sections
fix(theme): use correct tan background in light mode
refactor(hooks): extract theme logic to useTheme hook
docs(readme): add development setup instructions

Bad Examples

update stuff                           # Too vague
feat: add everything                   # Too broad
WIP                                    # Incomplete work
fix(ui): fixed the bug                 # Past tense, vague
feat(tree): Add tree. And cards.       # Multiple changes, period

Multi-File Commits

When changes span multiple areas:

  1. Can this be split into separate commits?
  2. If not, use the most significant scope
  3. List additional changes in the commit body
feat(file-tree): add expand/collapse functionality

Also updates:
- TreeNode component styling
- FileTree section layout

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.