Validate that orchestrator plan files conform to expected JSON schema. Use before workers read plan files or after orchestrators create them to ensure proper structure and required fields.
Validate orchestrator plan files to ensure they conform to the expected schema before workers process them.
Use Read tool to load the plan file.
Expected Input:
file_path: Path to plan file (e.g., .bug-detection-plan.json, .security-scan-plan.json)Tools Used: Read
Map file name pattern to appropriate JSON schema.
Schema Mapping:
.bug-*-plan.json → .claude/schemas/bug-plan.schema.json.security-*-plan.json → .claude/schemas/security-plan.schema.json.dead-code-*-plan.json → .claude/schemas/dead-code-plan.schema.json.dependency-*-plan.json → .claude/schemas/dependency-plan.schema.json.version-*-plan.json → base schema (version update workflow)New Naming Convention (standardized):
.bug-detection-plan.json, .bug-fixing-plan.json, .bug-verification-plan.json.security-scan-plan.json, .security-remediation-plan.json, .security-verification-plan.json.dead-code-detection-plan.json, .dead-code-cleanup-plan.json, .dead-code-verification-plan.json.dependency-audit-plan.json, .dependency-update-plan.json, .dependency-verification-plan.jsonUse Read tool to load the appropriate schema file from .claude/schemas/.
Tools Used: Read
Validate the plan file content against the loaded JSON schema.
Base Schema Validation (all plan files):
workflow: String (required, e.g., "bug-management", "security-audit")phase: String (required, e.g., "detection", "fixing", "verification")phaseNumber: Integer (optional, for sequencing)config: Object (required, domain-specific configuration)validation: Object (required, with required array of validation criteria)nextAgent: String (optional, agent to invoke next)timestamp: String (optional, ISO-8601 format)metadata: Object (optional, with createdBy, iteration, maxIterations)Domain-Specific Validation:
Bug Plans:
config.priority: "critical"|"high"|"medium"|"low"|"all" (required)config.categories: Array of bug types (optional)config.maxBugsPerRun: Integer (optional, default 50)config.verifyOnly: Boolean (optional, default false)Security Plans:
config.severity: "critical"|"high"|"medium"|"low"|"all" (required)config.categories: Array of vulnerability types (optional)config.maxVulnsPerRun: Integer (optional, default 25)config.skipSupabaseRLS: Boolean (optional, default false)Dead Code Plans:
config.type: "critical"|"high"|"medium"|"low"|"all" (required)config.categories: Array of dead code types (optional)config.maxItemsPerRun: Integer (optional, default 100)config.safeMode: Boolean (optional, default true)Dependency Plans:
config.category: "security"|"unused"|"outdated"|"all" (required)config.severity: "critical"|"high"|"medium"|"low"|"all" (optional)config.maxUpdatesPerRun: Integer (optional, default 10)config.updateStrategy: "one-at-a-time"|"batch-compatible"|"all" (optional)Return detailed validation result with errors/warnings.
Expected Output:
{
"valid": true,
"file": ".bug-detection-plan.json",
"errors": [],
"warnings": [],
"schema": "bug-plan",
"schemaPath": ".claude/schemas/bug-plan.schema.json"
}
Input:
file_path: .bug-detection-plan.json
Content:
{
"workflow": "bug-management",
"phase": "detection",
"phaseNumber": 1,
"config": {
"priority": "all",
"categories": ["type-errors", "runtime-errors"],
"maxBugsPerRun": 50
},
"validation": {
"required": ["report-exists", "type-check"],
"optional": ["tests"]
},
"nextAgent": "bug-hunter",
"timestamp": "2025-10-18T14:00:00Z",
"metadata": {
"createdBy": "bug-orchestrator",
"iteration": 1,
"maxIterations": 3
}
}
Output:
{
"valid": true,
"file": ".bug-detection-plan.json",
"errors": [],
"warnings": [],
"schema": "bug-plan",
"schemaPath": ".claude/schemas/bug-plan.schema.json"
}
Input:
file_path: .security-scan-plan.json
Content:
{
"workflow": "security-audit",
"phase": "scan",
"config": {
"categories": ["sql-injection"]
},
"validation": {
"required": ["report-exists"]
}
}
Output:
{
"valid": false,
"file": ".security-scan-plan.json",
"errors": [
"Missing required property: config.severity",
"Schema validation failed at /config/severity: required property missing"
],
"warnings": [],
"schema": "security-plan",
"schemaPath": ".claude/schemas/security-plan.schema.json"
}
Input:
file_path: .dependency-audit-plan.json
Content:
{
"workflow": "dependency-management",
"phase": "audit",
"config": {
"category": "deprecated",
"severity": "critical"
},
"validation": {
"required": ["report-exists", "lockfile-valid"]
},
"nextAgent": "dependency-auditor"
}
Output:
{
"valid": false,
"file": ".dependency-audit-plan.json",
"errors": [
"Invalid enum value at /config/category: 'deprecated' not in allowed values ['security', 'unused', 'outdated', 'all']"
],
"warnings": [],
"schema": "dependency-plan",
"schemaPath": ".claude/schemas/dependency-plan.schema.json"
}
Input:
file_path: .bug-fixing-plan.json
Content:
{
"workflow": "security-audit",
"phase": "fixing",
"config": {
"priority": "critical"
},
"validation": {
"required": ["type-check"]
}
}
Output:
{
"valid": false,
"file": ".bug-fixing-plan.json",
"errors": [
"Schema mismatch: file pattern suggests 'bug-plan' schema but workflow field is 'security-audit'",
"Invalid enum value at /phase: 'fixing' not in allowed values ['detection', 'fixing', 'verification'] for bug-plan"
],
"warnings": [
"Consider renaming file to match workflow: .security-remediation-plan.json"
],
"schema": "bug-plan",
"schemaPath": ".claude/schemas/bug-plan.schema.json"
}
Located in .claude/schemas/:
base-plan.schema.json: Base schema for all plan filesbug-plan.schema.json: Bug management workflow schemasecurity-plan.schema.json: Security audit workflow schemadead-code-plan.schema.json: Dead code cleanup workflow schemadependency-plan.schema.json: Dependency management workflow schemaAll orchestrators should use this Skill after creating plan files:
## Step 3: Create Plan File
1. Write plan to `.{domain}-{phase}-plan.json`
2. Use validate-plan-file Skill to verify:
- Input: file_path = ".{domain}-{phase}-plan.json"
- Check result.valid === true
- If errors exist, fix plan file and retry
3. Only signal readiness after validation passes
JSON Schema Validation: This Skill performs full JSON Schema Draft-07 validation including:
File Naming Convention: Plan files must follow pattern .{domain}-{phase}-plan.json where:
{domain}: bug|security|dead-code|dependency{phase}: detection|fixing|verification (bugs), scan|remediation|verification (security), etc.Schema References: Uses JSON Schema $ref for base schema inheritance. All domain schemas extend base-plan.schema.json.
npx skills add maslennikov-ig/validate-plan-file下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer