Motivation
Currently, AI agents in a repository can make autonomous changes without user confirmation. For many use cases (production systems, learning environments, safety-critical code), users want to review and approve changes before execution.
This is especially important for:
- E-commerce sites where breaking changes affect customers
- Learning/experimentation with AI tools
- Any system where human oversight is required
Proposal
Create an approval-gate module that:
- Intercepts proposed changes - Before any modification, the module presents the proposal to the user
- Shows proposal details - What, why, files affected, risk level
- Waits for user decision - Approve, Reject, or Request More Info
- Logs decisions - Maintains history of all approvals/rejections
Interface
# List pending proposals
sz approval list
# Approve proposal #1
sz approval approve 1
# Reject proposal #2
sz approval reject 2
# Configure mode
sz config set approval.mode approve
Configuration Options
| Mode |
Behavior |
manual |
No automatic execution |
approve |
Propose and wait for approval |
auto-low |
Auto-apply low-risk changes |
auto-all |
All automatic (dangerous) |
Module Structure
modules/approval-gate/
module.yaml
entry.sh
approve.sh
templates/proposal.md
Additional Features
- Risk assessment (low/medium/high)
- Notification before changes
- Integration with bus for other modules
- Configurable approval channels
Interested in collaborating on this? I'd be happy to submit a PR once there's agreement on the spec.
Motivation
Currently, AI agents in a repository can make autonomous changes without user confirmation. For many use cases (production systems, learning environments, safety-critical code), users want to review and approve changes before execution.
This is especially important for:
Proposal
Create an
approval-gatemodule that:Interface
Configuration Options
manualapproveauto-lowauto-allModule Structure
Additional Features
Interested in collaborating on this? I'd be happy to submit a PR once there's agreement on the spec.