Rokad
Toda la documentación
Documentación de dvar

Primeros pasos

Instale Dvar y coloque controles de políticas deterministas delante de las acciones de herramientas de agentes de IA.

Ver repositorio
Documentación de dvar
Página 1 de 1

Dvar es un firewall de políticas para agentes de IA. Evalúa las acciones de herramientas antes de que se produzcan efectos secundarios y devuelve una decisión determinista: allow, deny o require_approval.

Dvar complementa la autorización de aplicaciones, IAM, el aislamiento, la gestión de secretos, los permisos de bases de datos y las políticas de red. No sustituye estos controles y solo protege las acciones que atraviesan su límite de interceptación.

Estado

La versión actual es previa a la estabilidad. Revise las notas de la versión antes de actualizar y pruebe el comportamiento de las políticas antes de activar la aplicación en producción.

Instalación

bash
npm install @rokadhq/dvar

Inicializar una política

bash
npx dvar init
npx dvar validate
npx dvar test-policy

La política generada comienza en modo monitor. Este modo permite ejecutar las acciones mientras registra la decisión que Dvar habría aplicado.

Proteger una herramienta

ts
import { createDvar } from "@rokadhq/dvar";

const dvar = await createDvar({ policyPath: "dvar.yaml" });

const readCustomer = dvar.protectTool({
  name: "crm.read_customer",
  capabilities: ["data.read"],
  inputSchema: {
    type: "object",
    additionalProperties: false,
    required: ["customerId"],
    properties: {
      customerId: { type: "string", minLength: 1 },
    },
  },
  execute: async ({ customerId }: { customerId: string }) => ({
    customerId,
    status: "active",
  }),
});

Llame a la herramienta protegida con el contexto de ejecución:

ts
const customer = await readCustomer(
  { customerId: "customer-1" },
  {
    principal: { id: "user-1", type: "user" },
    agent: { id: "support-agent" },
    tenant: { id: "tenant-a" },
    environment: "production",
  },
);

Modos de operación

ModoComportamiento
monitorEjecuta la acción y registra would_allow, would_deny o would_require_approval.
enforceBloquea las acciones denegadas o sujetas a aprobación antes de ejecutar la herramienta.
strictAplica el comportamiento de control más estricto configurado.
offDesactiva la evaluación de Dvar para el límite configurado.

Capacidades actuales

  • Políticas declarativas en YAML y JSON
  • Precedencia determinista
  • Envoltorios genéricos para herramientas JavaScript y TypeScript
  • Validación de argumentos con JSON Schema
  • Códigos de motivo estables
  • Eventos de auditoría conscientes de la privacidad
  • Pruebas de políticas integradas
  • Reproducción JSONL que nunca invoca herramientas
  • Comandos CLI para inicialización, validación, diagnóstico, pruebas, reproducción e inspección de versiones

Despliegue en producción

  1. Defina las herramientas y capacidades que atraviesan el límite de Dvar.
  2. Comience en modo monitor.
  3. Revise los eventos de auditoría y los resultados de las pruebas de políticas.
  4. Corrija las decisiones inesperadas antes de aplicar controles.
  5. Active gradualmente la aplicación para acciones de alto riesgo.
  6. Mantenga la autorización de la aplicación, IAM, el aislamiento, los secretos y las políticas de infraestructura.