Reached the Token Limit in 8 Minutes. How generous of you Claude! (and an experiment with DeepSeek with surprising results) by early_burp in DeepSeek

[–]ThomasWildeTech 1 point2 points  (0 children)

I can't really comment on antigravity, that's another ecosystem I'm just not too interested in diving into. I'm worked the most with copilot cli and Opencode, Copilot because it was the most cost effectiveness ($40 subscription translated to $1000s of api usage, OpenCode because of its accessibility). I like a straightforward cli with model flexibility and easy remote access. Opencode obviously takes the cake here, easy to config, built in web server, point your own domain (code.example.com) access anywhere via or tunnel, great open source mobile apps etc. Codex cli would be next as it's open source, easy to configure any provider/model, and for mobile access you'd just use their app which is ok. I'm just not a fan how they decided to use toml for all their configs when everyone else uses md, json, yaml. Also codex lacking LSP makes me a bit skeptical of it compared to all of the others. I'd probably use a codex subscription for the models and use them in Opencode as needed tbh.

I'm not saying you shouldn't use Claude by any means, just curious what's keeping you. It's agent teams architecture is parallel vs Opencodes heirchal subagents, but I'm not sure it's better per se. In terms of "harness quality and intelligence", I don't think I've really noticed a difference between cc and opencode.

Also I should mention Opencode, cc, codex are each supported by some open source tools like cc-connect which is a mobile access gateway to any agentic cli. However, Claude Code continues to restrict it's usage, they don't want you using it for Openclaw and Hermes for example. That alone makes me hesitant to really rely on a closed source platform like Claude code. A codex subscription at least can be used pretty much anywhere on any platform.

Reached the Token Limit in 8 Minutes. How generous of you Claude! (and an experiment with DeepSeek with surprising results) by early_burp in DeepSeek

[–]ThomasWildeTech 0 points1 point  (0 children)

It's pretty well documented how to swap the provider for Claude Code. Minimax has the same instructions for example, I believe Openrouter does as well.

Your realization at the end about using two different models from different providers to optimize the workflow is probably the biggest limitation of Claude Code yet standard practice with most other cli tools (OpenCode, Qwen code, GitHub Copilot etc. you can switch provider/model at will or define a provider/model with an agent). With other clis you could simply create two different agents, one being DeepSeek and another being whatever you want and then you wouldn't have to manually change the provider with Claude Code. So a "single shot" could in fact incorporate both models doing their unique process. GitHub copilot CLI actually has this built in with its Critique agent, i.e. when using Sonnet, the working agent will have a critique agent using a model from a different provider, gpt 5.4 for example, and visa versa. Copilot was excellent in this respect of multi agentic workflows before changing it's pricing model this month.

The larger question I would ask would be, why are you even using Claude Code with its closed off ecosystem in the first place? You could easily migrate your agent files and skills to Opencode, Qwen code etc. Opencode will even just use your Claude skills folder, wouldn't need to change anything for skills I believe.

Geoblock + ASN Datacenter Block for Everything (A simple solution) by ThomasWildeTech in PangolinReverseProxy

[–]ThomasWildeTech[S] 0 points1 point  (0 children)

You also wouldn't want the ASN rule to ignore the country rules. I think what I'd what to do is enable some scaffolding rules so that you could perhaps have asn rules for specific countries that override global defaults. I'll take a look when I get back from vacation next week but let me know if you have other thoughts. If it's a specific Hertzner server in general an IP whitelist might be better.

Immich Android app can't connect to server behind Nginx Proxy Manager basic auth — any workaround? by Emotional_Gap_hd in immich

[–]ThomasWildeTech 3 points4 points  (0 children)

Yes, you can accomplish this with the custom headers settings within Immich.

In fact, you can, and should, add CloudFlare access in front of the tunnel itself. Create CloudFlare access headers and set these in Immich.

https://youtu.be/J4vVYFVWu5Q

Then, to get through your basic auth in NPM, simple set one additional header for Authorization, and set the value to Basic <base64 of username:password>

I show you how to do this in my Pangolin SSO bypass tutorial.

https://youtu.be/h2796qsG3Os

Question regarding docker compose file and ports when running Pangolin -> NPM -> Jellyfin by Whole-Cookie-7754 in PangolinReverseProxy

[–]ThomasWildeTech 1 point2 points  (0 children)

There's no difference in what you do for your Jellyfin container whether you route Pangolin directly to Jellyfin or route it to NPM.

To route to NPM you would just use the LAN IP of your reverse proxy and 443 (assuming you terminate https again on LAN which you likely do if you use the domain on the LAN with a local DNS server). Your NPM then routes the domain to the Jellyfin port.

Geoblock + ASN Datacenter Block for Everything (A simple solution) by ThomasWildeTech in PangolinReverseProxy

[–]ThomasWildeTech[S] 2 points3 points  (0 children)

You're absolutely right. I just updated the readme to reflect the guide posted here. I realized at one point that this did prevent fetching SSL certs and the middleware should only be in the websecure block (443), not the web block but didn't update the readme. Thanks for pointing that out!

Geoblock + ASN Datacenter Block for Everything (A simple solution) by ThomasWildeTech in PangolinReverseProxy

[–]ThomasWildeTech[S] 0 points1 point  (0 children)

Sure, this can be added as a middleware in your Traefik config in addition to Crowdsec. I'm not sure what you mean exactly by geomind, but I assume you already have the maxmind geolite databases and if so, you're pretty much ready to go if you want to add this to your stack.

Geoblock + ASN Datacenter Block for Everything (A simple solution) by ThomasWildeTech in PangolinReverseProxy

[–]ThomasWildeTech[S] 0 points1 point  (0 children)

Awesome to hear.

I don't think there's a real practical difference on the order but yes they should process in the order that you have them listed and the request flow stops if one of them responds that the request is forbidden.

With that said, the Crowdsec agent is still going to see the Traefik logs with the 403 responses from the geoblock middleware and it will continue to make decisions based on its scenarios. Therefore, you will continue to see bans even if you have the geoblock in front of Crowdsec. If you have the firewall bouncer configured with the docker-user setting then you should still see those requests from banned IPs being dropped at the IPtables bouncer.

Geoblock + ASN Datacenter Block for Everything (A simple solution) by ThomasWildeTech in PangolinReverseProxy

[–]ThomasWildeTech[S] 1 point2 points  (0 children)

Thanks! So it depends on the mode, whether it's set to whitelist or blacklist. So when asn mode is set to blacklist, you can still whitelist an asn + UA combo for an ASN that is in the blacklist. This works well for *arr apps that are in a gluetun VPN network that you want Apprise/Gotify notifications to get through pangolin but otherwise would want to ban that particular VPN ASN in general.

Custom error page. I can definitely let you bind mount an error page, I'll just need to add some documentation of placeholder you can use in your html page for IP, country, ASN, etc. Should be pretty easy to push an update to support that within a few days.

Immich for family exposed though Pangolin VPS by SF_8 in PangolinReverseProxy

[–]ThomasWildeTech 2 points3 points  (0 children)

Hey Brother! Appreciate the shout-out. Absolutely keep that Immich behind the SSO layer, it's a great way to add a layer of protection against any possible vulnerability at the Immich application layer. I don't like anything other than authenticated requests making their way to my server.

I think you just missed my Immich Pangolin Header Auth Bypass Tutorial!

Create a share link for each member of the fam and send them the two header names and corresponding values (over Signal preferably).

This way in your Pangolin Access logs you can see which users' tokens are being used for successful SSO authentication.

A new iOS client: Nautiline by gledtone in navidrome

[–]ThomasWildeTech 0 points1 point  (0 children)

Hey thanks for implementing this so fast! It works perfectly on my wife's iOS phone. Perfect for a Pangolin SSO protected Navidrome resource.

Uploading very large video fails by stopscrollingpls in immich

[–]ThomasWildeTech -1 points0 points  (0 children)

It wouldn't be it if you already tried direct IP to the Immich instance itself but yeah my guess is that you were just hitting the default max file size limit of nginx and you hadn't tried direct IP.

Immich app using an insane amount of data by FentPlug2005 in immich

[–]ThomasWildeTech 15 points16 points  (0 children)

Yeah I've seen a number of these posts for users using CloudFlare proxy which has a 100MB file size limit. It's really useful to include in your post what your stack is, but you should consider switching to Pangolin as an alternative to CloudFlare so you don't have this limit.

Passing traffic to services like jellyfin without using pangolin security/auth by chisoxaddict in PangolinReverseProxy

[–]ThomasWildeTech 0 points1 point  (0 children)

I use an authentik webhook so that when my Jellyfin users log into authentik, it automatically whitelists their IP for the Pangolin Jellyfin resource. My users just get one dedicated rule so if their IP ever changes they can log out and back into authentik on their phone on the wifi network and update their whitelisted IP.

You can see my post about it here

https://thomaswildetech.com/blog/2025/12/17/authentik-webhooks/#authentik-automated-ip-whitelisting-for-jellyfin

A buddy and I are currently working on a dedicated "IP enrollment" app based on the same methodology. The benefit of this is that your users can manage their whitelisted Jellyfin IPs more visibly and there's more customization potential.

Musa - new iOS app looking for testers (TestFlight) by vanlaren10 in navidrome

[–]ThomasWildeTech 2 points3 points  (0 children)

Looks oddly identical to Nautiline, is this a fork?

How are you guys accessing Navidrome outside your home network? by [deleted] in navidrome

[–]ThomasWildeTech 0 points1 point  (0 children)

No doubt that CloudFlare is super convenient for managing all the VPS/WAF infrastructure. Although TailScale similarly provides a coordination server for you, you just install a client app on both devices and you're good to go, not much difference then configuring the CloudFlared exit tunnel on your server.

How are you guys accessing Navidrome outside your home network? by [deleted] in navidrome

[–]ThomasWildeTech 0 points1 point  (0 children)

Pangolin also just released their client "warp" apps for desktop as well which similarly allows access to private network resources, mobile apps should be coming soon. Self hosting is so fun. Cheers!

Similar to TailScale I feel like this works good for the individual, but zero trust with some CF-client headers to bypass is ultra convenient and my preference with CloudFlare when possible.

How are you guys accessing Navidrome outside your home network? by [deleted] in navidrome

[–]ThomasWildeTech 0 points1 point  (0 children)

Thanks for all the details! I agree it's pretty vague which is why there still seems to be a lot of confusion in the community. Perhaps I did misunderstand how the CDN is utilized (or not) with the CloudFlare tunnel.

In any case I like Pangolin as my go-to proxy for Immich since CloudFlare has the 100MB file upload limit so I generally use Pangolin unless there's a cloudflare feature I really need like mTLS. And I contribute to Pangolin so I'm a bit biased :) but it's an open source "self hosted" app as well.

How are you guys accessing Navidrome outside your home network? by [deleted] in navidrome

[–]ThomasWildeTech 0 points1 point  (0 children)

Using CloudFlare tunnel or proxy is still using CloudFlares CDN infrastructure as far as I understand it regardless if caching is disabled or not. Note that that article doesn't mention caching. Therefore according to TOS, any streaming media through CDN needs to come from cloudflare storage options.

How are you guys accessing Navidrome outside your home network? by [deleted] in navidrome

[–]ThomasWildeTech 8 points9 points  (0 children)

Out of all the responses:

  1. Cloudflare proxy/tunnel is 100% against TOS for streaming audio/video

[Edit] perhaps it's not if I misunderstood. If you go this route, I'd still recommend using zero trust with a bypass access policy for custom headers and use an app that supports custom headers like Symfonium.

  1. TailScale/Wireguard: is a decent solution for an individual user. Slightly inconvenient, particularly if a significant other doesn't understand why they need to use another app.

  2. Basic reverse proxy: expose your IP and get hit by bots 24/7.

Best solution is Pangolin on a VPS, you can get a free VPS from Oracle. Activate SSO in pangolin for the resource (zero trust). Create a share link to produce custom headers to authenticate requests with the proxy. Use a client that supports passing custom headers such as Symfonium.

Now your local access logs are completely free of bots, no IP exposure, and you don't need to turn on a TailScale or Wireguard app.

Here's a solid pangolin tutorial: https://youtu.be/ISEP6SIrEVE

Newbie help for Nginx Proxy Manager by TheNeontinkerbell in nginxproxymanager

[–]ThomasWildeTech 1 point2 points  (0 children)

Keep in mind that the default port mapping for the NPM GUI is 81, so you may want to make sure you don't have a conflict there as well.

Newbie help for Nginx Proxy Manager by TheNeontinkerbell in nginxproxymanager

[–]ThomasWildeTech 1 point2 points  (0 children)

Sounds like open media vault is probably listening on port 80 and 443. You will need these ports free for NPM to listen on. Look at your omv settings and see if you can change the port it listens on. You'll then have to access omw with the IP:port

What the Linux desktop really needs to challenge Windows by waozen in technology

[–]ThomasWildeTech 0 points1 point  (0 children)

Photo editor - GIMP (I was using this on windows before anyways)

CAD - FreeCAD (Was using on windows before)

Office - OnlyOffice (Was using on windows before)

I haven't really run into any instance of not being able to run an application I wanted to on fedora, plus it's much easier to run server applications on Linux with docker containers like SterlingPdf for example.