audenAI

DEVELOPER GUIDE · 20 OCTOBER 2026

Install Auden AI Checker from GitHub

Auden’s public-page checker is now available as source code on GitHub. It helps you inspect what one public HTML page says about one buyer question, then saves a local report you can review. It uses Python’s standard library, requires no API key and makes no paid AI-model calls.

This guide explains how to download the code, run its built-in demonstration, inspect a public page and interpret the results responsibly. The project is a local command-line prototype. Its output is a starting point for human review, not a ranking forecast or an AI visibility score.

Open the public GitHub repository. The instructions below were checked against commit 4851f0c, published 19 October 2026. At this review, the repository had no published versioned release or tags. “Available on GitHub” means that the source is public; it does not imply a packaged installer.

What the checker does

Give the checker a public HTTPS page and a short question. It checks the destination and its robots policy, retrieves the supported HTML response, extracts static text and compares words in that text with words in your question. It produces three files: report.html, report.json and report.txt.

The report separates observations, lexical overlap and things not tested. Observations include the page title, headings and short source excerpts. Lexical overlap means matching words after normalization and removal of common words. It is not semantic understanding. A page can repeat a buyer’s terms while giving an incomplete, outdated or incorrect answer.

The checker examines one page. It does not recursively crawl your website, execute JavaScript, log into an account or retrieve linked assets. It does not test indexing, rankings, AI recommendations, factual accuracy or conversions. Those boundaries matter when deciding what action to take from a report.

Before you start

You need Python 3.11 or newer and a terminal. The Git download route also requires Git. If you already have these tools, no package installation, dependency manager, API subscription or model account is needed for this repository. Check your Python version:

python3 --version

The commands below use the python3 executable shown in the repository documentation. If your computer uses a different Python command, confirm that it starts Python 3.11 or newer before substituting it. If Python or Git is missing, use your normal approved installation process; neither is installed by this checker.

Use public, non-sensitive inputs. The question stays local, but the destination server receives the requested URL and normal connection information. Your shell may retain the command, including the question, in its history. The generated reports also contain your question and page details. Do not use confidential customer information, credentials or private account URLs.

Step 1: download the public source

From a directory where you keep local projects, clone the verified repository and enter the new folder:

git clone https://github.com/nitinraj78/auden-ai-checker.git
cd auden-ai-checker

Alternatively, use GitHub’s Code menu to download the ZIP, extract it and open a terminal inside the extracted project directory. The working directory should contain README.md, demo.py and the acheck directory. The commands in this guide run from that directory.

Read the README before running a new copy. This is source code, so future commits may change behavior. If reproducibility matters, save the commit identifier with your notes rather than describing every checkout as the same version. This article’s checked commit is linked above.

Step 2: try the synthetic demonstration

The easiest first run uses the included demonstration:

python3 demo.py

This generates a demo-report directory without making a network request. Open demo-report/report.html in your browser, or inspect the text and JSON files in the same folder. The program prints: “Synthetic report generated; no network request made.”

The demonstration is synthetic. It uses a small built-in solar-workshop page and asks whether the workshop is for beginners and what it costs. Its displayed example URL, successful HTTP status, robots result and timestamp are fixture values. They are not evidence of a real website visit. In particular, the timestamp includes an explicit synthetic-fixture label.

This distinction is useful for learning the report. The sample text discusses solar panels and beginners, while the question also asks about cost. The tool can surface the unmatched word as a review prompt. It cannot conclude that the real business has no price or that a different page fails to answer the question.

Step 3: inspect one public page

The repository documents this ordinary command:

python3 -m acheck https://example.com/ 'What is this domain for?' --output ./my-review

Replace the URL and quoted question with a public page and a relevant, non-sensitive buyer question when you are ready. Keep the question quoted so the shell passes it as one argument. Choose a new output directory under an existing parent. The ordinary checker refuses to reuse an existing output directory, which helps prevent accidental overwriting.

After a successful fetch and analysis, the command reports that it saved the three report files. Open my-review/report.html for a readable view. Use report.txt for plain-text review or report.json for structured inspection. Keep all three together if you want the HTML report’s local download links to work.

The command above is the documented public-page example, not a promise that any destination will be reachable from every network. A stopped fetch does not establish that a page is unavailable to Google, an AI service or ordinary visitors. The checker intentionally applies its own narrow rules.

How to read the report without overclaiming

Start with the observations

Check that the source URL, title and headings correspond to the page you intended to inspect. Then open the source page and read the relevant passage in context. Reports contain short excerpts, not complete page copies. A clipped passage may omit an important qualification or the next sentence.

Static HTML extraction is also different from a rendered browser page. The checker excludes explicitly hidden containers and executable content, but does not evaluate external CSS or JavaScript. A missing section could be rendered by JavaScript, located elsewhere or simply outside what this single fetch recovered.

Treat word matches as pointers

Matching terms tell you where to look. They do not tell you whether an answer is useful or true. For example, a service page might contain “price” only in a sentence saying “contact us for price.” That is a lexical match, but a buyer comparing fixed costs may still need more information.

The opposite also happens. A page may answer a question using different wording. A question about “cost” might be answered under “fees,” without sharing the exact word. Review meaning yourself instead of rewriting good content merely to increase overlap.

Keep “not found” local to this fetch

The report uses “not found in fetched content.” Preserve that wording when sharing findings. It is narrower than “missing from the website.” Before assigning an edit, check the original page, nearby sections and other relevant pages. Record which evidence supports the proposed change.

A useful review note has three parts: the buyer’s unresolved question, the applicable source passage and the proposed clarification. For example: “The service page explains monthly billing but does not state the included review frequency in the fetched text; confirm the actual frequency with the service owner before adding it.” That is actionable without pretending the tool verified the commercial facts.

Why some URLs stop before a report is created

The checker accepts public HTTPS DNS hostnames on port 443. It rejects query strings, fragments, embedded credentials, IP-literal URLs, suspicious credential paths and non-public DNS answers. These deliberately strict rules can reject legitimate public pages. Do not remove the checks just to make a demonstration succeed.

Robots checks apply to the checker’s own user agent, AudenPageCheck. They are not tests of Googlebot or any AI crawler. Robots failures, cross-origin robots redirects and positive pacing policies stop this one-shot checker. A page fetch must also satisfy its TLS, response, encoding and size rules.

The documented limits include three redirects, 128 KiB on the wire, 512 KiB decoded per response and a 20-second isolated-process deadline. Only UTF-8 HTML and the supported identity, gzip or deflate encodings are accepted. A large or unsupported response may therefore stop even when a browser opens the page normally.

When a run stops, read its message and check your input against the README. Confirm that the parent output folder exists and choose a fresh output directory. Do not interpret a transport failure as an SEO diagnosis, a missing-content finding or evidence of poor AI visibility.

Optional: run the repository’s checks

The project includes synthetic tests and mocked transport and DNS checks. Run them from the repository root:

python3 -m unittest discover -s tests -v
python3 -m compileall -q acheck tests

For this editorial verification on 22 October 2026, all 33 included tests passed on Python 3.14.7. That is evidence that the included suite passed in this environment. It is not a security certification, a promise of compatibility with every machine or proof of ranking impact. The tests cover such behaviors as URL rejection, robots handling, report escaping and refusal to overwrite an existing ordinary report directory.

Where this fits when choosing GEO help

If you are searching for the best GEO agency for your business, ask providers to distinguish a fetched observation from a judgment and a business outcome. This small checker illustrates that separation. A local report can support a conversation about a page, but it cannot establish which agency is best or whether a visitor will convert.

Ask who will verify facts, decide which changes matter, implement them and evaluate their effect. Require a source-backed explanation for each important recommendation. Compare completed work and useful customer actions with the agreed scope, rather than treating a tool-generated number as the outcome.

For the broader research and measurement process, read Auden’s practical GEO and AEO buyer guide. You can also explore Auden’s resources and our approach to research and website improvements.

License and responsible reuse

The repository uses the MIT license, copyright 2026 nitinraj78. Read the license before redistributing or modifying the source and preserve its required notice. The software is provided without warranty.

Keep the project local for this workflow. Its README explicitly says not to expose the CLI as an unauthenticated web endpoint; public hosting would require a separately reviewed deployment architecture and operational safeguards. No hosted service is needed to follow this guide.

Editorial verification: reviewed 22 October 2026 against the linked public repository, README, implementation and included tests. This guide describes a public-source local prototype and its documented limits. It makes no claim about search rankings, AI citations, acquired backlinks or sales outcomes.

YOUR CHOICE

Privacy, simply.

This page has no signup form and does not ask for personal information. Our hosting provider processes basic request information to deliver and protect the website.

Optional analytics stay off until you select “Accept analytics.” When enabled, Google Analytics measures page visits and approach-button clicks, and, only if you select the separate replay option, Microsoft Clarity records page interactions for session replay and heatmaps with strict text masking. Masking does not make this data anonymous. Advertising storage and personalization stay disabled. We do not send names, emails, form contents, query strings, or URL fragments as custom event data.

Global Privacy Control suppresses all optional tracking. Your choice is stored in this browser. Declining keeps optional tracking off. You can withdraw permission using “Cookie preferences”; the page then reloads to stop tracking. Previously collected data is not deleted by withdrawing permission.

How Google uses information ↗

Microsoft privacy statement ↗