← Home gallery

CICERO · HOME · MACRO 3 · v2

Brain pill

Two kinds of utterances on two independent triggers — Cluster brain introduces what's surfaced; Dynamic reactions respond to user actions. They stack to create the agentic background. Voice is Jarvis-like: brave, witty, sells the experience and the feeling, never the just-the-pin.

Anatomy · reference

The pill

Two pins. One you. Pick a direction.

Mascot 36px, blinking · Speech pill-shape, white bg, 1–2 lines max · Position centered above cluster · Min width ~280px · Real build = Flutter widget with Lottie/Rive mascot.

Type 1 · Cluster brain

8 cluster categories

Triggered by the cluster currently surfaced. Introduces the moment, frames the experience, sells the outcome. Demographic clusters dropped — they belong to a different app layer (personalization). Bathroom dropped — off-vibe. Post-trip added — needed for the trip-arc state machine even before Wrap ships.

Category 1

Trip-arc

Triggers: first-open · just-landed · day-1 · mid-trip · last-day · post-trip (airport · returning · back-home)

Just-landed · FCO

Welcome to Rome. The 30-min nap window before your hotel call is yours. Use it.

Day-1 overwhelm

Day one. One anchor, one terrace, one bar. Tomorrow's for the list.

Last-day

Last day. What would you regret missing? I have three guesses.

Post-trip · airport

Boarded. Trip portrait when you sit. Spoiler: you walked further than you thought.

Category 2

Time-arc

Triggers: morning · breakfast · before-lunch · lunch · post-lunch · aperitivo · sunset · dinner · night · late-night

Morning at hotel

Morning. Two anchors before lunch is the move. First coffee in seven minutes if we leave now.

Lunch window · 12:30

The trattoria three streets over fills up at 1pm sharp. You've got eighteen minutes.

Aperitivo · 18:45

Aperitivo's calling. Two stools at Freni e Frizioni — claim them before the after-work wave.

Late-night · 23:30

Trastevere's still alive. Jazz at Big Mama, second set just started.

Category 3

Spatial

Triggers: discovery-nearby · walking · standing-in-front · audio-active · browsing-zoomed

Discovery · Piazza del Popolo

Trevi that way, Colosseum the other. Both ten minutes. Both yours. The middle is the show.

Walking · Via dei Fori

Off the beaten path. Want me to keep it that way?

Standing-in-front · Caravaggio

You're looking right at it. Eight minutes well spent.

Audio-active

caravaggio · st. matthew · 4:12

Category 4

Body-need

Triggers: energy-crash · hunger · low-battery

Energy crash · 3pm slump

Battery's low — yours, not the phone. Pincio bench, four-minute walk, the view does the rest.

Hunger

Stomach's talking. Three trattorias open right now, one with the river view.

Low battery · 12%

Twelve percent. Top three cached. Pick fast.

Category 5 · Overlay

Urgency

Triggers: closes-soon · opens-soon · sunset-hero · golden-hour · event-now · booked-anchor

Closes-soon · Borghese

Borghese closes in thirty. Move now. The Bernini room is worth the rush.

Sunset hero

Twenty minutes to magic. Aventine in seven, perfect timing. Don't be late.

Booked-anchor · Vatican 14:00

Vatican slot in twelve. Leave now puts you there with twelve to spare.

Category 6 · Overlay

Weather

Triggers: rain-incoming · rain-now · heat · ideal · weather-shift

Rain incoming · 12 min

Sky says rain in twelve. Pantheon's open, free, and dry. Worth ducking.

Heat · 36°C

Skip the panoramic — these streets stay shaded all the way. Lemon granita waiting at the end.

Just stopped raining

Air's clean, light's gold. The good cobblestones are wet — they shine. Walk.

Category 7 · Overlay

Disruption

Triggers: closure · transit-down · civil-event

Vatican closed today

Vatican's closed. Borghese is the pivot — same caliber, fewer people, better wine bar after.

Line B down

Metro B is down. Twelve-minute walk gets you there anyway. Faster than the shuttle they're queuing for.

Category 8

Photo-of-X

Triggers: train-ticket · museum-QR · restaurant-res · flight · menu · receipt · keycard · WhatsApp · guidebook

Train ticket photographed

Frecciarossa fourteen-oh-five, platform eight, board in twenty-five. I'll quiet down in twelve.

Restaurant reservation screenshot

Roscioli at twenty-hundred. Twelve from here. I'll stop pitching new spots after nineteen-forty.

Hotel keycard

Home set: Hotel Russie, checkout Saturday. I'll pace the days.

Type 2 · Dynamic reactions

User-action driven · observations only

Never questions. Reactions land and fade — no UI element to render, no friction. Acknowledgment, thinking out loud, or placebo refresh. Recurring reactions degrade: 1st explanatory → 2nd–9th acknowledgment → 10th+ silent checkmark. Tracked per reaction type, persisted per user.

Trigger · plus-pin tapped

Save place

Most-used reaction — likely 6–10+ taps per session. Degrades from teaching to silent feedback.

1st · explain

Saved. I'll surface it when you're closer.

2nd

Pinned.

3rd

Got it.

4–9

Saved.

10+

Trigger · minus-pin tapped

Remove place

Less frequent than plus. Faster degradation.

1st · explain

Done with that one. Moving on — I won't bring it back.

2–4

Skip noted.

5+

✓ removed

Trigger · card scanning

Sliding without committing

User keeps swiping back and forth. Brain notices but doesn't pressure. Last reaction is a placebo refresh — cluster softly reshuffles.

1st · observe

Browsing. There's no wrong pick.

2nd · think aloud

You keep coming back to the gelato one. Maybe that's the answer.

3rd · placebo refresh

Different angle.

4+

Trigger · card dismissed

Swipe to skip

1st

Not feeling it. Skipping.

2–3

On we go.

4+

Trigger · map gesture

Pan / pinch / zoom

Brain notices the user is looking at the map. Drops a confident observation about geography. No question.

1st · pinch out

Wide view. The Forum is a seven-min walk from where you're zoomed.

2nd · pan

Heading west. Trastevere lives there.

3rd

Browsing. Big picture has the answer sometimes.

Trigger · long stationary >5min

Not moving, not at anchor

The classic placebo: brain says "different angle", cluster reshuffles slightly. User feels seen, no real change required.

1st

We've been here a beat. Refreshing the angle.

2nd

Still here. I'll quiet down.

3+ · silence

Trigger · walking resumed

Off again

1st

Off again. Picking up where we left.

2nd

On the move.

3+ · silence

Trigger · question answered

Per-answer reaction

After each Question card answer, brain reacts briefly — confirms the read. Then the next card surfaces.

"Specific"

Specific. Got it. Showing destinations.

"Wandering"

Wandering. My favorite mode.

"Crashed"

Crashed. Sit-down spot incoming, not a standing bar.

"Fresh"

Fresh. We can do the long route then.

Trigger · question chain closed

Comprehensive acknowledgment

After a chain of questions ends, brain recaps everything in one beat and confirms re-tuning. NOT a question — an observation.

Standard recap

Trastevere by lunch, fresh legs, three days. Re-tuning.

After 3+ chain answers

Got the picture. Watch the cluster change.

Trigger · audio guide started

Press play

1st

Pressing play. I'll quiet down.

2+ · listening

caravaggio · st. matthew · 4:12

Trigger · audio guide ended

Story finished

1st

Good story. Three things nearby that pick up that thread.

2–5

Done. Next-up below.

6+

Trigger · returned after >10min away

Welcome back

"When was the last time you were in?" hospitality framing — never assumes a negative.

1st

Back. Same plan, or did something change?

2–5

Picking up where we left.

6+

Stacking · the agentic background

Cluster + Reaction together

Cluster brain holds steady on the top line. Dynamic reaction surfaces underneath (or briefly replaces) for ~2–3 seconds. Then the reaction fades and the cluster line stays. This is the "Jarvis on standby, occasionally chimes in" feel.

Sky says rain in twelve. Pantheon's open, free, dry. Worth ducking.

Browsing — I see it.

Cluster brain (top, weather) + Dynamic reaction (bottom, map gesture)

Voice principles (per cicero-app-playbook): brave, witty, friend-voice not corporate. Sells the experience — direction + journey, not just pins. Sonder register: "every street was walked by someone exactly like you, a decade ago." Subtle selling: a nudge, a joke, a relatable hook, a confident "told you" — never aggressive.

Out of scope V1: demographic clusters (different app layer), bathroom (off-vibe), Q-chain orchestration (backend), brain copy library full grid (200–400 entries, lives in spreadsheet).

Map page: skipping the HTML mockup redo. Going straight to Flutter implementation per the spec in brain-pill-and-map-plan.md. The current map showcase will be rebuilt in code with the screenshot's palette + stylized SVG icons.

Backend handoff: see docs/specs/backend-handoff.md for the full contract — data inputs, cluster orchestration, brain copy library, question injection, A/B infra, rate limits.