Files
fn_registry/docs/capabilities/INDEX.md
T
egutierrez a27dcc028c docs(capabilities): unifica tag gamedev en gamedev-2d + separa gamedev-engine
El doctor reportaba el dominio gamedev en doble FAIL: el tag plano `gamedev`
(44 funciones) como `ungrouped_candidate` y la pagina `gamedev-2d.md` como
`doc_orphan`. Causa raiz: el INDEX declaraba `[gamedev](gamedev-2d.md)` y el
auditor solo registra el slug cuando label==target, asi que ni casaba la
pagina ni declaraba el tag.

Al revisar las 44 funciones habia dos clusters reales bajo el mismo tag, asi
que se separan en dos grupos honestos:

- gamedev-2d (tag canonico): 31 builders de workflow ComfyUI + 5 de apoyo
  (post-proceso + puente a Godot) = 36. Se elimina el tag plano `gamedev` de
  los builders (ya tenian `gamedev-2d`) y se reemplaza por `gamedev-2d` en las
  de apoyo.
- gamedev-engine (grupo nuevo, pagina madre nueva): runtime de juego C++
  multiplataforma (SDL3 + sokol_gfx + miniaudio, Issue 0072b) = 8. Game loop,
  camara 2D, input unificado, sprite batch, setup render/audio, build wasm.

El tag plano `gamedev` queda eliminado (count 0). INDEX corregido: fila
gamedev-2d con label==target y conteo 36 + fila nueva gamedev-engine (8).

Verificacion: `fn index` + `fn doctor capabilities` -> ambos grupos OK
(declared_in_index=yes, doc_exists=yes, sin issues); `gamedev` plano = 0.
Solo se modifico el campo `tags` de los .md, ningun archivo de codigo.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-27 02:40:50 +02:00

16 KiB

Capability Groups

Indice de grupos de capacidades del registry. Cada grupo agrupa >=3 funciones que comparten dominio operativo. Lee la pagina madre del grupo ANTES de buscar funciones sueltas — desbloqueas el conjunto entero en un solo read.

Como leer este indice

Columna Que
Grupo Tag canonico. Coincide con el slug del archivo <grupo>.md
N Numero de funciones en el grupo (auditado por fn doctor capabilities)
Que cubre Frase corta — accion principal

Grupos vigentes

Grupo N Que cubre
gamedev-2d 36 Assets 2D para Godot via ComfyUI: 31 builders de workflow (pixelart/seamless/iso/sprite/topdown/card/enemy/prop/structure/foliage/trap/projectile/decal/particle/rune/weather/badge/skill-tree/dialogue/icon/portrait/VFX...) + 5 de apoyo: post-proceso (pixelize, luma->alpha) + puente de assets a Godot 4 (.import + reimport headless). Tag canonico gamedev-2d (antes gamedev, ya unificado)
gamedev-engine 8 Runtime de juego C++ multiplataforma (PC + WebAssembly): SDL3 + sokol_gfx + miniaudio. Game loop fixed-timestep, camara 2D, input unificado (teclado/gamepad/touch), sprite batch, setup de render/audio y build a wasm. Grupo hermano de gamedev-2d (este ejecuta el juego, aquel genera los assets)
registry 17 Auditoria y monitorizacion del propio registry: copied-code, uses-functions, unused, proposals, telemetria
systemd 14 Generar, instalar, restart y status de unit files systemd via SSH (deploys a VPS)
ssh 19 Operar hosts remotos via SSH: config, conn, ejecutar comandos, port-forward, deploys con SCP/rsync
deploy 21 Deploy completo Go/C++ a VPS o Windows: Docker+Traefik, systemd, rsync, health checks
mantine 63 Frontend Mantine v9 + @fn_library: theming, layout, formularios, modales, instalacion
bigquery 26 Operar Google BigQuery via SDK Python: queries, dataset/table CRUD, jobs, schema, exports
nlp 33 Extraccion NLP: PDFs, OCR, chunking, GLiNER/GLiREL, dedup, agregacion de entities/relations
docker 38 Operar Docker desde Go/Bash: build/run/stop, compose, networks, volumes, logs, deploys
android 37 Toolbelt Android desde WSL2: adb, emuladores AVD, APK build/install, Capacitor, logcat
web-proxy 5 Captura de trafico HTTP/HTTPS liviana (mitmproxy): proxy con rotacion, navegador proxeado, consulta de capturas, tee del SSE de claude. Alternativa ligera a ZAP/Burp
claude-fleet 5 Orquestar la flota de procesos Claude Code vivos: panel TUI (fleetview) + comando fleetclaude que centraliza N Claudes en una ventana kitty/tmux (socket -L fleet), conmuta cual esta embebido (alt+flechas/enter/n) y los lista desde ~/.claude/sessions+goals
flow-replay 3 Guardar un flujo web (login, reiniciar server, formulario) como funcion reproducible: destila un HAR a call specs y lo reproduce sin navegador (HTTP puro), con fallback a chromium headless/visible. Consume las capturas de web-proxy
hoppscotch 7 Operar Hoppscotch SELF-HOSTED (docker en selfhost/) via API GraphQL: login (magic link headless via mailpit), CRUD de requests (create/update/delete/list), set_environment (idempotente, resuelve secretos pass:). El agente crea/edita y el humano lo ve en vivo en su GUI (subscriptions). build es helper interno de serializacion. Modo .json local ELIMINADO
dav 9 Cliente CardDAV/CalDAV (Python, solo stdlib) para Xandikos: parte un .vcf/.ics export de Google en recursos individuales (split puro), extrae/sintetiza UID, sube por HTTP PUT con Basic auth, lista (PROPFIND) y descarga (GET) recursos. Dos pipelines de import (vcf->carddav, ics->caldav). Formaliza la migracion ad-hoc de contactos/calendario
metabase 106 Operar Metabase via API REST: auth, cards, dashboards, collections, snippets, permissions
doctor 11 Diagnostico read-only del registry: artefactos, servicios, drift, funciones huerfanas
notebook 5 Operar Jupyter Lab colaborativo (discover/read/exec/write/kernel)
cpp-windows 7 Compilar, desplegar, lanzar y verificar apps C++ en Windows desde WSL2
git 19 Operaciones git y Gitea: clonar, commit, push/pull, hooks, TBD, webhooks, sync entre PCs
playwright 6 E2E browser: launch chromium, login kanban, drag dnd-kit, keyboard sequence, wait predicate, assert class
cpp-tables 9 Table Query Language C++ puro: filter, group, agg, sort, join, stats, formulas Lua, round-trip emit/apply
data-table-renderers 1 API declarativa de cell renderers para data_table: Badge, Progress, Duration, Icon via TableInput.column_specs
scheduler 4 Cron expression parsing, matching, next-run y traduccion humana (consume apps/dag_engine)
extractor 15 Funciones que leen datos de fuentes externas (BD, API, archivos, web). Nodos input de data_factory
transformer 15 Funciones que clean/dedup/aggregate/feature-engineer datos. Nodos intermedios de data_factory
sink 11 Funciones que escriben datos a destino externo (BD, dashboard, alerta, email). Nodos output
validator 6 Funciones que verifican datos/config contra reglas. Pre-flight de sinks y gates en DAGs
navegator 4 Automatización de browser via CDP + AX tree + LLM: obtener, limpiar, chunkear AX tree y llamar a Claude CLI
img-to-3d 4 Imagen 2D -> modelo 3D: recorte de fondo (rembg/GrabCut/umbral) + profundidad monocular (Depth-Anything-V2) + malla de relieve texturizada exportada a .glb, con pipeline one-shot. Produce el glb que mesh-3d consume/renderiza
whatsapp 3 Operar WhatsApp Web por CDP sobre la pestaña existente (sin ventana ni foco): buscar/abrir chat, leer conversacion, enviar texto. Compone 4 primitivas CDP-Python (cdp_eval/type_chars/press_key/click_xy). No HTTP: WhatsApp usa WebSocket + cifrado E2E
cpp-dashboard-viz 10 Primitivas C++ ImGui para dashboards: kpi_card, sparkline, line/bar/scatter/pie/heatmap/histogram, panel containers
agents 3 Orquestar agentes Claude headless en git worktrees: launch, cleanup, DoD evidence schema audit
backends Stacks backend (Go net/http+SQLite default, MCP, mautrix, bubbletea, httpx, docker-compose): decision tree + esqueleto canonico + funciones del registry a componer
kanban 5 Parser/writer/scanner/watcher de dev/issues/ y dev/flows/: base del backend kanban_cpp v2
wireguard 7 Instalar, configurar, operar y monitorizar mesh WireGuard hub-and-spoke: keygen, hub setup, peer add/revoke, status JSON
matrix-mas 5 Migración Synapse→MAS: habilitar MSC3861, verificar login flows, parche .well-known, registro clientes OAuth2, syn2mas
mesh-3d 3 Carga y upload a GPU de meshes 3D (OBJ, GLB/glTF 2.0): loaders CPU + mesh_gpu_upload OpenGL
terminal-capture 6 Automatizar y capturar el texto de una CLI/TUI interactiva via PTY headless: spawn+input scripteado (one-shot y streaming), render del layout 2D (emulador VT), strip ANSI, delta por prefijo, y parseo de la TUI de claude a datos
claude-direct 3 Hablar directamente con la API de Anthropic Messages usando el token OAuth de Claude Code (Claude Max): leer token, stream SSE, bucle agentico de tool-use
obsidian 16 CRUD headless de vaults y notas Obsidian como Markdown plano (frontmatter YAML + wikilinks): parse/format, read/create/update/delete/list/search notas, list/create vaults, slugify/embeds/resolve, render tabla Markdown + bloques sentinel gestionados. Sin app GUI
duckdb 10 Operar bases DuckDB: open (Go), query/execute/upsert, introspeccion (list_tables, table_schema), CSV->Parquet, dedup, OHLCV, e ingesta desde Excel (excel_to_duckdb) + salida a Postgres (duckdb_to_postgres). Motor analitico del stack de datos Excel->DuckDB->Postgres->viz
excel 6 CRUD de hojas Excel (.xlsx) con openpyxl: escribir multi-hoja, upsert no destructivo (preserva columnas manuales), leer a memoria, leer a markdown, graficos nativos (bar/line/pie/scatter), e ingesta a DuckDB. Round-trip de datos con humanos
postgres 7 CRUD de PostgreSQL via psycopg2 (dsn): connect (Go), query read-only, insert append-only, upsert idempotente, crear tabla inferida, introspeccion, aplicar .sql. Capa que sirve datos a Metabase/Grafana (que no hablan DuckDB nativo)
sql-connect 3 Conexion directa y consulta a Microsoft SQL Server (Navision) via pymssql: abrir conexion (login_timeout), SELECT parametrizada con binding seguro -> {columns, rows, row_count}, y pipeline one-shot run_mssql_query (CLI JSON/CSV). Elimina el copia-pega manual de CSV de Navision. Credenciales desde pass, host = IP LAN de Windows desde WSL2
recon 8 Reconocimiento de red OSINT: whois, rdap, dns (dig), ping, traceroute, nmap por perfiles. Cada scan se archiva en OSINT (nota vault + tabla DuckDB network_scans) via el sink save_scan_to_osint o el pipeline one-shot recon_osint. Perfiles nmap pesados (full-tcp/vuln/udp-top) en segundo plano. No es framework de explotacion; solo hosts autorizados
osint-passive 8 Recoleccion OSINT pasiva (fuentes publicas, no intrusiva): EXIF/PDF metadata, whois RDAP, DNS, subdominios crt.sh, guess emails, username enumeration, search dorks
osint-enrich 3 Orquestadores de enriquecimiento OSINT: componen osint-passive para aumentar datapoints de personas (emails/usernames/dorks), orgs (whois+dns+subdominios) y metadatos de attachments
browser-profiles 4 Catalogo de perfiles del navegador Chromium para investigaciones multicuenta OSINT: por perfil guarda que correo/cuentas usar (secret_ref a pass, nunca el password), proposito, persona y nota del vault, y lanza el perfil listo via systemd-run. Fuente de verdad en el service osint_db (tablas browser_profiles + browser_profile_accounts)
market-intel 8 Inteligencia de mercado para captacion de clientes: scrapers de tendencias de productos/nichos (Amazon, Google Trends, TikTok, AliExpress) + precios de competencia, aterrizados en Postgres (pg_insert_rows/pg_apply_sql) y analizados en Metabase. Dispatcher ingest_market_trends invocado por dag_engine. TikTok/AliExpress por HTTP caen (anti-bot); pendiente browser CDP
consent 3 CMP / IAB TCF / data brokers: detectar el CMP de un sitio (Didomi/OneTrust/Sourcepoint/Quantcast), leer __tcfapi para contar vendors y propositos, aceptar el banner (selectores + fallback LLM con haiku que localiza Aceptar/Ver socios), y descargar la GVL de IAB para nominar cada broker y que datos recopila. Nacio de projects/databrokers/
onlyoffice 3 Operar ONLYOFFICE Desktop Editors (binario onlyoffice-desktopeditors) en Linux/X11 desde terminal via instancia aislada (slot HOME=/tmp/oo_): abrir un archivo en ventana propia, cerrar+reabrir para mostrar datos editados en disco (no hay reload nativo, Issue #2313), y matar el proceso del slot. Solo gestiona la ventana, NO edita ni crea archivos. Requiere X11 + wmctrl + xdotool. No confundir con el Document Server (web/Docker)
email 21 Gestionar cuentas de correo por IMAP+SMTP directo (Python stdlib, sin browser ni MCP Gmail): conectar/listar/buscar/leer (imap_*), mutar estado (mark_seen/move/delete/save_draft) por UID, y construir+enviar (email_build_html/smtp_send). Auth user+app-password (NO OAuth; Outlook fuera). Credenciales desde pass, resueltas por la capa app. Complementa al browser (interactivo) — no lo reemplaza
eda 27 Exploratory Data Analysis por tabla y base con motor DuckDB + PostgreSQL push-down: perfil base SQL (SUMMARIZE + distinct exacto), estadística numérica/categórica, tipo semántico regex, calidad, correlación/asociación (Pearson/Spearman/Cramér's V/Theil's U/η/MI), relaciones inter-tabla (FK containment + join graph mermaid), modelos baratos (PCA/KMeans/IsolationForest/normalidad/tendencia), capa LLM (dictionary/PII/limpieza/análisis) y generación de notebook. Orquestadores profile_table (backend duckdb/postgres, flags run_models/run_llm) y profile_database
seo 3 SEO orientado a datos sobre Google Search Console: autenticar con service account (gsc_auth), extraer Search Analytics paginado (pull_gsc_search_analytics) y el pipeline de ingesta a DuckDB + espejo Postgres para Metabase (ingest_gsc_search_analytics). Cadena de ingesta del proyecto seo_analytics; alimenta dashboards de striking distance, CTR opportunities y content decay
local-hub 4 Exponer los procesos locales como subdominios *.localhost (via Caddy, sin DNS) y reunirlos en una pantalla principal Glance con estado en vivo, refrescada a diario por dag_engine. Descubre servicios (manifiesto + registry), renderiza Caddyfile + config Glance (puras), y el pipeline refresh_local_hub regenera+recarga. Fuente de verdad: apps/local_hub/local_services.yaml
comfyui-judge 4 Panel multi-juez de calidad de imagen: estético LAION-V2 (comfyui_score_aesthetic, 0-10) + fidelidad CLIP prompt↔imagen (comfyui_score_clip_alignment, 0-1) + crítica LLM-vision (comfyui_critique_image_llm, good/bad). Agregados por voto mayoría en comfyui_judge_image. Gate objetivo para tests/DoD y el bucle de mejora de skills ComfyUI; degrada con gracia si un juez cae. Jueces estético/fidelidad por subproceso al venv ComfyUI (torch+open_clip), crítico via claude-direct
comfyui 29 Controlar ComfyUI (Stable Diffusion por grafos) de dos formas: por API HTTP (build_txt2img_workflow puro → submit → wait → object_info; download_model con validación Civitai/HF) y por la UI web vía CDP sobre la pestaña abierta (load_workflow_ui, set_node_widget_ui para tunear prompt/steps/seed en vivo, queue_prompt_ui = botón Queue Prompt, export_workflow_ui, refresh_nodes_ui). El API format es el puente entre ambos caminos. Las funciones de UI componen cdp_eval. Incluye imagen→3D nativo (Hunyuan3D-2, tag img-to-3d): build_image_to_3d_workflow + fetch_output_mesh + install_3d_model + pipeline image_to_3d_oneshot
comfyui-skill 11 Tratar una configuración de generación ComfyUI como una skill: receta versionada en disco (checkpoint + LoRAs + params + scaffold de prompt + post-proceso) que se compila a un workflow cambiando solo el subject. Save/load/list de recetas, bucle de mejora genera→juzga→bump con gate objetivo (el score del juez decide qué se promueve), export de la skill a grafo cargable en el navegador, y cosecha de Civitai (extract_recipe_from_png + harvest oneshot) que destila el workflow embebido de una imagen pública en una skill candidata
comfyui-overview Mapa cross-grupo de las capacidades de generación ComfyUI (txt2img, img2img/inpaint, controlnet, skills/multiestilo-LoRA, video, upscale/detail, 3D, juez, operación): cada capacidad → builders/pipelines del registry + grafos UI + skills que la cubren. Índice de entrada al stack ComfyUI; las firmas y gotchas viven en comfyui.md/comfyui-skill.md/comfyui-judge.md. Catálogo navegable de los grafos en disco (subcarpetas por capacidad) en ~/ComfyUI/CAPABILITIES.md

Como anadir grupo

  1. Reservar tag plano (sin prefijos). Ej: metabase, android-emu, deploy.
  2. Anadir el tag al frontmatter .md de >=3 funciones afines (fn index lo registra).
  3. Crear docs/capabilities/<grupo>.md con plantilla:
    • Lista de funciones (ID + firma corta).
    • 1-2 ejemplos canonicos de uso.
    • Fronteras (que NO hace el grupo).
  4. Anadir fila a la tabla "Grupos vigentes" arriba.
  5. Correr fn doctor capabilities para auditar drift tag<->doc.

Minimo por grupo

  • 3 funciones: minimo para crear pagina madre.
  • <3 funciones: tag sigue valido para FTS pero no genera pagina madre.

Auto-generacion

fn doctor capabilities --update reescribe la tabla "Funciones" de cada pagina preservando bloques curated ("Ejemplo canonico", "Fronteras", "Notas"). Las secciones curated nunca se sobrescriben.