Una regla necesita un check
Cada regla apunta a algo que la verifica: un test, una regla de lint, un hook de git, un job de CI. El doctor avisa cuando una regla se quedó sin su check.
Open source · un harness personal de Claude Code
El harness que uso para convertir ideas en primeras versiones con agentes de código: mi stack, mis reglas, mi forma de trabajar. Lo mantengo los fines de semana y en noches de música y código, y lo comparto por si te sirve a vos también.
claude plugin marketplace add leosimini/keelokit claude plugin install keelokit@keelokit Lo que construís va arriba. Lo que te mantiene el rumbo, abajo.
−2 m
/keelokit:kickstart te lleva por cinco etapas. Se frena solo donde importa tu decisión, y va dejando todo por escrito.
Una entrevista que primero lee lo que ya tenés y después pregunta solo lo que falta. Lo que nadie sabe todavía queda escrito como pregunta abierta, con un responsable.
Un PRD corto: el problema, para quién es, qué entra y, explícitamente, qué queda afuera.
El stack de la casa. Lo que se desvía queda registrado como decisión, no improvisado.
Un monorepo generado con CI, hooks de git y tests, en verde antes de escribir una feature.
Épicas e historias con escenarios de aceptación, agrupadas en tandas que nunca tocan los mismos archivos.
Elegís qué apps necesita cada producto.
pnpm verify▶ Format▶ Lint▶ Typecheck▶ Harness doctor ✔ harness healthy▶ Unit tests▶ Integration tests (throwaway PostgreSQL)▶ Build▶ End-to-end journeys▶ Dependency audit✔ verify passed | Qué tenés | Empezá con | Qué obtenés |
|---|---|---|
| Una idea, nada más | /keelokit:kickstart | Un monorepo que funciona, con CI, contexto y un primer backlog |
| Un repo que ya existe | /keelokit:adopt | Las reglas mapeadas a sus checks, y el resto como deuda con fecha |
| Una historia para construir | /keelokit:build | Tests escritos primero, código que los pasa y un resultado verificado |
| Bugs que se siguen escapando | /keelokit:bugbash | Arreglos en la causa raíz, y un check nuevo por cada bug que se escapó |
−8 m
Nueve skills. Podés correrlos uno por uno, o dejar que /keelokit te diga qué sigue.
/keelokit:kickstartDe una idea a un esqueleto que funciona: intake, PRD, stack, monorepo generado con CI y primer backlog.
/keelokit:adoptSuma solo el harness a un repo que ya tenés. Lo que todavía no cumple queda como excepción con fecha.
/keelokit:intakeLee briefs, notas o un repo, y pregunta solo lo que falta. Nunca completa un hueco adivinando.
/keelokit:backlogÉpicas e historias con escenarios de aceptación, en tandas para que el trabajo en paralelo no choque.
/keelokit:buildUna historia por vez: el verificador escribe primero los tests, un builder los hace pasar, un revisor lee el diff.
/keelokit:bugbashUna cacería de bugs en datos, API, UX, i18n, accesibilidad y seguridad. Cada bug que se escapó suma un check.
/keelokit:doctor¿Cada regla sigue respaldada por un check que funciona? Suma reglas y registra excepciones.
/keelokit:upgradeLleva un proyecto a un template más nuevo sin tocar el código del producto.
/keelokitDónde está el proyecto, qué sigue y qué espera tu decisión.
−15 m
Los agentes me decían “listo” y dejaban bugs. Estas tres ideas son lo que salió de ir resolviendo eso, proyecto a proyecto.
Cada regla apunta a algo que la verifica: un test, una regla de lint, un hook de git, un job de CI. El doctor avisa cuando una regla se quedó sin su check.
Lo que nadie sabe todavía se escribe con un responsable y la pregunta exacta. No se inventan valores que suenan bien.
Un verificador escribe los tests de aceptación antes del código, un revisor lee el diff en frío, y solo el verificador puede dar una historia por terminada.
pnpm doctorKeelokit doctor Gates: intake ✓ → product ✓ → stack ✓ → skeleton ✓ → backlog ✓ Rules: 26 · Context gaps: 2 (0 blocking) Backlog: 4/11 done · next: AUTH-005, PAY-001 warn exception for UI-1 until 2026-12-01: map SDK needs a literal colour ERROR rule QA-1: CI job 'unit' has continue-on-error SEC-1Sin secretos en el repoescaneo en CI · guard · pre-commitCFG-1Cada variable de config documentadaun test que compara schema, archivos .env y READMEAUTHZ-1Cada ruta con su decisión de accesoun test que lee el router realI18N-1Texto solo a través de traduccionesregla de lint · test de paridad de idiomasQA-4Ningún test silenciadoguard · pre-commitTRACE-1Cada escenario con su testdoctor, en CI−24 m
Un guard frena secretos, cambios a archivos .env y a migraciones ya aplicadas, hooks salteados, tests silenciados y deploys a producción.
Un estado corto: dónde está el proyecto y qué historias están listas.
El mismo guard como hook de git, y después el chequeo local completo antes de que algo llegue al remoto.
Escaneo de secretos, lint y tipos, tests unitarios y de integración contra un PostgreSQL real, recorridos de punta a punta con análisis de accesibilidad, análisis estático y deploy a staging.
git commit -m "wip" --no-verifyBlocked by Keelokit — QA-2: never bypass git hooks echo "API_KEY=…" > apps/api/.envBlocked by Keelokit — SEC-2: don't write .env files from the shell;edit .env.example, real values go in the secret store −32 m
Está hecho a mi gusto y con mi stack. No va a encajar en todos los proyectos ni en todos los equipos. Si tu stack es otro, /keelokit:adopt igual te da las reglas y los checks.
build y bugbash corren varios agentes por historia. Para cambios chicos existe /keelokit:build --light.
Frena a los agentes en los errores obvios, pero no es un sandbox. Los hooks de git y el CI son el respaldo real.
Puede ver que un check existe y está prendido, no que sea un buen check. Para eso están las revisiones y las cacerías de bugs.
Ideas de las que aprendí. El desarrollo guiado por especificaciones (OpenSpec, Spec Kit), Superpowers por separar quién construye de quién revisa, Copier por los templates que se pueden actualizar, y mucha prueba y error en mis propios proyectos.
−40 m
claude plugin marketplace add leosimini/keelokit claude plugin install keelokit@keelokit En una carpeta vacía corré /keelokit:kickstart. En un repo que ya tenés, /keelokit:adopt.
Necesitás Node 22 con pnpm 10, Python 3.11+, uv, Docker y git. macOS o Linux.