Documentation
¶
Overview ¶
Package announce decides how loudly Logos says what it just did.
The problem it solves is a product one, not a technical one. Everything Logos does happens next to somebody else's work: an agent stores a fact in the middle of a refactor, a checkpoint lands as a session closes. Done silently, all of it is invisible, and a tool whose work is invisible is one users assume is broken — they stop trusting it long before they can say why.
Done too loudly it is worse. A banner on every single call trains people to skip our output entirely, and then the messages that matter — a write that failed, a queue nobody is draining — go by unread with all the rest.
So: a short marked receipt on the things a person would want to know about, nothing on the rest, and a switch for anyone who disagrees.
LOGOS_ANNOUNCE=off say nothing extra LOGOS_ANNOUNCE=quiet the facts, without the marker LOGOS_ANNOUNCE=on the default: marker plus facts
The environment variable is checked on every call rather than cached. These are long-lived server processes, and a setting you have to restart to change is one people give up on instead.
Index ¶
Constants ¶
const Env = "LOGOS_ANNOUNCE"
Env is the variable that overrides the stored setting.
const File = ".brain/announce"
File is where `brain announce` stores a persistent choice, relative to the vault. A file rather than a shell export because the people most annoyed by the receipts are running Logos inside an editor, where there is no shell to export from.
const Marker = "✓ Logos"
Marker leads every receipt. One glyph and one word, chosen so a person scanning a transcript can find our lines without reading them, and so a script can grep for them.
Variables ¶
This section is empty.
Functions ¶
func At ¶
At is Say with the level already resolved, for callers making several receipts in a row who should not re-read the setting for each.