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

# Build Context For Task • AI Agent SDK

> build_context_for_task: Merges relevant short-term, long-term, entity, user memories

# build\_context\_for\_task

<div className="flex items-center gap-2">
  <Badge color="purple">Method</Badge>
</div>

> This is a method of the [**Memory**](../classes/Memory) class in the [**memory**](../modules/memory) module.

Merges relevant short-term, long-term, entity, user memories
into a single text block with deduplication and clean formatting.

## Signature

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
def build_context_for_task(task_descr: str, user_id: Optional[str], additional: str, max_items: int, include_in_output: Optional[bool]) -> str
```

## Parameters

<ParamField query="task_descr" type="str" required={true}>
  No description available.
</ParamField>

<ParamField query="user_id" type="Optional[str]" required={false}>
  No description available.
</ParamField>

<ParamField query="additional" type="str" required={false} default="''">
  No description available.
</ParamField>

<ParamField query="max_items" type="int" required={false} default="3">
  No description available.
</ParamField>

<ParamField query="include_in_output" type="Optional[bool]" required={false}>
  If None, memory content is included (the primary purpose of this method is to feed retrieved memory into the prompt). If True, memory content is always included. If False, memory content is never included (only logged for debugging).
</ParamField>

### Returns

<ResponseField name="Returns" type="str">
  The result of the operation.
</ResponseField>

## Uses

* `c.isspace`
* `content.rfind`
* `format_content`
* `normalize_content`
* `seen_contents.add`
* `logger.debug`
* `search_short_term`
* `search_long_term`
* `search_entity`
* `search_user_memory`

## Used By

* [`Memory.build_cache_optimized_context`](../functions/Memory-build_cache_optimized_context)
* [`Memory.get_context`](../functions/Memory-get_context)

## Source

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

***

## Related Documentation

<CardGroup cols={2}>
  <Card title="Tasks Concept" icon="list-check" href="/docs/docs/concepts/tasks" />

  <Card title="Task Configuration" icon="gear" href="/docs/docs/configuration/task-config" />

  <Card title="Task Validation" icon="check-double" href="/docs/docs/features/task-validation-feedback" />

  <Card title="Context Concept" icon="layer-group" href="/docs/docs/concepts/context" />

  <Card title="Context Management" icon="sliders" href="/docs/docs/features/context-management" />
</CardGroup>
