Dibuja mi repo

Leer las páginas

GET https://seerepo.com/api/v1/repos/:repo/pages

Devuelve la carpeta Páginas como se lee en la app: cada página con su nombre, su ruta, quién entra y los estados que maneja o le faltan, cada uno con el archivo y la línea que lo prueban. Las páginas van agrupadas por los módulos de primer nivel del mapa, en el orden del mapa.

Petición

Parámetro Dónde Descripción
repo ruta El id del repo, o owner/name con %2F.
curl "https://seerepo.com/api/v1/repos/6ad79fd8e89233277ded17c9/pages" \
  -H "Authorization: Bearer $SEEREPO_KEY"

Respuesta

Campo Tipo Descripción
data.repo object El repo: su id y su nombre.
data.summary object Cuántas páginas hay, cuántas se leyeron, cuántos estados faltan o están a medias y cuántas están listas (ready): las que manejan cada estado que enseñan, la misma cifra del aro de Arreglos en la app. ready es null sin páginas leídas.
data.columns[] object Una por módulo de primer nivel: su key (la ruta del módulo, o / para las páginas que no están en ningún módulo: las de la raíz y las de Data, que la carpeta pone al final como «Fuera de los módulos»), su name y las rutas de sus páginas.
data.screens[].name string Cómo llama una persona a la página.
data.screens[].route string Su dirección, como /checkout.
data.screens[].who string Quién entra: anyone, people (no se vio la puerta: un repo con entrada propia donde ninguna página se probó privada, una vista de Python, o una página de SvelteKit, TanStack, React Router, Vue, Nuxt o Angular cuya puerta aún no se lee; sin afirmar que pidan sesión), with-link, signed-in, member, owner u operator (solo quienes llevan el producto).
data.screens[].whoBy string haiku cuando quién entra lo leyó la IA, con una línea que probó una puerta más estrecha de la que vieron las reglas. No viene cuando lo dijeron las reglas.
data.screens[].states[] object Cada estado: su nombre, ok, half o missing, y su prueba (su ruta, su línea y su url en GitHub en el commit escaneado).
data.screens[].does string|null Qué hace, en una frase.
data.screens[].dropped number Cuántas cosas dijo la IA de la página y la lectura tiró: un estado que las reglas ya leen, uno dicho dos veces o sin una línea que lo pruebe, o quién entra sin una línea que lo pruebe. Nunca se enseñan como ciertas. No viene si no hay ninguna. data.summary.dropped es su suma.
data.rules object La versión de las reglas con que su último escaneo juzgó los estados, la vigente y cada cambio con su fecha (desde el 21 de octubre, «cargando» solo se pide a la pantalla que espera datos): una cifra que se mueve porque cambió una regla lo dice.
data.locked boolean Un repo del vistazo gratis: sus estados vienen como formas (cuántos y cuántos faltan, no cuáles), sin prueba, sin qué hace y sin último cambio, como en la app.
data.screens[].redirects object Solo cuando la página nada más te lleva a otro sitio: su camino normal termina en una redirección y lo único que pinta es su error, o un efecto navega sin condición. La línea que lo hace (path, line y su url en GitHub) y to cuando el código nombra la ruta. Ausente en una página.
data.apart[] object Los archivos de página que no son páginas, por su razón: why (next.devPage, una página que solo sirve desarrollo; next.flagPage, una detrás de una bandera; next.redirectPage, una que solo te manda a otra; next.errorPage, la que sale cuando algo falló), n (cuántas) y routes (las cinco primeras, en orden). No viene si no hay ninguna.
data.unread string python en un repo de Python: Python aún no tiene Páginas, sus vistas se leen por archivo y no se sabe quién entra a cada una. Ausente en otro caso.

Ejemplo

{
  "status": "success",
  "data": {
    "summary": { "screens": 2, "read": 2, "missing": 1, "half": 0, "ready": 1 },
    "columns": [{ "key": "/checkout", "name": "Checkout", "screens": ["app/checkout/page.tsx"] }],
    "screens": [
      {
        "path": "app/checkout/page.tsx",
        "route": "/checkout",
        "name": "Pay",
        "who": "anyone",
        "statesRead": true,
        "states": [{ "key": "error", "name": "Error", "status": "missing", "by": "rule" }]
      }
    ],
    "rules": { "version": 2, "current": 2, "changes": [{ "folder": "pages", "version": 1, "d": "2026-10-21", "id": "pages-1", "what": "Each screen's states read by rules with their proof: loading, error, empty, signed out and phone" }, { "folder": "pages", "version": 2, "d": "2026-10-21", "id": "pages-2", "what": "Loading is asked only of a screen that waits on data; a static page no longer misses it" }] },
    "locked": false
  }
}

Autenticación

Una clave de la API como Authorization: Bearer sr_…. Mira Autenticación.

Errores

Los que tiene todo endpoint (401, 404, 429), mira Errores.