Wp Project Triage
WordPressOfficialPublished by WordPress
- Skill
- Review and audit
- Software development
- GPL-2.0-or-later
- Low risk
- Has scripts
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
WP Project Triage provides a systematic way to analyze WordPress repositories, including plugins, themes, block themes, and core files. By executing a detection script, the skill outputs a structured JSON report that identifies the project type, available tooling, testing configurations, and versioning hints. This data serves as a foundation for determining appropriate development workflows and establishing project guardrails.
What it does
- Inspects WordPress repository structures to identify project types.
- Detects installed PHP and Node.js tooling.
- Identifies existing test suites and configurations.
- Extracts versioning information and sources.
- Generates a structured JSON report based on a defined schema.
- Provides signals to guide subsequent development workflows.
When to use it
- When you need to understand the structure of a WordPress repository before making changes.
- When you need to identify the correct commands and conventions for a specific project.
- When you need to verify the presence of specific tooling or test configurations.
- When you need to establish guardrails for a WordPress development workflow.
Advantages
- Provides deterministic insights into project composition.
- Standardizes project analysis through a structured JSON output.
- Helps prevent errors by clarifying project-specific requirements.
- Facilitates informed decision-making for development workflows.
Usage examples
- “Analyze this WordPress repository to determine its structure and tooling.”
- The agent runs the detection script and returns a JSON report detailing the project kind, detected tools, and versioning information.
- “What are the project guardrails for this theme repository?”
- The agent inspects the repository and provides a report identifying the theme type and relevant build configurations to follow.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/wordpress/wp-project-triage/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip wp-project-triage.zip -d .agents/skills
Documentation by WordPress
WP Project Triage
When to use
Use this skill to quickly understand what kind of WordPress repo you’re in and what commands/conventions to follow before making changes.
Inputs required
Repo root (current working directory).
Procedure
Run the detector (prints JSON to stdout):
node skills/wp-project-triage/scripts/detect_wp_project.mjs
If you need the exact output contract, read:
skills/wp-project-triage/references/triage.schema.json
Use the report to select workflow guardrails:
project kind(s)
PHP/Node tooling present
tests present
version hints and sources
If the report is missing signals you need, update the detector rather than guessing.
Verification
The JSON should parse and include:
project.kind,signals, andtooling.Re-run after changes that affect structure/tooling (adding
theme.json,block.json, build config).
Failure modes / debugging
If it reports
unknown, check whether the repo root is correct.If scanning is slow, add/extend ignore directories in the script.
Files
- ATTRIBUTION.mdAdded by AutoGineer898 B
- LICENSELicence file added by AutoGineer750 B
- SKILL.md1.4 KiB
- references/triage.schema.json4.4 KiB
- scripts/detect_wp_project.mjsScript18.7 KiB
references/triage.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://agentskills.local/wp-project-triage/triage.schema.json",
"title": "WP Project Triage Report",
"type": "object",
"required": ["tool", "project", "signals", "tooling"],
"properties": {
"tool": {
"type": "object",
"required": ["name", "version"],
"properties": {
"name": { "type": "string", "const": "detect_wp_project" },
"version": { "type": "string" }
},
"additionalProperties": true
},
"project": {
"type": "object",
"required": ["kind"],
"properties": {
"kind": {
"type": "array",
"items": {
"type": "string",
"enum": [
"unknown",
"wp-plugin",
"wp-mu-plugin",
"wp-theme",
"wp-block-theme",
"wp-block-plugin",
"wp-site",
"wp-core",
"gutenberg"
]
}
},
"primary": { "type": "string" },
"notes": { "type": "array", "items": { "type": "string" } }
},
"additionalProperties": true
},
"signals": {
"type": "object",
"required": ["paths"],
"properties": {
"paths": {
"type": "object",
"properties": {
"repoRoot": { "type": "string" },
"wpContent": { "type": "string" },
"pluginsDir": { "type": "string" },
"themesDir": { "type": "string" }
},
"additionalProperties": true
}
,
"usesInteractivityApi": { "type": "boolean" },
"usesAbilitiesApi": { "type": "boolean" },
"usesInnerBlocks": { "type": "boolean" },
"usesWpCli": { "type": "boolean" },
"performanceHints": { "type": "object", "additionalProperties": true },
"interactivityHints": { "type": "object", "additionalProperties": true },
"abilitiesHints": { "type": "object", "additionalProperties": true },
"innerBlocksHints": { "type": "object", "additionalProperties": true },
"wpCliHints": { "type": "object", "additionalProperties": true }
},
"additionalProperties": true
},
"tooling": {
"type": "object",
"required": ["php", "node", "tests"],
"properties": {
"php": {
"type": "object",
"properties": {
"hasComposerJson": { "type": "boolean" },
"hasVendorDir": { "type": "boolean" },
"phpunitXml": { "type": "array", "items": { "type": "string" } }
},
"additionalProperties": true
},
"node": {
"type": "object",
"properties": {
"hasPackageJson": { "type": "boolean" },
"packageManager": { "type": ["string", "null"], "enum": ["npm", "yarn", "pnpm", "bun", null] },
"usesWordpressScripts": { "type": "boolean" }
},
"additionalProperties": true
},
"tests": {
"type": "object",
"properties": {
"hasPhpUnit": { "type": "boolean" },
"hasWpEnv": { "type": "boolean" },
"hasPlaywright": { "type": "boolean" },
"hasJest": { "type": "boolean" }
},
"additionalProperties": true
}
},
"additionalProperties": true
},
"versions": {
"type": "object",
"properties": {
"wordpress": {
"type": "object",
"properties": {
"core": {
"type": "object",
"properties": {
"value": { "type": ["string", "null"] },
"source": { "type": ["string", "null"] }
},
"additionalProperties": true
}
},
"additionalProperties": true
},
"gutenberg": {
"type": "object",
"properties": {
"value": { "type": ["string", "null"] },
"source": { "type": ["string", "null"] }
},
"additionalProperties": true
}
},
"additionalProperties": true
},
"recommendations": {
"type": "object",
"properties": {
"commands": { "type": "array", "items": { "type": "string" } },
"notes": { "type": "array", "items": { "type": "string" } }
},
"additionalProperties": true
}
},
"additionalProperties": true
}
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs Node.js
The author says: Targets WordPress 7.0+ (PHP 7.4.0+). Filesystem-based agent with bash + node. Some workflows require WP-CLI.
Security
What our scanner noticed· Low risk
- Scripts that your agent may run
This skill includes scripts that your agent may run. Read them before you use it.
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- WordPress
- Publisher
- WordPress (Official)
- Source
- WordPress/agent-skills · skills/wp-project-triage · commit 7374e6f
- Licence
- GNU General Public License v2.0 or later (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by WordPress.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download wp-project-triage.zip