Skip to main content

Configure coding agents

Choose a command trust mode

Choose how the local listener asks for approval before it runs a queued coding-agent command.

Trust controls when the local listener asks before it starts a backend-provided command. It is not a sandbox, permission boundary, or review of what the coding-agent program will do. Every approved command still runs with your local user permissions, and the coding-agent provider independently decides which tools require another prompt.

Run alterac-ai config trust from an initialized repository to review or change its project-local setting. New and older repository configurations use approve-changed by default.

Trust modes

ModeListener behavior
approve-changedAsk on first use and whenever the selector-resolved command snapshot changes. This is the recommended default.
always-allowStart backend-provided command templates without a local approval prompt.
approve-every-runAsk before every queued command run.

always-allow removes only the listener's launch-approval prompt. It does not grant provider tool permissions or guarantee unattended execution. alterac.ai launches the configured process but does not answer prompts or supervise the worker terminal.

If an unattended worker lacks required authority or input, it should add an actionable task comment when possible, stop safely, and leave the work run incomplete. Do not configure broader provider permissions merely to make always-allow appear unattended.

For either approval mode, inspect the incoming queued command and defer it when it is unexpected. Deferring does not launch the agent, does not change the prior approval baseline, and leaves the task Queued for a later poll.

What counts as changed

For approve-changed, the listener compares the exact selector-resolved command template before it expands {alterac-ai-message}. It records a SHA-256 digest and the most recently approved template for that agent name in ignored local approval state. A new work-run ID or later refinement to the centrally owned launch message does not trigger another prompt; a changed literal command or a different resolved selector variant does.

On first use, and when only a digest is available, there is no previous command text to compare. The prompt makes that clear. Approving saves the incoming snapshot as the next comparison baseline.

Waiting for input

When the listener needs your decision, it marks the run as awaiting local approval and continues polling while the prompt is open. The task remains Queued, so a Queued state does not necessarily mean the listener is stopped. Approve to start it or defer to leave it queued. Use Run the local task listener for the launch and recovery flow.