PILOT - CLOSED - INVITATION ONLYBobby Guru is operating as a limited closed pilot. Features, availability and commercial terms may change before general release.

$ brand-book --v2 --complete

Brand book

One direction, held everywhere: late-night terminal. Worn, warm, focused - the light of a CRT in a dark bedroom, not neon cyberpunk. Everything on this page is downloadable and this page is the source of record: if an asset is not here, it is not official.

Brand foundation

Bobby knew everything. Now he answers.

Bobby.guru is a premium MCP advisory agent for engineering teams. It connects to your site, reads your codebase and your release, and gives the answer a senior developer would give - diagnosis first, no padding.

Diagnosis before advice

It names the cause before it proposes a fix, or it says it does not know yet.

Never cheap, never vague

Priced for teams that expect an agent to change the outcome of a release.

Honest about what it is

Bobby is a method with a name on it. Every likeness is AI-generated and labelled as such.

Mood scale 1 - 5

Bobby's verdict on a website is a single number from 1 to 5, and every number has a face. Every download is the complete, untouched square photo master. Avatar, icon and emoji sizes - including circular score rings - are created only in HTML/CSS. Never bake a crop, ring, colour or overlay into the photograph.

Mood 1 Furious1
Mood 2 Unimpressed2
Mood 3 Neutral3
Mood 4 Pleased4
Mood 5 Delighted5

Rules

  • ·One score per audit. Bobby never returns a range.
  • ·The face always travels with the number - no bare score, no unlabelled face.
  • ·Ring colour is the score. Never recolour a face to make a report look friendlier.
  • ·Levels 1 and 2 must state the fix next to them. A negative face without a reason is noise.
  • ·Level 5 is rare by design. If everything scores 5, the scale is broken, not the site.
  • ·Never animate between levels for effect. The score changes when the audit changes.

Inline badge

Bobby mood level 1: Furious1/5 Furious
Bobby mood level 2: Unimpressed2/5 Unimpressed
Bobby mood level 3: Neutral3/5 Neutral
Bobby mood level 4: Pleased4/5 Pleased
Bobby mood level 5: Delighted5/5 Delighted

Minimum icon size 20 px. Below that, use the unicode square alone - never a downscaled face, it turns into a smudge.

Platform emoji

One emoji stands for Bobby.guru everywhere text has no logo - bot avatars, Telegram and Slack descriptions, changelog headers, social bios. It supports the wordmark; it never replaces the mark.

🟩

Platform emoji

Stands for Bobby.guru wherever there is no logo: bot avatars, Telegram and Slack descriptions, social bios, changelog headers. One per line, always the first character, followed by one space.

🩺

Diagnosis

Opens a root-cause finding. Never used for an opinion.

🚢

Shipped

Marks a release note or a completed fix.

🟧

Unknown / blocked

Marks an unverified field, a blocker or a governance gap.

Beeldmerk

A bracketed B: phosphor brackets, white B, set in JetBrains Mono Bold so the mark and the wordmark are the same voice. Five official versions - pick the one with the highest contrast on your surface and never modify a file to make it fit.

Beeldmerk

Beeldmerk

The primary mark: phosphor brackets around a white B. Default on ink and on any dark surface.

  • Site header
  • App chrome
  • Avatars

min 24 px · 1024 × 1024

Beeldmerk on light

Beeldmerk on light

Ink brackets and ink B for white paper and light interfaces. The phosphor is dropped - it does not hold on white.

  • Documents
  • Light UI
  • Slide decks

min 24 px · 1024 × 1024

Simplified beeldmerk

Simplified beeldmerk

The B alone, brackets removed. Everything below 24 px, plus embroidery, engraving and die-cut stickers. Never re-add the brackets at these sizes.

  • Favicon
  • Embroidery
  • Stickers
  • < 24 px

min 16 px · 1024 × 1024

Beeldmerk, monochrome black

Beeldmerk, monochrome black

One ink. Stamps, photocopies, faxable documents, single-colour print.

  • Stamps
  • One-colour print
  • Photocopy

min 24 px · 1024 × 1024

Beeldmerk, monochrome white

Beeldmerk, monochrome white

One ink, knocked out. Dark signage, garment print, single-head embroidery.

  • Signage
  • Garment print
  • Video overlays

min 24 px · 1024 × 1024

Do

  • › Phosphor mark on ink, ink mark on white.
  • › Keep the mark square and axis-aligned.
  • › Drop to the simplified mark below 24 px.

Don't

  • › No gradients, glows-as-decoration, or drop shadows.
  • › No rotation, outlines, or recoloured brackets.
  • › No mark over photography without a solid ink plate.

Clear space & minimum size

Clear space
One bracket-stroke width on all four sides of the mark. Nothing enters it - not text, not a border, not an image edge.
Minimum size, screen
Beeldmerk 24 px. Simplified beeldmerk 16 px. Primary lockup 120 px wide.
Minimum size, print
Beeldmerk 8 mm. Lockup 32 mm wide. Invoice lockup 18 mm mark height.
Construction
512 grid. Bracket stroke 26, bracket height 320, arm 64, B set in JetBrains Mono Bold at 300.

Logo versions

Seven official lockups. Every one ships in the formats listed on its card.

Primary logo

Primary logo

The default lockup: mark, then bobby in white and .guru in phosphor. Use this wherever a dark surface allows it.

  • Website
  • Decks
  • Video end cards

min 120 px wide · 5841 × 1740

Logo on light

Logo on light

The same lockup for white paper and light UI. The TLD keeps a darker green so it survives print.

  • Print
  • Light decks
  • Partner sites

min 120 px wide · 5841 × 1740

Stacked lockup

Stacked lockup

Mark above the wordmark, for square and narrow placements where the horizontal lockup would be forced too small.

  • Square ads
  • Roll-ups
  • Merch back print

min 96 px wide · 3328 × 2259

Wordmark

Wordmark

Text only, for places where the mark already appears: footers, email strips, legal lines.

  • Footers
  • Email strips
  • Legal

min 90 px wide · 2160 × 532

Wordmark on light

Wordmark on light

The wordmark inverted for paper and light interfaces.

  • Documents
  • Light footers

min 90 px wide · 2160 × 532

Monochrome black lockup

Monochrome black lockup

Single-ink black lockup for stamps, one-colour print and photocopy.

  • Stamps
  • Contracts
  • One-colour print

min 120 px wide · 5841 × 1740

Monochrome white lockup

Monochrome white lockup

Single-ink knockout lockup for dark signage, garment print and photography.

  • Signage
  • Apparel
  • Photo overlays

min 120 px wide · 5841 × 1740

Which format when

SVG
Vector master. Place straight into Illustrator, Figma or a print layout. Scales forever.
PNG
Transparent, exported at 2×. The default for screen, decks and email.
WEBP
Compact transparent version for the web when file weight matters.
JPG
Only where a background is required - mail clients and office documents that reject alpha.
PRINT
4× PNG tagged at 300 dpi. Use for anything that goes on paper or fabric.

Invoices, receipts & documents

Financial and legal paper uses its own lockups. They are always on white, always top-left, and the phosphor is dropped to a darker green that survives a laser printer.

Invoice & receipt logo

Invoice & receipt logo

Compact lockup with the legal line underneath. Top-left on invoices, receipts, credit notes and quotes. Mark height 18 mm minimum in print; drop to the monochrome black version when the printer is one-ink.

  • Invoices
  • Receipts
  • Credit notes

min 18 mm mark height · 5841 × 2109

Letterhead logo

Letterhead logo

The document lockup without the legal line, for letters, agreements and statements of work. The company and VAT line goes in the footer instead.

  • Letters
  • Contracts
  • SOWs

min 16 mm mark height · 5841 × 1740

Receipt strip

Receipt strip

Narrow one-colour lockup that survives 58 mm and 80 mm thermal printers. No greys, no anti-aliased detail - pure black on white only.

  • Thermal receipts
  • Labels
  • Packing slips

min 40 mm wide · 3326 × 860

Invoice placement
Top-left, 18 mm mark height, 20 mm margin. Invoice number and date top-right in mono.
Legal line
Company name, VAT number and address sit under the lockup at 7 pt, ash grey, never phosphor.
Receipts
Use the receipt strip. Thermal printers destroy anti-aliasing - pure black on white only.
Fallback
If the document is printed one-ink, switch to the monochrome black lockup. Never print phosphor in greyscale.

Email branding

Email header logo

Email header logo

The lockup baked onto its own ink plate so it reads identically in dark-mode and light-mode mail clients. Export at 2× and set the HTML width to half.

  • Transactional email
  • Newsletters

min 180 px wide · 6047 × 1946

Email footer mark

Email footer mark

Muted grey mark for the legal and unsubscribe block. Never phosphor - the footer must stay quiet.

  • Email footers
  • Receipts

min 16 px · 358 × 358

Signature block

<table cellpadding="0" cellspacing="0" style="font-family:'JetBrains Mono',monospace;font-size:12px;color:#0B0C0A">
  <tr>
    <td style="padding-right:14px"><img src="https://bobbyguru.com/logo/beeldmerk-light.png" width="40" height="40" alt="Bobby.guru"></td>
    <td style="border-left:1px solid #D8DBD6;padding-left:14px">
      <div style="font-weight:600">Name Surname</div>
      <div style="color:#5A6058">Role · Bobby.guru</div>
      <div><a href="https://bobbyguru.com" style="color:#2E8A4A;text-decoration:none">bobbyguru.com</a></div>
    </td>
  </tr>
</table>

Host the header image at 2× and set the HTML width to half. Never rely on a transparent PNG in email - dark-mode clients recolour the background behind it.

App icons & favicon

Every icon ships in a dark and a light variant, each with a flattened background or a transparent plate - same rule as the avatars. Stores and manifests want the flattened file; transparency is for compositing only.

Avatars & profile pictures

og:image & social images

Bobby.guru channel banner

Channel header - 1500 × 500 safe area

↓ bobbyguru-social-banner.jpgJPG · 1536×512
Bobby.guru tall guardian banner

Tall guardian banner - 1536 × 864, no text

The taller cut for the TV host profile, video end cards and any placement that needs headroom. Same scene, no wordmark - type is layered in CSS.

↓ bobbyguru-social-banner-tall.jpgJPG · 1536×864
Developer at three code screens by a rain-streaked city window

Code banner - 1536 × 512, no angel

The work itself: three screens, a late-night window, no face and no wordmark.

↓ bobbyguru-social-banner-code.jpgJPG · 1536×512
High-tech holographic code panels and network graph

High-tech banner - 1536 × 512

Abstract holographic panels and a network graph - the modern, product-side banner.

↓ bobbyguru-social-banner-modern.jpgJPG · 1536×512
og:image · 1200 × 630
Link previews on every page. Mark bottom-left, never centred.
Square · 1080 × 1080
Instagram and Facebook posts.
X / Twitter header · 1500 × 500
Wordmark in the lower-left safe area.
Story / Reel · 1080 × 1920
Ink background, mark top-left, no text below 240 px from the bottom.

Video watermark

The mark that sits in the right-hand corner of the YouTube player, and anywhere else a small badge belongs. 150 × 150 PNG, no animation, far under the 1 MB limit.

Video watermark - transparent, Bobby Guru mark

Video watermark - transparent

150 × 150

PNG · ~2 KB · the size YouTube recommends, transparent background, white B in green brackets

Video watermark - black, Bobby Guru mark

Video watermark - black

150 × 150

PNG · ~3 KB · solid black background, for light or busy footage

Video watermark - white with black border, Bobby Guru mark

Video watermark - white with black border

150 × 150

PNG · ~4 KB · white tile, black keyline inside the frame, black B

Video watermark - transparent 2×, Bobby Guru mark

Video watermark - transparent 2×

300 × 300

PNG · ~5 KB · overlays, editors and thumbnails

Video watermark - white 2×, Bobby Guru mark

Video watermark - white 2×

300 × 300

PNG · ~6 KB · white tile with black border, larger placements

Full-surface watermark

A light, blurred “bobby guru” pattern for covering a whole frame instead of one corner. The tile repeats seamlessly; the 1080p overlay drops straight over footage.

Repeating watermark tile, repeating Bobby Guru watermark

Repeating watermark tile

600 × 600

PNG · ~65 KB · transparent, tiles seamlessly across any image or video

Full-frame watermark overlay, repeating Bobby Guru watermark

Full-frame watermark overlay

1920 × 1080

PNG · ~170 KB · drop straight over 1080p footage at 100 % opacity

Zippen Daniels

Zippen Daniels was Bobby's hidden name on social media. Away from the code and away from his own name, he posted as Zippen Daniels, and this stitched skull sticker was the avatar on that account: instagram.com/zippendaniels. The mark is part of the brand book now. The original olive green version is our error face: when a page breaks, a job dies or a payment fails, that is the one on screen. The other five are recolours for everything that is not an error.

Error mark

Zippen Daniels stitched skull sticker in olive green on black, Bobby's original avatar

Zippen Daniels - original

Olive green · #8CBF3F

The exact sticker from his account. Reserved for error states: 404, 500, failed payments, dead jobs and anything that went wrong. Never used decoratively.

Square masters
Every file is a clean 1024 × 1024 square on pure black. No baked-in rounding, rings or shadows - crop and mask in CSS.
Under 512 KB
All six sit around 110 KB, well inside the 512 KB ceiling for avatars, watermarks and app upload fields.
Green means broken
The original olive green mark only appears when something failed. Using it as decoration breaks the signal.
Credit the name
Where the story is told, the account is named: Zippen Daniels, Bobby's hidden handle.

The five colourways

Zippen Daniels skull mark in phosphor green on black

Phosphor

Phosphor green · #7CF29C

House colourway. Stickers, merch, community and anywhere the brand green leads.

Zippen Daniels skull mark in amber orange on black

Ember

Amber orange · #F2A65A

Warnings, degraded states, maintenance banners and slow jobs.

Zippen Daniels skull mark in alert red on black

Alert

Alert red · #E5484D

Destructive confirmations, account suspension and hard stops. Loud on purpose.

Zippen Daniels skull mark in electric cyan on black

Signal

Electric cyan · #3FC7F2

Playful placements: TV bumpers, Discord, stickers and dev tooling.

Zippen Daniels skull mark in bone white on black

Bone

Bone white · #E8E8E2

Print, embroidery, one-colour merch and any surface that cannot carry colour.

Colour

Ink

#0B0C0A

Background. The room at 3am.

Surface

#141613

Cards, code blocks, tables.

Phosphor

#7CF29C

Primary. Accents, prompts, one CTA.

Ember

#F2A65A

Secondary. Warnings, unknowns.

Hairline

#2B2E2A

1px borders, dividers.

Ash

#A3A8A0

Body text on ink.

Typography

JetBrains Mono - headings, prompts, numbers

Diagnose before you advise.

Work Sans - body

Body copy stays quiet so the mono can carry the voice. 300 - 500 weight, 1.7 line height, never justified, never below 14px.

Radius 2px everywhere. Borders 1px hairline. Both families are open source (OFL) - no licence purchase for print, merch or embedding.

Tone of voice

  • ›Diagnose before you advise. Name the cause, then the fix.
  • ›Short sentences. No throat-clearing, no 'great question'.
  • ›Say what will break, not what might be worth considering.
  • ›Own uncertainty out loud: 'I don't know yet - here's how we find out.'
  • ›Dry humour, never sarcasm at the user's expense.
  • ›Numbers over adjectives. 'Three queries, 900ms' beats 'a bit slow'.
  • ›Never pad a wrong answer with confidence.
  • ›End with the next concrete step.

Great question! There are several factors that could be affecting performance.

Your list re-renders on every keystroke. Memoise the row, then measure again.

You might consider adding some tests at some point.

This function has three branches and no tests. Write the two that fail first.

It's generally recommended to follow security best practices.

Your roles live on the profile table. Anyone who can update their row is an admin. Move them.

I'd be happy to help you with that!

On it. Give me the error and the file.

There could be many reasons this is failing.

I don't know yet. Add a log at the boundary and paste me the output.

This looks pretty good overall.

The shape is right. Two things will bite you in production: no retry, no timeout.

You should probably refactor this eventually.

Don't refactor this. It's ugly and it works. Fix the payment bug instead.

Let me know if you have any other questions!

Next: ship it behind a flag, watch the error rate for an hour.

Components

Cards
Surface fill, 1 px hairline border, 2 px radius, no shadow.
Tables
Hairline dividers only. Numbers in mono, right-aligned.
Prompts
A phosphor $ followed by mono text. Used for section labels, never as decoration.
Badges
Uppercase mono at 11 px, 1 px border, no fill except for the one active state.
Buttons
Bordered by default. Filled phosphor for the single primary action.
badgepowered by bobbyguru.com

Web & digital use

One phosphor call to action per screen
If two things glow, neither is the action.
Focus is visible, always
2 px phosphor ring, 2 px offset. Never remove the outline.
Code is a surface, not an accent
Surface background, hairline border, mono at 13 px, no syntax rainbow.
The embed badge is fixed
Border, mark, and the words powered by bobbyguru.com. It links to bobbyguru.com and may not be recoloured or reworded.

Print & signage

Paper
Uncoated, warm white. No gloss - the brand is matte.
Ink
Two-colour: black plus phosphor PMS 358 C equivalent. One-colour black is always acceptable.
Minimum print size
Mark 8 mm, lockup 32 mm wide, invoice lockup 18 mm mark height.
Placement
Top-left on documents, bottom-right on collateral. Never centred on a page.

Signage and vehicle lettering use the simplified mark in one colour, cut from matte vinyl. Never illuminated, never with a halo.

Motion

  • ›Cursor blink: 1.06 s, hard steps, never eased.
  • ›Hero scanline sheen: one slow pass, 8 s, opacity under 6%.
  • ›Hover and focus transitions: 120 ms colour only.
  • ›Nothing animates on scroll. No parallax, no counters, no reveal.

Iconography & imagery

No stock photography
Ever. Generated, painted or nothing.
One light source
Green screen light plus one warm lamp. Never flat, never bright.
Icons
1.5 px stroke, square caps, no filled icons except the mark.
Disclosure
Any image of Bobby carries the AI-generated line in the caption or alt text.

QR code

QR - ink on white

QR - ink on white

Default. Links to bobbyguru.com, error correction H so the mark can be centred later.

  • Print
  • Packaging
  • Slides

min 20 mm · 660 × 660

QR - ink, transparent

QR - ink, transparent

For placing on a light brand surface that is not pure white.

  • Layouts
  • Light merch

min 20 mm · 660 × 660

QR - white on ink

QR - white on ink

Knockout version for dark surfaces. Keep the ink quiet zone; never crop it.

  • Dark print
  • Apparel
  • Signage

min 20 mm · 660 × 660

Merch & apparel

Bobby.guru merch range on a dark surface↓ bobbyguru-merch.jpgJPG · 1536×1024

Everything is black. The mark is the only colour. Merch is for members and the team - it is never discounted and never printed in a second colourway. Artwork is always the monochrome white or simplified mark, supplied as vector.

  • Tee

    Black, mark on left chest at 45mm. Phosphor only.

  • Hoodie

    Black, mark on left chest at 55mm, small wordmark on the sleeve cuff.

  • Enamel mug

    Black, mark centred at 40mm. For the cola-and-code hours.

  • Laptop sticker

    Die-cut simplified mark, 30mm, matte black backing.

  • Mousepad

    Black stitched edge, simplified mark bottom-right at 25mm.

Mandatory copy

AI likeness disclosure
Every image of Bobby is AI-generated and interpretive. It is never presented as a photograph of the real person.
Memorial line
bobbyguru.com - built on the ideas of a guru who is not here to see it. 1974 - 2019.
Pricing honesty
This is not a cheap chatbot. If you want an agent that only talks, buy a cheaper one.
Agent labelling
Any output published from the agent is labelled as agent output where a reader could mistake it for a human review.
  • ›Bobby.guru and the [B] mark are ours. Third parties may use the embed badge unmodified and nothing else.
  • ›No partner, reseller or client may lock up their mark with ours without written approval.
  • ›The name is always written bobbyguru.com in lowercase in body copy, and Bobby.guru at the start of a sentence.
  • ›Never use the mark to imply endorsement of a product we have not reviewed.

Official channels

The only accounts that speak for Bobby.guru. Anything else is not us - report it.

Handoff

What you get
Every logo in SVG, PNG, WEBP, JPG and 300 dpi print PNG, plus the palette, type scale and this book.
Where files live
This page is the source of record. If it is not downloadable here, it is not an official asset.
Type licences
JetBrains Mono and Work Sans are open source (OFL). No licence purchase is needed for print or merch.
Approval
New lockups, co-branding and any recolour go through the brand owner before use.