Skip to content
Advance Labs

01AEO Toolkit

@advance-labs/net-guard

Any tool that fetches a URL a stranger typed is an SSRF hole until proven otherwise. This is the seam every other package fetches through. Useful on its own to anyone building a URL-taking service, which is why it is published separately rather than buried in the crawler.

npm i @advance-labs/net-guard
02Spec

What the registry says

SSRF-guarded HTTP fetch seam — DNS-resolves and rejects private/loopback/link-local/CGNAT/cloud-metadata addresses, re-validates every redirect hop, caps body size and time, and host-pins to defeat DNS rebinding.

Version
0.2.2
Licence
Apache-2.0
First published
2026-09-10
Types
Ships TypeScript types
Dependencies
@advance-labs/types
Links
npm · Source

Read from registry.npmjs.org on 2026-10-14. The npm page is authoritative if this drifts.

03Alongside

The rest of AEO Toolkit

@advance-labs/scoring

The engine behind our paid audit and the free Chrome extension. The rules are declarative data, not branching code, which is why the extension can run 40 of them client-side and the hosted audit can run 54 without two implementations drifting apart.

@advance-labs/crawler

Sitemap first, links second, and it obeys robots.txt. Bounded on purpose: an audit crawler that hammers a prospect's site is a liability, not a feature.

@advance-labs/html-parser

Extraction with no network access at all. Give it a string of HTML, get back the metadata, heading tree, links and raw structured-data blocks. Keeping fetching out of it is what makes the rule tests deterministic.

@advance-labs/schema-validator

Finds structured data in all three encodings, maps it to schema.org types, and checks the properties an answer engine actually needs rather than every property the spec allows.

@advance-labs/types

The shared vocabulary. Every other toolkit package depends on it and nothing else depends on them, so a type change is one edit rather than six.