Skip to main content
The Agent() constructor still accepts seven older parameters; each has a Config replacement that groups related settings.

Quick Start

1

Find the old params

Scan your code for any of the seven deprecated names:
2

Look up the replacement

Match each name to its config object in the migration table below.
3

Swap the kwarg for the config object

The behaviour is identical — the config form just groups related settings.

Migration Table

Each deprecated param maps to one config-object replacement.

allow_delegation → handoffs

allow_code_execution + code_execution_mode → execution

auto_save → memory

rate_limiter → execution

verification_hooks → autonomy

cli_backend → runtime


What Else Changed

Two related rules make constructor mistakes fail fast instead of silently. Keyword-only after toolsets=. handoffs= and every Config param must be passed by name. A stray positional past toolsets no longer binds to handoffs= by accident.
Unknown kwargs now raise TypeError. Typos fail loudly.
The visible signature shrank from 48 to 41 params. No public param was removed — only their documentation surface.

Should I Migrate?

Use this flow to decide when to switch.

Common Patterns

The three migrations you will hit most often. Coder agentallow_code_execution + code_execution_modeExecutionConfig:
Long-running agentauto_save + rate_limiterMemoryConfig + ExecutionConfig:
Autonomous agentverification_hooksAutonomyConfig:

Best Practices

The deprecated names will be removed in a future release. Write new agents with the config objects from the start.
Migrate the warnings that appear in your test suite as you touch each agent, not all at once.
Never pass Agent(..., value) positionally past toolsets=. Keyword form prevents accidental misbinding.
fallback_models= is an internal forwarding path for clone_for_channel(), not a public param. Use llm=LLMConfig(fallback_models=[...]) instead.

Handoffs

Replaces allow_delegation=True.

Execution

Replaces allow_code_execution, code_execution_mode, and rate_limiter.

Autonomy

Replaces verification_hooks=[...].

Memory

Replaces auto_save="name".

Runtime

Replaces cli_backend=.

Rate Limiter

Replaces rate_limiter= on Agent().