> ## 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.

# Repair Plan • AI Agent SDK

> RepairPlan: Result of a doctor repair pass, carrying the safety contract surface.

# RepairPlan

> Defined in the [**Doctor Protocol**](../modules/doctor_protocol) module.

<Badge color="blue">AI Agent</Badge>

Result of a doctor repair pass, carrying the safety contract surface.

In dry-run mode nothing is written; `config` holds the proposed result and
`diffs` describes each change so a caller can preview before applying.

## Properties

<ResponseField name="config" type="Dict[str, Any]">
  No description available.
</ResponseField>

<ResponseField name="diffs" type="List[ConfigDiff]">
  No description available.
</ResponseField>

<ResponseField name="backup_path" type="Optional[str]">
  No description available.
</ResponseField>

<ResponseField name="residual_findings" type="Optional">
  No description available.
</ResponseField>

<ResponseField name="refused" type="Optional">
  No description available.
</ResponseField>

<ResponseField name="applied" type="bool">
  No description available.
</ResponseField>

## Methods

<CardGroup cols={2}>
  <Card title="has_changes()" icon="function" href="../functions/RepairPlan-has_changes">
    True if any rule proposed a change.
  </Card>

  <Card title="render_diffs()" icon="function" href="../functions/RepairPlan-render_diffs">
    Render all per-rule unified diffs joined together.
  </Card>
</CardGroup>

## Source

<Card title="View on GitHub" icon="github" href="https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/runtime/doctor_protocol.py#L50">
  `praisonaiagents/runtime/doctor_protocol.py` at line 50
</Card>
