{"id":23827,"date":"2026-09-09T00:47:19","date_gmt":"2026-09-09T00:47:19","guid":{"rendered":"https:\/\/scannn.com\/automatically-detecting-ai-text-in-my-browser\/"},"modified":"2026-09-09T00:47:19","modified_gmt":"2026-09-09T00:47:19","slug":"automatically-detecting-ai-text-in-my-browser","status":"publish","type":"post","link":"https:\/\/scannn.com\/lv\/automatically-detecting-ai-text-in-my-browser\/","title":{"rendered":"Automatically detecting AI text in my browser"},"content":{"rendered":"\n<div id=\"\">\n<p>Automated AI text detection is currently an underserved niche. The only game in town is <a href=\"https:\/\/www.pangram.com\/\">Pangram<\/a>, which does an excellent job but desperately needs more competition. In a few years, I would be surprised if every major social network doesn\u2019t scan new posts<sup id=\"fnref-1\"\/> and comments for AI content in order to tag them (or simply remove them).<\/p>\n<p>I like that I can rely on Pangram to confirm my suspicions when I read <a href=\"https:\/\/arxiv.org\/abs\/2609.03344\">something<\/a> that sounds like AI. But it\u2019d be much better if I could choose to avoid AI-generated text in the first place. What I want is something that runs in the background and automatically scans text on websites I visit, without me having to ask for it. I could build something like this on top of Pangram, but it\u2019d <a href=\"https:\/\/www.pangram.com\/pricing\">cost money<\/a>, and in general I don\u2019t like the idea of sending every piece of text my browser sees to a third-party service. What about local models?<\/p>\n<p>The open-source models available for AI text detection are <em>fine<\/em>. Pangram <a href=\"https:\/\/www.pangram.com\/blog\/pangram-4-technical\">claims<\/a> a 99.66% detection rate with a 0.004% false positive rate. I benchmarked<sup id=\"fnref-2\"\/> a bunch of small local models against a combination of AI-detection datasets and got these results:<\/p>\n<p>I\u2019m not surprised these are so much worse. I didn\u2019t even benchmark Pangram\u2019s own EditLens 3B model, since that\u2019s too big to keep running in the background on my laptop, and the real production Pangram model is likely one or two orders of magnitude bigger than that. But these models are still good enough to be useful to someone who understands their limitations. If you want to flag an AI-written article, you don\u2019t need to flag all of it, just enough to be suspicious. And so long as you\u2019re aware that the false-positive rate is ~2%, you can avoid treating a single flag as solid proof of AI use.<\/p>\n<p>Encouraged by this, I vibed up <a href=\"https:\/\/github.com\/sgoedecke\/deckard\">Deckard<\/a>: a Chrome extension that talks to a locally-running model (the bolded one in the table above) on your Mac. One nice thing is that I didn\u2019t have to start a web server: the Chrome extension is happy to start the model as-needed and can talk with it over <a href=\"https:\/\/developer.chrome.com\/docs\/extensions\/develop\/concepts\/native-messaging\">native messaging<\/a>. It uses about 400MB-1.2GB of memory while active (so it\u2019s like having five or six extra Chrome tabs open), and it turns itself off if you go five minutes without using the model.<\/p>\n<p>I was pleasantly surprised to see Deckard successfully mark text I knew was AI-generated, such as the built-in YouTube AI summary or the AI <a href=\"https:\/\/www.seangoedecke.com\/ai-research-with-codex\/\">snippets<\/a> in my own posts:<\/p>\n<p><span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 590px; \"><br \/>\n      <a class=\"gatsby-resp-image-link\" href=\"https:\/\/www.seangoedecke.com\/static\/d9c4176cc00bde9a34ef2c29ad9e54cb\/c549b\/example2.png\" style=\"display: block\" target=\"_blank\" rel=\"noopener\"><br \/>\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 26.351351351351354%; position: relative; bottom: 0; left: 0; background-image: url('data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAFCAYAAABFA8wzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAA1UlEQVQY042O206DQBRF+QuFDjPUDhcpMNBaaZQp7UsjGmP\/\/2eWpzyZqNGHdfa5ZJ\/soCgzjuuK\/nGLLSx6qTF3muXKiMYyx\/NOmYWgvpOo+WbzFVmZEsQqxtt7dt0Gm6YYrdEm4VYl3ITyZCEGpYjCiCj6mTAMsdZijCGo65rn05F+3zMMA4eDZ7vdUFQtRbkmzzLyPP+TVMJcNcjKmoenE93eCyNd72kah6srXNPgnPsXbdtyDRe0Ut7HkUnSTd7z6gfeZv2d6WsvvpfzmY\/LBS\/zJ8b1l6Hf2hQ\/AAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\/><br \/>\n  <br \/>\n  <\/a><br \/>\n    <\/span><\/p>\n<p><span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 590px; \"><br \/>\n      <a class=\"gatsby-resp-image-link\" href=\"https:\/\/www.seangoedecke.com\/static\/9ddabc445cc492c847dc6b178801cd3c\/07d7d\/example1.png\" style=\"display: block\" target=\"_blank\" rel=\"noopener\"><br \/>\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 71.62162162162163%; position: relative; bottom: 0; left: 0; background-image: url('data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAABYlAAAWJQFJUiTwAAACL0lEQVQ4y1VUW3LaQBDkEs6HAS2PSpCQQC8M6An+wDgVx64yBZTtC\/j+F+h0LxJ2PprunZmdnZ1Z0RkOhyiKArvdDmVZIssyrNdr5HmOKIoQxzHCMESaptanWGnxeDyG9o9Goys6w8EALy8vOBwO+PP0ZPnt7Q2fn594f3\/H6+urxfl8xsfHh+X9fm\/xPaFY6Gix3W5xOp1soufnvzbp\/uEBvx8fcTwesd1sLHuuix83N+h1u+je3mJgDAYsSLhWOGLWaRAgTBeYRYlFEEbkGLM4gT8PEVCL53GKeULQLlaM2uH7\/rcK+bO4u0NWVsirGkW9QbW9x5o9qu\/vrS2nb8WeiuUrWXFBe1aUtt8uK2+v3pGQwZ9O4XmevdZk8gtTancysTZpz3MvcN1rnNhtuO2jTdhObblc2ukuVyu71lRX1IKdPG3SGWNan+IXi8X\/FcpQVxUybtLTqesaG6JNWnBTqRYwJm901TwxccQ+Gg7omjDke4tSNTxByipD6gU54jrhYQl7HJMF2cUuW9TndA33m2bC1ysPmT0kIuNgLnYc+OQpN8zIQQPpacM+fXMiaDBUQlVotOj3UTNJ6fRRWHaQEXkD6bW58Hd7i4L7fqowJbQPU4EDg8xoo7EojGOTV\/KZC3RQ0cRI59R3Nt75SqgrO7oiTwlYqS9w7ZED8kxo7f0egl7P6qDBvPGN24Rqpl57xD8BDSEmpGN+CRqIBmZBW8JhpbTJ367FWrff9T+aVLCghwPhQQAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\/><br \/>\n  <img decoding=\"async\" class=\"gatsby-resp-image-image\" alt=\"snippets\" title=\"snippets\" src=\"https:\/\/www.seangoedecke.com\/static\/9ddabc445cc492c847dc6b178801cd3c\/fcda8\/example1.png\" srcset=\"https:\/\/www.seangoedecke.com\/static\/9ddabc445cc492c847dc6b178801cd3c\/12f09\/example1.png 148w,&#10;https:\/\/www.seangoedecke.com\/static\/9ddabc445cc492c847dc6b178801cd3c\/e4a3f\/example1.png 295w,&#10;https:\/\/www.seangoedecke.com\/static\/9ddabc445cc492c847dc6b178801cd3c\/fcda8\/example1.png 590w,&#10;https:\/\/www.seangoedecke.com\/static\/9ddabc445cc492c847dc6b178801cd3c\/efc66\/example1.png 885w,&#10;https:\/\/www.seangoedecke.com\/static\/9ddabc445cc492c847dc6b178801cd3c\/c83ae\/example1.png 1180w,&#10;https:\/\/www.seangoedecke.com\/static\/9ddabc445cc492c847dc6b178801cd3c\/07d7d\/example1.png 1478w\" sizes=\"(max-width: 590px) 100vw, 590px\" style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\" loading=\"lazy\"\/><br \/>\n  <\/a><br \/>\n    <\/span><\/p>\n<p>It\u2019s lightweight enough that I have it running all the time. I haven\u2019t noticed my MacBook Pro get hot at all or any decrease in battery life, though your mileage may vary on different machines.<\/p>\n<p>Is Deckard good yet? That depends. It\u2019s good enough that I\u2019m planning to use it, and I recommend it to anyone who\u2019s interested in automatic AI checking. It\u2019s way, way worse than Pangram, and way worse than I think tooling like this is going to be in the next few years.<\/p>\n<p>Way back in November 2023, I <a href=\"https:\/\/www.seangoedecke.com\/llm-driven-agents\/\">wrote<\/a> that AI-driven agents were going to be a really big deal. I recommended starting to develop harnesses early, so you can be ready when the models get good enough:<\/p>\n<blockquote>\n<p>As with most modern language model engineering, a ReAct agent can also see massive sudden improvements by swapping out the underlying model for a better one. \u2026 I think this is another reason to invest in agents like this early, in order to take advantage of more powerful models as they come out.<\/p>\n<\/blockquote>\n<p>I was right about that, and I (although it\u2019s lower-stakes) think I\u2019m also right about this. AI detection models are only going to get better<sup id=\"fnref-3\"\/> over time: Pangram is not going to be the only game in town forever, and we\u2019re eventually going to see small local models that do a good-enough job at identifying AI-written text. I look forward to swapping out the local model in <a href=\"https:\/\/github.com\/sgoedecke\/deckard\">Deckard<\/a> with something that\u2019s 2x or 10x better.<\/p>\n<\/div>\n<p>Here&#8217;s a preview of a related post that shares tags with this one.<\/p>\n<p><a href=\"https:\/\/www.seangoedecke.com\/deckard\/?utm_source=tldrai\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Automated AI text detection is currently an underserved niche. The only game in town is Pangram, which does an excellent job but desperately needs more competition. In a few years, I would be surprised if every major social network doesn\u2019t scan new posts and comments for AI content in order to tag them (or simply [&hellip;]<\/p>\n","protected":false},"author":16,"featured_media":23828,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[143],"tags":[],"class_list":["post-23827","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai"],"_links":{"self":[{"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/posts\/23827","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/comments?post=23827"}],"version-history":[{"count":0,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/posts\/23827\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/media\/23828"}],"wp:attachment":[{"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/media?parent=23827"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/categories?post=23827"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/tags?post=23827"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}