Validates audio plugins through automated tests, pluginval, or manual DAW testing. Use for MANUAL testing via /test command...
Purpose: Catch crashes, parameter issues, and state bugs in 2 minutes with automated tests.
IMPORTANT: Automatic validation is now built into the workflow. validation-agent runs automatically after each implementation stage (Stages 1-3) with compile-time and runtime tests. Validation is blocking - errors must be fixed before progressing.
This skill is for MANUAL testing only:
/test command)/improve)Was previously invoked by: plugin-workflow after Stages 3, 4, 5 (DEPRECATED - now handled by validation-agent)
Three test modes: (1) Automated (~2 min), (2) Build + Pluginval (~5-10 min) ⭐ RECOMMENDED, (3) Manual DAW (~30-60 min). See decision menu for details.
/test [Name] or natural language)PLUGINS.md and verify plugin existstest -d "plugins/{PLUGIN_NAME}/Tests/"Present mode selection menu (see assets/decision-menu-templates.md#mode-selection) and WAIT for user selection (1-4). Do not proceed to Phase 2 until mode selected.
Parse shorthand commands:
/test [PluginName] build → Jump to Mode 2/test [PluginName] quick → Jump to Mode 1/test [PluginName] manual → Jump to Mode 3Track your progress:
Mode 1 Progress:
- [ ] Step 1: Check for Tests/ directory
- [ ] Step 2: Read test specifications
- [ ] Step 3: Build and execute tests
- [ ] Step 4: Parse test results
- [ ] Step 5: Present results and next steps
Verify Tests/ directory exists:
test -d "plugins/{PLUGIN_NAME}/Tests/"
VALIDATION GATE: If Tests/ directory does not exist:
assets/decision-menu-templates.md#missing-testsIf Tests/ directory exists, proceed to Step 2.
Read references/test-specifications.md for detailed test implementations before proceeding.
Build and run tests (see references/test-specifications.md#execution).
Parse test output and generate report using template from assets/report-templates.md#mode1-results.
Present test results and post-test decision menu (see assets/decision-menu-templates.md#post-test-mode1). WAIT for user selection.
Track your progress:
Mode 2 Progress:
- [ ] Step 1: Prerequisites check (pluginval installation)
- [ ] Step 2: Build Release binaries (VST3 + AU)
- [ ] Step 3: Run pluginval at strictness level 10
- [ ] Step 4: Parse validation results
- [ ] Step 5: Present results and next steps
Read references/pluginval-guide.md#installation-check for implementation details.
Check for pluginval installation using script from reference file.
VALIDATION GATE: If pluginval not found:
assets/decision-menu-templates.md#pluginval-install)Verify pluginval is accessible before proceeding to Step 2.
Build in Release mode (see references/pluginval-guide.md#build-process):
Locate binaries:
VST3_PATH="build/plugins/{PLUGIN_NAME}/{PLUGIN_NAME}_artefacts/Release/VST3/{PRODUCT_NAME}.vst3"
AU_PATH="build/plugins/{PLUGIN_NAME}/{PLUGIN_NAME}_artefacts/Release/AU/{PRODUCT_NAME}.component"
Validate both formats at strictness level 10 (see references/pluginval-guide.md#execution).
Parse pluginval output (see references/pluginval-guide.md#parsing-output) and generate report using template from assets/report-templates.md#mode2-results.
Present post-test decision menu (see assets/decision-menu-templates.md#post-test-mode2) and WAIT for user selection.
Track your progress:
Mode 3 Progress:
- [ ] Step 1: Read DAW testing guide
- [ ] Step 2: Generate customized checklist (parameter-specific)
- [ ] Step 3: Present checklist with testing instructions
- [ ] Step 4: Collect user test results (pass/fail per item)
- [ ] Step 5: Present next steps
Read references/manual-testing-guide.md for complete manual testing procedures.
Generate customized checklist from parameter-spec.md tailored to plugin's specific parameters and features.
Present checklist to user with instructions for manual testing in their DAW.
Inform user to report back with results (pass/fail per item).
WAIT for user to complete manual testing and provide results.
Parse user's feedback and generate completion report.
Present post-test decision menu (see assets/decision-menu-templates.md#post-test-mode3) and WAIT for user selection.
For non-trivial issues:
Non-trivial issues include:
Task tool parameters:
- task: "Investigate [test_name] failure in [PluginName]
Context:
- Test failed: [specific failure message]
- Plugin type: [from creative-brief.md]
- Relevant code: [file paths from investigation]
Goal: Find root cause and provide specific fix"
- subagent_type: "research-planning-agent"
After deep-research completes:
Never attempt to fix complex issues without delegation to deep-research.
Requirement 1: Save Test Log
Save detailed test log to: logs/{PLUGIN_NAME}/test_[timestamp].log
Use format from assets/report-templates.md#test-log-format
Requirement 2: Update .continue-here.md
Update .continue-here.md:
Requirement 3: Update PLUGINS.md
Update PLUGINS.md for {PLUGIN_NAME}:
Requirement 4: Commit Changes
Commit test results and state updates:
git add logs/{PLUGIN_NAME}/test_[timestamp].log .continue-here.md PLUGINS.md
git commit -m "test({PLUGIN_NAME}): {test_mode} validation {RESULT}"
Requirement 5: Check Workflow Mode
Read .claude/preferences.json to determine workflow mode:
Complete all five requirements before proceeding.
Error Handling: If any requirement fails (file write error, missing plugin entry), report the specific error to the user and abort state update. Do not present the decision menu with incomplete state.
VERIFY all state files updated and committed successfully before presenting next steps.
Testing is successful when:
logs/[PluginName]/)NOT required for success:
Invoked by:
Commands:
/test [PluginName] → Mode selection menu/test [PluginName] build → Direct to Mode 2 (pluginval)/test [PluginName] quick → Direct to Mode 1 (automated)/test [PluginName] manual → Direct to Mode 3 (DAW testing)Skills:
plugin-improve → After implementing bug fixes or featuresplugin-workflowNatural Language:
Note: For workflow implementation testing, validation-agent runs automatically after each stage. This skill is only needed for manual testing outside the workflow.
Invokes:
deep-research skill → When user chooses "Investigate failures"Creates:
logs/{PLUGIN_NAME}/test_[timestamp].logbuild/plugins/{PLUGIN_NAME}/Updates:
.continue-here.md → Testing checkpointPLUGINS.md → Test statusreferences/test-specifications.md - Detailed implementation of 5 automated testsreferences/pluginval-guide.md - Industry-standard validation detailsreferences/manual-testing-guide.md - DAW testing methodologyreferences/troubleshooting.md - Common issues and fixesassets/manual-testing-checklist.md - DAW testing template