Configure a recipe manually only when a benchmark page names an alternative recipe, troubleshooting requires a
restricted match set, or your team needs custom adaptation logic. Otherwise, keep the default automatic matching.
How Recipes Work
The same benchmark task may require different image and working-directory settings on Docker, Daytona, and Modal. Each time a task starts, AgentCompass uses recipes that match the benchmark and environment to prepare these settings. For example, a recipe can:- select an image from the task id or an image address recorded in the task;
- set the working directory to a benchmark path such as
/testbed,/workspace, or/root; - convert CPU, memory, disk, or GPU requirements into parameters supported by the selected environment;
- add image and network settings when scoring requires a separate sandbox.
When to Configure a Recipe Manually
--recipe does not force the named recipe to run. It only allows the listed ids to participate in matching. A recipe
must still match the current benchmark, environment, and task information. When this option is omitted, AgentCompass
matches from all available recipes automatically.
If several recipes match, AgentCompass applies all of them. To confirm what was applied, look for Recipe matched in the
DEBUG run log.
Examples
The following command usessample_ids to run one
SWE-bench Verified instance. It omits --recipe; AgentCompass matches a built-in recipe from swebench_verified and
modal automatically.
/testbed. Other built-in
adaptations include:
Override Recipe-Provided Values
To use a custom image or snapshot, pass a field supported by the selected environment through--env-params:
Trusted External Recipes
This is an advanced workflow for team-defined adaptation logic.--recipe-dir loads an external recipe for the current
run:
External package requirements
External package requirements
- The directory must be a Python package containing
__init__.py. - The root module must export a non-empty
RECIPE_CLASSESlist or tuple. - Every item must be a concrete subclass of AgentCompass’s
BaseRecipebase class, with a uniqueidand a zero-argument constructor. - Relative paths resolve from the current working directory.
agentcompass launch has no --recipe or --recipe-dir option; place the corresponding fields in the orchestration
file. Explicit CLI or SDK lists replace the corresponding configuration-file lists rather than appending to them.
Duplicate recipe ids fail during loading. If multiple recipes modify the same image, working directory, or network
setting, AgentCompass does not resolve the conflict automatically, so do not load implementations with overlapping
responsibilities together.
