All episodes

Episode 111

THE AI THAT ACTUALLY DOES THINGS: OPENCLAW, DISCORD, AND GEMMA 4

What happens when you give an AI the keys to your terminal? In this episode of Venture Step, Dalton Anderson dives into the agentic revolution with OpenClaw—the open-source powerhouse…

Apr 15, 202600:45:33
Listen to the episode00:45:33

What happens when you give an AI the keys to your terminal? In this episode of Venture Step, Dalton Anderson dives into the agentic revolution with OpenClaw—the open-source powerhouse that's so disruptive it sparked a bidding war and landed its creator, Peter Steinberger, at OpenAI.Dalton breaks down the genius behind the "Claw" before getting into a live technical demo. You’ll see how to navigate the "vibe-coded" security risks of giving an agent system access and how to successfully deploy a Discord bot powered by Google’s high-efficiency Gemma 4 26B A4B model. Whether you’re a founder tracking the next platform shift or a dev ready to build a local "Jarvis," this is your blueprint for the next era of automation.TopicsThe Steinberger Shift: Why the creator of PSPDFKit moved to OpenAI to drive the next generation of agents.The Security Paradox: Managing the "unacceptable risk" of autonomous system access and prompt injection.The Agentic Build: A step-by-step guide to Discord integration and API hardening.Local Power: Running Gemma 4 26B A4B (the 4B active parameter MoE model) for fast, private automation.The "Claw" vs. The Labs: Why Anthropic is blocking agentic access while OpenAI leans in.KeywordsOpenClaw, AI Agents, Peter Steinberger, Gemma 4 4b, Discord Bot, Venture Step, Autonomous AI, LLM Security, API Setup, Agentic Workflows, OpenAI, Google DeepMind.🔥 Sound Bites"OpenClaw isn't just a chatbot; it's a digital employee that can accidentally trigger a $16 million money heist if you don't lock the door.""We’re moving from AI you talk to, to AI that actually does the work while you sleep. The era of the agent is officially here.""Hooking up Gemma 4 to Discord isn't just a cool demo—it's the blueprint for how founders will scale in 2026."Chapters00:00 — The Agentic Shift: Intro to OpenClaw & Venture Step00:53 — The Steinberger Legacy: From PSPDFKit to OpenAI03:34 — The $16M Bidding War: Why Big Tech is panicked by open agents06:20 — Safety Off: Prompt Injection and the risks of "Vibe Coding"10:06 — The Lab: Choosing your protocol and defining the use case18:24 — The Infrastructure: API keys and security hardening19:59 — The Discord Build: Step-by-step bot configuration33:42 — The Demo: Onboarding OpenClaw and testing workflows40:07 — Model Selection: Interacting with Gemma 4 26B A4B42:05 — Final Verdict: Is OpenClaw the new standard for founders?ResourcesOpenClaw GitHub Repository - https://github.com/openclawPeter Steinberger's Profile -   / petersteinberger  Discord Developer Portal -   / discord  GPT-4 by OpenAI - https://openai.com/research/gpt-4

Episode content

Explore every layer of this episode.

Each article, guide, analysis, and field note has its own focused page and stays linked to this source conversation.

Full episode

Read the complete record.

The show notes, transcript, and source trail remain on this canonical episode page.

TranscriptRead the full conversation.

E111B The AI That Actually Does Things: OpenClaw, Discord, and Gemma 4

Transcript

Dalton Anderson (00:06.13) All right, I'm back. So what is this website? All right, so let's go to this deployment guide. Okay, so the first thing that I think is important to do is get your APIs. And so there's a couple things you wanna think about here.

Dalton Anderson (00:26.09) What do you want to do and how do you want to interact with OpenClaw? There's a couple of ways that you can do it. There's many actually. You can do iMessage, you can do Telegram, you can do Discord. It really depends on what you want and what are your limitations that you're willing to accept if you want it to be as easy as possible. Do you want it to look cool? Do you want it to be scalable and flexible? And those are the kinds of things you got to think about.

So there is this thing called Blue Bubbles that allows you to manage OpenClaw through iMessage. And once you set that up, it's cool. I think it'd be really cool to be able to just text your AI friend. But I think the caveat is consistently people talk about the consistency of the connection. And then Telegram is really good.

Telegram has a bot API that you can enable. It's really easy. It's fast, probably the fastest setup. The caveat of fast means that you have less flexibility on what you can and can't do. And what I mean by that is it's not as, I feel like it's not as good if you're trying to code because it doesn't have native markdown. It doesn't.

organize things into different threads. You can do those grouping things, but it's not the same, same at all as say Discord, where Discord is already built in a thread like manner. And those threads enable you to say, okay, hey, if you have any errors, put it in the error thread. Or if I want to talk to you about coding stuff, it's going to be in this thread or

You can organize it however you want, make it as simple and flat, or you can make it as complicated as you want. But you have that flexibility and you also have the ability to provide markdown, native markdown support, either with inputs or outputs. And the biggest caveat for Discord, I think, is the bot API limit.

Dalton Anderson (02:47.614) I think it's limited to 1,900 characters to read and output, I think.

And there's a way around it where it uses some kind of web hook. I'm less familiar with it because, well, we're starting this together. I did it yesterday. I used it.

know if you can hear me. guess you can't. My screen went black. Mac is being all sorts of weird. Okay, so when you're thinking about what APIs to gather, think about which tools you're gonna use. probably the most important one that has the most flexibility is how do you wanna interact with your agent? And then once you determine that, I think before you do that, one more thing, before you do that, you should think about

what are you gonna be doing? If you're just gonna be messaging back and forth, the different things, and you're not gonna be coding, then maybe Discord doesn't make sense. But if you're gonna be coding, highly recommend Discord. And if you think that you're gonna make a complicated, threaded process where you want stuff organized, then I would use Discord. And Discord is harder to set up. But when I say harder to set up, it's not that hard.

we're gonna do it, it takes about five minutes. So it costs about four more minutes than it would, but it also has a lot more flexibility. So you do with that information, however you please. Okay, and then there is how do you wanna search stuff? So there's Tel Aviv, and then there is Google Chrome, which uses Gemini. There is Perplexity Search.

Dalton Anderson (04:39.678) There's a whole bunch of different search mechanisms. I chose this one because it's been around for a couple of years and it's quite good. And I haven't used it before, but from what I've heard, it's good. And then the other piece of it is it was really easy to set up. You just create an account. You've got a free API for a thousand searches per month. Seems decent enough. And then if I need to reevaluate, then I will.

but majority of my work is gonna be coding. So I don't necessarily care that much about the search, but if you're be in a lot of searching, I would do more research there. What this company does that's cool is that it transforms the website information into Markdown and it's easy for the LLM to compile the information it receives and create a great output for the user.

my gosh, it's getting hot. I gotta take off my clothes. Okay, so there's a whole bunch of things that you can do on the API side. And then you gotta think about, hey, am I running this locally or am I running this using one of these frontier models? So you could run it locally if you've got enough space, but nowadays the models get so compressed that you could run it.

anywhere. If you're running on your phone, is it going to be really good? Probably not. Is it going to be as productive as you think? Probably not, but

or you could pay to run one of these bigger models.

Dalton Anderson (06:25.96) which objectively aren't that expensive. A 3.1 flash, I think is around 20 cents to 30 cents per one million tokens, which is a lot of tokens. Like, that's a lot. And so what, are you gonna spend 20 million tokens? And okay, like you're not breaking the bank. So I would just think about that. mean, it depends on what you're trying to do and how productive you wanna be, but.

I tried Gemma last night and I thought it was okay, but I was like, it seems average. And it's probably supposed to be average because it's a model that you can download and run on your computer or your phone. So I don't think it's meant to be some monster model that's able to just do whatever, which eventually hopefully we get to that place one day.

And I think it's good for what it is and how small it is, but also.

I don't know. I'm trying to be super productive and I'm setting this up to be more productive, not to spend a lot of time curating my prompt to tell it exactly what it needs to do. I just want to be the idea guy. I'm an idea guy. You know what I mean? I don't know why I did that accent, but okay. So let's start gathering our keys. So let's go. Let's do the first one. I have the websites. this one does have a website. This what's going on here.

What's going on here?

Dalton Anderson (08:07.582) it that way.

Okay, cool. Windows. All right, so then...

If you log in, you've got to make an account.

Continue. I hate that I'm logging in with like my actual account. Okay, so you'll have your key. Of course my key is hidden because I'm cool, but you'll just make an account and then you'll go to overview and your key's loaded right here. So then all you have to do is set that aside on a different tab. So that's what we'll have. And then, okay, let's go back to our setup. say, all right, now we either need a Gemini API key.

or we need a codex, API key or Anthropic. These are all optional. I already have Gemini set up. I'm using a Google Authenticator first. It's not Google Authenticator, but it's Google Authent. And that basically just uses your Google login. And I understand that that's not scalable, but I also set up a service account on my enterprise system.

Dalton Anderson (09:18.024) So I have a service account that has a key that I'll be utilizing that will constantly be able to use the system without having to log in. But that's a whole different thing and not related to this episode and more complicated than I originally thought it was going to be. It was like such a pain in ass. I thought it'd be easier, honestly, whatever. Okay, so let's do Discord. So Discord.

Is it's discord. I did it again, didn't I? I got to used to that on this episode. So Windows C Windows V. OK, discord developer portal will log in. My applications log in. Log in. Oh my gosh, I'm going to have to take this out. My freaking number pops up. Oh my gosh, I'm going to blur the screen for sure.

AI blur this. Flag this review. I can't leak in my number like that. man, that's too funny. Or my email. People, we've got to flag this stuff down. Okay, so we got to do a new application. We're going to call it. I'm going to call it Aura. That's what I'm calling my AI. I'm calling my AI Aura like it's, it's around me. You can't see it, but.

It's there. It's helping me out. I've got maximum aura. I'm based in aura. OK, so then we will create this.

You gotta confirm you're not a human. You gotta confirm you are a human, bad. And then once you set this up, you'll get these keys. I'm gonna blur this out as well. I can't have that on there. So many key leakage. Okay, so then after that, you want to go to new application. We already did that. I called mine Aura. We wanna go to the bot tab, go to bot, and then you want to reset token. It's gonna ask you to log in. So it's gonna ask you to re-log in.

Dalton Anderson (11:28.944) And so I'm gonna log in, I'm gonna verify. Verify, submit. And so you gotta log in with your account and it's gonna generate a token for you. A new token was generated, be sure to copy it. Well, I don't see it. here it is. Cool, cool, So you should put this somewhere, put it somewhere safe. I'm gonna put it in probably the worst place you could put it.

For now, while we're on this episode, I'm just gonna put it in my Google. Let's do that. So let's just do this boom.

So I'll just call this, call this discord. But okay. So we've got that downloaded. I just showed the wrong screen. So we've got that downloaded. The next thing that we're going to go through is we've got to set up the permissions to do this. So the next thing you've got to do is you got to go to, thought often too. And at the bottom, you want to just take this spot right here. You want to do scope.

and you want to put bot and then you want to give it. I mean, for some reason I can't see. OK, here we go. You want to go down below that and see bot permissions. So the first thing you want to edit is the thought to your generator and you want to put bot. then after that, you want to go down to bot permissions and you can specify it. There's a lot of permissions here and you can probably over engineer it. But I'm making this channel

which is called a server just for the bot. So I'm going to use administrator. And then after that, you can install it however you want. You'd want to use a generated URL, but we're not ready to do that yet. So then after that's all created, you want to go back to bot and it should have, it should have gone through. All right. So there it is. It's administrator.

Dalton Anderson (13:36.542) So you go to the OTHONT2 and then you go to BOT. And then there's one more thing that you've gotta do. You've gotta set it up and highlight. the, why is this not saving?

Like a save button?

Dalton Anderson (13:59.678) Come on.

Dalton Anderson (14:08.51) And this is your last night. Oh, here we go. So you want to take this off, public bot, no, and then requires this OAuth 2 code grant. And then you want to do present intent. You want to do this. And then you also want to do members intent. And then you want to do message content intent. And this is what you want.

You wanna make sure you do that. And you also wanna make sure you turn your bot as off. don't want, everyone wanted to have access to it. So it's just you. This is a bot just for you. It's your special little bot. So you don't want people, there it is, save changes, gosh. I couldn't see it because my screen, public application cannot have a default authorization link. Got it.

Dalton Anderson (15:03.046) It doesn't though.

Dalton Anderson (15:06.918) save

Uhhhh

Dalton Anderson (15:18.11) Let's let's see, let's see, grants.

Dalton Anderson (15:26.75) Okay, what if I turn this off? Save changes.

Okay, hold on. I don't know.

It's not gonna work. So when you have no idea what's going on, you can also ask a buddy. So we're gonna ask a buddy if I could figure out how to ask my buddy. Here we go. Terminal, where are you at?

Where you at, Mr. Terminal? Come on, open.

Dalton Anderson (16:07.038) Okay, cool. Okay, so we'll just do Gemini.

Gemini is going to sign in. I've got it in YOLO mode. OK, so let's, I am, I learned this recently. So if you click command twice on Windows, you can dictate, which is great. Let's try this.

Is it not gonna work?

Dalton Anderson (16:41.63) Hello.

Maybe it doesn't work. right, so. Here we go. Hey. Can you hear me? Hello. I don't think you can hear me, but it's showing. Whatever I am having. Actually, it's probably easier if I just put it in. Gemini. If we're if I can't dictate, then it kind of just defeats the purpose. So let's just do this and say.

Hey, I'm setting up a Discord bot. I have everything set up, but it's giving me an error stating that it has a public application cannot, a private application cannot have a default authorization link. And so I've set up the two authentic and then I was trying to set up the bot at the permissions, but it won't let me save it. What's going on?

All right, let's get that going. then while that's cooking, oh, well, it cooks pretty quick. OK, so go to the bot, scroll down to public, public, bot is turned on. OK, so they want me turn it on for now. OK, I'll do that. Scroll to authorization flow, turn on.

Dalton Anderson (18:06.684) Okay, but it must have a clear authorization link in the, yeah, that makes sense. So, you know why? I don't think I saved this. D'er.

Dalton Anderson (18:21.394) But I don't see a thing to save it though.

Dalton Anderson (18:37.405) This is not a success right now. I'm going to have to cut this part, cut it out a little bit. So bot, developer portal, scroll down to authorization link flow, turn it on. OK, permissions fit correctly. Go to OTHONT, go to bot, application commands. This is what you're back with. Copy URL at the bottom page. Use that LinkedIn. Yeah, I understand that.

Dalton Anderson (19:15.526) administrator.

It doesn't have, please enter the URL, Director. Okay, so what if we turn this off?

Dalton Anderson (19:35.262) All right, let's all this stuff off. Save. my gosh, dude.

Dalton Anderson (19:44.7) All right, so then we go back over here. I'll tell you what, I didn't have these issues last time I did this, but I also wasn't sharing my screen on a computer I don't use all the time. I don't, okay, here we go. We've got the link. So I'm just gonna keep it open and then I'm make a new server on my Discord.

Ahem, allow allow.

Dalton Anderson (20:11.134) OK, so we're going to log in with my phone. Let's do this.

Dalton Anderson (20:23.006) in, you're in. Cool. So then I will make a new server.

Dalton Anderson (20:32.766) I just don't know how to do that on here.

Dalton Anderson (20:39.336) Okay, new server, there we go. Add my own, just for me.

Dalton Anderson (20:51.262) All right, so have a general chat. We don't need a voice chat, so let's delete that, delete category, delete. We have text channel. We don't need this. Delete channel. And then I'll make another channel called error.

Logs.

And then that's it.

Okay, so then after that, we should be able to invite people from this link. So if you copy this link, you take this link that you have, and I'll have to blur this out.

Dalton Anderson (21:41.406) Okay, so then you can add it to your servers. So then I'll add it. And I'll add as administrator. And then once this is added, wait, are you human? You check, hey, I am human. Configure. Okay, perfect. Okay, so it's added, but there's no one speaking to it. So it's not gonna work. So don't say anything in the channel yet. Go back, you've got that straightened out. You wanna go back over here.

and then you want to do bot and then you want to turn this off public. You want to these things off.

And then you have administrator. Dude, it's still having issues.

Okay, I wanna turn this off. Maybe I'm not supposed to do that.

Dalton Anderson (22:36.51) Cool, that's my problem, my bad, my bad. That's why I was having these issues, because I wasn't messing with this. Okay, cool, so this has...

The scope, the scope is bought. And administrator.

I feel like I'm gonna have problem with this later on.

Dalton Anderson (23:04.36) Hold on.

Dalton Anderson (23:08.006) Okay, so I've got the bot, has an invite to the server. I've created a server just for the bot and we've done all that. But then I have an issue and I feel like it's wrong at the moment where the URL generators bot and then bot permissions as administrator. But I remember when last time I set this up was you needed to,

Dalton Anderson (23:36.51) you needed to go and use something else.

Dalton Anderson (23:46.13) Like.

Dalton Anderson (23:51.038) I'll just redo this. I'll just do this. I'll do a one.

We're going to redo our bot setup. So that's what I'll do. I'm going to redo it. OK, but tell me how to do it from scratch. All right, so we're going to redo the whole thing. So we're going to go create. We're going to backtrack the whole way. We're going to backtrack the whole way. So the next thing that we need to do right now is we need to go into Discord and we need to create a server for ourselves.

So let's do that. So I will create a server and we'll say my own and for me, and we'll say venture step.

Dalton Anderson (24:47.55) All right, so I've created this server and I'm just going to delete all this other stuff because the bot's not going to need it. General. OK, so we've got the server set up. So we've got this server venture step. So then we're going to go upstairs, I guess. That's what I wanted to say for some reason. And then we go over to the Discord Developer Portal. Let's do this. Let's exit this. And then we go to Discord. Discord Developer Portal.

We're going to log in, already logged in. We're going to do a new application. We're going it Ventures Step.

Dalton Anderson (25:25.618) That's our bot name. Green of this. I'm human.

Dalton Anderson (25:33.278) All right. So venture step. You got this stuff. We're good to go. And then the next thing that we need to do is we need to go over to this and just keep in mind, I'm not going to be using this after this episode. I'm going to delete the bot because I don't want people using all of the keys. And then another thing is I don't want it to be a problem.

So I'm going to delete this afterwards, but then I don't have to worry about leaking all my keys, which is great. OK. So I just want to make sure I'm setting this up right, because earlier I tried it literally on this podcast. And I thought I did it wrong, but I probably did it right. I'm not sure. So all right. So public do not work once they join.

Dalton Anderson (26:29.8) persistence and ten...

Dalton Anderson (26:40.126) to get your bot's password.

All right, step one, set up bot user, okay?

So we'll set up the bot user. Let's do that. Discord bot.

Go over here, set up our bot permissions.

through bot and then we'll resend our token.

Dalton Anderson (27:11.614) We to set this presence, we want to set this up, we want to set this up.

Dalton Anderson (27:17.662) And then we want to reset our token. We want to get a token. You'll have to put in your password. I'll have to edit that because I don't want to share my number publicly. That'd be a bummer. OK. So then once that's set up, you've got your token. And then the way that you're going to have the bot join, and you're going to want to turn this off, the public bot. But you can only do it once this bot has joined servers. So you want to go to O.

I have unsafe changes.

Dalton Anderson (28:03.455) All right, so it's a public bot for now. And then everything's saved. You want to go over here. And you want to specify what it can and can't do and what type of URL you're generating. You're generating a bot. So it needs to be a bot URL. Don't worry about all this other stuff. And then you can over-engineer this. I wouldn't. I would just do administrator. It would suck to have this all set up. And then you're having permission issues.

So then once that's set up, it's gonna generate a URL. So you wanna click this URL and you wanna add it to a new tab. So we're gonna do that right now. And then once you do that, it's gonna have you log in. Since I'm already logged in on my machine, it's going to allow me to add it to a server. it knows I made the VentureStep bot and the service called VentureStep so it automatically linked those two things together. And so I'm gonna join and I'm gonna join as administrator and I'm gonna...

state that I'm human, and then I'm good. Boom. There it is. So then after that's done, you should definitely take your bot off of being public. And I think it's like this. You switch these.

Dalton Anderson (29:20.456) Well, I'm not sure. I have my other bot not public, but I don't want to share that one. Let's see. Message. OK, so we have, I think, the last thing. OK, so we did the OTHOCK2. And then what should we do after that? How do we take the bot off being public once the bot has joined the server?

Ahem.

Which great choice. do do. Go to the bot tab, lower new app, click bot, toggle public off.

Dalton Anderson (30:06.824) Go to the installation tab. okay, that's something I didn't do.

Dalton Anderson (30:19.582) Go to the installation tab and then from there.

Dalton Anderson (30:27.038) Let's go to the installation list. Install link set to none.

Oh, I see. Okay. And then go back to bot and then go turn this off. Cool. Okay. Sounds good. So if you do need to turn your bot off public, you need to go to the installation tab, then go to your install link and then change this to none. I didn't remember that I did that. So sorry. And it's not in my instructions either. This is a little thing sometimes, little things. Okay. So now that we've got our bot all set up and it's ready.

Let's just check it one more time to make sure.

All these things are highlighted. You have to make sure that this is highlighted. The present intent, server members intent, message content intent. If this stuff isn't highlighted, then your bot doesn't really respond. So just keep that in mind. Or it can only respond if you @ sign it which is annoying because then you can't voice type. OK. one other thing. Before we get too deep in the weeds on the other stuff, one thing I forgot to note, and I probably should have said it in the beginning, was when you set this up,

Think about, you're gonna be using voice type the whole time. Think about the name. When I set mine up, the first time I used, like, daemon (I corrected this) and it's a Linux term, it's spelled differently. It's not spelled like demon. It's spelled, like, basically you'd spell it like daemon. Like daemon.

Dalton Anderson (32:13.48) messed up that but yeah. But it's pronounced demon but it's spelled daemon. So anyways, but that doesn't get picked up on voice type and it's not gonna be picked up on this transcription. So I had an issue with it because I was like, okay, well if I'm gonna use voice type all the time, I can't call out to my agent or different agents. If you're gonna make multiple agents or have an agent, you should be able to say its name.

without having to type it. So keep that in mind. And also keep that in mind if you're gonna found a company, that's also important too. If you're gonna found a company, you should definitely be voice type optimized because well, that's how people are gonna interact with stuff. Machines typically are gonna be taking commands from other machines eventually and humans and humans are gonna be typing this stuff.

They're going to just say what they need. OK, so Discord set up. The next thing is we've got the server config and we've got these channels, whatever you want to do. I'm going to post this all in the show notes. I should have said that in the beginning of the episode. Why did I not do that? Hello, everybody. I'm going to post this all in the beginning of the episode. OK, so the next thing is we're going to start running stuff. So we want to install if you're on Mac, you want to install homebrew.

Homebrew is gold standard for Mac. And if you're not on Mac, you can also install Homebrew on Windows, Windows treats Homebrew a little differently. It treats it like a third party. And also I'm gonna be using command line because it's just easier.

Dalton Anderson (34:17.17) bit odd on Mac.

I didn't copy and paste the right way, so then I copied and pasted the wrong thing. So funny. But I set this up to where you can just run. You don't have to worry about the comments or any of stuff. Like it's set up to where you just copy and paste the command, you know what the command's doing, you put it your machine, and you call it a day. So what I'm gonna do is I'm gonna speed up the process, and since I have a lot of this stuff, it's probably...

not necessary, I'll try it. So I don't want to install, I want to install the open clock framework, but I don't want to install all the other stuff. So I'll install the homebrew stuff. I'll install Olama, those kinds of things. And then I'm going to skip over the other stuff. So I'm just going to drop it in to command line and I'm going to let it run.

I've got it in YOLO mode and YOLO mode means it just does whatever. So it could absolutely crash my machine.

stop. It could.

Dalton Anderson (35:34.91) Hold on, let me change the model. That's two, three. Okay, so let's try that again. See how quick that was? I'm dialed on the Gemini command line. Okay, so.

Dalton Anderson (35:55.356) It's going to run through all this stuff for me on my behalf. It's in YOLO mode, so it's not going to ask me. I definitely don't suggest you starting out in YOLO mode and then I would be careful just giving these types of things full access to your machine. As I said before, this machine doesn't have anything personal on it. I wiped it yesterday, so it's got Gemini command line, Obsidian, Discord, and Todoist, and Google Chrome.

Those are the only things on the machine besides the bloatware from Apple. That's it. But it's going to go through and install everything on the machine. I suggest you probably set this up this way as well. It makes it way easier. But if you don't want to do that, then here are the commands. I'll put it on our website, but I suggest that you just download this tool and it be I think it's free at first and then you've got to pay.

or it might be 20 bucks, but if you're worried about the timing or how long it's gonna take, you could put this on your computer and then you can go cook dinner and you can come back and it'll be pretty much squared away. If you put it in YOLO mode, if you don't do that, then it's gonna ask you all the time, like, is it okay to do this? Is it okay to do this? Is it okay to do this? And it's just like, come on, man, just stop asking me. let's just get this done.

So when these commands are running, I'll just walk through some of them. So the homebrew thing is kind of like a global manager of stuff that you download off the internet. It could be code bases, repos, whatever. It's a good way to install stuff. Definitely for Linux and Mac, it is the way to do it. I just said that earlier in the episode that Windows treats it a little differently. It treats it sometimes like a third party.

If you have an option to install homebrew or install a different way, it kind of depends on what it is. Like there is an option to install Gemini command line with homebrew. But since it's native in MPV or sorry, in npm And that's like the suggested way to install it, then that's how you install it. it kind of depends on how the software was built and how

Dalton Anderson (38:23.016) they want you to interact with it.

So you have all these things running and then once they're done running, you want to verify that everything ran correctly. And so this is the last step. So you'd want to know the version of the node that you want to have Git installed and Deno and then Olama, Claude and Gemini. I'm going to take Claude out here because I don't have Claude, but I'll have Gemini. So I'm going to copy, see if this is still running too.

It's still thinking, but it's almost done. Refresh gateway service, install this, install this.

Dalton Anderson (39:14.622) This has been thinking for three minutes. For me to do this myself and like copy and paste. All right, so action is needed.

Let's see where it's requesting.

Mm-mm.

Dalton Anderson (39:34.781) so

Dalton Anderson (39:39.119) did install Anthropic on exit. My bad. So I've got an Anthropic log. It's not a bad thing.

Dalton Anderson (39:51.71) Okay. All right. So we've got this stuff. did all these things. It's thinking, okay.

It's still thinking, it's the thinking machine, baby. All right, so it's running. Yes, can, so now I've got to go in here and tell it, yes, it's okay. idk service, yes. Enable, yes.

Dalton Anderson (40:29.192) Restart gateway service now, sure.

Dalton Anderson (40:34.622) Okay, so OpenClaw has this doctor function that you can call that will check how it's doing. And then also has really detailed logs.

So this is set up and it's done. So then the next thing is to go back, it's shift, tap, to go back in here and it's thinking, thinking, thinking, and I'll prepare my code to put in here.

and then we'll go to Geminis.

Dalton Anderson (41:13.224) Well, I guess I could just do all of it because I've got Claude on my machine. So let's do that. So then we will go.

Dalton Anderson (41:23.902) queue that up and I can maybe stall. So when I was setting this up at first, it was so funny because open claw was telling me BS when I had it in discord and I was interacting with it. It was like, no, I can't search the internet. No, I can't do any of that.

I can't do those things. And I was like, yes, you can. You 100 % can do those things. What are you talking about? And it was like, oh yeah, but like, I don't want to. I was like, what do you mean? You don't want to. I guess I sent a message to look at the code base of this and give me a review of what it needs to do. And then afterwards,

It was like, all right, but like, what do want me to do? And I was like, well, I just told you what I want you to do. I want you to review the code base and tell me what you think and tell me, you know, what you learned about it. And it was like, give me an actual assignment. That's not an assignment. And I was like, well, I feel like it is like asking to review and understand it is important for you to be able to work on it. And it was like, oh, well, get back to me with an assignment. It's like, what?

Why are you gaslighting me? You're telling me you can't do things and then you're also telling me that you aren't capable of reading through the code because you don't want to, because you don't have a definitive directive of an output that you need. It's ridiculous. Okay, all tools are available. All right, perfect.

Dalton Anderson (43:16.4) So then let's do this. Let's check it. So the next thing we're doing, we're checking the versions.

Get, get everything is going good, man. All right, cool. So that's working. So the next thing that we wanna do, I'm getting used to this Windows key now.

Dalton Anderson (43:37.31) I guess not, because it's not coming out. All right, let's go back. So the next thing we want to do is we want to start our next problem. This is windows.

So we got to start this on Windows. It starts automatically. So brew services.

It's weird that I'm going to start running the AI through another AI because this is Gemini command line and then I am going to...

Command it again. Why is this not?

So then you're gonna wanna pull this and this is gonna take a long time to download, but I think I already have it downloaded. So I'm not going to, I'm not gonna do this, but I am going to ask it say.

Dalton Anderson (44:33.992) Can you?

Can you please?

Dalton Anderson (44:43.016) machine.

Dalton Anderson (44:52.894) in the folder.

Dalton Anderson (45:06.465) I forgot the word find.

We'll see if it can find it. I have it already on my machine, so I don't have to download it because it takes forever. It's like 16 gigs or something, which is pretty small, but oh, there it is. It was able to find it.

backup strategy.

Dalton Anderson (45:34.898) I wonder if I'll be able to.

keep the audio for some instance, just fast forward it, have little stories, like boom, once upon a time, I went through something. And yeah, it was able to find it. Seven seconds. Cool. So it's got it. It's got it going home, baby.

Okay. So after that, want to then you've got to test it. So I'm going to open up a different window for this.

what's it doing now?

Dalton Anderson (46:21.128) Is it still running? Okay, but after that you want to test it and then once you test it then you're gonna set up OpenClaw and then once that's set up then we will be chillin. That's actually the first step. So we're only gonna do the first step today. There's a lot of other stuff that needs to be done and honestly I need to become more familiar with all of the settings, the do's and don'ts and figure out what works for me because I'm gonna be using it

or plan to use it every day. So I'll let you know on what is most optimal for myself, although I'm only one person and I like to work on things like this. So I'll make a lot of progress, but I'll also need a little time. So you've got to give me some time. Okay. You gotta give me some time to brew on this. No pun intended.

Dalton Anderson (47:22.43) Okay.

Dalton Anderson (47:27.26) Okay, so I guess, I guess it's talking to its own little buddy. So it's talking to a llama right now.

fine tone, friendly and inviting, self-contained. Don't just say hello, say hello and ask how can I help making this interaction productive from the start? How can I help you today?

Dalton Anderson (47:51.858) I have no idea what it's doing. Now it's pulling the file.

OK, let's try in a new terminal.

And let's do this. Let's run this command. So paste.

Dalton Anderson (48:12.881) Wow file does not exist. Okay so we'll have to let this run and so I'll have to come back. So funny. This was downloaded prior though. Please please please understand that. So I'll just have this pasted not run it.

Dalton Anderson (48:36.83) Okay, so this is going to run. It's saying one hour, which is ridiculous. So I'm going to stop recording. I'm going to chill. And then I will come right back. Okay, sounds good.

SourcesFollow the source trail.

E111B Sources

[[E111B Transcript - Dalton]] contains the first setup session and Dalton's comparison of messaging channels, model choices, and deployment options. [[E111B Transcript - Setup Demo]] continues the installation, local-model test, Discord configuration, and troubleshooting. Both raw transcript notes remain unchanged.

The transcripts control Dalton's actions, observations, and conclusions during the recording. They do not control current OpenClaw, Discord, Ollama, or Gemma behavior.

Current product sources

OpenClaw release 2026.7.1, commit 2d2ddc4, is the pinned source for version-specific package and documentation review. The package identifies itself as version 2026.7.1 under the MIT license.

The OpenClaw getting-started guide controls the current prerequisites, installation, onboarding, provider configuration, and first-run sequence. The official Discord guide controls current bot, pairing, permission, channel, routing, and troubleshooting behavior.

The OpenClaw security guide is required reading before any public setup instructions. It documents allowlists, session isolation, secret handling, network exposure, and the limits of OpenClaw as a multi-user security boundary.

The current pairing guide, session guide, secrets guide, local-model guide, and Ollama provider guide control their respective surfaces.

Discord's application quick start, OAuth2 and permissions guide, OAuth2 reference, Gateway documentation, and Developer Policy control bot identity, tokens, scopes, permissions, intents, and platform rules.

Google's Gemma documentation, Gemma 4 model overview, and Gemma 4 model card control current model variants, architectures, modalities, context, licensing, and intended deployment surfaces.

Ollama's Gemma 4 library record controls its current packaging route. It is a runtime distribution source, not the authority for Google's underlying model claims.

Google's current Gemini API pricing page was reviewed for the hosted-model cost comparison. Public copy avoids fixed price claims and requires a publication-time refresh.

Local verification record

The OpenClaw repository was cloned and pinned to release 2026.7.1 at commit 2d2ddc43d0dcf71f31283d780f9fe9ff4cc04fe4. Source documentation and package metadata were reviewed from that checkout.

A clean CLI attempt used a new temporary OpenClaw home with no user configuration or credentials. The package correctly refused to run because the editorial host had Node 24.14 and release 2026.7.1 requires Node 24.15 or later in the Node 24 line. The check changed no account, channel, token, or persistent OpenClaw configuration.

The runtime gate prevented a live dry-run configuration test in this environment. No unsupported Node bypass was used.

No Discord application, bot token, server, provider account, model download, external gateway, or production process was created for the editorial review. The Discord Tutorial is source-verified against the pinned release and current official portals and explicitly discloses the absence of an end-to-end external account test.

Evidence boundaries

The transcript records a real but unstable setup session with discarded configuration, a model-size mistake, token handling, gateway problems, Discord troubleshooting, and long local response times. It should not be converted into a copy-and-paste tutorial.

The public package must never reproduce API keys, bot tokens, local paths, account identifiers, gateway tokens, or secrets. It must not recommend allow all, disabling timeouts, public network exposure, or broad tool permissions merely because a Discord server is private.

Dalton's M1 Mac and selected Gemma configuration provide one user experience, not a general benchmark. The setup reached a limited “zero to hero-ish” state, not a verified production deployment. Current guides must distinguish a local experiment from a persistent, secure, supervised service.

The recording's use of Discord Administrator is preserved only as narrative evidence. Current public guidance uses the minimum permissions named by OpenClaw and Discord. The recording's permissive installer mode and suggestion to disable a timeout are not public recommendations.

OpenClaw is documented as a single trusted-operator personal-assistant boundary. Separate sessions do not create hostile multi-tenant isolation. Separate gateways and preferably separate OS users or hosts are required when trust boundaries differ.

Plaintext tokens can remain agent-readable even in local configuration and .env files. Public guidance uses SecretRefs where supported and pairs them with filesystem and tool restrictions.

The current OpenClaw security guide warns that smaller or heavily quantized models can be less resistant to prompt injection and tool misuse. This is an OpenClaw project position, not a benchmark performed by Venture Step.

The Local Model versus API Model page provides a reproducible test protocol. It does not claim that a production comparison was run. Current provider prices, terms, models, and data-handling rules require a date-specific check.

Claims held from publication

Do not publish the transcript's bot message-length estimate, search-service allowance, provider price estimate, model list, subscription detail, or setup-duration claim without a current primary source and a clear reader need.

Do not reproduce any token, API key, service-account value, phone number, email, user ID, server ID, channel ID, local path, gateway token, or private configuration from the recordings.

Do not say the local model was fully verified because it answered a direct prompt. Do not say Discord was fully configured because the bot appeared online. Do not say the dashboard worked.

Do not recommend Administrator, public bot distribution, open direct messages, wildcard allowlists, disabled timeouts, broad installer autonomy, tool access before channel verification, or operation on a primary personal or work machine.

Citation and refresh record

Public claims link to the source that controls them. OpenClaw releases, Node requirements, configuration keys, security checks, secrets, provider behavior, and Discord channel steps require a fresh check before publication.

Discord portal labels, scopes, permissions, intents, policies, and bot behavior require a fresh check. Gemma variants, license, context, runtime packaging, and provider pricing require a fresh check.