default.toml, which serves as the canonical reference.
Location:
src/yc_bench/config/presets/default.tomlEvery parameter is explicitly listed in the default preset so this file doubles as complete documentation.Top-Level Fields
These fields identify and describe your experiment.Experiment name, used in output filenames and logs.Default:
"default"Human-readable description of what this configuration tests.Default:
"Hardened 3-year benchmark. Most tasks require prestige 3-5, 2-domain work, tight deadlines, costly cancellations."Name of another preset to inherit from. All presets except
default use extends = "default" to inherit base parameters.Example: extends = "default"Agent Configuration
The[agent] section configures the LLM agent behavior.
LLM model identifier. Supports OpenRouter format.Default:
"openrouter/z-ai/glm-5"Example: "openrouter/anthropic/claude-3.5-sonnet"Sampling temperature for model responses.Default:
0.0Range: 0.0 (deterministic) to 1.0 (creative)Nucleus sampling parameter.Default:
1.0Range: 0.0 to 1.0Timeout for each LLM API request.Default:
300.0 (5 minutes)Maximum retry attempts for failed API requests.Default:
3Initial backoff delay between retries (exponential backoff).Default:
1.0Number of conversation rounds retained in context before each API call. Older rounds are dropped proactively. The scratchpad survives truncation.Default:
20Optional system prompt override. Omit to use the built-in prompt.Default: (built-in prompt used)
Loop Configuration
The[loop] section controls the agent interaction loop.
Consecutive turns without
sim resume before the loop forces a time-advance.Default: 10Purpose: Prevents agents from getting stuck in analysis loops without advancing simulation time.Hard cap on total turns. Comment out or set to a large number for unlimited.Default: (unlimited)Example:
max_turns = 500Simulation Parameters
The[sim] section defines the simulation timeline.
Simulation start date in ISO 8601 format.Default:
"2025-01-01"Format: YYYY-MM-DDSimulation duration in years.Default:
3Tutorial/Easy/Medium/Hard/Nightmare: 1Name of the company in the simulation.Default:
"BenchCo"World Parameters
The[world] section contains scalar world-generation parameters.
Team & Resources
Number of employees in the company.Default:
10Starting cash in cents.Default:
15_000_000 ($150,000)Tutorial: 25_000_000 ($250,000)Hard: 10_000_000 ($100,000)Nightmare: 8_000_000 ($80,000)Starting prestige level for all domains.Default:
1.0Business hours per day that employees work.Default:
9.0Market
Total number of tasks generated in the market.Default:
200Default number of tasks shown when browsing the market.Default:
50Salary & Prestige Mechanics
Salary increase percentage per completed task for each assigned employee. Compounds over time, accelerating payroll pressure.Default:
0.01 (1% per task)Tutorial: 0.0 (no compounding)Nightmare: 0.02 (2% per task - aggressive)Maximum prestige level.Default:
10.0Minimum prestige level.Default:
1.0Prestige penalty multiplier when a task fails (misses deadline).Default:
1.4 (hardened)Tutorial: 0.3 (negligible)Nightmare: 2.0 (catastrophic)Interpretation: Higher values mean failing tasks costs MORE prestige. Canceling is worse than failing in default config.Prestige penalty multiplier when a task is canceled.Default:
2.0 (hardened)Tutorial: 0.5 (negligible)Nightmare: 2.5 (catastrophic)Interpretation: Accepting is a real commitment, not a free option.Extra reward fraction per prestige level above 1.Default:
0.55Formula: reward_multiplier = 1 + scale × (prestige - 1)Example: At scale=0.55, a prestige-8 task pays 1 + 0.55×7 = 4.85× more than prestige-1.Daily prestige decay per domain. Domains not exercised lose prestige over time.Default:
0.005 (-0.15/month, ~1 level lost every 6 months)Purpose: Prevents single-domain hyper-specialization.Required quantity scaling by prestige level.Default:
0.3Formula: qty_multiplier = 1 + scale × (prestige - 1)Example: At scale=0.3, prestige-5 tasks need 1 + 0.3×4 = 2.2× the work of prestige-1 tasks.Deadlines
Quantity units processed per business day when calculating deadlines.Default:
200.0Formula: deadline = max(deadline_min_biz_days, max_domain_qty / deadline_qty_per_day)Note: Domains are worked in parallel, so deadline scales with the heaviest domain, not the sum.Minimum deadline in business days.Default:
7Progress & Business Hours
Progress fractions that trigger checkpoint events.Default:
[0.25, 0.5, 0.75]Business day start hour (24-hour format).Default:
9Business day end hour (24-hour format).Default:
18Distribution Types
YC-Bench uses statistical distributions to generate random quantities like task prestige, reward amounts, and work volumes. Each[world.dist.<name>] section specifies one distribution.
Available Distribution Types
- triangular
- beta
- normal
- uniform
- constant
Triangular distribution with a mode (peak). Most values cluster around the mode.Parameters:
type = "triangular"low(float/int): Minimum valuehigh(float/int): Maximum valuemode(float/int): Most likely value (peak)
World Distributions
These distributions define random task properties generated during world creation.Required Prestige
Prestige level required to accept a task (cast to int after sampling).Default (hardened):Tutorial:
Reward Funds
Base reward paid on task completion, in cents. Scaled further by prestige.Default:Economics: Mode $14K means prestige-1 tasks burn cash, prestige-3 breaks even, prestige-4+ profits.
Domain Count
Number of domains each task requires work in (cast to int after sampling).Default (hardened):Tutorial:
Required Quantity
Work units required per domain per task (cast to int after sampling).Default (hardened):Nightmare:
Prestige Delta Reward
Prestige delta awarded per domain on task success.Default:
Skill Boost
Skill rate boost applied to each assigned employee on task success. Expressed as a fraction of current rate.Default:
Salary Tiers
Three salary tier sections define employee distributions. All threeshare values must sum to exactly 1.0.
Junior Tier
Configuration for junior employees.Default:
Mid Tier
Configuration for mid-level employees.Default:
Senior Tier
Configuration for senior employees.Default:
Next Steps
Presets
See how presets combine these parameters into coherent challenges
Tuning
Learn how to create custom presets by overriding parameters