Referencia del CLI pinky
Todos los subcomandos de pinky, qué hacen y sus flags. Generado del --help del binario (pinky <comando> --help da siempre la versión canónica).
Usage: pinky [OPTIONS] <COMMAND>
Flags globales (valen para todos los comandos)
| Flag | Qué hace |
|---|---|
--db <ruta> | Índice SQLite a usar. Toma PINKY_DB si está seteada (mismo default que el MCP y pinky init), así el CLI y el agente ven la misma base. Default brain.db. |
--hash-embed | Usa el embedder determinista (sin bajar el modelo ONNX). También se activa con la env var PINKY_HASH_EMBED. Ideal offline/CI. |
--json | Salida en JSON, para scripts. En search además desactiva el registro de telemetría (uso programático). |
--version / -V | Versión del binario. |
--help / -h | Ayuda (de pinky o de un subcomando). |
Indexar
pinky reindex <ruta> [--project <nombre>]
Reindexa todos los .md bajo <ruta>. Incremental: salta los que no cambiaron (por content_hash) y borra del índice los que ya no existen. Con --project las entradas quedan en el scope project:<nombre>; sin él, en global.
pinky reindex documentation --project sgsvp
pinky watch <ruta> [--project <nombre>]
Observa la carpeta y reindexa incrementalmente al detectar cambios en .md. Bloquea hasta Ctrl-C.
pinky watch documentation
pinky sync [--dir <carpeta>] [--push]
Sincroniza el brain global por git: git pull → reindex → (con --push) git push. La carpeta default es ~/.pinky/brain; el índice vive junto al brain (<brain>/brain.db), no el --db del CWD (para no mezclar con un proyecto).
pinky sync --push
Buscar
pinky search <query...> [opciones]
Búsqueda híbrida (BM25 + vector, fusión RRF). Filtros de metadata y rerank opt-in.
| Flag | Qué hace |
|---|---|
--limit <n> | Cantidad de resultados (default 10). |
--rerank | Rerank léxico liviano (privilegia frase exacta en título/snippet). |
--project <nombre> | Filtra por proyecto. |
--type <tipo> | Filtra por tipo: gotcha | pattern | decision | diary | guide | note. |
--tag <t> | Filtra por tag (repetible; la entrada debe tenerlos todos). |
pinky search "timeout al cerrar el pool de postgres"
pinky search "deadlock" --project sgsvp --type gotcha --json
Guardar / preparar
pinky save --title <t> [opciones]
Guarda conocimiento nuevo: escribe un .md con frontmatter y lo indexa al vuelo.
| Flag | Qué hace |
|---|---|
--title <t> | Título (obligatorio). |
--body <md> | Cuerpo markdown. Si se omite, se lee de stdin (para pipes). |
--type <tipo> | gotcha | pattern | decision | diary | guide | note (default note). Se normaliza y valida. |
--tag <t> | Etiquetas (repetible). |
--project <nombre> | Proyecto (scope). |
--dir <carpeta> | Dónde escribir el .md (default documentation). |
--no-file | Guarda solo en la DB, sin .md (ojo: un reindex la borraría). |
pinky save --title "Reintento de templates" --type pattern --tag whatsapp --body "Backoff exponencial…"
echo "cuerpo largo…" | pinky save --title "Nota" --type note
pinky init [ruta]
Prepara un proyecto: crea documentation/ (+ diary/), registra el MCP en .mcp.json con rutas relativas (relocatable) y deja una guía. No usa embeddings.
pinky init
Mantener (salud del conocimiento)
pinky dedup [--threshold <0..1>]
Lista pares de entradas casi-duplicadas (similitud coseno > umbral, default 0.9). No borra nada — la decisión de mergear es manual.
pinky stale [--days <n>]
Lista entradas con last_verified más viejo que <n> días (default 180), o sin fecha, de más vieja a más nueva. No usa embeddings.
pinky telemetry
Muestra las entradas más recuperadas (título + veces + última vez) y las que nunca se usaron (candidatas a poda). No usa embeddings.
pinky lint [carpeta]
Valida los .md: reporta frontmatter que se degradaría en silencio (YAML inválido, type/fechas mal formadas). Sale ≠0 si hay errores → apto para CI.
pinky evergreen <archivo>
Valida que un doc (p. ej. CLAUDE.md) sea evergreen: marca datos volátiles (nº de línea, LOC, archivo:línea). Sale ≠0 si encuentra alguno.
Backlinks (código ↔ conocimiento)
pinky backlinks scan <dir> [--repo <nombre>]
Escanea un árbol de código buscando marcadores // Brain: <slug> y puebla los backlinks del repo (default default).
pinky backlinks of <slug>
Lista el código (archivo:línea) que referencia un <slug>.
pinky backlinks scan ./src --repo miapp
pinky backlinks of pool-postgres
Rollups de diary
pinky rollup <dir> [--period week|month] [--out <archivo>]
Agrega los diaries (YYYY-MM-DD.md) de una carpeta en un resumen markdown determinista (sin LLM). --period default week; --out escribe a archivo en vez de stdout.
pinky rollup documentation/diary --period month --out RESUMEN.md
Diagnóstico
pinky stats
Cantidad de entradas y chunks indexados.
pinky doctor
Chequeo del entorno: versión del binario, sqlite-vec, versión de schema, entradas/chunks, y modelo del índice vs. embedder activo (avisa si no coinciden). Tolera que el índice no exista (te dice qué correr). Con --json, apto para monitoreo.
Calidad del retrieval
pinky eval <golden.json> [--k <n>] [--min-hit-rate <x>] [--min-mrr <x>]
Mide la calidad del retrieval contra un golden set de queries doradas: reporta hit@k y MRR. Con --min-hit-rate/--min-mrr, sale con código 1 si cae por debajo del umbral → gatea el build en CI ante una regresión.
pinky eval testdata/golden.json --min-hit-rate 0.95 --min-mrr 0.9
Utilidades
pinky completions <bash|zsh|fish>
Imprime el script de autocompletado para tu shell.
pinky completions zsh > ~/.zfunc/_pinky
Las tres piezas comparten el mismo índice: CLIpinky(esto), MCPpinky-mcp(para el agente:brain_search/brain_save/brain_stats) y hookspinky-hooks(Claude Code). Ver HOW-IT-WORKS.md y CONFIGURATION.md.