By equiforte
Core branding, design system, color tokens, typography, and output configuration for the reporting plugins suite. Required by all other plugins.
npx claudepluginhub equiforte/reporting-services-plugins --plugin brandingResolves branding configuration for report output. Triggered when the user asks to "generate a report", "create a PDF", "build a dashboard", "make a presentation", "export as Excel", "create a slide deck", or any output-generation request. Also triggered when the user asks to "set up branding", "configure brand colors", "apply brand", or "resolve branding".
Provides design system tokens, component patterns, and language guidelines for report output. Triggered when the agent needs to look up color tokens, typography rules, component styling, number formatting, table patterns, chart palettes, or terminology guidelines for any output format. Also triggered when the user asks about "design system", "brand tokens", "component styles", or "formatting rules".
Coordinates multi-format output generation. Triggered when the user requests output in multiple formats simultaneously (e.g., "create a PDF and an Excel and a dashboard"), or when the user asks to "generate reports in multiple formats", "create all outputs", "multi-format export", or requests more than one output type in a single message.
A Claude Code mono-repo plugin for publishing reports. Covers everything related to putting data into a presentation, document, spreadsheet, dashboard, or any other deliverable format.
| Plugin | Formats | Dependencies |
|---|---|---|
| branding (core, required) | — | None |
| text-generation | Markdown, HTML, TXT, JSON | None |
| document-generation | PDF, DOCX | Python 3.10+, LibreOffice, pandoc, poppler |
| spreadsheet-generation | XLSX, CSV | Python 3.10+, LibreOffice |
| presentation-generation | PPTX | Node.js 20+, Python 3.10+ |
| apps-generation | Dashboard, Report, Comparison, Timeline | Node.js 20+ |
# Add the marketplace
claude plugin marketplace add {org}/reporting-plugins
# Install core (required)
claude plugin install branding@reporting-plugins
# Install the generators you need
claude plugin install text-generation@reporting-plugins
claude plugin install document-generation@reporting-plugins
claude plugin install spreadsheet-generation@reporting-plugins
claude plugin install presentation-generation@reporting-plugins
claude plugin install apps-generation@reporting-plugins
Then just ask:
"Create a Q1 performance report as a PDF with revenue $12.4M, EBITDA $3.1M, headcount 142"
Not every team needs every format. Install only what you need:
| Profile | Install | Dependencies |
|---|---|---|
| text-only | branding + text-generation | None |
| documents | + document-generation + spreadsheet-generation | Python, LibreOffice, pandoc, poppler |
| presentations | + presentation-generation | + Node.js |
| full | All plugins | Python, Node.js, LibreOffice, pandoc, poppler |
brew install python node pandoc poppler
brew install --cask libreoffice
pip install -r document-generation/requirements.txt
pip install -r spreadsheet-generation/requirements.txt
cd presentation-generation && npm install && cd ..
cd apps-generation && npm install && cd ..
Every output is branded consistently. The plugin ships with Acme Inc defaults.
Create .reporting/brand-config.json in your project to override any brand values:
{
"firm": {
"name": "Your Company",
"tagline": "Your tagline"
},
"colors": {
"primary": "#003366",
"accent": "#0077CC"
}
}
Only override what you need — everything else falls back to defaults. See branding/skills/brand/assets/brand-config.schema.json for the full schema.
Place custom assets in .reporting/:
.reporting/
├── brand-config.json # Override brand values
├── logo.png # Primary logo (400x100px recommended)
├── logo-dark.png # Logo for dark backgrounds
├── icon.png # Square icon (256x256px)
└── fonts/
└── heading.woff2 # Custom heading font
For quick tweaks, create .claude/branding.local.md:
Use a warm earth-tone palette.
Company name is "Terra Holdings".
Use serif fonts for headings.
Disable with "nl_overrides": false in brand-config.json for fully reproducible builds.
All output goes to output/ in your working directory:
output/
├── pdf/ # PDF documents
├── docx/ # Word documents
├── pptx/ # PowerPoint decks
├── xlsx/ # Excel spreadsheets
├── csv/ # CSV exports
├── text/ # Markdown, HTML, TXT, JSON
└── app/ # Interactive React apps
Set "mode": "strict" in brand-config.json for strict validation:
.validation.json sidecar alongside each artifactDefault is "best_effort" — warn and continue.
When you request multiple formats, the agent:
# Run all tests
bash _tests/e2e/run_all.sh
# Run by profile
bash _tests/e2e/run_all.sh --profile text-only
bash _tests/e2e/run_all.sh --profile documents
bash _tests/e2e/run_all.sh --profile full
# Run by test number
bash _tests/e2e/run_all.sh --test 10
Apache 2.0
Create branded visual content (presentations, carousels, infographics, HTML pages) with Aaker personality-driven design, style recommendation engine, visual components, 26 visual styles, design systems, and Presentation Zen principles
Share bugs, ideas, or general feedback.
Brand Voice transforms scattered brand materials into enforceable AI guardrails — automatically. It searches across Notion, Google Drive, Confluence, Gong, Slack, and meeting transcripts to distill your strongest brand signals into a single source of truth, then applies them to every piece of AI-generated content. The more your team creates with Claude, the more consistent your brand becomes.
Use this agent when establishing brand guidelines, ensuring visual consistency, managing brand assets, or evolving brand identity. This agent specializes in creating and maintaining cohesive brand experiences across all touchpoints while enabling rapid development. Examples:\n\n<example>\nContext: Creating brand guidelines for a new app
Design skills: UI/UX, brand identity, visual assets
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Persistent memory system for Claude Code - seamlessly preserve context across sessions