Marketing OS Starter
Skill by ara.so — Marketing Skills collection.
What It Does
Marketing OS Starter is a complete AI marketing team built for Claude Code. It includes 4 specialized agents (Orchestrator, Researcher, Strategist, Copywriter), 5 marketing skills, and battle-tested frameworks that turn research into creative briefs into finished copy — all with persistent memory that compounds across sessions.
The system runs on structured agent handoffs (JSON schemas), enforces brand voice automatically, and applies proven frameworks like the 6 Hook Formulas and BOFU Domination to every piece of output.
Installation
The project structure:
Initial Configuration
1. Configure CLAUDE.md
This is the brain of your system. Claude reads it at the start of every session.
2. Set Up Your Agency Brand
Edit brands/your-agency/BRAND.md:
Edit brands/your-agency/voice.md:
3. Add Your First Client
Copy the example client template:
Edit brands/your-agency/clients/acme-corp/BRAND.md:
Key Commands and Workflows
Running a Complete Campaign Pipeline
Start Claude Code and describe your need naturally:
The Orchestrator will automatically:
- Invoke Researcher → produces
audience-profile.json - Invoke Strategist → produces
creative-brief.json - Invoke Copywriter → produces finished copy
Manual Skill Invocation
You can also call skills directly:
Agent Handoff Pattern
Agents communicate through structured JSON. Example flow:
Researcher Output (memory/marketing-os/campaigns/acme-q2/audience-profile.json):
Strategist Reads the audience profile and outputs (creative-brief.json):
Copywriter Reads the brief and produces final copy with the selected hook formula applied.
Working with Memory Files
Campaign History
After each campaign, the Strategist logs results to memory/marketing-os/campaign-history.md:
This memory prevents repeating failed approaches and reinforces what works.
Brand Voice Evolution
As you approve copy, add winning examples to memory/marketing-os/brand-voice.md:
After 5-10 campaigns, the Copywriter matches your voice without explicit direction.
Task Queue
memory/marketing-os/working.md tracks the current pipeline:
You can resume exactly where you left off in any session.
Real Usage Examples
Example 1: Full Campaign from Scratch
Example 2: Research Only
Example 3: Writing with Existing Brief
Configuration Reference
Agent Roles
Skill Triggers
The proactive routing system in .claude/rules/proactive-marketing.md auto-detects:
- Research triggers: "who's our audience", "competitive landscape", "pain points"
- Brief triggers: "plan a campaign", "what should we say", "strategy"
- Copy triggers: "write copy", "landing page", "headline"
- Social triggers: "LinkedIn post", "tweet", "social content"
- Email triggers: "drip campaign", "welcome sequence", "nurture"
Framework Reference
All frameworks live in memory/marketing-os/marketing-wisdom.md:
6 Hook Formulas:
- Observation + Stat: "I analyzed 500 landing pages. 89% make the same mistake."
- Contrarian Challenge: "Everyone says X. That's surface-level thinking."
- Harsh Reality: "Harsh reality: your approach is costing you $X."
- Personal Limitation: "I used to believe X. Then I ran the numbers."
- Social Proof: "I sat in on 12 board meetings. Same scene every time."
- Simple Declarative: "Your attribution is broken. Here's why."
7 Growth Playbooks (abbreviated):
- Playbook 1: Free Tool Flywheel
- Playbook 2: LLM Citation Strategy
- Playbook 3: Vertical Domination
- Playbook 6: Marketing Mistakes Content (3-5x engagement)
- Playbook 7: Data Network Effects
Common Patterns
Pattern: Multi-Client Agency Setup
When starting a campaign, specify the client:
The Orchestrator will load brands/your-agency/clients/acme-corp/ context automatically.
Pattern: Testing with Example Brand
The repo includes a complete fictional agency:
Test the full pipeline before setting up your own brand:
Pattern: Voice Evolution Loop
- Generate copy with current voice guidelines
- Review and edit to match your actual voice
- Log approved examples to
memory/marketing-os/brand-voice.md - Repeat — the Copywriter learns from approved examples
After 5-10 campaigns, the voice matching becomes automatic.
Troubleshooting
Issue: Generic output despite brand voice file
Problem: Copy doesn't match your voice, sounds generic.
Solution:
- Check
brands/your-agency/voice.mdhas specific examples (not just rules) - Add 2-3 "Good vs Bad" examples showing your voice clearly
- Add winning headlines to
memory/marketing-os/brand-voice.md
Issue: Agent doesn't invoke the right skill
Problem: You ask for research but get copy instead.
Solution: The proactive routing in .claude/rules/proactive-marketing.md may need more trigger phrases. Add your common phrasing:
Or invoke skills manually: /research instead of relying on auto-detection.
Issue: Handoff breaks between agents
Problem: Strategist can't find Researcher output.
Solution:
- Check that Researcher saved output to
memory/marketing-os/campaigns/[campaign-name]/ - Verify JSON schema matches
schemas/audience-profile.json - Manually reference the file:
Issue: Campaign history not influencing new campaigns
Problem: Strategist repeats a failed approach.
Solution: Ensure memory/marketing-os/campaign-history.md has clear "What Worked / What Didn't" sections:
The Strategist reads this file before creating new briefs.
Issue: Memory files getting too large
Problem: campaign-history.md or brand-voice.md becomes unwieldy after 50+ campaigns.
Solution: Archive old campaigns quarterly:
Advanced: Adding Custom Skills
To add a new skill (e.g., /paid-ads):
- Create
.claude/skills/paid-ads.md - Define the skill structure:
- Add trigger phrases to
.claude/rules/proactive-marketing.md - Create a schema if needed:
schemas/paid-ads-plan.json
The Orchestrator will automatically detect and route requests.
Integration with MCP Servers
To connect live data sources:
Google Analytics (GA4):
Then in research:
HubSpot CRM:
The Researcher and Strategist can query live data instead of relying solely on manual input.
Start using Marketing OS: Open Claude Code in your marketing-os-starter directory and describe your first campaign. The system handles the rest.

