SlopGradeby Maxor Global LLC
Iniciar sesiónEmpezar
Gate CI · código escrito por IA

La IA escribe tu código.
slopGrade decide: pasa o bloquea.

Un gate determinista en cada PR. El slop y las fugas cross-tenant nunca llegan a main — sin nota, sin debate.

Cliente open-source — audita cada línea. 11 clases open-source bloquean gratis para siempre, sin tarjeta. Activa las 124 completas cuando confíes en el gate.
0 egressOIDC sin clavese instala en 2 min
PR #128acme/billing-apigate en vivo
Enviado · el gate lee el diff
export async function listInvoices(orgId){- return db.from('invoices').select('*') }
!Bloqueadoconsulta sin filtro de org · fuga cross-tenant
corrección enviada
Reenviado · el gate se re-ejecuta
export async function listInvoices(orgId){+ return db.from('invoices').select('*').eq('org_id', orgId) }
Pasafiltro org_id añadido · listo para merge
Merge desactivado mientras el check slop está en rojo
Solo lectura de tus diffs Solo escribe un estado de check 0 egress — el código nunca sale de tu runnergate en vivo
01El problema

Tu equipo mergea código que ningún humano escribió.

Los agentes de IA abren PRs más rápido de lo que la revisión aguanta. El slop pasa, las consultas olvidan el filtro de org, una clave se filtra en un log. A escala, la revisión humana no atrapa nada — necesitas un gate determinista, no una opinión.

02Cómo funciona

Un bucle: detecta → bloquea → verifica

El gate vive en tu CI de GitHub Actions. Lee el diff de cada PR, decide, y escribe su veredicto como un check requerido. Ningún código sale de tu runner.

detectabloqueaverifica
01 · instala

Copia el snippet

Un workflow de GitHub Actions pegado en tu repo. OIDC sin clave — nada que guardar.

- uses: slopgrade/ci@v0.3.1
02 · detecta

La PR se abre

El gate lee el diff en el runner y lo clasifica contra {gates} clases de slop y de fuga tenant.

$ slop scan --diff origin/main…HEAD
03 · bloquea

Veredicto pasa / bloquea

Un check requerido, verdadero o falso. Rojo → el merge se desactiva por el ruleset de rama.

slop · blocked → merge disabled
04 · verifica

La corrección pasa a verde

El agente corrige, reenvía, el gate se re-ejecuta. Verde → la PR vuelve a ser mergeable.

slop · pass → ready to merge
sin riesgoEmpieza en advisory en todos tus repos — señala los rojos sin bloquear nada. Mira lo que atrapa en tus PRs reales, y pasa a bloqueante cuando confíes en el gate.
03El firewall

124 clases de gate. 5 capas. 0 falsos positivos.

La fuga cross-tenant — una consulta sin filtro de org — es la clase que CodeQL y la revisión humana se saltan, y es nuestra #1. El moat no es el mecanismo: es el rulepack curado, turnkey, calibrado a cero falsos positivos sobre 5 000+ repos reales antes de cada release. Lo activas; no lo escribes.

Gratis · open-source · para siempre
11 clases open-source
Las catástrofes no ambiguas — advisory en todos tus repos, bloqueante gratis en un repo privado y cada repo público. Audita el cliente, forkéalo.
SQLiInyección cmdXSSSSRFXXEDeserializaciónPath traversalSecretos hardcodeadosCripto rotaCORS
Firewall · bloqueante
124 clases
Las otras 113 clases closed-source + taint inter-procedural + breadth Go/.NET/Java + calibración cero-FP. El gate que bloquea de verdad el merge.
Cobertura del rulepack11 gratis · 124 bloqueantes
11 clases open-source — bloquean gratis124 clases — bloqueante, de pago
Clases por categoríacatálogo live
Inyección6149%
Cripto2621%
Auth1512%
Infra1512%
Acceso54%
Supply-chain22%
L1

Aislamiento tenant

Cada consulta org-scoped debe llevar su filtro. La fuga cross-tenant #1 en prod, atrapada antes del merge.

L2

Secretos e inyección

Claves hardcodeadas, SQL/comando/XXE/SSRF, deserialización — el grueso del catálogo.

L3

Cripto y auth

Algoritmos débiles, claves cortas, padding RSA, CORS reflejado, control de acceso faltante.

L4

Slop determinista

Números inventados, guardas muertas, controles nativos hand-rolled — la fórmula, nunca un LLM.

L5

Split físico, 0 egress

La extracción se queda en tu runner; solo sale un veredicto. El código no viaja.

04El catálogo

Cada clase, con el código que bloquea.

Una muestra de las 124 clases — por categoría, cada una con el patrón exacto que atrapa antes de que llegue a main. La detección corre en tu runner; esto es lo que busca.

Acceso5
Cross-tenant · access-control
db.from('invoices').select('*')
Una consulta sin filtro de org — las filas de cada tenant se filtran en prod.
RLS · SECURITY DEFINER
create view billing as select * … security definer
Una vista definer que salta la seguridad a nivel de fila.
Mass-assignment
User.create(req.body) // is_admin passes through
El cuerpo de la petición ligado directo al modelo — los campos de privilegio pasan.
Inyección61
SQL injection
db.query('select * from u where id = ' + req.params.id)
Entrada de usuario concatenada en una cadena SQL.
Command / code
exec('convert ' + req.query.file)
Entrada de usuario que llega a un comando de shell.
SSRF
fetch(req.query.url) // hits 169.254.169.254
Un fetch del servidor a una URL controlada por el usuario — alcanza el endpoint de metadatos.
XXE
libxml.parseXml(body, { noent: true })
XML parseado con entidades externas activadas.
Auth15
JWT alg-none / bypass
jwt.verify(t, key, { algorithms: ['none'] })
Un token aceptado con el algoritmo «none» — falsificable.
Hardcoded secrets
const stripe = 'sk_live_4eC39Hq…'
Una clave live commiteada en el código (y el historial git para siempre).
CSRF disabled
app.use(csrf({ ignoreMethods: ['POST'] }))
La protección CSRF desactivada en una ruta mutante.
Cripto26
Weak crypto
crypto.createHash('md5').update(password)
MD5 / SHA-1 donde hace falta un hash de contraseña.
TLS-verify off
new https.Agent({ rejectUnauthorized: false })
La verificación del certificado desactivada en una llamada saliente.
Static / hardcoded IV
createCipheriv('aes-256-cbc', key, ZERO_IV)
Un IV reusado / a cero — el mismo texto cifra idéntico.
Supply-chain2
CI/CD mutable pins
uses: some/action@main # not a SHA
Una acción CI fijada a una rama, no a un SHA — reemplazable en silencio.
Mutable deps · slopsquat
"lodahs": "*" // typo'd name, floating range
Un rango flotante sobre un nombre de paquete typo-squatteado.
Infra15
IaC open-ingress
cidr_blocks = ["0.0.0.0/0"] # port 22
Un security group abierto a 0.0.0.0/0 en SSH.
Docker unpinned
FROM node:latest
Una imagen base en :latest — no reproducible, deriva.
Debug mode in production
DEBUG = True
El modo debug dejado activo en producción.

Ver las 124 clases →

05Vs las alternativas

No es otro escáner. Un gate llave en mano.

CodeQL y Semgrep son motores que configuras y calibras. La revisión humana no sigue el ritmo de los PR de agentes. slopGrade es el rulepack curado que activas — 124 clases calibradas a cero falsos positivos sobre 5 000+ repos reales, incluida la fuga cross-tenant que de otro modo escribirías y calibrarías tú mismo.

slopGrade
CodeQL
Semgrep
Revisión humana
Instalación
Un snippet de workflow · OIDC sin clave · 2 min
Escribe tus propias queries
Redacta y calibra las reglas
Contrata y agenda revisores
Fuga cross-tenant (#1)
Curada y calibrada — la clase estrella
Escribe y calibra la query
Redacta la regla
Invisible al ojo
Falsos positivos
Calibrado a 0 sobre 5 000+ repos
Calibrar por repo
Notoriamente ruidoso
Fatiga a volumen
Veredicto
Pasa / bloquea — un check requerido
Lista SARIF
Lista de findings
Un hilo de comentarios
Tu código sale del runner
Nunca — 0 egress, split IP
Local al runner
Cloud o local
n/a
Aguanta el ritmo de PR de agentes
Determinista, cada PR
Sí, si se mantiene
Sí, si se mantiene
No
06La prueba
124
clases de gate
Derivado del catálogo live — 6 categorías, crece cada semana.
5,000+
repos de calibración
Cada clase alcanza 0 falsos positivos sobre el corpus antes del release.
0 egress
el código no sale
Split IP: extracción en tu runner, clasificador cerrado del lado servidor.
2 min
para instalar
OIDC sin clave, un snippet de workflow, protege main.

Determinista por diseño · cliente open-source, auditable · lo corremos sobre slopGrade mismo antes de que te llegue.

07Precios

Advisory gratis para siempre. Desde $24 por repo, decreciente.

Pagas por lo que proteges, no por cabeza. Un repo dormido cuesta $0 — y mientras más proteges, menos cuesta cada repo. Usuarios ilimitados, siempre.

Comparar planesVe cada fuga gratis. Bloquea el merge cuando estés listo.
Free · advisory$0 / siempre
El productoFirewall · bloqueantedesde$24 / repo / mes
Clases cubiertas
11 críticas
124 clases
Modo
Advisory — señala los rojos
Bloqueante — ruleset de rama
Repos
Todos los repos · 1 privado + todos públicos bloqueantes
N repos privados (slots)
Análisis taint
Intra-función
Inter-procedural + cross-file
Breadth lenguajes
Base
+ Go / .NET / Java
Aislamiento tenant
Señalado
Enforced
Cliente open-source
auditable
auditable
Calibración 0-FP
5 000+ repos
Precio por repo · decreciente a volumen
1–4$24 /repo
5–10$15 /repo
el más común11–20$11 /repo
Hasta 20 repos privados en la curva graduada — desde $11/repo. 20 repos = $296/mes. Más allá de 20, Team es plano $299/mes, ilimitado. Un repo inactivo sigue en $0.
Más allá del per-repo
Team — $299/mes plano · repos privados y usuarios ilimitados · las 124 clases
Enterprise — negociado · SSO-SAML, motor self-hosted air-gap, packs a medida, SLA
14 días gratis
Sin tarjeta. Hasta 5 repos. Nada cobrado; sin tarjeta el día 14, la prueba termina.
Después de la prueba
Quédate los repos que quieras — o vuelve a advisory gratis. Sin interrupción, sin factura sorpresa.
Una fuga atrapada
Una sola fuga cross-tenant detenida antes del merge = años de suscripción. El gate se paga solo una vez.
08FAQ

Respuestas directas.

Q¿Qué es slopGrade?

Un gate CI determinista para código escrito por IA: en cada pull request de GitHub decide pasa o bloquea antes de que el código llegue a main. Sin nota, sin debate.

Q¿El código sale de mi CI?

No — 0 egress. La extracción se queda en tu runner de GitHub Actions; solo sale un veredicto. El código no viaja (split físico).

Q¿Cuánto cuesta?

El advisory (escaneo sin bloqueo) es gratis para siempre en todos tus repos. El modo bloqueante cuesta $24 por repo al mes, hasta $11 a volumen.

Q¿Hay una prueba gratis?

Sí: 14 días gratis, hasta 5 repos, sin tarjeta de crédito. Al terminar, te quedas los repos que quieras o vuelves a advisory gratis.

Q¿Qué detecta el firewall?

Las 11 clases más críticas bloquean gratis (cliente open-source); el firewall completo cubre 124 clases en seis categorías — inyección, cripto, infra, auth, acceso, supply-chain — incluida la fuga cross-tenant #1. Calibrado a 0 falsos positivos sobre 5 000+ repos reales.

Pon un gate entre la IA y tu rama main.

Crea una cuenta, pega el snippet, protege tu primer repo en dos minutos. 14 días gratis, hasta 5 repos, sin tarjeta.