How the agent learns your business
The onboarding run that reads your website and builds the three context artifacts every loop reuses — a business profile, a brand & visual guide, and a first pass at your competitors.
Before any loop drafts an ad or writes a post, the agent needs to know what you sell, how you sound, and who you're up against. It gets that from an onboarding run that fires the moment you add a website — it reads your site and writes three durable artifacts into your product's file store that every downstream loop reads back:
Business.md— a structured profile of what the product is and who it's for.Brand.md— how the brand sounds (voice) and how it looks (visual identity).- Competitors — an enriched list of who you compete with, saved as records.
You don't fill in a questionnaire. The agent starts with context instead of a blank page, and keeps that context current as it runs.
When onboarding runs
Adding a product with a website URL (see Getting started) kicks the onboarding run off automatically — no button to press. Each artifact is produced by its own background worker that reads your rendered homepage (and at most one key sub-page like /about or /pricing) and extracts facts. These workers never invent: when a detail isn't on the site, the profile records Not stated on website. rather than guessing.
The business profile — Business.md
The profile is the agent's answer to "what does this company do?" It's a Markdown file with a fixed set of sections, in this order:
| Section | What it captures |
|---|---|
| Overview | Product name, website, and a one-line description in the company's own voice. |
| Value Proposition | The promise to the customer — problem solved, outcome delivered, why this over alternatives. |
| Product Category | A short phrase locating the product in its market. |
| Target Customer | Who buys this — persona, segment, company size. |
| Business Model | How it makes money, plus any visible pricing tiers. |
| Key Features / Offering | 4–8 concrete features (not "great UX" — the actual capabilities). |
| Primary CTA | The headline call to action the site pushes, quoted verbatim. |
The same run also captures a desktop screenshot of your homepage and stores the one-liner on your company snapshot, which is what the Company panel's "At a glance" card shows.
Here's the shape of the file the agent writes — the section headers are fixed so other loops can parse it:
# Business Profile — Acme Analytics
## Overview
- **Product name**: Acme Analytics
- **Website**: https://acme.example
- **One-liner**: Privacy-first product analytics for small SaaS teams.
## Value Proposition
Understand what users do without shipping their data to third parties…
## Product Category
Privacy-first product analytics platform
## Target Customer
Solo founders and small SaaS teams who want usage insight without a data-privacy headache.
## Business Model
Subscription, usage-based tiers (Free, Pro, Team).
## Key Features / Offering
- Event autocapture with no code
- Session replay
- …
## Primary CTA
"Start free" (hero + sticky nav)The brand & visual guide — Brand.md
Brand.md is a working style guide with two halves. The voice half briefs anyone — human or agent — writing copy in your name; the visual half briefs the image generation the agent does for ad creative.
Voice covers: a one-line Voice Snapshot, Tone, Personality Traits, Vocabulary (jargon level, words the brand uses and avoids), Sentence Style, Point of View, a Do / Don't list of verbatim on-brand quotes versus off-brand phrasings, and Notes for Writers.
Visual Identity covers: a Visual Snapshot, Color Palette (with hex codes marked observed or inferred), Typography, Photography Style (concrete do/don't bullets), Product Visual Facts (the literal constraints that keep a product recognizable in a generated image), Creative Archetype Preferences, and Text-on-Image rules.
Why the visual half matters
The visual sections aren't decoration. When a growth loop generates ad creative, the image model reads Product Visual Facts and the photography do/don't list directly — so an accurate Brand.md is the difference between on-brand ads and generic stock imagery. See the ads loop for how creative is produced.
Competitors
The onboarding run also drafts a first pass at your competitive landscape. A background worker searches the web from your product category and value proposition, filters out aggregators, listicles, social sites, and news, and saves each real competitor as a record with a name, domain, logo (derived from the domain at render time), and a one-line description. These show up on your dashboard, and loops that need to know who you're up against read them back — for example, the Facebook engagement loop folds competitor names into its group-discovery search when you haven't set targeting yourself.
Unlike the profile and brand guide, competitor discovery keeps refreshing on its own: it wakes on a daily cadence but only actually researches when the landscape is likely to have shifted, so in practice it behaves like a fortnightly refresh that catches new entrants and pricing moves. It stays quiet when your coverage is already fresh and you haven't dismissed any of it.
How loops use all this
These three artifacts are the shared context layer under the growth loops:
- The content and social loops write in the voice from
Brand.md, grounded in whatBusiness.mdsays you do. - The ads loop uses
Brand.md's visual identity to generate on-brand creative andBusiness.mdto write the copy and pick targeting. - The Facebook and Reddit loops use your product profile and competitors to find where your ICP actually hangs out.
Because every loop reads these files back at the start of its run, keeping them accurate quietly improves everything downstream.
Notes & limits
- A website is required. Onboarding reads your public site; with no URL there's nothing to profile. You can add the website later and the run fires then.
- Facts only. The profile and brand guide use what's visible on the site and mark anything unknown as not stated — they won't fabricate a value prop or a palette. A thin homepage yields a thin first pass.
- Competitor discovery waits for the profile. It skips until
Business.mdexists (it needs your category to search well), and it won't pile on more records when your list is already fresh and accepted. - The artifacts persist and are reused, not regenerated per task. Each loop reads the current files at the start of its run, so improving them once benefits every loop that follows.