pi_reply
Resume an interrupted or idle session with a follow-up prompt, preserving prior context and avoiding a restart. Works for timed-out or cancelled turns.
Instructions
Send a new turn to an existing pi session that is not executing right now — including one that timed out or was cancelled: the session survives, so resume it here instead of restarting with pi. pi still has its prior turns (but never this conversation), so the follow-up can be short. Survives restarts of this server. For a turn still running under 'rpc', use pi_send instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | Absolute path override. Defaults to the directory where the session started. | |
| model | No | Model pattern or id, e.g. 'sonnet', 'bifrost/minimax/MiniMax-M3', 'provider/id:thinking'. Defaults to pi's own settings; pi_models lists valid values. | |
| prompt | Yes | Follow-up message for this session. | |
| session | Yes | Session id from a [session: <id>] prefix, or from pi_sessions. | |
| thinking | No | Thinking level. No-op on models without thinking support (check pi_models). Defaults to pi's own settings. | |
| transport | No | Usually omit. The default 'rpc' keeps pi up, so a running turn can be steered or aborted with pi_send. 'print' runs one process per turn that cannot be reached while it works. | |
| timeout_ms | No | Usually omit — the server default is generous. Override only when the task's real size demands it. A run killed at the deadline is not lost: it still returns its session id and is resumable with pi_reply. |