Export a session transcript
Human-readable export of one session’s transcript, selected by content negotiation on the Accept header: text/markdown for reading, application/jsonl for one JSON entry per line greppable without Narya. This replaces the affordance of a file-based transcript format readable with less and grep. Works on archived sessions. Two independent content toggles select what the export carries, both off by default. Stripping is never silent: an omitted reasoning block leaves a line saying how many blocks were left out, and an omitted tool result leaves the tool it answered, whether it failed, and the byte count it would have carried — so a reader can tell “the agent ran nothing” from “you asked me not to show it”.
Path Parameters
The session's id.
Query Parameters
Carry the model's own reasoning blocks. Off by default: an export is normally read by a person following the conversation.
Carry the machine channels: what each tool answered, and what each background watcher printed. Off by default, and independent of includeReasoning — an audit of what the agent DID wants this and not the reasoning, and a study of how it THOUGHT wants the opposite. Both channels are text produced outside narya rather than conversation, which is why one parameter governs both; a monitor's NOTICES (started, exited, stopped, throttled) are narya's own sentences about a process and are always carried.
Response
The exported transcript in the negotiated format.
The transcript rendered as Markdown.

