Manage visual design themes for the workspace — extract themes from live websites (via claude-in-chrome), PowerPoint templates, or presets, then store and apply them to all visual outputs (slides, documents, diagrams, reports). Also audits and improves existing themes: contrast/accessibility checks, palette harmony, typography pairing, and completeness review. Use this skill whenever the user mentions themes, brand colors, visual identity, extracting styles, or wants consistent look-and-feel across outputs. Also triggers when the user wants to review, audit, fix, or improve a theme — e.g., "my theme feels off", "check contrast", "improve my colors". Also triggers when the user needs help choosing or building a theme — e.g., "what theme for my brand?", "help me pick a theme", "I need a visual identity for my startup". Even if the user just says "make it match our brand", "use our company colors", or "grab the style from that site", this skill applies. Also triggers on "brand guidelines", "design system", "brand identity", or "visual standards".
From cogni-workspacenpx claudepluginhub cogni-work/insight-wave --plugin cogni-workspaceThis skill is limited to using the following tools:
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Facilitates interactive brainstorming sessions using diverse creative techniques and ideation methods. Activates when users say 'help me brainstorm' or 'help me ideate'.
Without centralized theme management, visual plugins each hardcode their own colors and fonts, producing inconsistent outputs. This skill provides a single place to create, store, audit, and apply themes so every visual output — slides, documents, diagrams, reports — shares a coherent brand identity. Themes are compact markdown files containing color palettes, typography, and design principles.
Before any operation, resolve the workspace themes directory:
${COGNI_WORKSPACE_ROOT}/themes/ if the env var is set{workspace}/cogni-workspace/themes/_template/ inside it) before proceedingIf claude-in-chrome tools are unavailable, inform the user upfront and suggest PPTX extraction or theme-factory presets as alternatives.
All themes live in the resolved themes directory. Each theme gets its own directory:
themes/
├── _template/theme.md # Canonical template (see Theme File Format below)
├── digital-x/theme.md # Brand theme
├── cogni-work/theme.md # Brand theme
└── {custom}/theme.md # User themes
When a theme slug already exists, ask the user whether to overwrite or create a versioned alternative (e.g., acme-v2).
When the user asks for theme advice — e.g., "what theme for my brand?", "help me pick a theme", "I need a visual identity" — guide them through a short discovery to route them to the best creation path.
Discovery questions (ask only what's needed, skip what you can infer from context):
Routing logic based on answers:
| User has... | Action |
|---|---|
| A website URL | → Operation #3 (Grab from Website) — extract the real brand |
| A PPTX template | → Operation #4 (Grab from PPTX) — extract from the template |
| Specific colors/fonts but no file | → Create a custom theme.md directly from their inputs, following the template |
| Nothing concrete, just a description | → Operation #5 (Create from Preset) — recommend 2-3 theme-factory presets that match their mood/industry, let them pick or blend |
| An existing workspace theme that's close | → Operation #6 (Audit/Improve) — review it and suggest targeted tweaks |
After creating or selecting a theme, always run a quick audit (Operation #6) on the result before finalizing — this catches contrast issues and missing sections early. Then offer to generate a theme showcase (Operation #7) so the user can see all tokens in action.
When the user asks to list or show available themes, scan the themes directory:
Use the Glob tool to find all themes:
pattern: "*/theme.md"
path: "${COGNI_WORKSPACE_ROOT}/themes"
Present each theme with its name (directory name) and first line description from the theme.md file.
Extract a visual theme from a live website using claude-in-chrome (the user's Chrome browser). This produces a brand-accurate theme.md from visual inspection and page analysis.
Requirements: claude-in-chrome tools (mcp__claude-in-chrome__*). Before attempting website extraction, try mcp__claude-in-chrome__tabs_context_mcp to verify availability. If unavailable, inform the user that the Claude-in-Chrome extension is required and suggest using theme-factory presets or PPTX extraction instead.
Workflow:
tabs_create_mcp — never hijack the user's active tabnavigateread_page to get the page's visual structure and contentget_page_text to extract text styles and structural patterns{themes-dir}/{theme-slug}/theme.mdTips for accurate extraction: Take multiple screenshots (hero section, navigation, footer) to capture the full palette. Use WebSearch to find the brand's official style guide or press kit — these often list exact hex codes. Cross-reference visual inspection with any brand documentation found online.
Extract theme from a PowerPoint template file. PPTX files embed theme XML in their ZIP structure — the key data lives in ppt/theme/theme1.xml.
Workflow:
document-skills:pptx skill to extract theme XMLa:clrScheme) and map to semantic roles:
dk1 → Text colorlt1 → Background colordk2 → Secondary textlt2 → Surface/card backgroundaccent1 → Primary brand coloraccent2 → Secondary brand coloraccent3–accent6 → Additional palette colorsa:fontScheme):
a:majorFont → Header font familya:minorFont → Body font family{themes-dir}/{theme-slug}/theme.mdDelegate to document-skills:theme-factory for preset theme creation:
theme-factory skill to show available presets or create custom themes{themes-dir}/{theme-slug}/theme.mdThis bridges theme-factory's preset system with the workspace's theme storage.
When the user wants feedback on an existing theme — e.g., "my theme feels off", "check my colors", "improve this theme" — read the theme.md and evaluate it across these dimensions:
Contrast & Accessibility
Palette Harmony
Typography Pairing
Completeness
{themes-dir}/_template/theme.mdDesign Principles Review
Output format: Present findings as a checklist grouped by dimension, with pass/fail/warning per item and concrete suggestions for anything that fails. If the user agrees with suggestions, apply the fixes directly to the theme.md. After applying fixes, offer to regenerate the theme showcase (Operation #7) so the user can verify the changes visually.
After creating, extracting, or improving a theme, offer to generate an interactive React showcase component that demonstrates every design token in context — colors, typography, buttons, cards, tables, forms, status badges, KPI panels, pricing layouts, and navigation patterns.
When to offer: After any successful theme creation or update (Operations 3–6), ask the user: "Want me to generate a theme showcase component so you can see all the tokens in action?"
Workflow:
{themes-dir}/{theme-slug}/{theme-slug}-theme-showcase.jsxOutput requirements:
theme object at the top mapping every palette role (primary, secondary, accent, accentMuted, accentDark, bg, surface, surfaceDark, text, textLight, textMuted, border, plus status colors) to the hex values from theme.mduseState (tabs, toggle, slider, card selection) to show the theme in motioncogni-work → CogniWorkThemeShowcase)Reference: See themes/cogni-work/cogni-work-theme-showcase.jsx as the canonical example of quality, structure, and completeness.
When the user asks to apply a theme, read the theme.md and feed its contents into the downstream skill that produces the output.
{themes-dir}/{name}/theme.mddocument-skills:pptx): pass theme colors and fonts so they map to slide master stylesdocument-skills:docx): pass palette for heading colors, accent boxes, table stylingcogni-visual:render-big-picture, cogni-visual:render-big-block): pass primary/secondary/accent colors and design principlesThe theme.md content is the single source of truth — always read it fresh rather than relying on cached or partial values.
Follow the template at {themes-dir}/_template/theme.md. Key sections:
Theme directories use kebab-case slugs derived from the brand/source name:
digital-x (from DIGITAL X brand)cogni-work (from cogni-work.ai)ocean-depths (from theme-factory preset)client-acme (from client website){themes-dir}/_template/theme.md — Canonical theme template with all sections. Read this template before generating any new theme to ensure all required sections are present.{themes-dir}/cogni-work/cogni-work-theme-showcase.jsx — Reference showcase component. Read this before generating a showcase for a new theme to match the expected quality, structure, and section coverage.