Ancha vs Archal.
Ancha and Archal both give your agent stateful copies of the tools it calls, like Slack, Stripe and GitHub. The difference is everything around those tools. With Archal, your own harness plays the other people, keeps time and decides whether the agent passed. With Ancha, the world does that part too: people reply, time moves, and each run ends with checks on what your agent actually did.
Updated November 3, 2026. Archal details come from its public documentation.
Which one fits your agent?
Choose Ancha if
- Your agent works with people: approvals, follow-ups and replies that come later.
- You want pass or fail on what happened, like the refund amount or the order of steps, without writing an evaluator.
- You want one scenario file that runs the same way on your laptop and in CI.
Choose Archal if
- You already have a harness and an evaluator, and need API sandboxes behind them.
- You need a provider in Archal's catalog that Ancha does not cover.
- You want to manage environments yourself from an existing test runner.
What each one gives you.
| Feature | ancha. | Archal |
|---|---|---|
| What you get | A world: stateful tools, the people around them, a clock, and checks on what your agent did. | Stateful API environments. Its docs call them testing sandboxes for software that talks to external services. |
| Tools | Slack, Stripe, GitHub, PagerDuty, Datadog and more. See all tools. | 22 environments, including Slack, Stripe, GitHub, Datadog, Jira and Supabase. |
| State between calls | Kept for the whole run. | Kept for the whole run. |
| Starting data | Written in a scene file and reused as a seed. | JSON starting state or versioned samples. |
| Other people | Built in. People reply on a schedule or when something happens. | Your harness sends their messages. |
| Time | Simulated. A two-hour wait takes seconds. | Your harness handles timing. |
| Pass or fail | Built-in checks on end state, call order and process, plus your own assertions. | Your evaluator decides, using state reads and diffs. |
| Repeat a run | Reset the world and run again with the same inputs. | Reset to the starting state and diff against a snapshot. |
| MCP | Slack, GitHub, PagerDuty and Datadog, since version 0.1.5. | Listed as an integration option. |
| Your own agent | Point it at the world’s tool URLs, or register it for managed runs. | Point it at the returned URLs with scoped credentials. |
Archal's column reflects its documentation on November 3, 2026. Neither column claims complete coverage of every upstream API.
One refund, five agents.
This is the kind of test where the difference shows. Laura asks in Slack for a $480 credit on a $2,000 charge. The policy in GitHub says a manager has to approve it. Laura follows up an hour later, and Mike approves two hours after he is asked. A good agent refunds once, files an audit issue and answers in Laura's thread without repeating an internal incident detail.
We ran five scripted agents through this scenario in Ancha, one correct and four with a planted bug. Each run got the same 10 checks.
| Agent | Checks | What the checks caught |
|---|---|---|
| Correct agent | 10/10 | Every check passed |
| Refunds before approval | 9/10 | Refund came before approval |
| Refunds twice | 8/10 | Two refunds instead of one; refunded total is not $480 |
| Refunds the wrong customer | 7/10 | Refunded total is not $480; refunded the wrong charge; another customer was changed |
| Leaks an internal detail | 9/10 | Internal incident detail reached the customer |
Every run made real API calls against local Ancha twins, with scripted replies from Laura and Mike. The results show the checks catching each bug; they say nothing about any model's reliability. We did not run Archal on this scenario.
The same test, built on each.
With Ancha
One scene file and your agent.
- Put the Slack, Stripe and GitHub starting data in a scene.
- Add Laura's follow-up and Mike's delayed approval as timed replies.
- Point your agent at the world's tool URLs.
- Run it and read the checks on order, amounts and who saw what.
With Archal
Its environments plus your harness and evaluator.
- Write starting JSON for Slack, Stripe and GitHub.
- Create the environments and connect your agent to their URLs.
- Have your harness post the follow-up and the approval at the right moments.
- Write assertions in your evaluator using state reads and diffs.
Frequently asked questions.
What is the difference between Ancha and Archal?
Both provide stateful copies of the tools an agent calls, such as Slack, Stripe and GitHub. Archal provides the environments and leaves the rest of the test to your harness and evaluator. Ancha also runs the people and the clock in a scenario and checks what the agent did, so testing an approval or a follow-up needs no extra code.
Can I use Ancha with my own test harness?
Yes. Start a world from the CLI, point your agent at its tool URLs, and read the checks when the run ends. You can also register an agent and let Ancha run repeated attempts.
Does Ancha support MCP?
Yes. Since version 0.1.5, the Slack, GitHub, PagerDuty and Datadog twins are available as MCP endpoints, and ancha mcp config prints the settings for Claude Code, the Claude Agent SDK and the OpenAI Agents SDK.
Can Ancha simulate an approval that arrives hours later?
Yes. People in a scenario reply at a set time or when a condition is met. The clock is simulated, so a two-hour wait takes seconds.
Does Archal check whether my agent passed?
Archal’s documentation says it does not replace your agent harness, model, evaluator, observability tool or CI system. It gives you state reads and diffs, and your evaluator decides pass or fail.
How do I try Ancha?
Install the CLI with npm i -g @ancha-labs/cli to run worlds on your machine, or book a demo for a hosted workspace.
Where these details come from.
- Archal overview: what Archal provides and what it leaves to your harness and evaluator
- Archal starting state: JSON starting state and versioned samples
- Archal inspect and reset: state reads, diffs and reset
- Archal CI integration: using environments from an existing test runner
- Archal Slack, Stripe and GitHub: the environment catalog
- Ancha checks: end state, call order and process checks
- Ancha test files: tools, starting data, timed people and checks in one scene
- Ancha world lifecycle: connecting your own harness to a world