When the harness needs permission to act — run a tool, write a file — it emits anDocumentation Index
Fetch the complete documentation index at: https://docs.karta.sh/llms.txt
Use this file to discover all available pages before exploring further.
input_required event and the
turn pauses. You resolve it with a decision, and the turn resumes.
The input_required event
pending_input until resolved.
Resolve it
PUT /v1/sessions/{session_id}/inputs/{request_id}
One of
approve_once, approve_session, or deny.Response 200
events array carries the turn’s continuation after your decision; the
session reflects the cleared pending_input.
Decisions
| Decision | Effect |
|---|---|
approve_once | Allow this one action; prompt again next time. |
approve_session | Allow this and similar actions for the rest of the session. |
deny | Refuse the action; the agent continues without it. |
Default behavior
How aggressively a turn prompts is governed by the session’spermission_mode
and the input_required_policy config — an
autonomous runtime maps to approve_session, while interactive prompts. In
the SDK, resolve and continue streaming with
session.stream_pending_input(...).