Documentos Cargados
Arrastra tus archivos aquí o explora
Soporta PDF, TXT, MD, DOCX, CSV, JSON, imágenes y multimedia (hasta 2GB/archivo en Gemini Files)
No hay archivos subidos aún. Arrastra un archivo para comenzar.
Consulta Semántica
¿Listo para probar Gemini File Search?
Sube uno o varios documentos, selecciónalos en la izquierda y escribe tu consulta para interactuar con la información.
Extracción de Documento a Markdown (sin File Search)
Documento en Markdown (.md)
Selecciona un documento y presiona 'Extraer Documento a Markdown' para generar el .md limpio.
OCR Local: PDF o Imagen → Markdown (modelo en tu máquina)
Arrastra un PDF o imágenes aquí o explora
Los PDF se convierten a imágenes por página antes de enviarse al modelo local.
Requiere que LM Studio (u otro servidor compatible con la API de OpenAI) esté corriendo localmente con GLM-OCR-GGUF cargado. Cada archivo subido se procesa como documento independiente y su .md se guarda automáticamente en la carpeta de salida con el mismo nombre del archivo original.
Documento en Markdown (.md)
Sube uno o varios PDF/imágenes y presiona 'Procesar con Modelo Local'. Cada archivo se guarda como .md independiente al terminar.
Scraper del Histórico de Legispan
Consulta la API de la Asamblea Nacional, extrae metadatos de Leyes/Decretos y los indexa en PostgreSQL sin descargar los PDFs.
Estado de la Base de Datos
Si dejás los campos vacíos, se usa el mes actual.
Último estado: Scraper inactivo.
Pipeline: Legispan → Gemini → LexIA
Escanea Legispan por el período indicado, y por cada norma nueva o actualizada: descarga el PDF, lo extrae con Gemini y lo inyecta en LexIA (crea o actualiza por legispan_id).
Si dejás los campos vacíos, se usa el mes actual.
Último estado: Pipeline inactivo.
Datos Escrapeados de Legispan
Documentos ya guardados en la base de datos. Por cada uno podés crear un registro vacío en LexIA (solo metadatos) o un registro completo (extrae el PDF y sube el contenido — reutiliza la extracción si ya se hizo antes).
Trae un único documento directo de Legispan sin correr el scraper por rango de fechas. Útil cuando ya escrapeaste el catálogo y solo te falta uno.
Importar Gaceta Oficial
gacetaoficial.gob.pa está protegido por un challenge JS (Incapsula) que bloquea un scraper directo,
así que en vez de escrapear el sitio, este panel importa un .xlsx ya extraído por otro proceso
(columnas legispan_id, gaceta_sequential, gaceta_pdf_url).
Cada fila actualiza el documento de Legispan correspondiente (por legispan_id) —
no crea documentos nuevos, solo enriquece los que ya tenemos.
Cobertura actual
Formateador de Markdown
Pega el texto crudo de una norma. Se detectarán las jerarquías (TÍTULO, CAPÍTULO, SECCIÓN, SUBSECCIÓN)
y se les asignarán los encabezados # correspondientes, además de insertar las directivas
(comentarios HTML) de inicio/fin de documento y de cada artículo.
Resultado
Pega el texto y presiona 'Aplicar Formato' para generar el markdown estructurado.
Jobs Programados
Programá ejecuciones recurrentes del Scraper o del Pipeline completo. Se guardan en la base de datos y se recargan solas cada vez que la app se reinicia o se hace un deploy — no hace falta volver a crearlas.
Nuevo Job
Usá * para "cualquiera", listas con comas (1,15), rangos (1-5) o pasos (*/2). Día de la semana: 0=lunes … 6=domingo. La hora es en zona horaria de Panamá.
Cada vez que el job se ejecuta, escanea automáticamente el mes en curso (sin fechas fijas) — así siempre captura las normas nuevas del período.
Exportaciones
Exportá los documentos de Legispan o las normas de Infojurídica a CSV/XLSX con los mismos filtros de sus pestañas de "Datos ...". El archivo resultante se puede reimportar más abajo para inyectarlo en LexIA, o podés saltarte el archivo y sincronizar el filtro actual directo.
Filtros — Documentos Legispan
Filtros — Normas Infojurídica
"Sincronizar Inventario a LexIA" manda el pivot tipo×año directo al inventario de LexIA
(/inventario, no a /documents) — mergea por tipo, no reemplaza el inventario
existente de esa fuente, y recalcula el total esperado del año.
Sincronizar directo a LexIA (sin archivo)
Usa el filtro seleccionado arriba y sincroniza cada documento con LexIA uno por uno — sin generar ni subir ningún archivo.
Importar archivo a LexIA
Subí un .xlsx con columnas legispan_id, title, description, document_type, document_number,
year, authority, law_date, url_documt_data, gaceta_number, gaceta_sequential, gaceta_date,
gaceta_pdf_url, law_branchs, keywords, affected_by, affects — cualquier exportación de arriba
ya las tiene. El archivo se reenvía sin modificar al mismo importador nativo detrás del botón
"Importar XLSX" de LexIA (/documents), que resuelve el upsert por legispan_id,
crea etiquetas y clasifica keywords del lado de LexIA.
Jurisprudencia Constitucional
Etapa 1: escrapea el catálogo completo de fallos de inconstitucionalidad de la Procuraduría (independiente de Legispan). Etapa 2: por cada norma ya escrapeada de Legispan, busca si tiene jurisprudencia asociada — depende de que la Etapa 1 de Legispan ya haya guardado esas normas.
Etapa 1: Catálogo de Fallos
Trae el listado completo de fallos de jurisprudencia constitucional (~1,874 registros) desde Infojurídica hacia una tabla propia, sin tocar todavía los documentos de Legispan.
Último estado: Scraper de fallos inactivo.
Etapa 2: Cruce con Legispan
Para cada norma ya guardada de Legispan, busca su ficha en Infojurídica y trae la jurisprudencia constitucional y las referencias normativas asociadas (si existen). Requiere que Legispan ya tenga esas normas escrapeadas.
Último estado: Cruce de jurisprudencia inactivo.
Relaciones
Refresca las relaciones que cruzan Legispan, Infojurídica (jurisprudencia constitucional y referencias normativas) y Fallos del Órgano Judicial (citas por artículo), y muestra qué documentos ya enviados a LexIA quedaron con relaciones nuevas desde su último envío, para reprocesarlos y reenviarlos.
Refrescar relaciones
Vuelve a cruzar cada norma de Legispan contra Infojurídica y reextrae las citas de fallos del Órgano Judicial por patrón. Los documentos cuya relación cambió de verdad (no solo se revisó) quedan marcados como pendientes de reenvío abajo.
Último estado: Refresco de relaciones inactivo.
Documentos con relaciones nuevas
Documentos ya enviados a LexIA cuyas relaciones cambiaron después de ese envío. Seleccioná los que quieras reprocesar y reenviar.
Fallos del Órgano Judicial
Escrapea consultafallos.organojudicial.gob.pa recorriendo el ID secuencial de la URL (index.php?i={ID}&av=0). A diferencia de la tabla de Fallos de Jurisprudencia Constitucional (que solo cubre el Pleno vía Infojurídica), este es el universo completo de fallos de todas las instancias, salas y dependencias judiciales. Por cada ID se guardan solo los metadatos en fallos_organo_judicial y las citas normativas detectadas por patrón en fallo_norma_articulo — el texto completo de la resolución se usa en memoria para detectar esas citas y no se persiste. Los IDs sin registro se detectan y se saltan automáticamente.
Rango de IDs a Escrapear
Último estado: Scraper de fallos OJ inactivo.
Datos de Fallos del Órgano Judicial
Fallos escrapeados de consultafallos.organojudicial.gob.pa, persistidos en la tabla fallos_organo_judicial. Las citas normativas se completan y consultan desde la pestaña "Citas Normativas".
Citas Normativas (Fallos OJ)
Identificación de qué normas cita cada fallo del Órgano Judicial, y consulta inversa: qué fallos citan una norma dada. Persistido en fallo_norma_articulo.
Reprocesar Citas por Patrón (histórico)
El scraper de fallos OJ ya extrae las citas automáticamente al escrapear cada ID (busca patrones como artículo N del Código Judicial o artículo N de la Ley N de AÑO, sin IA). Este botón solo sirve para re-matchear contra Legispan fallos ya guardados — por ejemplo cuando suben normas nuevas a Legispan — usando el texto guardado en fallos escrapeados antes de esta fusión. No detecta referencias anafóricas ("dicho artículo", "lex cit").
Último estado: Extracción por patrón de citas de fallos OJ inactiva.
Normas y Artículos Más Citados
Ranking de qué normas — o qué artículos puntuales — aparecen citados con más frecuencia a través de todos los fallos ya procesados por patrón.
Buscar Fallos que Citan una Norma
Consulta inversa sobre fallo_norma_articulo: dado un tipo de norma (y opcionalmente número, año o artículo), qué fallos la citan.
Fallos del Órgano Judicial 2 (vLex)
consultafallos.organojudicial.gob.pa migró de una app PHP/Node propia (escrapeada por ID secuencial en "Scraper Fallos OJ") a la plataforma vLex. Ya no hay ID secuencial que recorrer: los documentos se descubren por fecha (día exacto o mes) combinable con fuente, instancia, rama del derecho, tipo de proceso, ponente y texto libre — los mismos filtros de la búsqueda avanzada del sitio. Persistido en fallos_organo_judicial_2, con citas normativas detectadas por patrón en fallo_norma_articulo_2 — tablas nuevas, separadas de las del scraper viejo.
Rango de Fechas y Filtros
Para extraer un solo día, usá la misma fecha en "desde" y "hasta". El rango se trocea automáticamente por mes/día (y por fuente si hiciera falta) para no chocar con el límite de paginación del sitio.
Último estado: Scraper de fallos OJ 2 inactivo.
Datos de Fallos del Órgano Judicial 2
Fallos escrapeados de consultafallos.organojudicial.gob.pa (vLex), persistidos en la tabla fallos_organo_judicial_2.
Citas Normativas (Fallos OJ 2)
Citas normativas detectadas por patrón (sin IA) durante el scrape de cada fallo OJ 2, persistidas en fallo_norma_articulo_2. Se generan automáticamente al escrapear — no requieren un paso aparte.
Normas y Artículos Más Citados
Buscar Fallos que Citan una Norma
Calendario de Cobertura (Fallos OJ 2)
Qué días ya se consultaron contra el sitio con esta combinación de filtros y cuáles no — no muestra el contenido escrapeado, solo si la fecha ya fue cubierta (y con cuántos resultados). La cobertura es específica de los filtros elegidos: cambiar la rama del derecho o la fuente puede mostrar días distintos como cubiertos.
Filtros (igual que el scraper)
-
Datos Escrapeados de Fallos
Fallos de jurisprudencia constitucional ya guardados en la base de datos.
Catálogo Completo de Normas (Infojurídica)
Escanea secuencialmente norma_screen.php?numsec=N de Infojurídica (~62,000+ normas de todas las autoridades de Panamá, no solo Legispan), capturando Datos Generales, Archivo Fuente, Materias, Jurisprudencia y Referencias de cada una. Enlaza automáticamente con Legispan cuando tipo+número+año coinciden. Los numsec tienen huecos (registros eliminados/consolidados) — es normal ver "vacíos" entre medio.
Estado del Catálogo
Empezá con un rango chico (ej. 1-200) para validar antes de lanzar el catálogo completo — dejar "Hasta" vacío corre sin límite hasta detectar el final real (200 numsec vacíos seguidos).
Último estado: Escaneo de normas inactivo.
Datos Escrapeados de Infojurídica
Normas ya guardadas en la base de datos. Por cada una podés crear un registro vacío en LexIA (solo metadatos) o un registro completo (extrae el PDF y sube el contenido — reutiliza la extracción si ya se hizo antes).