GenieOS · Brand

Your brand, returned as JSON.

One URL, read once, and your brand becomes a structured object. read_brand hands any agent the voice, palette, type and rules of the company it is writing for, current at the moment of the call. No pasting, no drift, no re-explaining who you are.

agent.tsts
// your agent, wherever it lives: one read, always currentconst brand = await genieos.read_brand(); brand.voice        // ["plain-spoken", "precise", "warm"]brand.palette      // the real hex values, not a descriptionbrand.tone.never   // ["game-changing", "revolutionary"] // no system prompt to maintain. no paste to go stale.
The surface
  • read_brandThe whole brand as one structured response: voice, palette, type, imagery rules and the words you never use.

One tool, deliberately. The brand is authored and edited in the app, where judgement lives; your agents read it. Every other tool on this surface reads it too, before anything renders, so there is no route to an off-brand artefact.

brand_get() returns
voice
playful · confident · warm
palette
type
Newsreader · Instrument Sans
tone.never
leverage · synergy · robust
audience
4 segments · living

— every tool call reads from here. no exceptions.

— one brand brain. zero surprises in the group chat.

Stop pasting your brand into prompts.

The way this works everywhere else is a hand-maintained system prompt. Somebody writes three paragraphs about voice and hex codes, pastes them into every agent that touches marketing, and it holds until the day the brand changes. Then five copies drift at five different speeds, and the agent with the stalest paste writes with the most confidence.

read_brand replaces the paste with a read. The brand lives in one place, gets edited in one place, and every call returns the current object. An agent in your codebase and an agent in a chat window are reading the same brand at the same moment, so there is exactly one version of who you are.

It is also enforced on the way out. Everything an agent renders through GenieOS is checked against the same object deterministically: the palette, the type, the banned words. Not a vibe in a prompt. A check that either passes or does not.

IN-APP · JUDGEThe read produced this. Only you can say whether it is right.
Brand SystemFueld

BRAND SYSTEM

Fueld

◎ How brand works✳ Update brand
OverviewBrand BookBrand KitThemesBlueprintsMerchv2 · auto · last saved 08/06/2026, 02:47:49

BRAND NAME *

Fueld

TAGLINE

Your health, in context.

DOMAIN

fueld.ai

LEGAL NAME

Fueld Health Ltd

ONE-LINE DESCRIPTION

Fueld is a health intelligence platform that connects your nutrition, activity, sleep and stress into one place — with AI that turns scattered numbers into a clear picture you can act on.

Used in the AI editor’s voice context.

INBOX PREVIEW · FUELD

A welcome that sounds like you.

Your health, in context.

The actual emails Genie writes will look exactly like this — drafted in your voice, in your colours, with your logo, and pinned to your brand version so they don’t drift.

Contact Fueld

Fueld Your health, in context.

Built from your site. Then looked at.

The object has to come from somewhere. Point GenieOS at your domain and it reads the site the way a careful designer would: palette lifted, type identified, voice inferred from the words you already publish. That one read is what fills the object every agent queries from then on.

And this is the first moment that needs eyes. Your agent can confirm the palette parsed and the fonts resolved; it cannot tell you whether the result looks like your company. Open the brand system once, judge it, correct what needs correcting. Everything every agent makes afterwards inherits the correction.

IN-APP · HAND OVEREmail defaults, owned in the app by the person who cares about them.
Brand SystemFueld

BRAND SYSTEM

Fueld

◎ How brand works✳ Update brand
OverviewBrand BookBrand KitThemesBlueprintsMerchv2 · auto · last saved 08/06/2026, 02:47:49

FROM NAME *

Fueld

FROM LOCAL-PART

hello

[email protected] → just enter “hello”.

POSTAL ADDRESS

123 Example St, London EC1A 1AA

Required for CAN-SPAM. We’ll warn you on production sends if missing.

Footer signature lives in your themes now. Each theme owns its own footer copy + variant — pick or edit them on the Themes tab →

UNSUBSCRIBE COPY

You’re receiving this because you opted in. Unsubscribe any time.

Markdown supported. %unsubscribe_url% is interpolated at send.

INBOX PREVIEW · FUELD

A welcome that sounds like you.

Your health, in context.

The actual emails Genie writes will look exactly like this — drafted in your voice, in your colours, with your logo, and pinned to your brand version so they don’t drift.

Contact Fueld

Fueld Your health, in context.

The defaults a marketer owns.

Brand includes the things nobody thinks about until they ship wrong: the email header, the footer block, the sender name, the logo lockup at sixteen pixels. In GenieOS those are brand defaults with an owner, and the owner does not need a terminal.

A marketer edits them in the app; your agents pick the change up on the next read. That is the division of labour working as intended. You wired the surface, they own the identity, and read_brand is where the two meet without a meeting.

Never paste your brand again.