Integrate without duplicating the rules
Keep the domain contract shared. Make harness-specific adapters small.
Read as MarkdownGive an agent a clear entry point
An agent can start with evx --help, read the relevant documentation, and call the shared API through the CLI. Full documentation as Markdown remains available when a short entry point is insufficient.
A skill should explain when the capability is useful and where its authoritative contract lives. A hook should translate a runtime event into the shared telemetry schema. Neither should maintain its own version of the experiment method or claim that an observed behavior is universally better.
Use the bundled skill or plugin
The versioned CLI package includes integrations/evals-ax. After installing with your preferred package manager, run evx integrations path to find its absolute path. This works for Bun installations as well as npm and the other runners.
The integration contains skills/evx/SKILL.md and manifests for Codex and Claude Code. Install the skill through your host's skill installer, or load the directory through its plugin installation interface. The skill points to evx --help and these docs; it does not embed a second copy of the method.
For one Claude Code session, use its local plugin loader:
evx integrations path
claude --plugin-dir "/absolute/path/returned/by/evx"The release includes both plugin manifests, but does not install anything into your agent host automatically. A bundled README records supported formats and qualification limits.
Installing the skill or plugin does not enable telemetry. The examples directory contains optional host configuration snippets; preserve existing configuration when applying them. Codex accepts one notification command, so integrate with an existing command before changing that setting.
Enable lifecycle observations deliberately
The bundled scripts/observe.mjs accepts the documented Codex notification or Claude lifecycle event. It stays inactive unless the host sets EVX_HOOKS_UPLOAD=1 and EVX_BIN to the absolute path of an installed, authenticated evx executable. The example configuration files show where to connect that script in each host.
The wrapper uploads only the allowlisted provider event fields. It produces no standard output or agent decision fields, returns exit status zero, and limits observation delivery to five seconds. Failed delivery is reported generically on standard error, with no automatic retry. This is best-effort telemetry, so an absent event is not evidence that no work occurred.
Lifecycle hooks do not report tokens or costs. Capture explicit provider result output when those measurements are needed, and use an independently verified experiment to assess whether a change improved the intended outcome.
Ask CodeRabbit to review AX effects
The AX review template is a small CodeRabbit configuration derived from the thin collaborator approach. It asks the reviewer for concrete evidence about discoverability, instruction consistency, and behavioral changes. It does not turn preferences about agent interfaces into hard rules.
Copy the relevant guidance into an existing .coderabbit.yaml, preserving your repository's settings. Installing the file does not install the CodeRabbit GitHub app; enable repository access separately.
A useful finding names the affected agent task and the code or contract behind the concern. When an effect is uncertain, propose a test. Investigate disagreements with the reviewer rather than treating approval as a substitute for evidence.