commit
SkillFiles & storageStage all changes and commit with appropriate message, showing changed files and edits. Use when you need to create a git commit.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the commit skill
What this skill tells your AI
The instructions your AI receives, as published by saffron-health/opencode-gui in .agents/skills/commit/SKILL.md and read by ahel’s review.
Automatically stage all changes and commit with an appropriate message based on the changes made. Shows a summary of what files were changed and how.
Steps
-
Show current status before staging:
git status --porcelain -
Stage all changes:
git add . -
Get changed files for analysis:
git diff --cached --name-only -
Get detailed change summary:
git diff --cached --stat -
Analyze changes to create commit message:
- Read the changed files to understand the scope of changes
- Look for spec files in
specs/directory that might be related to these changes - Focus on the main functional changes rather than minor refactoring
- Create a concise, descriptive commit message following conventional commit format
- Consider these patterns:
feat: add new featurefix: resolve bug in componentrefactor: reorganize utility functionsdocs: update documentationchore: update dependencies
-
Commit the changes:
git commit -m "Generated commit message" -
Show commit summary:
git show --stat --oneline HEAD
Analysis Guidelines
Commit Message Format
- Use conventional commit format:
type: description - Keep it concise and descriptive
- Focus on what the change accomplishes, not how it was done
- Use imperative mood: "add" not "added"
Change Analysis Priority
- Spec files: New/modified files in
specs/indicate major features - Core functionality: API endpoints, UI components, database schemas
- Configuration: Build, dependency, or environment changes
- Documentation: README, AGENT.md, or other doc updates
- Refactoring: Code reorganization without functional changes
Example Output
Files staged for commit:
M apps/web/src/components/TaskList.tsx
A specs/task-filters.md
M packages/ui/src/Button.tsx
D apps/web/src/old-component.tsx
Changes summary:
apps/web/src/components/TaskList.tsx | 15 ++++++++++++---
specs/task-filters.md | 42 +++++++++++++++++++++++++++++++++++++++
packages/ui/src/Button.tsx | 8 ++++----
apps/web/src/old-component.tsx | 23 -----------------------
4 files changed, 58 insertions(+), 26 deletions(-)
Committed: feat: add task filtering functionality
[main abc1234] feat: add task filtering functionality
4 files changed, 58 insertions(+), 26 deletions(-)
Error Handling
- If no changes to commit: "No changes to commit"
- If commit fails: Show the specific git error
- If unable to analyze changes: Use generic commit message with timestamp
File Status Symbols
When showing git status, these symbols indicate:
M= ModifiedA= Added (new file)D= DeletedR= RenamedC= Copied??= Untracked
Signals
- GitHub stars
- 58
- Forks
- 20
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
commit-saffron-health- Source
- github.com/saffron-health/opencode-gui