Monday, December 29, 2025

Hello Android, Hello Impostors?

I've received requests for an Android version of the Wingman Jr. addon for a bit now, but I haven't jumped in yet. Why not?

While I've briefly tested the addon for mobile in the past and I've seen that it generally worked, every time you submit to the addons portal it requires to say you tested it specifically for Android if you say it supported it. Testing for mobile does not seem too bad but with the already limited bandwidth I don't want mobile support to hold up normal releases. Additionally, if reviewers have to approve for both platforms it may hold up approvals as well.

In addition to Firefox users, however, it appears that Wingman Jr.'s lack of mobile support has also caught the attention of others. While the code for this addon is strongly open source and I encourage you to use it, there seem to be at least two copycat addons that I suspect of acting in bad faith:

  • https://addons.mozilla.org/en-US/firefox/addon/wingman-jr-premium/
  • https://addons.mozilla.org/en-US/firefox/addon/wingman-jr-master-pro/

I believe these to be suspect based on their shady descriptions, seemingly incorrect licensing, and strange home site links. I do not know if these are privacy-honoring or if they funnel data.As far as I can tell, they seem to be capitalizing on providing Android support because the main addon does not.

So - I think it is time to make a legitimate option for Android!

What's the strategy going to be?

  1. Clean up the main addon a bit. In particular - based on the fact that a) I believe no one is really using the Cloudflare blocking feature any more and that b) browsing domains are sent to Cloudflare if you opt into that feature and c) in conjunction with a new data collection reporting policy (which is good!), my plan is just to remove the feature entirely. Then I do not need to report any data collection, which will keep things simple and likely make approvals go faster. 
  2. Create a new addon with a new ID that is Android only. I will not necessarily update this as often, but the idea would be to keep feature parity based on the version number so if e.g. you use desktop 3.7.0 version you could expect roughly the same set of features on Android for 3.7.0 but desktop might get more in-between releases. 

Based on past experiences, I don't anticipate that Android support will be too hard so I don't expect too long of a timeline, but if there's one thing I know about development - particularly development on a new platform - it's that there are always surprises. So stay tuned to the blog and I'll post as progress continues!

Sunday, December 28, 2025

Release 3.7.0 - Quick Scan

 Today's release contains a small quality-of-life feature - a new video option (and the new default), Quick Scan. Why a new option? Previously on sites like imgur.com where small videos are heavily interspersed with images, the perceived performance of image scanning tanks because of all the little videos. Quick Scan just scans a few image frames in the video chunks and provides that as a tradeoff for speed, making the experience far less laggy while still providing a certain level of protection.

Sunday, July 27, 2025

Release 3.5.0 - Hidden Tabs and Fixes!

 So the next release is out!

First, a quick note: the release notes page isn't showing up right - you'll get a page to open but fail to load. I think Firefox changed something since that code hasn't been updated in a long time. See https://github.com/wingman-jr-addon/wingman_jr/issues/221

 Here's what changed:

  • If you have problems with the hidden tabs, try the new "Background.js WebGL" option! This allows users to optionally go back to the "old way" without hidden tabs, but falls back to hidden tabs if this is not possible. Note that the speed of scanning is also a bit slower, but for some it may be a lifesaver. It's in this section of the options:
    •  
  • Fixed Cloudflare-based DNS blocking support as it had been broken
  • Improved character set detection for international users

 

Tuesday, March 25, 2025

A Progress Update

Hello!

I've been chugging away on some things in the background, but the progress isn't in a release yet so I thought I'd talk a bit about some of the recent work.

 Here are three areas I've been working on:

  • Transformation #1 - Switch to a site-based focus for scanning (like uBO)
  • Bug - Try to improve the hidden tab situation. I have one idea for this already in motion.
  • Research #1 - new AI models, maybe new infrastructure for training

Site-based Focus

I've been working over at https://github.com/wingman-jr-addon/wingman_jr/issues/211 on getting the site-oriented focus working. I've gotten a bit of the core foundational work in that's not very exciting, and I've been starting to experiment with what kinds of new opportunities are available once going site-based.

One key opportunity is that now sites can be filtered using per-site statistics, which allows for some new ideas. For example, one thing I'm playing around with is an adaptive mode for mixed mode sites: think anything from Amazon to YouTube. These types of sites are historically quite difficult to get right - you can't just set one threshold and have it work particularly well. One aspect of this relates to human psychology as well: you may be generally browsing for good content but then a relatively objectionable image might pop up, and while it may not be that bad it stand out relative to its peers and has a somewhat similar effect.

 Note that generally the site-oriented arc of work is large, so don't expect a release with this feature in it soon. But the adventurous can see the experimentation going on if they like!

Hidden Tab Mitigation

 I have another option available for folks struggling with the hidden tab to try! Basically, go back to how the old addon version worked by picking a different backend option that doesn't use the hidden tab. It'll do a pre-check to ensure the original performance issue doesn't pop up, and fall back to the hidden tab if needed. For most, they'd see a decrease in speed, but it's far better than the tab regenerating. This work was merged in https://github.com/wingman-jr-addon/wingman_jr/issues/209.

New AI Model

I've done a smaller amount of work here, with SQRXR 145 being a potential candidate. This is an iterative rather than new model.

Friday, March 14, 2025

Model Candidate SQRXR 145

 I've been playing around with a new model variant, SQRXR 145. I've generally found it to be a bit better, but I'm trying to confirm how well it performs with false positives in trusted mode. For neutral and untrusted modes I think it does a bit better job all around. The adventurous can clone the repo at https://github.com/wingman-jr-addon/wingman_jr/tree/sqrxr-145 and give it a try.

Sunday, February 2, 2025

What Next in 2025?

Ideas for 2025

Here are the likely areas of focus for 2025:

  • Transformation #1 - Switch to a site-based focus for scanning (like uBO)
  • Transformation #2 - More long-term, but features or new addon variant to help those struggling with pornography
  • Bug - Try to improve the hidden tab situation. I have one idea for this already in motion.
  • Feature - Custom image replacement
  • Feature - Make balanced video scanning solution for better out-of-the-box experience
  • Research #1 - new AI models, maybe new infrastructure for training
  • Research #2 - could WebGPU + ONNX replace Tensorflow.js?

I do not expect these all to complete or even be successful, but I think most of my effort will go into these areas. Read below for a further breakdown!

Where to Focus?

 This can be a difficult question to answer; fortunately, people have responded to both the feedback survey as well as the exit survey which helps. So let's break it down a bit.

First, of the listed reasons on the exit survey, the top three reasons people leave are:
  1. The AI model isn't good enough, with responses split about 2:1 that it blocked too many safe images vs. letting bad ones through.
  2. The speed of image scanning is too slow.
  3. The hidden tab causes frustration. I didn't initially have an option for this but got enough write-ins that I added it and it has grown quickly, so there's a good chance this is actually reason #2.

Second, looking through feedback as well as the exit survey, some themes pop out:

  1. Many people use this as adults for themselves because they struggle with pornography, which is different than the original use case of primarily having it as a safeguard for kids. More on this in a bit.
  2. Lots of requests for custom image replacement for silent mode.
  3. Some folks don't like the UI, or find it confusing.
  4. Video scanning should be better.
  5. Some requests for whitelisting/blacklisting by site.
 Third, let's look at developments occurring from other angles.
  1. The main AI base library, Tensorflow.js, has stagnated heavily, and I no longer think we will see any performance improvements coming unless Google chooses to reinvest.
  2. AI has continued to advance rapidly, but it's not yet clear how applicable those advancements would be to the model for this addon. However, there are significant efforts that can be taken to potentially push forward.
  3. NVIDIA DIGITS as an AI training server may be interesting.
 

Transformative Ideas

While most of the ideas above are smaller changes, there are two that are transformative.
 
The first is that based on several pieces of feedback tying together, the addon would benefit greatly by changing to a site-oriented approach to blocking. If you've used uBlock Origin, it would be a bit closer to how that works. This would clear up UI confusion and would naturally tie in with whitelisting/blacklisting sites, etc.
 
The second is that some changes would benefit those struggling with pornography. While I definitely believe that you can't solve human problems with technology, the best technologies help humans help other humans. I'm still mulling this over given the limitations of what an addon can do, but I think key areas to look at would be 1) ways to establish accountability with others in their life and 2) reminders or features to help break out of the loop when they get stuck. This is more of a long-term transformation, and may even lead to a different variant of the addon depending on the features that make sense. If a true new addon variant were created, that would ideally occur after many of the other changes here are implemented so it would have a better foundation to move forward with.

Summary

There's certainly enough here to keep busy! If I can get a few of these knocked out, I think the addon will improve in some tangible ways.
 
As always, you can watch the issues over at https://github.com/wingman-jr-addon/wingman_jr/issues
I'm also playing around a bit with the GitHub Projects feature; we'll see if it goes anywhere but I'm checking it out at https://github.com/users/wingman-jr-addon/projects/1
Please continue to give feedback via the different surveys; I don't always respond but I do read them and try to consider how to incorporate them. Thanks!

Wednesday, January 29, 2025

Up Next 2025?

Just wanted to let folks know that I've been reviewing all the feedback and am working on what features to plan out for 2025! So stay tuned and I'll plan to comment on the upcoming roadmap in say the next month or so.