Skip to main content
cloudthinker chat -p submits a prompt to Anna and waits for the answer. Anna’s answer is the only thing on stdout, so the command drops straight into a pipe.

Send a prompt

cloudthinker chat -p submitting a run and printing Anna's answer
Progress, the run ID, and the continuation hint go to stderr. That split is what keeps the command pipeable:

Continue a conversation

Every terminal run prints continue_with=<conversation_id> on stderr. Pass that ID, or the run ID, to keep the thread:
The same conversation is visible in the web app through the web_url printed beside the hint.

Submit now, collect later

A long investigation does not need to hold your terminal. --no-wait returns as soon as the run is queued:
The JSON envelope returned by chat --no-wait
Collect the answer from any machine later:
A client-side timeout never cancels the run. --timeout bounds only how long the CLI waits; the run keeps going server-side and the CLI prints the chat status command that resumes it.

Machine-readable output

--json writes one envelope to stdout instead of the plain answer.

Exit codes

A pipeline can branch on the outcome without parsing text. chat status and chat ls are reads: they exit 0 whenever the fetch succeeds, whatever state the run itself is in.

Use it in CI

Give the job a token, keep stdout for the answer, and let the exit code decide the outcome:

Authentication

Give a pipeline a credential of its own

Reference

Every command, flag, variable, and exit code