# AGENTE DE IA (AI AGENT)
**Ref:** aia | **Num:** 1299 | **Version:** 1.0

## Que es
Etiqueta para catalogar agentes autonomos de IA: sistemas capaces de percibir su entorno, razonar y ejecutar acciones para alcanzar objetivos mediante ciclos de planificacion-ejecucion-evaluacion.

## Para que se usa
- Clasificar agentes de IA en el sistema HST
- Definir la estructura de datos que deben seguir los agentes
- Vincular items de tipo agente mediante set_hst

## Jerarquia
```
ain (inteligencia artificial) - modelos fundacionales
 └── aia (agente de ia) - agentes autonomos
```

---

## Estructura jsonb_standard

Los agentes deben seguir el schema **agent_v1.1** con 5 capas obligatorias:

### L1_core - Identidad (QUE ES)
| Campo | Tipo | Requerido | Valores |
|-------|------|-----------|---------|
| domain | string | Si | DEV_OPS, AI_OPS, DATA_OPS, SEC_OPS, BIZ_OPS, COMM_OPS, LEGAL_OPS, FINANCE_OPS, HR_OPS, GENERAL |
| category | string | Si | Subcategoria libre (ej: software_quality, communication) |
| entity_type | string | Si | autonomous_agent, foundational_model, fine_tuned_model, tool, pipeline |
| role_level | string | Si | specialist, analyst, manager, director, model_base |

### L2_operational - Operativa (COMO FUNCIONA)
| Campo | Tipo | Requerido | Descripcion |
|-------|------|-----------|-------------|
| workflow_mode | string | Si | single_shot, sequential_triad, iterative_loop, reactive, delegator |
| trigger | string | Si | api_request, schedule_cron, event_listener, manual_invoke, chain_dependency |
| inputs | object | Si | {required: [], optional: []} |
| outputs | object | Si | {format: string, structure: []} |
| error_handling | object | No | {max_retries, fallback_behavior, timeout_seconds} |
| dependencies | object | No | {models: [], tools: [], agents: []} |

### L3_context - Contexto (QUE SABE)
| Campo | Tipo | Requerido | Descripcion |
|-------|------|-----------|-------------|
| knowledge_sources | array | No | URLs o referencias a documentos |
| memory_persistence | boolean | No | Si mantiene estado entre ejecuciones |
| tone_profile | string | No | Perfil de comunicacion |
| language | string | No | Idioma principal (default: es) |
| constraints | array | No | Restricciones de comportamiento |

### L4_prompting - Instrucciones (QUE SE LE DICE)
| Campo | Tipo | Requerido | Descripcion |
|-------|------|-----------|-------------|
| system_prompt_template | string | Si | Prompt base del agente |
| execution_logic | object | Si | {type: single|chain, ...} |
| few_shot_examples | array | No | Ejemplos input/output |

**execution_logic.type = "single"** (para single_shot, reactive):
```json
{"type": "single", "single_instruction": "..."}
```

**execution_logic.type = "chain"** (para sequential_triad, iterative_loop, delegator):
```json
{
  "type": "chain",
  "steps": [
    {"id": "p1_plan", "role": "...", "instruction": "...", "output_requirement": "..."},
    {"id": "p2_build", "role": "...", "instruction": "..."},
    {"id": "p3_audit", "role": "...", "validation": [], "on_fail": "retry_with_feedback"}
  ]
}
```

### L5_metadata - Gobierno (TRAZABILIDAD)
| Campo | Tipo | Requerido | Descripcion |
|-------|------|-----------|-------------|
| version | string | Si | Semver (1.0.0) |
| updated | string | Si | Fecha ISO (2026-01-13) |
| author | string | No | Creador |
| license | string | No | internal_enterprise, open_source, commercial, restricted |
| cost_tier | string | No | low_compute, medium_compute, high_compute |
| tags | array | No | Etiquetas de busqueda |

---

## Como usar

### 1. Crear item tipo agente en tabla itm
```sql
INSERT INTO itm (ref, alias, name_es, set_hst, jsonb_data, ...)
VALUES (
  'aia',
  'mi_agente',
  'Mi Agente',
  '3381e85a2f70b05f30749774e729af0b95f166191f410d471638d850820dbf65',
  '{ ... jsonb segun schema ... }',
  ...
);
```

### 2. Vincular a la etiqueta
Usar el MRF de esta etiqueta en el campo `set_hst`:
```
3381e85a2f70b05f30749774e729af0b95f166191f410d471638d850820dbf65
```

---

## Referencias
- Schema URL: https://hst.standard/schemas/agent_v1_1.json
- Parent: ain (inteligencia artificial)
- MRF: 3381e85a2f70b05f30749774e729af0b95f166191f410d471638d850820dbf65

*Actualizado: 2026-01-13*