Agent SkillsAutomattic/studio › testing-wp-runtime

testing-wp-runtime

GitHub

指导使用 wp-now 在运行时验证 WordPress 插件或主题,包括确定项目模式、启动服务、检查 PHP 错误日志及 HTTP 响应,最后清理环境并报告测试结果。

packages/data-liberation-agent/skills/testing-wp-runtime/SKILL.md Automattic/studio

Trigger Scenarios

需要验证 WordPress 插件或主题在运行时的加载情况 执行 WordPress 项目的运行时兼容性测试

Install

npx skills add Automattic/studio --skill testing-wp-runtime -g -y
More Options

Non-standard path

npx skills add https://github.com/Automattic/studio/tree/trunk/packages/data-liberation-agent/skills/testing-wp-runtime -g -y

Use without installing

npx skills use Automattic/studio@testing-wp-runtime

指定 Agent (Claude Code)

npx skills add Automattic/studio --skill testing-wp-runtime -a claude-code -g -y

安装 repo 全部 skill

npx skills add Automattic/studio --all -g -y

预览 repo 内 skill

npx skills add Automattic/studio --list

SKILL.md

Frontmatter
{
    "name": "testing-wp-runtime",
    "description": "Guidelines for running wp-now to validate WordPress plugins and themes at runtime",
    "disable-model-invocation": true
}

When to use me

Use this skill when you need to verify that a WordPress plugin or theme loads correctly at runtime. Do not use this skill for static linting — use testing-php or testing-js for that.

Step 1: Determine the project mode

wp-now requires a --mode flag based on the project type:

  • Plugin project (main PHP file has a Plugin Name: header): use --mode=plugin
  • Theme project (contains style.css with Theme Name: header): use --mode=theme

Check the project root to determine which mode to use:

head -20 *.php style.css 2>/dev/null

Step 2: Start wp-now

Start wp-now in the background on an available port:

wp-now start --mode=<plugin|theme> --port=8881 &

Wait a few seconds for the server to initialize, then verify it is running:

curl -s -o /dev/null -w "%{http_code}" http://localhost:8881/
  • HTTP 200 or 302 = server is running and WordPress loaded successfully.
  • HTTP 500 = a fatal PHP error occurred — check debug log.
  • Connection refused = server failed to start.

Step 3: Check for PHP errors

After the server starts, check the WordPress debug log for errors:

find /tmp -name "debug.log" -path "*/wp-content/*" 2>/dev/null | head -1 | xargs tail -50 2>/dev/null

Look for:

  • Fatal errors: Plugin or theme could not load — must be fixed.
  • Warnings/Notices: Non-fatal but should be reported.
  • Deprecation notices: Report but do not fix.

Step 4: Validate HTTP responses

Test key endpoints to verify the project works:

# Homepage
curl -s -o /dev/null -w "%{http_code}" http://localhost:8881/

# wp-admin (should redirect to login)
curl -s -o /dev/null -w "%{http_code}" http://localhost:8881/wp-admin/

For plugins, also check if the plugin is active:

curl -s http://localhost:8881/ | grep -c "<plugin-specific-identifier>"

Step 5: Clean up

Always stop wp-now when done testing:

kill $(lsof -t -i:8881) 2>/dev/null

Rules

  • Always clean up: Never leave wp-now running after testing is complete.
  • Port 8881: Always use port 8881 to avoid conflicts.
  • Timeout: If wp-now does not respond within 15 seconds of starting, consider it failed and kill the process.
  • Never modify business logic: Only report issues found during runtime validation. Do not change how the code works.
  • Report format: After testing, report results as:
    • PASS: Server started, HTTP 200, no fatal errors in debug log
    • FAIL: List specific errors (HTTP status, debug log entries, failed endpoints)

Version History

  • 0d55cb5 Current 2026-08-20 12:16

Same Skill Collection

apps/cli/ai/skills/annotate/SKILL.md
apps/cli/ai/skills/block-content/SKILL.md
apps/cli/ai/skills/hosting-plans-helper/SKILL.md
apps/cli/ai/skills/liberate/SKILL.md
apps/cli/ai/skills/need-for-speed/SKILL.md
apps/cli/ai/skills/plugin-recommendations/SKILL.md
apps/cli/ai/skills/rank-me-up/SKILL.md
apps/cli/ai/skills/site-spec/SKILL.md
apps/cli/ai/skills/taxonomist/SKILL.md
apps/cli/ai/skills/visual-design/SKILL.md
apps/cli/ai/skills/visual-polish/SKILL.md
apps/cli/ai/skills/wpcom-remote-management/SKILL.md
packages/data-liberation-agent/skills/adapt/SKILL.md
packages/data-liberation-agent/skills/creating-blocks/SKILL.md
packages/data-liberation-agent/skills/creating-themes/SKILL.md
packages/data-liberation-agent/skills/design-foundations/SKILL.md
packages/data-liberation-agent/skills/diagnose/SKILL.md
packages/data-liberation-agent/skills/editing-blocks/SKILL.md
packages/data-liberation-agent/skills/editing-themes/SKILL.md
packages/data-liberation-agent/skills/generating-patterns/SKILL.md
packages/data-liberation-agent/skills/migrate/SKILL.md
packages/data-liberation-agent/skills/model-local-data/SKILL.md
packages/data-liberation-agent/skills/qa/SKILL.md
packages/data-liberation-agent/skills/rebuild-section/SKILL.md
packages/data-liberation-agent/skills/testing-js/SKILL.md
packages/data-liberation-agent/skills/testing-php/SKILL.md
skills/studio-cli/SKILL.md
packages/data-liberation-agent/skills/compose-page-blocks/SKILL.md
packages/data-liberation-agent/skills/design-qa/SKILL.md
packages/data-liberation-agent/skills/match-page/SKILL.md
packages/data-liberation-agent/skills/match-section/SKILL.md
packages/data-liberation-agent/skills/replicate-theme/SKILL.md
packages/data-liberation-agent/skills/replicate-with-blocks/SKILL.md

Metadata

Files
0
Version
0d55cb5
Hash
d4acee08
Indexed
2026-08-20 12:16

- 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-25 09:46
浙ICP备14020137号-1 $방문자$