Ir al contenido

Referencia de AIP

Usa esta página para leer o revisar una Agent Intent Policy (AIP): de qué está hecha, qué dimensión de la Autonomy Zone cubre, en qué modo se ejecuta y qué veredicto devuelve para una acción cubierta.

Una política de intención expresa lo que quiere decir tu organización, en lugar de cada superficie que un agente podría usar. OpenLatch escribe cada política de intención como una AIP y la compila en reglas deterministas que el cliente aplica antes de que se ejecute la acción.

Una AIP es un conjunto de uno o más átomos de intención. Una cláusula de tu documento de origen se convierte en un átomo, y todos los átomos tienen los mismos campos fijos.

CampoContenido
whoLos agentes a los que se aplica el átomo. Cuando el origen no lo dice, el átomo indica que es una deducción
does whatLa acción, como un despliegue o la eliminación de un archivo
to whatEl objetivo de la acción, como un espacio de nombres de producción
only ifLas condiciones en las que la acción es aceptable
unlessLas excepciones al átomo
classSi el átomo se puede aplicar: enforceable, monitor-only o out-of-scope

A partir de estos campos, OpenLatch genera una frase y un conjunto de casos de prueba. Nunca editas las reglas compiladas.

Lo que vesPara qué sirve
La fraseLo que ratificas, con un solo Sí o No
El origenLa cláusula de tu documento de la que procede el átomo, citada para que compruebes que se leyó bien
Los casos de pruebaSituaciones concretas con el veredicto que obtendría cada una, mostradas en modo de solo lectura junto a la frase para que tu respuesta sea informada

Un No devuelve el átomo para corregirlo: dices lo que querías decir, los campos cambian y el átomo vuelve con una frase nueva y casos nuevos para una nueva respuesta. Cambiar un átomo siempre anula la ratificación que se dio a su versión anterior.

La class de un átomo es una propiedad del átomo, no un ajuste. Un átomo monitor-only describe algo que se puede observar pero no detener antes de que ocurra, así que permanece en Monitor aunque su política esté en Enforce.

Cada átomo pertenece a una de las cinco dimensiones de la Autonomy Zone. Una política cubre la unión de las dimensiones de sus átomos.

DimensiónLa pregunta que respondeEjemplos de políticas de intención
Calidad¿Está el trabajo a la altura?El código se prueba antes de publicarse; se sigue el proceso obligatorio
Economía¿Está justificado el coste?Sin bucles descontrolados ni reintentos inútiles; el modelo se ajusta a la tarea
Seguridad¿Puede tocar esto?Ninguna credencial sale del perímetro de la empresa; solo herramientas y servidores aprobados
Protección¿Es aceptable la consecuencia?Sin acceso a producción sin aprobación; sin operaciones irreversibles o destructivas
Cumplimiento¿Es legal y conforme a las normas?Políticas y normas internas; obligaciones contractuales

La misión no es una dimensión: cada agente aporta su propia misión, y la zona aporta las reglas que debe seguir.

Una política se ejecuta en uno de tres modos. El modo pertenece a la política, nunca a un átomo, y se define en cada Autonomy Zone que contiene la política.

ModoQué ocurre cuando coincide
DisabledNada. La política y su historial se conservan, pero no se evalúa
MonitorLa coincidencia se registra como anomalía y se marca; la acción continúa
EnforceEl veredicto se aplica antes de que se ejecute la acción, allí donde un adaptador cubre esa acción, y el registro indica si realmente se aplicó

Cuando las zonas de un agente contienen la misma política más de una vez, se ejecuta una sola vez, en el modo más estricto: Enforce por delante de Monitor, y Monitor por delante de Disabled.

Las políticas se ganan el modo Enforce con evidencias: ejecuta una política en Monitor, revisa sus anomalías y pásala a Enforce cuando sea precisa. OpenLatch nunca amplía por sí mismo la autoridad de un agente.

Cada acción cubierta que coincide con una política en Enforce recibe uno de cuatro veredictos antes de ejecutarse. Un veredicto es determinista porque lo ha producido una política explícita.

VeredictoQué le ocurre a la acción
AllowLa acción continúa sin cambios. En Monitor, puede permitirse y marcarse
AskLa acción se permite y se marca para revisión de forma predeterminada
BlockLa acción se impide antes de ejecutarse. El agente recibe el motivo y puede intentar otra cosa; la sesión continúa
OptimizeLa acción toma otro camino, mediante una de las palancas siguientes

Ask permite la acción y la marca para una revisión asíncrona de forma predeterminada. La decisión de la revisión, con el alcance que elige el revisor, llega al cliente en el siguiente paquete de políticas, así que la siguiente acción similar se decide en la máquina, sin ninguna persona.

Ask solo retiene una acción y espera una aprobación con un opt-in por átomo para una acción irreversible, como eliminar una base de datos de producción.

Codex CLI no tiene una solicitud de confirmación nativa. En Codex CLI, Ask le llega al agente como un mensaje con el motivo de la regla, y la llamada continúa.

Ask evita que se repita, no la primera vez. Escribe como Block todo lo que nunca deba ocurrir sin revisión, o marca la acción como irreversible en su átomo.

Optimize cambia el camino de una acción en lugar de permitirla o bloquearla. El modo decide lo que hace una palanca: en Enforce una palanca actúa, y en Monitor una palanca solo mide lo que habría hecho.

PalancaQué cambiaEstado
loop_stopDetiene a un agente que repite la misma llamada y le dice por quéActúa en Enforce
steerRechaza la acción y le dice al agente qué hacer en su lugar, como subir una rama en lugar de la rama principalActúa en Enforce
narrow_outputDevuelve al agente un extracto filtrado de una salida de comando larga, y guarda la salida completa en el discoActúa en Enforce, en Claude Code
effort_clampReduce el esfuerzo de razonamiento de una solicitud al modeloMide en Monitor y en Enforce; actúa en Enforce solo donde la organización cliente lo activa
context_editAjusta la configuración de limpieza del contexto de una solicitud al modeloMide en Monitor y en Enforce; actúa en Enforce solo donde la organización cliente lo activa
prefix_guardMantiene estable el prefijo de prompt en caché de una solicitud al modeloMide en Monitor y en Enforce; actúa en Enforce solo donde la organización cliente lo activa
substituteSustituye un comando por un equivalente que aprobó tu organizaciónNo está publicado: no tiene actuador y solo mide en Monitor

En Enforce, loop_stop, steer y narrow_output actúan (narrow_output en Claude Code). effort_clamp, context_edit y prefix_guard solo miden, incluso en Enforce, salvo que la organización cliente lo active. substitute no está publicado, así que solo mide en Monitor. En Monitor, todas las palancas solo miden.

El registro de evidencias indica cuál se aplica: aplicado en Enforce, medido en Monitor.

Cada acción cubierta llega al punto de decisión de las políticas, y su veredicto se aplica. Una acción fuera de una superficie cubierta, como un script que el agente escribió antes y ejecuta después, no la decide el cliente. El nivel de control de cada agente indica qué cobertura se le aplica.