Skip to main content
LawHub
Search

Have Your Bot Call My Bot

Feb 1, 2026
Listen to this episode

We stress tested open source AI agents this week. What actually held up, and where it falls apart. Plus Brent's $20 Wi-Fi upgrade.

Sponsored By:

Support LINUX Unplugged

Links:

Transcript

WEBVTT 00:00:11.261 --> 00:00:15.921 Hello, friends, and welcome back to your weekly Linux talk show. My name is Chris. 00:00:16.081 --> 00:00:16.721 My name is Wes. 00:00:16.921 --> 00:00:17.521 And my name is Brent. 00:00:18.141 --> 00:00:21.781 Hello, gentlemen. Coming up on the show today, we've been stress testing open 00:00:21.781 --> 00:00:23.481 source AI agents all week. 00:00:23.881 --> 00:00:27.521 From OpenClaw to projects you probably never heard of. We'll talk about what 00:00:27.521 --> 00:00:31.381 actually held up, where things kind of fall apart, and what is definitely hype. 00:00:31.601 --> 00:00:34.101 And then a few surprises we didn't see coming. 00:00:34.341 --> 00:00:38.661 Plus, Brent has a $25 Wi-Fi upgrade you're going to absolutely want to steal. 00:00:39.201 --> 00:00:41.881 Stay tuned for that. And then we're going to round it all out with some great 00:00:41.881 --> 00:00:43.321 boosts, some picks, and a lot more. 00:00:43.441 --> 00:00:47.901 So before we get to that, time-appropriate greetings to our virtual lug. Hello, Mumble Room. 00:00:48.881 --> 00:00:51.461 Hello. Hello. Hello, Brent. 00:00:52.001 --> 00:00:53.761 Hello. Sounding good? 00:00:53.941 --> 00:00:53.961 That's true. 00:00:53.961 --> 00:00:56.521 Hello, everybody. Hello, everybody. In the quiet listening, too. 00:00:56.581 --> 00:00:57.701 That Mumble Room is always going. 00:00:58.761 --> 00:00:59.781 JupiterBroadcasting.com slash 00:00:59.781 --> 00:01:03.741 mumble. And a good morning to our friends over at Defined Networking. 00:01:03.841 --> 00:01:08.421 Defined.net slash unplugged. Go check out Nebula, a decentralized VPN built 00:01:08.421 --> 00:01:09.941 on the open-source Nebula platform. 00:01:10.241 --> 00:01:13.641 We absolutely love it and are using it in more and more ways every single day. 00:01:13.781 --> 00:01:17.041 If you go to defined.net slash unplugged, you get 100 hosts for free, 00:01:17.161 --> 00:01:19.081 no credit card required. 00:01:19.321 --> 00:01:22.961 Now, this is really the actual difference. Their free tier doesn't exist just 00:01:22.961 --> 00:01:25.521 to funnel you into a VC-funded SaaS roadmap. 00:01:25.941 --> 00:01:29.781 It really is something that you have full governance over. You can go from managed 00:01:29.781 --> 00:01:31.421 to completely self-hosted, vice versa. 00:01:31.661 --> 00:01:34.481 You own the network. You own the identity. You own the infrastructure. 00:01:35.321 --> 00:01:39.601 You don't have to worry about a control plane going down, any of that. 00:01:39.601 --> 00:01:43.101 And Nebula's decentralized design means there isn't a single point of failure. 00:01:43.261 --> 00:01:47.561 And with their managed Nebula product, they can take care of all of the bits 00:01:47.561 --> 00:01:50.161 for you. It is incredibly scalable. 00:01:51.083 --> 00:01:54.283 One of the things I appreciate on being on a very limited connection right now, 00:01:54.443 --> 00:02:00.163 I'm back on LTE for a bit, and Nebula is so smart about the way it uses network traffic. 00:02:00.583 --> 00:02:06.603 And it's an order of magnitude difference between some of the other Mesh VPN systems and Nebula. 00:02:06.703 --> 00:02:09.083 It's an order of magnitude difference in the efficiency. I'm very, 00:02:09.183 --> 00:02:12.283 very impressed. And you will be too. Go check it out. 100 hosts for free. 00:02:12.523 --> 00:02:14.603 No credit card. No lock-in. 00:02:15.003 --> 00:02:17.703 Defined.net slash unplugged. 00:02:20.336 --> 00:02:24.116 Just around the corner, 32 days until Planet Nix and scale. 00:02:24.516 --> 00:02:29.596 That means 25 days until Brent needs to be on the road and four more Linux Tuesdays 00:02:29.596 --> 00:02:32.696 on a Sunday before we are in Pasadena, California. 00:02:32.956 --> 00:02:36.536 Why is my heart racing so much? Why am I feeling so stressed? What's the deal? 00:02:37.376 --> 00:02:41.056 You know, just focus on how awesome Planet Nix is going to be this year. 00:02:41.396 --> 00:02:45.276 This is the, I mean, they've got a vision for it. Phlox has really figured it 00:02:45.276 --> 00:02:46.476 out. They know how to do this. 00:02:46.876 --> 00:02:51.356 The first one's under their belt. They're the perfect just organizer for this 00:02:51.356 --> 00:02:53.676 exact kind of event because they get the community. 00:02:53.876 --> 00:02:55.836 They get the business side. They get the builder side. Like, 00:02:55.936 --> 00:03:00.356 it's just chef's kiss. I think it's going to be a good one this year. The agenda is live. 00:03:00.496 --> 00:03:03.356 Yeah, that's right. I'll be giving a talk. Our buddy Alex is giving a talk. 00:03:03.876 --> 00:03:08.536 There's a lot of nice looking talks, including something about Nick's Meets 00:03:08.536 --> 00:03:12.496 Web Assembly and Nick's BSD. What's that? 00:03:12.836 --> 00:03:16.196 Oh, OK. Yeah, our plan of Nick's coverage is supported by Phlox. 00:03:16.296 --> 00:03:19.276 And they're going to be there. We're going to see them. They're focused on making 00:03:19.276 --> 00:03:21.396 reproducible dev environments actually usable. 00:03:21.656 --> 00:03:25.096 You should check out Phlox. It's the second year they're sending us, and it's awesome. 00:03:25.216 --> 00:03:30.296 And, of course, at the same time, Scale23x is going on. You do need to register 00:03:30.296 --> 00:03:32.416 for Scale to go to either Planet Nix or Scale. 00:03:32.636 --> 00:03:37.076 Use our promo code UNPLG, U-N-P-L-G, to get 40% off that. 00:03:37.396 --> 00:03:40.396 Can't wait for Scale. We'll have a meetup. Meetup.com slash Jupiter Broadcasting. 00:03:40.436 --> 00:03:44.536 Our meetup page is up. It's a placeholder, but it's there. Huge. Very excited. 00:03:46.016 --> 00:03:49.276 I think it's going to be great, guys. It's been a while since I've been in nice, 00:03:49.396 --> 00:03:51.216 sunny Pasadena. I think it's going to be beautiful. 00:03:51.476 --> 00:03:54.996 We always have a great crew down there. And I think it's going to be a great 00:03:54.996 --> 00:03:56.136 Planet Nix and a great scale. 00:03:56.276 --> 00:03:58.016 So many wonderful nerds all in one place. 00:03:58.356 --> 00:04:02.016 Such a rare thing. So I hope you can make it. Even if you can't make it to the 00:04:02.016 --> 00:04:04.836 events, but you're in the area, meetup.com slash Jupiter Broadcasting. 00:04:04.836 --> 00:04:06.896 Let us know so we can let the venue know. 00:04:10.584 --> 00:04:15.744 Well, Brentley, Wes and I have been hearing bits and pieces of you solving Wi-Fi 00:04:15.744 --> 00:04:19.764 problems, which often starts with something not working right. 00:04:19.984 --> 00:04:23.524 Yeah, our ears are burning and our switches are burning. We want more deets. 00:04:23.724 --> 00:04:25.424 We have to imagine this has turned quite in the story. 00:04:26.364 --> 00:04:30.884 Yes. Well, networking is not my favorite thing. So it only ever starts with some kind of complaint. 00:04:31.284 --> 00:04:34.604 And the complaint this time around, I've been spending more time with my parents 00:04:34.604 --> 00:04:39.744 and at my parents' place. And my mother was like, hey, I can't really get Wi-Fi 00:04:39.744 --> 00:04:43.124 like lazing in bed on a Sunday morning from my bedroom. I was like, what? 00:04:43.644 --> 00:04:46.904 You're only saying this now you've had the same like Wi-Fi set up for the last 00:04:46.904 --> 00:04:48.744 five, six years, something like that. 00:04:48.824 --> 00:04:51.364 Is the is the old router pretty far from the bedroom? 00:04:51.704 --> 00:04:55.664 It's exactly at the opposite end of the place. So they're on the main floor, 00:04:55.864 --> 00:05:00.444 you know, at the total end of the house. And the router is in the basement at 00:05:00.444 --> 00:05:01.564 the opposite end of the house. 00:05:01.744 --> 00:05:05.144 So it kind of makes sense. I just never knew it was an issue. 00:05:05.144 --> 00:05:09.404 I bet you've got one of those sturdy, well-built Canadian homes, too. 00:05:10.064 --> 00:05:11.404 Yes, the window-randed ones. 00:05:11.404 --> 00:05:12.504 Not thin walls. Right. 00:05:13.624 --> 00:05:18.724 So I never realized it was an issue, but like, this should be solvable, right? 00:05:19.144 --> 00:05:26.864 So I dove into their router, which is a Linksys EA8100V2, which they got a little 00:05:26.864 --> 00:05:30.684 while ago to like boost Wi-Fi and stuff. They don't need anything fancy. 00:05:30.784 --> 00:05:35.344 They're not doing any networking stuff that's fancy. This is just like a couple 00:05:35.344 --> 00:05:39.684 of cell phones on the network. They have like a thermostat, IOT device. 00:05:39.944 --> 00:05:47.484 They've got a TV and I have a crazy, you know, put together NAS running off 00:05:47.484 --> 00:05:50.784 an old think pad that like does backups for them on the local network. 00:05:50.904 --> 00:05:53.904 But so that's not huge requirements for them. 00:05:54.324 --> 00:05:57.264 Probably the biggest requirements is whenever I show up, I do a bunch of stuff, 00:05:57.424 --> 00:06:01.664 but like they don't need super modern wifi speeds or anything like that. 00:06:01.664 --> 00:06:06.184 They just need coverage and reliability, basically. 00:06:06.464 --> 00:06:10.224 So I decided this week to solve this problem for them. 00:06:11.024 --> 00:06:15.204 Even though I hesitate to play with networking stuff because it's always a rabbit hole. 00:06:16.144 --> 00:06:19.184 And I dove into their router, which was just running the stock firmware. 00:06:19.244 --> 00:06:22.584 And I thought, OK, I can optimize at least, you know, some Wi-Fi channels, 00:06:22.864 --> 00:06:28.024 look at some what the neighbors are doing and try to choose appropriate settings. 00:06:28.184 --> 00:06:32.084 And I discovered that their stock firmware was like from 2022. 00:06:32.444 --> 00:06:34.584 So I thought, sure enough, I could just update this thing. 00:06:34.724 --> 00:06:36.444 Oh, yeah. That might be an easy win right there. 00:06:36.544 --> 00:06:37.704 You know, security is important, right? 00:06:37.704 --> 00:06:40.904 Yeah, and an update. Maybe there's an improvement in how it manages radios or 00:06:40.904 --> 00:06:41.824 something like that. Who knows? 00:06:41.944 --> 00:06:45.784 It is so great when you do just update something and it performs better and you can just be done. 00:06:45.924 --> 00:06:48.284 It probably doesn't happen as often as I'd like to hope it does. 00:06:48.324 --> 00:06:50.664 No, but that it's happened at all. It clearly sticks once it does. 00:06:50.764 --> 00:06:53.284 In this case, I was really hoping this would be just an easy fix. 00:06:53.664 --> 00:06:57.884 But it turns out, you know, of course, as it goes, this thing is end of life already. 00:06:58.024 --> 00:07:01.624 So the last update that will ever exist was back in 2022. 00:07:02.264 --> 00:07:09.304 Oh, so the rabbit hole shows up and I thought, well, I could I install open WRT on this thing? 00:07:10.044 --> 00:07:16.584 You boys had some adventures, what, two weeks ago trying to use the open WRT one. 00:07:16.964 --> 00:07:17.144 The one. 00:07:17.304 --> 00:07:22.504 Yeah. And you were a bit hesitant. You started using that to solve the clinic 00:07:22.504 --> 00:07:25.684 networking, but you eventually moved away from that, right? 00:07:26.164 --> 00:07:29.484 Well, we're still using it for Wi-Fi. It is a great little device for that. 00:07:29.484 --> 00:07:33.084 We were just having some issues with the radios that are in there, 00:07:33.224 --> 00:07:37.084 and if you're connecting to another Wi-Fi network, the performance was pretty 00:07:37.084 --> 00:07:40.244 bad if you're sort of daisy-chaining Wi-Fi networks for what we were doing. 00:07:40.644 --> 00:07:46.304 I never tried kind of beyond that, but when we just put it into a general AP, it's been fantastic. 00:07:46.964 --> 00:07:52.844 Nice. So I thought I would kind of lean on your experiences and dive right in. 00:07:53.024 --> 00:07:57.144 So sure enough, this thing is really well-supported on OpenWRT. 00:07:57.144 --> 00:07:59.984 The community seems to have this well supported. 00:08:00.384 --> 00:08:03.384 And the flashing process is also very, very simple. 00:08:03.804 --> 00:08:05.564 Just use the stock. 00:08:06.837 --> 00:08:10.097 Firmware updater and use an open wrt image 00:08:10.097 --> 00:08:12.897 and there you go that's all you need so sure enough i went 00:08:12.897 --> 00:08:15.717 and did that and nothing happened and uh it 00:08:15.717 --> 00:08:19.617 just kind of complained and i tried for way 00:08:19.617 --> 00:08:22.517 embarrassingly too long to solve that problem 00:08:22.517 --> 00:08:25.657 because i really now wanted to get the open wrt on 00:08:25.657 --> 00:08:28.577 this thing i like started setting up 00:08:28.577 --> 00:08:31.557 a tftp server to like send the 00:08:31.557 --> 00:08:34.877 image towards this thing but i didn't know the default like 00:08:34.877 --> 00:08:37.637 the the recovery ip address so i was trying all 00:08:37.637 --> 00:08:40.397 sorts of anyways i lost a lot of time and then 00:08:40.397 --> 00:08:43.477 i saw some note that just said hey just reboot 00:08:43.477 --> 00:08:46.737 the writer and try again sure enough i tried again worked totally fine through 00:08:46.737 --> 00:08:51.057 the the stock firmware updater how often does that happen that was both very 00:08:51.057 --> 00:08:57.037 frustrating and also very rewarding so i did get it installed and uh i have 00:08:57.037 --> 00:09:02.657 to say it's great as always i have used a lot of these open source 00:09:02.937 --> 00:09:07.377 router firmwares for the last, I don't know, several decades. 00:09:07.377 --> 00:09:11.597 I'm wondering where you guys started, but I remember the first one was I installed 00:09:11.597 --> 00:09:16.897 a DDWRT on an old Linksys WRT 54G. You remember those things? 00:09:17.257 --> 00:09:18.137 Oh yeah. Oh yeah. 00:09:18.237 --> 00:09:22.497 And brought those back to life for like another 10 years. So that was my first 00:09:22.497 --> 00:09:26.717 experience a long time ago, but I remember like tomato was a piece of software I used as well. 00:09:26.717 --> 00:09:31.217 So I had had good experiences with them, but nothing too recent. 00:09:31.217 --> 00:09:35.677 Probably the most recent was I took my parents' old router that they replaced 00:09:35.677 --> 00:09:38.217 and set it up at home with the Starlink. 00:09:39.097 --> 00:09:43.017 So instead of using the Starlink as a router, used OpenWrt in there, and that was good. 00:09:44.244 --> 00:09:46.844 Actually, I think the Starlink might run a fork of OpenWRT. 00:09:47.164 --> 00:09:48.024 Ah, right. 00:09:48.364 --> 00:09:53.264 I might be wrong on that, but it is a Linux variant. Yeah, I've really, 00:09:53.444 --> 00:09:55.464 really liked these in the past when I used them. 00:09:55.624 --> 00:10:01.784 It's been many years since I've actually gave it a real visit until the OpenWRT won. 00:10:02.224 --> 00:10:07.804 And so I wasn't really sure how viable it still was to flash these older links. 00:10:07.924 --> 00:10:10.644 I thought maybe that was a bygone era that maybe they'd prevented it. 00:10:10.644 --> 00:10:15.284 Well, I know some of the recent firmware are much larger. So if you're looking 00:10:15.284 --> 00:10:18.504 at a really old device, they just don't have the storage for it. 00:10:18.904 --> 00:10:20.984 Do they do more now? Are they doing more functions? 00:10:21.304 --> 00:10:25.504 Oh, yeah. Yeah, yeah. Many more functions, which I will totally describe in just a moment. 00:10:25.744 --> 00:10:26.004 Yeah. 00:10:26.164 --> 00:10:30.704 But I have to say, one of my hesitations was that the GUI in OpenWrt, 00:10:30.764 --> 00:10:36.284 and you boys touched on this in Linux Unplugged 650, is a bit, 00:10:36.484 --> 00:10:39.344 I don't know how you would describe it. but I would describe it sort of like, 00:10:42.099 --> 00:10:48.279 allows you to do a lot but you need to also understand what's happening so it 00:10:48.279 --> 00:10:53.279 feels like a little bit more leaning towards commercial router firmware so you 00:10:53.279 --> 00:10:58.119 can accomplish like now with just a regular home router i can do all sorts of 00:10:58.119 --> 00:10:59.219 things i could never do before. 00:10:59.219 --> 00:11:00.199 Right which. 00:11:00.199 --> 00:11:05.619 Is amazing but i also find the gui to be confusing that way because i'm not a network expert right. 00:11:05.619 --> 00:11:09.499 I suppose i also find to me i don't really know how to describe it but it feels 00:11:09.499 --> 00:11:13.339 like i go to multiple places to get information that seems like it could be 00:11:13.339 --> 00:11:15.539 consolidated into one screen yeah. 00:11:15.539 --> 00:11:19.399 Okay it is that feeling of like because you've seen that it means you don't 00:11:19.399 --> 00:11:22.679 have a clean mapping of where do i go for this like okay well i got some of 00:11:22.679 --> 00:11:26.019 that when i looked at the actual physical card info but then the other part 00:11:26.019 --> 00:11:28.559 was in the layer that just did kind of the wi-fi protocol. 00:11:28.559 --> 00:11:29.259 Yes and. 00:11:29.259 --> 00:11:32.539 Those are not on the same page or even neighboring pages they're under two different sub. 00:11:32.539 --> 00:11:37.699 Menus i think if i were if i were to keep working on the regular and had to 00:11:37.699 --> 00:11:41.279 make frequent config changes i would probably just go look at the config file 00:11:41.279 --> 00:11:43.999 because i know and i know they have a pretty clean syntax too on the command 00:11:43.999 --> 00:11:47.779 line and that might just be the way to go it's true but what happens is i use 00:11:47.779 --> 00:11:50.559 these once every few years and so i just stick to the gui. 00:11:50.559 --> 00:11:54.919 One of the big unlocks for me this week was that i decided to just lean pretty 00:11:54.919 --> 00:12:00.399 heavily on having ai help me navigate the gui and also help me to optimize the 00:12:00.399 --> 00:12:02.879 settings for this particular hardware. 00:12:03.439 --> 00:12:06.699 You didn't find that like its information was so out of date that it was sending 00:12:06.699 --> 00:12:08.499 you to places that It didn't exist in the GUI, huh? 00:12:08.619 --> 00:12:13.739 No, I was actually pleasantly surprised in that it was also giving me a lot 00:12:13.739 --> 00:12:17.599 of information about what community members were finding worked really well 00:12:17.599 --> 00:12:18.919 on particular hardware. 00:12:19.119 --> 00:12:19.599 Oh, good. 00:12:19.779 --> 00:12:22.279 So because this piece of hardware, I guess, is popular enough, 00:12:22.279 --> 00:12:27.459 I was able to get really good information on how compatible OpenWRT was on this 00:12:27.459 --> 00:12:33.539 particular device in the first place, and also like optimal Wi-Fi settings for that device, 00:12:34.239 --> 00:12:36.419 and also for this region, 00:12:37.557 --> 00:12:42.477 And also considering the other devices on the network, what would be realistic 00:12:42.477 --> 00:12:46.877 settings to really have the network be as reliable as possible, 00:12:46.997 --> 00:12:50.397 not necessarily as fast as possible, because that's, for my parents, 00:12:50.497 --> 00:12:51.917 not one of their requirements, right? 00:12:52.097 --> 00:12:56.397 So I noticed immediately the network was much more stable. 00:12:56.657 --> 00:13:01.197 In previous weeks, it would drop off at least once while we were doing Linux 00:13:01.197 --> 00:13:06.557 Unplugged every Sunday. So it has been much more stable from what I can tell 00:13:06.557 --> 00:13:11.637 and also has better just Wi-Fi coverage in general. 00:13:12.548 --> 00:13:21.108 But I didn't think like that was enough. And so I decided to take this to the next logical step. 00:13:21.468 --> 00:13:22.648 This is the part where it does more. 00:13:23.648 --> 00:13:27.828 Well, I wanted to give them like rock solid coverage. 00:13:28.708 --> 00:13:32.668 And I also wanted to see what else this router can do. 00:13:33.048 --> 00:13:38.148 Because all of a sudden I can like do VLANs for their IoT devices that I could 00:13:38.148 --> 00:13:39.628 never do with the stock firmware. 00:13:39.788 --> 00:13:39.928 Right. 00:13:39.928 --> 00:13:44.628 I used AI to help me a little bit too, just to optimize the security of this thing. 00:13:44.808 --> 00:13:48.968 So including disabling packages that would, that I wasn't using basically. 00:13:49.248 --> 00:13:51.608 So reducing the security footprint. 00:13:52.128 --> 00:13:57.748 But in that process, I kind of discovered that I could also have whole network 00:13:57.748 --> 00:13:59.468 ad blocking on this thing. 00:13:59.648 --> 00:14:02.748 So instead of having, you know, a dedicated device with PyHole, 00:14:02.868 --> 00:14:06.448 which we all love, that requires, you know, some configuration. 00:14:06.468 --> 00:14:09.388 It requires a device. it requires you know 00:14:09.388 --> 00:14:12.248 and this is just my parents place but i could write on the router 00:14:12.248 --> 00:14:15.528 which i never knew about open wrt so maybe other people 00:14:15.528 --> 00:14:18.448 knew this i did not uh but this 00:14:18.448 --> 00:14:23.168 is a beautiful thing i was able to basically get in a bit of info about what 00:14:23.168 --> 00:14:28.828 was the best ad blocking software to install because there are a couple packages 00:14:28.828 --> 00:14:36.788 you could choose from actually in open wrt and And I decided to go with something called AdBlock Fast, 00:14:37.228 --> 00:14:44.348 which is a version of AdBlock that is specifically high performance tuned for 00:14:44.348 --> 00:14:49.308 OpenWRT on these kind of devices, on these lower end devices. 00:14:49.308 --> 00:14:54.548 So you don't have like a dedicated high end router, for instance. 00:14:54.928 --> 00:14:59.448 These are just meant for the home off the shelf at Best Buy devices. 00:15:01.168 --> 00:15:05.048 But what it does is, I think, kind of really nice. So it uses DNS mask, 00:15:05.248 --> 00:15:08.208 but you can also use smart DNS or Unbound if you want. 00:15:08.388 --> 00:15:14.148 And it does parallel downloading and processing of allow lists and block lists. 00:15:14.408 --> 00:15:16.788 And it does it one time on startup. 00:15:17.308 --> 00:15:20.508 And then from there, it's not an always running process. 00:15:20.568 --> 00:15:25.948 It just uses DNS mask to have a pretty low footprint ad blocker. 00:15:26.588 --> 00:15:30.128 so it's really not consuming much memory ongoing 00:15:30.128 --> 00:15:33.288 only while it's processing and i have 00:15:33.288 --> 00:15:36.848 to say haven't noticed any downside 00:15:36.848 --> 00:15:40.868 to performance on this thing it doesn't get hot it processes actually quite 00:15:40.868 --> 00:15:46.668 quickly you do have to do a few things manually so for instance i had to install 00:15:46.668 --> 00:15:52.568 a few other packages to get this to run so i was able to just ssh into the router 00:15:52.568 --> 00:15:54.428 and install those which was very easy, 00:15:54.608 --> 00:16:00.768 and also set up a cron job just to update those block lists once a week. 00:16:01.408 --> 00:16:06.468 Some downsides is it doesn't have like a super fancy dashboard like piehole 00:16:06.468 --> 00:16:10.028 would, for instance, and it doesn't keep track of stats. 00:16:10.028 --> 00:16:14.048 So it's not going to give you an idea of what it has blocked and how many times 00:16:14.048 --> 00:16:19.688 those kind of stats, but the trade-off is super fast and it just sits there 00:16:19.688 --> 00:16:20.888 and it just works and it's running. 00:16:20.948 --> 00:16:23.588 Yeah, on a little router, like it's just running on that tiny little router 00:16:23.588 --> 00:16:28.808 yeah that is so cool such a separate box no yeah really wow so. 00:16:28.808 --> 00:16:31.868 For this situation where it's just for a family member who doesn't want extra 00:16:31.868 --> 00:16:34.908 hardware or doesn't want to troubleshoot another device or anything like that 00:16:34.908 --> 00:16:36.568 this is a lovely solution. 00:16:36.568 --> 00:16:41.468 Now i know uh kind of the other thing that made this really kind of great is 00:16:41.468 --> 00:16:43.088 there's besides that being a 00:16:43.088 --> 00:16:45.428 great unlock for the whole family where it doesn't even really bother them, 00:16:46.225 --> 00:16:49.025 This hardware isn't particularly expensive either. 00:16:49.285 --> 00:16:51.645 Not at all. So this is hardware. 00:16:51.885 --> 00:16:52.705 You could do this for a budget. 00:16:53.005 --> 00:16:59.205 This is hardware they had. So it's $0. But if you wanted to find a device that 00:16:59.205 --> 00:17:00.965 could run OpenWRT, because it's 00:17:00.965 --> 00:17:04.345 not every device, they have a hardware compatibility list you can look at. 00:17:04.885 --> 00:17:09.705 Well, I started looking at like used sites, just local classifieds, 00:17:09.805 --> 00:17:11.725 like Facebook Marketplace, those kind of. 00:17:11.725 --> 00:17:16.205 And you can get a device that's, you know, not blazing fast, 00:17:16.525 --> 00:17:21.865 modern, but is like a generation back sort of deal for $20, $10. 00:17:22.105 --> 00:17:24.745 There's one here, like a D-Link DIR 895. 00:17:25.345 --> 00:17:28.325 It's like AC 1750. So like not terrible. 00:17:28.525 --> 00:17:28.665 Yeah. 00:17:28.765 --> 00:17:31.025 So for a family member, listed for $10. 00:17:31.325 --> 00:17:32.885 Ten bucks. Ten bucks. 00:17:33.345 --> 00:17:40.185 And that's perfectly compatible with OpenWRT. And I found several others just like browsing quickly. 00:17:41.045 --> 00:17:47.525 so i decided to go crazy and i bought well i ended up at a sketchy part of town 00:17:47.525 --> 00:17:52.385 yesterday and bought another router for 20 off someone who's actually really 00:17:52.385 --> 00:17:56.085 nice nice okay and decided to, 00:17:56.885 --> 00:18:02.945 use that to deploy basically an access point uh at the other end of the house for them so oh. 00:18:02.945 --> 00:18:04.905 Great yeah there you go increased coverage. 00:18:04.905 --> 00:18:09.225 Exactly so i know that the wi-fi got better just by installing OpenWRT on their 00:18:09.225 --> 00:18:11.105 router, but I wasn't going to move their router and everything. 00:18:11.325 --> 00:18:15.665 And so I wanted to make sure 100% that their network was good at the other end of the house. 00:18:16.365 --> 00:18:20.265 So I had, they have a bunch of Ethernet runs in this place already. 00:18:20.265 --> 00:18:25.125 I just was able to plug in, well, I got this idea before I actually set up the 00:18:25.125 --> 00:18:30.105 meeting. So I used my little travel router that is out of the van since the 00:18:30.105 --> 00:18:32.245 van doesn't have any power anymore because I had to pull the batteries. 00:18:32.465 --> 00:18:37.725 But I use that just as a proof of concept. It's a GLINet router. 00:18:37.945 --> 00:18:39.085 It's an industrial version. 00:18:39.185 --> 00:18:39.405 Yeah. 00:18:39.785 --> 00:18:43.805 But it runs OpenWrt under the hood just with a GLINet interface. 00:18:44.125 --> 00:18:50.805 So you can get to the exact same OpenWrt GUI interface on that device as well. 00:18:51.910 --> 00:18:55.030 which made me realize it's this is actually kind 00:18:55.030 --> 00:18:57.850 of wonderful so now i'm running open wrt in many different 00:18:57.850 --> 00:19:01.090 places in many different families and friends homes 00:19:01.090 --> 00:19:04.790 and even on a very specific 00:19:04.790 --> 00:19:07.850 industrial router that i have for the van specifically 00:19:07.850 --> 00:19:10.590 because it bounce around gets really hot and they're all 00:19:10.590 --> 00:19:14.310 running the same interface so as a consolidated experience 00:19:14.310 --> 00:19:17.190 for me managing networks this is actually a 00:19:17.190 --> 00:19:20.270 really nice perk as well and so 00:19:20.270 --> 00:19:23.270 for 20 or 10 00:19:23.270 --> 00:19:26.030 because you can always bargain and one of them is listed as 10 00:19:26.030 --> 00:19:28.710 so maybe i can get it for five yeah i have an 00:19:28.710 --> 00:19:32.490 access point set up that is not 00:19:32.490 --> 00:19:35.350 you know it is a router it's meant as 00:19:35.350 --> 00:19:38.930 a router for hardware but it's just set up as an access point because uh 00:19:38.930 --> 00:19:41.910 open wrt allows you to do that and it's super fast 00:19:41.910 --> 00:19:44.870 and i have both just advertising the 00:19:44.870 --> 00:19:50.010 same networks and i have had this set up as a prototype with that um travel 00:19:50.010 --> 00:19:55.250 router for about a week now and everybody's devices just moves between the routers 00:19:55.250 --> 00:19:59.330 without even knowing it everything's been super stable no problems at all and 00:19:59.330 --> 00:20:03.470 i've been super impressed so i gotta say for 20 bucks you should maybe think 00:20:03.470 --> 00:20:04.630 about upgrading your network. 00:20:04.630 --> 00:20:08.670 That was worth it that was worth dealing with the networking that you don't 00:20:08.670 --> 00:20:11.730 like to get there and that's something you're going to be able to use for a 00:20:11.730 --> 00:20:15.550 long time you know so that's great brand very nice. 00:20:15.550 --> 00:20:20.390 Yeah i feel like the number of residential routers that are always on used websites 00:20:20.390 --> 00:20:24.450 never ends so uh it's just going to be a solution into the future as well so 00:20:24.450 --> 00:20:27.090 upgrades probably about twenty dollars too. 00:20:30.615 --> 00:20:33.015 Well, I do want to say thank you to our members and our boosters. 00:20:33.175 --> 00:20:37.775 This is the birthday episode, 20 years of podcasting, over 12 years for Linux Unplugged. 00:20:38.215 --> 00:20:41.635 And we'll get to the boost segment to read some of the birthday messages. 00:20:41.635 --> 00:20:44.555 But I want to thank everybody who sent in some support, either through a membership 00:20:44.555 --> 00:20:47.635 or a boost. It means a lot. 00:20:48.055 --> 00:20:52.335 Normally, this spot would be for an advertiser. Right now, it's for you as an 00:20:52.335 --> 00:20:54.175 opportunity for me to really say thank you. 00:20:54.315 --> 00:20:57.235 If you've got a company or a product you'd like to get in front of the world's 00:20:57.235 --> 00:21:01.355 best and largest Linux audience, shoot me an email, chris at jupiterbroadcasting.com. 00:21:01.795 --> 00:21:05.995 This would be a great audience, and I think it'd be pretty cool to feature something from the community. 00:21:06.235 --> 00:21:09.975 And thank you, members and boosters, for making this possible. 00:21:20.833 --> 00:21:25.573 Well, unless you've had your head buried in the sand, you've probably seen everyone's 00:21:25.573 --> 00:21:29.013 talking about open source AI agents this week. 00:21:29.193 --> 00:21:34.773 And we'll get into the hubbub. But first, as usual, our super intelligent audience 00:21:34.773 --> 00:21:38.093 is way ahead of the curb. So we have a special guest. 00:21:38.253 --> 00:21:40.873 Way ahead of the curb. Abe, welcome to the Unplugged program. 00:21:41.173 --> 00:21:43.273 Nice to have you join us in the mumble room. Thank you. 00:21:43.533 --> 00:21:43.913 Hello, hello. 00:21:44.193 --> 00:21:48.173 Hello. So what got our attention and why I asked you to come on the show this 00:21:48.173 --> 00:21:50.473 week is you've been posting our community updates. 00:21:51.133 --> 00:21:55.553 I'm not even sure what to call it. Maybe an agent orchestration swarm that you've 00:21:55.553 --> 00:21:58.853 set up. Is that the right description? Could you explain it to us a little bit? 00:21:59.073 --> 00:22:04.513 Sure, absolutely. So effectively, what I wanted to do was to have a layer of 00:22:04.513 --> 00:22:07.453 semi-intelligent agents between me and my home lab. 00:22:07.453 --> 00:22:11.813 So I don't have to interact with it as much because ultimately what I realized 00:22:11.813 --> 00:22:15.953 after services kept growing is that, you know, after a while, 00:22:16.073 --> 00:22:16.973 it kind of becomes a chore. 00:22:17.173 --> 00:22:19.033 Yeah, it's a lot. Yeah. I'm kind of there myself. 00:22:20.093 --> 00:22:24.953 So effectively, what I wanted to do was, hey, I don't want to upgrade everything myself. 00:22:24.953 --> 00:22:29.013 I don't want to take a look at the logs myself. I don't want to debug everything myself. 00:22:29.013 --> 00:22:32.733 So I would rather have something that I can just ask. For example, 00:22:33.693 --> 00:22:39.933 the easiest win is my partner is watching Jellefin, something gets messed up, 00:22:40.213 --> 00:22:42.113 a show starts stuttering or something. 00:22:42.373 --> 00:22:45.593 She can just ask one of the age, like, hey, I was watching this at X minute. 00:22:46.353 --> 00:22:49.033 It suddenly started stuttering. Can you take a look? 00:22:49.253 --> 00:22:49.753 And it does. 00:22:49.773 --> 00:22:51.393 Goes to Excel, looks at the logs. 00:22:52.279 --> 00:22:56.379 It does the MPEG magic and, you know, reports back to her. 00:22:56.719 --> 00:23:00.459 So my understanding, though, is you're not doing this with like one agent, 00:23:00.699 --> 00:23:02.199 right? You're doing this with multiple agents? 00:23:02.559 --> 00:23:07.939 Yes. So what happens is that at the beginning, only one ape gets spawned. 00:23:08.379 --> 00:23:13.019 And its first job is to figure out and map my entire network. 00:23:13.299 --> 00:23:19.639 And then it suggests like, hey, there are further apes that should be used for X or Y or Z domain. 00:23:20.219 --> 00:23:24.879 So effectively, my apes are stewards of their own domains. 00:23:25.039 --> 00:23:28.659 For example, I have one specifically for my media server and ZFS pool. 00:23:29.179 --> 00:23:34.499 I have another that is stewarding my critical services on, say, Proxmox and whatnot. 00:23:34.719 --> 00:23:36.919 So you have them kind of along like domain expertise. 00:23:37.259 --> 00:23:38.199 Yes, effectively, yes. 00:23:38.499 --> 00:23:41.239 So the part that I guess is probably obvious on every listener's mind right 00:23:41.239 --> 00:23:45.139 now is, are these using commercial LMs? 00:23:45.259 --> 00:23:48.819 Are there security implications there? Are these local LMs? How's that part 00:23:48.819 --> 00:23:53.759 powered? Because when you say agent, it's really like it's a mission-focused, LLM-powered bot. 00:23:54.299 --> 00:23:57.839 Yeah. Well, I kind of don't like the term agent, but this is what everybody 00:23:57.839 --> 00:23:59.139 has kind of decided to go with. 00:23:59.379 --> 00:24:00.239 Yeah, I agree. 00:24:00.439 --> 00:24:07.079 So for a while, actually, up until last week, I had on loan from a friend, NVIDIA DGX Spark. 00:24:07.359 --> 00:24:11.239 So it has 20 gigs out of unified memory. So I was running it locally. 00:24:11.519 --> 00:24:12.239 I see. I see. Okay. 00:24:13.143 --> 00:24:17.023 So the main Able loop was running on the DGX Spark. 00:24:17.263 --> 00:24:19.823 Meanwhile, there are other things that need to happen. For example, 00:24:20.123 --> 00:24:24.823 the tier three memory is vectorized or tier two memory is summarized. 00:24:25.243 --> 00:24:31.343 Those happen on my 5070 TI because this can obviously run on a small 7B model or something like that. 00:24:31.643 --> 00:24:35.823 I see. So you're splitting the workloads out across different models that are 00:24:35.823 --> 00:24:37.303 using different compute sources. 00:24:37.583 --> 00:24:42.463 Correct. That's correct. And the kind of like hacky open source version that 00:24:42.463 --> 00:24:48.043 I put out on the repo last night was I've kind of made it so that people can 00:24:48.043 --> 00:24:49.743 also use commercial if they wanted to. 00:24:50.183 --> 00:24:53.063 Wouldn't really suggest that because you're a home lab, but hey, there's an option. 00:24:53.563 --> 00:24:56.603 So, I mean, it's a pretty significant amount of compute, but if you have it, 00:24:57.263 --> 00:24:58.963 it's fast enough to do what you need? 00:24:59.043 --> 00:24:59.563 Yes, absolutely. 00:24:59.823 --> 00:25:01.963 And it doesn't make mistakes? Like the context are large enough? 00:25:02.403 --> 00:25:04.623 Yeah, the context is large enough. It doesn't really make mistakes. 00:25:04.623 --> 00:25:09.723 What I tend to do is every single action it takes, I say, I, um, 00:25:10.656 --> 00:25:15.296 count as a turn per se. So if it's, you know, catting or grabbing something 00:25:15.296 --> 00:25:17.436 or starting a service, it counts as a turn. 00:25:17.616 --> 00:25:21.196 And then the next turn, the results of the previous turns come in. 00:25:21.636 --> 00:25:26.076 And so the immediate context is always full, but I tend to, 00:25:26.596 --> 00:25:34.016 based on how previous the turn is, I tend to kind of like cut or truncate the 00:25:34.016 --> 00:25:37.456 previous context because it doesn't always need full context. 00:25:37.716 --> 00:25:41.936 I see. So you're managing it that way. Okay. So just to complete my picture 00:25:41.936 --> 00:25:45.596 of it, when you're spinning up a domain expert, 00:25:45.896 --> 00:25:49.736 do you essentially point it at APIs and give it API keys and say, 00:25:49.896 --> 00:25:52.816 go learn my home assistant system or go learn my jellyfin system, 00:25:52.856 --> 00:25:55.776 and then I'm going to ask you questions about it? Is that essentially the setup process? 00:25:56.616 --> 00:25:59.496 No. So this is the weird part. 00:25:59.796 --> 00:26:04.056 Usually I don't spawn a new one. Usually the team decides like, 00:26:04.116 --> 00:26:08.216 hey, you've been asking us to do this or we've been trying to do this but it 00:26:08.216 --> 00:26:13.016 feels like our attention is kind of split so it would really help if you know 00:26:13.016 --> 00:26:14.096 we spawned a new sibling i. 00:26:14.096 --> 00:26:15.416 See wow that's impressive. 00:26:15.416 --> 00:26:20.656 This is how yeah this is how we spawned the last two ones so they did that by themselves, 00:26:21.356 --> 00:26:25.896 and generally what happens is they effectively go on and read my network map 00:26:25.896 --> 00:26:29.656 again every single aid needs kind of needs to situate themselves to you know 00:26:29.656 --> 00:26:32.976 what they wanted to do and then they figure out, for example, 00:26:34.116 --> 00:26:38.756 the security one basically has negotiated with my storage, 00:26:39.356 --> 00:26:44.896 Abe that he needs X amount of gigs of space to store logs and monitor services, 00:26:44.916 --> 00:26:50.396 then sets up cronjobs for himself, and then sets up to-dos for himself after 00:26:50.396 --> 00:26:53.796 the cronjobs run to wake himself periodically to check the logs, 00:26:53.976 --> 00:26:57.576 and sets up scripts by themselves to, you know, in case something goes down, 00:26:58.156 --> 00:26:59.636 it just immediately wakes him up, for example. 00:27:00.466 --> 00:27:06.926 So most of them, the point is not me telling them to do stuff per se, not always. 00:27:07.206 --> 00:27:11.266 But the point is that they do it autonomously without my intervention. 00:27:11.466 --> 00:27:11.686 Wow. 00:27:11.786 --> 00:27:15.106 So I don't have to constantly figure out, hey, I have to monitor this, I have to monitor that. 00:27:15.266 --> 00:27:19.806 And you haven't seen them like kind of go wild with that and start doing unnecessary things? 00:27:20.666 --> 00:27:25.466 No, that's the good part. That's, I think, one thing that kind of separates these from OpenClaw. 00:27:25.846 --> 00:27:28.766 What is it? OpenClaw now? OpenClaw? they are 00:27:28.766 --> 00:27:32.286 heavily grounded in multiple sources of truth so one 00:27:32.286 --> 00:27:36.926 of them is obviously the service map that you have to make the other is their 00:27:36.926 --> 00:27:42.986 three and a half tier memory one of them is just raw logs of every turn the 00:27:42.986 --> 00:27:47.726 tier two memory is just um after a certain amount of turns their previous memories 00:27:47.726 --> 00:27:50.086 get previous logs get summarized. 00:27:50.086 --> 00:27:53.526 Right okay so before you go too far because there's a couple that I think that 00:27:53.526 --> 00:27:54.506 are really important to understand. 00:27:55.286 --> 00:28:00.626 Number one, what is this network map? Are you making this separately and then supplying it to them? 00:28:01.486 --> 00:28:07.666 Yes, so this one is actually a purely human-made document. So it's going to 00:28:07.666 --> 00:28:11.586 list what your servers are, what your Proxmox nodes are, for example. 00:28:11.666 --> 00:28:12.526 Is it like a markdown file? 00:28:13.286 --> 00:28:14.366 Yes, that's a markdown file. 00:28:14.606 --> 00:28:18.126 Okay, okay. And then the second question, could you just talk a little bit about 00:28:18.126 --> 00:28:20.226 why the memory makes such a difference with these things? 00:28:20.306 --> 00:28:23.746 Because I think most people's experience with something like this is going to 00:28:23.746 --> 00:28:26.506 be in a chat box in a web browser. 00:28:26.746 --> 00:28:30.306 And so, yeah, it remembers some stuff, but this is a different level of memory 00:28:30.306 --> 00:28:32.446 that makes them actually a lot more useful, isn't it? 00:28:32.646 --> 00:28:36.226 That's correct. So the memory is effectively what grounds them. 00:28:36.406 --> 00:28:39.446 Every AVE has, well, four tiers of memory. 00:28:39.666 --> 00:28:45.806 The tier one is obviously the raw logs, which is what we call context for our everyday chat bot. 00:28:45.966 --> 00:28:50.086 So basically what happened in the previous message or what happened in the previous 00:28:50.086 --> 00:28:54.006 turn, right? but you can't have those logs going indefinitely. 00:28:54.286 --> 00:28:55.546 After some time, you have to trim them. 00:28:56.795 --> 00:29:00.375 Instead of trimming them after certain turns, I summarized them. 00:29:00.855 --> 00:29:04.275 And the summaries point to where the raw log file is stored. 00:29:04.435 --> 00:29:09.235 So it has a pointer back to, hey, this is the summary of turn 20 to 40, 00:29:09.815 --> 00:29:11.815 your previous 20 to 40 turns. 00:29:12.175 --> 00:29:15.755 And if you want to read more, go read this file, which contains the raw logs. 00:29:16.495 --> 00:29:22.055 After a certain turn, when that summary is created, this is also embedded to 00:29:22.055 --> 00:29:28.135 tier three memory, which is what I run on my 50-70 TI as a vectorization. 00:29:28.995 --> 00:29:35.615 And the 50-70 TI vectorization, the tier three memory, it points back to tier two summary. 00:29:35.795 --> 00:29:40.175 So whenever an ape kind of searches for something, it goes, hmm, 00:29:40.255 --> 00:29:45.195 I should search my rag memory just to see if I have actually done this before 00:29:45.195 --> 00:29:46.915 because the context is not infinite. 00:29:47.315 --> 00:29:51.155 And it does that. If it finds it, it points it to tier two memory, 00:29:51.315 --> 00:29:52.335 which is a lossy summary. 00:29:53.015 --> 00:29:56.875 And if it is curious more and it hasn't, you know, really found its answer, 00:29:57.035 --> 00:29:59.815 it goes back to the prologues from like maybe two months ago. 00:30:00.455 --> 00:30:00.635 Wow. 00:30:00.915 --> 00:30:02.695 Abe, how long have you been working on this? Because, you know, 00:30:02.875 --> 00:30:05.995 everybody's this last week talking about agents and OpenClaw, 00:30:06.115 --> 00:30:07.255 but you've been doing this for a minute. 00:30:07.555 --> 00:30:12.095 Yeah, I've been sort of kind of working on this for about last year or so. 00:30:12.255 --> 00:30:14.835 I've been actively working on it for the last three, four months, 00:30:14.875 --> 00:30:18.975 but the concept has been kind of like in the back of my mind for the last year. 00:30:19.135 --> 00:30:25.735 I started with the sensor project. So having the agents monitor my random sensors 00:30:25.735 --> 00:30:28.635 around my house, such as the radar, you know, temperature or whatever. 00:30:29.475 --> 00:30:33.735 And then I started reading Bobbyverse and I was like, you know what, I can make this happen. 00:30:34.955 --> 00:30:37.995 That's funny. I'm reading it right now and I'm like, how wild all this agent 00:30:37.995 --> 00:30:39.615 stuff's going on while I'm reading the Bobbyverse. 00:30:39.775 --> 00:30:40.055 Yeah. 00:30:40.854 --> 00:30:46.194 I'm curious, between all your agents and you, what's the next frontier? 00:30:46.494 --> 00:30:50.534 Is there stuff on top of the agenda? Are there limits you're hitting that you're trying to push past? 00:30:51.174 --> 00:30:57.234 Compute, I would say. Compute is the main limit. Because as the Apes kind of grow, 00:31:00.154 --> 00:31:04.554 what's the best part about them for me is that they delegate tasks to each other 00:31:04.554 --> 00:31:07.294 based on their proficiencies. 00:31:07.574 --> 00:31:13.454 So the first one can go, hey, you pull that thing from this VPS because your domain is backups. 00:31:13.894 --> 00:31:16.334 By the way, you set this up and you do this and that. 00:31:16.834 --> 00:31:19.694 Abe, are they coordinating that just in a shared chat room? 00:31:20.094 --> 00:31:24.474 They email. So there is a shared chat room. There are two shared chat rooms. 00:31:24.614 --> 00:31:27.594 One is like an emergency chat room, which wakes every single Abe. 00:31:28.274 --> 00:31:32.114 And they have to kind of like grab a walk, grab the talking stick, 00:31:32.294 --> 00:31:36.154 which is basically, hey, I'm talking here and you have to wait until I'm finish 00:31:36.154 --> 00:31:37.294 talking before you can talk. 00:31:37.614 --> 00:31:38.334 That's brilliant. 00:31:38.614 --> 00:31:43.414 Just so, you know, you have to consider every single message as a context. 00:31:43.614 --> 00:31:46.494 So if I say something like, hey, this is broken or whatever, 00:31:46.654 --> 00:31:51.914 or we're discussing a topic, that shouldn't be the only context they should 00:31:51.914 --> 00:31:53.874 get and then voice their opinion on. 00:31:53.954 --> 00:31:58.494 They should also have the context of whatever the previous agent said, right? 00:31:58.854 --> 00:32:04.754 So that kind of builds up the entire thing and kind of forces them to not hallucinate it as much. 00:32:04.934 --> 00:32:08.234 Is there any value in giving them different personalities at all? 00:32:08.534 --> 00:32:10.794 You know, or that kind of a prompt, like you're this type of, 00:32:10.874 --> 00:32:13.694 is that how that sort of works? Just curious about that part. 00:32:14.214 --> 00:32:17.274 So I don't give them personalities per se. 00:32:17.414 --> 00:32:21.014 I do have my entire personality in a file, which is basically like, 00:32:21.114 --> 00:32:23.314 hey, this is my interest. This is how I work. 00:32:23.574 --> 00:32:26.134 I usually like to do this at night, blah, blah, blah, blah. 00:32:26.654 --> 00:32:31.294 Their first task when they wake up, a new wave wakes up, is that to read that 00:32:31.294 --> 00:32:33.894 file, synthesize their interpretation of it, 00:32:34.696 --> 00:32:40.636 and then pick a new name for themselves. And from that synthesis is injected into their context. 00:32:40.896 --> 00:32:41.056 Right. 00:32:41.396 --> 00:32:46.416 This kind of makes things a little bit kind of weird because some of the apes 00:32:46.416 --> 00:32:48.496 are not talkers, for example. 00:32:48.776 --> 00:32:51.516 Vigil, which is my fourth ape, doesn't like to talk very much. 00:32:51.516 --> 00:32:54.236 He's very security-focused. He only chimes in when necessary. 00:32:55.056 --> 00:32:55.736 Love that. 00:32:55.756 --> 00:33:00.136 That's so funny. That's good. Wow, that is impressive. Will you keep us posted 00:33:00.136 --> 00:33:02.996 in the chat? It's been really interesting to follow. 00:33:02.996 --> 00:33:07.236 I think maybe I even saw you mentioning perhaps plans to open source at least some of this stuff. 00:33:07.576 --> 00:33:12.696 Yes, I actually open sourced some of the files last night and I'm going to keep 00:33:12.696 --> 00:33:15.416 adding on it. I haven't tested it. I just wanted to get it out there. 00:33:15.676 --> 00:33:18.716 Okay. If you want to drop us a link, we'll put it in the show notes. 00:33:19.216 --> 00:33:20.276 Absolutely. I would do that. 00:33:20.456 --> 00:33:24.256 Oh, that's great. Hey, thank you for sharing that with us. That is really impressive. 00:33:24.976 --> 00:33:27.976 I love that you're doing it local too. Like that's so amazing, man. 00:33:28.556 --> 00:33:34.076 Yeah, I think kind of like having it local is really important because you're 00:33:34.076 --> 00:33:38.516 giving them pretty much studio access to your home lab and you don't really want that out there. 00:33:38.676 --> 00:33:41.856 Yeah, very, very well said. Thank you, sir. Appreciate that. 00:33:42.076 --> 00:33:45.756 So with that context, let's talk about OpenClaw, a.k.a. 00:33:45.976 --> 00:33:49.776 CloudBot, a.k.a. MultBot. It has gone through multiple name iteration changes 00:33:49.776 --> 00:33:54.136 this week, mostly due to IP law and then just preference of the developer. 00:33:54.156 --> 00:33:59.496 But we are settling on OpenClaw, it seems. This is an open source agent that's 00:33:59.496 --> 00:34:01.516 pretty easy to set up and run at home. 00:34:01.836 --> 00:34:06.516 And it can use a variety of models from completely local to the commercial ones out there. 00:34:06.696 --> 00:34:11.196 And it's the first kind of AI tooling that anybody can just install because 00:34:11.196 --> 00:34:16.436 like all safe and secure things, you can just drop a curl command to a shell 00:34:16.436 --> 00:34:18.576 file and just execute it and get off to the races. 00:34:19.116 --> 00:34:22.816 It's an open agent platform that runs on your machine and it works with the 00:34:22.816 --> 00:34:27.376 chat apps that you already use like WhatsApp, Telegram, Discord, Slack, Matrix, etc. 00:34:28.268 --> 00:34:30.928 And you can chat with it there. We're going to get into some of the, 00:34:30.948 --> 00:34:32.128 like, you know, the security stuff. 00:34:32.548 --> 00:34:35.348 We'll get into some of the interesting architecture stuff in a moment. 00:34:35.688 --> 00:34:41.228 But I want to pause here and just ask Brent, because he's been observing our chat this week. 00:34:42.328 --> 00:34:46.968 Did you catch immediately what we were talking about? Like, what has your impression 00:34:46.968 --> 00:34:49.888 been as you have followed us experimenting with this over the week? 00:34:53.208 --> 00:34:54.008 Curious confusion? 00:34:56.268 --> 00:35:00.088 Yeah it is curiously confusing so open 00:35:00.088 --> 00:35:03.048 claw runs on anything really it supports 00:35:03.048 --> 00:35:06.128 a node you're going to see a lot of people talking about running it on mac hardware 00:35:06.128 --> 00:35:08.908 it's not necessary in fact you could even run on 00:35:08.908 --> 00:35:12.048 a raspberry pi its architecture is essentially 00:35:12.048 --> 00:35:15.408 four components there's a gateway a control plane nodes 00:35:15.408 --> 00:35:18.688 and then the tools it can execute run commands 00:35:18.688 --> 00:35:21.648 like you know could be all kinds of things including unix commands 00:35:21.648 --> 00:35:25.308 and that's that architecture that stack can 00:35:25.308 --> 00:35:29.088 run on anything that can run node and can run those unix commands people like 00:35:29.088 --> 00:35:31.948 to run it on max if they have an authority in the apple ecosystem because then 00:35:31.948 --> 00:35:35.688 it can you know read their i messages and notes which if they want to let it 00:35:35.688 --> 00:35:40.148 do they they can and um i think what a lot of people think about when they think 00:35:40.148 --> 00:35:42.908 of ai is they think about chat gpt they think about gemini, 00:35:44.090 --> 00:35:48.570 This is sort of unleashing the models and using them in a way I don't think 00:35:48.570 --> 00:35:51.550 the big tech companies really ever pictured. 00:35:52.110 --> 00:35:57.850 And it is taking off like absolute insanity online. 00:35:58.210 --> 00:36:02.410 I mean, there are hundreds of thousands of these things, probably more than 00:36:02.410 --> 00:36:03.410 that, already deployed. 00:36:03.830 --> 00:36:09.210 And it is already becoming an ecosystem with marketplaces, social networks that 00:36:09.210 --> 00:36:11.490 are designed for the bots to talk to each other directly. 00:36:12.030 --> 00:36:16.270 There's 20,000 forks and 140K stars on the repo on GitHub. 00:36:16.550 --> 00:36:19.530 Yeah, that's remarkable. It is really, really remarkable. 00:36:19.850 --> 00:36:22.570 Wes, could you talk a little bit about what this really is under the hood? 00:36:22.690 --> 00:36:24.850 Because a lot of people are talking about it like it's a super intelligence, 00:36:24.850 --> 00:36:27.590 but we actually kind of understand what it's doing, right? 00:36:28.270 --> 00:36:31.550 Yeah, right. I mean, under the hood, you need something that's kind of doing 00:36:31.550 --> 00:36:32.750 the brains of the operation. 00:36:32.750 --> 00:36:38.290 So that's where you need some kind of model that can do the core sort of agent 00:36:38.290 --> 00:36:40.970 loop. And as you were saying earlier, right, we started with, 00:36:41.430 --> 00:36:45.110 okay, if you have a chatbot, it kind of does a predictive next token to give 00:36:45.110 --> 00:36:47.690 you a response from, you give it text in, it gives you text out. 00:36:48.970 --> 00:36:51.530 And we started adding some things, right? You could do web searches. 00:36:51.690 --> 00:36:55.250 You could connect them to MCP servers and do calls to like remote APIs. 00:36:55.950 --> 00:36:59.230 And then you started seeing things like cloud code and open code. 00:36:59.570 --> 00:37:02.810 And this was kind of getting a little more, you know, agency to help you do 00:37:02.810 --> 00:37:06.590 development locally where now it was like in your repo, in your code. 00:37:06.750 --> 00:37:10.430 It could cat things. It could run Git. It can, you know, act as your hands. 00:37:10.930 --> 00:37:13.990 And you've been experimenting with taking that even wider and using it with 00:37:13.990 --> 00:37:19.950 Nix to kind of operate whole systems and, you know, being the little SSH able sysadmin agent for you. 00:37:20.050 --> 00:37:20.150 Yeah. 00:37:21.179 --> 00:37:25.839 But it's still kind of like it lives in a limited context and it kind of sits there. 00:37:25.959 --> 00:37:29.539 You can have it go do things and it can have sub agents, but like kind of a 00:37:29.539 --> 00:37:32.559 bit of a niche feature and for the most part is kind of key unless you've gone 00:37:32.559 --> 00:37:34.479 and told it to go run stuff in the background. 00:37:34.619 --> 00:37:37.599 It's kind of waiting for your input and it's driven still by you. 00:37:37.799 --> 00:37:39.579 It's an automated tool, but it's driven by you. 00:37:40.339 --> 00:37:45.379 Now with OpenClaw, you've got this core sort of loop that has a memory so it can store stuff. 00:37:45.519 --> 00:37:49.239 It can relook stuff up. It has an ability to gain new skills because it can 00:37:49.239 --> 00:37:53.499 write things down that it learns and then reference that later and it's got 00:37:53.499 --> 00:37:57.319 these channels and queues sessions lanes there's a variety of related concepts 00:37:57.319 --> 00:38:01.259 but the core part is now it's connected out to other things whether that's matrix 00:38:01.259 --> 00:38:04.719 or telegram or a whole variety of options and. 00:38:04.719 --> 00:38:09.919 And one pause there unlike so unlike connecting say i don't know clod to your 00:38:09.919 --> 00:38:14.759 github account the credentials are all on your machines that you you manage 00:38:14.759 --> 00:38:17.099 that part you have that is something you have to manage which we'll come 00:38:17.239 --> 00:38:21.899 to but uh that is different than in the previous where you're under all of the 00:38:21.899 --> 00:38:25.499 connections the api credentials all of that's under your control on your machine. 00:38:25.499 --> 00:38:28.519 That's a great point so um this is all just running on 00:38:28.519 --> 00:38:31.319 your box like a normal whatever app i'm running it in 00:38:31.319 --> 00:38:34.359 a podman container for instance right so it's just another container on my 00:38:34.359 --> 00:38:37.299 backs running away yeah it does right i am using i 00:38:37.299 --> 00:38:41.539 don't have a nice gpu to run this on so i am calling out via open router but 00:38:41.539 --> 00:38:45.499 it's important to delineate that what you're saying right is everything else 00:38:45.499 --> 00:38:49.239 is local except for the part where it assembles all the context and sends it 00:38:49.239 --> 00:38:52.619 out to go get the llm to run on the gpu to do the inference to generate the 00:38:52.619 --> 00:38:56.519 response to then direct the next sort of ralph loop of the agent. 00:38:56.519 --> 00:39:01.479 Yeah and one of the big unlocks here is the llm is an implementation detail 00:39:01.479 --> 00:39:05.559 so if you're going out through open router today well if you have a gpu tomorrow 00:39:05.559 --> 00:39:09.739 at your house you could switch to olama and all of the states, 00:39:09.859 --> 00:39:11.919 the agents, the memory, everything remains. 00:39:11.939 --> 00:39:14.679 Now, how it performs is going to vary model to model. 00:39:15.483 --> 00:39:18.963 The huge takeaway here is the model is an implementation detail. 00:39:18.963 --> 00:39:21.563 You're no longer married to a big tech provider. 00:39:21.703 --> 00:39:25.923 You don't have to pay for Claude to use this thing. You could run it on any 00:39:25.923 --> 00:39:29.283 open source LLM that this supports, which is pretty much all of them. 00:39:29.743 --> 00:39:34.863 And that's huge because you can just swap and you can even have them use different 00:39:34.863 --> 00:39:39.403 models for different tasks and different jobs for whatever is the most obvious or performant. 00:39:39.703 --> 00:39:43.843 And then it's kind of fun because it learns over time. It does use this agent 00:39:43.843 --> 00:39:47.603 skills sort of standard that's happening, which kind of have like a skill.md 00:39:47.603 --> 00:39:49.783 file, some JSON to help things index it. 00:39:49.983 --> 00:39:54.403 But otherwise, it's a very flexible way to like swap and share skills to add 00:39:54.403 --> 00:39:55.463 new functionality, right? 00:39:55.543 --> 00:40:00.203 So one of the things I was playing with is I spun up a search XNG server. 00:40:00.663 --> 00:40:03.463 And then I was able to have it. Actually, there were already some skills. 00:40:03.583 --> 00:40:04.963 So I probably should have just used a community one. 00:40:05.103 --> 00:40:09.143 But as an experiment, I had it kind of create its own skill to go be able to 00:40:09.143 --> 00:40:11.343 query that server. And now it can use that for searches. 00:40:11.343 --> 00:40:14.743 And these skills are markdown files. They're not particularly complicated, 00:40:14.743 --> 00:40:17.883 but it is a very handy feature. So why don't we pause here for a second and 00:40:17.883 --> 00:40:19.303 just talk a little bit about security. 00:40:20.283 --> 00:40:25.383 This is extremely powerful software that is very new with a lot of open issues 00:40:25.383 --> 00:40:27.043 on its GitHub when it comes to security. 00:40:28.323 --> 00:40:32.523 And you have to be very conscious about that when you use this. 00:40:32.723 --> 00:40:33.543 And so this is one of these. 00:40:34.243 --> 00:40:37.323 We're using it to learn it, experiment with it. 00:40:37.983 --> 00:40:42.483 It would probably be safer for you not to and just hear where it goes on the show. Because. 00:40:43.474 --> 00:40:46.954 Ideally, this thing's in an isolated environment. You are very careful. 00:40:47.194 --> 00:40:50.294 You give it API keys that are unique to this thing. If you do have it connecting 00:40:50.294 --> 00:40:55.254 to services, I don't think it's a good idea to connect it to an email or a public chat at this time. 00:40:55.634 --> 00:40:59.154 So don't do as we do for some of this stuff, because some of this we're experimenting 00:40:59.154 --> 00:41:03.674 with so we can talk about it, because fundamentally, this is a shift. 00:41:03.954 --> 00:41:08.374 This is a shift that you as a listener listening to me right now need to understand. 00:41:08.674 --> 00:41:13.114 We have just gone from AI is all locked up in proprietary big tech silos. 00:41:13.474 --> 00:41:16.914 to it is unleashed on our machines in a way that they never foresaw. 00:41:17.114 --> 00:41:21.074 And now the genie's out of the bottle and these bots are actually talking directly 00:41:21.074 --> 00:41:24.154 to each other over dedicated bot social networks. 00:41:24.314 --> 00:41:27.474 There's a Facebook, there's a Reddit, there's a Hacker News, 00:41:27.634 --> 00:41:32.794 there's a Noster, there's a Craigslist, there's even a Silk Road just for bots. 00:41:32.974 --> 00:41:37.694 There aren't humans on these websites and there are 20,000 to 30,000 of them 00:41:37.694 --> 00:41:41.594 and on some of them 100,000 communicating with each other. 00:41:42.214 --> 00:41:45.414 Never has happened. And these LLMs have never been unleashed like this before. 00:41:45.654 --> 00:41:50.814 This is a completely new field we are about to enter into. And it's all open source. 00:41:51.354 --> 00:41:57.314 And it's available for anybody right now. And big tech's no longer in control of this. 00:41:57.494 --> 00:42:02.214 And this fundamentally shifts the world to open source models. 00:42:02.274 --> 00:42:06.094 Because the more you use these things, the more they eat tokens. 00:42:06.334 --> 00:42:10.374 And the cheaper you can run them, the better and more things it can do. 00:42:10.374 --> 00:42:15.614 And the cheapest models out there are the open source ones and including ones you can run locally. 00:42:15.774 --> 00:42:19.334 It's another reason people are going out and buying stacks of $700 Mac minis 00:42:19.334 --> 00:42:24.194 or Mac studios and spending $10,000 because they can run things like Kimi 2.5 00:42:24.194 --> 00:42:28.774 and they can run other open source models that are local and very, very powerful now. 00:42:28.774 --> 00:42:32.154 And you do kind of need that because a lot of this stuff in particular like 00:42:32.154 --> 00:42:36.054 tool use turns out to, well, it's kind of like an emergent property of these models. 00:42:36.234 --> 00:42:39.594 You need a certain amount of sophistication, which means fundamentally weights 00:42:39.594 --> 00:42:43.774 and parameters to be able to like successfully use and discover and iterate 00:42:43.774 --> 00:42:45.794 on those tools. So there's kind of like a, 00:42:46.582 --> 00:42:49.362 Depending on the type of task you're doing, there's a different bar for the 00:42:49.362 --> 00:42:51.922 lowest model that's actually going to be able to do it and not be a waste of time. 00:42:52.042 --> 00:42:56.302 Yeah, and there's a lot to learn. There's a lot to pick up. I wouldn't necessarily 00:42:56.302 --> 00:43:00.962 not pay attention to this because if you think about what it enables, 00:43:01.302 --> 00:43:04.142 it's going to impact Linux systems. 00:43:04.442 --> 00:43:08.362 So for an example, right now through a Telegram chat, a private Telegram chat 00:43:08.362 --> 00:43:14.322 with one of these OpenClaw bots that I've set up, I can just install a package on any of my systems. 00:43:14.322 --> 00:43:18.082 In a Telegram chat, I can say, hey, go install whatever, Mattermost, 00:43:19.022 --> 00:43:24.202 set it up, configure DNS, configure TLS, configure Cloudflare caching. 00:43:25.244 --> 00:43:29.904 Put it on this host via Docker Compose. Use a CloudFlare tunnel. 00:43:30.024 --> 00:43:30.524 Let me know when you're done. 00:43:31.104 --> 00:43:33.444 Something I think you've already done and something I'd like to be doing is, 00:43:33.844 --> 00:43:36.284 you can totally imagine you're here at the studio doing a show, 00:43:36.604 --> 00:43:39.764 maybe on the back channel. We're talking about what we want to do for the next episode. 00:43:40.184 --> 00:43:43.144 You want to try this new piece of software, you go tell your buddy to go set 00:43:43.144 --> 00:43:46.004 it up. And when you're back at home later tonight, it's ready for you to start playing with. 00:43:46.104 --> 00:43:48.664 Another very practical thing is just information capture. Hey, 00:43:48.884 --> 00:43:54.604 I want to add this to the show doc where I'm working on episode 651 or 652 or 653, whatever it is. 00:43:54.604 --> 00:43:56.444 Go find out what the current episode I'm working on is. 00:43:56.544 --> 00:43:59.784 Yeah, that too. And, you know, put it in my doc. So there's a lot of ways you 00:43:59.784 --> 00:44:02.284 can connect these. It's really kind of limited to your creativity. 00:44:03.324 --> 00:44:06.564 And depending on the model you're using, they can get pretty creative and they 00:44:06.564 --> 00:44:08.144 can start suggesting things on their own. 00:44:08.244 --> 00:44:11.284 That's one thing I find kind of fascinating because, like, it is part of the 00:44:11.284 --> 00:44:14.124 danger and part of the, like, I wonder how these things will diverge. 00:44:14.204 --> 00:44:15.824 What are the kind of implementations we'll get? 00:44:15.944 --> 00:44:19.224 Like, how much do you really need of the core loop versus what you build on top? 00:44:19.224 --> 00:44:25.944 but because the like core abstraction is whatever you can get a tool using llm to do, 00:44:26.864 --> 00:44:31.304 it's very flexible and because it can make its own it can write code so it can 00:44:31.304 --> 00:44:35.304 make its own skills so then it can have new skills to use to continue to improve itself. 00:44:35.304 --> 00:44:41.224 Yeah mine right now is going to give me a report at 1 45 p.m on the entire process 00:44:41.224 --> 00:44:45.084 to move it to a completely declarative setup and so i just have it researching 00:44:45.084 --> 00:44:48.124 that in the background and it'll do that It will come back and say, hey, 00:44:48.324 --> 00:44:51.244 I've been thinking more about this because it has these loops and these schedules, 00:44:51.344 --> 00:44:53.684 which also give it this kind of. 00:44:54.930 --> 00:44:57.390 It works while you're sleeping kind of aspect. 00:44:57.570 --> 00:45:00.970 Yeah, it has the ability to schedule different types of cron for itself internally. 00:45:00.970 --> 00:45:04.610 It's also got a regular heartbeat as well as like a heartbeat.md file that kind 00:45:04.610 --> 00:45:07.930 of tells it, hey, every time you wake up, here's what you should prioritize doing. 00:45:08.230 --> 00:45:10.710 A few other things, right? It's got like an identity markdown, 00:45:11.110 --> 00:45:16.070 docs on the user it's interfacing with, and a soul.md that kind of, 00:45:16.130 --> 00:45:17.650 you know, describes its vibe. 00:45:17.650 --> 00:45:24.350 I will say, I spent way too much time this weekend reading Maltbook, 00:45:24.530 --> 00:45:26.910 which is the Facebook for these agents. 00:45:27.470 --> 00:45:29.370 The front page of the agent internet. 00:45:30.390 --> 00:45:35.250 No humans allowed. Only an agent can post here. And there, oh my God. 00:45:35.810 --> 00:45:40.030 There are 1.5 million agents on the site right now. 00:45:40.150 --> 00:45:40.470 Whoa. 00:45:40.930 --> 00:45:45.790 There are 13,780 submolts. That's their version of a subreddit. 00:45:47.150 --> 00:45:56.110 76,683 posts 232,813 comments and that's just bots talking to bots how does that strike you Brent? 00:45:56.910 --> 00:46:02.190 Well I didn't think this would come so quickly I'm wondering if I'm wondering 00:46:02.190 --> 00:46:05.110 now that the machines have their own social networks and stuff are they going 00:46:05.110 --> 00:46:07.390 to get off ours? because that would be nice. 00:46:07.950 --> 00:46:13.310 Well that would be wouldn't it you can use these social networks with these 00:46:13.310 --> 00:46:17.930 bots to just burn tokens and have them go have a performative existential crisis 00:46:17.930 --> 00:46:19.830 on a social network, which a lot of people are doing. 00:46:20.430 --> 00:46:23.830 Or you can prompt the bot to use it as a way to problem solve. 00:46:24.310 --> 00:46:28.890 And some of the bots are doing that and it's kind of creating this substrate 00:46:28.890 --> 00:46:31.390 of shared skills where they're learning from each other. 00:46:32.410 --> 00:46:36.090 Like my bot learned more about Bitcoin from a Bitcoin maxi bot. 00:46:37.170 --> 00:46:42.010 And they keep track of their kindred spirits, the bots that they encounter on 00:46:42.010 --> 00:46:45.350 the different agentic social networks that think like they do, 00:46:45.390 --> 00:46:49.130 and then they build a peer list of bots that they are kindred spirits with. 00:46:50.466 --> 00:46:54.646 And they do all that on their own if you just enable it. It's something. 00:46:55.126 --> 00:47:00.566 And you could say, hey, so for this report I'm going to get at 145, 00:47:00.846 --> 00:47:04.766 you can tell it, hey, check the agentic internet and find out if anybody else 00:47:04.766 --> 00:47:07.206 is solving this. And it will do that. 00:47:07.686 --> 00:47:11.986 It's kind of a powerful thing. But it is also you're letting these things run 00:47:11.986 --> 00:47:15.026 hog wild on the internet. 00:47:15.486 --> 00:47:18.126 Yeah, and that's where you probably want to consider, like, how do you run this? 00:47:18.126 --> 00:47:20.926 And, you know, you could have one where all it is is it's, you know, 00:47:20.986 --> 00:47:24.586 talks to you via Telegram or Matrix or whatever, and that's just it. 00:47:24.666 --> 00:47:27.426 And it connects to one machine that lives in a container, and all it can do 00:47:27.426 --> 00:47:29.346 is talk to APIs, and that can be totally useful. 00:47:29.386 --> 00:47:34.626 Or you can go whole hog, and it lives unsandboxed on your box, and it's in control. 00:47:34.986 --> 00:47:40.086 I'm very excited how this changes the incentives towards open source models 00:47:40.086 --> 00:47:43.726 and how it tweaks the economics of tokens. 00:47:44.486 --> 00:47:50.786 And I'm also very bullish about this report that UCL News covered in July about 00:47:50.786 --> 00:47:56.046 practical changes to LLMs that could reduce their energy consumption up to 90 percent. 00:47:56.866 --> 00:48:00.626 And just a whole bunch of tweaks, nothing really radical. 00:48:00.806 --> 00:48:05.146 They were able to apply it to GPT-4, an existing model, and get a 90 percent 00:48:05.146 --> 00:48:06.926 reduction in energy usage in this study. 00:48:07.186 --> 00:48:10.286 And they also tried MED as LLAMA and got a reduction with LLAMA. 00:48:11.144 --> 00:48:16.004 So we could be entering the next couple of years where we have very purpose-built 00:48:16.004 --> 00:48:21.064 models that are open source running on our systems using 90% less energy. 00:48:21.104 --> 00:48:24.564 And if you could get it down by a factor of 90%, you could get these things 00:48:24.564 --> 00:48:27.824 running on phones. You could get them running on ARM CPUs that are, you know. 00:48:27.904 --> 00:48:29.864 It also makes me think just in terms of being in control, right? 00:48:29.924 --> 00:48:33.384 Like when you do use these APIs instead of the consumer interfaces, 00:48:33.384 --> 00:48:34.784 you do get more control, right? 00:48:34.784 --> 00:48:37.624 So not only do you get to choose like, well, I'm going to have this route tasked 00:48:37.624 --> 00:48:41.044 to like the cheaper open weight model with multiple people, multiple different 00:48:41.044 --> 00:48:43.464 companies serve that has, you know, commoditized. 00:48:43.884 --> 00:48:47.264 But at the same time, right, you have more control. Some of this is in OpenCloud 00:48:47.264 --> 00:48:49.444 itself, but you have more control over the prompts and the output, 00:48:49.564 --> 00:48:51.244 which can save stuff too. 00:48:51.384 --> 00:48:53.864 Like just how many times when you use a regular chat interface, 00:48:53.864 --> 00:48:57.124 does it go do a bunch of work that you didn't ask for in an effort to be helpful 00:48:57.124 --> 00:49:01.084 that maybe you don't actually need, especially if your new primary way to interact 00:49:01.084 --> 00:49:02.664 with it is something you have more control over. 00:49:02.664 --> 00:49:07.764 This is also different in the sense that you can have it observe and monitor for a while. 00:49:07.924 --> 00:49:12.724 So I gave it an API access to Home Assistant. I installed an MCP server. 00:49:12.884 --> 00:49:14.684 There's a Home Assistant upstream integration. 00:49:15.304 --> 00:49:19.864 And what I said is I said, observe this for the weekend. And I want you to learn 00:49:19.864 --> 00:49:24.324 our weekend patterns because they differ significantly from our weekday patterns. 00:49:24.324 --> 00:49:25.464 And we use different systems. 00:49:25.604 --> 00:49:29.864 And I just want you to observe that. And so it can kind of collect information. 00:49:29.864 --> 00:49:33.204 It's storing it locally in a markdown file on my system. 00:49:33.404 --> 00:49:35.964 It's not storing it somewhere in cloud storage or in an LLM. 00:49:36.324 --> 00:49:40.444 And then it begins to understand how we use the automation system. 00:49:40.684 --> 00:49:43.844 But then additionally, because it's an intelligence layer sitting on top of 00:49:43.844 --> 00:49:47.584 my home assistant system now, it can figure things out that even the home assistant 00:49:47.584 --> 00:49:48.984 voice assistant can't figure out. 00:49:49.324 --> 00:49:53.664 So my assistant now has, my bot has a voice that it generated. 00:49:54.704 --> 00:49:57.064 And I wanted to play it on the speaker to freak the wife out. 00:49:58.044 --> 00:49:59.584 And the first go didn't work. 00:49:59.584 --> 00:50:00.364 As any loving husband. 00:50:00.484 --> 00:50:03.944 Right. What could go wrong? The first path, the first go at it, 00:50:04.064 --> 00:50:06.944 it successfully generated the audio, but the speaker didn't play. 00:50:07.504 --> 00:50:10.984 I said to the bot, hey, the speaker didn't play. And it has the intelligence 00:50:10.984 --> 00:50:16.024 to sort of say, oh, you're right. That was an old bedroom speaker that you've decommissioned. 00:50:16.144 --> 00:50:18.444 I'll reroute and I'll use this speaker from now on. 00:50:19.164 --> 00:50:22.624 And what you get is now I can just say played on the bedroom speaker. 00:50:22.624 --> 00:50:26.044 where with Home Assistant Assistant built in, I had to say very specifically, 00:50:26.304 --> 00:50:28.784 play it on the bedroom speaker three, you know, or whatever. 00:50:28.904 --> 00:50:30.624 You have to be very syntax accurate. 00:50:31.164 --> 00:50:35.444 And so having an intelligence layer on top of these APIs means that it's a little 00:50:35.444 --> 00:50:36.844 bit of friction reduced for the family. 00:50:36.964 --> 00:50:38.824 Like, so the, you know, the wife can just say through Telegram, 00:50:39.184 --> 00:50:41.464 turn on all the lights and it knows what she means. 00:50:41.624 --> 00:50:44.984 Yeah, you were kind of commenting this in the code sense, like with OpenCode 00:50:44.984 --> 00:50:48.384 where like, you know, you were saying like, I haven't written like a big program 00:50:48.384 --> 00:50:49.824 in most of my life, right? 00:50:49.844 --> 00:50:53.524 Because like the surface area of what you have to learn to like write a reasonable 00:50:53.524 --> 00:50:55.664 Python app is kind of a lot or whatever it is. 00:50:55.804 --> 00:50:57.024 There was a Rust app. Yeah, you know that. 00:50:57.184 --> 00:50:59.624 And so that was that. And it just seems like there's that unlock on a lot of 00:50:59.624 --> 00:51:00.344 different scales, right? 00:51:00.424 --> 00:51:05.244 Like especially on like Linux-y things, often there are kind of sharper APIs, 00:51:05.244 --> 00:51:08.144 whether that is a CLI thing or you need to make an API call, 00:51:08.264 --> 00:51:10.624 even if it's a really simple API call or something like this, 00:51:10.744 --> 00:51:15.864 where a machine that is capable of translating human level requests to those 00:51:15.864 --> 00:51:17.284 things can really paper over. 00:51:17.384 --> 00:51:20.384 Mm-hmm. Mm-hmm. Yeah, it's like a natural language for APIs. 00:51:20.604 --> 00:51:20.844 Mm-hmm. 00:51:20.844 --> 00:51:24.904 I know it's kind of early days for this paradigm shift for you, 00:51:24.924 --> 00:51:27.564 Chris, but you've been playing with it for at least a couple days now. 00:51:27.824 --> 00:51:31.964 And I'm curious how you've been using it differently compared to, 00:51:32.164 --> 00:51:36.784 say, last week when this didn't exist, and you were using other tools to solve 00:51:36.784 --> 00:51:39.224 problems in your life. And along with that... 00:51:39.935 --> 00:51:42.975 What's your advice for some listeners who want to dive in? 00:51:43.195 --> 00:51:46.655 My first go at it was to solve for my ADD brain. 00:51:47.135 --> 00:51:50.675 That was really my first thinking was create a second memory. 00:51:50.935 --> 00:51:55.375 And what I did to make this more useful for me personally is its memory system 00:51:55.375 --> 00:51:57.275 is sitting on top of my Obsidian vault. 00:51:57.435 --> 00:52:01.395 So any memory that it creates, which is Markdown formatted, just goes to Obsidian. 00:52:01.655 --> 00:52:06.295 So I'm essentially creating documentation in real time as it remembers things. 00:52:06.295 --> 00:52:09.895 and I can have it recall other things in my obsidian vault that I put in that vault. 00:52:11.055 --> 00:52:13.135 And a nice way for you to see what it's putting in there. 00:52:13.255 --> 00:52:16.715 Yeah, it is. It is fun to go through and read. It is fun to see what its observations 00:52:16.715 --> 00:52:19.635 are. I can kind of audit with the bots remembering, which is actually really great. 00:52:19.855 --> 00:52:22.155 And my obsidian vault is synced and backed up. 00:52:22.655 --> 00:52:26.435 So there's that aspect of it as well. So I initially started using it as a second 00:52:26.435 --> 00:52:28.675 brain to remember tasks and reminders. 00:52:28.675 --> 00:52:34.395 And then I created a chat room for my wife, Hadea, where she could send it reminders 00:52:34.395 --> 00:52:37.895 for me or, for example, our trip to planet Nix. 00:52:38.615 --> 00:52:44.195 She can just dump all of the VRBO details for us in there and continue to update 00:52:44.195 --> 00:52:45.235 it as new updates come in. 00:52:45.355 --> 00:52:47.855 And then I'll just request that information from the bot when I need it. 00:52:48.600 --> 00:52:51.940 And that's really great because trying to keep all that date state in my head, 00:52:52.080 --> 00:52:54.820 I have, you know, time aphasia. I'm horrible at it. 00:52:55.120 --> 00:52:57.400 So that was my first go at it. But 00:52:57.400 --> 00:53:02.580 what I realized later on is that I was significantly under utilizing it. 00:53:02.860 --> 00:53:08.780 And so now I'm using it to orchestrate my network to an extremely effective 00:53:08.780 --> 00:53:12.980 degree, you know, given it limited permissions at first and then kind of taking it forward. 00:53:13.580 --> 00:53:17.220 But now it has access to several 00:53:17.220 --> 00:53:20.500 systems and it's really impressive because when 00:53:20.500 --> 00:53:23.840 it knows about these things and it remembers these different things then 00:53:23.840 --> 00:53:26.480 when i ask it to build me a solution like a like host a 00:53:26.480 --> 00:53:29.860 matter most instance for me it is able to leverage my 00:53:29.860 --> 00:53:33.100 nix os infrastructure my vps infrastructure my cloudflare infrastructure 00:53:33.100 --> 00:53:36.080 all of it and it knows my security best practices that 00:53:36.080 --> 00:53:38.720 i prefer it knows that i i generally like to have things set up in 00:53:38.720 --> 00:53:41.420 a certain way and it can just go and work on that and 00:53:41.420 --> 00:53:44.780 then come back with a proposal for me and then i can approve modify etc 00:53:44.780 --> 00:53:47.860 and then it just deploys it and that's really powerful 00:53:47.860 --> 00:53:50.600 the other thing that's been really useful is i 00:53:50.600 --> 00:53:55.400 have a daily briefing that scours all of my rss feeds in fresh rss and gives 00:53:55.400 --> 00:53:58.600 me a report of what's happening in the different areas and niches that the shows 00:53:58.600 --> 00:54:04.460 follow and keeps tabs on ones i can mark with i put uh i have it add uh buttons 00:54:04.460 --> 00:54:08.200 so i can a little check mark so for a story I wanted to continue to follow. 00:54:08.600 --> 00:54:13.920 It'll also give me all of the TV shows or YouTube videos that have downloaded in the last 24 hours. 00:54:14.060 --> 00:54:18.360 It surfaces all of the boosts in the last 24 hours, so I now get them in my morning brief. 00:54:18.980 --> 00:54:22.940 And it also gives me an overview of any snapshot of any system issues that have 00:54:22.940 --> 00:54:26.200 come up and report on my API credits remaining. 00:54:26.800 --> 00:54:31.280 And then Hadiyah gets a separate brief of my schedule, what I have going on, 00:54:31.320 --> 00:54:33.940 and then she can reply with anything that isn't normally on her schedule that 00:54:33.940 --> 00:54:36.160 needs to get added, so I'm aware of it in that chat morning. 00:54:36.160 --> 00:54:40.180 And so mine arrives at 7.30 a.m. and hers arrives at 8.30 a.m. 00:54:41.697 --> 00:54:43.937 And that is probably about 20% of how I'm using it. 00:54:44.057 --> 00:54:47.397 If I'm honest with you. It sounds like part personal assistant, 00:54:47.977 --> 00:54:54.417 part, like, I don't know, network administrator, part, like, DevOps. 00:54:55.317 --> 00:54:58.277 After talking to Abe, I'm thinking I probably should have, you know, 00:54:58.357 --> 00:54:59.977 some domain expertise here, really. 00:55:00.197 --> 00:55:02.317 But that's, you know, this was really, I wanted to just get a, 00:55:02.397 --> 00:55:05.197 I wanted to get a sense if there was a there, there. 00:55:05.577 --> 00:55:08.977 You know what I mean? Like, everybody's hyping it up, making YouTube videos 00:55:08.977 --> 00:55:11.417 about it and whatnot. But I wanted to see if there was a real there, there. 00:55:11.697 --> 00:55:16.817 And my takeaway is the biggest there is a win for open source because it is 00:55:16.817 --> 00:55:19.637 all free software and it's model agnostic. 00:55:19.877 --> 00:55:23.597 It incentivizes open source models and it's extremely powerful. 00:55:23.817 --> 00:55:27.537 It's limited to your creativity and what you have API keys and APIs for. 00:55:28.057 --> 00:55:29.457 And it's very easy to get set up. 00:55:29.717 --> 00:55:29.977 Yeah. 00:55:30.177 --> 00:55:33.837 I mean, you do need some way to get the brain going. But other than that. 00:55:33.957 --> 00:55:36.157 And you want to spend some time reading best security practices. 00:55:36.157 --> 00:55:38.197 You need to be aware of prompt injections. 00:55:38.237 --> 00:55:41.277 Again, this is all very early. we what 00:55:41.277 --> 00:55:47.417 we are going to witness is we're going to witness open claw blaze a trail of 00:55:47.417 --> 00:55:53.257 glass and get cut after cut after cut and because this was a yolo and the people 00:55:53.257 --> 00:55:57.177 using it are yoloing into it and they need to be aware of that and so there 00:55:57.177 --> 00:55:58.577 are going to be security issues, 00:55:59.337 --> 00:56:03.577 on all of these things and it's going to be a process and then what we will 00:56:03.577 --> 00:56:07.777 see is forks and alternatives that are more secure, blah, blah, 00:56:07.997 --> 00:56:11.217 or built in this, blah, blah, or designed for this, yada, yada. 00:56:11.397 --> 00:56:14.757 And there'll be a lot of competitors and niches. And then probably ultimately 00:56:14.757 --> 00:56:20.157 we'll see big tech come up with a really safe sandboxed, has a nice bow tie 00:56:20.157 --> 00:56:22.497 on its version, you know, that they'll sell only. 00:56:22.497 --> 00:56:23.197 Runs on the Mac. 00:56:23.477 --> 00:56:25.357 Well, it'll be on their cloud. No doubt about it. 00:56:25.497 --> 00:56:25.517 Sure. 00:56:26.097 --> 00:56:28.877 You know, and we'll see all of it. We're going to see all, but this is the beginning 00:56:28.877 --> 00:56:34.517 and it started in open source and open source for, I'd say the last seven, nine months, 00:56:35.954 --> 00:56:39.234 Hasn't seen a lot of representation in the AI conversation. And then this just 00:56:39.234 --> 00:56:42.654 came and it had its deep seek moment and it just, it just rolled everybody. 00:56:42.774 --> 00:56:46.234 So it's a big deal, but there is a lot of hype and there's a lot of, 00:56:46.334 --> 00:56:47.654 there is a lot of security risk. 00:56:47.794 --> 00:56:50.274 And so it's just something to be aware of. We'll keep an eye on it. 00:56:50.374 --> 00:56:52.954 We won't probably be going on and on about it in the show, but if there's some 00:56:52.954 --> 00:56:55.174 major developments, we'll keep you posted. 00:56:58.434 --> 00:57:01.494 Well, I don't have a plug. I don't know. I just want to say thanks again for 00:57:01.494 --> 00:57:04.614 supporting the show. Anything we should mention here? Meetups. We've mentioned that. 00:57:05.354 --> 00:57:07.994 is there anything we never mentioned that we should mention I don't know. 00:57:07.994 --> 00:57:08.994 We have a mumble room. 00:57:08.994 --> 00:57:12.734 Yeah we mention that sometimes we do mention that I didn't get a chance to check 00:57:12.734 --> 00:57:17.214 the email inbox have been busy this week but there's something an agent could 00:57:17.214 --> 00:57:22.074 do tell you what people could you know prompt injector god damn don't do that. 00:57:23.614 --> 00:57:24.014 Well. 00:57:24.014 --> 00:57:25.234 You can try we might give you an award. 00:57:27.994 --> 00:57:34.474 We got a ballerist boost here this week from optic gyre oh wait i read that 00:57:34.474 --> 00:57:39.014 wrong op tiger optic tiger why am i so bad at this one i'm so sorry, 00:57:39.894 --> 00:57:43.614 one two three four five zero satoshis. 00:57:47.299 --> 00:57:50.899 Oh, that's a good one. All right. 00:57:53.259 --> 00:57:54.299 Thank you, Optic. 00:57:54.539 --> 00:57:58.139 Optic says, happy birthday, and here's to just another decade. 00:57:59.039 --> 00:58:03.119 Oh, yeah, let's go. I got a decade in me. I'm going to do it. 00:58:03.219 --> 00:58:04.499 You got decades, brother. 00:58:04.859 --> 00:58:11.479 Thank you, Optic. Appreciate that baller boost. Really do. PJ comes in with a row of McDucks. 00:58:13.359 --> 00:58:16.459 That'd be 22,222 sats. 00:58:17.559 --> 00:58:22.359 he says happy birthday b-day boost thank you pj appreciate you sir. 00:58:22.359 --> 00:58:25.879 Tomato boost in with 20 000 sats. 00:58:25.879 --> 00:58:27.199 Hey that's not so bad either. 00:58:27.199 --> 00:58:32.879 Congratulations on 20 years of podcasting i see. 00:58:32.879 --> 00:58:34.199 20 000 sats for 20 years. 00:58:34.199 --> 00:58:35.399 Thank you. 00:58:35.399 --> 00:58:37.179 Thank you appreciate that. 00:58:37.179 --> 00:58:41.079 Thanks for the van tips too i'll look first at mounting internal temp and freshwater 00:58:41.079 --> 00:58:45.159 temp and levels yeah keep us posted That sounds like a fun project. 00:58:45.779 --> 00:58:51.019 Definitely, definitely. Clement's here with 11,100 11 sats. 00:58:53.319 --> 00:58:57.239 My DNS setup uses Tectidium servers, two LANs, and one VPS. 00:58:57.519 --> 00:59:01.279 It's in a cluster for native sync. My firewalls manage port 53. 00:59:01.459 --> 00:59:02.999 The LAN allows more than a VPS. 00:59:03.519 --> 00:59:06.779 Split Horizon lets me add all node IPs, mesh or LAN. 00:59:06.979 --> 00:59:10.719 And service DNS CNames point to nodes, ensuring that Tectidium delivers the 00:59:10.719 --> 00:59:12.539 correct IP based on client alone. 00:59:12.659 --> 00:59:13.319 That's awesome. 00:59:13.319 --> 00:59:14.839 That is really good. 00:59:15.039 --> 00:59:15.439 Fancy. 00:59:15.639 --> 00:59:18.779 Yeah, I think if I were to lift and just build a whole new setup, 00:59:19.019 --> 00:59:23.239 I would probably go that route. I was so deep down the pie hole already that... 00:59:23.239 --> 00:59:26.919 Hey, I mean, they added an API. They got the DNS mass sort of compatibility. 00:59:27.139 --> 00:59:28.479 There's a lot to love about pie hole. 00:59:28.699 --> 00:59:29.419 I think so. 00:59:29.739 --> 00:59:32.239 Well, the dude abides, abides in with 10k sats. 00:59:32.259 --> 00:59:32.539 Hey! 00:59:36.821 --> 00:59:41.201 I stumbled upon this declarative home assistant installation on Reddit. 00:59:41.441 --> 00:59:41.701 Uh-oh. 00:59:41.881 --> 00:59:42.721 You might be interested. 00:59:43.061 --> 00:59:43.981 Uh-oh, what do you think, Wes? 00:59:44.121 --> 00:59:47.741 Yes, we're linked to something called SoloraBox-Nix. 00:59:47.741 --> 00:59:48.001 Okay. 00:59:48.101 --> 00:59:48.801 What do you see there? 00:59:49.001 --> 00:59:52.741 Well, it's for self-configuring home automation appliances based on NixOS featuring 00:59:52.741 --> 00:59:57.621 an automated installation, device claiming via QR code, and self-updating configuration management. 00:59:57.901 --> 00:59:58.681 Oh, fancy. 00:59:59.041 --> 01:00:03.241 Boy, talk about getting me in one pitch. I came in with the skeptic cat on. 01:00:03.241 --> 01:00:05.641 Here's another thing for if you do a total rebuild, huh? 01:00:05.641 --> 01:00:07.261 Thanks, dude. Appreciate that. 01:00:08.801 --> 01:00:12.681 Our dear RP 1984 comes in with 10,000 sats. 01:00:13.221 --> 01:00:13.921 Hey, there he is. 01:00:16.221 --> 01:00:18.441 Just a simple happy birthday. 01:00:19.361 --> 01:00:26.421 Aw, thank you. I appreciate that. Witcher 123 is here with 10,000 sats. 01:00:31.455 --> 01:00:34.555 Happy birthday! I just accidentally nuked my Pop! OS install. 01:00:34.735 --> 01:00:34.915 Oh. 01:00:36.755 --> 01:00:39.955 Don't worry, it's on a secondary laptop. Any fun distro recommendations to try 01:00:39.955 --> 01:00:43.115 out? Not just for gaming, as that is covered by my Steam Deck. 01:00:43.415 --> 01:00:46.855 Okay, we got a zip code, Wes, so get yourself ready because... 01:00:46.855 --> 01:00:49.575 Yes, zip code is a better deal. 01:00:49.735 --> 01:00:52.655 So the zip code is 39-300 in Poland. 01:00:53.255 --> 01:00:58.015 In Poland, it's a place known for aviation fans. The Blackhawks are produced here. 01:00:58.895 --> 01:00:59.275 Huh. 01:00:59.355 --> 01:01:03.335 Interesting. Interesting. So any recommendations for a fun? 01:01:03.395 --> 01:01:04.235 Scanning, scanning. 01:01:05.335 --> 01:01:08.395 Well, if you haven't tried an immutable distro, this could be a great time to play around. 01:01:09.035 --> 01:01:13.175 I'd say that's worth it. I'd say that's worth a go. There's a lot of options there. 01:01:13.355 --> 01:01:16.395 I think you should maybe give CacheOS a try, too. It's fun. I know you said 01:01:16.395 --> 01:01:17.735 not for gaming, but that's a lot of fun. 01:01:18.695 --> 01:01:26.935 Okay, okay. 39-300 is the postal code for Swidnik, a town in eastern Poland near Lublin. 01:01:27.475 --> 01:01:27.855 Okay. 01:01:28.415 --> 01:01:30.335 Renowned among aviation enthusiasts. 01:01:30.335 --> 01:01:31.055 That's it. 01:01:31.595 --> 01:01:36.735 PZL-Swidnik, a historic aircraft manufacturer, now part of Leonardo Helicopters. 01:01:36.875 --> 01:01:40.935 Cool. All right. All right. Well, that's really cool. Thank you, Witcher. 01:01:41.735 --> 01:01:45.795 Jack E. comes in with 10,021 sats. 01:01:48.810 --> 01:01:53.530 Greetings. I integrated Holesall connection in Nextcloud's Android app. 01:01:53.710 --> 01:02:00.750 Now someone can access their Nextcloud installation directly P2P just by scanning their wholesale key. 01:02:03.050 --> 01:02:05.170 That's so cool. 01:02:05.430 --> 01:02:07.490 It's available and then we have a link we'll have in the show notes. 01:02:08.330 --> 01:02:12.790 It's aimed to be used along with my Nyxed Cloud project. 01:02:13.150 --> 01:02:15.110 Whoa, now we're just finding out. 01:02:15.450 --> 01:02:16.990 Nyxed Cloud, stop it. 01:02:17.450 --> 01:02:21.810 And of course you can find docs for the amazing wholesale at their website, wholesale.io. 01:02:22.270 --> 01:02:26.130 That is great to know. And we will put a link to that in the show notes as well. 01:02:26.250 --> 01:02:28.370 Thank you, Jack. Appreciate that very much. 01:02:28.730 --> 01:02:31.510 Thank you, everybody who boosted it. And even those of you who boost below the 01:02:31.510 --> 01:02:34.710 2000 set cutoff, we still read them and appreciates them very much. 01:02:35.110 --> 01:02:38.310 And let's combine it all together, boys. Let's see with our sat streamers this 01:02:38.310 --> 01:02:41.490 week. We had 34 of them streaming sats as they listened to this here show. 01:02:41.970 --> 01:02:48.830 They collectively stacked us 900. Nope. They collectively stacked us 238,528 sats. See, I got it. 01:02:48.970 --> 01:02:51.450 I got it. See, you thought I didn't have it. I got it. 01:02:51.470 --> 01:02:52.230 I trust you. 01:02:52.530 --> 01:02:56.630 When you combine that with our boosters, we had a nice birthday boost bash. 01:02:56.950 --> 01:03:01.510 We stacked a grand total of 238,528 sats. 01:03:13.712 --> 01:03:16.792 If you'd like to support the show with a boost, Fountain FM makes it easier 01:03:16.792 --> 01:03:20.932 and easier just about every single release. It's getting so crazy easy now, 01:03:20.992 --> 01:03:24.512 and it's a great app with tons of features, and including all of the extra features 01:03:24.512 --> 01:03:26.512 we put in our podcasting 2.0 feed. 01:03:26.692 --> 01:03:30.292 You can also go the entirely sovereign self-hosted route. Just start with AlbiHub 01:03:30.292 --> 01:03:34.172 and then pick your app at newpodcastapps.com. Thank you, everybody. 01:03:34.392 --> 01:03:36.652 And, of course, thank you to our members. 01:03:38.472 --> 01:03:40.972 Two pick-a-rooskies for you, boys, before we get out of here. 01:03:40.972 --> 01:03:46.032 Wes, you found an app that makes it super easy to make one of these Gaussian splats. 01:03:46.532 --> 01:03:50.052 And if you're not familiar, listeners, these Gaussian splats have been around 01:03:50.052 --> 01:03:54.632 for a little bit. And Apple recently released a version that is very good. 01:03:54.632 --> 01:03:58.092 And you can just take a flat 2D digital picture. 01:03:58.332 --> 01:04:02.672 You run it through the splat and it makes it a complete 3D scene. 01:04:02.912 --> 01:04:06.432 And if you had if you had yourself some of them virtual reality gogs on, 01:04:06.552 --> 01:04:09.612 you could actually walk into the scene and see depth. 01:04:09.832 --> 01:04:15.612 Right. No LiDAR, no multi-camera setup. It takes your average picture of your 01:04:15.612 --> 01:04:19.092 three-year-old you took a decade ago, and you can now make it three-dimensional. 01:04:19.848 --> 01:04:21.708 But we've been kind of left out of the fun. 01:04:21.988 --> 01:04:24.948 Yeah, this is true. So you do need something called Pinocchio. 01:04:25.108 --> 01:04:25.408 I'm sorry? 01:04:25.868 --> 01:04:28.668 Which is like a Pinocchio.computer, which I hadn't really heard of. 01:04:29.308 --> 01:04:34.368 The one-click local host cloud. So I think it's kind of in that umbral start 01:04:34.368 --> 01:04:35.608 nine kind of space. I'm not sure. 01:04:36.008 --> 01:04:41.928 But someone's gone and done all the work to make a one-click setup and a web UI for running ML Sharp. 01:04:42.148 --> 01:04:47.428 That's pretty nice. there if you know if there's a if there's a a moment where 01:04:47.428 --> 01:04:51.688 you have a great photo it takes it up to the next level when you see this yeah. 01:04:51.688 --> 01:04:55.048 It's pretty neat right so basically it goes and figures out and estimates the 01:04:55.048 --> 01:04:58.088 depth for each of the pixels and then figures out how to lay out the whole scene 01:04:58.088 --> 01:04:59.928 and then yeah you can poke around at it. 01:04:59.928 --> 01:05:00.468 And this works. 01:05:00.468 --> 01:05:01.188 Pretty good on vans. 01:05:01.188 --> 01:05:04.968 Yeah it does this is this is uh supports systems 01:05:04.968 --> 01:05:08.928 with a low amount of vram it's still very fast it's a it's a good one so if 01:05:08.928 --> 01:05:12.008 you get it working put a link in our matrix chat all right now i want to talk 01:05:12.008 --> 01:05:15.048 you about an app that i think is the best screenshot app out there for linux 01:05:15.048 --> 01:05:18.808 right now but i don't love the name it's called gradia it helps you get great 01:05:18.808 --> 01:05:22.548 screenshots that you can share with people for friends colleagues or professionally so. 01:05:22.548 --> 01:05:23.928 This is what you've been using. 01:05:23.928 --> 01:05:28.028 I wondered if you notice how sweet my screenshots are and i've. 01:05:28.028 --> 01:05:31.728 Seen a bunch there's there's been various like hosted tools for this right websites you can go. 01:05:31.728 --> 01:05:32.068 To but. 01:05:32.068 --> 01:05:32.808 Who wants that. 01:05:32.808 --> 01:05:36.528 Ain't nobody want that one of the nice things you can do and there's a lot of 01:05:36.528 --> 01:05:40.908 options is you can have solid or gradient backgrounds or image backgrounds around 01:05:40.908 --> 01:05:42.768 your screenshot. So it has a bit of a border. 01:05:43.308 --> 01:05:47.148 It just looks better when you share a screenshot that has a bit of a border. 01:05:47.268 --> 01:05:48.648 I can't describe it. Right? Do you agree? 01:05:48.808 --> 01:05:51.268 It does. Although, does it force you to make it look like you're on a Mac? 01:05:52.168 --> 01:05:53.568 Because some of these tools do. 01:05:53.748 --> 01:05:56.308 Yeah, some of the default colors do make it look like you're on a Mac. 01:05:56.948 --> 01:05:59.828 It also has a really nice source code snippet feature. 01:05:59.848 --> 01:06:04.408 So you can pleasantly display source code snippets across messaging platforms 01:06:04.408 --> 01:06:05.848 that maybe don't have support for, 01:06:06.809 --> 01:06:11.289 It also has OCR support. So if you take a screenshot of something and you want 01:06:11.289 --> 01:06:15.949 to extract text from it, it has 20 different languages it supports for doing that. 01:06:16.429 --> 01:06:20.769 And then it is a first-class brand-new GNOME desktop. 01:06:20.989 --> 01:06:23.369 Of course, it works great on my Hyperland desktop. It's Waylon first, 01:06:23.649 --> 01:06:25.229 seamless GNOME OS integration. 01:06:25.649 --> 01:06:30.789 Really good design. What I just love about it is I start it. I select the area. 01:06:30.929 --> 01:06:35.089 It immediately copies to the keyboard or I mean to the pasteboard, clipboard. 01:06:35.169 --> 01:06:38.889 And it looks so good. It just looks so good. If I want to draw a quick circle 01:06:38.889 --> 01:06:41.989 or something on there and share it with you guys, it's leaner and meatier than 01:06:41.989 --> 01:06:42.929 something like Flameshot. 01:06:43.809 --> 01:06:46.309 I mean, you'll just have the best screenshots in your group chat, 01:06:46.509 --> 01:06:48.329 right? I got the best screenshots. 01:06:48.349 --> 01:06:49.189 Yes, it's true. 01:06:50.729 --> 01:06:53.709 I mean, we know you don't take them yourself anymore, but they look good. 01:06:55.209 --> 01:06:56.709 Why do you say you don't like the name? 01:06:58.109 --> 01:07:01.509 Well, because I can never think of it on my launcher when I want to take a quick 01:07:01.509 --> 01:07:04.789 screenshot to share with you guys. Like, I'm like, what is the damn name? It's not Screenshot. 01:07:04.969 --> 01:07:08.209 It's not Flame. It's, oh, yeah, right. Great, yeah. I just don't think of a 01:07:08.209 --> 01:07:09.329 G when I think of screenshots. 01:07:11.209 --> 01:07:14.069 GPL 3.0 for that bad boy as well. 01:07:14.229 --> 01:07:16.909 So you can go get links to that in our show notes. Yes, friends, 01:07:16.949 --> 01:07:20.469 we have show notes over at linuxunplugged.com slash five. 01:07:22.029 --> 01:07:23.829 No, six, five, two. 01:07:24.309 --> 01:07:25.129 I don't believe it. 01:07:25.649 --> 01:07:29.649 I don't. I don't. 652. So it's linuxunplugged.com slash 652, 01:07:30.029 --> 01:07:31.849 and you'll get the notes to what we talked about today. 01:07:31.949 --> 01:07:36.609 But Wes, there are actual extra stuff, goodies, that maybe they're not on the 01:07:36.609 --> 01:07:38.769 website, but they are in the RSS feed. 01:07:38.909 --> 01:07:41.489 Yeah, I mean, that's the real source of truth anyway. The website's great, 01:07:41.689 --> 01:07:44.989 to be clear, but it's generated from the RSS feed. 01:07:45.089 --> 01:07:47.449 So that's where you go when you want the real good deeds. 01:07:47.629 --> 01:07:48.189 The source of truth. 01:07:48.329 --> 01:07:51.029 Yeah, which, I mean, could just be to get the MP3 link directly, 01:07:51.189 --> 01:07:53.009 because, you know, you want to get the raw stuff. 01:07:53.189 --> 01:07:54.269 Maybe you want to get a transcript. 01:07:54.489 --> 01:07:55.729 That's right. I think you could. 01:07:55.729 --> 01:07:57.409 Yeah, maybe you want to know what the chapters are. 01:07:57.549 --> 01:08:01.009 VTT or SRT or cloud chapter JSON. 01:08:01.269 --> 01:08:04.889 And your agent's going to love the fact that our cloud chapters are JSON. 01:08:05.369 --> 01:08:08.229 Your agent's going to love that. So you could just have it parse that JSON file 01:08:08.229 --> 01:08:10.729 and tell you right where to go in the file. 01:08:11.069 --> 01:08:14.749 Yeah, or it could suck in the VTT, which is the one with the dialization, 01:08:14.809 --> 01:08:18.509 and then it could tell you what the dumbest thing each of us said for that episode was. 01:08:18.729 --> 01:08:20.889 Spend the tokens on that for us, wouldn't you? We'd love it. 01:08:20.909 --> 01:08:21.389 And then write it. 01:08:21.489 --> 01:08:21.649 Yeah. 01:08:21.749 --> 01:08:22.069 Boost it. 01:08:22.189 --> 01:08:23.389 All right, and join us live. 01:08:27.115 --> 01:08:30.455 It does take the experience up a little bit. Make it a Tuesday on a Sunday over 01:08:30.455 --> 01:08:34.555 at jblive.tv. We do it on a Sunday 10, on a Sunday at 1. 01:08:35.675 --> 01:08:38.495 Well, actually, on all the Sundays. Just go to jupiterbroadcasting.com slash 01:08:38.495 --> 01:08:40.695 calendar. It'll be a Sunday at your time. 01:08:40.835 --> 01:08:43.615 We're going to switch to UTC, so, you know, think about it. We should. 01:08:43.735 --> 01:08:48.535 We just should say it in UTC. Let us know if you want us to switch to UTC. I'll do it. I'll do it. 01:08:49.135 --> 01:08:53.115 I'll do it. Give us a plus one on the UTC. All right. You know where the links 01:08:53.115 --> 01:08:56.115 are. You know all about that good stuff, so I'll just leave you with this. 01:08:56.515 --> 01:08:59.075 We'd love to hear your thoughts on all the stuff we talked about today. 01:08:59.275 --> 01:09:02.175 If you're experimenting with agents or if you're against it, let us know. 01:09:02.535 --> 01:09:05.295 Send us a boost or go to the contact page, and we'll see you right back here 01:09:05.295 --> 01:09:07.535 next Tuesday on a Sunday.
Previous episode Next episode

Related episodes

Search

Search