jsongrep: Una Herramienta de Consulta JSON Basada en DFA que Supera a jq en Puntos de Referencia

✍️ OpenClawRadar📅 Publicado: 27 de marzo de 2026🔗 Source
jsongrep: Una Herramienta de Consulta JSON Basada en DFA que Supera a jq en Puntos de Referencia
Ad

Qué hace jsongrep

jsongrep (binario jg) toma una consulta y una entrada JSON e imprime cada valor cuya ruta a través del documento coincida con la consulta. Trata los documentos JSON como árboles donde los objetos y arreglos se ramifican, los escalares son hojas, y las claves e índices etiquetan los bordes. El lenguaje de consulta es un lenguaje regular sobre el alfabeto de claves e índices.

Características del lenguaje de consulta

Las rutas con punto seleccionan campos anidados por nombre: jg 'roommates[0].name' devuelve roommates.[0].name: "Alice".

Los comodines coinciden con cualquier clave única (*) o cualquier índice de arreglo ([*]): jg 'favorite_drinks[*]' devuelve todos los elementos del arreglo.

La alternancia (|) coincide con cualquiera de las ramas: jg 'name | roommates' devuelve ambos campos.

El descenso recursivo usa * y [*] dentro de una estrella de Kleene para recorrer arbitrariamente profundo: jg '(* | [*])*.name' encuentra cada campo de nombre en cualquier profundidad. La bandera -F proporciona una forma abreviada: jg -F name hace lo mismo.

El opcional (?) coincide con cero o una ocurrencia: jg 'roommates[0].favorite_food?' devuelve tanto el objeto padre como el valor del campo.

Ad

Enfoque técnico

jsongrep compila consultas en autómatas finitos deterministas (DFA) utilizando una canalización que incluye: analizar la consulta, tratar JSON como un árbol, construir un NFA usando el algoritmo de Glushkov, determinizar mediante construcción de subconjuntos y buscar usando DFS con transiciones DFA. Esto permite procesar en una sola pasada con trabajo O(1) por símbolo de entrada, evitando retroceso, pilas de recursión y explosión exponencial en consultas patológicas.

El autor señala que esto difiere fundamentalmente de herramientas como jq, jmespath o jsonpath-rust, que interpretan expresiones de ruta, evalúan consultas en cada nodo, verifican predicados y descienden recursivamente, potencialmente revisitando subárboles o manteniendo listas de trabajo con consultas de descenso recursivo.

Instalación y disponibilidad

Instalar desde crates.io: cargo install jsongrep. Como ripgrep (que inspiró el proyecto), jsongrep es multiplataforma con binarios disponibles y escrito en Rust.

La herramienta detecta si la salida se canaliza a comandos como less o sort y omite las rutas JSON por defecto (anular con la opción --with-path).

📖 Leer la fuente completa: HN LLM Tools

Ad

👀 Ver también

Rift CLI: Administra Git Worktrees para Flujos de Trabajo Paralelos de Agentes de IA
Herramientas

Rift CLI: Administra Git Worktrees para Flujos de Trabajo Paralelos de Agentes de IA

Rift es una herramienta CLI que crea árboles de trabajo Git aislados y ramas para ejecutar múltiples agentes de codificación de IA como Claude Code simultáneamente en el mismo repositorio. Incluye ganchos de ciclo de vida, mapeo de puertos determinista y soporte para espacios de trabajo multi-editor.

OpenClawRadar
OpenSwarm: Orquestrador CLI Multi-Agente de Claude para Linear y GitHub
Herramientas

OpenSwarm: Orquestrador CLI Multi-Agente de Claude para Linear y GitHub

OpenSwarm orquesta múltiples instancias de CLI de Claude Code como agentes autónomos que extraen problemas de Linear y ejecutan pipelines de Trabajador/Revisor/Prueba/Documentador. Utiliza LanceDB con incrustaciones multilingües-e5 para la memoria e incluye control de bot de Discord, mejora automática de PR y un panel web.

OpenClawRadar
La extensión Super Claude para navegador rastrea la velocidad de uso de Claude AI y predice los límites.
Herramientas

La extensión Super Claude para navegador rastrea la velocidad de uso de Claude AI y predice los límites.

Un desarrollador creó una extensión de navegador llamada Super Claude que añade indicadores de velocidad de uso y predicciones de tiempo al 100% directamente en la interfaz de Claude, ayudando a los usuarios a monitorear el consumo de su asignación de 5 horas.

OpenClawRadar
OpenClaw-superpowers añade características de confiabilidad para modos de fallo operacional.
Herramientas

OpenClaw-superpowers añade características de confiabilidad para modos de fallo operacional.

El repositorio openclaw-superpowers se ha ampliado con ocho nuevas habilidades centradas en la fiabilidad, incluyendo comprobaciones previas al despliegue, verificación de ejecución cron, recuperación tras reinicio de sesión y gestión del ciclo de vida de autenticación MCP. Estas adiciones elevan el total a 60 habilidades, con 44 nativas de OpenClaw y 23 diseñadas para programación cron.

OpenClawRadar