Run Autonomous • AI Agent SDK
run_autonomous: Run an autonomous task execution loop.
run_autonomous
Method
</div>
Run an autonomous task execution loop.
This method executes a task autonomously, using the agent’s tools and capabilities to complete the task. It handles:
- Progressive escalation based on task complexity
- Doom loop detection and recovery
- Iteration limits and timeouts
- Completion detection (keyword-based or promise-based)
- Optional context clearing between iterations
Signature
def run_autonomous(prompt: str, max_iterations: Optional[int], timeout_seconds: Optional[float], completion_promise: Optional[str], clear_context: bool) -> AnyParameters
ParamField
strThe task to execute
ParamField
Optional[int]Override max iterations (default from config)
ParamField
Optional[float]Timeout in seconds (default: no timeout)
ParamField
Optional[str]Optional string that signals completion when wrapped in <promise>TEXT</promise> tags in the response
ParamField
boolWhether to clear chat history between iterations (forces agent to rely on external state like files)
Returns
ResponseField
AnyAutonomyResult with success status, output, and metadata
Exceptions
ValueError
If autonomy is not enabled
Usage
agent = Agent(instructions="...", autonomy=True)
result = agent.run_autonomous(
"Refactor the auth module",
completion_promise="DONE",
clear_context=True
)
if result.success:
print(result.output)Uses
ValueErrortracklogging.debugtime_module.timeisoformatdatetime.nowget_recommended_stageexecute_sync_callbackis_setAutonomyResult
Source
View on GitHubpraisonaiagents/agent/agent.py at line 4706