shibel
Joined 8 years ago
Joined 8 years ago
Edit: this of course says nothing about MCP vs API/CLI in general. It’s just a bad implementation by Linear.
1: https://thebiglog.com/links/linear-cli-instead-of-linear-mcp
It’s more inhibiting to me than bad code, missing tests, or an obvious or non-obvious suboptimal solution.
I don’t think it’s easy on native speakers when it happens, but it’s even harder when you’re not.
Edit: just noticed this is not retroactive. Still concerning looking forward.
> I have never been a big fan of pull requests.
I guess this partly explains why Zed (still) lacks a PR review flow, let alone a coherent one, despite some interest [1]. Pretty much the only reason I’m still with JetBrains.
[1]: https://github.com/zed-industries/zed/discussions/34759
If tomorrow I decide not to share with anyone, I don’t want to have to reconfigure stuff. I simply edit the Tailscale policy file, and (maybe) spin down my server.
With Tailscale, you can basically point a domain to the FQDN of a machine you’re sharing with people and the domain will simply work for them (and only them)[1]. But for it to work without them having to know or specify the specific application port, you have to grant them access to 443 (and 80) in your Tailscale ACL for that specific host.
So yeah, now immich.familydomain.com works without family members having to remember the specific port. BUT, serveradmin.familydomain.com (another app on the same host) will ALSO be accessible to them (from a networking POV). We opened port 443/80 for that host after all.
I took a few hours with Claude back in January (?) and we wrote a tiny Go authorization gateway which basically consults both Tailscale’s public API and Tailscale’s `localapi` and returns the appropriate response to Caddy based on the requesting user’s actual allowed ports.
So now I can share different apps (subdomains) with different people without forfeiting access controls, all driven by Tailscale’s policy file.
(I hope I didn’t mess up the crux of it, pretty late here)
Edit: why not (something like) Authentik? Quoting from the draft:
I contemplated this for a bit but one thing I kept thinking about is:
_They're already logged in to Tailscale_
Why do I need to install and configure another full-blown app dedicated to doing something Tailscale already did? Why have the users go through two hops of authentication?”
[1]: https://www.youtube.com/watch?v=Vt4PDUXB_fg