Now from here we get into the dirty parts which is LLMs. The fact is that there are a lot of centralized chat apps with different data models and url layouts for their endpoints. My guess is that once I have a data model, I'll be able to convert a lot of the sdk example docs into using the system and my local Qwen3.8:27b setup. I'll still need to understand how they work but it might be less typing.

Show thread

So, from here bridges and clients just need to know the rpc protocol, probably json rpc split by newlines since it's easy to parse in any language. Then HTTP servers for blobs like images since JSON sucks for binary data. Now I can use whatever language sucks the least for whatever alt client ecosystem.

Show thread

Sidestepping all that will make things easier. My system uses a shared service that hosts an encrypted sqlite db that gets unlocked by the user during startup. The chat bridges hook into that for storing data and can do an rpc call to wait() for it to be unlocked before doing the rest of their init logic. I've become convinced SQL is just the easiest tool for this accross languages by a bunch of apps I've read the past few years like CoMapeo.

Show thread

Look, oplogs are great as a datamodel for mostly online systems that need full replication, but they aren't great for performance and being able to quickly show a user just the data they need in the moment right as they start the sync. Waiting for an entire sync is just not reasonable when your message volume gets high. This is why we need indexing at the protocol layer. Blogged about it here: blog.mauve.moe/posts/peer-to-p

Show thread

The thing that inspired me was actually the operation of my homeserver that has *all* the bridges. The different protocols being their own services has been great. All the extra stuff and needing to run a server has kinda sucked. The matrix data model is also hard to build lightweight clients for which has also been hard for progress.

Show thread

Mainly I'm working to make a sort of alernative to libpurple which uses domain sockets between bridges instead of having all that stuff in a single app. I'll be taking hits with this IPC protocol, but I think the reslience and ease of use cross language will be worth it.

Show thread

Lately I've been working on some daemons and infra for making daemons so I can have backgrouded apps that I can talk to from the cli in multiple terminals instead of having to deal with single instance UI hassles.

The more I make my computer more usable for my llm the more I make it usable for me because I can do more in the shell.

Any suggestions for mastodon cli apps that aren't super noisy or take up the full terminal?

Pisses me off how inacessible android apps are when you don't have a touchscreen or mouse. Navigating list views is hell. 💀 Maybe I can get some termux utils for my apps instead so it can actually be usable. 🤪

@jcsteh @TheQuinbox @mew My ebook reader has pauses in between paragraphs from rendering the next bit of speech that drive me bonkers. Currently figuring how to stream some text in this neural net based TTS so it can be actually passable. 😭

Show older
Mauvestodon

Escape ship from centralized social media run by Mauve.