---
name: agent_action
lang: py
domain: core
version: "1.0.0"
algebraic: product
definition: |
  @dataclass
  class AgentAction:
      round_num: int
      timestamp: str
      platform: str
      agent_id: int
      agent_name: str
      action_type: str
      action_args: dict = field(default_factory=dict)
      result: str | None = None
      success: bool = True
description: "Registro de una accion individual de un agente en una simulacion multi-agente."
tags: [simulation, agent, action, multi-agent, event]
uses_types: []
file_path: "python/types/core/agent_action.py"
---

## Ejemplo

```python
action = AgentAction(
    round_num=1,
    timestamp="2024-01-01T12:00:00Z",
    platform="twitter",
    agent_id=42,
    agent_name="bot_alpha",
    action_type="CREATE_POST",
    action_args={"content": "Hello world"},
    success=True,
)
print(action.to_dict())
```

## Notas

Tipo producto — todos los campos obligatorios estan siempre presentes. `action_args` es un dict abierto para que el caller especifique los parametros sin restricciones de schema. `result` es opcional porque puede no haber sido resuelto aun en el momento de creacion.
