Runtime Detector
Purpose
Determines the correct way to execute KrakenD commands by detecting available runtimes and providing ready-to-use commands with the appropriate Docker image or native binary.
When to activate
- •User asks to run/start/execute KrakenD: "run krakend", "start the gateway", "execute krakend"
- •User mentions Docker commands for KrakenD: "docker run krakend", "which docker image"
- •User asks how to run their config: "how do I run this", "start my config"
- •User asks about KrakenD versions or images: "which version", "what image to use"
CRITICAL: Always Use Runtime Detection
NEVER invent Docker images or commands. Always follow this process:
- •Call
detect_runtime_environmenttool with the config file path - •Use the
recommendationsarray from the response (ordered by priority) - •Use
command_templatefrom priority=1 recommendation - •If Docker needed, use
recommended_imagefield for the image name
Common hallucinations to avoid:
- •❌
devopsfaith/krakend(outdated) - •❌
krakend:latestwithout checking - •❌
krakend/krakend:version(wrong format) - •✅ Use exactly what
detect_runtime_environmentreturns
What the tool returns
- •
has_native_krakend: Whether native binary is installed - •
has_docker: Whether Docker is available - •
recommended_image: Correct Docker image (e.g.,krakend:2.8orkrakend/krakend-ee:2.8) - •
recommendations: Array of execution options withcommand_templateready to use - •
is_enterprise: Whether config uses EE features
Example Interaction
User: "Run my krakend.json"
Response: Call detect_runtime_environment, then provide the command from command_template. Explain if using native or Docker and why.
Integration
- •After
config-validatorvalidates successfully → Offer to run with this skill - •After
config-buildercreates config → Offer to test run - •If user needs to validate first → Hand off to
config-validator