{"schemaVersion":1,"id":"https://lucioduran.com/es/topics/ai-agents","url":"https://lucioduran.com/es/topics/ai-agents","title":"Arquitectura de agentes de inteligencia artificial","description":"Agentes de IA con herramientas, autorización y recuperación de fallos. Proyectos de Lucio Durán con código, pruebas y límites explícitos.","language":"es","datePublished":"2026-11-10","dateModified":"2026-11-10","contentFormat":"text/markdown","content":"# Arquitectura de agentes de inteligencia artificial\n\nUn agente que utiliza herramientas necesita un sistema de ejecución alrededor del modelo. Esta selección reúne mi trabajo público sobre permisos, recuperación, protocolos y observabilidad: componentes que permiten inspeccionar qué ocurrió cuando una tarea cambia estado o falla.\n\nPor [Lucio Durán](<https://lucioduran.com/es>) · Uruguay\n\n## Qué decisión querés resolver\n\n### Antes de habilitar una escritura\n\nDefinir qué identidad autoriza la acción, qué recurso puede modificar y qué presupuesto consume. Agent Tool Capabilities implementa permisos y revocación; Agent Policy State Machine explora las transiciones de autorización.\n\n### Cuando se pierde una respuesta\n\nConservar la identidad de la operación y comprobar sus efectos antes de reintentar. Agent Replay Runtime permite estudiar recuperación tras cortes reales del proceso y casos que requieren detenerse.\n\n### Al integrar herramientas\n\nSeparar el contrato del protocolo de los permisos de la aplicación. MCP Contract Harness comprueba el intercambio de mensajes; los proyectos de sandbox y trazas examinan aislamiento y evidencia de ejecución.\n\n## Proyectos y evidencia\n\nCada ficha permite consultar el código, el entorno, los resultados publicados y sus límites. Los experimentos describen esas configuraciones; no acreditan resultados en sistemas de clientes.\n\n- ### [Agent Replay Runtime](<https://lucioduran.com/es/projects/agent-replay-runtime>)\n\n  Ejecución durable de herramientas con registro de eventos, claves de idempotencia y recuperación tras interrupciones reales del proceso. Incluye trazas de efectos y casos sin reintento automático.\n\n  Python · Licencia: MIT\n\n  [Leer la ficha](<https://lucioduran.com/es/projects/agent-replay-runtime>) · [Repositorio](<https://github.com/lucioduran/agent-replay-runtime>)\n- ### [Agent Tool Capabilities](<https://lucioduran.com/es/projects/agent-tool-capabilities>)\n\n  Autorización de herramientas por argumento, recurso y vencimiento, con presupuestos atómicos de llamadas y bytes y registros verificables de rechazo y revocación.\n\n  Python · Licencia: MIT\n\n  [Leer la ficha](<https://lucioduran.com/es/projects/agent-tool-capabilities>) · [Repositorio](<https://github.com/lucioduran/agent-tool-capabilities>) · [Release v1.0.0](<https://github.com/lucioduran/agent-tool-capabilities/releases/tag/v1.0.0>)\n- ### [Agent Policy State Machine](<https://lucioduran.com/es/projects/agent-policy-state-machine>)\n\n  Máquina de estados de autorización ejecutable, con comprobaciones de seguridad en un modelo TLA+ finito, compensación y reproducción del grafo real de TLC.\n\n  Python · Licencia: MIT\n\n  [Leer la ficha](<https://lucioduran.com/es/projects/agent-policy-state-machine>) · [Repositorio](<https://github.com/lucioduran/agent-policy-state-machine>) · [Release v0.1.0](<https://github.com/lucioduran/agent-policy-state-machine/releases/tag/v0.1.0>)\n- ### [Agent Sandbox Boundaries](<https://lucioduran.com/es/projects/agent-sandbox-boundaries>)\n\n  Ejecutor efímero con Wasmtime que permite observar los límites de CPU, tiempo transcurrido, memoria invitada y capacidades de acceso al sistema de archivos y la red.\n\n  Python · Licencia: MIT\n\n  [Leer la ficha](<https://lucioduran.com/es/projects/agent-sandbox-boundaries>) · [Repositorio](<https://github.com/lucioduran/agent-sandbox-boundaries>) · [Release v0.1.0](<https://github.com/lucioduran/agent-sandbox-boundaries/releases/tag/v0.1.0>)\n- ### [MCP Contract Harness](<https://lucioduran.com/es/projects/mcp-contract-harness>)\n\n  Servidor MCP de solo lectura y clientes independientes para comprobar negociación, paginación, errores y cancelación por stdio, con mensajes reales e informes reproducibles.\n\n  Python / JavaScript · Licencia: MIT\n\n  [Leer la ficha](<https://lucioduran.com/es/projects/mcp-contract-harness>) · [Repositorio](<https://github.com/lucioduran/mcp-contract-harness>)\n- ### [Agent Trace Observability](<https://lucioduran.com/es/projects/agent-trace-observability>)\n\n  Instrumentación con OpenTelemetry para un flujo local propio de agentes, con exportaciones limitadas a campos permitidos y pruebas de exclusión de contenido sensible.\n\n  Python · Licencia: MIT\n\n  [Leer la ficha](<https://lucioduran.com/es/projects/agent-trace-observability>) · [Repositorio](<https://github.com/lucioduran/agent-trace-observability>) · [Release v0.1.0](<https://github.com/lucioduran/agent-trace-observability/releases/tag/v0.1.0>)\n\n## Lecturas de arquitectura y método\n\n- ### [Agentes que escriben en producción: autorización, idempotencia y reconciliación](<https://lucioduran.com/es/blog/agent-tool-execution-authorization-idempotency-reconciliation>)\n\n  Un diseño de ejecución para herramientas con efectos reales: identidad fuera del prompt, acciones inmutables, control de concurrencia y recuperación cuando un timeout deja el resultado en duda.\n- ### [Agentes recursivos: contexto externo, presupuestos y evidencia que sobrevive a la delegación](<https://lucioduran.com/es/blog/recursive-agent-harnesses-context-budgets-provenance>)\n\n  De Recursive Language Models a Recursive Agent Harnesses: cómo diseñar delegación sobre grandes corpus con contratos de evidencia, límites globales y una evaluación que justifique la complejidad.","headings":[{"level":1,"text":"Arquitectura de agentes de inteligencia artificial","url":"https://lucioduran.com/es/topics/ai-agents#title"},{"level":2,"text":"Qué decisión querés resolver","url":"https://lucioduran.com/es/topics/ai-agents#decisions"},{"level":3,"text":"Antes de habilitar una escritura","url":"https://lucioduran.com/es/topics/ai-agents#decision-1"},{"level":3,"text":"Cuando se pierde una respuesta","url":"https://lucioduran.com/es/topics/ai-agents#decision-2"},{"level":3,"text":"Al integrar herramientas","url":"https://lucioduran.com/es/topics/ai-agents#decision-3"},{"level":2,"text":"Proyectos y evidencia","url":"https://lucioduran.com/es/topics/ai-agents#projects"},{"level":3,"text":"Agent Replay Runtime","url":"https://lucioduran.com/es/topics/ai-agents#project-agent-replay-runtime"},{"level":3,"text":"Agent Tool Capabilities","url":"https://lucioduran.com/es/topics/ai-agents#project-agent-tool-capabilities"},{"level":3,"text":"Agent Policy State Machine","url":"https://lucioduran.com/es/topics/ai-agents#project-agent-policy-state-machine"},{"level":3,"text":"Agent Sandbox Boundaries","url":"https://lucioduran.com/es/topics/ai-agents#project-agent-sandbox-boundaries"},{"level":3,"text":"MCP Contract Harness","url":"https://lucioduran.com/es/topics/ai-agents#project-mcp-contract-harness"},{"level":3,"text":"Agent Trace Observability","url":"https://lucioduran.com/es/topics/ai-agents#project-agent-trace-observability"},{"level":2,"text":"Lecturas de arquitectura y método","url":"https://lucioduran.com/es/topics/ai-agents#articles"},{"level":3,"text":"Agentes que escriben en producción: autorización, idempotencia y reconciliación","url":"https://lucioduran.com/es/topics/ai-agents#article-agent-tool-execution-authorization-idempotency-reconciliation"},{"level":3,"text":"Agentes recursivos: contexto externo, presupuestos y evidencia que sobrevive a la delegación","url":"https://lucioduran.com/es/topics/ai-agents#article-recursive-agent-harnesses-context-budgets-provenance"}],"sections":[{"heading":"Arquitectura de agentes de inteligencia artificial","level":1,"url":"https://lucioduran.com/es/topics/ai-agents","content":""},{"heading":"Arquitectura de agentes de inteligencia artificial","level":1,"url":"https://lucioduran.com/es/topics/ai-agents#title","content":"Un agente que utiliza herramientas necesita un sistema de ejecución alrededor del modelo. Esta selección reúne mi trabajo público sobre permisos, recuperación, protocolos y observabilidad: componentes que permiten inspeccionar qué ocurrió cuando una tarea cambia estado o falla.\n\nPor [Lucio Durán](<https://lucioduran.com/es>) · Uruguay"},{"heading":"Qué decisión querés resolver","level":2,"url":"https://lucioduran.com/es/topics/ai-agents#decisions","content":""},{"heading":"Antes de habilitar una escritura","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#decision-1","content":"Definir qué identidad autoriza la acción, qué recurso puede modificar y qué presupuesto consume. Agent Tool Capabilities implementa permisos y revocación; Agent Policy State Machine explora las transiciones de autorización."},{"heading":"Cuando se pierde una respuesta","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#decision-2","content":"Conservar la identidad de la operación y comprobar sus efectos antes de reintentar. Agent Replay Runtime permite estudiar recuperación tras cortes reales del proceso y casos que requieren detenerse."},{"heading":"Al integrar herramientas","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#decision-3","content":"Separar el contrato del protocolo de los permisos de la aplicación. MCP Contract Harness comprueba el intercambio de mensajes; los proyectos de sandbox y trazas examinan aislamiento y evidencia de ejecución."},{"heading":"Proyectos y evidencia","level":2,"url":"https://lucioduran.com/es/topics/ai-agents#projects","content":"Cada ficha permite consultar el código, el entorno, los resultados publicados y sus límites. Los experimentos describen esas configuraciones; no acreditan resultados en sistemas de clientes."},{"heading":"Agent Replay Runtime","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#project-agent-replay-runtime","content":"Ejecución durable de herramientas con registro de eventos, claves de idempotencia y recuperación tras interrupciones reales del proceso. Incluye trazas de efectos y casos sin reintento automático.\n\nPython · Licencia: MIT\n\n[Leer la ficha](<https://lucioduran.com/es/projects/agent-replay-runtime>) · [Repositorio](<https://github.com/lucioduran/agent-replay-runtime>)"},{"heading":"Agent Tool Capabilities","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#project-agent-tool-capabilities","content":"Autorización de herramientas por argumento, recurso y vencimiento, con presupuestos atómicos de llamadas y bytes y registros verificables de rechazo y revocación.\n\nPython · Licencia: MIT\n\n[Leer la ficha](<https://lucioduran.com/es/projects/agent-tool-capabilities>) · [Repositorio](<https://github.com/lucioduran/agent-tool-capabilities>) · [Release v1.0.0](<https://github.com/lucioduran/agent-tool-capabilities/releases/tag/v1.0.0>)"},{"heading":"Agent Policy State Machine","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#project-agent-policy-state-machine","content":"Máquina de estados de autorización ejecutable, con comprobaciones de seguridad en un modelo TLA+ finito, compensación y reproducción del grafo real de TLC.\n\nPython · Licencia: MIT\n\n[Leer la ficha](<https://lucioduran.com/es/projects/agent-policy-state-machine>) · [Repositorio](<https://github.com/lucioduran/agent-policy-state-machine>) · [Release v0.1.0](<https://github.com/lucioduran/agent-policy-state-machine/releases/tag/v0.1.0>)"},{"heading":"Agent Sandbox Boundaries","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#project-agent-sandbox-boundaries","content":"Ejecutor efímero con Wasmtime que permite observar los límites de CPU, tiempo transcurrido, memoria invitada y capacidades de acceso al sistema de archivos y la red.\n\nPython · Licencia: MIT\n\n[Leer la ficha](<https://lucioduran.com/es/projects/agent-sandbox-boundaries>) · [Repositorio](<https://github.com/lucioduran/agent-sandbox-boundaries>) · [Release v0.1.0](<https://github.com/lucioduran/agent-sandbox-boundaries/releases/tag/v0.1.0>)"},{"heading":"MCP Contract Harness","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#project-mcp-contract-harness","content":"Servidor MCP de solo lectura y clientes independientes para comprobar negociación, paginación, errores y cancelación por stdio, con mensajes reales e informes reproducibles.\n\nPython / JavaScript · Licencia: MIT\n\n[Leer la ficha](<https://lucioduran.com/es/projects/mcp-contract-harness>) · [Repositorio](<https://github.com/lucioduran/mcp-contract-harness>)"},{"heading":"Agent Trace Observability","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#project-agent-trace-observability","content":"Instrumentación con OpenTelemetry para un flujo local propio de agentes, con exportaciones limitadas a campos permitidos y pruebas de exclusión de contenido sensible.\n\nPython · Licencia: MIT\n\n[Leer la ficha](<https://lucioduran.com/es/projects/agent-trace-observability>) · [Repositorio](<https://github.com/lucioduran/agent-trace-observability>) · [Release v0.1.0](<https://github.com/lucioduran/agent-trace-observability/releases/tag/v0.1.0>)"},{"heading":"Lecturas de arquitectura y método","level":2,"url":"https://lucioduran.com/es/topics/ai-agents#articles","content":""},{"heading":"Agentes que escriben en producción: autorización, idempotencia y reconciliación","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#article-agent-tool-execution-authorization-idempotency-reconciliation","content":"Un diseño de ejecución para herramientas con efectos reales: identidad fuera del prompt, acciones inmutables, control de concurrencia y recuperación cuando un timeout deja el resultado en duda."},{"heading":"Agentes recursivos: contexto externo, presupuestos y evidencia que sobrevive a la delegación","level":3,"url":"https://lucioduran.com/es/topics/ai-agents#article-recursive-agent-harnesses-context-budgets-provenance","content":"De Recursive Language Models a Recursive Agent Harnesses: cómo diseñar delegación sobre grandes corpus con contratos de evidencia, límites globales y una evaluación que justifique la complejidad."}],"links":[{"text":"Lucio Durán","url":"https://lucioduran.com/es"},{"text":"Agent Replay Runtime","url":"https://lucioduran.com/es/projects/agent-replay-runtime"},{"text":"Leer la ficha","url":"https://lucioduran.com/es/projects/agent-replay-runtime"},{"text":"Repositorio","url":"https://github.com/lucioduran/agent-replay-runtime"},{"text":"Agent Tool Capabilities","url":"https://lucioduran.com/es/projects/agent-tool-capabilities"},{"text":"Leer la ficha","url":"https://lucioduran.com/es/projects/agent-tool-capabilities"},{"text":"Repositorio","url":"https://github.com/lucioduran/agent-tool-capabilities"},{"text":"Release v1.0.0","url":"https://github.com/lucioduran/agent-tool-capabilities/releases/tag/v1.0.0"},{"text":"Agent Policy State Machine","url":"https://lucioduran.com/es/projects/agent-policy-state-machine"},{"text":"Leer la ficha","url":"https://lucioduran.com/es/projects/agent-policy-state-machine"},{"text":"Repositorio","url":"https://github.com/lucioduran/agent-policy-state-machine"},{"text":"Release v0.1.0","url":"https://github.com/lucioduran/agent-policy-state-machine/releases/tag/v0.1.0"},{"text":"Agent Sandbox Boundaries","url":"https://lucioduran.com/es/projects/agent-sandbox-boundaries"},{"text":"Leer la ficha","url":"https://lucioduran.com/es/projects/agent-sandbox-boundaries"},{"text":"Repositorio","url":"https://github.com/lucioduran/agent-sandbox-boundaries"},{"text":"Release v0.1.0","url":"https://github.com/lucioduran/agent-sandbox-boundaries/releases/tag/v0.1.0"},{"text":"MCP Contract Harness","url":"https://lucioduran.com/es/projects/mcp-contract-harness"},{"text":"Leer la ficha","url":"https://lucioduran.com/es/projects/mcp-contract-harness"},{"text":"Repositorio","url":"https://github.com/lucioduran/mcp-contract-harness"},{"text":"Agent Trace Observability","url":"https://lucioduran.com/es/projects/agent-trace-observability"},{"text":"Leer la ficha","url":"https://lucioduran.com/es/projects/agent-trace-observability"},{"text":"Repositorio","url":"https://github.com/lucioduran/agent-trace-observability"},{"text":"Release v0.1.0","url":"https://github.com/lucioduran/agent-trace-observability/releases/tag/v0.1.0"},{"text":"Agentes que escriben en producción: autorización, idempotencia y reconciliación","url":"https://lucioduran.com/es/blog/agent-tool-execution-authorization-idempotency-reconciliation"},{"text":"Agentes recursivos: contexto externo, presupuestos y evidencia que sobrevive a la delegación","url":"https://lucioduran.com/es/blog/recursive-agent-harnesses-context-budgets-provenance"}],"structuredData":[{"@context":"https://schema.org","@graph":[{"@type":"Person","@id":"https://lucioduran.com/#person","name":"Lucio Durán","url":"https://lucioduran.com/"},{"@type":"WebSite","@id":"https://lucioduran.com/#website","url":"https://lucioduran.com/","name":"Lucio Durán","inLanguage":["en","es"],"publisher":{"@id":"https://lucioduran.com/#person"}},{"@type":"CollectionPage","@id":"https://lucioduran.com/es/topics/ai-agents#page","url":"https://lucioduran.com/es/topics/ai-agents","name":"Arquitectura de agentes de inteligencia artificial","description":"Agentes de IA con herramientas, autorización y recuperación de fallos. Proyectos de Lucio Durán con código, pruebas y límites explícitos.","inLanguage":"es","author":{"@id":"https://lucioduran.com/#person"},"publisher":{"@id":"https://lucioduran.com/#person"},"isPartOf":{"@id":"https://lucioduran.com/#website"},"isAccessibleForFree":true,"datePublished":"2026-11-10","dateModified":"2026-11-10","mainEntity":{"@type":"ItemList","numberOfItems":6,"itemListElement":[{"@type":"ListItem","position":1,"name":"Agent Replay Runtime","url":"https://lucioduran.com/es/projects/agent-replay-runtime"},{"@type":"ListItem","position":2,"name":"Agent Tool Capabilities","url":"https://lucioduran.com/es/projects/agent-tool-capabilities"},{"@type":"ListItem","position":3,"name":"Agent Policy State Machine","url":"https://lucioduran.com/es/projects/agent-policy-state-machine"},{"@type":"ListItem","position":4,"name":"Agent Sandbox Boundaries","url":"https://lucioduran.com/es/projects/agent-sandbox-boundaries"},{"@type":"ListItem","position":5,"name":"MCP Contract Harness","url":"https://lucioduran.com/es/projects/mcp-contract-harness"},{"@type":"ListItem","position":6,"name":"Agent Trace Observability","url":"https://lucioduran.com/es/projects/agent-trace-observability"}]}}]}],"contentHash":"4f5f1f2fcaa718bdd10b8d16f8374cf5f45a3f1e8c474357be9abe87a84b53b7","provenance":{"method":"Deterministic serialization of the server-rendered main element","source":"https://lucioduran.com/es/topics/ai-agents","hashAlgorithm":"sha256","hashScope":"JSON document fields before contentHash and provenance","sourceHTMLBytes":43355,"contentBytes":5345}}
