saphan say
Composes one validated statement for the owner — an alert, an open item, or an explicit 'nothing to report' — in the owner-block format that a run's status channel carries; nothing is recorded in the
Composes one validated statement for the owner — an alert, an open item, or an explicit "nothing to report" — in the owner-block format that a run's status channel carries; nothing is recorded in the store. Without --channel the block is printed; with it, the block is appended to an existing channel file and checked again after writing, and the append is undone if the file no longer reads back as exactly one more statement. Every field is plain text; a field that would break the block's structure is refused as owner-block-say-field-opens-envelope. saphan grammar owner-block prints the full vocabulary.
| flag | type | default | what it does |
|---|---|---|---|
--abstract | string | The summary that is always shown, at most five lines. | |
--after | string | What happens next after this statement. | |
--body | string | A reference to longer context; never paste secret content here. | |
--channel | string | Append the block to this existing file instead of printing it; the path is not checked to be the stream's channel, and nothing is left written if the block is refused. | |
--id | string | An optional stable identifier for the statement. | |
--kind | string | What the statement is: alert, open or none. |
Global options apply to every command — see Every command.
saphan run
Starts one process — an AI coding agent or any executable — under a mandate and records it as a run: the model, effort, budget, time limit, working directory and permissions are fixed up front, enforc
saphan scratch
Inspects and frees the one scratch directory where Saphan Studio keeps every temporary directory it makes on a host, $HOME/.saphan/scratch, with one entry per kind, stream and run.