An OpenCode plugin that automatically commits changes when your coding session becomes idle.
This plugin monitors your OpenCode session and automatically creates git commits when:
- The session goes idle (no active operations)
- There are uncommitted changes in your working directory
- A git repository exists (or can be initialized)
The commit message is intelligently extracted from the last assistant message in your conversation, making commits contextual and meaningful.
- Automatic Commits - Commits changes whenever your session becomes idle
- Smart Commit Messages - Extracts context from your last conversation to create meaningful commit messages
- Auto-initialize - Automatically initializes a git repository if one doesn't exist
- Respects .gitignore - Git handles ignored files automatically
- Conventional Commits - Uses
feat:orfix:prefixes based on message content
opencode plugin "@levent-kurt/git-autocommit@latest"Add to your .opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"plugin": [
"@levent-kurt/git-autocommit@latest"
]
}npm install @levent-kurt/git-autocommitThen add to .opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"plugin": [
"file:///path/to/node_modules/@levent-kurt/git-autocommit/dist/index.js"
]
}- When a
session.idleevent is triggered, the plugin checks for git changes - If changes exist, it fetches the last assistant message from your session
- Extracts the first line, sanitizes it, and uses it as the commit message
- Stages all changes with
git add . - Commits with
--no-verifyto bypass hooks
The plugin works out of the box with no configuration needed. Just install and it will start auto-committing.
- OpenCode with plugin support
- Node.js (for running the plugin)
- Git installed on your system
MIT