---
title: "Run tools, sandbox controls, and richer run triage"
date: "2026-05-24"
---

<Warning>
**Context-window data moved into `agent.message`.** The standalone `agent.context_window.snapshot` event was removed, and context-window details now travel with the assistant message that produced them.

To migrate:
1. Stop listening for `agent.context_window.snapshot`.
2. Read `context_window` from `agent.message` properties or from the stage projection.
</Warning>

## Workflow agents get the full Fabro tool catalog

Workflow agents that opt in to Fabro run tools now receive the same run-management catalog exposed to human MCP clients. That includes `fabro_run_pair`, so an agent can start a pairing session, send messages, and read transcripts without needing a separate user-only route.

```toml
[run.agent]
fabro_tools = true
```

The run projection now also reports the effective agent tools for a stage. The UI can show which native, MCP, and skill tools were actually available instead of guessing from configuration alone.

## Sandbox providers can be managed centrally

Operators can now enable or disable individual sandbox providers at the server level. Fabro enforces the policy during run admission, preflight, and launch, so a disabled provider fails before a run starts work.

```toml
[server.sandbox.providers.docker]
enabled = true

[server.sandbox.providers.daytona]
enabled = false
```

The web app also gained a Settings > Sandboxes page for provider visibility. That gives teams a clearer place to inspect the configured sandbox backends without digging through server config files.

## Run triage is faster from list and stage views

The runs list bulk toolbar now includes Delete for selected runs, with a matching batch API that returns per-run results. Run detail pages gained more direct actions, including Copy run ID, and cancelled runs can be resumed or retried instead of being recreated by hand.

```http
POST /api/v1/runs/delete
```

Stage status, model, and event details are now available from hover popovers across the run overview graph, stage sidebar, and stage events toolbar. Loaded stage events also gained Copy and Download actions, which makes it easier to move raw event output into an issue, support thread, or local investigation.

## More

<Accordion title="API">
- New `POST /api/v1/runs/delete` endpoint deletes multiple runs and returns per-run results plus a summary
- Stage projections now include `agent_tools` with the effective native, MCP, and skill tools for the stage
- `AgentMessageProps.context_window` now carries context-window data directly on `agent.message`
- Pair routes now accept run-management actors, allowing workflow agents to use `fabro_run_pair`
</Accordion>

<Accordion title="Workflows">
- Added legacy SSE MCP transport support for MCP servers that still expose SSE instead of streamable HTTP
- `[run.agent] fabro_tools = true` now exposes all seven Fabro run-management tools to workflow agents
- Server sandbox provider policy now blocks disabled providers at admission, preflight, and launch
</Accordion>

<Accordion title="Fixes">
- Fixed unfinished stages being left open after a run failure
- Fixed local server runs being unable to access project skills
- Fixed root-stage todo projections being overridden by child OpenAI plan events
- Fixed cancelled projections for failed commands
- Fixed stale run conclusions persisting after resume
- Fixed cancelled runs being blocked from resume and retry flows
- Removed a non-functional demo-mode Connect dropdown
- Suppressed the redundant Starting pill on the runs list
</Accordion>

<Accordion title="Improvements">
- Added Settings > Sandboxes
- Added the New Automation form and refreshed the Secrets form layout
- Added a run size badge to the run header
- Added tooltips and a more compact presentation for the stage Tools list
- Improved Slack setup and lifecycle notification messages
- Unconfigured provider rows now link directly to a prefilled secret form
- Removed retired OpenAI models from the catalog
- Improved muted stage status pill contrast
- Collapsed the stage events search field behind an icon by default
- Updated the Automations nav icon
- Moved event export actions to the Debug sub-tab
</Accordion>
