Add make-commit skill and AI commit documentation
- New /commit command in OpenCode - make-commit skill for AI-aware commits - AI.md documentation
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
description: Make a git commit, asking if it was by the user or AI
|
||||||
|
---
|
||||||
|
|
||||||
|
skill name=make-commit $1
|
||||||
@@ -0,0 +1,85 @@
|
|||||||
|
---
|
||||||
|
name: make-commit
|
||||||
|
description: >
|
||||||
|
Make a git commit, asking if it was by the user or AI. User commits use git
|
||||||
|
config for both committer and author. AI commits use git config for committer
|
||||||
|
but set author to AI Bot <ai@local>.
|
||||||
|
license: GPL-3.0
|
||||||
|
metadata:
|
||||||
|
author: riyyi
|
||||||
|
version: "1.0"
|
||||||
|
---
|
||||||
|
|
||||||
|
Make a git commit, distinguishing between user and AI contributions.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Steps**
|
||||||
|
|
||||||
|
1. **Ask user if this commit is by them or by AI**
|
||||||
|
|
||||||
|
Use the **question tool** to ask:
|
||||||
|
> "Was this commit made by you or by AI?"
|
||||||
|
|
||||||
|
Options:
|
||||||
|
- "By me" - User made the commit
|
||||||
|
- "By AI" - AI made the commit
|
||||||
|
|
||||||
|
2. **Check for commit message**
|
||||||
|
|
||||||
|
If the user did NOT provide a commit message, generate one from staged changes:
|
||||||
|
```bash
|
||||||
|
git diff --staged --stat
|
||||||
|
```
|
||||||
|
Create a reasonable commit message based on the changes.
|
||||||
|
|
||||||
|
**Capitalization rule**: Commit message should start with a capital letter,
|
||||||
|
unless it refers to a tool or project that explicitly uses lowercase as its
|
||||||
|
name (e.g., "go", "npm", "rustc").
|
||||||
|
|
||||||
|
3. **Show commit message and confirm**
|
||||||
|
|
||||||
|
Display the commit message to the user.
|
||||||
|
|
||||||
|
Use the **question tool** to ask:
|
||||||
|
> "Is this commit message okay, or would you like to make tweaks?"
|
||||||
|
|
||||||
|
Options:
|
||||||
|
- "Looks good" - Proceed with this message
|
||||||
|
- "Make tweaks" - User will provide a new message
|
||||||
|
|
||||||
|
**If user wants tweaks**: Ask them for the new commit message.
|
||||||
|
|
||||||
|
4. **Get git user config**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git config user.name
|
||||||
|
git config user.email
|
||||||
|
```
|
||||||
|
|
||||||
|
5. **Make the commit**
|
||||||
|
|
||||||
|
Use the commit message provided by the user.
|
||||||
|
|
||||||
|
**If by user:**
|
||||||
|
```bash
|
||||||
|
git commit -m "<message>"
|
||||||
|
```
|
||||||
|
(Uses git config user as both committer and author)
|
||||||
|
|
||||||
|
**If by AI:**
|
||||||
|
```bash
|
||||||
|
git -c user.name="<git-config-name>" -c user.email="<git-config-email>" commit -m "<message>" --author="AI Bot <ai@local>"
|
||||||
|
```
|
||||||
|
(Uses git config for committer, but sets author to AI Bot)
|
||||||
|
|
||||||
|
6. **Show result**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git log -1 --oneline
|
||||||
|
```
|
||||||
|
|
||||||
|
**Output**
|
||||||
|
|
||||||
|
- Show the commit hash and message
|
||||||
|
- If AI commit, mention that the author was set to "AI Bot <ai@local>"
|
||||||
@@ -4,3 +4,7 @@
|
|||||||
|
|
||||||
First start the background process with `ollama serve`.
|
First start the background process with `ollama serve`.
|
||||||
Then open `opencode` run the command `ollama launch opencode`.
|
Then open `opencode` run the command `ollama launch opencode`.
|
||||||
|
|
||||||
|
## Activate skill explicitly
|
||||||
|
|
||||||
|
skill name=make-commit
|
||||||
|
|||||||
Reference in New Issue
Block a user