Skip to main content
The prose your agent reads before every turn.

The picture

One markdown file says what your product is and how to talk about it. It becomes the Product section of the system prompt, verbatim.
.vendo/brief.md
Maple's panel answering a grocery spending question in one short, warm sentence, with the merchants named
This file is where your agent’s voice comes from.

The brief file

vendo init drafts it from your graded tool catalog and your code, then leaves it alone. A brief you have edited is never overwritten by a later run. What belongs in it: what the product is, who uses it, the house voice, and what to emphasize. Keep it to prose you would hand a new support hire. What does not belong in it: policy. Rules about what the agent may do are guard directions, and they ride their own section of the prompt. createVendo({ instructions }) is the same slot, for a deployment that holds its config in code. A non-blank string wins over the file, and a blank one falls through to it.
app/api/vendo/[...vendo]/route.ts

Where it lands

The prompt is assembled fresh on every turn, in this order. A section with nothing to say drops out entirely. The theme line and the knowledge index ride only the surfaces that can render a screen. Three channels reach the model, and each has exactly one home: Directions are policy data. They live in .vendo/policy.json under directions, or inline on the policy you pass the guard. Design rules are the house style for generated screens. The file is re-read on every generation, so an edit applies to the next screen with no restart.
.vendo/design-rules.md
Bring your own agent loop and none of these channels apply, because that agent runs on your system prompt rather than Vendo’s. The block to paste there is on Quickstart: apps.

Where to go next

The brief is what your agent knows about you. These two are what it knows about the moment.

Context

Who is asking, and what their screen shows.

Knowledge

Answers from your docs, with citations.

Theming

The token file every surface renders through.