Add agent output, events file and skills for coding agents - #319
Merged
Merged
Conversation
`chaos run --output agent` and `chaos validate --output agent` write a single JSON report with a deterministic outcome, whether it is conclusive, stable warnings and a summary of the journal. The exit code is unchanged. `chaos run --events-file` streams progress as NDJSON. `chaos skills` installs skills guiding coding agents to design and run experiments with the engine, including network faults through fault's engine, load generation and safeguards. SIGINT and SIGTERM are relayed once to the uv runtime so interrupted runs still play rollbacks and report. Signed-off-by: Sylvain Hellegouarch <sh@defuze.org>
Signed-off-by: Sylvain Hellegouarch <sh@defuze.org>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Makes Chaos Toolkit an engine coding agents can rely on to run bespoke experiments, and ships skills that teach them how.
Agent output (
--output agent)chaos run --output agentwrites a single JSON report (chaostoolkit/agent/run/v1) once the run is over:outcomederived from the journal:passed,deviated,baseline-not-met,probe-error,aborted,interruptedorerror;conclusive, a shortverdictand stablewarningscodes (dry run, no hypothesis, failed method activity, rollbacks not played or failed);interrupted_bynaming a safeguard, a bundled control or a signal when the journal tells;chaos validate --output agentwrites a single report with the first error and its stage.errorreport is still written.chaos run --events-file PATHstreams progress as NDJSON, to follow long runs.Runtime
chaosare now relayed once to the uv runtime child, which runs in its own session. Interrupted runs play rollbacks and still report. Previously SIGTERM left the child running unsupervised.chaos skills list|show|installInstalls skills for Claude, Codex or OpenCode, in the workspace or the home directory, mirroring
fault skill install:chaostoolkit-experiment: when an experiment is warranted, steady states from real data (error budget burn rate and projection onto the SLO window), load when it matters (defaulting tooha), one perturbation, tempo derived from the system, safeguards, bespoke Python activities,runtime.python.dependencies, scratch-area storage, a pre-run checklist, long-run handling and how to read the report.chaostoolkit-network-faults: network faults through fault's engine (faultlib), set and cleared by the method, with a routing check so a misrouted run is never reported as a pass.PATH, fault's own skill is installed alongside.Related
interruptedrather than a pass.interrupted_by.Testing
faultlibwith oha load and a burn-rate probe (deviated, then a misrouted run reported inconclusive), safeguards interruption, and a failure matrix (unresolvable runtime, busy proxy port, SIGINT/SIGTERM with and without a uv runtime).