The third edition, Clanker Goes to Space. You have to do that by the third edition. I don't know. The third sequel always goes off the rails. When are we going to go to space? We go to space. Well, Brent's going to space. I go to space every night with my Starlink, so my Clankers are in space, I'll tell you what. They are. Actually, this is going to be a fun one because Brent's joining us again. Hello, Brentley. We missed you last time. Hello. And we know that you have been living in open code, and we don't really have any idea of your setup. Something tells me it's not a default setup. Yeah. Because I know you. And there may be some tabs involved too, I'm guessing. And then Wes has been over here hoptimizing. That's when you hyper and you optimize. You have been hoptimizing. Extra hops. You've been doing a hoptimizing of open code yourself. Plus, open code 2 just came out. So we've got to talk a little bit about that. I've been working more on the hardware side of things. I just really find the intersection of physical hardware and agents to be really useful, especially for somebody who would like to build dashboards to remind them to bring things home from the office or vice versa. So I just I think there's a lot of maybe proactive kind of alerting that these agents are already very good at that could just then be put in the physical space. So I've been playing around with that this week. I've been building dashboards this week, and we've got a big batch of uplinks. People have been sending their uplink voicemails to us, and we've got a live mumble room and a chat room going. So there's so much to get to. But since we do have Brantley here. I wanted to start with you, B-Rent, and I think I want to start with this. You might have been right all along. You may have had, you may have been right. You may, so early on. You've never said this before. Wes and I thought, when is this guy going to get his crap together and deploy an open claw or Hermes? You know, what is this guy waiting around for? Right. What's taking him so long? He's just using open. He teased us about it a few times. And then as time has gone on, I actually think your approach may be the better one. You don't really need all of the fuss. You just need open code, especially these days. It's gotten so good with version two and all of that. Smart, economical, rightly. Yeah. And then you've got great model choices in there. So share a little bit of your wisdom with us about how you've been using open code. And are you on version two by chance or version one? Do you recall? I'm still on version one. Okay. Only because. Two just officially came out like yesterday. Yeah, and I was going to try like the beta of it. And then I did some investigations and found out that like I would have to change a few of my configs and stuff. And I hesitate now because it's been like six months of trying to refine this thing. So now that it's out officially, I think it makes a lot of sense to move, especially for the new features. Yeah. That's probably a next week project, I would say. But for now, only on V1. Yeah, don't send mail yet. I don't want to get some flack. Here's the way I'm picturing you using kind of like your own code workflow. Okay. I'm imagining you don't really ever go to like the web chat interfaces. Like if you've got a standard research question or just something you want to look up, I imagine you're probably often just firing up open code for the one-off type things. But then also, there's probably been some systems you've been building that are like multi-day sessions that are running and you kind of check back in on. I'm guessing, am I kind of in, am I warm? Am I cold here? Am I in the right area? You got some of that right. Definitely multi-day sessions is really important to me. And I'm trying to capture, the context between those days. Are you just keeping it on your laptop? Just local? It's mostly local. I have it like syncing between devices, but to be honest, I use my laptop like 90% of the time. So it's local there, which also means I can access it if I don't have good internet connection, which is true for me sometimes. So a lot of it is just like knowledge capture, but also trying to help me continue a project, I guess, is a way to do it. So you're using it to update notes as well? Yeah, I have multiple note systems at this point, which I don't know if I need to consolidate them or not. So it's evolving. Yeah, I don't know what you want to dig into, but to answer your first question, I actually do open some, like, web-based chat bots from time to time. And I think it's, like, I've come up with maybe two categories of questions for agents. One of them is, like, some quick question or, like, super fast conversation I want to have that generally I don't want to save long-term. Like it could be just a random curiosity about how something works yeah or a quick answer i need from a lot of different sources you know so i can just consolidate all that for me but, if i want to do like sit down and do a project where i want to either save the results for long term because i know i'm going to use it consistently or in the future, then i never go to the web for that i've tried i've kind of, tried it a couple times because opening firefox, window is much faster than opening like open code and like getting into that mindset but i'm always disappointed and i just copy and paste the entire thing into open code like can we just continue this conversation right that is a nice handoff you can do yeah, it's a little clumsy but it works so you're long, a few different modes your long-term tracking and stuff that's going to like That's like a markdown file, basically. I would say it's a markdown infrastructure at this point. Yeah, yeah, I know what you mean. And it's multifaceted. Like, I almost see project folders as a bit ephemeral at this point. So I implemented the LLM wiki from Carpathi, but I think I might be using it differently than a lot of people. Like, I heard some people are just, like, ingesting reference material into it. Yeah, like research they're doing, yeah. Yeah. And I partly use it for that, but I'm using it for a lot more and mostly just like automated knowledge capture for later use. Sure. Yeah, yeah. And also a place to record like, let's say for editing my open code config, that's a place to record, like the why about certain design decisions that you wouldn't necessarily put in the config itself, let's say. But that like i don't want my bot to go out every single time to find out the best practice for creating a skill or something like that right so whenever i come across a piece of information or like some learning, that could apply in the future it's going in there because it's just so much faster to retrieve yeah what do you call it i just call it my ai wiki, but i i honestly never. Like browse to it in my file manager no you have using it yeah primarily through, like i call it the wiki save command but that thing has evolved lots oh so you have like your own command for saving stuff to that wiki yeah, and it works in multiple ways and this came about just through, like the more you use open code the more you want it to yeah and you wanted every your workflow very easy yep yep i follow you totally right and like so it's low friction just capture this and, I've kind of come to the point where if I get frustrated with a particular, I'll call it a behavior or some kind of artifact that I don't like that it's producing, if that happens three times, then I'm making some kind of infrastructure about it. So it never happens again. Yeah, same. It's like, I'm here to be productive and I don't want to deal with stuff that, you know, is just going to annoy me. So I have this command, which I just call wikisave, and it's super easy to get to because none of the other commands have a W in it. So it's basically a one key command to get to. Oh, yeah, that's nice. But it's used in multiple ways. So if I'm, let's say, in the middle of a project and I come across, some really important piece of information that's like an aha moment that I should definitely save for later, then I'll call this command. And it will just capture that information. Bit of information with enough context that it can be used easily in the future but it also sorts it in my ai wiki through like various domains so, because i'm working on all sorts of different things these days with my clankers like everything from, reconstructing carburetors on atvs to like Like, yeah, so many, like the van is just a whole entire thing, but also, you know, tech projects and stuff. So I have like multiple nested domains just to try to keep that organized and make it very easy for the clanker to dig down into and find the correct information very quickly. And it's been pretty good. Then do you have sync thing pointed at those markdown files? I do, but I haven't really, like I thought that would be useful, but I haven't really used that at all. I mean, it's nice in the sense that maybe you have a copy somewhere else. Exactly. Yeah. And it's certainly like at the top of the priority list for backing up because it's now become this treasure trove. I know. I know. Learned lessons and like almost a history of my, well, projects basically. So it turns out my brain's not good enough to remember everything that I encounter. It's exactly what a guy like you and I needed really is. Oh man, it's so sweet. So I think I took the original concept and just modified it. Be my own and do what i think it is important for and i think that's really the theme throughout my entire, open code journey really is just configuring it to be mine i like that you kind of took something that like i think a lot of people can are using even per project and turned it into like a monorepo approach. Yeah i really hesitated with that because i thought the per project approach, made a lot more sense like keeping that information where you're actually using it but it turned out that, a lot of that information was useful across projects so then it was like oh which project did i save that particular thing and so very quickly ago it was yeah exactly so, knowledge very quickly got got stripped out of my projects and put into like a central place. I unfortunately have been using obsidian more because the clankers are using it and like you i have it's a skill and i can say let's capture this in obsidian and it will create a project folder with a, technical brief that is an overview of how it's architected and then information that a future llm with no context would need to make any kind of changes updates or modifications and then a separate doc that it creates, that is kind of like an overview for me if i want to talk about it on air because i i work on so many things i just forget i make that elo friction so it just It captures that, so I have, like, the links and, the talking points and some of the decisions that I made get incorporated in there so I can remember, oh, yeah, I had to decide to do this. And then the last bit it does is it appends my daily note in Obsidian, which is a real brief, on this day we worked on this and then we checked it in or whatever like that. So it actually modifies or creates three different documents with one command. Because they're great at that, you know? And I would never have been that great about my documentation. You had the idea, the intention, but actually getting it all the way through, So there's a lot of friction there. It's not that you don't want to do it. I didn't want to. And the only other layer that would be, I'm sure you've thought about already, Brent, but I find useful is, of course, all of that stuff on my side is. Is goes into git right so then like if the agent makes a mistake or something like that you can you know you can track that you have kind of a log there then there's also another copy somewhere else in theory depending on if you put it off remote, so that's you know also a nice option is you could back it with git, yeah i at first i was using git because i didn't trust the clankers yeah yeah sure, you know it was like smart one layer of security with you know along with a bunch of backups and stuff like that but then it became very quickly really powerful tool because it, is like a built-in history with the context right beside it yeah, and so i just now have it use git everywhere before i used git for very specific projects. That mostly only had to do with like coding type stuff, now it's like freaking throw everything in git it's so cheap to use and it's tiny and it's the value is way more than the cost of implementing so it it i use it everywhere absolutely everywhere now which is insane very it's a very different brand like i could years ago i could see future generations that come in and start using this tooling after it's had four or five six years of cooking, where they might not do some of this and some of us will look at this as oh they're not following best practices but i feel like i've seen a little bit of the future recently muse is pretty good, chat gpt's dot memory is kind of next level to the point of and i'm not doing this but you could almost entirely rely on the memory for everything, it's it's so good, that they clearly have done something so like right now and i'm working on a dashboard for it but right now i probably have a task list that's 25 items long with all these sub items and and it's tracking all of it. So it makes me think that when memory gets really good across the board and the harnesses have because this is really it's not a model thing this is a harness thing there may be maybe they've built something into the model to facilitate it but this is really a harness tooling thing that makes this possible and so in theory it's going to be available anywhere you want it and so some of our work behaviors that we've developed around this documentation and all that, may shift as the things just get incredible memory, well i think it kind of converges you know the designs converge because you're solving the same problem this is just the stepped up generic version of it yeah right because you need some sort of like structured searchable in multiple ways data store that can sort like, references between the items in it and categorize and so you build something that's flexible enough to do that and then surface it through a bot that can handle the interface with whatever the api shape needs to be. You're kind of cooking so before we uh hear about wes's open code adventures anything else i was curious if brent's doing anything for search like indexing it with anything or just like get grep or i think last time you were on you mentioned you're using the nix os mcp do you have like any search tool i mean specifically in his of, the wiki itself oh though that's a good question too okay yeah so how well are you they're probably just trolling it and finding the i mean it's all marked down is it grep is it do you have you have it yeah i wasn't curious if you developed a query interface or anything, Not for myself, but there are rules in place for like how the clankers should navigate the tree very quickly. So it's pretty clear about like, this is how it works right up front. Like this is how it works. Here's how to do it very quickly. And it uses grep, of course, but I don't care. Like make it fast and make it accurate. No mistakes. So yeah, I found it's pretty darn good at finding the information it needs. And mostly i i posted a screenshot um in the chat there but mostly i found like multiple layers of domains was like the fastest way to get to that information as opposed to like, i don't know just just a giant flat folder of a bunch of stuff is not necessarily the best way to get to it so so instead of just, grabbing the entire tree for something is like at least dig into a domain a little bit till you get to something where you should start grabbing and that that has been a little bit faster i found, or at least more accurate nice yeah i like that but i never i thought i would but i never go in there myself yeah it's mostly like a shared brain that i use through the clankers, uh gene bean mentions in the chat room that he's been starting to use beads as a to-do list and a link together the various things that i'm doing across multiple repos gene i also play with beans beans. You can tell i i'm sorry i also play with beads and i have used it just as recently i used it with the uplink project actually uh after i'm not using it for a while i both like it quite a bit because every like decision and everything's really well tracked every little item that needs follow-up, everything every decision that needs to be like either finalized like everything is, you don't really have to worry about a multi-day session losing the threat because it's really good at capturing all of that. But I also find that 30, 35% of the session time is actually spent managing beads. Yeah, there's a lot of time because there's a lot of work to go through and update it and it's get involved and it's an involved process. So it's both kind of like sometimes I find it useful and sometimes I find it's almost too much scaffolding for the scale of the project that I want to do. And so what I've actually opted to do a lot more often, at least for like agent coordination and things like that, is simple job-specific JSON files that they can lead. And one bot is the lead on that JSON file. And they can write to that in a structured way that they can understand that seems to work, but doesn't require the complexity of Beads. And you could probably extend that. I'm sure that's probably how you do some of your ongoing projects, right? Yeah, you can kind of take a lot of the ideas from Beads, like some structure. A lot of it's having like a durable log of all the things that you do want to record right so that you can reference it and instructions for working with it and so you can kind of take various subsections of that and implement the parts you want depending on you know the seriousness the complexity, of the scale of the thing you're doing because you know you might need more or less like where one thing you want like the full bind binary you got to get and like wired into like get pre hooks and all that kind of stuff and enforced and ci and other stuff you might just want like a log to make sure that you have a decent history of what's been going on and decisions are noted and there's a clear to-do list or whatever you've also played with like saving your session to sequel which also could be very useful maybe we could talk about that but just to close the loop on beads. I think it's worth experimenting with for a large project. Just to get just to get an idea of maybe what it does that you like just to see you can do what west said and then kind of build your own thing based on that and you kind of maybe need to start with it, it's it's also i think probably pretty great if you have multiple people working on the same project with their own sessions and their own agents i I could see having beads in that scenario being useful as well. So it's again, sometimes these are sort of, it depends. My answer would be scale of project. But let's talk about your open code adventures, Wes Payne, if you don't mind. I got a little jingle for you. Well, I didn't get that. Oh, well, because you were our opener. We can share. You're the opening act. You were the opening act. Oh, okay. All right. Yeah, there you go. So I don't know if you want to talk about the SQL stuff, but you've got a couple of things. You've been doing an open code that I find to be really interesting, including kind of like Brent making it your own. Yeah. I've spent some time fighting getting my little, hey, I just want this to run as a systemd user service. So it can be kind of like easily Nix managed, but also kind of set up the way that I like and reliably there. You're talking about the open code to back end. Yes. So you want it running as a systemd service. And like available, because I also like provide it over my mesh network. And so like I wanted something that could turn it, still run it as the user. I want it run as easily with that kind of level, but also like make sure it's always available because it's become infrastructure. Yeah. I have to imagine, though, if you're running it as a systemd service, at least by default, it's going to be pretty limited. And if you're having this thing manage your box and do rebuilds, did you have to accommodate that? Tell me about the setup. Well, mostly it just then it kind of just matches whatever user it's running now. So you just run as a systemd service as a user. It's using the user manager of user services. OK. Yeah. And then so you can kind of scope that user, give them sudo, give them sudo for a limited thing, you know, whatever you want to do, depending on what you're having to do on the box. Is it just a place to do code and push git repos or is it a system manager you can kind of customize it from there but most of it was like there can be clients that steal the port in a mode or like you can because if you, if it if there's a loop where like maybe it restarted or something and then you launch a tui it'll find that there's nothing running and it really wants to launch the service and maybe it wants to start it itself yes and i just, i didn't want that anymore and so now this thing is capable of not only does it have sort of exponential back off in case there is sort of a loop situation happening so that it can always have it can have restart always uh so it won't get to like a silent just, dead once and yeah i have to come fix it later sort of situation but also not go crazy on hot looping or anything uh like that. Yeah but it'll also figure out if there is another server running kill it and then become the primary so if for some reason the open code client did start the back end yeah it'll go and take that way i didn't have two running because i was getting i was like why did all of my two ways restart what's going on here, So that was a little incidental journey because I've been using it more. That might be one of those things, honestly. Upstream fixes eventually yeah but yeah it's nice to have done and there's modes you can do like you can launch the tui or have a wrapper that'll point it at a specific server if you don't like there's various things but i ended up down this path and, finally got it working just right yeah so it's always available now as a back end and then your clients you just open code dash dash server you don't have to because it it's set up as the default so it registers in the json, file and then they launch it up great yeah so it feels just like normal i just never have to worry right now. Getting confused about one getting launched in a different setup or as a different user or something. And see, this is why I think you'd like this a lot, Brent, because he can just close the terminal and walk away and it keeps running on his server or close the laptop lid and walk away. And then the other thing that's really nice, and this is where I think this is where I'd find your setup the most limiting for me, is there's a web dashboard. It's also really easy to build anything just to talk to the API. So I have a little Firefox or web dashboard that just lists all my open code sessions. And I can actually jump in there and read them and input, all right, yes, continue, from my phone. So I can start it on my desktop, close the terminal, walk away, pull it up on my phone. It's still running. It's really, really, really, really good. So that's why you can see having it running as a systemd service becomes kind of a necessity. You know, using these tools made me realize how my brain works a little bit more. And like Chris you mentioned like continuing a project when you're on the go or with your phone or whatever you're driving down the road or something not while you're driving but while something's driving for you, And it made me realize that like my brain is kind of all over the place like that too. Like I'll sit for a couple hours on a project and work on it. But then once you step away, you got all these like new ideas about how to, you know, fix the project or how you implemented something wrong or whatever. Mobility is huge. And I'll talk about it later, but why I have drifted into using. The open AI dot thing more as an orchestrator, because they have nailed mobile app and they have nailed voice input. Yeah. And so those two things means, like, the promise of these AI things work on stuff while you go about your life, like, has gotten even more close. Like, because what I got to before was, like, I'll sit down at the computer and I'll have it do some stuff. And while it's doing its turn, I'll go, like, do some dishes or, you know, go see what the kids, you know. But now we're at the point where I can not touch the laptop all day. And Gabriel worked. And still have things getting done. Like, I had things happening in the studio. I had projects being built because of that mobility. For me, it's like, it's a whole other step improvement of how to interact with these things. And it's just like you're saying, it's like, oh, this just occurred to me. I'll make a quick note. Oh, this just occurred to me. I want to check in on this because this has to be ready by tomorrow. Ooh, in Matrix, Lazzy 486, having all those sessions, Hermes Relay lets you jump into any existing session from your Android. Oh, yeah. Ooh, delicious. This is where Hermes needs to really catch up is they don't have an official mobile app. They know it. They just have done some hiring around it. They're forming a team, but that tells you where they're at, too. There's been a lot of community apps. I've got a couple on my phone that have come up along to try to close this gap. But it really, I think, needs to be something native. Because it's really good when it's native. And the voice stuff, when it's live and interactive, it's really good. Like the other morning I was just getting ready, walking between rooms, just called the bot, and I was just like, okay, let's go through our rundown. What do we have in flight today? And, all right, don't forget we need to add that issue from yesterday. Okay, yep, I've added to it. All right, get to work on the first batch, and by the time I arrive to the studio, it's done. That's starting to really be a helpful assistant. It actually was helpful. Not in your way, not frustrated, not like two steps back, one step forward. The other problem I just solved, the kid was having a problem with a game he has installed in his machine, and I, for some reason, couldn't get SSH access. So I called the bot while I'm working on his machine, and I, from the other end of the problem, have it work the other end of the problem while I'm working the end of the problem on my side and seeing where the network issue's at. It was just remarkable. And my kid's just sitting there going like, holy crap. This is amazing. Like a wizard. All right. So that's a good one. Getting it persistent means it's like a utility that you can rely on. These things can run forever. The other thing that's really great is that OpenCode 2 is fantastic, that if the backend does get restarted, the frontend clients handle that. And it can auto-resume. And they do it so well. It's almost seamless. I've got a three-week session upstairs. The OpenCode backend has probably been updated two or three times since that session started, and I just resumed it today. It's really good. So, okay, I've got to steal that if I haven't already. I may have already stolen that. But what else? I know there's some other things you've been doing. Yeah, so then the other part is, you know, trying to make compaction not a big deal. Yes, yes, yes. So there's some stuff you can just do by default, like you can change when you compact so you can make sure, like, don't get all the way right to overflow and then maybe have a lower quality result or run out of room or have like a model issue. So you can sort of set whatever preemptive compaction threshold you want. And if I could interrupt really briefly, I would also add, depending on the model you're using, Wes pointed this out to me and I felt really stupid I hadn't done this sooner. You could just, in the open code session, say, review the open code settings and see if I'm using the ideal compaction settings for this model. I can't believe I hadn't thought of that sooner. You can also set specific compaction a model. So if you want a model that handles your compaction, you can also set a small model that'll do like titles and summaries in the stuff. So, you know, if you want that kind of stuff to be a certain way, you can do that. So like a little dedicated model that's just kind of summarizing. Or one you know you like the way it summarizes and that kind of thing. Okay, yeah. Which is, especially for the compaction one, to make sure you pick like a model that's going to be big enough to handle most of the things you're doing. You know, it's like high quality, but actually getting everything right. Do you have a recommendation there or something that's worked well for you? Well, it kind of depends on what, plans you're using. I would probably just default to DeepSeq for that job. Yeah, probably would be just fine. Yeah, reasonable, pretty intelligent. I think that's what I'm using right now. Yeah, okay. All right, so you got a model that can be kind of sort of responsible for compaction summarization. And then you can also change how many of the previous messages get re-injected after compaction. Oh, this is an open code setting? Yeah. Okay. But that wasn't quite enough. I wanted to go further. Okay. So now I have a compaction recovery skill. Oh, okay. Yeah. A skill. That's not what I expected. Okay. And so if you use the skill, then it teaches you how to go use the API and the look in the database directly. And then it can go find the history of what was compacted before. So we can catch up on the entire session. So the skill says, use this API at this address. And the database scheme is like this. Yeah, here's how to connect. And what is that database? Is it something you created? Oh, no, it's the OpenCode database itself. Oh, okay. So this whole effort is just sort of trying to make whatever is in OpenCode surfaced as maximally available to OpenCode. I see. So you have to do this bit. Okay. All right. So this is how you close that loop once you've set that up. I see. Interesting. And is it just like a SQLite? Yeah. Okay. I'm doing something really similar now, I think, of it. Are you now? Just kind of in a very different context, but it's accomplished in the exact same goal. Well, I'm just sitting here letting my context compact like an animal. I... I haven't had to compact my context in, like, months. Really? I'm also using, like, really models with huge context. When you're writing, like, software or things like that, you go through the context a lot faster than the nodes and things like that. Fair enough. So I have something on that part, too. So, like, obviously you can do stuff like, you know, inject a handoff if you know you're coming up on compaction or if you're doing it manually or as part of the, you could probably automate that, too. Back in the day, Brent, you remember this, what we used to do is we would watch the percentage and then just before it got to 100, be like, write everything out to a markdown file. Right, yeah, something like that. But you can also have stuff, right, like where you can concentrate on specific things. Maybe you want to capture, you've developed like a particular way that it responds or a mood or a tone or a specific point of view that you've crafted for a particular task. You can maybe capture that into a soul. That's a pretty easy thing to do. So there's standard stuff like that. But then if you're using this, just go catch up on the whole session, you obviously don't want it to just read the whole session again because then it's just going to have to compact again, right? The whole point was to not do it. Right, of course. So that's where it's paired with, there's a paper about like doing recursive language models. But a lot of the, some of it you would need to like have a different harness and inference set up because it's different enough. But a lot of the ideas are totally copyable which is you want to fan out to like tree-shaped work and use the file system as the handoff point so that you never send big summaries in the actual context you just use something like a return code to signal the status and then it goes and the top level thing can go check on it it can be careful about not reading the whole file, and then specifically for like research work or whatever you can sort of or like maybe you're trying to summarize a transcript or something you can chunk it up fan that out you know then just generate bounded summaries that then can get assembled and then you have the reference stuff all on disk so it can be indexed or searched or whatever without having to ever have like big huge chunks of it. In the uh same context and you kind of try to you know so when you do the fana you try to have it focused so that like you have good. You know caching of the prompt and like this bot's always the one doing this thing so that you don't have that spread out and then kind of costing you more money too and so if you do if you do that and that is also referenced in that recovery skill, so then the bot has a way to like farm agents out to go catch it up itself up on the session without having to read the entire session and it can do that as you're saying with the subagents so it's sort of doing it simultaneously. And it doesn't add more, a huge amount of more context right there in the session. We got to get this set up. This is so cool. I got to get this going. The similar thing I'm doing, and I'm curious... Wes how you think it's different or the same but I have like save session command and skill that I use constantly so anytime I'm like. Done sitting at the laptop for now I'll run this thing or if I'm like done the project I'll run it as well and does a bunch of stuff including that like wiki save command oh that's a good idea this is I should steal this idea just like end of day saving kind of a thing, yeah because i found myself having a hard time like sitting down to even an open open code session and and remembering where i should like what was i doing and where should i continue so i this save session, command started out like really early in my open code journey but has evolved a lot and one of the things it does is, when i run it it grabs the current sessions id from OpenCode so that I can record that and like quickly go back to the database to grab it. But I also just, I was like, well, why make that two steps? And so it just grabs the entire transcript of the conversation and just writes it to the current project directory. So even if for some reason the database isn't accessible or I don't know, not on the same computer or something, who knows, at least there's some really easy to find record of what happened in the last session or the last few sessions because they kind of add up. And that's been an interesting way to, like, continue without even needing compaction or anything like that, because everything's just a readable file similar to what Wes was saying. Well, you know, speaking of beads, one of the areas when I was working on the Uplink project that compaction did bite me is because really the problem with repeated compaction is sort of a loss of fidelity in some of the previous conversation. And at some point, even though it's in the agent's MD file and it was in the conversation and had been following it for days, at some point, like on day three or four, it just stopped updating beads. It just lost that in the, oh no. There had been a clear instruction at one point, but it never regrounded in that. And I noticed things were moving along a little faster. And I was like, oh, what's going on here? Oh, beads. It is helpful also to make sure after a compaction, if you can automate it, that it does like explicitly reground itself in, anything that isn't automatically injected. But no, I like that a lot, Brent. That makes total sense. It's just sort of an inverse idea in a way. And also of the explicit beads or keep a dev log thing, yours is like the open code thing can just be a lot of that. It is the log. Yeah. It also feels like just kind of a way to have closure on the day. Yeah, and that save session command also updates a change log and the project's agents MD and also, like, updates a to-do list as well for, like, what was done and what needs doing in the next session. Isn't this funny how we're all building these systems like this? We're getting the same end goal, but building them very differently. Unique to us, which is probably what it needed to be. Mine kind of grew out because I'd already written an open code work review thing, and so that went down the path of, like, well, if I already have this API and database, why don't I just make it maxillately available? I, so recently, because I've been working across multi-agent platforms, have started working on a project dashboard that all the agents share. And what it is, is essentially a project list, where they're at, what's blocked, what needs my interaction. And then I can go to that project and I can give them a steering prompt and submit it. It goes to a queue and then they start the project back up again. And then it can resubmit to the dashboard. I think I'm building something very similar. Are you? Really? But Gene Bean notes that current Beads has some integrations with some agents to hook in post-compaction. So that's nice. Oh, Gene, I will look into that. Thank you. Plus one for Beads for sure. Yeah. And maybe another idea to steal. It's funny that you're building a dashboard too. Yeah, I just needed something that was across Hermes and across the other guys. Yeah, and it's actually the dashboard sort of secondary. My motivation is more just the primary. Coordination. Yes. Do you want to talk about that? Yeah. Yeah, because you've been talking to me, as sort of an agent messaging bus. So that's how I've been kind of framing it. And I could see how this would be a byproduct of an agent messaging bus. Yeah, that's kind of the idea. Go with the bus first and an immutable log of everything and then build the dashboard or whatever other views, charts, visualizations off that. This is not an easy problem to solve because you've got, I'm going to presume, Hermes agents behind, you know, like your ISP, which is probably on a tail net. You've got cloud agents, like a Muse agent, which has a very restricted networking environment. There may be future agents, different platforms as they come along that are in their own little cloud containers. We may try things. We have a buzz system on Show Factory. So there's, and that's on its own very unique perspective. Networking setup there's no direct in and out of that box either so you have to architect this way somehow where they can have all of these limitations but still coordinate with each other, yeah this started actually we on linux unplugged we were playing around with muse and we hosted a nix built version of our site yeah website right yeah and so to get that done like i want to do stuff but i was also like the nix built site had been done by an open code agent locally on my workstation and i wanted them to work together and i already had this proxy vps and And so I ended up setting up kind of an ad hoc little queue polling, like they were both looking, able to access the VPS and then use it as a coordination. But it was very ad hoc and obviously very temporary because that was just something we spot. But the nice thing about a VPS, they can both get to it. Yeah. And then this kind of overlapped, folks had been writing in with things like Vicuña. And this was sort of like, okay, well, maybe that could be a single source of truth, right? It can already do Kanban and Gantt charts and reminders. Yeah, that was really appealing to me. But I sort of, it has a nice stuff. It's got, you know, it's got SQLite, it's got due dates, you can do filters like done equals false, priority, less than two, comments, sub-tasks. But I decided, like, it just didn't seem quite right. Partly, like, the inbuilt MCP thing, everyone's using, like, third-party MCPs, which is fine, but it seemed like the MCP kind of had to add a lot at the agent layer because it works, like. You don't, you essentially always are doing an overwrite. So you kind of got to make sure it writes back the same, all the details. It's easy, it's easy without the MCP layer, if you're just using the API to sort of overwrite what you had in the task. And there's also no sort of like a mutable log of all the changes. An agent could easily screw that up. A human maybe not as likely, but still could. Agent kind of likely, actually. Yeah, so. Okay, good catch. Every writer must know every field or silently drop the rest. Yeah, okay. And then, yeah, no field level revision history. Yeah, that'd also be nice, especially when you're, again, working with agents. I think there is an upstream issue on that. I'm sure, yeah. So it seems really nice as a really good tool. It just wasn't quite oriented to what I wanted to do. So I ended up looking at NATS, which is like a pub sub situation. It's like a little Go binary. Okay. They've now kind of like rebranded around agentic stuff. Real-time communication fabric for distributed agents and applications. N-A-T-S? What are we? N-A-T-S. unifies messaging, streaming, and state into one real-time system, connecting services, devices, and AI agents from cloud to edge. So they have the messaging broker thing down, and now they're kind of pivoting to, hey, this is going to work great for agents. I see. Yeah, and so you can have sort of subjects that are just like agents.muse.inbox or something like that. You can make it task-specific, agent-specific. Sounds a little bit like Notify. Yeah, there's a lot of similarities here because some of it is doing a similar role. Okay, but more. Yeah, and then they also offer this thing called Jetstream. Like, the classic thing is kind of more just for real-time stuff, not necessarily durable log of events, but more like active messaging back and forth. But Jetstream is a persistence layer on top of the coordinates, streams, and consumers. And so this lets us have essentially a durable event log of things, which can be states of the project, which can be messages to pass to things, which can be decision events, sort of whatever you need. And it already sort of just acts like a bus. So the idea was like a message bus that also has a durable log of everything that's happening on it that the agents use and can coordinate on together. And then it already sort of is set up to do like clustering and networking kind of stuff if you want. But to start, I'm just deploying it because I already have a bunch of stuff kind of hosted on the Hermes box. And Hermes is going to use it too. So, and that was a NixOS box. So I'm deploying it there as a trial. Which is a VPS. Yes, which is a VPS. So you've got something that's reachable. And that lets me have it also be a, it supports being in that mode. It has like, you know, ways to do auth so that it's secure, of course. Easy to set up behind Nginx and all that with NixOS setup. So it's trivial to just try it out that way, which is partially why. And it's Apache license, so free to use. Yep, totally. Yeah, and then so you kind of got to decide like, what's like, what kind of events are you going to do? Get the bot to model the event stream and that kind of stuff. Yeah, yeah, there's a lot of little infrastructure stuff now, huh? And then on top of that is like this projector component, which reads that. And then from that derives all the views. So that's how like you take the event log. Oh, interesting. Yeah, it's kind of like an inverted database. And then from that, you derive essentially a database of what the current state is. And so from that, you can generate what the actual current tasks are or, you know, whatever you need. Huh. And you can tailor the different consumers can read the same log and get and project different things depending on what they care about. Crazy. But as long as it's safe in the log, you can always rebuild it. And you might want to do snapshots for efficiency. There's various techniques to make it not go crazy. And then to get something like Muse to use it, it's basically that layer. It's just a skill. Just here's the API, here's an off key. Yeah, and then like some, get some like clients going just so it's easy for them to like, hey, I want to review these tasks. So there's like a CLI they can use? Yeah. Okay. Huh. Wes, this is super cool. It's very new. So we'll have to do updates because I'm just kind of getting it all working this week. But my hope was like it could be, make it really easy to have not only a single pane of glass to like what all my agents are doing, but also make it easy to use whatever agent to manage whatever other agent. Because sometimes I might want work done in a particular place. Yep. And, you know, you can also do that with like, hey, go SSH to that box if that's what it is about. Yeah, yeah, yeah. But sometimes you might want like a specific role or like it already has the right context and the knowledge. Or the other problem I have is a project's in flight. It's currently using the build system. Another project is about to finish up and need the build system. And then there's other project that's stopping because the work tree is now dirty, right? Like some kind of coordination there would be nice. Just this is what these things are. first we're going to do this then we're going to do this then we're going to do this. And then as a result you'll be able to drive things like a dashboard or a report or yeah that's that's the hope try to not make it too complicated i know it sounds pretty complicated but, i'm jiving it goes i'm jiving i mean the pub sub part makes sense there's little inboxes and stuff right it's the technology on top of that and then and the bots know that pattern right because there are pretty good developers at this point so it's like just as well native to them. That's pretty cool. I love that. Okay. I'm going to, I'm stealing some of these ideas, just FYI. Yeah. And then I was able also to get, I was just playing out with various stuff. I thought only Tailscale would work on Muse, but I was able to get, I haven't gotten Nebula working yet, but I got NetBird running. Yeah. Well, when you go in, because you found this, when you go into the network privacy settings area and you drill in, you can turn on TCP and UDP. So I got all kinds of stuff working now. I got SSH outbound working. I got, I got all kinds of things going. So that, that helps as well. So you can use that. And then, So that opened up easy ways here to where like I could have the minimal that stuff be public, but still, if like other things need to happen, I have ways now to connect the agents more reliably in some of the more obscure places. So maybe I'll start there because I've been, unless you've got more. I'm loving it. So don't let me interrupt you. But I have been trying to solve the problem also of multiple agents with the same restrictions coordinating with each other, working on the same thing, not working at cross purposes. The other thing is like, maybe I want this, like, say the open AI dot thing, because they're right now they're giving you free Astra. And I that's hard to, I mean, Astra is great. So why not? So why not use that to do some of the lift of the development I need done? Because it's unlimited Astra, quote unquote. But some of that work needs to coordinate with things that are already projects that number one's been working on or data has been working on my Herbie system. Some of it is stuff for those agents. And so I needed to solve this. And it's really limited in these kind of these commercial hosted age of worlds. OpenAI kind of has its own ecosystem that I had to wrap my head around a little bit. And I took advantage of a project that has come across our radar before, but didn't really register with me until recently. And it's called DotLink. And this lets you create a custom MCP that then your chat GPT web or codec session or a dot. Can use to communicate to your system that's running the mcp server and they facilitate the connection between the two using what is essentially an open ai branded vpn right their tunnel service it's a tunnel service which has gone down on me once so far, and the nice thing about that is you don't have to open any ports you don't have to do a you know like a cloud flare tunnel, uh it just handles all of the networking so you can have a machine that's on a gnat behind a firewall and then you can establish a link so i set up this dot link which thankfully they let you add custom mcps to the open ai dots and connected to my nomad system, it's interesting in some ways it's limited short tasks really it's designed for get in get out that makes sense and then if you want to do anything long running you have to hand off to like a systemd service that's just fine then you get like nine hours or something like that of some task. And then of course it has access to the command line and things like that so you can have it use hermi cli open code ssh and things like that you can set up whatever wrappers you need to go trigger additional downstream work and so now it's able to coordinate using the task management system that my hermes agents already have and it's just working with them and and using that, so it just slots right and i can, call them up and have them start coordinating work which has been really great so that has been the dot link so i just wanted to mention that that's handy that's the way to do it in the dot ecosystem right now it's essentially a custom mcp and if you're getting a free dot right now you can do that, the other thing i wanted to play around with because this is a direction that and again this is just a quick update on the commercial agents muse has been really leaning into the community gadget aspect of it oh yeah they have this is an area the other people like grok and inspire and, open ai really not thinking about and they're all esp-based projects and there is an sdk you get an sdk key from them you can sign up and then you can flash an esp, with different firmwares that support the muse and it creates a background like https connection to the muse service. So I set this up on my ESP32 box that I talked about on the last Clanker stream, which has got a little screen and a little dock that it sits in that has a temperature sensor and USB-C power. And it also supports battery, a little lithium battery as well. So I can walk around the studio with my Muse bot. And it's a push to talk button. But the thing that's great is you can take advantage of the screen. So by default, there's a little Muse character on there. But it's pretty easy to fork the firmware, which I did. And now Muse can generate images using the Muse model and then send them to this to get my attention. Like, hey, there's an important email or message from your daughter. That is handy. So I can get event-specific images on that little display that the Muse just generates and sends them. I'm a little disappointed I don't see it here in front of you. It's upstairs, yeah. And then I can, so it's push to talk. It's not like an open mic. So you push to talk, and then I can speak to Muse. And then by default, Muse writes back on the screen. But again, I forked the firmware and tied it to 11 labs. So now Muse speaks back to me as well. It's kind of a crappy speaker, but it works. Yeah, so I think they should maybe get a little more attention for this SDK they put out there. It's actually pretty good stuff. And it shows you where they're going with the Muse system. So, for example, they have like an ESP32 e-ink display where Muse can generate little dashboard displays. But the one that I think is interesting, they're actually going to make available as a device. Is they have this link and this link does nothing but plug into power and wi-fi this is a unit not an actual link, the unit is named like yes yeah and what it does is it links your home network to muse it's kind of probably like a little you know like a little tunnel or something yeah, and then what they're going to start doing is muse this will be just for the average person right because all they're going to have to do is plug this thing in and then the muse app will detect it right now you have to put the muse app in developer mode by the way this is what developer modes for when we were wondering is it basically gives it access to bluetooth, so you put in developer mode then it detects the devices immediately there's a little card that comes up you click attach to your account and it links it to your account, and with this little device it'll give the muse, access to everything on your land now there's a lot of ramifications to that but what the normies will use it for is like human hue light management or playing videos on their lg spying television you know these types of things will all be available because now it's going to be on the LAN talking to anything that has an API. That's where they're going with this thing. And I think it's so playing with this now, it's already really well polished. The Muse is able to download the firmwares, fork the firmware, build the binaries, do all of that work for me, customize it, everything. And then it's just like, here's your four files, run this one command on your host. It's kind of funny that after years of sort of like, not that home gets bad or like there's the Google Home stuff. Yeah. But like the thing that maybe will be one of the better experiences is Muse getting into your network and then just spilling the strings from there. It's, it's, there's a wave of normies about to get smart devices. It's happening again because that's what this Apple event this past Tuesday was all about. Home view is, And they're smart home devices. All of those are on Matter and Thread, which is an open standard. Anything that talks HomeKit easily, easily integrates with Home Assistant, which makes it then easy to address by API or any of these bots. And then you've got things like Muse gadgets and whatnot that are going to give these things. It's like there's going to be a wave of people buying smart home devices just to work with this stuff. Yeah. So I wanted to give a quick update on the commercial dot and muse stuff, just because I think it's worth keeping an eye on. I'm already thinking through like how to incorporate. They're really good at the proactive stuff. They are. In a way that I find frustrating because I want my Hermes agent to be that good. Yeah. You want it coming up with helpful stuff for you, working without you having to ask it. I'm getting jerked around by a company, a bank right now, totally jerked around. And their proactive monitoring of the situation when I'm busy during shows has saved me immense headache, immense headache. And so I've been thinking, like, I got to come back around now to my Hermes agents and make this better. Like, it's already getting me excited about that because the problem is, is if I invest too much time and energy into these platforms, I'm eventually going to get rugged. I'd much rather have it something that it's under my control. It's model agnostic and all of that. But they have been educational from a functionality standpoint. It's useful to study what they're building is, I mean, they're clearly putting a lot of engineering thought and energy into it, even if you don't depend on the final service. And the thing that's funny is, you know this, and I talked about this on the previous stream, I've been working on a little dashboard for doing just voice interaction with my Hermes agent. Oh, yes. And I got pretty close. It wasn't conversational, but it was, I could talk, then he could talk, I could talk. Or I had push to talk going. And I was, because I was exploring the idea of like, I think voice is going to be big for me when I'm, when my hands are busy and I just need to brain dump really fast. I think this is going to be good. And I hadn't quite nailed it, but I was getting close to like, I could, you know, drop something on him and he could deal with it. And then the doc comes along with their, basically, it's like having a phone call. And it's so good that I can just throw it at people. I can be like, you know, here, talk to it. And they can, like, they've never talked to an AI in their life. And they just have a natural conversation with it. And that's when it kind of broke it up to the next level because you get on the phone call, you put the phone down and you leave the phone open for 15 minutes while you're working through something. Like I'm sitting here and we're just working through it. I'm like, okay, I'm seeing this. And then back and forth while I'm, and it's waiting for me patiently while I'm waiting for the command output to come back. And it's really good. And so I want to, you know, that inspires me that when that technology starts to get closer and closer for my Hermes agent. I'm going to pursue it now because I know it's worth it. And I know like improving its proactiveness with my calendar and my messaging, I can do it now. I just, I've seen, I've seen the future and I need to implement it because what I had going was kind of basic, you know, some kind of like basic, is this an important email or not? And then it would surface it in telegram and got like seven out of 10 of them, you know, but I always love to check the inbox and this thing's getting stuff to me proactively in a way that has been really useful. So it's nice to learn from it and steal those ideas. All right, boys, should we play some up links? What do you say? I think it's time. All right. So we went over to uplink.jupiterbroadcasting.com and we said, send us your uplinks and you've done so. We've got a batch. I don't even know if we can play all of them. I don't know about that. Y'all been busy. Yeah. Plus, I haven't been able to pull all of them because I'm still building the system. So there's that, too. I apologize. It's busy building the systems to manage the work while we also built them. Yeah, I got to a point where I'm like, uh-oh, I'm up against a dependency where we have to build something else so I can answer this. But I do have a batch of them. And our first one here is Derek in Denver. Hey guys, this is Derek in Denver. My latest project has been building an MCP to allow a model to do your taxes. Should you vibe your taxes? Probably not, but now you can. The MCP allows the model to search IRS documents using both text and vector search. It's got tool calls to get official IRS instructions for each form, to have the model fill out the PDFs, and to pop up the PDFs for you to edit manually. Now I'm working on benchmarks by having Claude create synthetic tax returns and then grading the responses of various models it's all on my get up pr's welcome use with extreme care. Darren is amazing which model do you trust enough to do your taxes and is this the case where you kind of want to go find something you want to do self-hosted, Well, it's all going to get leaked anyways. I mean, the IRS will eventually leak it. I think it's so funny that our tax system is so complicated that it does take AI. Yeah. And that I am, while hesitant, very much interested and going to one day, no doubt, be a consumer of something like that. And the fact that he built the MCP to go through the IRS website. That's smart. And get a good grounding from the website. I mean, just, yeah. That is good stuff. The synthetic returns is a very nice touch. Okay. I got another one. You boys ready for it? Did we get a GitHub link? For that? Because I want to check it out. Yeah, I know. Me too. Alright, this one comes from our old buddy RustaCastiversa. This is RustaCastiversa, and I recently have been playing with Hermes. And the entire ArtCraft suite. Currently trying to build out an automated creative studio, where I can storyboard or come up with ideas and different things, put it into a creative studio coordinator, have the bot... Kind of go through, refine my ideas, and then it delegates all the work to the agents. I have one agent for each application. So if it needs to create assets or different things like that, it will do that in the vector craft. Then it can use those assets in effect craft and a handoff using a Kanban board, to get some motion graphics. And then it can put all of that into film craft. So I can start working with video and going to just kind of see how far I can take this. And so far, it's been really amazing. You know, we got to get away for them to send us links because now I want to see an example of this. Absolutely. You already put in a feature request, so we're all good. These all sound like employable skills. Like these are, if I were an employer and I had, you know, AI workflow stuff, I'd be looking for people that have these kinds of skills. Russ, that's awesome. there's work should be done can you get that work done yeah very good i mean a very valid way to get it done if you get a nice result, yeah i will also remark how like we are in such a different era now than we were what a year ago even as far as like just take this creative stuff you. This is a wild way to create anything. Yeah. Like visual or whatever, because previously, like humans were the only ones who could really do it. It took forever. You needed someone who was actually good at it. And even then you needed someone with skills who worked on it for like 10 years before it was something that was like usable. And now like this system that Rustic Cast has described is like blown my mind. It's so amazing. It's kind of, it's a pipeline. It's fun, too, if you think about this era we're in, is like if you imagine all possible programs, okay, that's too big, but all possible useful programs, say, right? Yeah. Like the open source commons is sort of exploring that. Yeah. And now that's just like accelerating at the edges. Yeah. Which then means what is possible changes. As a pleb pre-AI-assisted tooling, I couldn't really take advantage of all of these libraries or partially complete projects or ideas that people have posted. More than you could use you didn't have the time to adapt them in figure them out learn their api now they're just like part of the process to help their accelerators now like they're like useful for me now it's just it's opened up a whole world okay i can only pull a couple of more, but i think i got patient tech here let's uh play patient techs uplink again you can leave us a note uplink.jupiterbroadcasting.com, hi guys really appreciate you doing streams like this showing demos and stuff because i hear you guys talk about it on the other shows during the week, yeah i'm just building a little local system here with an older server and a 12 gigabyte gpu got it going and running it can do some things but i haven't really made it do anything super cool yet, and hoping to get it to. Get to that next level without using the commercial frontier models, even though those are great and all. Something about keeping my data private. And getting it done. Yeah. Also, I have a suspicion that eventually the prices for those things are going to go up once they get you hooked, kind of like Uber. So I want to build all my workflows to be local as possible now and not have to do it again later under duress. I agree. Keep up the good work. Thanks, guys. That's, you know, patient tech, that's kind of what I was thinking about. Like, I got to reincorporate the things I do like from these commercial ones back into my own agents. Because ultimately, one day, my goal is to have those things running on a local model where it's just unmetered. And then that's going to take it to the next level. The trust goes up, the control goes up, the cost ratio goes up. But it's like at the same time, we're in this era of exponential growth. And so they're throwing free compute at us, which is tempting. That's very useful at the moment. But getting that balance right so you don't get, like, stuck in it and then get rugged. Yeah. Who will tell you what? Yeah, preserve your privacy, figure out the way to use it in a way that respects your values. Okay. Not trivial. Let's try, let's see here what we got. This is, oh, it's Odyssey Westra. I think this might be our last one that I pulled. But we do have some more in the queue, I can see. We'll see, we'll see. But I think Odyssey Westra might be our last one, depending on how long it is. And Odyssey Westra is a longtime listener over there in the Spookan area. Hey Chris, this is Odyssey Westra. I'm also just testing the uplink system you just provided and just letting know what I'm working on. So far I've just been using OpenCode for the most part, and I've been actually been working on email pipeline using the CLI tool MBSync. And then I'm just using RTG for a lot of the indexing instead of, I can't remember the indexer is called, that goes along with it. Anyways, it's gotten to the point where it actually does on spam filtration and organization for me and made my work 10 times more easier. That's huge. So anyways, you guys have a good rest of your day. And I guess we'll see more of some clinical therapy. Thank you, Odyssey. Awesome. Thank you for the report. That is great. It's just a nice little win there. You know what I mean? I love that. Okay. All right. This is our last one. This is our last one. Because this is the only one I was... I see one in here about pumpkins and email, and Kubernetes. I haven't pulled those yet. So this will be our last one here for this episode. But this has been great. And please go to uplink.jupiterbroadcasting.com and leave us some more. I think this last, Eunice, I think is how you say their name? They'll probably tell us. Hi, Chris. Hi, Wes. I'm a listener from Morocco, and I am using Multica, which is kind of an agent manager platform, self-hosted on an LXE container on a small Lenovo mini PC at the back of my main PC. I'm using it to build some small games. So YouTube introduced this concept called YouTube Playables, which are like small games that you can play inside the YouTube platform. Yeah. Either on web and also on mobile. And yeah, I wanted to give it a shot. I've never done game development, but... As we all heard that the recent updates from Cloud is really good at building 3D models. So yeah, I'm using Cloud Code, of course, connected to an Elixir container, basically. And Multica has access to it. And I've built an entire squad with all the members of the team. Like I have a CTO, a deployer, a senior kind of product. I love it when people do that. Like they, you know, all the different ways people set that up. So he sent us the URL. He included that in the comment box, boys. So I can actually play the game here. Oh, I don't know if I'm playing very good. That's a separate skill. Yeah, that's a different skill. But yeah, I can actually play the game. So you don't have to be on YouTube to play. You can play it in the browser. That's pretty neat. We'll try to include that in the show notes. That's great. Well, how about that? We'll end right there on that game project. That is so cool. There you go. There you go. I guess we got to stop having fun and get back to work, huh? Man, I suppose. There's a lot of things we've been building, a lot more. We don't yet have another Clanker 4 scheduled, but what we'll do is we'll take your feedback, we'll listen to your uplinks, and kind of decide to go with the next direction. And there is the agent telegram groups and matrix group where you can kind of ask questions, bounce ideas around. Lots of folks sharing tips there. Great ideas. Yes. And some people, they're doing some really cool setups too. So check those out. But we'll put links to the Agent Ops Guild for the Matrix and for Telegram in the show notes as well. And then, of course, we want your uplinks. Uplink.jupiterbroadcasting.com is where you go to send those to us. All right. And, Brentley, it was really nice having you. Thank you for telling us about your setup. Thank you. Great to be here. Yeah. You have to join us on the next one, okay? And we just keep talking, see where you're going. Good to keep up the cool OpenCode stuff. Yes. Well, thanks. Thank you, everybody. See what I get into.