September 30, 2026
Introducing Fortress
a countermeasure for the counter-cognition web
until 1727 the ottoman empire refused the printing press for its own script. a manuscript moved at the speed of the man copying it. it could be licensed, traced, and if need be found and burned. a printed text was in a thousand hands by morning, made by anyone who owned a press, and there was no calling it back. the scribes and the clerics who oversaw them could control a text while it was slow. they had no way to control it once it was fast, and building one would have meant giving up the control they had, so they refused the press instead. europe printed and the ottomans copied. more books made more readers, more readers made more books, and within two centuries the gap in what each side knew became a gap in what each side could do. the press came in the end, under licence, once europe had printed too much to ignore. i believe the knowledge gap is one of the reasons the empire fell.
the web is refusing a new kind of progress the same way.
today, agents browse pages on your behalf, faster than you can, and judge what they mean together. one agent reads the rental listings in a city and tells you which landlords raised rents after the new law. a thousand of them read the whole country daily, and you can watch the entire housing market move. do the same for prices, jobs, drug shortages and court filings, and the public web turns from a billion pages nobody has read together into one record anyone can question. print gave europe compounding once, when more books made more readers and more readers made more books. this is the same curve with agents as the reader, and the ceiling is the whole web.
the gate against it runs on most large sites, and it works by reading you first. before the cookie banner appears, and after you decline it (or ignore it like i do), a script takes your connection's fingerprint, your graphics card, your fonts, your screen, and the way your mouse moves, and scores you against what it has seen of that device on every other site the same vendor guards. its makers call this security, so nobody asks your permission. then it decides whether you are software, and if it thinks so, it stops you.
it is wrong often. people on vpns, on privacy browsers, on shared addresses, get the challenge page for looking unusual. and it is wrong in the other direction too. a well-funded operation rents residential addresses by the gigabyte and reads whatever it wants. what the gate reliably stops is the researcher, the small operator, the journalist, and anyone whose agent arrives without a budget behind it. the site reads all of its visitors at once and refuses to be read the same way, unless you pay. (as long as you can throw money at the problem, you are chilling)
nobody inside the gate has a reason to change this. the vendor is paid by the sites it protects, and it reports to them how many visitors it blocked. a blocked visitor is a success in that report (and therefore a reason to get paid). a legitimate reader who was refused and left does not appear as legitimate in it at all, because there is no way to count someone who never got in. the sites see the same report, so they never see what the gate costs them.
so what is the gate actually looking at when it decides you are software? think of a bouncer who never asks for your id. he can't, because on the web there is no id. so he judges you on everything else, and he has four things to look at.
the first is where you're calling from. every connection carries an address, and the bouncer knows which addresses belong to homes and which belong to server farms.
the second is how your browser says hello. before any page loads, your browser and the site agree on how to encrypt the conversation, and the exact way a browser makes that offer is like an accent. real chrome has one accent. a tool that pretends to be chrome but was built from something else has a different one, and the bouncer hears it in the first sentence.
the third is what your browser looks like inside. a script asks the browser to draw a small picture, play a silent sound, list its fonts, name its graphics card and report its screen. real machines answer these slightly differently from each other, the way handwriting differs. software built to hide gets this wrong in two ways. either it answers like a server, with no graphics card, a linux desktop and fonts nobody's laptop has, or it answers identically every single time, so a thousand visitors walk in wearing the same coat.
the fourth is whether the story holds together. the browser states a few facts in its very first request, like how much memory the machine has and how dense its screen is, and the page's own script asks the same questions later. if the two answers differ, someone is lying.
when the bouncer is unsure, he makes you wait. that is the "just a moment" page. it runs a small puzzle in your browser for a few seconds and watches how the browser handles it. an ordinary browser finishes and walks through. many tools sit on that page forever, because the thing that would finish the puzzle is exactly the thing they removed.
this is the gate we built fortress to walk through, and the way it does that starts with what it is: chrome, changed on the inside.
most stealth tools take an ordinary chrome and teach it to lie. they run a small script the moment a page opens that swaps the browser's real answers for fake ones: a different graphics card, a different screen, no sign of automation. the bouncer has learned to catch this. a swapped answer is a script pretending to be the browser, and he can tell the two apart the way a forged signature shows under a lens.
fortress walks up to the bouncer as a real person. a real bouncer clocks your face, the state of your beard, whether your shoes match the venue, and decides in a second whether you belong. this bouncer clocks your graphics card, your fonts and your screen instead, and fortress gives him a real laptop's, because the browser was rebuilt to be that laptop. he sees the thing itself, and it looks like it came in from the rain like everyone else. if you've watched adults on hulu, fortress is doing "the method".
underneath, every property the gate inspects is a native getter in the engine. it reports itself as native code, it throws the same errors real chrome throws when called wrongly, and it gives the same answer from the main page, from an iframe and from a web worker, because it is the same code in all three. the persona is delivered into the renderer over ipc, so nothing about it appears on the command line or in the page.
that covers the bouncer's four checks one by one. the hello is real chrome's hello, because fortress is real chrome underneath, with the same encryption code. there is no accent to catch.
the picture, the sound, the fonts, the graphics card and the screen are answered the way a real machine answers them, and by a different real machine every time it starts. a fleet of fortress sessions looks like a crowd. a fleet of the other tools looks like a hundred vincent adultmen from bojack horseman walking in one after another, each one the same three kids in the same trench coat, and the bouncer has seen that coat before.
the story holds together because the first greeting and the later questions are produced from one description of one machine, so they cannot disagree.
and the waiting page it waits out. it notices the "just a moment" page, lets the puzzle run, and steps through once the site has granted clearance.
we measured it. on 28 september we pointed fortress and seven other browser stacks at 92 protected sites: cloudflare, datadome, akamai, human, kasada, imperva, aws waf, arkose, recaptcha, twenty login pages and five controls. every tool ran headless, from datacenter addresses, with no proxies, and loaded every site twice, each time from a fresh machine that was destroyed afterwards. a run counted only if the real page loaded with no challenge or deny page in front of it.
success rate against bot-defended websites
headless, with no residential ips
fortress served 86.4% of pages. camoufox, the closest thing to it in design, served 74.5%. the tools that patch chrome from the outside, nodriver, patchright and undetected-chromedriver, served the same 34 to 36% as stock chrome, because run headless they still say headlesschrome in their first sentence, and the bouncer hears it. on ten sites, wsj, marriott, macy's, easyjet, paypal sign-in, tripadvisor, monster, zoopla, datadome.co and autozone, fortress went two for two where neither camoufox nor puppeteer-stealth got more than one. there is no site where the reverse happened.
the 13.6% that failed were due to the ip. a datacenter address is turned away before any page script runs. those failures are fixed internally by running on tilion cloud, which you can request an invite for here.
in short, this works. and perhaps better than anything else that exists. and in an effort to improve and democratise it, it's open source, despite people telling us to keep it gatekept. but the thing is, we hate gates.