> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Doom Loop Tracker • AI Agent SDK

> DoomLoopTracker: Tracks actions to detect doom loops with graduated recovery.

# DoomLoopTracker

> Defined in the [**autonomy**](https://praison.ai/docs/sdk/reference/praisonaiagents/modules/autonomy.md) module.

AI Agent

Tracks actions to detect doom loops with graduated recovery.

Delegates to DoomLoopDetector (DRY, G-DUP-2 fix) for detection
while providing graduated recovery actions on top.

Recovery progression:
1st doom loop → retry\_different (try new approach)
2nd doom loop → escalate\_model (use stronger model)
3rd doom loop → request\_help (ask human)
4th+ doom loop → abort (stop execution)

## Constructor

**threshold** `int` (default: 3)

No description available.

## Methods

> [card] [record()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/DoomLoopTracker-record.md)
>
> Record an action for loop detection.

> [card] [is\_doom\_loop()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/DoomLoopTracker-is_doom_loop.md)
>
> Check if we're in a doom loop.

> [card] [get\_recovery\_action()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/DoomLoopTracker-get_recovery_action.md)
>
> Get recommended recovery action when doom loop detected.

> [card] [clear\_actions()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/DoomLoopTracker-clear_actions.md)
>
> Clear action history but keep recovery attempt count.

> [card] [mark\_progress()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/DoomLoopTracker-mark_progress.md)
>
> Mark meaningful progress to reset no-progress detection.

> [card] [record\_response()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/DoomLoopTracker-record_response.md)
>
> Record model response text for content streaming loop detection.

> [card] [reset()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/DoomLoopTracker-reset.md)
>
> Reset the tracker completely.

## Source

> [card] [View on GitHub](https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/agent/autonomy.py#L428)
>
> `praisonaiagents/agent/autonomy.py` at line 428


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.