You are browsing as a guest. Sign up (or log in) to start making projects!

v81d

@v81d

Joined June 12th, 2026

  • 5Devlogs
  • 2Projects
  • 2Ships
  • 15Votes
Ship

Extinction is now much more customizable with the newly added "Parameters" tab! The entire classification system has been reworked to be more memory-efficient and accurate in general, so Extinction should be able to block AI-generated articles much more effectively now.
\
It was quite brain-damaging (to be honest) trying to figure out what changes I could possibly make to improve such a simple algorithm, but I ended up gaining a lot more knowledge about logistic functions (and sigmoids in general) and how useful math can be when making something like this. It was worth it.
\
I also fixed several issues along the way while updating the options page. As I mentioned in my last devlog, there was a signal calibration logic error along with a potential division-by-zero error in calculating the fluency score of a text. Now with those pesky bugs out of the way, I can actually focus on improving the things that really matter for this project, such as keeping it *fast* and *lightweight*.
\
Yes, the size of the package is really only around 100 KB (which is pretty lightweight), but some features still feel a little over-complicated. I enjoy looking at my code and feeling proud about all the new things I've learned, but, at the end of the day, the whole point of this extension is to tackle the problems most other AI detectors couldn't: being easy on memory and all that. I do not plan on making Extinction ML-based. That defeats the whole purpose and will most certainly kill this experiment (or rather a proof-of-concept). That said, the main goal of the next ship will most likely be making some optimizations for both the UI and the detection system.
\
As for this ship, most of the changes are related to the new options tab. To be fully transparent, the default values for these fields were NOT selected by a machine/algorithm, since that would probably hit the gray area of "machine learning." All of the defaults were chosen by me, a real person! Since they are all based on observation rather than extreme experimentation (which I cannot carry out anyway), accuracy may vary depending on what you're reading. If anyone happens to discover a better combination, feel free to let me know or make a pull request!
\
Anyway, that wraps it up for my second ship. If you'd like to try out Extinction, you can install it officially from the Mozilla Add-ons store (if you're on Firefox or a Firefox-based browser) OR build it from source using the GitHub repo. Unfortunately, Extinction will not be available on the Chrome Web Store because of the $5 registration fee (that I can't pay right now). Things aren't very appealing for Safari users either, since Apple places a $99/year registration fee (which is arguably a total rip-off that I'm not willing to give into at all). For now, Chrome and Safari users can stick to building and installing from source. Good news for Chrome users though: custom extensions don't seem to be ephemeral or suddenly disappear the moment you exit the app, so once you've built it, you'll be good until the next release.
\
Thank you for checking out Extinction. I hope it's as useful to you as it is to me! :)

  • 4 devlogs
  • 6h
Try project → See source code →
Open comments for this post

37m 11s logged

Expanded the options page even further! You can now basically customize every single parameter that Extinction’s underlying system uses.

Funny thing, I actually caught two bugs when adding the signal calibrator and lexical diversity / burstiness weight fields.

The first bug: the signal calibration math actually didn’t allow for decimal calibrators because it was doing plain exponentiation (meaning negative signals would fail in that step). To fix this, I added a very basic change that would simply preserve the sign of the signal during calibration. That way, negative signals stay negative and positive signals stay positive.

The second bug: if both the lexical diversity weight AND the burstiness weight are 0, there would be a division-by-zero error when calculating fluency score (which is the value that represents how natural-sounding the text is). Pretty simple fix. I just added a check using a ternary operation.

0
0
2
Open comments for this post

2h 13m 1s logged

Added even more fields to the parameter options! You can now edit the suspicion threshold along with some more sensitive options like the adjustment offset (basically the horizontal shift of the logistic function that is used to normalize the score).

Also, while adding this, I realized I forgot to actually enforce the default value for all fields outside of just the options page. (Essentially, if you were to install the extension and never open the parameters tab, all the variables in there would default to null when it actually analyzes web pages.) Made sure to include a fix for that in these changes!

I also learned a little more about sigmoid functions in general while trying to come up with a good enough caption for the new field, so that’s a nice bonus. Also had to add a little note at the top of the page because the defaults for these fields were not really chosen based on tested accuracy (they are simply based on my own observations of what seems to produce the most satisfactory results).

By the way, I’d like to take some time to acknowledge the amazing feedback I got after my first ship! For Chrome users wanting justice after seeing that this extension is only published on AMO, I should mention that publishing to the Chrome Web Store requires a $5 fee, which I (unfortunately) cannot pay at this time. For now, Chrome/Safari users can stick to following the official build instructions listed in the README. In the future, I’ll also try to optimize Extinction’s detection system since I’m starting to feel like its status of being “lightweight” is slowly slipping away as I add new features. Anyway, thank you all for your wonderful comments, and I hope to fulfill as many of your suggestions as I can! :)

0
0
1
Open comments for this post

53m 46s logged

Added a “Suspicion threshold” option so anyone who uses Extinction can customize the detector’s aggressiveness. I also plan on making many of the other weights configurable as well in the near future!

0
0
2
Open comments for this post

2h 35m 14s logged

Made a decent amount of changes today with Extinction’s classification algorithm and a few UI elements. Detections should be more accurate now with these new changes. (For those who want more detail: I added Type-Token Ratio calculations for determining lexical diversity along with better-tuned weights/constants. Also now using a sigmoid function for score normalization. A decent amount of math involved with this, but I’d say it works a lot better now.)

0
0
3
Ship

Extinction is an ultra-lightweight AI content blocker browser extension powered by regex-based pattern matching and linguistic analysis.

But why block AI? Well, the answer is quite simple. The World Wide Web is becoming increasingly plagued with low-quality AI-generated content. The content AI produces is often misleading or blatantly incorrect. While some may not particularly see this is an issue, many people wish to escape from or completely hide such content.

What makes Extinction any different? Traditional AI content detectors rely on machine learning and heavy analysis to product a result. Besides the irony of using such a mechanism, these AI detectors are often less trustworthy when it comes to respecting user privacy. Since the content is fed into an external API, users cannot reliably confirm that the data they send is kept confidential.

Extinction, on the other hand, does not send any data to an external endpoint; all analyses are done locally, meaning there is no compromise in user privacy. It does not use machine-learning to classify text, but rather simple pattern matching with regular expressions (regexes) paired with sentence variation analyses.

Keep in mind that Extinction is not (and will never be) 100% foolproof, as with all AI detectors in general. There will always be false positives and false negatives, but we will try our best to improve Extinction over time and make it as accurate as possible without sacrificing user privacy or Extinction's quality of being lightweight. The extension comes with an exclusion list to prevent trusted sites from being flagged.

  • 1 devlog
  • 8h
  • 15.86x multiplier
  • 126 Stardust
Try project → See source code →
Open comments for this post

7h 54m 59s logged

Finally reached a working version of Extinction, a lightweight AI content blocker extension that uses regex pattern matching and basic sentence analysis for detection (not LLM-based like almost every other AI detector, so it’s fully local). It’s definitely not foolproof, but it does a sufficiently decent job at detecting AI-generated articles despite its significant limitations. It also comes with a configurable exception list to exclude domains and pages from detections!

(This is a project I’ve been working on for several months, but I’ve been making a lot more progress ever since Stardance began!)

0
0
35

Followers

Loading…