Skip to content

Add agent output, events file and skills for coding agents - #319

Merged
Lawouach merged 2 commits into
masterfrom
agent-skills
Sep 27, 2026
Merged

Lawouach merged 2 commits into
masterfrom
agent-skills

Conversation

@Lawouach

@Lawouach Lawouach commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor

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 agent writes a single JSON report (chaostoolkit/agent/run/v1) once the run is over:
    • a deterministic outcome derived from the journal: passed, deviated, baseline-not-met, probe-error, aborted, interrupted or error;
    • whether it is conclusive, a short verdict and stable warnings codes (dry run, no hypothesis, failed method activity, rollbacks not played or failed);
    • interrupted_by naming a safeguard, a bundled control or a signal when the journal tells;
    • a summary of steady states, method and rollbacks, and the journal path.
  • chaos validate --output agent writes a single report with the first error and its stage.
  • The process exit code is unchanged: it still reflects whether the process went through normally.
  • In agent mode, stdout carries the report only; whatever activities or controls print goes to stderr. When the uv runtime cannot be prepared, an error report is still written.
  • chaos run --events-file PATH streams progress as NDJSON, to follow long runs.

Runtime

  • SIGINT and SIGTERM received by chaos are 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|install

Installs 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 to oha), 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.
  • When fault 1.0+ is on PATH, fault's own skill is installed alongside.

Related

Testing

  • 136 tests, including agent reports for every outcome, runtime child failures, signal relaying and skills installation.
  • End to end with real processes: fault proxies through faultlib with 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).

`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>
@Lawouach
Lawouach merged commit 5948fb3 into master Sep 27, 2026
9 checks passed
@Lawouach
Lawouach deleted the agent-skills branch September 27, 2026 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant