·
10 commits
to main
since this release
Secret filtering, split commits, and a cleaner TUI. Several long-standing bugs fixed.
✨ Features
- Three-layer secret filtering — quill-commit now refuses to stage or send credentials to the model. Files are blocked by name (
.env,*.pem,*_rsa,credentials*…), by content (known API key patterns for OpenRouter, AWS, GitHub, Slack, Google), and at the staging level — only files that passed both checks are ever added. If your working tree contains nothing but blocked files, the watcher goes quiet with a single log message and waits. - Split commits — when a diff contains unrelated changes, the model can now return multiple commit groups. Each group is committed separately, keeping your history atomic without any manual intervention.
- Manual amend (
a) — pressaat any time to trigger an AI-assistedgit commit --amend. quill-commit merges your current changes into the last commit and rewrites the message to cover everything. - Error detail view (
ctrl+o) — when a pre-commit hook blocks a commit, the TUI now shows the first meaningful line of the error inline. Pressctrl+oto expand the full output alongside the model's suggested fix.
🐛 Fixes
- Fixed the delay unit: model-suggested delays were being treated as minutes instead of seconds, causing waits up to 60× longer than intended.
- Sensitive files (credentials, config containing keys) are now created with
0600permissions instead of0644. - Once a diff fails a commit hook, the watcher now remembers it and silently skips identical diffs on future ticks instead of retrying and failing again each cycle.
🔧 Maintenance
- The TUI log now shows only commits, errors, and quarantine warnings. Routine checks, delay countdowns, and model decisions no longer clutter it — those are reflected in the status bar.
log.txtnow includes error detail and uses proper severity levels (DEBUG/INFO/WARN/ERROR), making it useful for actual debugging.