Skip to content

Claude Code Skills

Skills are reusable, auto-triggered workflows that Claude Code invokes when a task matches the skill's description. Each skill is a SKILL.md file with YAML frontmatter (a name and a description that doubles as the trigger) plus a Markdown body of instructions, optionally bundled with scripts, references, and assets.

Operating Protocol 2 in the platform CLAUDE.md makes skills a behavioral gate: before manually implementing a multi-step workflow, Claude checks whether an available skill matches the task and invokes it. Skills are deterministic and cheap, so they are tried first.

Two kinds of skill

The WDG skill system has two tiers with different purposes and distribution. This distinction mirrors the broader Projects vs Platform boundary.

Platform skillsProject skill templates
Location.claude/skills/cli/templates/project-skills/
ContextPython, Bash, Docker, CLI, infrastructure, external servicesWordPress, PHP, Wikit framework, Gutenberg
Available toThe platform Claude instance immediatelyIndividual WordPress projects, once synced
DistributionPresent in the platform repoCopied into projects via wdg create / wdg <project> skills sync
Count1028

Platform skills

Platform skills live in .claude/skills/ and are immediately available when working on platform infrastructure or cross-project tooling. They typically use external-service MCP tools (Atlassian, Figma), Bash, and standard file tools.

Project skill templates

Project skill templates live in cli/templates/project-skills/. They are templates — the source of truth that gets distributed into individual projects. Each covers a WordPress/Wikit development workflow and typically uses the mcp__wdg-local__* semantic search tools and Chrome DevTools MCP. By convention, each includes a "FIRST: Search for Existing Patterns" section so the project Claude searches before implementing.

How project skills are distributed

Project skill templates are copied from cli/templates/project-skills/ into a project's repository when the project is created, and can be re-synced afterward. They land in projects/{project}/repositories/{repo}/.claude/skills/ — the CLI resolves the correct path automatically.

cli/templates/project-skills/my-skill/
    ↓ wdg create (new projects)  OR  wdg <project> skills sync (existing)
projects/{project}/repositories/{repo}/.claude/skills/my-skill/
    ↓ available to the project-level Claude instance

⚠️ WARNING

Never manually copy skill directories into a project. Always use the CLI so the correct target path and frontmatter handling are applied.

bash
wdg skills sync                       # Sync every skill to every project
wdg skills sync codesearch            # Sync one skill to every project
wdg skills sync --force               # Overwrite existing skills with latest templates
wdg skills sync --project=ccusa       # Sync only the named project
wdg skills list                       # Show available skill templates

# Per-project form
wdg <project> skills sync [skill] [--force]

wdg create also accepts --skip-default-skills to create a project without the default skill set.

Platform skill catalog

These 10 skills live in .claude/skills/ and serve platform-level and cross-project work.

SkillWhat it does
git-timesheetSummarizes git commit history across the whole environment (platform plus every project under projects/) for a date or range, producing one paragraph-style time-tracking note per scope per day, rendered to HTML with per-entry copy buttons. Each summary capped at 528 characters.
jira-ticketsTracks and manages Jira tickets in a per-project MySQL memory store — pull, update status, reassign, sync, check Client Review feedback, view workload. Jira is the source of truth; feedback classification (needs_rework, approved, awaiting_review) is stored locally.
project-buildBuilds WordPress project assets via the WDG CLI — npm/composer dependency installation and asset compilation for themes and mu-plugins.
project-creation-existing-structureCreates WordPress projects from existing repository structures (theme-only, full wp-content, non-standard Pantheon/WPVIP), handling mounting, hosting-platform syncs, and complex npm/composer dependencies.
research-plannerDesigns autonomous research programs from an objective — identifying metrics, scope, agents, and constraints — producing a plan the research-runner skill executes.
research-runnerExecutes autonomous research experiments from a plan: an experiment loop that proposes changes, measures, keeps or discards, and repeats, using sub-agents. Supports init, run, status, results, and abort.
skill-creatorGuides creating and maintaining skills for the platform, covering both platform skills and project skill templates and the wdg skills sync mechanism.
sms-update-ticketsCreates and manages monthly Jira tickets for WordPress core/plugin updates across active SMS/retainer clients; can audit which clients are missing them.
visual-fidelity-loopAutonomous visual comparison loop between a Figma design and a WordPress implementation using BackstopJS — screenshot, diff, fix CSS/template, repeat until the mismatch threshold is met. Supports init, run, status, approve, abort.
wdg-blog-writingWrites WDG Insights blog articles in WDG's brand voice for CMOs and digital leaders at nonprofits, associations, higher education, and federal agencies, including SEO optimization, pull quotes, and social assets.

Project skill template catalog

These 28 templates live in cli/templates/project-skills/ and are distributed into projects. They cover WordPress/Wikit development workflows.

TemplateWhat it does
advanced-query-facetsImplements faceted search, filters, and archives using Wikit Advanced Query blocks (search pages, filterable listings, directories, CPT archives, taxonomy filters), including WP_Query customization.
block-buildBuilds and visually verifies individual blocks against a Figma extraction reference using BackstopJS pixel-diff, as a binding gate between figma-extraction and pattern-build.
browser-testingTests a WordPress site with automated browser tools — visual regression, performance, Core Web Vitals, JS error debugging, screenshots, accessibility, responsive testing, form validation, network monitoring.
build-assetsBuilds production CSS/JS assets for WordPress themes and plugins; works across projects with one command.
codesearchCodebase exploration via the MCP RAG tools (search_codebase, search_functions, etc.) as the first approach before grep/find/Glob/Read.
custom-post-typeCreates custom post types and taxonomies using the Wikit Core PostType class, including meta fields for Gutenberg.
database-operationsDatabase import, export, backup, restore, clone, and search-replace, including Pantheon/WPVIP environments, with safety protocols and backup strategies.
debugging-wordpressDebugs WordPress via unified wdg logs commands, WP_DEBUG, and browser console — PHP errors, JS issues, failed AJAX, database problems, plugin conflicts.
figma-extractionExtracts complete page structure from Figma into a self-contained directory with per-section screenshots and factual specs needed to build the page.
figma-variable-syncSyncs design-system variables (colors, typography, spacing, widths) from Figma to Wikit theme SCSS, preserving manual customizations.
git-timesheetSummarizes a project's git commit history for a date into a concise paragraph-style time-tracking note (capped at 528 characters).
git-workflow-wdgManages git for WDG WordPress projects — branching, committing, pushing, PRs, and repository management via wdg repo commands, with commit conventions.
jira-ticketsSyncs, queries, updates, and pushes Jira tickets using the project's MySQL memory database and the Atlassian API, including ticket transitions and Client Review feedback.
page-assemblyAssembles WordPress pages from a Figma extraction spec using block mapping and the Block Workbench, verifying each section against workbench previews.
pattern-buildComposes verified blocks into block patterns and runs BackstopJS against the pattern-level Figma reference to catch composition bugs, sitting between block-build and page-assembly.
php-code-qualityValidates PHP with PHPCS (WordPress Coding Standards) and PHPStan static analysis, with auto-fix; targets WDG themes and mu-plugins only.
playwright-automationAutomates browser interactions with the Playwright CLI — recording flows (codegen), screenshots, traces, CDP connections, and test-script generation.
project-memorySaves and recalls project context that persists across conversations — client preferences, architectural decisions, environment quirks, known issues, conventions.
project-setup-pantheonEnd-to-end autonomous setup of a WordPress project from Pantheon — metadata discovery, project creation, database sync, URL replacement, multisite config, verification, indexing. Requires authenticated terminus CLI.
skill-creatorCreates and manages project-specific skills within a project, including auditing descriptions for routing conflicts.
theme-customizationCustomizes theme appearance, layouts, and functionality via theme.json, custom CSS, and Wikit theme features, including SCSS compilation and extension patterns.
ticket-workflowTicket-based development using git worktrees for parallel multi-agent work — each ticket gets an isolated worktree so multiple sessions run without conflicts.
visual-fidelity-loopFinal full-page pixel-diff pass against the Figma reference for an assembled page, classifying every diff against a closed enum and iterating on targeted fixes until threshold.
wdg-cliExecutes WDG CLI commands to manage projects, Docker services, databases, repositories, and AI code indexing.
wikit-block-developmentCreates and modifies Gutenberg blocks using Wikit framework patterns and React — block.json, editor scripts, InnerBlocks, RichText, MediaUpload.
wordpress-hooks-filtersWorks with WordPress actions and filters to extend behavior, including Wikit-specific hooks like wdg/facets and wdg/advanced_query.
wordpress-updatesUpdates WordPress core, plugins, and themes across local, Pantheon, and VIP environments and generates client-ready update reports.
wp-cli-shortcutsQuick reference for running WP-CLI operations through the wdg tool and the Docker container — cache, plugins, themes, users, database, search-replace.

Creating or updating skills

Use the skill-creator skill (or the skill-creator agent) to scaffold a new skill, choosing platform vs project type. Under Operating Protocol 6, when a skill produces a wrong result that traces to a specific instruction in its SKILL.md, the correction is propagated back to that source file rather than left in conversation — keeping the durable layer accurate over time.

See also