marketing-os: A Method-and-Voice Engine for Claude Skills

A Claude Skills plugin that derives GTM deliverables from a business's own evidence and writing instead of marketing theory — 13 skills across 4 tiers, all reading from two founder-specific source files instead of a shared template.

  • Claude Code
  • Claude Agent Skills
  • Markdown / Mermaid
  • Bash
13
Skills shipped · across 4 tiers, from onboarding to board narrative
4
Pipeline tiers · Tier 0 foundation → Tier 3 stretch
2
Source-of-truth files · METHOD.md and VOICE.md drive every downstream skill
13/13
Skills passing independent eval · subagent evals + claude plugin validate --strict

Project Overview

Most marketing Claude Skills encode marketing theory: they ship a framework, and every user who runs them gets the same skeleton back with different nouns swapped in. marketing-os was built to solve a narrower, harder problem — make two different businesses running the same skill produce output that is structurally and stylistically different, because it’s derived from what each business actually does and how each business actually writes, not from a shared template.

The challenge was architectural as much as it was about prompt quality: a one-time intake needed to produce two durable, reusable artifacts (a “method” file and a “voice” file), every other skill in the package needed to read both before generating anything, and a validation layer needed to prove — not just assert — that two runs against different inputs actually diverged. The repo now ships 13 skills across four tiers, all wired through that same two-file contract.

Project Scope

Designed the two-file contract that everything else hangs off ofMETHOD.md (how a business argues: opening move, proof type, narrative vs. comparison, claim posture, competitor handling, audience default) and VOICE.md (how it writes: cadence, punctuation habits, vocabulary, structural tics), each derived from real evidence and writing samples rather than a questionnaire the user fills in from memory.

Built the Tier 0 foundation skillsonboard as the single entry point, orchestrating compile-method and capture-voice back-to-back in one sitting (target: under 15–20 minutes of real user time), with a genericness check that forces a follow-up question any time an answer reads as boilerplate that could apply to any B2B SaaS company.

Built the shared preamble/postamble every Tier 1+ skill runs — check for METHOD.md/VOICE.md (stop and hand off to onboard rather than fabricating them if missing), structure the deliverable from METHOD.md’s Structural Defaults, draft, then run a human-scrub pass against a generic-AI-writing checklist reconciled against VOICE.md so a founder’s own real tics aren’t mistaken for AI tells.

Shipped 9 downstream skills across 3 tiers — from flagship (win-loss-to-messaging) through core GTM (positioning-from-evidence, website-messaging-audit, launch-gtm-plan, sales-enablement-kit), extended GTM (competitive-brief, pricing-packaging-recommendation, lifecycle-campaign-brief, demand-gen-channel-plan), to a Tier 3 stretch skill (board-narrative-builder) that consumes other skills’ outputs as its own evidence.

Validated the architecture, not just the prompts — independent subagent evals against all 13 skills, cross-cutting tests for structural distinctness, voice distinctness, and genericness catch rate, and a full pass against the real Claude Code plugin/skill spec (claude plugin validate . --strict).

How It Works

1. Install and first run

Fig. 1 — Install & first run

Step 1
Add the marketplace
/plugin marketplace add reid-fredrickson/marketing-os
Step 2
Install the plugin
/plugin install marketing-os@marketing-os
Step 3
Reload
/reload-plugins
Decision
METHOD.md and VOICE.md already in this project?
No

Run /marketing-os:onboard first.

Yes

Invoke any Tier 1–3 skill directly.

2. Tier 0 — turning evidence into two reusable files

onboard is a thin orchestrator: it doesn’t add its own elicitation logic, it runs compile-method and capture-voice in sequence and confirms both outputs before handing off.

Fig. 2 — Tier 0: turning evidence into two reusable files

compile-method
Step 1
3–5 evidence artifacts
Positioning doc, homepage copy, win-loss notes, call transcript, competitor battlecard.
Step 2
7 forced-choice questions
Opening move, proof reflex, structure, claim posture, competitors, audience, process.
Step 3
1 constraint question
What should never appear in output.
Decision
Genericness check — could this apply to any B2B SaaS with the nouns swapped?
Too generic

Back to Step 2 for a sharper answer.

Anchored

Write METHOD.md

capture-voice
Step 1
3–5 writing samples
Emails, Slack, LinkedIn, memos — no new writing required.
Step 2
2 override questions
Always-keep tic / never-say phrase.
Step 3
Extract the fingerprint
Cadence, punctuation, vocabulary, structural habits, calibration quotes.
Output
Write VOICE.md

3. Tier 1–3 — every downstream skill shares one execution shape

Whichever of the 9 downstream skills gets invoked, it runs the same preamble and postamble — only the middle (evidence gathering and structure) is skill-specific.

Fig. 3 — Every downstream skill shares this shape

Invoke
User invokes a skill
e.g. win-loss-to-messaging
Decision
METHOD.md and VOICE.md present?
Missing

Stop — tell the user to run onboard first. Never fabricate a plausible Method/Voice.

Present

Read both files in full.

Gather
Skill-specific evidence
Interviews, usage data, pricing pages, reused Evidence Anchors from METHOD.md.
Structure
From METHOD.md's Structural Defaults
Reframe vs. proof-first, narrative vs. comparison, claim posture, competitor handling, audience default, emphasis weight.
Draft
Write the deliverable's sections
Scrub
Human-scrub pass
Checked against the ai-tell-patterns.md checklist.
Reconcile
Every hit reconciled against VOICE.md
Sample-attested tics kept, absent patterns scrubbed — explicit Never/Always rules always win.
Decision
Still matches VOICE.md's cadence profile?
No

One rewrite pass back toward VOICE.md.

Yes

Deliver.

4. The full skill map

Fig. 4 — The full skill map

METHOD.md VOICE.md

Feed every skill in Tiers 1–3 below

Tier 0 — Foundation
onboard
compile-method
capture-voice
Tier 1 — Core GTM
win-loss-to-messagingFlagship
positioning-from-evidence
website-messaging-audit
launch-gtm-plan
sales-enablement-kit
Tier 2 — Extended GTM
competitive-brief
pricing-packaging-recommendation
lifecycle-campaign-brief
demand-gen-channel-plan
Tier 3 — Stretch
board-narrative-builder
  • win-loss-to-messaging output feeds → sales-enablement-kit
  • win-loss-to-messaging output feeds → board-narrative-builder
  • launch-gtm-plan output feeds → board-narrative-builder

5. Validating divergence, not just output quality

Because the whole premise is that two businesses get structurally different output, the validation layer had to test for divergence directly rather than trust prompt quality alone: independent subagent evals against all 13 skills, plus cross-cutting checks for structural distinctness (two METHOD.md files produce different section order and emphasis, not the same skeleton), voice distinctness, reconciliation accuracy (real tics vs. generic AI tells), and genericness catch rate — run against synthetic fixtures before being layered on top of the real plugin spec validation (claude plugin validate . --strict).

Outcomes

  • 13 skills shipped across 4 tiers, all reading from the same two founder-specific source files instead of a shared template.
  • Structural distinctness confirmed: two runs against different METHOD.md inputs produce different section order and emphasis, not the same skeleton with different nouns — the core bet the whole package rests on.
  • 13/13 skills pass independent subagent evals and claude plugin validate . --strict; every eval round surfaced and closed a real gap rather than a documentation-only pass.
  • Set up the foundation for the package’s ongoing build-out, tracked skill-by-skill in VERSIONS.md as new tiers ship.