Pre-1.0 · la API puede cambiar entre versiones menores · aún no está en npm — usá el código fuente

SDK open source · Apache-2.0 · la privacidad es código

El segundo trabajo que el cuidado nunca anuncia.

Seguir autorizaciones antes de que venzan, perseguir recetas, leer la letra chica de la obra social a medianoche. kerkit es el SDK para ese rol — las herramientas que nunca tuvo.

Ver el código
Límite de redacción@kerkit/ai
En el dispositivo
name
Marta Pérez
nationalId
12.345.678
diagnosis
Diagnóstico…
Enviado al modelo
name
«NAME»
nationalId
«NATIONAL_ID»
diagnosis
⊘ omitido
ningún identificador real llegó al modelo
Modelo de dominio
codificado, no conocimiento tácito
Privacidad por construcción
redacción antes de cualquier llamada al modelo
Interfaz calma
hecha para el agotamiento

Once segundos, sin configuración

Corré un comando. Mirá cómo el DNI nunca sale del dispositivo.

Sin clonar, sin base de datos, sin API key. Imprime el registro real del cuidador junto a la proyección redactada que el modelo realmente recibe, y demuestra que el identificador del paciente sintético nunca llegó al modelo.

kerkit — demo de privacidad
$ npx github:JuanseHevia/kerkit
Descargando JuanseHevia/kerkit · corriendo demo de privacidad…
┌ CRUDO — lo que guardás
│ name Marta Pérez
│ nationalId 12.345.678
│ diagnosis Diagnóstico de demostración
└ REDACTADO — lo que recibe el modelo
│ name «NAME»
│ nationalId «NATIONAL_ID»
│ diagnosis ⊘ omitido
✅ OK — ningún identificador real llegó al modelo.

La brecha

Entre el hospital y la obra social hay un rol para el que ningún sistema fue pensado.

Software del hospital

Sirve a la historia clínica.

Fichas, órdenes, resultados — todo dentro de las cuatro paredes del hospital.

termina en la puerta del hospital
El rol que ningún sistema atiende

El cuidador

Sostiene los dos lados.

Mantiene la historia clínica y el trámite en sincronía — sin presupuesto, sin formación, casi siempre bajo un peso emocional que no tiene nada que ver con el software.

Portales de la obra social

Sirve al trámite.

Autorizaciones, cobertura, letra chica — todo lo que define la póliza.

termina en el trámite

Dos sistemas, cada uno completo. Ninguno pensado para la persona que está en el medio.

IA de propósito generalresponde preguntas
¿Ya vence la autorización de la quimio?
«En general, las autorizaciones suelen vencer entre 30 y 90 días — confirmá con tu obra social.»
Por qué esa respuesta se queda corta
Sin modelo de dominio
no sabe cuál autorización está por vencer
Sin privacidad estructural
para ayudar de verdad necesitaría el DNI real
Sin interfaz calma
un muro de texto genérico, a medianoche
01

Un modelo de dominio que ya entiende el problema.

02

Privacidad garantizada por estructura, no prometida.

03

Una interfaz hecha para el agotamiento.

kerkit cierra esa brecha negándose a aceptarla. Las herramientas existían para las obras sociales. Existían para los hospitales. No existían para la persona que sostiene ambos lados — hasta ahora.

Qué hace

Tres afirmaciones, cada una respaldada por algo que corre.

No algo escrito — algo que podés ejecutar.

01 · @kerkit/core

Un modelo de dominio, codificado

Entidades, esquemas Zod, una máquina de estados de autorización, una taxonomía de eventos de cuidado — la logística del cuidado escrita como tipos, no transmitida como conocimiento tácito. La máquina de estados de abajo es la real, probada en producción.

Elegí una transición. confirmed es terminal — nada le sigue.

Desde

Hacia · verde = alcanzable

isValidTransition('pending', 'confirmed' // true

Permitida — la transición está en el grafo.

02 · @kerkit/ai

Privacidad por construcción

Cada campo se clasifica en tiempo de compilación. Los identificadores directos se vuelven tokens antes de cualquier llamada al modelo; los campos de salud pasan solo con un opt-in explícito escrito en tu código; las clasificaciones faltantes fallan de forma segura. Cambiá la vista — los valores reales nunca cruzan el límite.

nameMarta PérezIdentificador directo
nationalId12.345.678Identificador directo
credentialNumberDEMO-0001-00Identificador directo
diagnosisDiagnóstico de demostraciónDato de salud
treatmentPhaseEtapa IIDato de salud
insurerId…-000000000010Logística
createdAt2026-01-05T12:00ZPúblico
registro crudo
03 · @kerkit/ui

Convenciones de interfaz calma

Tokens de diseño «Calm Confidence» y componentes React Native — diseñados contra el estrés del cuidado, no a su alrededor. El verde se reserva para el avance; la tipografía nunca baja de un piso legible; nada rebota. Llega por olas.

forward
surface
pending
escal.
Source Serif
DM Sans · la voz de la interfaz, callada y legible
JetBrains Mono · código y datos

El modelo de privacidad, completo

Para quien quiere el mecanismo.

La privacidad se aplica en el código, no se documenta en un párrafo — incluyendo, a propósito, lo que no garantiza.

Garantizado, por estructura
  • Clasificación exigida por CI. Un campo sin clasificar no se mergea.
  • direct-identifier → token. El valor se vuelve un placeholder antes de llegar a un modelo. Una garantía estructural, no un mejor esfuerzo.
  • sensitive-health → opt-in explícito. Pasa solo con un opt-in por campo escrito en el código que llama.
  • Consentimiento, exportación y borrado ya existen en @kerkit/server — no son ítems del roadmap.
Lo que no se garantiza, dicho de frente

Los identificadores escritos en texto libre se atrapan con un barrido de regex más valores conocidos — no con detección exhaustiva. El recall sobre entrada arbitraria se mide, no se asume. Una promesa de privacidad que esconde sus bordes vale menos que una que los declara.

Antes
…Mamá (Marta Pérez, DNI 12.345.678) prefiere…
Después · 2 atrapados
…Mamá («NAME», DNI «NATIONAL_ID») prefiere…

Detalle técnico completo: docs/anonymization-testing-framework.md

Por qué Argentina primero

Probado contra un sistema real — estructuralmente listo para el próximo.

Construir primero para un sistema real, en vez de uno «global» abstracto, fue la única forma de poner a prueba las afirmaciones contra algo verdadero. La máquina de estados de autorización, las entidades y los patrones de señales en emails se probaron contra una obra social real, con plazos reales.

pack-argentina reúne todo lo específico de ese contexto — strings es-AR, el modelo de obra social, redacción de DNI/CUIL, guía de la Ley 25.326 — mantenido estructuralmente separado de los locale-neutrales core · ai. Esa separación es el punto: es una plantilla de cómo se ve un locale pack, no un límite de lo que kerkit puede llegar a ser.

El camino hacia afuera

core  ·  aisin locale
pack-argentinaprobado
pack-‹your-locale›el carril está abierto

Cada región que adopta kerkit suma prueba de que el modelo se sostiene fuera del único sistema donde se probó — y una plantilla que acorta el camino del próximo. CONTRIBUTING.md ya acepta filas de datos de obras sociales argentinas sin discusión previa; el mismo carril queda abierto para el pack que todavía no se escribió.

Empezar

Dos formas de entrar.

Solo evaluando

Sin instalar. La promesa de privacidad, demostrada en once segundos.

$ npx github:JuanseHevia/kerkit

Construyendo sobre kerkit

Cloná, compilá, testeá y corré el servidor mínimo de cuidador — sin DB, sin OAuth, sin API key de LLM.

$ git clone github.com/JuanseHevia/kerkit
$ npm install
$ npm run build && npm run test
$ npm run dev -w examples/minimal-caretaker