Skip to content

Autopilot

import { Aside } from ‘@astrojs/starlight/components’;

Autopilot controls how much an agent can do on your behalf without pausing for approval. All settings are off by default — Ptah asks before touching anything that writes to disk or runs a shell command.

Settings → Autopilot, or autopilot block in ~/.ptah/settings.json:

{
"autopilot": {
"enabled": false,
"autoApproveReads": true,
"autoApproveWrites": false,
"autoApproveShell": false
}
}
ToggleEffect when enabled
enabledMaster switch. When false, every other toggle is ignored and all actions prompt.
autoApproveReadsAllow Read, Glob, and Grep without prompting. Safe for almost all workflows.
autoApproveWritesAllow Write and Edit to workspace files without prompting.
autoApproveShellAllow Bash / PowerShell commands without prompting. High risk.

Each chat has an “Autopilot” toggle in its header. It inherits the global setting but can be disabled for a single session — useful when you want tighter oversight on a production workspace.

Approval prompts are themselves hooks. You can override the behavior per-workspace by adding a permissions block to .claude/settings.json:

{
"permissions": {
"allow": ["Read", "Grep", "Glob"],
"deny": ["Bash(rm*:*)"]
}
}

Workspace permissions are merged with global autopilot settings. A deny rule always wins over an autopilot allow.