Validate AIWG configuration files and project setup for correctness and completeness.
Validates AIWG configuration files for syntax, schema compliance, and reference integrity. Triggers on commands like "validate config" to scan YAML/JSON files, detect errors, and provide fix recommendations.
/plugin marketplace add jmagly/ai-writing-guide/plugin install utils@aiwgThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Validate AIWG configuration files and project setup for correctness and completeness.
This skill ensures AIWG projects are properly configured by:
When triggered, this skill:
Locates configuration files:
Validates syntax:
Checks completeness:
Verifies references:
Detects conflicts:
Generates report:
aiwg_configs:
project_config:
path: .aiwg/config/project.yaml
schema: schemas/project-config.schema.yaml
required_fields:
- project_name
- project_type
- phase
team_profile:
path: .aiwg/team/team-profile.yaml
schema: schemas/team-profile.schema.yaml
required_fields:
- team_name
- members
risk_register:
path: .aiwg/risks/risk-register.yaml
schema: schemas/risk-register.schema.yaml
required_fields:
- risks
artifact_config:
path: .aiwg/config/artifacts.yaml
schema: schemas/artifact-config.schema.yaml
framework_configs:
sdlc_complete:
models:
path: agentic/code/frameworks/sdlc-complete/config/models.json
validates:
- model_ids
- model_tiers
agents:
path: agentic/code/frameworks/sdlc-complete/agents/*.md
validates:
- frontmatter_schema
- required_sections
media_marketing:
brand:
path: .aiwg/marketing/brand/*.yaml
validates:
- color_formats
- typography_specs
channel_specs:
path: .aiwg/marketing/config/channel-specs.yaml
validates:
- platform_requirements
voice_configs:
voice_profiles:
path: .aiwg/voices/*.yaml
schema: schemas/voice-profile.schema.yaml
required_fields:
- name
- traits
- formality
banned_patterns:
path: validation/banned-patterns.md
validates:
- pattern_syntax
- category_structure
syntax_rules:
yaml:
- valid_yaml_syntax
- proper_indentation
- no_tabs_in_yaml
- valid_anchors_references
json:
- valid_json_syntax
- proper_escaping
- no_trailing_commas
markdown:
- valid_frontmatter
- proper_code_fences
- valid_links
schema_validation:
project_config:
project_name:
type: string
required: true
min_length: 3
project_type:
type: string
required: true
enum: [sdlc, marketing, hybrid]
phase:
type: string
enum: [concept, inception, elaboration, construction, transition, production]
created_at:
type: date
format: ISO8601
reference_rules:
file_paths:
- path_exists
- correct_extension
- within_project_root
agent_refs:
- agent_exists
- agent_has_required_tools
template_refs:
- template_exists
- template_has_placeholders
# Configuration Validation Report
**Date**: 2025-12-08
**Scope**: Full Project Validation
**Validator**: config-validator skill
## Summary
| Category | Files | Issues | Status |
|----------|-------|--------|--------|
| AIWG Core | 5 | 2 | ⚠️ Warnings |
| Framework | 8 | 0 | ✅ Pass |
| Voice | 3 | 1 | ⚠️ Warning |
| Custom | 2 | 1 | ❌ Error |
| **Total** | **18** | **4** | **Review Needed** |
## Issues Found
### ❌ Error: Invalid Project Config
**File**: `.aiwg/config/project.yaml`
**Line**: 12
**Issue**: Missing required field `project_type`
**Severity**: Error (blocking)
**Current**:
```yaml
project_name: "My Project"
phase: inception
Required:
project_name: "My Project"
project_type: sdlc # Required field
phase: inception
Fix: Add project_type field with value: sdlc, marketing, or hybrid
File: .aiwg/config/artifacts.yaml
Line: 34
Issue: Referenced template does not exist
Severity: Warning
Current:
template: templates/custom/my-template.md
Problem: File templates/custom/my-template.md not found
Fix Options:
File: .aiwg/team/team-profile.yaml
Line: 8
Issue: Field team_lead is deprecated
Severity: Warning
Current:
team_lead: "Jane Smith"
New Format:
roles:
- name: "Jane Smith"
role: team_lead
File: .aiwg/voices/brand-voice.yaml
Line: 15
Issue: Missing recommended field examples
Severity: Info
Recommendation: Add examples section for better voice application:
examples:
greeting: "Hi there! Let's get started."
error: "Oops, something went wrong. Here's what to try..."
| File | Status | Issues |
|---|---|---|
| project.yaml | ❌ Error | Missing project_type |
| team-profile.yaml | ⚠️ Warning | Deprecated field |
| risk-register.yaml | ✅ Pass | - |
| artifacts.yaml | ⚠️ Warning | Invalid reference |
| phases.yaml | ✅ Pass | - |
| File | Status | Issues |
|---|---|---|
| models.json | ✅ Pass | - |
| channel-specs.yaml | ✅ Pass | - |
| brand-colors.yaml | ✅ Pass | - |
| File | Status | Issues |
|---|---|---|
| brand-voice.yaml | ⚠️ Info | Missing examples |
| technical-voice.yaml | ✅ Pass | - |
| casual-voice.yaml | ✅ Pass | - |
These issues can be fixed automatically:
| # | Issue | File | Fix Command |
|---|---|---|---|
| 1 | Deprecated field migration | team-profile.yaml | config-validator --fix |
| 2 | Add missing defaults | project.yaml | config-validator --fix |
Run config-validator --fix to apply automated fixes.
These issues require manual intervention:
project.yaml (blocking)After fixes, re-run validation:
"validate config"
Expected result: All checks passing
## Usage Examples
### Full Validation
User: "Validate config"
Skill executes:
Output: "Configuration Validation Complete
Files Checked: 18 Errors: 1 (blocking) Warnings: 3
Critical Issue: ❌ project.yaml: Missing required field 'project_type'
Warnings: ⚠️ team-profile.yaml: Deprecated field 'team_lead' ⚠️ artifacts.yaml: Template reference not found ⚠️ brand-voice.yaml: Missing recommended 'examples'
Quick Fix Available: Run 'config-validator --fix' for automated fixes
Report: .aiwg/reports/config-validation.md"
### Specific File Validation
User: "Check team profile config"
Skill validates single file:
Output: "Team Profile Validation
File: .aiwg/team/team-profile.yaml Status: ⚠️ Warning
Issues:
All other fields valid."
### Auto-Fix
User: "Fix config issues"
Skill applies fixes:
Output: "Configuration Auto-Fix Applied
Fixed: ✅ team-profile.yaml: Migrated deprecated field ✅ project.yaml: Added default project_type
Backed up:
Manual fixes still needed: ⚠️ artifacts.yaml: Create missing template
Re-validate to confirm."
## Integration
This skill uses:
- `project-awareness`: Find config files
- `artifact-metadata`: Track validation history
## Configuration
### Validation Strictness
```yaml
strictness:
development:
errors: block
warnings: report
info: report
staging:
errors: block
warnings: block
info: report
production:
errors: block
warnings: block
info: block
custom_schemas:
location: .aiwg/config/schemas/
format: json_schema_draft7
auto_discover: true
.aiwg/reports/config-validation.md.aiwg/backup/.aiwg/cache/schemas/This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.