Skip to main content
SimLab is agent-agnostic. The default reference agent uses a tool-calling loop with any LLM API (via LiteLLM), but you can bring your own agent by implementing the BaseAgent contract. Install via:

Contract

Your agent extends BaseAgent and implements four methods:
self.call_llm() is your own LLM integration — use any provider (OpenAI, Anthropic, etc.). SimLab is model-agnostic.

Lifecycle

  1. The runner calls setup() once, then run().
  2. If the agent exceeds the timeout, the run is terminated and artifacts captured up to that point are saved.

Running Your Agent

Register your agent at runtime via the CLI:
If --agent-import-path is omitted, the CLI uses the built-in reference agent.