# Approvals

> Have a person approve what an agent does before it happens.

An agent can stop and wait for a person: before it calls a tool that changes something, or once a conversation runs long. The run waits (its status is `suspended`) until a reviewer decides, then carries on from where it stopped. A flow with that agent as a step waits with it.

- [Ask before a tool runs](https://docs.kindgi.com/v0.1.10/guides/approvals/ask-before-a-tool-runs.md): turn approval gates on in an agent.
- [Decide an approval](https://docs.kindgi.com/v0.1.10/guides/approvals/decide-an-approval.md): register reviewers, find what waits, and decide it from the CLI or your app.
- [Approvals reference](https://docs.kindgi.com/v0.1.10/guides/approvals/approvals-reference.md): roles, an approval's fields, the decisions and their codes, deadlines, and the console's Inbox.
- [Ask before a long conversation continues](https://docs.kindgi.com/v0.1.10/guides/approvals/ask-after-n-turns.md): a gate on the number of turns.
- [Set approval rules for every agent](https://docs.kindgi.com/v0.1.10/guides/approvals/approval-rules-for-every-agent.md): a tenant policy that agents can't loosen.
- [Ask and approve in WordPress](https://docs.kindgi.com/v0.1.10/sites/wordpress.md): a store's staff ask the project's agents and decide approvals in wp-admin, each as themselves.

The examples use a pack named `acme-ops` with the sample template's agent and tools, plus `acme-ops.post-update`, a tool that posts to a status page. They run on `kindgi dev` with no model key: `dev-echo` answers, and it calls the agent's first tool.
