entreprenoid measures traffic at your server boundary, so it counts the clients that never run JavaScript — and serves them a clean markdown twin from the same middleware.
import { entreprenoid } from "@entreprenoid/analytics/express";
app.use(entreprenoid());
Nothing loads in a visitor's browser. No client script, no cookies.
See it. Every request classified at the boundary: AI crawlers, fetchers, search bots, agent browsers, humans — with the evidence and the confidence behind each answer.
Fix it. The same middleware serves a markdown twin when a client asks for one, so an agent reads your content instead of your markup.
Accept, never on identityMarkdown goes to a client that asks for it — by requesting .md or sending
Accept: text/markdown. Never because of who we think it is.
Serving different content by User-Agent is cloaking, it forces
Vary: User-Agent and destroys shared caching, and it lets a spoofable string
decide what a visitor receives. A browser always gets the page.
No request bodies. No cookies. No authorization headers. No raw query strings. No form values. A visitor's IP is used for coarse geography and crawler verification, then discarded within 24 hours — what remains is a site-scoped, daily-rotating pseudonym.