Código abierto · Para código y para documentos de Office

Revisa lo que importa.

Los cambios se acumulan más rápido de lo que nadie puede leerlos: pull requests escritas con asistentes de IA, presupuestos y contratos editados por muchas manos. Probe compara cada nueva versión con la última en la que confiaste, pone ante ti las pocas modificaciones que requieren tu criterio y te muestra por qué.

Última versión v0.5.1 · Los hallazgos proceden de reglas fijas, no de un modelo · IA opcional.

Una persona trabajando con calma en un escritorio dentro de un círculo luminoso, en el centro de un túnel de cables enredados, notificaciones y paneles
19 / 125 líneas te necesitan Probe filtra el resto.
Dos herramientas, una misma disciplina

El mismo método de revisión, para desarrolladores y para equipos de negocio.

Ambas herramientas parten de la última versión que revisaste, señalan las modificaciones de riesgo con reglas fijas y explicables, y guardan un registro de lo que se comprobó. Un modelo de IA puede ayudar a explicar un hallazgo; nunca decide qué se señala, y nada sale de tu equipo salvo que tú lo decidas.

Probe para código

Revisa pull requests escritas por IA

Para desarrolladores, responsables técnicos y pipelines de CI.

  • Relaciona un diff de Git con señales de riesgo: autenticación, pagos, validaciones eliminadas, API públicas, dependencias.
  • Ejecuta tus tests en contenedores desechables e intenta reproducir los problemas en ambas revisiones.
  • Comprueba el plan de un agente antes de que exista el código y después deja que se fusionen los cambios de bajo riesgo que se ajustan a él.
CLIHub (Docker)GitHub · GitLabGo · TypeScript · Python · Rust
Probe Desktop

Vigila documentos de Office compartidos

Para equipos de finanzas, legal, ventas y operaciones, y para cualquiera que comparta archivos.

  • Sigue los archivos de Word, Excel y PowerPoint de tus carpetas de OneDrive o Google Drive.
  • Señala una fórmula sustituida por un número, un total que ya no cuenta todas las filas, un importe o un plazo modificado, un "deberá" convertido en "podrá".
  • Mantiene una cola de documentos por revisar; una vez revisada, una versión se convierte en la referencia para los siguientes cambios.
WindowsmacOSOneDrive · Google DriveWord · Excel · PowerPoint

¿Cuál necesitas?

Probe para códigoProbe Desktop
EresDesarrollador, revisor, equipo de plataformaController, abogado, directivo, asistente
Qué cambiaCódigo fuente, en commits y pull requests de GitArchivos de Word, Excel y PowerPoint, en OneDrive o Google Drive
La referenciaLa rama base de la pull requestLa última versión que alguien marcó como revisada
Qué buscaCódigo sensible para la seguridad, validaciones eliminadas, cambios de API y de dependencias, tests que fallan o que faltanFórmulas con valores fijos, rangos reducidos, importes, fechas y obligaciones modificados, hojas o diapositivas ocultas, macros
EvidenciasComprobaciones ejecutadas en un sandbox, problemas reproducidos, un informe JSON y MarkdownEl antes y el después de cada cambio señalado, y quién lo guardó por última vez
Cómo se ejecutaUna herramienta de línea de comandos en tu terminal o en CI, o el Hub para toda una cuentaUna aplicación en la barra de tareas o en la barra de menús, que vigila en segundo plano
Probe Desktop · Para documentos

Los archivos compartidos cambian sin avisar. Descubre qué cambios importan.

Un presupuesto que pasa por cinco personas, un contrato retocado por la otra parte, una presentación al consejo actualizada la noche anterior. Nadie lo relee todo, y nadie debería tener que hacerlo. Probe Desktop vigila las carpetas que tu equipo ya usa y te muestra las modificaciones que cambian una cifra, un compromiso o un cálculo, con el antes y el después.

  • Ve lo que el control de cambios no ve. Una fórmula sustituida en silencio por su valor, una suma que se detiene una fila antes, una hoja que se vuelve invisible.
  • Funciona donde ya están tus archivos. Elige una carpeta de OneDrive o Google Drive sincronizada en tu equipo. Sin migración, sin complementos, sin cuenta.
  • Se queda en tu equipo. Los documentos se comparan en local. La explicación con IA es opcional y solo recibe los fragmentos señalados y los pasajes que todavía usan un nombre o término sustituido.
Probe Desktop · 2 documentos por revisar
  • X Se redujo un rango de la fórmula: algunas celdas ya no se cuentan Presupuesto 2026.xlsx · Presupuesto!B1 · alta

    =SUM(A1:A3)

    =SUM(A1:A2)

  • X Una fórmula se sustituyó por su valor: la celda ya no se actualiza Presupuesto 2026.xlsx · Presupuesto!D2 · alta

    =A2*2

    400

  • W Se suavizó una obligación Contrato de proveedor.docx · Párrafo 2 · alta

    El proveedor deberá entregar antes del 15/03/2026.

    El proveedor podrá entregar antes del 15/03/2026.

  • W Se cambió un importe o un porcentaje Contrato de proveedor.docx · Párrafo 3 · alta

    El precio se fija en 12.000 € sin IVA.

    El precio se fija en 15.000 € sin IVA.

Probe para código

Los asistentes de IA escriben pull requests grandes muy deprisa. Probe te dice qué líneas leer primero: relaciona el diff con señales de riesgo, ejecuta tus comprobaciones en contenedores desechables, intenta reproducir los problemas con tests diferenciales y te entrega un plan de revisión enfocado con evidencias trazables. Una herramienta de línea de comandos para Windows, Linux y macOS, y un hub en Docker para toda una cuenta de GitHub o GitLab. Pruébalo en 2 minutos →

Probe para código · El proceso

Conoce el impacto antes de que exista el código. Revisa solo lo que te necesita.

El código escrito por IA se vuelve predecible cuando el agente anuncia antes su trabajo. Probe mide el riesgo del plan antes de escribir código y después comprueba que el cambio hizo exactamente lo anunciado. Un cambio que sigue un plan de bajo riesgo y supera sus comprobaciones puede fusionarse sin que una persona lea el diff; todo lo demás pasa a revisión, con los motivos.

  1. Planifica y comprueba la intención

    probe plan hace que el agente simule el cambio en solo lectura. Reglas fijas, no el modelo, señalan las rutas críticas, los cambios de API pública y de dependencias, y el código muy utilizado o sin tests. Un plan señalado pasa a una persona antes de escribir código.

  2. Un agente programa el plan

    El plan se convierte en un contrato: los archivos, símbolos y dependencias que el agente puede tocar. Implementa eso, y solo eso.

  3. Comprueba la conformidad

    probe review --plan reevalúa el plan, ejecuta las comprobaciones en el sandbox y compara el diff con el contrato: se informa de cada archivo no planificado, cambio de API no anunciado, ruta crítica o dependencia.

  4. Fusiona o revisa

    Cambio conforme, plan de bajo riesgo, comprobaciones superadas, nada más señalado: no se requiere revisión humana, código 0, el pipeline fusiona. En caso contrario, código 2: una persona revisa la pull request, empezando por los motivos enumerados.

Código 0 merge

  1. El plan, reevaluado en el momento de la revisión, no señaló ninguna categoría de riesgo y se midió por completo.
  2. El diff se mantiene dentro del plan: ningún archivo, API, ruta crítica ni dependencia no planificados.
  3. Todas las comprobaciones pasaron; ninguna señal alta, problema reproducido ni área sin verificar.

Código 2 revisión humana

  1. El plan toca algo crítico, público o muy utilizado, o no se pudo medir.
  2. El cambio se desvió del plan.
  3. Una comprobación falló o el informe encontró algo que mirar. Se enumeran todos los motivos.
# 1. before coding: plan, and let a human validate a flagged plan
probe plan --intent-file task.md --ci
# 2. the agent implements .probe/PLAN.json
# 3-4. in CI: conformance, checks and the gate (exit 0 = merge, 2 = review)
probe review --base origin/main --plan .probe/PLAN.json --ci
Plan conformance: conforming; 0 high, 0 medium, 0 low differences from the plan.
Plan gate: no human review required (low-risk plan, conforming change, checks passed, nothing else requests review).

El gate es una decisión de proceso, no una prueba de corrección: tu política de confianza decide qué es crítico y qué tests se ejecutan, y ante cualquier duda el cambio pasa a una persona. Cómo decide el gate.

Tests, vet, build y coverage pasaron en este cambio. Sin embargo, también eliminó la validación del importe de los reembolsos y permitió que el rol de soporte emitiera reembolsos. Probe puso ambos problemas al principio del plan de revisión, entre 19 líneas señaladas de 125.

Probe para código · Por qué ahorra tiempo

Deja de leer de arriba abajo los diffs generados por IA.

Lo costoso de revisar una pull request asistida por IA no son las líneas de riesgo. Es encontrarlas entre las funciones auxiliares, los tests y la documentación que las rodean, y después averiguar si una sospecha es real. Probe hace esa criba y reúne las evidencias antes de que abras el diff.

Sin Probe cada línea, la misma atención

  1. Hacer checkout de la rama y ejecutar a mano tests, vet y build.
  2. Leer 125 líneas modificadas en el orden de los archivos, las funciones auxiliares primero.
  3. Darte cuenta, con suerte, de que una llamada de validación desapareció de un flujo de reembolso.
  4. Escribir un test desechable para averiguar si importa.
  5. Aprobar sin un registro de lo que realmente se comprobó.

Con Probe primero el riesgo, con evidencias

  1. Las comprobaciones ya se ejecutaron en un contenedor aislado, con registros y hashes.
  2. Abrir el informe: 19 líneas señaladas, ordenadas por gravedad, con sus motivos.
  3. Empezar por payment/refund.go, donde el informe muestra la validación eliminada.
  4. Dejar que el revisor opcional intente reproducir el problema en la base y en el candidato.
  5. Conservar los informes Markdown y JSON como registro de la revisión.

Menos que leer primero

Una superficie de revisión sin duplicados, contada en líneas realmente modificadas, de modo que los grandes cambios generados se reducen a las partes que tocan autenticación, pagos, validaciones, dependencias o API públicas.

Sin preparación local por cada PR

Tus comandos de test, typecheck, build y coverage se ejecutan en contenedores desechables y sin red. Nada del candidato se ejecuta en tu máquina.

Sabe cuándo parar

Las áreas no verificadas y las comprobaciones incompletas se enumeran explícitamente, y --ci las convierte en un código de salida. Sabes qué se cubrió y qué sigue necesitando tu criterio.

Probe para código · Informe de ejemplo

Lo que abres en lugar del diff en bruto

Extracto de .probe/CONFIDENCE_REPORT.md, generado por probe review HEAD~1..HEAD --reviewer=false --ci (v0.3.0) en el repositorio de una pequeña tienda. El commit añadió funciones auxiliares de catálogo con tests, rehízo los reembolsos y tocó la autorización. No se usó ningún proveedor de IA.

.probe/CONFIDENCE_REPORT.md
## Change Summary
120 additions / 5 deletions · 5 files changed
Exit code: 2. No confidence percentage is assigned.

## Automated Checks1
- PASS test      (check-1; exit 0; 5982 ms)
- PASS typecheck (check-2; exit 0; 4866 ms)
- PASS build     (check-3; exit 0; 2835 ms)
- PASS coverage  (check-4; exit 0; 6416 ms)

## Reproduced Issues2
No issue was reproduced by a passing baseline
and failing candidate experiment.

## Suggested Human Review3
- high auth/auth.go:7 (new): Authentication or
  authorization function body changed
- high payment/refund.go:21–22 (new): Payment-sensitive
  function body changed
- high payment/refund.go:25–26 (new): Exported Go
  declaration added; Payment-sensitive function body changed
- high payment/refund.go:21 (old): Configured sensitive
  path changed; No nearby test file changed;
  Possible input validation removed
- medium catalog/format.go:9 (new): Exported Go
  declaration added
  … 11 more medium signals in catalog/

## Review Surface4
Focused review: 19 / 125 changed lines.

## Changed-line Execution5
Of 67 added Go lines, 44 were executed at least once,
0 were not executed, 23 are not inside any
instrumented block.
  1. Las comprobaciones están hechas, y no son la respuesta. Todos los comandos configurados pasaron en un contenedor aislado. Precisamente por eso importa el resto del informe.
  2. Evidencias, no opiniones. Un problema reproducido necesita un test que pase en la base y falle en el candidato. Sin un proveedor de IA, aquí no se afirma nada, y el informe lo indica.
  3. Tu orden de lectura. Primero las señales altas: cambiaron una regla de autorización y un flujo de reembolso, y se eliminó una llamada de validación sin ningún cambio de tests cercano. Ahí está el error.
  4. El tamaño de la tarea. 19 de las 125 líneas modificadas llevan una señal. Léelas primero y después decide cuánto del resto merece atención.
  5. Una observación, no una prueba. El nuevo código de reembolso se ejecutó durante los tests, pero ningún test verifica la comprobación del importe. Probe informa de la ejecución, pero nunca la presenta como prueba de que el código esté testeado.
Probe para código

Cómo funciona

  1. Compara commits inmutables

    Ambas referencias se resuelven en ID de commit. Se gestionan los renombrados, las eliminaciones, los binarios y la semántica de la base de merge; solo se revisan los archivos confirmados, así que las ediciones locales nunca se cuelan en el resultado.

  2. Recopila señales de riesgo

    La comparación del AST de Go, las heurísticas léxicas etiquetadas y las reglas de rutas sensibles señalan autenticación, pagos, dependencias, validaciones eliminadas, construcciones inseguras y tests ausentes en Go, TypeScript/JavaScript, Python y Rust.

  3. Ejecuta en un sandbox

    Tus comandos de test, typecheck y build se ejecutan como arrays argv en contenedores desechables, sin root y sin red, con límites de CPU, memoria, PID y tiempo.

  4. Reproduce, no afirmes

    Un revisor opcional escribe tests temporales. Un test que pasa en la base y falla en el candidato respalda un problema reproducido; todo lo demás queda como UNVERIFIED.

De una primera prueba a todas las pull requests

Pruébalo en tu último commit sin configuración, sin Docker y sin clave de API. Cuando lo adoptes, haz commit de una política en tu rama base: se lee desde la base, así que una pull request no puede relajar sus propias reglas.

Sigue la guía de primeros pasos →

# try it: compare with the previous commit
probe lint HEAD~1..HEAD

# adopt it: once, in your repository
probe init
git add .probe.json && git commit -m "Add review policy"

# on every pull request
probe review --base main --ci
Probe para código · Docker

O ejecútalo para toda una cuenta: Probe Hub

El hub es la imagen Docker complementaria. Ejecuta un contenedor, inicia sesión con GitHub o GitLab, y a cada repositorio que todavía no tenga un .probe.json se le propone una política con un clic, con vista previa antes de hacer commit en la rama predeterminada.

Los repositorios que tienen una política se pueden vigilar: cada nuevo commit se analiza y su informe se abre solo. Un control deslizante de gravedad filtra las alertas de baja a crítica y, al hacer clic en una, se despliegan todas las modificaciones a las que afecta, con las líneas señaladas resaltadas en el diff.

Un contenedor Docker, sin base de datos ni servicios externos, para que una empresa pueda desplegarlo internamente con su propia instancia de GitHub Enterprise o GitLab. En su modo predeterminado, nunca ejecuta el código analizado.

Alojado en app.probe.technology: la misma imagen que puedes ejecutar en tu propia red.

# one container, on your own network
$ docker run -p 8080:8080 \
    -e PROBE_HUB_BASE_URL=https://hub.example.com \
    -e PROBE_HUB_GITHUB_CLIENT_ID=... \
    -e PROBE_HUB_GITHUB_CLIENT_SECRET=... \
    -v hub-data:/var/lib/probe-hub \
    gvinsot/probe-hub

Sign in · bootstrap the missing policies · watch pushes
Reports open by themselves, filtered by severity.
Probe para código

Capacidades

Superficie de revisión enfocada

Rangos de revisión sin duplicados, con coordenadas antiguas y nuevas, contados en líneas realmente modificadas y ordenados por gravedad.

Evidencias diferenciales

Los tests generados se ejecutan sobre la base y el candidato en entornos nuevos. La ejecución de Go se verifica a partir de eventos de test estructurados.

Ejecución de las líneas modificadas

Mide opcionalmente qué líneas de Go añadidas ejecutó una ejecución registrada; se presenta como una observación, nunca como prueba de que estén testeadas.

Análisis de impacto

Un índice estático de Go, TypeScript/JavaScript, Python y Rust enumera los llamadores sin cambios de cada función modificada y los tests existentes que la alcanzan.

Tests en ambas revisiones

Los tests afectados, los tests base modificados, el fuzzing diferencial y la mutación de las líneas añadidas se ejecutan sobre la base y el candidato, y se registran como evidencias, nunca como un veredicto.

Planifica y después comprueba el alcance

probe plan evalúa el plan de un agente antes de que exista el código; después, --plan señala cada archivo o API exportada que el cambio tocó sin anunciarlo.

Revisor de IA acotado

Usa cualquier proveedor compatible con OpenAI. Las herramientas están acotadas: lectura de archivos redactados, búsqueda y ejecución de tests. Sin shell ni descarga de URL.

Listo para CI

Un workflow reutilizable de GitHub Actions, códigos de salida con significado, informes JSON con ID de commit, evidencias y hashes de artefactos, además de SARIF y un comentario de PR que solo contiene hallazgos respaldados por evidencias.

Pensado para agentes

Los agentes de programación ejecutan lint y review antes de entregar el trabajo, e informan de lo que se reprodujo y de lo que sigue abierto.

Lo que Probe no afirma

Una herramienta de revisión se gana la confianza siendo precisa sobre sus límites. Probe no asigna porcentajes de confianza y nunca aprueba un cambio por la palabra de un modelo. Para el código, solo prescinde de la revisión humana a través del plan gate, cuando se siguió un plan de bajo riesgo y todas las comprobaciones automáticas salieron limpias. Para los documentos, siempre decide una persona.

  • Las señales son motivos para investigar, no errores confirmados.
  • Que los tests pasen y la superficie de revisión sea pequeña no garantiza la corrección.
  • Una línea ejecutada es una observación, no una prueba de que esté testeada.
  • La afirmación de un modelo nunca es una evidencia; solo lo es una diferencia reproducida.
  • El plan gate indica que se respetó el alcance anunciado y de bajo riesgo, no que el código sea correcto.
  • La ejecución nunca recurre a tu máquina cuando falta Docker.
  • Un documento marcado como revisado es una decisión humana, no una garantía de que sus cifras sean correctas.
  • Un documento sin hallazgos también cambió: la lista completa de cambios queda a un clic.

Dedica tu tiempo de revisión a lo que importa.

Código abierto, con licencia AGPL-3.0. Una herramienta de línea de comandos para el código y una aplicación para los documentos, ambas publicadas en cada versión.