Creative Context Library
Ads worth stealing from and knowledge worth applying — the context library every brainstorm draws on.
The Creative Context Library (until Aug 2026 the "Idea generator") starts from a simple habit every creative team already has: collecting other people's ads. Screenshots from the feed, press ads, posters — saved because the idea in them was good. The library gives that pile a memory: drop the images in, and a vision pass reads each one into a structured record built around the reusable mechanism underneath it, written so it survives being lifted onto a completely different subject.
The point is never the description of the picture. "A red poster for a bank" helps nobody. "A trusted everyday format is hijacked so the ad is read before it is recognised as an ad" is a move any brand can make — and that is what the record keeps.
The library
Open Creative Context Library from the brand nav's "…" menu or the Tools column on the brand overview. The page lives in the brand workspace, but the library itself is shared with your Team — the same famous ads serve every client brand — with a private library as the alternative when you work alone.
Drop images anywhere on the page. Ingest is instant and free: duplicates are caught by content hash, a thumbnail is made, and the palette is measured from the pixels (k-means over the actual image — a model's hex guesses are never stored). The analysis then runs on its own, about a minute per image, with a visible status on each tile.
The record
Open any reference to see what was read:
- The ad in one line — the ELI5: the whole ad in one plain sentence, first on the record (and on every tile), so you judge in two seconds whether the idea fits before reading anything else.
- Why it works and the mechanism — the idea, stated brand-agnostically.
- Devices to borrow — the remix material: each device says how to reuse it on a different subject. A device that names a colour, a typeface, or a brand gets a warning: it describes the surface, and the surface doesn't transfer.
- Copy, verbatim — every readable string, transcribed exactly, never translated.
- The measured palette — hexes and shares from the pixels, plus the model's read of the colour strategy.
- Weaknesses and cautions — honest flaws, and legal flags (trademarked characters, real people).
- Scores — originality, clarity, craft, and transferability, the library's sort key.
- The original brand, shown explicitly as a guess with its confidence. It is never treated as fact.
Search works on all of it — mechanism names, keywords, transcribed copy — so "before/after", "guilt", or "receipt" finds the records that carry the move, not just pictures that look alike. The filter bar narrows by the record's own read too: hooks (an ad is routinely layered, so the analysis captures up to three, primary first — a filter matches on any of them), mood (the categorical register — deadpan, urgent, playful…), and mechanism family — the class a move belongs to (format-hijack, double-read, before-after, confession…). The mechanism name stays unique to each ad on purpose — it's an identity, searchable but never a facet. Filter options are derived from what the library actually holds, and the same hook/mood/family filters are available on a brainstorm's source filter (the Ideas node, referenceFilter on the API). Records analyzed before these fields existed fill them on re-analysis — Re-analyze all at the top of the library runs the whole pool through the current analysis once (one metered vision pass per ad, confirmed with the count first).
Brainstorming from it
The library's second half is ideation: ask the chat for ideas — "give me some concepts for the spring campaign" — and it generates a set of structured ad concepts grounded in the library. Each concept is generated in its own call, steered by its own angle and an exclusive slice of the library's devices, so the set genuinely diverges instead of paraphrasing one idea; a judge then scores and ranks them. Every borrowed device cites the reference it came from. The concepts land as a card in the chat, and each brainstorm is saved as a session — recent ones for the brand are listed at the bottom of the library page.
Which references get borrowed is steerable: by default the library is searched against the brief (and when the brief's wording happens to match nothing, the most transferable references step in instead of a silently unborrowed brainstorm), but a brainstorm can also filter the library — by tag, starred, hook type, or an explicit search query that replaces the brief search — take all matching references at once (the brainstorm rides each reference's analyzed text, never the images, so the whole library fits comfortably), or pin exact references, which beats everything else.
Your own ideas ride along too: paste them into a brainstorm (the Ideas node's "Your own ideas" rows, ownIdeas on the API, --own-file on the CLI) and each is faithfully structured into a concept of its own — never re-invented — marked as yours, and ranked by the judge right beside the generated set. Your idea scoring 88 against the AI's best 74 is a real answer.
On the pipeline canvas the same engine is the Ideas node: wire Ideas → Templates and the concepts steer the run: free ideas steer the template search, or — with Write ideas for: this pipeline's templates — the brainstorm writes ideas for each pinned layout, seeing its roles and budgets. The Build then deals its creatives across the best ideas (or all of them), each executed by the template it was written for — or across just the one you pin in the node's rail. Up to 24 ideas per brainstorm. Every concept also renders as its own card on the node's lane — wire the lane's outlet for the whole brainstorm, or one card for exactly that concept. Put a Hold node between them when a human should approve the concept before anything is built. And AI Produce skips templates entirely: it generates one finished ad per concept straight from the image model, grounded in a rendered brand board (logo, exact colors, the brand's letterforms) and the written guidelines. The brand-config AI generation section shows exactly what each brand's generations receive, and holds a per-brand standing direction that rides every prompt. See the node reference.
Knowledge
Beside the ads sits the library's knowledge half: papers, books, frameworks, instructions — pasted as text, dropped as Markdown, or uploaded as PDFs. Cialdini's principles, a copywriting formula, a chapter worth keeping, your house writing rules. Adding material is free and instant; a one-time distill pass (credit-metered, like a reference analysis) reads it into usable direction: an ELI5 gist (what this is, in one plain sentence), a readable article — the material written out as one piece a creative can actually sit down and read — a handful of sections written for someone shaping ad concepts, cataloging metadata on two separate axes — Type (what the document is: research, book, article, notes, guide, framework, instructions) and Topics (what it's about: advertising, print, digital, psychology…, 1–3 per doc) — plus the author and source work when the material names them, plus — when it genuinely enumerates named principles — lenses, one imperative creative move per principle.
On the shelf each doc wears a poster: a deterministic book-cover card keyed on its Type — books, papers and rule-sheets read as visually distinct classes — with no image generation, no cost, and nothing to go stale. The shelf filters by search, Type, and Topics; opening a card opens the article as a reading view (docs distilled before the article existed show their sections instead until re-distilled). tags stay purely yours — the model's cataloging lives in Type and Topics, so a re-distill never touches your curation, and a wrong type, topic, or author is correctable in place (the meta PATCH, update_knowledge). Re-distill all refreshes the whole shelf through the current distill in one confirmed click.
Select knowledge docs on a brainstorm and their thinking rides every concept call as context. When a selected doc carries lenses, lens mode goes further: the principles replace the built-in brainstorm angles, so each concept literally takes one — seven Cialdini principles become seven concepts, one built on reciprocity, one on scarcity, one on authority… ("Use principles as concept angles" on the Ideas node turns this off while keeping the doc as context.) Knowledge applies only when explicitly selected — a shelf can hold contradictory frameworks, and nothing should silently steer every run.
The knowledge shelf lives in the same pool as the references (your Team's shared library, else your personal one), and it stays off every public and share surface — a pasted original may be someone else's book. It deliberately stays out of the markdown export below, too. It is also distinct from Brand Instructions: brandKnowledge is what a brand says about itself; the knowledge shelf is what the craft says about persuasion.
The library as one file
The whole library exports as one self-contained markdown file — every analyzed reference as its one-line gist, the mechanism, and the devices to borrow, with the borrow rule written into the file. That's the clean-slate handout: paste it into ChatGPT, Claude, or any other tool together with a brief and ask for concepts, no braaand account needed. Get it three ways: the Download .md button on the library page, braaand ideas export <brandId> --out idea-library.md, or GET /api/brands/{brandId}/ideas/library. It also rides braaand sync into every brand folder as idea-library.md, so a synced brand always carries its idea material locally.
Using it with agents
The library is on the MCP surface, so any agent connected to braaand can ground a brainstorm in it: list_ad_references (search + compact rows), get_ad_reference (the full record), add_ad_reference (ingest from a URL), analyze_ad_reference (run the vision pass) — and generate_ad_ideas runs the whole brainstorm in one call (concepts + judge, persisted as a session readable with list_idea_sessions / get_idea_session), taking the same referenceFilter, ownIdeas, and knowledgeIds steering the node does. Knowledge have their own tools: list_knowledge / get_knowledge / add_knowledge (text or URL) / distill_knowledge / update_knowledge / delete_knowledge. A typical ask: "We're doing a campaign for Save the Children about paying for food — pull the five most transferable mechanisms from the library and propose concepts that borrow them, shaped by the Cialdini knowledge."
The same brainstorm runs from the command line — braaand ideas generate <brandId> "<brief>" [--count 4] [--tags a,b] [--moods a,b] [--families a,b] [--starred] [--all-refs] [--query "<text>"] [--own-file ideas.txt] [--knowledge knw_a] (its REST twin is POST /api/brands/{brandId}/ideas) — and braaand ideas list shows the library compactly, so a coding agent in a terminal has the same reach as one on MCP.
The borrow rule agents are held to: take the mechanism, never the surface. Change at least the subject and the context; a device flagged with surface leaks needs extra care.
Analysis is credit-metered like every vision call (billed to the library's pool — your Team, or you). Free accounts can sample it with the shared five-analysis trial.