---
name: context_part
lang: py
domain: core
version: "1.0.0"
algebraic: product
definition: |
  @dataclass
  class ContextPart:
      uri: str = ""
      context_type: str = "memory"
      abstract: str = ""
      type: str = "context"
description: "Referencia a un contexto externo (memoria, recurso o skill) dentro de un mensaje multipart. Permite enriquecer mensajes con referencias tipadas a contextos recuperados por el agente."
tags: [message, part, context, memory, resource, skill, multipart, llm, rag]
uses_types: []
file_path: "python/types/core/context_part.py"
---

## Notas

`context_type` puede ser "memory" (recuperado de memoria a largo plazo), "resource" (documento o fichero externo), o "skill" (capacidad o herramienta disponible).

`uri` identifica el recurso de forma unica — puede ser un ID de memoria, una URL, o un nombre de skill.

`abstract` contiene un resumen legible del contexto, util para estimar tokens sin cargar el contenido completo.

El campo `type` actua como discriminador literal en el tipo suma `Part`. Siempre vale `"context"`.
