AI News HubLIVE
In-site rewrite2 min read

Can AI agents use ur site?

OpenIngress crawls websites, inspects what AI agents can see and interact with, and runs LLM-guided tasks to identify navigation breakpoints. It generates reports on coverage, operability scores, and blocker evidence, helping developers ensure their sites are agent-friendly.

SourceHacker News AIAuthor: manupareekk

Uh oh!

There was an error while loading. Please reload this page.

Notifications You must be signed in to change notification settings

Fork 2

Star 5

BranchesTags

Open more actions menu

Folders and files

NameName

Last commit message

Last commit date

Latest commit

History

3 Commits

3 Commits

backend

backend

deploy

deploy

docs

docs

frontend

frontend

supabase

supabase

.dockerignore

.dockerignore

.env.example

.env.example

.gitignore

.gitignore

CONTRIBUTING.md

CONTRIBUTING.md

DEPLOY.md

DEPLOY.md

DEPLOY_AZURE.md

DEPLOY_AZURE.md

Dockerfile

Dockerfile

LICENSE

LICENSE

Makefile

Makefile

README.md

README.md

SECURITY.md

SECURITY.md

SELF_HOST.md

SELF_HOST.md

package-lock.json

package-lock.json

railway.toml

railway.toml

Repository files navigation

Self-hosted web operability analysis.

Crawl coverage, accessibility-tree inspection, and agent navigation break points.

openingress.dev · Architecture · Quick start · Self-host

Background

The problem

AI agents are starting to browse the web for people — opening pages, clicking buttons, filling forms. A site can look fine in a browser and still be hard for an agent to use: buttons without labels, pages that only load in JavaScript, links that never show up in the page structure agents read.

Being findable (SEO, citations, llms.txt) is not the same as being usable by an agent on the live site.

What OpenIngress does

OpenIngress crawls a site like a browser would, inspects what an agent can actually see and click, then runs LLM-guided tasks against that crawl. The output is a report: which pages were reached, what broke, and where navigation stalled.

Architecture

flowchart TB subgraph crawl["Crawl (Playwright)"] URL[Site URL] --> BFS[BFS page discovery] BFS --> CAP[HTML · screenshots · aria snapshots] end

subgraph analyze["Analyze"] CAP --> STATIC[Static operability] CAP --> GRAPH[Navigation graph] STATIC --> GAPS[Gap taxonomy] end

subgraph explore["Explore (BYOK LLM)"] GRAPH --> CATALOG[Page catalog] CATALOG --> JOBS[Exploration jobs] LLM[OpenAI-compatible API] --> JOBS JOBS --> TRACE[Job traces · blockers] end

subgraph report["Report"] GAPS --> OUT[Coverage + break points] TRACE --> OUT end

Loading

Stage Input Output

Crawl Public URL Page graph, DOM, screenshots, Playwright accessibility snapshots

Analyze Crawl artifacts Operability scores, label coverage, llms.txt, hydration checks, gap taxonomy

Explore Catalog + LLM key Reachability jobs, task attempts, blocker evidence

Report Analysis + job results Readiness metrics, break points, markdown export

Default crawl bounds: depth 3, max 100 pages.

Stack

Layer Components

API Flask, Gunicorn

Automation Playwright (Chromium), Python 3.10+

Exploration OpenAI-compatible LLM (Azure, Gemini, Ollama, local proxy)

UI Vue 3, Vite

Persistence Local filesystem; optional Supabase

Quick start

cp .env.example .env cp backend/.env.example backend/.env cp frontend/.env.example frontend/.env

LLM_API_KEY required in backend/.env

make install make backend # terminal 1 — API make frontend # terminal 2 — UI

Configuration, Docker, and deployment: SELF_HOST.md.

Configuration

Variable Required Description

LLM_API_KEY yes Provider key (OpenAI or compatible)

LLM_BASE_URL no Custom endpoint

LLM_MODEL_NAME no Default gpt-4o-mini

AUTH_DISABLED no Default 1

Runs and exploration require a configured LLM key.

Repository layout

Path Description

backend/ Flask API, crawl/explore workers, report generation

frontend/ Vue dashboard

docs/ Agent brief, Playwright recording notes

Dockerfile Playwright + Gunicorn container

License

MIT

About

Find where AI agents break when navigating your site.

openingress.dev

Resources

Readme

License

MIT license

Contributing

Contributing

Security policy

Security policy

Uh oh!

There was an error while loading. Please reload this page.

Activity

Custom properties

Stars

5 stars

Watchers

1 watching

Forks

2 forks

Report repository

Releases

No releases published

Packages 0

Uh oh!

There was an error while loading. Please reload this page.

Contributors

Uh oh!

There was an error while loading. Please reload this page.

Languages

Python 69.0%

Vue 13.8%

CSS 11.6%

JavaScript 4.2%

Shell 0.9%

PLpgSQL 0.3%

Other 0.2%