diff --git a/skills/brand-voice-enforcement/SKILL.md b/skills/brand-voice-enforcement/SKILL.md index bd9dace..ff42fdc 100644 --- a/skills/brand-voice-enforcement/SKILL.md +++ b/skills/brand-voice-enforcement/SKILL.md @@ -15,6 +15,10 @@ description: > Apply Message Point Media's brand voice to all content creation. Load brand settings, apply voice constants and tone flexes, generate content, and validate the output. +> **Assets are baked in.** This plugin ships the full MPM logo catalog (PNG + SVG) and the +> Montserrat / Open Sans fonts inside `assets/`. You never need the Google Drive connector or +> the Google MCP to fetch a logo or font — those are slow. Use the local files directly. + ## Loading Brand Settings Find MPM's brand settings using this sequence. Stop as soon as you find them: @@ -25,12 +29,13 @@ Find MPM's brand settings using this sequence. Stop as soon as you find them: > ⚠️ **CRITICAL — READ METHOD:** The `Read` tool **cannot** access `.remote-plugins` paths and will fail silently, returning nothing. You **must** use `bash` with a `cat` command to read this file. > - > Use the exact bash path — translate the plugin directory location to its bash mount path. For example, if the plugin is at: - > `/Users//Library/Application Support/Claude/local-agent-mode-sessions/…/rpm/plugin_01HEVtHYefvdyxRVARpJsdRj/settings/brand-voice.local.md` - > - > …run it as: + > Use the exact bash path — translate the plugin directory location to its bash mount path. The plugin root is also exposed as `${CLAUDE_PLUGIN_ROOT}`: > ```bash - > cat "/sessions//mnt/.remote-plugins/plugin_01HEVtHYefvdyxRVARpJsdRj/settings/brand-voice.local.md" + > cat "${CLAUDE_PLUGIN_ROOT}/settings/brand-voice.local.md" + > ``` + > If `${CLAUDE_PLUGIN_ROOT}` is unset, translate the plugin path manually, e.g.: + > ```bash + > cat "/sessions//mnt/.remote-plugins/plugin_/settings/brand-voice.local.md" > ``` > > **If you cannot read the file:** STOP. Do not proceed with content generation. Tell the user: "I cannot access the brand voice settings file. Please verify the plugin is installed and the session has access to `.remote-plugins`." @@ -47,30 +52,45 @@ Also check for `.claude/brand-voice-guidelines.md` in the working folder — thi ## Logo Usage -When producing any document, presentation, proposal, or visual content, **always include the appropriate MPM logo.** Logo files are stored in the MPM Logos folder on Google Drive: +When producing any document, presentation, proposal, or visual content, **always include the appropriate MPM logo.** Logo files are **baked into this plugin** — no Google Drive fetch needed: -> **Google Drive — MPM Logos (authoritative):** -> `drive.google.com/drive/folders/1xpO_sh0dQvWiMQbdmbhRZARuev4RpZiL` -> - `01 New Logos > PNG` — Use for documents, presentations, web -> - `01 New Logos > SVG` — Use for print and large-format +> **Baked-in logos (authoritative, instant):** +> - `assets/logos/png/` — PNG/JPG for documents, presentations, web, email +> - `assets/logos/svg/` — SVG for print and large-format +> +> Resolve a logo's absolute path through the plugin root, then hand that path to the +> document/image tool: +> ```bash +> ls "${CLAUDE_PLUGIN_ROOT}/assets/logos/png/" +> echo "${CLAUDE_PLUGIN_ROOT}/assets/logos/png/Logo-Standard-Dark.png" +> ``` +> If `${CLAUDE_PLUGIN_ROOT}` is unset, translate the plugin path to its `.remote-plugins` +> bash mount (same pattern as the settings file above). Always confirm the path with `ls` +> before inserting. The upstream source of truth remains the MPM Logos Drive folder +> (`drive.google.com/drive/folders/1xpO_sh0dQvWiMQbdmbhRZARuev4RpZiL`), but you should not +> need to touch it at runtime. ### Logo Selection Rules -| Background | Logo to Use | File | +| Background | Logo to Use | File (in `assets/logos/png/`) | |---|---|---| -| White or light backgrounds | **Standard Dark (DEFAULT)** | `Logo Standard-Dark.png` | +| White or light backgrounds | **Standard Dark (DEFAULT)** | `Logo-Standard-Dark.png` | +| White / off-white backgrounds | **Gold + Black text** | `Logo-Gold-Black.png` | | Dark, charcoal, or dark-gold backgrounds | **Gold + White text** | `Logo-Gold-White.png` | | Cover pages, title blocks with dark header bar | **Gold + White text** | `Logo-Gold-White.png` | | Single-color black print | **Black text only** | `Logo-Black-Text.png` | | Dark background, icon only needed | **White Cutout** | `Logo-White-Cutout.png` | +| Pre-composed dark banner (no transparency) | **White Cutout on dark BG** | `Logo-White-Cutout-Reversed-Text-BG.jpg` | + +For print and large-format output, use the matching SVG from `assets/logos/svg/` (e.g. `Logo-Standard-Dark.svg`, `Standard-Logo-Dark.svg`). ### Transit-Specific Content (proposals, specs, sell sheets) For Community Transit or any transit agency deliverable, use the **TransitPoint sub-brand lockup**: -- Light background: `MPM-Transitpoint-Dark.png` -- Dark background: `MPM-Transitpoint-Light.png` +- Light background: `assets/logos/png/MPM-Transitpoint-Dark.png` +- Dark background: `assets/logos/png/MPM-Transitpoint-Light.png` -These are available in the same MPM Logos folder under the TransitPoint subfolder. +Transit product-line sub-brand marks (Mobile, Smart Intermodal, Smart Stop, Solar, MPLocal, MPMetro, MPRail, MPTram, MPXpress) are SVG-only in `assets/logos/svg/` — always subordinate to the primary MPM logo. ### Placement in Documents @@ -79,12 +99,17 @@ These are available in the same MPM Logos folder under the TransitPoint subfolde - **PDFs:** Cover page and header/footer. - **Emails / HTML:** Above the signature block or in the email header. -### When Logo Files Are Not Accessible +### When a Logo File Can't Be Resolved -If the Google Drive logos folder is not accessible in the current session: -1. Explicitly tell the user: "I was unable to fetch the logo files from Google Drive. Please insert the appropriate logo manually — for a light-background document, use `Logo Standard-Dark.png` from the MPM Logos folder." -2. Reserve a clearly labeled placeholder in the document: `[INSERT MPM LOGO HERE — Logo Standard-Dark.png]` -3. Do **not** omit the logo silently or substitute a text-only reference without noting it. +Logos are baked in, so this should be rare. If `${CLAUDE_PLUGIN_ROOT}` is unset and the +`.remote-plugins` path doesn't resolve: +1. Run `ls` on the candidate `assets/logos/png/` path to diagnose, and try the + `${CLAUDE_PLUGIN_ROOT}` form first. +2. If it still cannot be found, tell the user explicitly: "I could not resolve the baked-in + logo path. The default light-background logo is `assets/logos/png/Logo-Standard-Dark.png` + inside the mpm-brand-voice plugin." Reserve a clearly labeled placeholder: + `[INSERT MPM LOGO HERE — Logo-Standard-Dark.png]`. +3. Do **not** omit the logo silently or substitute a non-MPM logo. ## MPM Brand Identity Quick Reference @@ -92,15 +117,15 @@ Before generating content, internalize these MPM-specific constants from the set **Voice:** Expert Partner — knowledgeable without being condescending. We know transit technology deeply; we help agencies succeed, not just sell them hardware. -**Taglines in use:** -- Primary: "Compelling… Affordable… Dynamic… Messaging… It's What We Do!" -- Aspirational: "Born to Innovate. Built to Last." (brand-forward and thought leadership contexts) +**Tagline in use:** +- Primary: "Born to Innovate. Built to Last." — use across all branded materials and client-facing communications **Visual Identity — Non-Negotiable (apply to all documents and presentations):** -Typography: -- Headings / titles: **Montserrat** (Bold for H1, SemiBold for H2/H3) -- Body text: **Open Sans** (Regular, 11pt / 22 half-points in DOCX) +Typography (**baked in** at `assets/fonts/` — no Google Fonts download needed): +- Headings / titles: **Montserrat** (`assets/fonts/Montserrat-wght.ttf`) — Bold for H1, SemiBold for H2/H3 +- Body text: **Open Sans** (`assets/fonts/OpenSans-wght.ttf`) — Regular, 11pt / 22 half-points in DOCX +- Both are variable fonts; the single file per family covers every weight - Do **not** substitute Arial, Calibri, or any system default font Color palette (hex values — use exactly): @@ -186,10 +211,11 @@ After generating: **Technical depth vs. audience:** If unsure of the audience's technical level, default to medium depth with a note — it's easier to add detail than strip jargon after the fact. -**Tagline use:** "Born to Innovate. Built to Last." is aspirational/thought leadership only — do not use in standard sales collateral or cold outreach. +**Tagline use:** "Born to Innovate. Built to Last." is MPM's primary tagline — use it across all branded materials, including sales collateral and cold outreach. Render it exactly as written, with a period after each clause. ## Reference Files - **`references/voice-constant-tone-flexes.md`** — The voice constant / tone flex mental model, "We Are / We Are Not" structure, and tone matrix - **`references/before-after-examples.md`** — Before/after examples per content type showing enforcement in practice -- **`references/mpm-brand-resources.md`** — MPM-specific brand document locations, logo file index, color values, and Google Drive links +- **`references/mpm-brand-resources.md`** — MPM-specific brand document locations, the baked-in logo/font index, color values, and Google Drive links +- **`../../assets/README.md`** — Baked-in asset manifest: logo quick-pick table, font list, and path-resolution guidance