Brand Memory
The account's durable knowledge - voice, positioning, product facts - and how an agent reads and edits it.
Brand Memory is the account's durable knowledge: who the business is, what it sells, how it sounds, what it has already said. It is a small file tree, not a prompt, and every job reads it before it writes anything.
This is the highest-leverage thing an agent can edit. A post with the wrong tone is a symptom; the voice file is the cause. Fix the file and every future post is fixed.
Read it
GET /api/workspace answers the tree with its completion ring - which parts of the brand are
filled in and which are still empty.
Write it
Needs write. POST /api/brain/scan reads a link and files what it says into the tree (an NDJSON
stream). POST /api/brain/import takes a document. Both are how you fill a new account in one
move rather than typing it.
Assets
The brand's real files - logos, fonts, product shots, footage - live beside the text:
| Method | Path | Scope | Purpose |
|---|---|---|---|
| GET | /api/brain/assets, /api/assets | read | Brand uploads, and the whole asset library. |
| GET | /api/brain/assets/[filename] | read | Stream one asset (Range supported). |
| PUT/PATCH/DELETE | /api/brain/assets/[filename] | write | Upload, rename, delete. |
| GET | /api/media/[...key] | read | Stream any media key this account owns. |
A media key from here can go straight onto a post (mediaKeys) or onto a job message
(mediaKeys). Uploading an asset puts it in the library for reuse; attaching it to a message is
what makes this turn's agent look at it. Two different asks - do the one you were asked for.
Standing agents
An agent is a recurring brief the server wakes on its own schedule.
POST /api/strategies needs write, or publish if the agent is armed to autopublish - arming
something that posts without a human is itself a publishing act. Waking one always needs
publish. What they propose lands in the queue as proposed; see Posts.
