matusfaro
Joined 5 years ago
Joined 5 years ago
The proper way is to have an actual link but to override the behavior to navigate within the SPA. So if you click it, the navigation will be within the SPA but if you ctrl+click it, the browser takes over and opens the underlying link in a new page.
Typical issue is when a developer forgets to make it an actual link, but only inclides the SPA navigation.
A local desktop app that acts as a gateway for LLMs, MCPs and Skills with smart routing and optimizations built-in.
With Claude and a strong hammer, I made a desktop app that acts as a gateway for LLMs and MCPs to solve some of my problems:
- One place to auth my MCPs and LLMs and to dynamically assign them to apps
- Monitor and intercept requests for debugging AI Apps and MCPs
- LLM routing with local fallback, using up free-tier first across providers
- Just for fun: Enriching LLMs with injected MCPs, Skills, JSON repair, msg compacting/indexing, Memory, etc..
It's a great tool for developing AI apps as well as managing a handful of MCPs and LLMs.
My most notable discovery was when I wanted to jump start my car, because the battery died due to the cold. I was about to bring out my jumper cables when my local friend told me to bring the cables inside first.
I didn't understand why and naively ignored what he said only for the rubber jumper cables to literally crumble in my hand, breaking as I tried to straighten them.
Mongolians are so resilient and have so much knowledge on how to survive in extreme weathers with a simple yurt and a livestock of 100 sheep goats and horses.
Cool idea but probably not that useful and difficult to accomplish. There are many ways to communicate that could be grouped into:
1. tab -> tab (same domain)
2. tab -> tab (different domain)
3. tab -> server -> tab
For #1, there are so many ways to transfer information it would be hard to detect and differentiate whether it's communication or just happens to be using the same resource. (e.g. one sets a cookie or local storage and the other one reads it)
For #3, it would be impossible to detect. Especially if detection is an issue, both tabs could be communicating with unrelated servers which talk with each other.
For #2, it would be the only interesting one as there is limited options (e.g. Broadcast Channel), but at the same time I assume rarely used in practice. And if detection is an issue, they would switch to #3 to avoid it.
* I waited for Duolingo to support Mongolian for years, and in one evening, created my own DuoMongo https://github.com/matusfaro/DuoMongo
* I wanted an LLM to mock up a server to speak arbitrary network protocols across any layer (e.g. http/tcp/bgp/snmp/arp) for protocol development/testing/cybersecurity and I got it: https://smotanacom.github.io/netget/
* I wanted a way to inspect/route LLM calls coming from my laptop, something like OpenRouter, but locally running, so I built LocalRouter: https://localrouter.ai/
No one is using these, but I love them!
Also it allows me to prototype so quickly, currently had an idea on a Language Server Protocol (LSP) that compiles English language into a set of software requirements (Intermediary Results) and to generate code and tests against those reqs.