Chaos Runner
DevOps & Securitychaos-runnerChaos Runner is an Agent Skill for devops & security published in the a5c-ai/babysitter repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.
Run chaos engineering experiments using Chaos Monkey, Litmus, or Gremlin
QUICK START
How to use this skill
Bring this guide into your coding agent with a prompt tailored to the tool you use.
- Open your project in Codex.
- Copy and paste the prompt below.
- Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/a5c-ai/babysitter/blob/HEAD/library/specializations/software-architecture/skills/chaos-runner/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/chaos-runner, but wait for my approval before writing files or running scripts.
Copying this prompt does not install or run the skill. Review third-party files before use.
Chaos Engineering Runner Skill
Overview
Runs chaos engineering experiments using Chaos Monkey, Litmus, or Gremlin including failure injection scenarios, blast radius control, and experiment analysis.
Capabilities
- Run Chaos Monkey experiments
- Litmus chaos execution
- Gremlin integration
- Failure injection scenarios
- Blast radius control
- Steady state validation
- Experiment rollback
- Results analysis
Target Processes
- resilience-patterns
Input Schema
{
"type": "object",
"required": ["experiment"],
"properties": {
"experiment": {
"type": "object",
"properties": {
"name": { "type": "string" },
"type": {
"type": "string",
"enum": ["pod-kill", "network-latency", "cpu-stress", "memory-stress", "disk-fill", "node-drain"]
},
"target": {
"type": "object",
"properties": {
"namespace": { "type": "string" },
"labelSelector": { "type": "object" },
"percentage": { "type": "number" }
}
},
"duration": { "type": "string" }
}
},
"framework": {
"type": "string",
"enum": ["litmus", "gremlin", "chaos-monkey", "toxiproxy"],
"default": "litmus"
},
"steadyState": {
"type": "object",
"properties": {
"probes": { "type": "array" },
"assertions": { "type": "array" }
}
},
"options": {
"type": "object",
"properties": {
"dryRun": {
"type": "boolean",
"default": true
},
"autoRollback": {
"type": "boolean",
"default": true
},
"notifyOnFailure": {
"type": "boolean",
"default": true
}
}
}
}
}
Output Schema
{
"type": "object",
"properties": {
"experimentId": {
"type": "string"
},
"status": {
"type": "string",
"enum": ["passed", "failed", "aborted"]
},
"steadyStateValidation": {
"type": "object",
"properties": {
"before": { "type": "boolean" },
"during": { "type": "boolean" },
"after": { "type": "boolean" }
}
},
"metrics": {
"type": "object",
"properties": {
"affectedPods": { "type": "number" },
"recoveryTime": { "type": "string" },
"errorRate": { "type": "number" }
}
},
"findings": {
"type": "array"
},
"recommendations": {
"type": "array"
}
}
}
Usage Example
{
kind: 'skill',
skill: {
name: 'chaos-runner',
context: {
experiment: {
name: 'pod-failure-test',
type: 'pod-kill',
target: {
namespace: 'production',
labelSelector: { app: 'api-service' },
percentage: 50
},
duration: '5m'
},
framework: 'litmus',
steadyState: {
probes: [{ type: 'http', endpoint: '/health' }],
assertions: [{ metric: 'error_rate', operator: '<', value: 0.01 }]
},
options: {
dryRun: false,
autoRollback: true
}
}
}
}