> ## Documentation Index
> Fetch the complete documentation index at: https://phaseo.app/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# State and approval

> Pause Ruby agents for human decisions and continue application-owned state.

Use `human_review` for a general checkpoint. Approval-gated and manual tools populate `run.pause.pending_tool_calls` with exact call IDs.

Continue through `Agent#continue_run` with:

* `ToolDecision` values in approvals or rejections
* `ToolOutput` values for manual work
* `human_input` for a general review pause
* the prior run, or `run_id` with a state accessor

Decisions use exact call IDs, so concurrent calls to the same tool remain distinct. A compatible state object implements `load(run_id)` and `save(result)`.

## Related

* [Tools](./agent-sdk-tools)
* [Run controls](./agent-sdk-run-controls)
