---
id: 0021
title: Command palette Ctrl+K — busqueda y acciones globales
status: pending
priority: high
created: 2026-05-01
---

## Objetivo

Atajo `Ctrl+K` (configurable) abre overlay flotante con input de busqueda
fuzzy global. Lo que mas acelera el dia a dia: cero navegacion por menus
para encontrar un nodo o disparar una accion.

## Alcance

Indexa y matchea sobre:

- Entidades del grafo (por name, type, metadata).
- Acciones de la app ("Toggle inspector", "Save layout", "Run transform",
  "Export subgraph", "Switch project", "Open settings").
- Comandos recientes (MRU al tope sin escribir).

Selecciono con flechas + Enter -> ejecuta accion o enfoca nodo en
el viewport.

## Implementacion

- Overlay modal centrado, input de texto + lista virtualizada
  (`ImGuiListClipper`).
- Indexador en memoria sobre entidades; refresh al cambiar grafo.
- Fuzzy matcher (fzf-like, p.ej. `fts_fuzzy_match` de Forrest the woods,
  o algo equivalente).
- Acciones registrables desde cualquier panel — registro central tipo
  `cmd_palette_register("name", lambda)`.

## Definicion de hecho

- Ctrl+K, escribo 3 letras del nombre de un nodo, lo enfoca en el grafo.
- Ctrl+K, "exp", veo accion "Export subgraph as Markdown" disponible.
- Latencia de matching imperceptible con 50k entidades.
- MRU pone arriba lo usado recientemente.
