Validates KrakenD configurations with specific error fixes, edition compatibility checks, anti-pattern detection, and Flexible Configuration support
Inherits all available tools
Additional assets for this skill
This skill inherits all available tools. When active, it can use any tool Claude has access to.
Validates KrakenD configurations with specific error fixes, edition compatibility checks, anti-pattern detection, and automatic Flexible Configuration support. Provides actionable feedback with line numbers and recommendations.
YOU MUST FOLLOW THESE RULES - NO EXCEPTIONS:
ONLY fix errors explicitly listed in the validation output
validate_config tool output is AUTHORITATIVERead the guidance field in validation output
guidance field with specific instructionsWhen uncertain about KrakenD syntax:
search_documentation tool to verify against official docsExample of WRONG behavior:
Example of CORRECT behavior:
search_documentation to verify before suggestingRemember: KrakenD has specific, sometimes counter-intuitive syntax. Trust the validation tool output, not your intuition.
This skill automatically detects and handles Flexible Configuration (FC):
What is Flexible Configuration?
KrakenD configurations can be split across multiple files using templates instead of a single krakend.json.
Two Variants:
Community Edition (CE) Flexible Configuration:
.tmpl files (e.g., krakend.tmpl)FC_ENABLE=1, FC_SETTINGS, FC_TEMPLATES, FC_PARTIALSconfig/settings/, config/templates/, config/partials/Enterprise Edition (EE) Extended Flexible Configuration:
flexible_config.json behavioral fileenvironment/, settings/, templates/, partials/This skill automatically:
.tmpl files, flexible_config.json, or typical directory structuresUser experience:
krakend.json)krakend check if available (most accurate)validate_config - Complete validation (smart fallback: native KrakenD → Docker → schema)
check_edition_compatibility - Detect CE vs EE requirementssearch_documentation - Find relevant docs for errors (USE THIS when unsure about syntax)list_features - Query feature catalog if neededWhen discussing Docker deployment or validation:
krakend:latest (official image)krakend/krakend-ee:latest (requires KRAKEND_LICENSE_KEY)devopsfaith/krakend (old), krakend/krakend:latest (use krakend:latest instead)Query the feature catalog with list_features to browse available features and check edition requirements.
Provide a clear, structured report:
# KrakenD Configuration Validation
## Summary
✅ JSON Syntax: Valid
⚠️ Edition: Requires Enterprise Edition
❌ Configuration: 2 errors found
## Details
### Edition Compatibility
Your configuration uses the following Enterprise Edition features:
- `auth/api-keys` - API Key Authentication
- `websocket` - WebSocket Support
**Action**: Upgrade to Enterprise Edition or remove these features.
### Errors
**Error 1**: Missing required field 'alg' in JWT validator
- **Location**: $.endpoints[0].extra_config["auth/validator"]
- **Fix**: Add "alg": "RS256" to the JWT validator configuration
- **Docs**: https://www.krakend.io/docs/authorization/jwt-validation/
**Error 2**: Invalid value for max_rate
- **Location**: $.endpoints[1].extra_config["qos/ratelimit/router"].max_rate
- **Fix**: max_rate must be a positive number (found: -10)
### Best Practices
✓ Circuit breakers configured for all backends
⚠️ Consider adding rate limiting to POST endpoints
⚠️ No CORS configuration - add if serving web clients
## Validation Method
Validated using: **Native KrakenD** (most accurate)
guidance field - Every validation output includes binding instructionssearch_documentation - Verify syntax against official docs before suggesting$.endpoints[0].backend[0])Response: "I'll validate your KrakenD configuration for you."
[Use check_syntax first]
[Then use validate_config]
[Then use check_edition_compatibility]
[Present structured report as shown above]
Response: "I found a JSON syntax error in your configuration:
Error: Invalid character '}' at line 45, column 3 Issue: Extra closing brace Fix: Remove the extra '}' on line 45
Would you like me to fix this for you?"
Response: "Your configuration uses Enterprise Edition features but you may be running Community Edition:
EE Features Found:
security/policies - Security Policies Engine (line 67)qos/ratelimit/stateful - Stateful Rate Limiting (line 102)Options:
Which would you prefer?"
config-builder skillfeature-explorer skill