Test ClaudeKit workflows by scanning commands/agents/skills, generating test scenarios, and executing step-by-step with manual verification.
Automated testing framework for ClaudeKit Marketing workflows.
# Generate fresh catalogs
python .claude/scripts/generate_catalogs.py --all
# Or scan specific type
python .claude/skills/test-orchestrator/scripts/scan-components.py
| Scope | Description |
|---|---|
command |
Test single command with happy case |
workflow |
Test multi-step workflow |
integration |
Test skill + agent + command together |
full |
Complete end-to-end test suite |
Each test step pauses for manual verification:
[STEP 1/5] Executing: /youtube:social "https://youtube.com/..."
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
[OUTPUT]
...generated content...
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
[VERIFY] Check output matches expected format
[PASS/FAIL?] > _
name: youtube-to-social-flow
description: Convert YouTube video to multi-platform social posts
type: integration
steps:
- name: Extract video data
action: vidcap summary
input: "https://youtube.com/watch?v=dQw4w9WgXcQ"
verify:
- Response contains video title
- Response contains summary content
- name: Generate social posts
action: /youtube:social
input: "{video_url}"
verify:
- Twitter post under 280 chars
- LinkedIn post has professional tone
- No anti-pattern hooks used
- name: Apply writing style
action: copywriting skill
input: Apply casual style to Twitter post
verify:
- Contains contractions
- Uses first-person
| Step | Command/Skill | Input | Verify |
|---|---|---|---|
| 1 | vidcap.py info |
YouTube URL | Returns title, views, duration |
| 2 | vidcap.py summary |
YouTube URL | Returns structured summary |
| 3 | /youtube:social |
YouTube URL | Multi-platform posts generated |
| 4 | /youtube:blog |
YouTube URL | SEO article generated |
| 5 | /youtube:infographic |
YouTube URL | Visual layout generated |
| Step | Command/Skill | Input | Verify |
|---|---|---|---|
| 1 | /content:blog |
Topic | Article with frontmatter |
| 2 | /content:cro |
Article | CRO-optimized version |
| 3 | /social |
Article summary | Platform posts |
| Step | Command/Skill | Input | Verify |
|---|---|---|---|
| 1 | /email:flow |
welcome | 5-email sequence |
| 2 | email-marketing skill | Sequence | Timing + decision branches |
| 3 | copywriting skill | Email body | PAS/AIDA formula applied |
| Step | Command/Skill | Input | Verify |
|---|---|---|---|
| 1 | inject-brand-context.cjs |
- | Returns brand JSON |
| 2 | /brand:update |
preset | Tokens synced |
| 3 | Content generation | Any | Brand voice applied |
Pre-validated inputs that should always succeed:
youtube_url: "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
blog_topic: "10 productivity tips for remote workers"
email_flow: "welcome"
brand_preset: "ocean-professional"
social_platform: "twitter"
writing_style: "casual"
At each step, verify:
Use with:
/test command to launch test runnerdebugging skill for failure analysiscode-review skill for output validation