plugins array.
The Sandbox template remains in the Eval, Eval Group, or Experiment sandbox field.
Define an instance or factory
An object definition returns an instance. A function definition returns a single-argument factory.name and identity are required; key defaults to "default".
before and after accept one element or an array. Compose shared conditions with array spread: plugins: [...basePlugins, condition].
Each effective (name, key) pair must be unique for an Attempt, including attachments across Experiment, Eval Group, and Eval.
Choose a scope
When all results carry, no hooks run and no Sandbox is created. Before hooks run in author and Plugin declaration order. After hooks run in reverse activation order.
Host after failures produce warnings and do not skip remaining cleanup. Agent after failures fail the Attempt while remaining after hooks and finalizers still run.
Declare
requires: { evalGroup: true } to access ctx.evalGroup.id directly. Selecting an Eval outside a Group fails before resources are created, including when all results would carry.
Merge Agent extensions
Useagent.skills and agent.mcpServers for common extensions. Use agent.codex, agent.claudeCode, and agent.bub for factory-specific settings.
Factory configuration comes first, followed by Plugins in array order. Duplicate Skills, MCP names, native plugins, or config files fail validation.
Bub does not accept MCP servers. Custom Adapters do not accept agent extensions. A Plugin with Agent-specific fields must include the selected Agent.
Rerun when conditions change
identity declares the condition version. Managed Action content, Skill content, and configuration file content also affect identity; MCP headers and env do not.
Changing only a callback body in an Experiment module does not change Plugin identity. Update identity or use --rerun all when its behavior changes.
Eval modules retain their source-closure rules. Plugin identity does not populate ctx.flags; declare runtime parameters explicitly in flags.
debug shows expanded steps, actual Action order, and Plugin sources. Experiment information in show and view lists Plugin name, key, and identity.