/context-engine
Load brand context for marketing tasks. Use when: setting up brands, switching context, or needing industry benchmarks.
$ npx -y skills add indranilbanerjee/digital-marketing-pro --skill context-engine --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/context-engine
Context preview
The summary Claude sees to decide when to auto-load this skill.
Load brand context for marketing tasks. Use when: setting up brands, switching context, or needing industry benchmarks.
SKILL.md
context-engine.SKILL.mdname: context-engine
description: "Load brand context for marketing tasks. Use when: setting up brands, switching context, or needing industry benchmarks."
argument-hint: "[brand-slug]"
Context Engine — Shared Marketing Intelligence
When to Use This Skill
- User is setting up a new brand or project for marketing
- User switches between brands/clients (agency use case)
- Any other marketing skill needs brand context, industry data, compliance rules, or platform specs
- User asks about industry benchmarks, platform requirements, or regulatory compliance
Required Context
This skill loads and manages: 1. **Brand Profile** — identity, voice, audiences, competitors, goals (from `~/.claude-marketing/brands/`) 2. **Industry Profiles** — benchmarks, KPIs, channel effectiveness per industry (see `industry-profiles.md`) 3. **Compliance Rules** — geographic privacy laws + industry regulations (see `compliance-rules.md`) 4. **Platform Specs** — character limits, image sizes, algorithm signals per platform (see `platform-specs.md`) 5. **Scoring Rubrics** — standardized evaluation criteria for all content types (see `scoring-rubrics.md`)
Brand Profile Management
Loading a Brand
1. Check `~/.claude-marketing/brands/_active-brand.json` for the currently active brand 2. If active brand exists, load `~/.claude-marketing/brands/{slug}/profile.json` 3. If no active brand, prompt: "No active brand configured. Run /digital-marketing-pro:brand-setup to create one, or tell me about your brand and I'll help set it up."
Brand Profile Schema
{
"brand_name": "",
"brand_slug": "",
"created_at": "",
"updated_at": "",
"schema_version": "1.0.0",
"identity": {
"tagline": "",
"mission": "",
"vision": "",
"values": [],
"unique_selling_proposition": "",
"positioning_statement": "",
"elevator_pitch": ""
},
"business_model": {
"type": "",
"revenue_model": "",
"price_range": "",
"sales_cycle_length": "",
"average_deal_size": "",
"customer_lifetime_value": ""
},
"industry": {
"primary": "",
"secondary": [],
"regulated": false,
"regulation_codes": [],
"compliance_notes": ""
},
"target_markets": [],
"brand_voice": {
"formality": 5,
"energy": 5,
"humor": 3,
"authority": 5,
"personality_traits": [],
"tone_keywords": [],
"avoid_words": [],
"prefer_words": [],
"this_not_that": [],
"sample_content": []
},
"channels": {
"active": [],
"primary": "",
"handles": {}
},
"competitors": [],
"goals": {
"primary_objective": "",
"kpis": [],
"budget_range": "",
"team_size": ""
}
}Switching Brands
When user says "switch to [brand name]": 1. Run: `python "${CLAUDE_PLUGIN_ROOT}/scripts/setup.py" --switch-brand SLUG` 2. The script handles fuzzy matching, validation, and updates `_active-brand.json` 3. Confirm: "Switched to [brand_name]. All marketing outputs will now use this brand's voice, compliance rules, and context."
Or use: `/digital-marketing-pro:switch-brand`
How Other Modules Use This Skill
Every module should: 1. Check if an active brand exists before producing marketing outputs 2. Load relevant industry profile for benchmarks and channel recommendations 3. Auto-apply compliance rules based on brand's `target_markets` and `industry.regulation_codes` 4. Reference platform specs when creating platform-specific content 5. Use scoring rubrics when evaluating or grading content quality 6. Use **adaptive scoring** — run `adaptive-scorer.py` to get brand-specific weights before content scoring 7. **Save campaign data** — use `campaign-tracker.py` to persist plans, performance, and insights 8. **Check past campaigns** — before making recommendations, check if similar campaigns exist in brand history
Business Model Types
The following types trigger different funnel models, KPI frameworks, and channel strategies:
- `B2B_SaaS` — MRR/ARR focused, product-led or sales-led growth
- `B2C_eCommerce` — ROAS focused, product catalog marketing
- `B2C_DTC` — Direct-to-consumer brand building + performance
- `B2B_Services` — Thought leadership, long sales cycles
- `Local_Business` — Google Business Profile, local SEO, reviews
- `Agency` — Multi-client management, white-label outputs
- `Creator` — Personal brand, audience building, monetization
- `Enterprise` — ABM, buying committees, complex sales
- `Non_Profit` — Donor acquisition, awareness, advocacy
- `Marketplace` — Two-sided acquisition, liquidity, trust
Brand Voice Scoring
The brand voice scorer (`brand-voice-scorer.py`) automatically normalizes profile data:
- Reads `brand_voice.formality` (1-10 int scale) → converts to 0.0-1.0 float internally
- Maps `brand_voice.prefer_words` → `preferred_words`, `brand_voice.avoid_words` → `avoided_words`
- Supports both the full profile schema (from brand-setup) and legacy direct schemas
Data Persistence
Campaign data, performance snapshots, and marketing insights persist across sessions:
~/.claude-marketing/brands/{slug}/
├── campaigns/ # Campaign plans and post-mortems
│ ├── _index.json # Campaign index for quick lookup
│ └── {id}.json # Individual campaign data
├── performance/ # Performance snapshots over time
│ └── {campaign}-{date}.json
├── insights.json # Marketing learnings (last 200)
├── content-library/ # Saved content pieces
└── voice-samples/ # Brand voice reference contentUse `campaign-tracker.py` for all persistence operations.
MCP Integrations
When MCP servers are configured (in `.mcp.json`), modules can pull real data:
- **Google Analytics** → actual traffic/conversion data for performance reports
- **Google Search Console** → real ranking data for SEO audits
- **Google Ads / Meta** → live campaign performance for paid advertising
- **HubSpot** → CRM data for funnel analysis
- **Mailchimp** → email campaign metri
Read more
name: context-engine description: "Load brand context for marketing tasks. Use when: setting up brands, switching context, or needing industry benchmarks." argument-hint: "[brand-slug]"
Context Engine — Shared Marketing Intelligence
When to Use This Skill
- User is setting up a new brand or project for marketing
- User switches between brands/clients (agency use case)
- Any other marketing skill needs brand context, industry data, compliance rules, or platform specs
- User asks about industry benchmarks, platform requirements, or regulatory compliance
Required Context
This skill loads and manages: 1. **Brand Profile** — identity, voice, audiences, competitors, goals (from `~/.claude-marketing/brands/`) 2. **Industry Profiles** — benchmarks, KPIs, channel effectiveness per industry (see `industry-profiles.md`) 3. **Compliance Rules** — geographic privacy laws + industry regulations (see `compliance-rules.md`) 4. **Platform Specs** — character limits, image sizes, algorithm signals per platform (see `platform-specs.md`) 5. **Scoring Rubrics** — standardized evaluation criteria for all content types (see `scoring-rubrics.md`)
Brand Profile Management
Loading a Brand
1. Check `~/.claude-marketing/brands/_active-brand.json` for the currently active brand 2. If active brand exists, load `~/.claude-marketing/brands/{slug}/profile.json` 3. If no active brand, prompt: "No active brand configured. Run /digital-marketing-pro:brand-setup to create one, or tell me about your brand and I'll help set it up."
Brand Profile Schema
{
"brand_name": "",
"brand_slug": "",
"created_at": "",
"updated_at": "",
"schema_version": "1.0.0",
"identity": {
"tagline": "",
"mission": "",
"vision": "",
"values": [],
"unique_selling_proposition": "",
"positioning_statement": "",
"elevator_pitch": ""
},
"business_model": {
"type": "",
"revenue_model": "",
"price_range": "",
"sales_cycle_length": "",
"average_deal_size": "",
"customer_lifetime_value": ""
},
"industry": {
"primary": "",
"secondary": [],
"regulated": false,
"regulation_codes": [],
"compliance_notes": ""
},
"target_markets": [],
"brand_voice": {
"formality": 5,
"energy": 5,
"humor": 3,
"authority": 5,
"personality_traits": [],
"tone_keywords": [],
"avoid_words": [],
"prefer_words": [],
"this_not_that": [],
"sample_content": []
},
"channels": {
"active": [],
"primary": "",
"handles": {}
},
"competitors": [],
"goals": {
"primary_objective": "",
"kpis": [],
"budget_range": "",
"team_size": ""
}
}Switching Brands
When user says "switch to [brand name]": 1. Run: `python "${CLAUDE_PLUGIN_ROOT}/scripts/setup.py" --switch-brand SLUG` 2. The script handles fuzzy matching, validation, and updates `_active-brand.json` 3. Confirm: "Switched to [brand_name]. All marketing outputs will now use this brand's voice, compliance rules, and context."
Or use: `/digital-marketing-pro:switch-brand`
How Other Modules Use This Skill
Every module should: 1. Check if an active brand exists before producing marketing outputs 2. Load relevant industry profile for benchmarks and channel recommendations 3. Auto-apply compliance rules based on brand's `target_markets` and `industry.regulation_codes` 4. Reference platform specs when creating platform-specific content 5. Use scoring rubrics when evaluating or grading content quality 6. Use **adaptive scoring** — run `adaptive-scorer.py` to get brand-specific weights before content scoring 7. **Save campaign data** — use `campaign-tracker.py` to persist plans, performance, and insights 8. **Check past campaigns** — before making recommendations, check if similar campaigns exist in brand history
Business Model Types
The following types trigger different funnel models, KPI frameworks, and channel strategies:
- `B2B_SaaS` — MRR/ARR focused, product-led or sales-led growth
- `B2C_eCommerce` — ROAS focused, product catalog marketing
- `B2C_DTC` — Direct-to-consumer brand building + performance
- `B2B_Services` — Thought leadership, long sales cycles
- `Local_Business` — Google Business Profile, local SEO, reviews
- `Agency` — Multi-client management, white-label outputs
- `Creator` — Personal brand, audience building, monetization
- `Enterprise` — ABM, buying committees, complex sales
- `Non_Profit` — Donor acquisition, awareness, advocacy
- `Marketplace` — Two-sided acquisition, liquidity, trust
Brand Voice Scoring
The brand voice scorer (`brand-voice-scorer.py`) automatically normalizes profile data:
- Reads `brand_voice.formality` (1-10 int scale) → converts to 0.0-1.0 float internally
- Maps `brand_voice.prefer_words` → `preferred_words`, `brand_voice.avoid_words` → `avoided_words`
- Supports both the full profile schema (from brand-setup) and legacy direct schemas
Data Persistence
Campaign data, performance snapshots, and marketing insights persist across sessions:
~/.claude-marketing/brands/{slug}/
├── campaigns/ # Campaign plans and post-mortems
│ ├── _index.json # Campaign index for quick lookup
│ └── {id}.json # Individual campaign data
├── performance/ # Performance snapshots over time
│ └── {campaign}-{date}.json
├── insights.json # Marketing learnings (last 200)
├── content-library/ # Saved content pieces
└── voice-samples/ # Brand voice reference contentUse `campaign-tracker.py` for all persistence operations.
MCP Integrations
When MCP servers are configured (in `.mcp.json`), modules can pull real data:
- **Google Analytics** → actual traffic/conversion data for performance reports
- **Google Search Console** → real ranking data for SEO audits
- **Google Ads / Meta** → live campaign performance for paid advertising
- **HubSpot** → CRM data for funnel analysis
- **Mailchimp** → email campaign metri
Your agency just signed a 50-brand client. The previous agency left no playbook. Three brands are bleeding budget, two have stale positioning, one is launching in a regulated jurisdiction next month. Where do you start?
Other skills on digital-marketing-pro.
- /ab-test-plan
Design A/B and multivariate tests. Use when: sample size calculation, testing hypothesis, CRO experimentation.
Open skill - /ad-creative
Generate platform-specific ad copy. Use when: Google RSA, Meta, LinkedIn, TikTok ad variations with quality scoring.
Open skill - /add-integration
Add MCP server integrations. Use when: connecting a custom tool, API, or service to the plugin via .mcp.json.
Open skill - /aeo-audit
Audit AI search visibility. Use when: checking brand presence in ChatGPT, Perplexity, AI Overviews, Gemini.
Open skill - /aeo-geo
Optimize AI engine visibility. Use when: AEO/GEO strategy, citation optimization, entity consistency across AI platforms.
Open skill - /agency-dashboard
Portfolio-level agency dashboard aggregating health metrics across all client brands — campaign status, budget pacing, KPI attainment, team utilization. Use when reviewing cross-brand portfolio health, preparing for agency leadership standups, or getting a single-view snapshot
Open skill

