Skip to main content

aeo-kit

Zero-Click AEO toolkit — turn any document, file, or website into LLM-readable Markdown + an llms.txt outline, then index and search it locally. A thin, clean composition of best-in-class open-source parts; it does not reinvent conversion, compression, or vector indexing.

crawl  → ingest → index → search
(site)   (md +    (turbovec) (top-k)
          llms.txt)

Why

"AI Engine Optimization" (AEO/GEO) starts with getting messy real-world content into a form a model can use. aeo-kit composes:

  • markitdown (MIT) — PDF/DOCX/PPTX/XLSX/HTML/CSV → Markdown
  • headroom-ai (Apache-2.0, optional) — compress verbose tool/RAG context 60–95%
  • turbovec — air-gapped quantized vector index
  • a tiny zero-dependency crawler (no AGPL, no hosted API key)

Everything runs locally. No API keys required.

Install

pip install aeo-kit            # core
pip install "aeo-kit[compress]"  # + headroom-ai for context compression

CLI

# 1) crawl a site (local interlinked html or a live URL) -> markdown
aeo-crawl ./site/index.html --out build/site
aeo-crawl https://example.com --max-pages 5 --out build/site

# 2) ingest any file / folder / URL -> per-doc md + site-level llms.txt
aeo-ingest ./company_docs --out build/aeo --compress

# 3) local retrieval over the ingested docs (TF-IDF -> turbovec)
aeo-search build/site "consumption tax filing" --k 3

Library

from adapters import markitdown_aeo as mk
conv = mk.convert("page.html")
print(mk.aeo_extract(conv))     # llms.txt seed from the heading structure

Notes

  • Crawler politeness: HTTP mode is same-domain only, respects robots.txt, rate-limits, and is bounded by --max-pages / --max-depth.
  • Search scope: aeo-search uses TF-IDF (lexical) retrieval over turbovec — no embedding model / network required. Swap in a sentence-transformer for semantic search; the turbovec layer is unchanged.
  • Compression: headroom-ai protects user messages and compresses tool/log/RAG content; clean short prose may compress little, by design.

Develop

pip install -e .
python experiment.py   # end-to-end real run -> poc/out/
python audit.py        # deterministic checks (exit 0 = all pass)

License

MIT (this toolkit). Bundled dependencies are installed separately and retain their own licenses — see THIRD_PARTY_NOTICES.md.

Metadata

Release files for aeo-kit 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aeo-kit 0.1.0
File Size Uploaded Provenance Actions
aeo_kit-0.1.0.tar.gz 15.1 kB Without provenance Details for aeo_kit-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aeo-kit 0.1.0
File Interpreter ABI Platform Actions
aeo_kit-0.1.0-py3-none-any.whl Python 3 none any Details for aeo_kit-0.1.0-py3-none-any.whl

Total release size: 31.8 kB

Release files / aeo_kit-0.1.0.tar.gz

Download URL aeo_kit-0.1.0.tar.gz
Size 15.1 kB
Tags Source
SHA-256 checksum
How to use checksums
dde6691ae15a6fb9573818057856c3ee8541cf27a76ca3dc1b44efe4a04c03e4
BLAKE2b-256 checksum
How to use checksums
0e56675ac32c15a90f73c484403b0d537a862392039e0ecdd57f8fe008fc179d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / aeo_kit-0.1.0-py3-none-any.whl

Download URL aeo_kit-0.1.0-py3-none-any.whl
Size 16.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6f19dd75a174b984f6f9a6a5ee416e7a685f3bbf544f1f046495506f343c9345
BLAKE2b-256 checksum
How to use checksums
e96f394a3d6944c81146caf5116279e0c16875e007b90f616894d2d3cbb5e5e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Security for aeo-kit 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page