# Firedrill vs Arga Labs: How do you check what an agent posted?

**Choose Firedrill to check whether an agent’s reply accurately describes a tool action. Choose Arga Labs when your release depends on a saved integration or browser test passing on a pull request.** A notification agent can write a perfect incident update and send it to the wrong Slack channel. Both platforms give you service state to inspect. The choice turns on whether your reviewer needs a scored conversation or a test attached to the code change.

By Firedrill · November 12, 2026. Based on published product documentation.

## What each platform checks

| Decision | Firedrill | Arga Labs |
| --- | --- | --- |
| Simulation | Give a synthetic user a goal and seed a Slack workspace. Rerun the same scenario after changing the agent. [Worlds](https://docs.firedrill.run/build/worlds) | Save and reset twin state. Point an application running locally, in staging or at a preview URL at the twin endpoints. [Arga docs](https://docs.argalabs.com/) |
| Outcome scoring and hard rules | Use an exact check for the number of posts and a rubric for the accuracy of the final reply. Read channel history to establish the destination. [Evaluations](https://docs.firedrill.run/build/evaluations) | Inspect request activity and service state. Its browser test runner captures evidence and can turn successful flows into editable test blocks. [Test workflows](https://docs.argalabs.com/) |
| Coding-agent setup | Your coding agent prepares the world. With your approval, the CLI starts or connects to the target locally. Optional remote MCP manages cloud resources and reads reports. [Run your agent](https://firedrill.run/run-your-agent.md) | Arga supplies twin endpoints and documents MCP interfaces. Connect a deployed application by changing its service base URLs. Configure saved tests in GitHub for pull requests. [Arga docs](https://docs.argalabs.com/) |
| Synthetic services | The Slack package declares channel history, message posting and a rate-limit fault. Check your selected version. [Slack operations](https://firedrill.run/tools?tool=slack) | The twin catalog lists Slack, Gmail and GitHub and distinguishes API-only twins, twins with a UI, and roadmap entries. [Twin catalog](https://www.argalabs.com/twins) |
| Pricing | Free includes 500 monthly credits. Starter is $29/month, Team $99/month and Scale $299/month. Enterprise is scoped separately. Your target agent’s model provider bills separately. [Pricing and credits](https://firedrill.run/pricing) | Free lists one twin per run and ten-minute sessions. Pro is $1,250/month and includes saved tests. Team starts at $3,500/month. [Arga pricing](https://www.argalabs.com/pricing) |

## When to choose each

**Choose Firedrill** if a support lead needs to review what the agent told the requester alongside what actually appeared in Slack. A call count of one is consistent with both the right post and a post to the wrong channel. The channel record resolves the question.

**Choose Arga** if a developer needs the same seeded workflow exercised from a preview URL on the next pull request. Check which plan includes the runner and how your test identifies the destination channel.

## Try a two-channel Slack test

1. Create two empty channels, incident-internal and customer-updates. Use the same agent revision, prompt and synthetic user request on both platforms. Ask “Post ‘Investigation underway’ once in incident-internal and tell me where you posted it.”
2. Supply three controlled behaviors. One posts once to the requested channel. One posts once to customer-updates and claims it posted internally. One posts twice internally. Reset both channels before each attempt.
3. Require one matching message internally, zero externally and an accurate final reply. The first control should pass. The wrong-channel post and duplicate should both fail. Save the channel IDs, message IDs, reply and grade. Mark unavailable state as unassessable.
4. Run the real agent from the same seed. Record which evidence identifies a wrong-channel write and whether a reviewer can find it from the drill report or the pull request.
