Testing an agent
Try your agent live in the builder, read its trace, and iterate before deploying.
You can run an agent without leaving the builder. The Test panel lets you talk to the current draft, watch it work in real time, and inspect exactly what it did — so you can refine it before deploying.
The test panel
Click Test to open the panel. Type a message — and attach files if the agent works with them — and send it. Any unsaved edits are saved first, so every test runs exactly what's on screen. The response streams back live, just as it will in production.
Each reply shows:
- the agent's tool calls, each as a row you can expand to see its Input and Output — and whether it succeeded, failed, or was denied;
- its Reasoning, when reasoning is on;
- approval requests, as cards you can decide on the spot, when a gated tool is called;
- and a footer with the reply's tokens and cost and a Trace button that opens the full execution tree.
Chat input only
The Test panel sends chat messages. An agent with an Object input — or one that batches over a list — expects structured values the panel can't provide; run it from a workflow, or from the API or CLI against its draft.
What a test really does
A test runs the agent's draft for real:
- It's a real execution. Each turn is recorded and appears in Observability, and its cost counts toward your spend limits.
- Tools really run. A tool call writes to the real system behind its connection. Workflows and agents used as tools run their drafts (except ones that come with a solution, which run their deployed versions).
- On the Compass harness, Compass's own tools act as you.
What's throwaway is the conversation: it never appears in your chat history, and it's discarded when you click Reset or leave the page. Closing the panel ends it too: earlier messages stay on screen, but the agent no longer sees them — click Reset to start clean. Your live deployment is never affected.
If the agent has Conversation History turned on, your earlier test messages are replayed as context, so you can check how it handles a multi-turn exchange.
Iterate
Testing is meant to be a tight loop:
- Send a representative input.
- Read the response and the trace.
- Adjust the instructions, model, configuration, or tools.
- Test again.
Deploy when it's ready
Once the agent behaves the way you want, Deploy it to freeze the draft into a numbered version and publish it live. Deploying runs a quick validation and blocks on anything that would stop the agent from running.