The packages are currently release candidates and are not yet on public package registries. The quickstart uses a source checkout and marks the future package-install path separately.
The working loop
1
Add useful Tools and data
Install a reusable Tool or create one in your repository. A Tool defines callable operations, deterministic behavior, and the state those operations change.
2
Connect the existing agent
Point the agent’s configurable MCP, HTTP, CLI, function, SDK, or browser seam at Firedrill. Your application, model, and agent runner remain yours.
3
Run a drill
Give the agent a task in an isolated world. Define the starting scenario and assert on observable consequences rather than model wording.
4
Inspect and reproduce
Review the causal timeline, tool activity, data changes, assertions, logs, and optional captures. Re-run the same build and seed when you need to reproduce a result.
Start with your goal
Start synthetic Tools
Create a controlled backend and inspect its state before writing a test.
Test an agent locally
Run one complete drill and open its evidence report.
Connect an existing agent
Use an existing MCP, HTTP, CLI, function, SDK, or browser boundary.
Mock one dependency
Inject synthetic behavior from Jest, Vitest, Mocha, or another runner.
Reproduce a failure
Control state, time, faults, seeds, resets, and immutable builds.
Use Firedrill in code
Drive local worlds and drills through the TypeScript SDK.
What Firedrill controls
Firedrill does not host or rewrite your agent in the local workflow. It gives the agent a safe world to act inside and records the consequences.
Run the quickstart
Go from a source checkout to a passing drill and a local HTML report.