errandRun a coding agent from a chat channel, in a sandbox it cannot escape.
source

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.

codepointsnamemeans
U+23F3hourglass not doneaccepted, queued or running
U+2705white heavy check markthe turn it started completed
U+274Ccross markthe turn failed, or the message was rejected
U+23F9 U+FE0Fstop buttonthe turn was interrupted

Prefixes

Placed at the start of a line the daemon writes.

codepointsnamemeans
U+1F527wrencha tool call started
U+1F4ADthought balloonthe agent is thinking
U+2753question markthe agent is asking the user something
U+26A0 U+FE0Fwarning signdegraded state: shared workspace, backend gap, provider backoff
U+1F4E4outbox traya question about one artefact was sent to a cheaper model
U+1F50Celectric plugconnection or session lifecycle changed

In total 10 characters.