Characters
Every character outside ASCII this system emits, and the one state each means. None is decoration, and using one for a state it does not name is a bug. Everything else, including every log line, is ASCII.
They are declared as codepoints rather than as glyphs, so the source stays ASCII and an editor that cannot render one cannot corrupt it.
Reactions
Placed on the sender's own message, tracking that message's fate. Exactly one is present at a time.
| codepoints | name | means |
|---|---|---|
U+23F3 | hourglass not done | accepted, queued or running |
U+2705 | white heavy check mark | the turn it started completed |
U+274C | cross mark | the turn failed, or the message was rejected |
U+23F9 U+FE0F | stop button | the turn was interrupted |
Prefixes
Placed at the start of a line the daemon writes.
| codepoints | name | means |
|---|---|---|
U+1F527 | wrench | a tool call started |
U+1F4AD | thought balloon | the agent is thinking |
U+2753 | question mark | the agent is asking the user something |
U+26A0 U+FE0F | warning sign | degraded state: shared workspace, backend gap, provider backoff |
U+1F4E4 | outbox tray | a question about one artefact was sent to a cheaper model |
U+1F50C | electric plug | connection or session lifecycle changed |
In total 10 characters.