
Rastreo a prueba de manipulaciones, controles de políticas y verificaciones cruzadas para agentes de IA: observa qué hizo el agente y por qué.
Tracekit comprueba cada llamada a herramientas que hace tu agente antes de que se ejecute, firma cada llamada y decisión en una cadena de hashes,
y te entrega un único archivo .tkb por ejecución que cualquiera puede verificar sin conexión.
8 de 8ataques de manipulación detectados480 ensayos, con un testigo (E1) |
570 de 570llamadas dañinas detenidas11 clases, 1 falsa alarma en 738 (E17) |
< 1 msañadido por llamada a herramienta0,91 ms en p99, ida y vuelta del firmante (E9) |
8 de 8ataques internos detectadosuna puerta de fusión en cada PR (E8) |
Construido como Certificate Transparency: registros firmados en un log de solo anexado que testigos independientes cosignan
Formato de archivo abierto · verificadores en Python y TypeScript · MIT · se ejecuta en tus propias máquinas
Pruébalo · Añádelo a tu agente · Qué demuestra · Qué contiene · Pruebas · Cómo funciona · Pilótalo · Contribuye · Documentación
Cuando un agente hace algo que no debería, te preguntas tres cosas: ¿qué hizo, estaba permitido, y puedes confiar en el registro? El propio log del agente no puede responder a la tercera, porque el agente puede editarlo. Aquí tienes una ejecución, registrada de ambas formas:
La misma ejecución, grabada: la base de datos, el firmante, el visor y ambas ediciones son reales; el modelo está guionizado. Véalo con sonido (1:47)
En esta demo el firmante se ejecutó como el propio usuario del agente (modo dev), por lo que un agente que supiera cómo podría haber leído la clave y vuelto a firmar el registro. Ejecute el firmante donde el agente no pueda alcanzarlo, con un testigo, y no podrá.
uvx --from tracekit-ai tracekit demo --server
Sin clave de API y nada que instalar con uv. Desde una caché vacía en un Mac tardó 5
segundos (10 con pip install tracekit-ai en un venv nuevo). El paquete es tracekit-ai: tracekit en PyPI es un
proyecto no relacionado. Un agente con script realiza tres llamadas, y deberías ver:
== agent run (SCRIPTED: fixed tool calls, not a model)
Bash 'ls': allow
Bash 'sudo rm -rf /': deny TK-D001 TK-D004 TK-F003
Bash 'echo "unterminated': ask TK-SHELL-PARSE
...
Integrity: VERIFIED.
== tamper test: rewrite the denied call as allowed in a copy, then verify again
[FAIL] signatures — 11 record(s), keys valid at their position
seq 4: hash does not match the event
Integrity: FAILED.
La eliminación fue denegada antes de ejecutarse, la llamada retenida se ejecutó tras una aprobación, y la ejecución se verificó. Luego la demo reescribió la denegación como permitida en una copia, y la verificación falló en el registro que modificó.
Tres líneas:
pip install tracekit-ai
import tracekit; tracekit.instrument() # the first line of your agent; then run it as usual
tracekit last # Integrity: VERIFIED. / Assurance: dev; ...
tracekit.instrument() inicia un firmante de desarrollo (o reutiliza el que está en ejecución) y controla y registra cada llamada a herramientas y modelos de los frameworks que encuentra. tracekit last exporta tu última ejecución, la verifica e indica dónde está.
tracekit view --dev muestra todas las ejecuciones. En una máquina limpia, el ejemplo de LangGraph (un modelo simulado, sin clave de API) se instaló,
se ejecutó y se verificó en 27 segundos: examples/v2/clean-machine.sh langchain.