with one click
commit
// Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes or mentions "/commit".
// Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes or mentions "/commit".
Write and run fast direct mode tests for GenLayer intelligent contracts.
Use the GenLayer CLI to deploy, interact with, and debug intelligent contracts.
Validate GenLayer intelligent contracts with the GenVM linter.
Write and run integration tests against a GenLayer environment.
Write production-quality GenLayer intelligent contracts. Always pins concrete GenVM runner version hashes and never uses local-only test/latest runner aliases. Covers equivalence principles, storage rules, LLM resilience, and cross-contract interaction.
Interactive wizard to set up a GenLayer validator node on Linux.
| name | commit |
| description | Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes or mentions "/commit". |
| user-invocable | true |
| allowed-tools | ["Bash","Read","Grep","Glob"] |
| hooks | {"Stop":[{"type":"command","command":"task claude:validate-skill -- --skill commit"}]} |
Create standardized, semantic git commits using the Conventional Commits specification. Analyze the actual diff to determine appropriate type, scope, and message. Enforces project-specific rules: no AI attribution, no ticket references, no emojis.
task claude:validate-skill -- --skill commit<type>(<scope>): <subject>
<optional body - 1-2 sentences or omit>
| Type | Purpose |
|---|---|
feat | New feature |
fix | Bug fix |
docs | Documentation only |
style | Formatting/style (no logic) |
refactor | Code refactor (no feature/fix) |
perf | Performance improvement |
test | Add/update tests |
build | Build system/dependencies |
ci | CI/config changes |
chore | Maintenance/misc |
revert | Revert commit |
STRICTLY FORBIDDEN - Never include ANY of the following in commit messages:
Co-Authored-By: Claude, Co-Authored-By: GPT, or any AI nameCommits must appear as human-authored work. This is a strict project requirement.
When writing commit messages, consider if the change is changelog-worthy. This helps during PR review and release notes generation.
Important: The type alone doesn't determine this. Any type can be changelog-worthy depending on impact.
Focus on user/product impact:
Examples:
feat(plugins): add validator ban detection
fix(app): prevent duplicate notifications
docs: add API authentication guide
chore(deps): upgrade axios to fix security vulnerability
Focus on developer/process impact:
Examples:
chore(skills): add commit validation
test(plugins): add integration tests
ci: add parallel test execution
docs: update development setup instructions
# MUST check branch first - refuse to commit on main/master
BRANCH=$(git branch --show-current)
if [ "$BRANCH" = "main" ] || [ "$BRANCH" = "master" ]; then
echo "ERROR: Cannot commit directly to $BRANCH"
echo "Create a feature branch: git checkout -b <branch-name>"
# STOP - do not proceed
fi
# Check status first
git status --porcelain
# If files are staged, use staged diff
git diff --staged
# If nothing staged, use working tree diff
git diff
If nothing is staged, ask user what to stage:
# Stage specific files
git add path/to/file1 path/to/file2
# Stage by pattern
git add *.test.*
git add src/components/*
Never commit secrets (.env, credentials.json, private keys).
Analyze the diff to determine:
ALWAYS confirm before committing:
# Single line
git commit -m "<type>(<scope>): <description>"
# Multi-line with body (use HEREDOC)
git commit -m "$(cat <<'EOF'
<type>(<scope>): <description>
<body - 1-2 sentences explaining why>
EOF
)"
Good:
feat(plugins): add parallel worker support
Workers can now run concurrently with independent configs.
fix(skills): handle missing validation file gracefully
Bad:
chore(config): update configuration (vague - what update?)feat(api): improve API performance (vague - how?)docs(plans): add implementation plan (focus on file, not work)Before any commit operation, verify you're not on main:
BRANCH=$(git branch --show-current)
if [ "$BRANCH" = "main" ] || [ "$BRANCH" = "master" ]; then
echo "ERROR: Cannot commit directly to $BRANCH. Create a feature branch first."
exit 1
fi
See skill.yaml for patterns and procedure.
See sharp-edges.yaml for common pitfalls.