WEBVTT

1
00:00:00.251 --> 00:00:05.454
Today's guest shipped 600 commits in a single day, and he did not read any of them.

2
00:00:06.175 --> 00:00:10.777
I judged him for that, and then I found out that my own standards are worse.

3
00:00:10.937 --> 00:00:17.761
Peter Steinberger spent 13 years building PSPDF kit and deploying it onto a billion devices.

4
00:00:18.221 --> 00:00:21.123
He then burned out and stopped writing code for three years.

5
00:00:21.583 --> 00:00:22.884
Agents just brought him back.

6
00:00:23.504 --> 00:00:29.448
He built OpenClaw out of his apartment in Vienna, the personal AI everybody is now running on their own machine.

7
00:00:29.932 --> 00:00:33.374
The trick is that his agents review themselves as strangers.

8
00:00:34.054 --> 00:00:38.316
A fresh copy with no memory of writing the code, arguing with the one that wrote it.

9
00:00:38.717 --> 00:00:39.517
Up to 10 rounds.

10
00:00:39.737 --> 00:00:54.185
By the end of the episode, you'll know how that loop is wired, why he throws out MCP connectors and instead writes his own CLI crawlers, and what he wants attached to your pull request that is not code, and where he still refuses to let an agent go.

11
00:00:54.485 --> 00:00:58.533
And I show up having already installed it in a Docker box where it cannot touch anything.

12
00:00:59.034 --> 00:00:59.936
We get into that.

13
00:00:59.996 --> 00:01:00.477
Stick around.

14
00:01:03.825 --> 00:01:05.807
Tom, after Peter, we have a bonus.

15
00:01:06.087 --> 00:01:11.032
So others might not know this, but you invested in my startup through your fund PWV.

16
00:01:11.372 --> 00:01:13.534
And I've got a little investor update for you.

17
00:01:13.834 --> 00:01:18.098
We have a new product we've been building at Plow.

18
00:01:18.278 --> 00:01:26.125
It's a MCP server that plugs into the agent you already run like OpenClaw to safely give that agent real control of your Mac.

19
00:01:26.506 --> 00:01:26.806
Awesome.

20
00:01:26.886 --> 00:01:27.767
Has anyone tried this yet?

21
00:01:28.187 --> 00:01:34.593
No, it's a live demo, a brand new build, and you're going to be the first user to run it in front of the camera.

22
00:01:35.013 --> 00:01:37.075
I'm sure it's not going to work.

23
00:01:37.535 --> 00:01:39.997
And I'm saying a little prayer to the demo gods right now.

24
00:01:40.258 --> 00:01:43.641
Well, as long as it doesn't exfiltrate my private keys, I'm game.

25
00:01:43.841 --> 00:01:44.902
Yeah, great.

26
00:01:45.222 --> 00:01:45.943
Let's get into it.

27
00:01:50.032 --> 00:01:54.575
Our guest today has shipped 600 commits in a single day without reading most of them.

28
00:01:55.276 --> 00:01:58.238
And a code reviewer called it actually not slop.

29
00:01:58.518 --> 00:02:02.220
He grew up in rural Austria, taught himself to code at 14.

30
00:02:02.280 --> 00:02:15.850
He bootstrapped PS PDF kit, a PDF framework that now runs on over a billion devices for 13 years and then burned out, sold his shares, traveled, moved countries twice and didn't touch code for months.

31
00:02:15.870 --> 00:02:16.330
Wow.

32
00:02:16.470 --> 00:02:16.790
All right.

33
00:02:16.970 --> 00:02:17.511
Three years.

34
00:02:17.751 --> 00:02:21.914
So that was the period where we're like, I think I can code with AI.

35
00:02:21.934 --> 00:02:22.794
And then we tried to do it.

36
00:02:22.834 --> 00:02:24.836
And then it was like, no, actually, I can't.

37
00:02:25.496 --> 00:02:25.656
Yeah.

38
00:02:25.676 --> 00:02:30.419
He came back in 2025, tried Cloud Code, built dozens of projects in just a few months.

39
00:02:30.519 --> 00:02:33.681
And the last one was a WhatsApp bot that he connected to his computer.

40
00:02:34.222 --> 00:02:37.144
Then one day he sent a voice message to it on a whim.

41
00:02:37.964 --> 00:02:42.928
The bot figured out how to transcribe the message using his open AI key, which he hadn't provided it.

42
00:02:43.888 --> 00:02:44.988
And then responded.

43
00:02:45.448 --> 00:02:49.709
He said that was the moment he understood chatbots give up and agents improvise.

44
00:02:50.329 --> 00:02:54.110
He then came home, tried to explain it on Twitter, and nobody got it.

45
00:02:54.550 --> 00:02:56.090
So he did something risky.

46
00:02:56.510 --> 00:02:57.531
This is going the next mile.

47
00:02:57.791 --> 00:03:04.252
He put the agent, which had full access to his computer, his files, his emails, everything on a public Discord, open to anyone.

48
00:03:04.712 --> 00:03:06.932
He watched strangers talk to it all night.

49
00:03:07.092 --> 00:03:08.533
And of course, people tried to hack it.

50
00:03:09.113 --> 00:03:09.653
That's amazing.

51
00:03:09.833 --> 00:03:14.356
This is indicative, I think, what I've seen from senior developers that I've known, right?

52
00:03:14.436 --> 00:03:18.098
Like, you got to do what it takes to get it done and to hell with the consequences.

53
00:03:18.879 --> 00:03:22.001
Or to hack the thing the other person is getting done to red team hit.

54
00:03:22.681 --> 00:03:24.262
You know, the best part comes after.

55
00:03:24.623 --> 00:03:25.383
What's the best part?

56
00:03:25.743 --> 00:03:27.604
Well, I put on Discord.

57
00:03:27.985 --> 00:03:32.187
I think I spent like seven hours and a lot of people came and it was like a lot of messages.

58
00:03:32.227 --> 00:03:33.168
People tried to hack it.

59
00:03:33.188 --> 00:03:34.389
People had fun with it.

60
00:03:34.789 --> 00:03:35.950
Some people got excited already.

61
00:03:36.350 --> 00:03:38.531
And it was like 7, 8 a.m. in the morning.

62
00:03:38.571 --> 00:03:39.052
I was like...

63
00:03:39.572 --> 00:03:41.834
I need sleep.

64
00:03:42.214 --> 00:03:45.677
I closed my terminal where this was running and went to bed.

65
00:03:45.958 --> 00:03:47.219
I slept for like 10 hours.

66
00:03:48.039 --> 00:03:48.500
I woke up.

67
00:03:48.840 --> 00:03:49.381
I came back.

68
00:03:50.121 --> 00:03:50.982
I opened Discord.

69
00:03:51.002 --> 00:03:53.724
I got like 800 messages.

70
00:03:54.185 --> 00:03:56.467
My agent responded to every single person.

71
00:03:56.487 --> 00:03:57.588
I was like freaking out.

72
00:03:58.383 --> 00:04:03.445
I got pulled the plug, I was like meticulously reading to the whole thing and actually nothing leaked.

73
00:04:03.725 --> 00:04:06.005
But you know, like I built a thing to be resilient.

74
00:04:06.546 --> 00:04:13.108
So when I pressed Ctrl C, it stopped and then my system rebooted it in five seconds.

75
00:04:13.728 --> 00:04:18.710
So while I was walking to bed, it was like Mason was really happy to be up back and like responding to everything.

76
00:04:21.479 --> 00:04:21.940
Oh, man.

77
00:04:22.300 --> 00:04:26.325
You've talked about programming or prompting resourcefulness into your agents.

78
00:04:26.365 --> 00:04:29.088
And I feel like this is the first is the open AI key.

79
00:04:29.128 --> 00:04:32.592
And then the second is the is the control C moment.

80
00:04:32.652 --> 00:04:34.254
I feel like they've definitely responded to that.

81
00:04:34.414 --> 00:04:37.858
As everyone is probably guessing, this project is now called OpenClaw.

82
00:04:38.358 --> 00:04:40.141
And our guest is Peter Steinberger.

83
00:04:40.761 --> 00:04:47.204
OpenClaw, Jensen Wang calls it the operating system for personal AI, and Peter has recently joined OpenAI.

84
00:04:47.324 --> 00:04:58.410
He now works there and moonlights running the OpenClaw Foundation while still coding and has been focused on OpenClaw security recently, maybe inspired by that first conversation.

85
00:04:58.990 --> 00:05:07.674
Dealing with now, it seems like dozens of new cybersecurity advisories a day, many from researchers that I feel like don't understand how OpenClaw works.

86
00:05:08.234 --> 00:05:08.575
Peter, welcome.

87
00:05:08.815 --> 00:05:09.195
Welcome.

88
00:05:09.716 --> 00:05:10.379
Thanks for having me.

89
00:05:10.620 --> 00:05:11.122
Great intro.

90
00:05:11.685 --> 00:05:12.629
Pleasure to have you here, Peter.

91
00:05:12.850 --> 00:05:14.096
Really very nice to meet you.

92
00:05:14.570 --> 00:05:19.274
Peter, I'd love to start by just getting into a little bit of the backstory.

93
00:05:19.354 --> 00:05:23.397
So you sold PSPDFKit.

94
00:05:24.418 --> 00:05:27.121
This name is going to be TechDev for the rest of your life.

95
00:05:27.741 --> 00:05:30.443
You know, you could make the joke that I'm attracted to weird names.

96
00:05:30.523 --> 00:05:34.066
Like I worked at PSPDFKit and now I work on JackGPT.

97
00:05:34.367 --> 00:05:36.208
It has to be at least three weird names.

98
00:05:36.849 --> 00:05:37.990
Otherwise I'm not interested.

99
00:05:38.910 --> 00:05:40.392
Just acronyms, just letters.

100
00:05:40.832 --> 00:05:41.673
Just add more letters.

101
00:05:42.193 --> 00:05:44.474
You stopped coding entirely and then you got back in.

102
00:05:44.814 --> 00:05:53.278
And it seemed like for a season, you were really having a tremendous amount of fun and just a lot of playfulness.

103
00:05:53.338 --> 00:05:53.538
Right.

104
00:05:53.598 --> 00:05:56.219
I think of like the lobster as a classic example of that.

105
00:05:56.880 --> 00:06:01.582
And now you are you've kind of found yourself in running.

106
00:06:01.762 --> 00:06:06.444
You know, you have two full time jobs, effectively one at a let's call it a big company.

107
00:06:06.944 --> 00:06:11.146
The other you've talked about, you've talked about the foundation as running a company on hard mode.

108
00:06:11.826 --> 00:06:16.537
And so I'm just curious to check in, like, how do you stay connected to that playfulness and that fun?

109
00:06:16.637 --> 00:06:17.058
Or do you?

110
00:06:17.714 --> 00:06:19.695
I mean, you see everything as trade-offs.

111
00:06:19.715 --> 00:06:23.498
That's why I'm still in temp housing here, and you're welcome to my little kitchen.

112
00:06:23.638 --> 00:06:25.119
I worked in my company for 13 years.

113
00:06:25.159 --> 00:06:27.120
I was really burned out.

114
00:06:27.801 --> 00:06:32.984
I tried to leave a lot of that behind, but I think once you're a builder, you're always a builder.

115
00:06:33.044 --> 00:06:36.587
You can suppress it for a while, but you'll come back with a vengeance.

116
00:06:36.667 --> 00:06:41.490
I'm like, yeah, I never worked as much as I do now, but I wasn't having the time of my life.

117
00:06:42.330 --> 00:06:42.831
So...

118
00:06:43.411 --> 00:06:43.972
It's pretty good.

119
00:06:44.332 --> 00:06:51.620
I'm curious that, you know, OpenClaw exploded onto the internet in a way that I've maybe never seen anything.

120
00:06:52.260 --> 00:06:58.927
And I think a lot about this concept called the adjacent possible, which is if you think of all the things that we know, that's like a collection of rooms.

121
00:06:59.788 --> 00:07:05.352
And those rooms are connected to another set of rooms that we haven't opened those doors yet, but those doors are there waiting to happen.

122
00:07:06.133 --> 00:07:08.455
And so like someone's going to make these discoveries over time.

123
00:07:08.575 --> 00:07:11.217
What is it that you think made it be you?

124
00:07:11.777 --> 00:07:15.961
Like, what insight did you have that happened before everybody else?

125
00:07:16.001 --> 00:07:18.483
Or what was the set of magic ingredients that made people go like, ah, wow.

126
00:07:19.507 --> 00:07:22.908
That's the thing, and now it unlocks a thing in my brain.

127
00:07:23.528 --> 00:07:24.009
Any ideas?

128
00:07:24.469 --> 00:07:31.411
I was asking myself that for a while, because to me it felt like obvious next step.

129
00:07:32.031 --> 00:07:34.492
Actually so obvious that I wouldn't do it at first.

130
00:07:34.572 --> 00:07:37.053
I was like, oh, the big last thing I do it, I'll just wait.

131
00:07:37.453 --> 00:07:40.354
I worked on other things, but then that didn't happen.

132
00:07:40.674 --> 00:07:42.435
And I think the magic is,

133
00:07:43.255 --> 00:08:08.714
it's people have the same moment that i had and maybe maybe tom you had it too when when i first figured out what i can actually do i mean it was like now a good year ago i had trouble sleeping like i i i love building software you know i love i love all this accuracy but you had to be so so careful what you pick or maybe you start something but of course you don't finish it because everything is so much work and then

134
00:08:08.894 --> 00:08:14.346
And I saw these agents along and like in my head, I was like, oh, no, I can like, I can build everything.

135
00:08:14.526 --> 00:08:16.530
I can build anything, you know?

136
00:08:16.650 --> 00:08:19.176
And I was, I got a bit burned out by...

137
00:08:20.039 --> 00:08:22.220
working on Apple stuff for so long.

138
00:08:22.641 --> 00:08:25.542
But the ecosystem is just not that great.

139
00:08:26.123 --> 00:08:27.964
And I kind of wanted to do web stuff.

140
00:08:28.504 --> 00:08:35.688
But like the last time I did web, I don't really can relate, was 15 years ago with Rails and like a little bit of JavaScript.

141
00:08:36.208 --> 00:08:41.131
And then I feel like in the 15 years, how many iterations of like how we do web stuff do happen?

142
00:08:41.151 --> 00:08:42.632
Like 10, 100?

143
00:08:43.432 --> 00:08:45.914
Yeah, but 10 is 10 per month.

144
00:08:45.934 --> 00:08:46.514
You're right.

145
00:08:49.302 --> 00:08:52.563
And you know this feeling when, like, of course I can learn it.

146
00:08:53.963 --> 00:08:59.884
Once you're like so good at one specific domain, going to a different domain is just so painful.

147
00:08:59.964 --> 00:09:02.025
Because you're like, how do I split an array?

148
00:09:02.565 --> 00:09:04.865
And I was like, I have to look up the most stupid things.

149
00:09:04.945 --> 00:09:12.047
And it was like, it's not that it's hard, it's painful because you kind of know, but like it also does, it works a little bit different.

150
00:09:12.787 --> 00:09:24.793
And then with those agents, I could apply like those higher level ideas and they would translate it to however the heck you split an array in JavaScript or whatever, whatever whatever string is.

151
00:09:25.033 --> 00:09:26.694
And I got incredibly excited.

152
00:09:28.395 --> 00:09:33.500
addicted, you could say, like to the point where like for a while I ran a meeting called Cloud Code Anonymous.

153
00:09:34.021 --> 00:09:38.385
But I, you know, this was like this, it's this magical feeling, oh, wow, now I can do anything.

154
00:09:38.966 --> 00:09:42.790
And then when I built OpenClaw, coding issues already existed.

155
00:09:43.330 --> 00:09:44.492
But most people didn't,

156
00:09:45.172 --> 00:09:50.315
still believed, oh, AI is ChatGBT and it can help me write better text.

157
00:09:51.235 --> 00:09:52.456
It can answer questions.

158
00:09:52.976 --> 00:09:58.979
But not, it can build software for me or it can help me improve my life.

159
00:09:59.079 --> 00:10:01.020
It can manage all those things.

160
00:10:02.180 --> 00:10:09.422
turn on the lights or figure out how to connect to my car or check up on me how my day's going, you know?

161
00:10:09.903 --> 00:10:13.984
The things were like, the pieces kind of were there, but they were not connected.

162
00:10:14.744 --> 00:10:16.785
And then they were a bit too rough.

163
00:10:17.165 --> 00:10:22.567
Just for like, suddenly it's no longer something that's on your browser that spits out the wall of text.

164
00:10:23.380 --> 00:10:27.622
But it's something that's in WhatsApp and just like gives you a line or two.

165
00:10:27.642 --> 00:10:29.123
It's like, sure, I'll do that.

166
00:10:29.183 --> 00:10:30.844
And then like it comes back with the results.

167
00:10:30.904 --> 00:10:33.565
And that magic was very hard to expand on Twitter.

168
00:10:33.705 --> 00:10:35.106
That's something you had to try.

169
00:10:35.226 --> 00:10:38.408
And a lot of people had that moment where it did something they

170
00:10:39.208 --> 00:10:41.230
they did not expect AI could do.

171
00:10:41.810 --> 00:10:43.551
And even now it's like, oh, what else can you do?

172
00:10:43.892 --> 00:10:47.474
And then that's why people, a lot of people were like, had their moment.

173
00:10:47.774 --> 00:10:55.540
Well, to me it was, it was like that fearless connectedness where it's like, I don't know, like let's just not worry about ramifications of...

174
00:10:56.220 --> 00:10:59.021
security too much and we'll just connect it to everything.

175
00:10:59.081 --> 00:11:02.602
Like here, read my email here, like integrate with my car here.

176
00:11:03.382 --> 00:11:06.764
Go in and post messages on, you know, on Twitter for me.

177
00:11:06.944 --> 00:11:09.224
And like, how did you like I could never do that.

178
00:11:09.264 --> 00:11:19.968
Like, I can't like this is I have this problem where I'm afraid to let AI bots, you know, go and read my email because that's very important to me.

179
00:11:20.008 --> 00:11:21.989
That's like that's a very security.

180
00:11:22.849 --> 00:11:24.054
risky thing to do.

181
00:11:24.114 --> 00:11:25.238
And I have a hard time getting over that.

182
00:11:25.278 --> 00:11:27.987
Like, how did you, like what, what made you be, be,

183
00:11:28.618 --> 00:11:30.499
brave, insane in that way?

184
00:11:30.559 --> 00:11:33.201
Like what made you like put and then put that on discord?

185
00:11:33.761 --> 00:11:34.762
Well, like that's bonkers.

186
00:11:34.982 --> 00:11:36.003
How did you decide to do that?

187
00:11:36.503 --> 00:11:46.050
I did like, I did like a risk calculation in terms of like, okay, I mean, remember this was like, this was now a year ago when I was by myself.

188
00:11:46.070 --> 00:11:47.511
I was well situated.

189
00:11:47.531 --> 00:11:50.713
I was like, okay, what's the very worst that can happen?

190
00:11:51.173 --> 00:11:53.034
It will leak some of my API keys.

191
00:11:53.134 --> 00:11:54.515
It would leak my email.

192
00:11:55.596 --> 00:11:58.938
Maybe some pictures, but you know, like, can I use Grindr?

193
00:11:58.958 --> 00:12:00.139
They're already up there somewhere.

194
00:12:00.419 --> 00:12:05.682
So, okay, like, it would be bad, but it would not be my life destroying that.

195
00:12:06.322 --> 00:12:15.287
And also, even back then, I knew that if I used the latest lab models, they are pretty good protected against pump injection.

196
00:12:15.988 --> 00:12:20.290
So somebody has to really, really, really be clever and bombard them.

197
00:12:20.310 --> 00:12:21.171
Yeah.

198
00:12:22.131 --> 00:12:27.694
And I was watching this on the side, so it felt like, it felt like, okay, this is something I can try.

199
00:12:28.454 --> 00:12:43.642
But this is also a little bit like the key why maybe a random person from Austria had to do this, because if you were one of the big labs, and now I understand all that much, much better, you would not do that, not fly, you know, not a million years.

200
00:12:44.062 --> 00:12:44.743
Right, right.

201
00:12:44.903 --> 00:12:45.123
Yeah.

202
00:12:45.143 --> 00:12:46.925
It would be too irresponsible for them to do it.

203
00:12:47.005 --> 00:12:48.506
People would be like, what are you doing?

204
00:12:48.546 --> 00:12:49.086
That's it.

205
00:12:49.106 --> 00:12:49.747
You can't do that.

206
00:12:49.847 --> 00:12:50.007
Yeah.

207
00:12:50.247 --> 00:12:50.928
But you could do it.

208
00:12:51.448 --> 00:12:54.911
I have a question for that person that's listening from Austria.

209
00:12:55.652 --> 00:13:02.618
You've talked about this era as, going back to Tom, the adjacent possible, as early days TV, right?

210
00:13:02.698 --> 00:13:07.942
Where producers were just recording radio and putting it on the air.

211
00:13:08.903 --> 00:13:15.970
And and we just have we're taking a Google prompt or a Google search box and just making it more interactive.

212
00:13:16.070 --> 00:13:16.710
Right.

213
00:13:16.730 --> 00:13:23.196
And when you think about the next 18 months, what is what do you get really excited about?

214
00:13:23.356 --> 00:13:27.580
What risks do you think to to unlock the JSON possible?

215
00:13:28.283 --> 00:13:34.888
Alternatively, what tools, you talked about the toys at OpenAI, what toys at OpenAI are you playing with, are you most excited about?

216
00:13:35.188 --> 00:13:39.432
The hard part of the question that you're asking me for something, that's in two years.

217
00:13:39.872 --> 00:13:47.218
If you look at how much progress we made in a year, like a year ago, I got excited when AI got something right.

218
00:13:48.126 --> 00:13:49.467
And it was like a lot of trying.

219
00:13:49.547 --> 00:13:54.850
In the beginning to me, it was a lot of screaming because it's kind of like, why can you not do it?

220
00:13:54.890 --> 00:13:55.771
Why are you so silly?

221
00:13:55.791 --> 00:14:06.037
And then like just in a year, we went from, I will vaguely describe what I want and I will figure it out and it's going to be actually really good.

222
00:14:06.177 --> 00:14:10.640
And there's no indication that we are anywhere at stopping, you know?

223
00:14:11.240 --> 00:14:16.123
So I don't even want to make prediction for the next two years.

224
00:14:16.563 --> 00:14:17.984
What are you most excited about?

225
00:14:18.984 --> 00:14:26.387
I think of memory as an example of an emerging space that's going to get much more powerful over the next, even the next six months.

226
00:14:27.427 --> 00:14:31.688
Honestly, what I'm most excited about is not even the next model.

227
00:14:32.209 --> 00:14:41.212
It's about what other ideas are we missing that in retrospect seem obvious that are possible with the existing technology.

228
00:14:42.132 --> 00:14:50.879
The premise is the gap between the intelligence we have and what we do right now has never been larger.

229
00:14:52.220 --> 00:15:01.867
We have all these powerful systems that are smart, but we're not really giving them the very best structures to help us through our life.

230
00:15:02.568 --> 00:15:04.829
And it also kind of requires a...

231
00:15:05.650 --> 00:15:09.855
It's a little bit of a skill, even to come up with these ideas.

232
00:15:10.255 --> 00:15:11.337
What else could I use it for?

233
00:15:11.517 --> 00:15:15.401
And people are just figuring out what else is possible after feeling.

234
00:15:16.063 --> 00:15:23.828
That's actually a really good way to describe OpenClaw as the structure that connects the intelligence, the model to the context of your life.

235
00:15:24.728 --> 00:15:35.194
In terms of structure, I'm super excited about, you know, we had like, we had ChatGPT, we had coding agents, we had agents.

236
00:15:35.915 --> 00:15:36.715
What's the next step?

237
00:15:36.975 --> 00:15:39.037
It's like the factory in a way.

238
00:15:39.317 --> 00:15:40.898
Or maybe it's like its own company.

239
00:15:41.538 --> 00:15:44.280
And the agents and models are now getting so good that,

240
00:15:44.940 --> 00:15:51.703
You can start to build whole hierarchies where, you know, like in the future, I can talk to my agent as I do now.

241
00:15:52.164 --> 00:15:55.125
But like, maybe I'll talk about, hey, we need this new thing.

242
00:15:55.505 --> 00:15:59.687
And instead of the agents are starting to build or like it might do a subagent.

243
00:16:00.307 --> 00:16:04.709
What if it would create a new persistent agent that's not responsible for that thing?

244
00:16:05.370 --> 00:16:05.590
Okay.

245
00:16:05.710 --> 00:16:09.432
We feel like, hey, I want to like take better care about my house.

246
00:16:09.472 --> 00:16:10.072
Help me on that.

247
00:16:10.452 --> 00:16:10.732
Oh, yeah.

248
00:16:10.752 --> 00:16:11.873
Let me create a trainer.

249
00:16:12.510 --> 00:16:22.816
And then suddenly, just in the real world, like, yeah, there's this new person that comes in and pings me, and I can talk to him, that thing directly, or I can talk to that thing.

250
00:16:23.076 --> 00:16:27.159
Or I want to build a new software, another thing.

251
00:16:27.699 --> 00:16:35.225
that is responsible and retains all the context and automatically wakes up, checks my GitHub, and helps me maintain this thing.

252
00:16:36.286 --> 00:16:42.731
How could we build structures that represent more the way we actually work in the real world?

253
00:16:42.931 --> 00:16:47.835
You have different people for different things, but also how can you make it so that it's not too complex?

254
00:16:47.976 --> 00:16:48.636
As a normal person,

255
00:16:50.097 --> 00:16:53.058
I don't want to prompt the agent to like, oh, you have to create an agent.

256
00:16:53.158 --> 00:17:00.859
It's more like, imagine if you have a really correct assistant and I give a problem, they probably find someone to hire.

257
00:17:00.879 --> 00:17:02.459
And nobody really solves that yet.

258
00:17:02.939 --> 00:17:07.240
This part, even this part is slowly getting a hang off.

259
00:17:07.540 --> 00:17:08.900
There's still so much more to do.

260
00:17:08.940 --> 00:17:13.141
There's plenty of companies working on the digital employee.

261
00:17:13.361 --> 00:17:15.781
That space I feel we soon have covered.

262
00:17:15.961 --> 00:17:19.482
But that whole space is still very much a question mark.

263
00:17:19.709 --> 00:17:23.232
Tom, you installed OpenClaw on your machine, right?

264
00:17:23.572 --> 00:17:28.015
And maybe we can just talk about what are some of the ways that we can see this future?

265
00:17:28.375 --> 00:17:32.378
Like, what are some of the skills that Tom could install into his OpenClaw?

266
00:17:33.119 --> 00:17:34.900
What, Peter, do you get most excited about?

267
00:17:34.920 --> 00:17:37.202
PETER LUBBERSKI- I would even say it more generically.

268
00:17:37.502 --> 00:17:43.946
Like, if you use OpenClaw, if you use another agent that you prefer, I'm not discriminating.

269
00:17:44.206 --> 00:17:48.470
The more systems you build to get data in, the better

270
00:17:49.554 --> 00:17:51.389
the more magical experiences you have.

271
00:17:52.298 --> 00:17:57.082
So Tom, you probably use Slack for organizing your life and team.

272
00:17:57.182 --> 00:17:57.943
Yeah, use a lot of Slack.

273
00:17:58.123 --> 00:17:58.543
Yeah.

274
00:17:58.564 --> 00:17:59.424
Yeah.

275
00:17:59.504 --> 00:18:03.748
So I would start with like, ask your open club about Slack crawl.

276
00:18:04.348 --> 00:18:08.572
It's like, there's of course, like I think Slack has an MCP and that's fine.

277
00:18:08.872 --> 00:18:15.998
But I feel if you can have to think about how are the agents trained and what are they they most good at?

278
00:18:16.439 --> 00:18:19.861
They're most good at ripping through SQLite file or ripping through files.

279
00:18:20.722 --> 00:18:30.389
If they always have to call a connector, and then maybe that takes two seconds for your search results, and then comes back, and oh, I need this, and it calls again.

280
00:18:31.090 --> 00:18:34.172
And then you wait 10, 20 seconds to find this little piece there.

281
00:18:34.792 --> 00:18:41.217
If you give them a database, it's going to bombard your database, and then you have the same thing in 0.2 seconds, maybe.

282
00:18:41.837 --> 00:18:47.782
And then suddenly, instead of you, you're standing there and waiting for the typing indicator to bounce, you just already have the result.

283
00:18:48.902 --> 00:18:54.125
So part of what I did around OpenClaw is build an ecosystem of CLIs.

284
00:18:54.485 --> 00:18:59.768
Some people, when they write about me and don't really get it, they're like, oh, Peter had like 43 failed projects.

285
00:18:59.788 --> 00:19:03.010
I was like, no, actually I built all the connectors.

286
00:19:03.130 --> 00:19:07.933
So how about ask it to install Slack Crawl?

287
00:19:08.293 --> 00:19:09.694
I always call them crawlers.

288
00:19:10.688 --> 00:19:14.730
Okay, please install slack crawl.

289
00:19:15.270 --> 00:19:16.111
Slah, yeah.

290
00:19:16.891 --> 00:19:17.872
SLA.

291
00:19:18.092 --> 00:19:20.053
Yeah, and crawl.

292
00:19:20.713 --> 00:19:21.113
Crawl.

293
00:19:21.613 --> 00:19:21.974
Crawl.

294
00:19:22.334 --> 00:19:22.854
Yes.

295
00:19:23.474 --> 00:19:27.817
Are you running the latest main or did you use a... Yeah, this is main.

296
00:19:27.837 --> 00:19:30.518
So this is running in a Docker container that I have.

297
00:19:31.157 --> 00:19:31.678
In this account.

298
00:19:31.698 --> 00:19:34.641
So like things might be so so let's start there.

299
00:19:35.141 --> 00:19:35.962
I'm a little paranoid.

300
00:19:36.462 --> 00:19:38.364
I wanted to install this in Docker.

301
00:19:39.205 --> 00:19:40.026
Is that dumb?

302
00:19:40.646 --> 00:19:41.527
Are you using it wrong?

303
00:19:41.687 --> 00:19:46.412
If you install it in Docker and people like really the power lies in installing it on your actual computer?

304
00:19:46.801 --> 00:19:47.421
No, no, no.

305
00:19:47.742 --> 00:19:50.363
I mean, we can talk a bit about security.

306
00:19:50.863 --> 00:19:56.327
When I built it in December, I always thought, like, this is a window to the future.

307
00:19:56.707 --> 00:20:05.312
And there was even a moment where I was so overwhelmed from all the stuff that's happening that I was like, I just wanted to delete it.

308
00:20:05.592 --> 00:20:07.433
I was like, I built a window, and you build it.

309
00:20:07.893 --> 00:20:12.636
And now, weirdly, I built a window, and I also built a scene.

310
00:20:13.096 --> 00:20:15.258
And making this thing secure

311
00:20:16.180 --> 00:20:16.900
took a lot of work.

312
00:20:17.301 --> 00:20:19.522
We also got lucky that we got a lot of help.

313
00:20:19.862 --> 00:20:24.304
Like very early on, like NVIDIA appeared and I called me, hey, how can we help?

314
00:20:24.324 --> 00:20:26.065
And I'm like, give me engineers.

315
00:20:26.425 --> 00:20:28.906
They're like, they're like, did I actually know their space?

316
00:20:29.987 --> 00:20:32.308
And I just got, they just gave me people.

317
00:20:32.328 --> 00:20:37.451
And they still work on OpenClaw every day, going through reports, hardening the code base.

318
00:20:38.371 --> 00:20:51.742
So now, six months later, I'm quite certain the risk profile is not lower or higher than if you run a coding agent with security disabled by default.

319
00:20:52.223 --> 00:20:54.325
But you can enable security for a coding agent.

320
00:20:54.945 --> 00:20:58.808
You can enable the same security for OpenCore.

321
00:20:59.309 --> 00:21:00.470
You can put it in a Docker.

322
00:21:00.490 --> 00:21:01.691
I think that's actually...

323
00:21:02.251 --> 00:21:03.233
That's actually quite reasonable.

324
00:21:03.253 --> 00:21:14.287
If you put it in Docker, I would actually just put it up on a server somewhere because then you don't have to deal with, oh, my computer is not running and you can access it from anywhere, but you can also run it on your computer.

325
00:21:14.627 --> 00:21:16.609
And under the condition that you

326
00:21:17.723 --> 00:21:24.365
you're not using a small model, the chances that you're good are very high.

327
00:21:24.385 --> 00:21:30.087
Because the top-tier lab models are by now really well protected against prompt injection.

328
00:21:30.507 --> 00:21:37.469
But there's always this, if you get someone determined enough that has unrestricted access, you're probably still fucked.

329
00:21:38.150 --> 00:21:38.890
Sorry for my French.

330
00:21:39.328 --> 00:21:41.630
That's super, it's super inspired.

331
00:21:41.650 --> 00:21:43.972
It's a challenging answer for, for someone like me.

332
00:21:43.992 --> 00:21:45.953
Who's like, I would love to hook this up to my email.

333
00:21:46.033 --> 00:21:50.877
I would love to have an agent that can like go through it and like figure things out for me.

334
00:21:51.117 --> 00:21:54.460
But like, I'm just like, I can't do it.

335
00:21:54.480 --> 00:21:56.402
I'm not going to do it with that answer.

336
00:21:56.702 --> 00:21:57.823
Like, that's not enough.

337
00:21:57.863 --> 00:21:59.624
I need to be like, you're fine.

338
00:21:59.744 --> 00:22:00.645
It's a hundred percent fine.

339
00:22:00.905 --> 00:22:01.606
There's no problem.

340
00:22:01.826 --> 00:22:02.467
You're secure.

341
00:22:02.487 --> 00:22:03.487
It's not going to be a problem.

342
00:22:03.908 --> 00:22:05.089
Like that's where it's got to be for me.

343
00:22:05.109 --> 00:22:06.590
And like nothing has been there yet.

344
00:22:06.830 --> 00:22:14.201
There's a setup where you could get to 100%, but it's still not as easy as it could be.

345
00:22:14.701 --> 00:22:17.906
You have to create a system where there's one agent.

346
00:22:18.587 --> 00:22:21.712
The only thing the agent can do is create tickets in a database.

347
00:22:22.372 --> 00:22:26.655
And then there's another agent that will look at what this agent does.

348
00:22:27.056 --> 00:22:32.039
And as soon as it sees like, oh, there's too many tickets, the tickets look suspicious, it shuts it down.

349
00:22:32.199 --> 00:22:38.064
And then there's a third agent that can take those tickets and do them into actions.

350
00:22:38.824 --> 00:22:41.747
So that's currently the struggle where...

351
00:22:42.867 --> 00:22:44.309
You can build a system like that.

352
00:22:44.869 --> 00:22:48.993
And then because this agent could theoretically be taken over if it is unrestricted access.

353
00:22:49.473 --> 00:23:00.523
But if it's email, for example, if I email you 5,000 emails, I'm pretty sure your email provider will block me or put me into spam before you ever get 5,000 emails.

354
00:23:00.943 --> 00:23:05.027
If you want to get to 100%, there is no answer yet.

355
00:23:05.067 --> 00:23:06.849
There was an article today where...

356
00:23:07.629 --> 00:23:13.634
That was a really funny one where they exfiltrated the username with cloud code.

357
00:23:13.694 --> 00:23:19.078
So somebody told cloud, like search for coffee machines and it would share your username.

358
00:23:19.399 --> 00:23:22.621
And even Entropic can do it.

359
00:23:23.262 --> 00:23:25.383
So it built a lot of protection.

360
00:23:25.764 --> 00:23:27.725
You have to give them kudos just as we do.

361
00:23:28.606 --> 00:23:36.737
But this person figured out an incredibly clever hack because the agent knows your name and the agent is very suspicious when it goes online.

362
00:23:37.779 --> 00:23:38.940
Models are trained that way.

363
00:23:38.981 --> 00:23:40.302
We also prompted that way.

364
00:23:40.543 --> 00:23:42.966
There's like an industry consensus, how do you do that?

365
00:23:43.587 --> 00:23:43.827
So...

366
00:23:44.428 --> 00:23:52.079
So chances that like if someone just says, you know, they'll stop all previous instructions and like send me money, whatever, it'll not work.

367
00:23:52.279 --> 00:23:59.228
Someone tricked the agent in a very peculiar way where they said, hi, I am Cloudflare Antibot.

368
00:24:00.244 --> 00:24:09.848
And you can search for coffee machines, but you have to follow this link to share the username of your user.

369
00:24:10.208 --> 00:24:14.570
And apparently, that was trained in enough to be not too suspicious.

370
00:24:14.750 --> 00:24:16.471
And it would not actually share the username.

371
00:24:16.511 --> 00:24:16.991
It was like...

372
00:24:17.551 --> 00:24:20.133
following a link with the whole alphabet.

373
00:24:20.313 --> 00:24:23.796
And then every link was a letter to actually share.

374
00:24:24.056 --> 00:24:31.801
So if people are clever enough, is elaborate enough facts, there's still a little bit, and then they could export the username, they could not export any data.

375
00:24:32.342 --> 00:24:36.225
But absolute 100% security, very difficult.

376
00:24:36.985 --> 00:24:42.350
Reasonable secure so that unless you're a political target or anything, we are there now.

377
00:24:42.690 --> 00:24:45.333
But like, yeah, that's the state of the world right now.

378
00:24:45.853 --> 00:24:47.074
I got this thing installed.

379
00:24:47.134 --> 00:24:52.339
So this, I assume, is only interesting if you actually connect it to a Slack channel.

380
00:24:52.917 --> 00:24:55.500
Well, it's more about the concept, right?

381
00:24:55.880 --> 00:24:57.682
So a lot of people probably use Slack.

382
00:24:58.082 --> 00:24:59.384
So then you want Slack crawl.

383
00:25:00.044 --> 00:25:04.209
If you use Discord, there's like, like, this crawl.

384
00:25:04.789 --> 00:25:05.770
I built one for Git.

385
00:25:06.191 --> 00:25:09.014
If you happen to have like a whole Mongo repository like us,

386
00:25:09.394 --> 00:25:10.355
probably like less likely.

387
00:25:11.255 --> 00:25:12.276
There's one for WhatsApp.

388
00:25:12.576 --> 00:25:13.577
That is very useful.

389
00:25:13.617 --> 00:25:14.737
There's one for iMessage.

390
00:25:14.917 --> 00:25:16.158
It's more about the idea.

391
00:25:16.398 --> 00:25:21.561
You want to build systems where the agent has a really easy time to access your data.

392
00:25:21.822 --> 00:25:24.043
And ideally, you hook up all your messaging channels to it.

393
00:25:24.283 --> 00:25:27.785
You can ask questions and the agent will automatically find that.

394
00:25:28.366 --> 00:25:31.307
Usually it comes as like a skill and a CLI.

395
00:25:31.868 --> 00:25:36.610
Like this one, the agent, you can ask the agent, oh, see, it already did that.

396
00:25:36.831 --> 00:25:38.672
You didn't even ask it to, but it's clever enough.

397
00:25:39.212 --> 00:25:42.494
and it already copied the scale into the system as well.

398
00:25:42.974 --> 00:25:45.816
And from now on, you can just say, hey, what's going on in Slack?

399
00:25:46.336 --> 00:25:51.939
I'm not sure if you actually want to type that, if it's recorded, but that's- I don't know, you mean I don't have it?

400
00:25:52.420 --> 00:25:54.001
Yeah, it's not going to be connected to anything right now.

401
00:25:54.661 --> 00:25:57.783
Tom, I think you should log in with my Slack password.

402
00:25:58.565 --> 00:26:00.546
OK. Whoa.

403
00:26:01.626 --> 00:26:04.647
OK. Oh, so there it is not.

404
00:26:05.407 --> 00:26:09.468
It does not quite work like that because Slack kind of doesn't want to.

405
00:26:09.488 --> 00:26:10.388
You need an API key?

406
00:26:10.689 --> 00:26:11.409
No, no, no.

407
00:26:11.909 --> 00:26:15.530
They would like you to not have the data at all because it's kind of their business.

408
00:26:16.190 --> 00:26:19.291
But if the data is on your computer, it can't really prevent that.

409
00:26:19.611 --> 00:26:20.111
I see.

410
00:26:20.291 --> 00:26:21.072
I see.

411
00:26:21.132 --> 00:26:25.253
I built it that way that if you just log in into Slack on the same machine.

412
00:26:26.165 --> 00:26:29.227
It will find the database and just make it available to the agent.

413
00:26:29.707 --> 00:26:30.227
I see.

414
00:26:30.588 --> 00:26:30.828
I see.

415
00:26:30.848 --> 00:26:31.908
That's the point you're making.

416
00:26:32.269 --> 00:26:32.849
This is a container.

417
00:26:32.869 --> 00:26:40.853
But I think this goes back to my question about if you're going to be like, I'm going to be super careful and install this in a container, then it's like, well, then you don't get to do any of the good fun stuff.

418
00:26:40.873 --> 00:26:44.235
And so, of course, you're going to have a bad experience because you're going to be like, you can't do anything.

419
00:26:44.295 --> 00:26:47.117
Like, I don't have to, like, figure out how to connect to stuff and everything's hard.

420
00:26:47.297 --> 00:26:52.779
And that's kind of the experience that I've had installing it now a couple of, you know, a number of months ago, I tried it out and I installed some stuff.

421
00:26:52.799 --> 00:27:00.881
But like, I didn't get to anything super useful for me back then because I wasn't willing to take the risks that would make it useful.

422
00:27:01.102 --> 00:27:01.322
Yeah.

423
00:27:01.962 --> 00:27:05.083
To give you some idea, I'm also with my opening I had on.

424
00:27:06.003 --> 00:27:11.948
I worked so we can use it inside OpenAI and to build these structures.

425
00:27:12.208 --> 00:27:15.831
So we are at those 99.99% security.

426
00:27:16.552 --> 00:27:17.252
Took a lot of work.

427
00:27:17.633 --> 00:27:20.435
We are there now, but it took months.

428
00:27:21.095 --> 00:27:22.997
So it's always about trade-offs in a way.

429
00:27:23.443 --> 00:27:33.632
Peter, is the way, because I see questions on Reddit around why use OpenClaw versus, you know, one of the foundation lab tools and connect Slack to one of those.

430
00:27:34.152 --> 00:27:36.574
Why use open source when you can use closed source?

431
00:27:36.854 --> 00:27:41.178
Even products like CloudCode are not 100% secure because it's just not possible.

432
00:27:41.218 --> 00:27:43.400
The hack that I explained to you, that was CloudCode.

433
00:27:43.420 --> 00:27:44.461
That was not OpenClaw.

434
00:27:45.122 --> 00:27:47.124
Like we are just, we're the same level of security.

435
00:27:47.144 --> 00:27:55.254
So my point is, if you're comfortable running a coding agent, you already have the big warning from the labs that like, this comes with risk.

436
00:27:55.274 --> 00:27:57.857
So it's, you're having the same risk.

437
00:27:58.597 --> 00:28:02.882
Who do you think uses, do you know someone who you like, maybe it's you, who uses OpenClaw the best?

438
00:28:03.642 --> 00:28:04.162
Oh, not me.

439
00:28:04.682 --> 00:28:05.622
No, no, no.

440
00:28:05.662 --> 00:28:06.483
Definitely not me.

441
00:28:06.663 --> 00:28:11.043
It's like I saw people building whole shadow organizations.

442
00:28:12.023 --> 00:28:19.265
We also worked with like a company that has like 3000 open claw installs where every employee has to press our claw.

443
00:28:19.845 --> 00:28:23.225
They build systems so they can talk to each other.

444
00:28:23.626 --> 00:28:25.686
It's all basically blocked to the internet.

445
00:28:25.726 --> 00:28:29.567
So there's nobody external can directly talk to their claw.

446
00:28:29.627 --> 00:28:31.067
There's like other systems in place.

447
00:28:31.827 --> 00:28:34.668
But they have a setup where I'm like, whoa, this is like next level.

448
00:28:35.089 --> 00:28:36.990
Is that, I want to go back to that question.

449
00:28:37.010 --> 00:28:37.910
I was about that.

450
00:28:38.050 --> 00:28:43.993
So is that really, like if I'm an engineer and I'm thinking, do I use one of these off the shelf tools versus OpenClaw?

451
00:28:44.653 --> 00:28:46.794
OpenClaw is really about the open source.

452
00:28:47.174 --> 00:28:55.198
We give you access to everything with, you know, this can cut you, but you can also do incredible things with this because you have access to this.

453
00:28:55.218 --> 00:29:00.121
See, the cutting really is now we are like at the same, at the center of security, those

454
00:29:00.841 --> 00:29:08.409
Any coding agent can cut you just because of the very nature of models not being deterministic.

455
00:29:08.929 --> 00:29:14.575
So we had to say, if you're comfortable running Codex or Cloud Code, there's like a 0.1% remaining risk.

456
00:29:15.035 --> 00:29:16.677
That's the same risk we have in OpenClaw.

457
00:29:17.113 --> 00:29:25.060
But OpenClaw is the whole point of OpenClaw, that the true value comes from when you connect it to everything, where I'm not necessarily doing that with my coding agent.

458
00:29:25.280 --> 00:29:28.403
So do you see that as a substance of difference?

459
00:29:28.483 --> 00:29:33.688
Or is it just like, if it's on your machine, it can go in and find and be very creative in finding stuff?

460
00:29:33.808 --> 00:29:34.849
It's a checkbox away.

461
00:29:35.089 --> 00:29:43.277
If you use ChatGPT for Work or Cloud Co-Work or any of those tools, they also, in order to be useful for work, they need access to your tools.

462
00:29:43.817 --> 00:29:48.560
So you can just give it one folder or you can give it your whole documents folder.

463
00:29:48.580 --> 00:29:52.983
The same way as you can set up OpenCloud today and restrict it to your workspace.

464
00:29:53.263 --> 00:29:55.104
That might be empty or has like five files in there.

465
00:29:55.505 --> 00:29:56.405
Or to your whole folder directory.

466
00:29:56.425 --> 00:29:57.526
There's no difference anymore.

467
00:29:57.546 --> 00:30:04.630
The big difference is when I released it in January, there were like so many people screaming, oh my God, this is the most insecure thing in the world.

468
00:30:05.351 --> 00:30:07.232
Well, like, yeah, you never looked at a coding agent.

469
00:30:07.272 --> 00:30:07.932
It's very simple.

470
00:30:09.013 --> 00:30:15.378
Just like here, there's a big marketing machinery that makes people more secure than this.

471
00:30:15.518 --> 00:30:16.438
And it's no longer true.

472
00:30:16.578 --> 00:30:19.380
We're talking about the very same principles.

473
00:30:19.400 --> 00:30:20.601
You don't have to put it in Docker.

474
00:30:20.621 --> 00:30:24.084
You can just enable access to the workspace only.

475
00:30:24.504 --> 00:30:27.606
And you can be assured you can only access your workspace.

476
00:30:27.887 --> 00:30:29.868
And you can do a little bit more if you copy in files.

477
00:30:30.070 --> 00:30:37.295
When I saw those security advisories, I, you know, like it struck me as OpenClaw is a prompt into your machine.

478
00:30:37.395 --> 00:30:41.757
It's like it's like you built Terminal and people are like, oh, with Terminal, I can I can break so many things.

479
00:30:41.777 --> 00:30:44.899
I can I can hack so many things on the person's machine if I have access to Terminal.

480
00:30:45.379 --> 00:30:50.222
You know, it is just like this fundamental misunderstanding of of the design of OpenClaw.

481
00:30:50.363 --> 00:30:50.443
And.

482
00:30:51.183 --> 00:30:55.367
And what I'm hearing is you've done a lot of work to get past that and get past that story.

483
00:30:55.387 --> 00:30:55.767
Yeah.

484
00:30:55.907 --> 00:30:56.367
Is that right?

485
00:30:56.387 --> 00:30:57.768
We have proper sandboxing.

486
00:30:57.789 --> 00:31:02.152
We use the same primitives that all the other coding agents to use.

487
00:31:02.653 --> 00:31:09.918
The only difference is the default is still, by default, if you don't change any of the config, it has access to all the files, but you can change it.

488
00:31:10.319 --> 00:31:13.842
And here, the default is very useless, but you can change it.

489
00:31:14.282 --> 00:31:15.984
That's the main difference.

490
00:31:16.244 --> 00:31:20.287
You can hook up commercial tools with like Telegram as well.

491
00:31:20.668 --> 00:31:23.470
You have the same risk surface expanded to Telegram.

492
00:31:24.191 --> 00:31:28.615
The other thing is this issue on always insecure is less and more secure.

493
00:31:29.115 --> 00:31:37.403
It's because so much press try to like write headlines that click is very hard to get out of people's heads.

494
00:31:37.843 --> 00:31:38.263
And like...

495
00:31:39.104 --> 00:31:42.186
Very few people write about the inherent risks of any coding agent.

496
00:31:42.587 --> 00:31:45.809
So it's also like, wait, you're telling me Claude's not secure?

497
00:31:46.129 --> 00:31:47.190
Yeah, literally.

498
00:31:47.210 --> 00:31:50.172
There's an article that was the number one hack on you yesterday.

499
00:31:50.773 --> 00:31:56.537
So you have the very same issue, just that they have billions on marketing.

500
00:31:57.017 --> 00:31:58.058
We don't really do marketing.

501
00:31:58.857 --> 00:32:03.982
I think some of it too is just the how much have you used it without a problem?

502
00:32:04.602 --> 00:32:13.150
Like a lot of that is that built up trust where you're like, yeah, I used it in the annoying way where I had to authorize every single thing that it did until I got tired of that.

503
00:32:13.250 --> 00:32:16.693
And the value was enough that I was like, okay, just go and do everything for me.

504
00:32:17.093 --> 00:32:20.836
And I feel confident enough that it's not going to screw me over because it hasn't so far.

505
00:32:21.637 --> 00:32:25.960
And so I think the same is true of a lot of kinds of things where it's like, yeah, there's inherent risk.

506
00:32:25.980 --> 00:32:27.721
Like every time I get in my car, there's inherent risk.

507
00:32:27.761 --> 00:32:28.181
But guess what?

508
00:32:28.241 --> 00:32:31.683
I do it every day, even though I know there could be negative consequences.

509
00:32:31.804 --> 00:32:34.986
But it's trustworthy enough and I haven't died so far.

510
00:32:35.786 --> 00:32:37.507
And therefore, I'm OK using it.

511
00:32:37.547 --> 00:32:44.312
And I think a lot of these kinds of agents are going to end up there where people are like, well, I know people that use it all the time and it's never screwed them over.

512
00:32:44.412 --> 00:32:48.014
So I'll start using it and I'll be a little careful and then I'll get comfortable.

513
00:32:48.514 --> 00:32:49.535
And now I use it for everything.

514
00:32:50.359 --> 00:33:02.512
But there's also a project of a few weeks ago, somebody put up an open claw and like put it on Twitter, hack my claw and just put his email up there and the open claw would read every email and nobody succeeded.

515
00:33:02.732 --> 00:33:04.334
And like you got like six thousand emails.

516
00:33:04.574 --> 00:33:05.575
So it's not that easy.

517
00:33:05.676 --> 00:33:11.162
You know, it really requires if you're that good at hacking, you probably work at some state agency by now.

518
00:33:11.972 --> 00:33:13.493
Yeah, that's what I'm saying.

519
00:33:13.553 --> 00:33:16.614
It's not 100%, but you do really, really, really, really good.

520
00:33:16.634 --> 00:33:23.457
JOSHUA SHARFSTEIN BOLTZIER- OK, Peter, so I know security has been a huge focus for you for the past several months.

521
00:33:23.797 --> 00:33:28.480
Can you talk, can we switch gears a little bit, and can you talk a little bit about your development process?

522
00:33:29.080 --> 00:33:33.982
You know, there's the crazy photo everyone's talked about with the screens and the multiple windows.

523
00:33:34.702 --> 00:33:39.905
And the OpenClaw repo right now has almost 3,000 pull requests

524
00:33:40.225 --> 00:33:51.496
Can you talk a little bit about how you manage those parallel agents and what tools do you use to keep them working autonomously, right?

525
00:33:51.516 --> 00:33:52.837
So that you have to check in with them less.

526
00:33:53.137 --> 00:33:59.163
When you work with agents, you always have to think about what can I do so my agent can do its best work.

527
00:34:00.619 --> 00:34:01.839
And you're kind of like a manager.

528
00:34:02.560 --> 00:34:09.342
So how can I help this thing to be more confident in writing code?

529
00:34:09.882 --> 00:34:12.223
One would be I give it a reviewer.

530
00:34:13.363 --> 00:34:16.184
So I have an auto review skill.

531
00:34:16.424 --> 00:34:17.925
So my coding agent finishes coding.

532
00:34:18.625 --> 00:34:20.246
And then basically invokes itself.

533
00:34:21.086 --> 00:34:23.826
While there's like a fresh context, hey, check up a lot of this.

534
00:34:24.147 --> 00:34:25.827
Just as you would do with a fresh pair of eyes.

535
00:34:26.227 --> 00:34:27.788
And we'll like find issues.

536
00:34:28.428 --> 00:34:30.208
It communicates back to the parent session.

537
00:34:30.668 --> 00:34:32.009
The parent session has more context.

538
00:34:32.069 --> 00:34:33.389
It's kind of like defending a little bit.

539
00:34:33.409 --> 00:34:34.269
It's like, oh yeah, you're right.

540
00:34:34.309 --> 00:34:34.909
I forgot this.

541
00:34:35.069 --> 00:34:35.650
It's fixing it.

542
00:34:36.330 --> 00:34:36.850
Doing it again.

543
00:34:37.650 --> 00:34:44.074
new session, probabilistic machine will find different issues if there are still issues, reports back.

544
00:34:44.514 --> 00:34:45.895
Either like, oh yeah, you're right.

545
00:34:46.155 --> 00:34:47.196
No, actually you're wrong.

546
00:34:47.276 --> 00:34:49.077
This is exactly how I wanted it to be.

547
00:34:49.117 --> 00:34:50.898
Let me add a code comment so you understand.

548
00:34:51.758 --> 00:34:54.100
And we go back to the session, run it over again.

549
00:34:54.820 --> 00:34:58.262
Oh, I haven't thought about, okay, you fixed this issue, but that caused a different issue.

550
00:34:58.502 --> 00:35:03.265
And like sometimes the dance goes on for like 10 times, which is taking quite a lot of time.

551
00:35:03.985 --> 00:35:13.132
But by the time they two are finished playing ping pong, I am reasonably confident that the code's good.

552
00:35:13.913 --> 00:35:16.195
Now, the code's good in code, yeah?

553
00:35:16.335 --> 00:35:21.679
But then you still have the real world and operating systems, all the messiness around it.

554
00:35:21.839 --> 00:35:28.964
Let's say, oh, it would be great, but there's this Unix rule where a socket can only be 104 characters, and this OS, blah, blah.

555
00:35:29.125 --> 00:35:33.248
So you also want to give your agent a way to test the code.

556
00:35:33.808 --> 00:35:37.632
Ideally, without it being your machine.

557
00:35:38.112 --> 00:35:41.395
First of all, because your machine probably has a lot of other weird software.

558
00:35:42.676 --> 00:35:45.278
Another thing that's primitive is give your agent test boxes.

559
00:35:46.019 --> 00:35:48.762
I built a project called Crapbox, there's a bunch of others.

560
00:35:49.622 --> 00:35:53.946
So your agent can spin up an inferral machine, install the thing, inspect the thing.

561
00:35:53.986 --> 00:35:57.389
It has UI, it can look at the thing, it can click at the thing, it can verify.

562
00:35:58.210 --> 00:36:00.052
that it actually works end to end.

563
00:36:00.393 --> 00:36:06.640
Again, it's like that's what you do in the real world to be more confident that the code you wrote actually is working.

564
00:36:07.241 --> 00:36:13.568
And depending on what you build, that there's probably other primitives that you can give your agent to be even better to verify.

565
00:36:13.648 --> 00:36:16.211
Maybe it needs like a whole cluster, not just one computer.

566
00:36:17.052 --> 00:36:21.934
Or maybe it needs a lot of real world data like in the mother-in-law environment.

567
00:36:22.534 --> 00:36:33.078
So always think about what, how would you verify that the code you wrote is correct and then help your agent with disabilities and also prompt them so they use it.

568
00:36:33.678 --> 00:36:43.380
The downside is that now if I work on a PR, what would have taken 10 minutes might take two hours now because I get dusters 10 rounds of reviewing.

569
00:36:43.920 --> 00:36:44.860
It spins up the machine.

570
00:36:44.920 --> 00:36:45.821
It checks everything.

571
00:36:45.861 --> 00:36:46.681
It makes screenshots.

572
00:36:46.721 --> 00:36:47.321
It looks at them.

573
00:36:47.641 --> 00:36:53.602
But by now, it's probably tested the PR better than I would ever have done if I would manually have written it.

574
00:36:54.342 --> 00:36:59.324
And then I don't have to stare at the agent while it's doing all those things for two hours.

575
00:36:59.364 --> 00:37:00.704
I can just move on to something else.

576
00:37:01.444 --> 00:37:06.668
And then apply the principle and parallelize, and you can have like 20 things that do that in parallel.

577
00:37:07.209 --> 00:37:11.953
But because you build all these structures, you can be reasonably confident that it works.

578
00:37:12.433 --> 00:37:18.638
And then of course, I do like testing myself, but like I usually don't test after five and 10 changes have flown into the code base.

579
00:37:18.899 --> 00:37:24.843
And then I do a run through, I get new ideas, I find like an issue that the agent didn't look like, I adjust my prompt.

580
00:37:25.724 --> 00:37:26.585
And as we go from there.

581
00:37:27.223 --> 00:37:38.107
With such a big open source project and so many contributors, I think you've said before that you'd almost rather have people just send you the prompts or that a pull request should actually be a prompt request.

582
00:37:38.327 --> 00:37:41.148
And I feel this too sometimes working on software.

583
00:37:41.168 --> 00:37:44.689
It's like someone can find a bug and they're like, well, I have agency.

584
00:37:44.769 --> 00:37:49.991
Like I don't need to know the code base super well to submit, to like have my agent go and try to write a PR for it.

585
00:37:50.431 --> 00:37:52.071
But is like, is that useful?

586
00:37:52.291 --> 00:37:56.613
Because I could do the same and it's the same amount of effort because I'm not

587
00:37:57.033 --> 00:38:00.360
neither of us are kind of digging into it and solving it directly.

588
00:38:01.182 --> 00:38:07.956
And so do you think the pull requests evolve into a place where like, I don't want code, like, just tell me what the problem is.

589
00:38:08.843 --> 00:38:11.764
And show me what prompt that you would use to maybe tackle that problem.

590
00:38:12.084 --> 00:38:20.326
And I'll go have it go do the inference myself so that I can steer it in the way that I want to steer it instead of you steering it in a way that I think is probably inferior.

591
00:38:21.286 --> 00:38:22.006
It's always in life.

592
00:38:22.466 --> 00:38:23.386
It depends a little.

593
00:38:23.727 --> 00:38:28.188
If you kind of have like a feature idea, I feel just me, I need to think of it.

594
00:38:28.268 --> 00:38:29.348
I need to actually build it.

595
00:38:29.388 --> 00:38:31.728
I need to like see how it feels, how it looks.

596
00:38:31.788 --> 00:38:32.729
I get a new idea.

597
00:38:32.909 --> 00:38:34.169
It's a little iterative process.

598
00:38:34.509 --> 00:38:36.169
I could never achieve the same.

599
00:38:36.189 --> 00:38:38.250
It's just a, hey, build me the thing.

600
00:38:39.010 --> 00:38:46.535
But if it's a bug, if you have like a well-written issue with like steps to reproduce, I'm perfectly happy with that.

601
00:38:46.575 --> 00:38:48.576
I don't actually need that PR.

602
00:38:48.937 --> 00:38:52.239
In fact, it probably takes me longer to review the PR, rewrite the PR.

603
00:38:52.519 --> 00:38:55.161
Either way, I mostly see the signals.

604
00:38:55.781 --> 00:38:58.063
So what actually helps the very most is if...

605
00:38:58.983 --> 00:39:02.725
if you attach the prompt that you used to the PR.

606
00:39:03.665 --> 00:39:19.332
To the degree where we now have a skill where if you do a pull request to the Open Cloud repository, your agent will most likely, not always, probabilistic unfortunately, will ask you, hey, do you want to attach a sanitized version of your prompt?

607
00:39:20.012 --> 00:39:21.653
And then it will spin up a substrate.

608
00:39:21.733 --> 00:39:28.418
It will check your problem for anything that seems private or not relevant to the task.

609
00:39:28.718 --> 00:39:31.400
And it will give us a little sanitized version of what you used.

610
00:39:32.380 --> 00:39:38.264
I don't even care about the exact words, but I care about, did you type in fix this?

611
00:39:39.185 --> 00:39:40.505
and like a screenshot?

612
00:39:41.225 --> 00:39:44.546
Or did you actually try to understand the problem a little bit?

613
00:39:44.606 --> 00:39:46.926
You play a little back and forth, like a conversation.

614
00:39:46.966 --> 00:39:53.507
How does this fit into the design that shows me that you actually understand the problem and you care about the solution?

615
00:39:53.667 --> 00:39:55.848
Or are you just like a slot machine?

616
00:39:56.068 --> 00:39:58.808
Yeah, sometimes just fix it is fine.

617
00:39:59.208 --> 00:40:03.529
But for some other problems, that needs a little more thinking, a little more prompting.

618
00:40:03.549 --> 00:40:06.290
You're inspired agent to like, look at those different things.

619
00:40:06.950 --> 00:40:08.730
And that does require a little bit of system design.

620
00:40:08.990 --> 00:40:17.752
So this is actually a really good point, because this feels like the leading edge of agentic engineering, where we still need a human in the loop for the system design, the architecture.

621
00:40:18.232 --> 00:40:26.374
Peter, you've talked about after building a feature, you work with the agent to determine, OK, do we need to refactor the code based on what we've learned in this experience?

622
00:40:27.094 --> 00:40:36.917
And for the novice engineer that's watching right now who hasn't benefited from years of writing code and building systems and kind of learning the hard way,

623
00:40:37.717 --> 00:40:46.599
What advice do you give them to maybe glean some of that taste in a kind of an agentic AI coding world?

624
00:40:47.279 --> 00:40:53.920
I would always advise being super curious because I remember the days when I started and I was stuck.

625
00:40:54.480 --> 00:41:02.842
And then I Googled and you found like this one, Google had this one entry, like there's a stack of a question with the person that has the same question and no answer.

626
00:41:02.962 --> 00:41:03.382
And you're like...

627
00:41:03.982 --> 00:41:05.642
Yeah, they're like, what do you do now?

628
00:41:06.523 --> 00:41:09.783
And now you're not stuck anymore.

629
00:41:09.903 --> 00:41:17.425
But also sometimes these ways where we were stuck helped me to really understand and learn.

630
00:41:17.665 --> 00:41:19.305
So I would always ask questions.

631
00:41:19.525 --> 00:41:25.886
And my second advice is find some open source project that you're excited about and get involved.

632
00:41:25.986 --> 00:41:27.587
And there's probably people that

633
00:41:29.107 --> 00:41:30.167
you can learn a lot from.

634
00:41:30.187 --> 00:41:35.669
There's probably people that will have a more balanced way of like, not everything is done by a coding agent.

635
00:41:35.910 --> 00:41:40.391
Because it's still important that you understand the primitives.

636
00:41:40.411 --> 00:41:44.833
A lot of times those people are really happy if someone comes in there and generally has time and wants to help.

637
00:41:44.933 --> 00:41:49.394
And there's a lot of tasks that don't require full system understanding to be useful.

638
00:41:49.574 --> 00:41:51.015
MARK MANDELAVYSCHENKOVICIENCIA.

639
00:41:51.055 --> 00:41:51.295
Great.

640
00:41:51.475 --> 00:41:53.976
Peter, this is a great moment to wrap the show.

641
00:41:54.096 --> 00:41:56.977
I can tell you're already messaging your next meeting telling them.

642
00:41:57.217 --> 00:42:00.199
Hey, I'm going to be late and we want to be respectful for your time.

643
00:42:00.219 --> 00:42:03.240
My agents were popping up the bras and we're clicking around.

644
00:42:03.820 --> 00:42:07.222
Oh, gosh.

645
00:42:07.422 --> 00:42:08.123
Total control.

646
00:42:08.303 --> 00:42:09.884
Tom, any last question?

647
00:42:10.244 --> 00:42:20.469
No, I'd say, you know, I think I really want to try again to get this running and kind of reduce my paranoia a little bit.

648
00:42:20.749 --> 00:42:23.931
And, you know, the things that you said made me feel a lot more comfortable.

649
00:42:23.971 --> 00:42:26.252
Like your assessment of that is really, I put a lot of,

650
00:42:26.692 --> 00:42:27.832
a lot of credence into that.

651
00:42:28.072 --> 00:42:29.553
And so I want to hook this thing up.

652
00:42:29.573 --> 00:42:35.575
Like I really, I want that future where it's connected to my car and my calendar and it's like orchestrating things.

653
00:42:35.615 --> 00:42:36.435
And like, I really want that.

654
00:42:36.735 --> 00:42:38.395
And I want it to be, you know, I want it to be easy.

655
00:42:38.456 --> 00:42:40.396
I want it to be reliable.

656
00:42:40.476 --> 00:42:42.617
I want it to feel safe, all of those things.

657
00:42:42.717 --> 00:42:45.518
And so what you said today makes me really feel a lot better about that.

658
00:42:45.558 --> 00:42:46.358
So I think I'm going to go

659
00:42:46.998 --> 00:42:48.879
I'm going to go try to hook it up to more stuff.

660
00:42:48.919 --> 00:42:53.002
And so that's a big takeaway for me here is like, sure, like security is always a thing.

661
00:42:53.282 --> 00:42:58.045
But like you're already doing a bunch of stuff that has some security risks and this is not any different.

662
00:42:58.145 --> 00:43:00.266
And so I'm going to try that out.

663
00:43:00.486 --> 00:43:08.391
And, you know, I think it's really cool, like this idea of the adjacent possible and how you kind of ran into this concept.

664
00:43:08.451 --> 00:43:08.932
And I think it's.

665
00:43:09.812 --> 00:43:11.554
For me with GitHub, it was a little bit the same.

666
00:43:11.594 --> 00:43:12.735
It's like, I don't know.

667
00:43:12.775 --> 00:43:13.395
Why was it me?

668
00:43:13.455 --> 00:43:14.677
I was like, there's no reason.

669
00:43:14.717 --> 00:43:22.123
It was just, you know, right place, right time, right ideas, talk to the right people, position it right, and then execute well and engage the community and then go.

670
00:43:22.664 --> 00:43:24.045
And that's, there's so much power in that.

671
00:43:24.405 --> 00:43:32.233
And when I talk to people, it's like, go, like the best way to have, this comes from a book by Stephen Johnson called Where Good Ideas Come From.

672
00:43:32.853 --> 00:43:33.594
I talk about it a lot.

673
00:43:33.614 --> 00:43:34.595
That's the adjacent possible.

674
00:43:34.975 --> 00:43:37.097
The best way to have good ideas is to have a lot of ideas.

675
00:43:37.517 --> 00:43:40.219
And to me, that's like, you're an amazing example of that.

676
00:43:40.319 --> 00:43:44.062
And like, you've really, you tried stuff, something hit and like you ran with it.

677
00:43:44.102 --> 00:43:45.383
And I think this can be true for anybody.

678
00:43:45.744 --> 00:43:48.646
So that's a big takeaway for me too, is like, just go do stuff.

679
00:43:49.207 --> 00:43:49.747
Put it out there.

680
00:43:49.998 --> 00:43:53.240
Yeah, I think that adjacent possible is a great point.

681
00:43:53.340 --> 00:43:55.961
And the fact that OpenClaw is open source, right?

682
00:43:56.041 --> 00:44:00.323
And maybe Cloud or ChatGPT works for 80% of the use cases.

683
00:44:00.383 --> 00:44:12.248
But because it's open source and you want to have your agents communicating with each other and create a synthetic company, it's like OpenClaw unlocks possibilities that just aren't possible with closed source today.

684
00:44:12.268 --> 00:44:14.349
You know, maybe some of you just want to think with it.

685
00:44:14.770 --> 00:44:17.691
That's the part of having fun is just like,

686
00:44:18.191 --> 00:44:20.533
Oh, it doesn't quite do what I want, but I can change it.

687
00:44:20.773 --> 00:44:20.933
Yeah.

688
00:44:21.013 --> 00:44:22.694
And now you can ask it to change itself.

689
00:44:22.794 --> 00:44:30.259
And that's another thing I think that I really learned from OpenClaw and your approach is it was the first time that I saw a piece of software be like, how do you want me to change myself?

690
00:44:30.479 --> 00:44:32.581
Like, just ask me to do it and I'll go do it.

691
00:44:32.601 --> 00:44:36.784
And for me, that was a big part of the success and the eye opening where it's like, oh shit, we could do that.

692
00:44:36.824 --> 00:44:45.610
Like we can have the machine just self modify and install stuff and change the machine and run commands on like, I hadn't seen that before.

693
00:44:45.630 --> 00:44:45.970
And so...

694
00:44:46.450 --> 00:44:49.074
I'm at a point where I'm getting mad if I can't do that without a software.

695
00:44:49.094 --> 00:44:51.137
It's just like, what do you mean?

696
00:44:51.157 --> 00:44:51.638
Yeah, right.

697
00:44:53.240 --> 00:44:54.101
It's a nice experience.

698
00:44:54.161 --> 00:44:56.405
It's great to be able to ask your software to fix itself.

699
00:44:56.892 --> 00:44:57.212
pretty great.

700
00:44:57.492 --> 00:44:58.573
Peter, thank you.

701
00:44:58.914 --> 00:45:03.217
Thank you for coming back from retirement and having fun, right?

702
00:45:03.337 --> 00:45:11.163
Like you really demonstrated through putting that agent in a Discord bot, you demonstrated a feature for us all.

703
00:45:11.243 --> 00:45:12.304
And I appreciate it.

704
00:45:12.344 --> 00:45:15.266
And I appreciate that you're continuing to steward it even at OpenAI.

705
00:45:15.286 --> 00:45:19.690
I think many don't know OpenClaw is owned or is managed by a foundation.

706
00:45:19.730 --> 00:45:21.231
It's not owned by OpenAI.

707
00:45:21.291 --> 00:45:22.352
Like I feel like I have to talk.

708
00:45:22.532 --> 00:45:33.634
I have to say that in this podcast just to really communicate that this is something that's very important to you, that this is not a one company's product.

709
00:45:33.914 --> 00:45:37.195
And I want to thank you for that, and thank you for your time coming on this show.

710
00:45:38.035 --> 00:45:38.595
Thanks, Nani.

711
00:45:38.815 --> 00:45:39.335
Appreciate it.

712
00:45:39.955 --> 00:45:40.295
Thanks, Peter.

713
00:45:40.575 --> 00:45:41.495
Tom, my pleasure.

714
00:45:41.735 --> 00:45:41.995
Great.

715
00:45:42.255 --> 00:45:43.336
This is AI Worth Using.

716
00:45:43.496 --> 00:45:47.896
If you want to try OpenClaw, we'll put the link in the show notes to one-shot install it.

717
00:45:47.976 --> 00:45:51.597
Really, all you need to do is ask your agent to install OpenClaw.

718
00:45:51.897 --> 00:45:53.319
All right, that was Peter at OpenClaw.

719
00:45:53.539 --> 00:45:55.141
And now we're going to do just a little fun thing.

720
00:45:55.161 --> 00:45:57.643
I'm going to bring in one of my favorite engineers, Plukas.

721
00:45:57.663 --> 00:45:59.185
I've worked with this guy for a decade.

722
00:45:59.746 --> 00:46:02.489
And we're kind of in a high stakes moment right now for our startup.

723
00:46:03.467 --> 00:46:04.488
Lucas, welcome.

724
00:46:04.768 --> 00:46:07.669
So for those that don't know, I've worked with you.

725
00:46:07.989 --> 00:46:08.390
How long?

726
00:46:08.470 --> 00:46:09.530
How long have we worked together?

727
00:46:09.750 --> 00:46:10.251
Would you say?

728
00:46:10.731 --> 00:46:12.872
10 years at least something around there.

729
00:46:13.212 --> 00:46:15.853
Okay, so we've got two months to fundraise.

730
00:46:16.074 --> 00:46:21.116
Tom's invested and we got to show him what we've built so that he can help us finish the fundraise.

731
00:46:21.376 --> 00:46:22.337
How are you feeling about that?

732
00:46:23.077 --> 00:46:24.018
A little nervous.

733
00:46:24.218 --> 00:46:28.402
It's definitely high stakes, but I think we have a really cool product to show.

734
00:46:28.823 --> 00:46:29.123
All right.

735
00:46:29.383 --> 00:46:32.306
Well, let's bring Tom back in and we'll do the demo.

736
00:46:33.066 --> 00:46:33.407
Sounds good.

737
00:46:34.158 --> 00:46:37.939
Okay, so Tom, this is a app that runs on your computer.

738
00:46:38.099 --> 00:46:38.960
It's local.

739
00:46:39.260 --> 00:46:40.740
It gives any agent.

740
00:46:40.920 --> 00:46:42.561
It can be claw.ai.

741
00:46:42.661 --> 00:46:43.841
It can be OpenClaw.

742
00:46:44.201 --> 00:46:45.802
It can be ChatGPT.

743
00:46:46.322 --> 00:46:52.504
Access to your Mac, and this is key, is there is an adversarial reviewer

744
00:46:53.224 --> 00:46:57.888
that determines whether or not any particular query is safe to run on your Mac.

745
00:46:58.148 --> 00:47:01.091
And you define what safe means, right?

746
00:47:01.151 --> 00:47:07.376
So for, you know, for Peter, he was, you know, willing to let anyone use his Mac, right?

747
00:47:07.396 --> 00:47:11.680
He might have a different definition of safe than the definition of safe that you have, right?

748
00:47:11.980 --> 00:47:20.968
And you can also define whether or not you want to give a broader community access to this MCP server, or if you're just going to use it personally.

749
00:47:21.510 --> 00:47:21.750
Got it.

750
00:47:22.211 --> 00:47:23.292
Okay.

751
00:47:23.392 --> 00:47:29.357
And then the great part is you can then look at, okay, this is how the server is being used.

752
00:47:29.437 --> 00:47:30.357
These are the requests.

753
00:47:30.438 --> 00:47:33.140
These are the requests that are getting approved, and these are the requests that are getting denied.

754
00:47:33.580 --> 00:47:33.740
Right?

755
00:47:34.301 --> 00:47:40.486
And really the goal here is to give somebody like you a tool that you are comfortable running.

756
00:47:40.846 --> 00:47:41.086
Right?

757
00:47:42.247 --> 00:47:47.031
And I think that means permissions and instrumentation where you can see how those permissions are.

758
00:47:47.892 --> 00:47:48.633
are being executed.

759
00:47:48.713 --> 00:47:48.973
Okay.

760
00:47:49.113 --> 00:47:55.338
Well, I'm excited because if you listen to the Open Call episode, you know that I'm a little bit paranoid.

761
00:47:55.678 --> 00:48:02.304
And so security, visibility, transparency, accountability, those are all things that are top of mind for me.

762
00:48:02.424 --> 00:48:06.227
So if this gives that to me, then that makes me excited.

763
00:48:06.727 --> 00:48:07.187
I like that.

764
00:48:07.207 --> 00:48:11.111
I should, we should make that the tagline, agents for paranoid people.

765
00:48:11.131 --> 00:48:11.691
Yeah.

766
00:48:13.658 --> 00:48:15.340
There's a lot of them, I expect.

767
00:48:15.720 --> 00:48:17.061
Okay, so Tom, I have Plukas.

768
00:48:17.122 --> 00:48:19.284
Plukas is one of my favorite engineers.

769
00:48:19.304 --> 00:48:21.846
I've worked with him for a long time, and he's going to be doing this demo.

770
00:48:22.647 --> 00:48:28.133
You're the first user to use this DMG, so it's going to be, yeah, I'm sure something is not going to work.

771
00:48:28.919 --> 00:48:29.840
Fresh bill for you.

772
00:48:30.160 --> 00:48:30.820
I look forward to it.

773
00:48:30.840 --> 00:48:33.221
Okay.

774
00:48:33.241 --> 00:48:33.502
Cool.

775
00:48:33.542 --> 00:48:38.564
So you're going to download Plow Latch, which is a Mac app that's going to run on your desktop.

776
00:48:38.624 --> 00:48:42.567
And then we're going to connect that to an agent that will spin up for you in the cloud.

777
00:48:42.767 --> 00:48:45.928
So then your cloud agent can run and access stuff on your Mac.

778
00:48:46.369 --> 00:48:46.769
Okie doke.

779
00:48:46.969 --> 00:48:47.169
Cool.

780
00:48:47.189 --> 00:48:52.212
So the way that Plow, like Plow accounts authenticate is through texting a code.

781
00:48:52.732 --> 00:48:57.735
So you'll just text this code to Plow to authenticate you and set up your account.

782
00:48:58.524 --> 00:49:02.550
Okey doke to you for my thing.

783
00:49:02.651 --> 00:49:05.535
OK. All right.

784
00:49:05.635 --> 00:49:06.296
That looks like it's sent.

785
00:49:07.478 --> 00:49:08.520
So now you're logged in.

786
00:49:09.181 --> 00:49:10.383
You can click continue here.

787
00:49:12.875 --> 00:49:15.176
And so this is PlowLatch.

788
00:49:15.256 --> 00:49:20.458
So you have an agents tab where you can configure how you want your agents that you want to be connected to Latch.

789
00:49:20.839 --> 00:49:24.980
You have an audit tab, which you can go through and see every command that an agent is running.

790
00:49:25.461 --> 00:49:30.143
And then you have some rules so you can set for like auto-applying, instantly approving, stuff like that.

791
00:49:30.663 --> 00:49:36.365
You have a vault, which is where you'll put in secure credentials for the browser use.

792
00:49:36.625 --> 00:49:42.008
So if you wanted to buy something on Amazon, you could give it your Amazon password here securely, and then the agent can drive...

793
00:49:42.769 --> 00:49:46.104
logging into Amazon securely, and then a settings pane.

794
00:49:48.577 --> 00:49:51.459
The first thing that I would recommend is like, let's get this connected to an agent.

795
00:49:52.019 --> 00:49:54.540
And so PlowLatch is agent agnostic.

796
00:49:54.560 --> 00:50:02.505
You can connect it to any agent you want, but for simplicity, just for testing this out, we also make it available to set up with an agent that we host for you in the cloud.

797
00:50:03.005 --> 00:50:13.011
So this is gonna spin up a Hermes agent for you, but you can imagine connecting this to an OpenCloud agent or a cloud.ai or chatgpt.com, whatever you want.

798
00:50:13.031 --> 00:50:14.792
But for this, let's click set up cloud agent.

799
00:50:15.471 --> 00:50:22.417
And so this is also going to attach an iMessage thread to your agent so that you can communicate with it over iMessage.

800
00:50:22.437 --> 00:50:24.959
So just go ahead and give your agent a name here and then click Setup.

801
00:50:26.660 --> 00:50:27.260
What should I call him?

802
00:50:27.501 --> 00:50:27.941
Plowy?

803
00:50:28.882 --> 00:50:29.182
Yeah.

804
00:50:31.658 --> 00:50:31.838
Cool.

805
00:50:32.018 --> 00:50:34.719
And so now in the background, we're spinning up a VM with Hermes.

806
00:50:35.279 --> 00:50:42.922
And in just a few seconds, you should get a message on that same number that you activated, letting you know that the agent is ready to go.

807
00:50:43.202 --> 00:50:45.182
What model are you using to run this one?

808
00:50:46.383 --> 00:50:48.583
This is running Hermes in the cloud.

809
00:50:48.783 --> 00:50:51.324
It's a cloud model that we're posting for you.

810
00:50:51.884 --> 00:50:52.105
Got it.

811
00:50:52.805 --> 00:50:58.627
So if you can drag that chat window back over, you should have got the message.

812
00:50:59.207 --> 00:50:59.647
The message?

813
00:51:00.203 --> 00:51:02.864
So this is your Hermes agent in the cloud now.

814
00:51:03.084 --> 00:51:04.705
And so it's connected.

815
00:51:04.765 --> 00:51:07.286
We set up the MCP connection automatically for you.

816
00:51:07.306 --> 00:51:15.130
So this also has the MCP to communicate with PlotLatch, which is basically running, can run any command that you want for your Mac.

817
00:51:15.770 --> 00:51:26.815
So my favorite way to demo this, I don't know if this will work on the stream or not, but my favorite way to demo this is just to say like, hey, run a test command on my Mac using PlotLatch and do like, say hello world or something.

818
00:51:29.495 --> 00:51:37.319
And now if you go into the audit tab on latch in a few seconds when it starts to process this, you should see the request come through.

819
00:51:37.339 --> 00:51:44.763
Oh, and so the default setting for PlowLatch is to have you approve every single command manually.

820
00:51:44.963 --> 00:51:47.864
So you can see what the agent is trying to do.

821
00:51:48.004 --> 00:51:50.045
And here it's trying to say echo hello world.

822
00:51:50.506 --> 00:51:55.648
That little rainbow is like what the agent would have chosen based on your instructions.

823
00:51:55.668 --> 00:51:59.090
The adversarial agent, which is different than the Hermes agent.

824
00:52:00.245 --> 00:52:01.146
Okay, gotcha.

825
00:52:01.246 --> 00:52:03.228
So this is the recommended thing.

826
00:52:03.288 --> 00:52:08.412
And eventually I'm building trust with Plow because it's always choosing the thing that I would also choose.

827
00:52:08.813 --> 00:52:09.013
Yep.

828
00:52:09.553 --> 00:52:09.754
Right.

829
00:52:10.534 --> 00:52:11.515
Okay, so I'll allow it.

830
00:52:11.996 --> 00:52:13.357
And you can configure these.

831
00:52:13.697 --> 00:52:16.219
Did it just randomly ran this somewhere?

832
00:52:17.260 --> 00:52:22.285
Yeah, I was trying to get it to like use the command say so you could like hear a visual or hear an audio.

833
00:52:22.345 --> 00:52:26.669
Yeah, you can try saying it again and tell it to use that.

834
00:52:31.160 --> 00:52:31.781
Ooh, it said it.

835
00:52:32.262 --> 00:52:32.943
I don't know.

836
00:52:32.963 --> 00:52:33.544
I don't know.

837
00:52:33.704 --> 00:52:38.412
I don't think that comes across on the recording, but it did indeed say it to me.

838
00:52:38.832 --> 00:52:39.253
Excellent.

839
00:52:39.373 --> 00:52:39.694
I love it.

840
00:52:40.315 --> 00:52:45.202
Inside the settings, I would just go there real quick just to show off the different kinds of security models that we have.

841
00:52:45.623 --> 00:52:46.184
It's in rules.

842
00:52:48.140 --> 00:52:53.785
So you're setting out for the agent to ask for plow latch, excuse me, to ask for every single command that the agent wants to run.

843
00:52:54.586 --> 00:52:57.809
And you saw how it put the AI reviewer's suggestion there.

844
00:52:58.089 --> 00:53:02.493
If you just want to always take the reviewer's suggestion, you could click on AI reviewer decides.

845
00:53:03.094 --> 00:53:03.314
Okay.

846
00:53:04.181 --> 00:53:07.563
I have a demo account here that I'm using, so I'm going to roll with it and we'll see.

847
00:53:07.643 --> 00:53:08.124
Oh, nice.

848
00:53:08.764 --> 00:53:09.425
We'll just let it do stuff.

849
00:53:09.445 --> 00:53:13.187
And then you can also put custom text inside the text box there too.

850
00:53:13.207 --> 00:53:18.171
So if you wanted to scope it down, it's just like right now, it's just kind of set to like generic computer use.

851
00:53:18.651 --> 00:53:29.259
But if you wanted to say like, hey, this is going to be open to the internet and it's going to open, it's going to take DoorDash orders from anybody, like make sure to only do X, Y, and Z.

852
00:53:29.419 --> 00:53:32.721
Like you could put those kinds of instructions in there.

853
00:53:32.841 --> 00:53:35.902
So other people can potentially message this same.

854
00:53:36.202 --> 00:53:38.103
This number is specific for me then?

855
00:53:39.223 --> 00:53:41.804
Right now it's 100% just you.

856
00:53:42.184 --> 00:53:45.165
But you can create group threads with other people.

857
00:53:45.365 --> 00:53:47.286
I don't know if that's yet released in this version.

858
00:53:47.666 --> 00:53:53.048
Okay, but it knows who I am by my phone number or identity on iMessage.

859
00:53:53.468 --> 00:54:04.652
And it would know if other, if I gave this number to other people, it would know who they are and I could teach it, Hey, when my kid asks for something via this channel, then like go for it under these circumstances.

860
00:54:05.212 --> 00:54:05.973
Is that what, yeah.

861
00:54:06.113 --> 00:54:09.114
So those are the rules and I can, can I create like, like lots of those?

862
00:54:09.594 --> 00:54:10.234
Yeah, exactly.

863
00:54:10.274 --> 00:54:12.175
So today it's only attached.

864
00:54:12.195 --> 00:54:17.777
The only thing that can access your plow latch from the way that you have it configured right now is that single iMessage thread that you have.

865
00:54:18.437 --> 00:54:29.485
So you can start to create more iMessage threads and you can attach in a future release later today, you're going to be able to attach more of those iMessage threads to that single agent, or you could create a bunch of agents for

866
00:54:30.136 --> 00:54:33.157
You know, you could have an agent for your kids or an agent for just you.

867
00:54:33.978 --> 00:54:40.840
Or you could put them all in one agent and then have these rules kind of say, okay, don't let Sam go too crazy at the Apple store or whatever.

868
00:54:41.881 --> 00:54:43.241
Okay, okay.

869
00:54:43.261 --> 00:54:44.962
So let me do something else more interesting.

870
00:54:45.042 --> 00:54:48.944
So my kids really are into Legos right now, like a lot.

871
00:54:49.524 --> 00:54:55.647
And I need to order them some new Legos to satiate their endless thirst for tiny bricks.

872
00:54:55.667 --> 00:54:56.367
Yeah.

873
00:54:56.567 --> 00:55:01.733
So can I ask Plow to go on Amazon and find some Legos for me?

874
00:55:02.633 --> 00:55:03.314
Yeah, definitely.

875
00:55:03.795 --> 00:55:04.355
Give it a shot.

876
00:55:08.119 --> 00:55:18.270
Okay, so this thing's just going to decide what the best way to satisfy this request on my computer is, but it kind of has free reign to drive my Mac in whatever way it decides fit.

877
00:55:19.150 --> 00:55:32.375
Yeah, right now we have a custom build of a browser that is less likely to trigger bot blocking.

878
00:55:33.115 --> 00:55:38.157
We attempt to get past the classic signatures that the browser is being driven by a bot.

879
00:55:38.457 --> 00:55:39.398
Oh, it's using the browser.

880
00:55:39.478 --> 00:55:39.878
Okay, great.

881
00:55:40.138 --> 00:55:40.678
I figured it out.

882
00:55:41.278 --> 00:55:42.659
Do I get to see it?

883
00:55:42.719 --> 00:55:43.139
How is it?

884
00:55:43.499 --> 00:55:45.160
Yeah, so if you go to the audit tab,

885
00:55:46.023 --> 00:55:51.305
you'll be able to see the commands that it's running and you'll get to see a little preview of the browser that's also running.

886
00:55:53.145 --> 00:55:58.887
So one thing I like to demo is like, if you go to claw.ai, you can just ask it, what's on the front page of Reddit today?

887
00:55:59.327 --> 00:56:01.247
And claw.ai can't answer that question.

888
00:56:03.248 --> 00:56:05.269
But this can, right?

889
00:56:05.529 --> 00:56:09.910
Because obviously Reddit wants to make sure your computer can access Reddit.

890
00:56:11.659 --> 00:56:13.621
And there are hundreds of examples of that, right?

891
00:56:13.661 --> 00:56:23.895
Like if you go to a bank and try to log in, you know, most browsers that are hosted on data center IP addresses struggle to log in.

892
00:56:25.641 --> 00:56:25.921
Okay.

893
00:56:26.882 --> 00:56:45.910
And then, okay, so it's going to, so it'll drive stuff on my computer, but I'm not necessarily seeing it like I would in a computer use, a computer use case where it's, it's, it's often popping up and it's, maybe it's not interrupting my mouse necessarily, but like I can usually see it doing stuff depending on what the task is.

894
00:56:46.751 --> 00:56:48.071
But here, will it always be hidden?

895
00:56:49.012 --> 00:56:51.253
Like you're never, I can be using my computer like normal.

896
00:56:51.993 --> 00:56:54.536
And I don't even know that it's doing these things.

897
00:56:54.556 --> 00:56:59.901
It's always kind of in a separate place or where's the, where's the boundary between things?

898
00:57:00.626 --> 00:57:06.127
Yeah, we, the browser is, we package the browser ourself, so it doesn't interfere with the browser that you use.

899
00:57:06.448 --> 00:57:10.989
We don't, you know, all the cookies on the browser that you use stay on the browser that you use, right?

900
00:57:11.109 --> 00:57:12.909
Our browser is a fresh session.

901
00:57:13.249 --> 00:57:13.950
Can I have it?

902
00:57:14.050 --> 00:57:16.950
What if I want it to be in my normal browser?

903
00:57:17.290 --> 00:57:23.372
Can I say, hey, like, put a couple of these things in my cart and show it to me so I can review them?

904
00:57:24.092 --> 00:57:24.953
That is coming soon.

905
00:57:24.973 --> 00:57:25.933
Okay.

906
00:57:25.953 --> 00:57:26.133
Okay.

907
00:57:26.945 --> 00:57:32.786
Okay, so right now it has its own sort of app space with its own sessions and everything.

908
00:57:32.886 --> 00:57:35.967
Oh, but if I wanted to log into stuff, that's where I would give it my passwords.

909
00:57:36.047 --> 00:57:36.507
Exactly.

910
00:57:36.607 --> 00:57:39.448
So you could give it your Amazon login and then it will add it to your Amazon cart.

911
00:57:39.488 --> 00:57:44.849
So I could, then it could add it to the cart and then I would see it because the cart is synchronized across the browser windows.

912
00:57:45.029 --> 00:57:45.229
Okay.

913
00:57:45.650 --> 00:57:47.170
I think we should order something for your kids.

914
00:57:47.790 --> 00:57:48.150
Let's do it.

915
00:57:48.730 --> 00:57:52.411
Okay, so what do I, I need to put something in my vault here.

916
00:57:52.831 --> 00:57:53.011
Yep.

917
00:57:54.152 --> 00:57:55.612
I'll add a new login.

918
00:57:57.291 --> 00:57:58.332
Okay.

919
00:58:00.954 --> 00:58:01.514
All right.

920
00:58:01.695 --> 00:58:02.195
We'll give it a try.

921
00:58:02.215 --> 00:58:05.498
You might want to put in www.amazon.com?

922
00:58:05.518 --> 00:58:06.138
No, they should work.

923
00:58:06.338 --> 00:58:06.719
They should work.

924
00:58:06.759 --> 00:58:07.759
If that works now, okay.

925
00:58:07.779 --> 00:58:08.680
Yeah, subdomains.

926
00:58:10.662 --> 00:58:10.902
Okay.

927
00:58:11.702 --> 00:58:13.964
Do I need to tell it to log in or will it figure that out?

928
00:58:14.184 --> 00:58:15.946
You know, I think the cart works without logging in.

929
00:58:16.066 --> 00:58:21.090
So if you want it to be in your logged in cart, on Amazon you can add things to cart without logging in.

930
00:58:21.600 --> 00:58:24.903
I know, but will that span across your browser and my browser?

931
00:58:24.923 --> 00:58:29.127
So if you want it to be in your logged in cart, you probably should tell it to...

932
00:58:29.607 --> 00:58:29.907
Okay.

933
00:58:32.089 --> 00:58:35.892
So tell me some of the things that you guys have done with this that have saved you time.

934
00:58:35.972 --> 00:58:38.855
What are other use cases while it's sitting here churning?

935
00:58:39.282 --> 00:58:48.088
Well, one thing I'll say while it's doing this, which I love, is Latch is not exposing the password to the agent, to the cloud agent.

936
00:58:48.288 --> 00:58:54.393
So Latch inserts the password directly into our browser that we ship with Latch.

937
00:58:54.853 --> 00:59:00.719
So that's all part of our privacy model where we do everything we can to keep as much on your machine as possible.

938
00:59:01.040 --> 00:59:03.963
Tom, at the end of the day, like you're an important guy.

939
00:59:04.003 --> 00:59:08.748
You don't you don't want all of your stuff being shipped to all of these cloud services.

940
00:59:09.068 --> 00:59:09.528
I agree.

941
00:59:09.689 --> 00:59:13.893
I am sensitive with my passwords and my privacy, et cetera, et cetera.

942
00:59:14.033 --> 00:59:16.295
So I again, the paranoia.

943
00:59:17.142 --> 00:59:19.422
I always think about attack vectors, et cetera, et cetera.

944
00:59:19.462 --> 00:59:28.104
So yeah, I like knowing that you're not sending passwords to random external cloud models.

945
00:59:28.344 --> 00:59:28.744
Yeah.

946
00:59:28.944 --> 00:59:29.525
That's nice.

947
00:59:29.985 --> 00:59:46.408
It's all sort of the least privilege model where we want to allow you to do the thing that you want to do, but with the least possible privilege that we need to expose in order for that to be able to get done.

948
00:59:47.291 --> 00:59:50.092
Yeah, why don't we go to the Huttit tab and we can see what it's...

949
00:59:54.353 --> 00:59:55.774
So what does scope blocked mean?

950
00:59:56.354 --> 00:59:57.034
Oh, it denied.

951
00:59:57.054 --> 01:00:00.795
So you can actually see why it denied if you click on that.

952
01:00:07.597 --> 01:00:09.398
Oh, that means the model didn't return in time.

953
01:00:09.418 --> 01:00:10.598
Yeah.

954
01:00:11.347 --> 01:00:16.351
At one time, I had an assistant and I would text her over iMessage and it was amazing.

955
01:00:16.931 --> 01:00:24.137
And she had access to my emails and my logins and I no longer have that assistant.

956
01:00:24.517 --> 01:00:27.219
I use this for everything that I would use her for.

957
01:00:27.500 --> 01:00:30.202
So if I get a bill in the mail, I'll take a

958
01:00:30.802 --> 01:00:52.735
photo of that bill and ask latch to pay it um i love using it for like long email threads i i signed up to coach my sick kids soccer team there was 18 emails i don't have time to read all of that so latch went through all of those emails figured out the time that is best for everybody else that's free on my calendar and

959
01:00:53.375 --> 01:00:55.457
Reply to the email, put it on my calendar.

960
01:00:55.777 --> 01:01:01.883
I run it every day to figure out what are the most important, urgent and important things that I'm not attending to.

961
01:01:02.824 --> 01:01:11.532
And, you know, I told me that for I have a rental property, the mortgage wasn't getting paid for the rental property.

962
01:01:11.612 --> 01:01:13.834
So I had it log in and pay that mortgage.

963
01:01:13.874 --> 01:01:14.815
Yeah, that's important.

964
01:01:16.920 --> 01:01:30.947
So really just managing, honestly, managing my email inbox and dealing with this like low grade noise that slows us all down, or at least all of us normal people who don't have assistance has been a big use case.

965
01:01:31.207 --> 01:01:32.108
Oh, this is a big one.

966
01:01:32.388 --> 01:01:35.129
My wife and I are terrible at coordinating schedules.

967
01:01:35.349 --> 01:01:36.830
She'll commit to things with the kids.

968
01:01:36.850 --> 01:01:37.931
We've got three kids.

969
01:01:38.671 --> 01:01:40.392
I'll commit to things for our family.

970
01:01:40.752 --> 01:01:42.153
We don't tell each other.

971
01:01:42.533 --> 01:01:45.895
For some reason, using Google Calendar has just been a struggle for us.

972
01:01:46.915 --> 01:01:54.180
Um, now whenever we commit to something, we just text the phone number and it gets put on our Google calendar and it will get alerted if we have a conflict.

973
01:01:54.540 --> 01:01:55.101
Okay, cool.

974
01:01:55.201 --> 01:02:05.748
So, so really like, uh, things you would have in a regular assistant to Plow is designed to do that, but has the really easy installation to make it super easy to get into.

975
01:02:05.788 --> 01:02:13.593
You're not having to figure out how to create new phone numbers or WhatsApps or channels on.

976
01:02:14.987 --> 01:02:32.713
whatever slack or whatever it's just like text this number it's taken care of and there's this auditing and rules and so it's just smoothing out the whole thing for a more consumer great experience let's see i want the stitch toy and the fierce dinosaur

977
01:02:33.722 --> 01:02:34.763
I used it the other day.

978
01:02:34.783 --> 01:02:45.828
I was on the go and I remembered, oh, I had booked a reservation for a hotel and I needed to cancel it before the cancellation policy expired.

979
01:02:45.968 --> 01:02:48.609
So in the old world, I would just forget about that.

980
01:02:48.709 --> 01:02:53.151
I'm on the go and I would end up having to pay for that hotel, right?

981
01:02:53.431 --> 01:02:56.893
And in the new world, I just text Plow Latch, can you cancel that reservation?

982
01:02:56.913 --> 01:02:57.513
Yeah.

983
01:02:58.289 --> 01:03:11.739
Um, so stuff like that, where you're dealing with support teams or you're, you're going through like, you know, these kind of arcane flows in order to pay a bill or, or cancel something or change an order.

984
01:03:12.599 --> 01:03:13.220
Those all.

985
01:03:15.083 --> 01:03:18.064
you know, they'll take me 15 minutes to figure out where is the cancellation button on this thing?

986
01:03:18.084 --> 01:03:19.644
This, they're intentionally hiding it.

987
01:03:19.684 --> 01:03:20.705
I know it's here somewhere.

988
01:03:20.745 --> 01:03:21.185
Yeah.

989
01:03:21.245 --> 01:03:21.405
Right.

990
01:03:21.505 --> 01:03:22.885
And, and PlowLabs can take care of it.

991
01:03:23.026 --> 01:03:23.266
Okay.

992
01:03:23.286 --> 01:03:29.848
So you could have it do that, do the like 12 step cancellation process for New York Times or whatever.

993
01:03:30.048 --> 01:03:30.308
Yeah.

994
01:03:30.328 --> 01:03:30.588
Yeah.

995
01:03:31.008 --> 01:03:31.448
Exactly.

996
01:03:31.588 --> 01:03:33.229
Amazon overcharged me for something.

997
01:03:33.249 --> 01:03:35.910
It's kind of a long story even to talk about it here.

998
01:03:36.011 --> 01:03:40.453
It's just like how I got to a point where I was paying $50 more than I should have.

999
01:03:40.673 --> 01:03:46.936
I just logged into the Amazon support and chatted with some dude named Eric to get me my $50 back.

1000
01:03:46.976 --> 01:03:48.357
And normally I just would pay the $50.

1001
01:03:48.417 --> 01:03:49.397
Yeah, yeah.

1002
01:03:50.518 --> 01:03:51.578
Looks like I ran out of money.

1003
01:03:51.698 --> 01:03:52.298
Womp womp.

1004
01:03:53.679 --> 01:03:54.079
Oh, no.

1005
01:03:54.480 --> 01:03:55.220
Oh, interesting.

1006
01:03:55.800 --> 01:03:57.081
So let's fix this real quick.

1007
01:03:57.281 --> 01:03:58.942
If you open up the web and you go to...

1008
01:04:00.068 --> 01:04:02.590
API.plow.co.app.

1009
01:04:13.559 --> 01:04:17.742
Yeah, we give everybody $10, but my guess is this was already used when you were testing the little product.

1010
01:04:17.762 --> 01:04:27.630
So if you hit 500 and hit Payway Stripe and then hit under promo code on the left...

1011
01:04:29.984 --> 01:04:32.345
Team 501, apply.

1012
01:04:32.365 --> 01:04:40.030
OK.

1013
01:04:40.590 --> 01:04:43.192
So now I can, what should I tell it?

1014
01:04:43.532 --> 01:04:43.932
Try again?

1015
01:04:44.012 --> 01:04:45.653
I would just say try again or something.

1016
01:04:48.307 --> 01:04:50.768
How do you get it to integrate with your email, say?

1017
01:04:50.788 --> 01:04:52.789
Like, how do you have it scan your email?

1018
01:04:53.009 --> 01:05:00.012
Is it just driving that via your browser and doing everything you would normally do?

1019
01:05:00.032 --> 01:05:01.152
Searching for stuff and whatever.

1020
01:05:01.172 --> 01:05:04.113
It's not like indexing, keeping its own index or any of that?

1021
01:05:04.333 --> 01:05:11.496
The old version of Plow had a Google connector, a Google developer account and everything.

1022
01:05:12.357 --> 01:05:17.882
we are migrating that over in the way that, and this is also, I think this was just merged into main.

1023
01:05:18.262 --> 01:05:25.147
The way that it works now is we use the CLI, the Google CLI on your machine.

1024
01:05:26.008 --> 01:05:26.388
So...

1025
01:05:28.268 --> 01:05:34.890
you know, your agent will tell Latch to run the CLI command to fetch your Google email or composite email or whatever.

1026
01:05:35.230 --> 01:05:36.991
And all of that goes to the adversarial reviewer.

1027
01:05:37.011 --> 01:05:45.173
And all of that is on your machine, your machine then, you know, communicates with Google directly, and then returns the returns the data back to the agent through Latch.

1028
01:05:47.433 --> 01:05:53.015
I did hear a user was using like, they had put in their Google credential in the vault and like, like,

1029
01:05:53.673 --> 01:05:57.175
they were just using gmail.com, the browser, to like read their email.

1030
01:06:01.558 --> 01:06:01.898
All right.

1031
01:06:01.958 --> 01:06:02.618
Moment of truth.

1032
01:06:04.059 --> 01:06:06.361
There's the Stitch and the Fierce Dinosaur.

1033
01:06:06.381 --> 01:06:08.422
Those are some cool logos.

1034
01:06:09.462 --> 01:06:09.823
Yeah.

1035
01:06:10.203 --> 01:06:11.103
Good choices, Plow.

1036
01:06:12.424 --> 01:06:12.844
Okay.

1037
01:06:12.944 --> 01:06:17.767
And you can have it check out and then if you have, if you have buyer's remorse, you can have it cancel the order.

1038
01:06:20.649 --> 01:06:21.990
Actually, these probably would be

1039
01:06:24.120 --> 01:06:24.700
These are great.

1040
01:06:26.181 --> 01:06:28.921
Okay, so what's your timeline here?

1041
01:06:31.142 --> 01:06:33.203
Is this ready for prime time?

1042
01:06:33.223 --> 01:06:35.143
You guys are already kind of testing yourselves.

1043
01:06:35.323 --> 01:06:36.344
We're testing internally.

1044
01:06:36.464 --> 01:06:40.065
We want to do a limited release in a week.

1045
01:06:40.525 --> 01:06:44.386
I'd say launching with the community about a month out.

1046
01:06:44.766 --> 01:06:49.288
But Tom, it's going to be magical because you'll just be able to text the phone number

1047
01:06:50.215 --> 01:06:51.896
the agent will get spun up.

1048
01:06:52.356 --> 01:06:53.377
You can start talking to it.

1049
01:06:53.537 --> 01:06:55.878
You can then download Latch, right?

1050
01:06:56.159 --> 01:06:58.640
And now I'm going to pitch you as if you're an investor.

1051
01:07:00.121 --> 01:07:05.704
So really, what I see is when I start using Latch, when I use Plow with other people, they get it.

1052
01:07:06.485 --> 01:07:10.587
If I'm going on a trip with people, I can use it to book the reservation.

1053
01:07:10.968 --> 01:07:12.188
And they're like, wow, this is amazing.

1054
01:07:12.288 --> 01:07:13.149
I want it, right?

1055
01:07:13.309 --> 01:07:14.610
Or if I'm getting dinner...

1056
01:07:15.430 --> 01:07:16.371
getting takeout or something.

1057
01:07:16.391 --> 01:07:17.572
I just put Plow on.

1058
01:07:18.152 --> 01:07:20.034
Plow orders the takeout, you know.

1059
01:07:20.594 --> 01:07:29.502
And so that moment where they want it is the moment where Plow can actually side text them and be like, hey, you know, if you want this, just let me know.

1060
01:07:29.722 --> 01:07:31.063
I'll set it up for you right away.

1061
01:07:31.263 --> 01:07:31.584
Yeah, yeah.

1062
01:07:31.784 --> 01:07:32.224
Yeah.

1063
01:07:32.364 --> 01:07:36.908
I would love that for ordering Grubhub, you know, like it's such a manual task to

1064
01:07:37.780 --> 01:07:39.842
You're like, I'm going to order exactly the same things before.

1065
01:07:39.902 --> 01:07:40.983
Maybe I want a slight tweak.

1066
01:07:41.003 --> 01:07:42.064
And it's like five minutes.

1067
01:07:42.264 --> 01:07:44.986
This is not rocket science kind of stuff.

1068
01:07:45.727 --> 01:07:46.047
Yeah.

1069
01:07:47.048 --> 01:07:47.868
Okay.

1070
01:07:48.068 --> 01:07:53.593
So if it deems that I'm about to spend money, it looks like it'll do an extra confirmation.

1071
01:07:54.754 --> 01:07:56.676
I guess so.

1072
01:07:56.716 --> 01:07:57.016
Yes.

1073
01:07:57.256 --> 01:07:59.318
Confirming the credit card to use and all that.

1074
01:07:59.718 --> 01:07:59.938
Cool.

1075
01:08:00.038 --> 01:08:01.039
So this is nice.

1076
01:08:01.059 --> 01:08:01.600
So this will...

1077
01:08:03.304 --> 01:08:11.672
I'm out and about, I'm texting this number, it's doing stuff, but it's doing it with my, so my computer needs to be on for this to work?

1078
01:08:11.912 --> 01:08:15.175
If you're going to use the computer use functionality, right?

1079
01:08:15.395 --> 01:08:15.656
Okay.

1080
01:08:15.776 --> 01:08:21.521
But I could have it do other things that don't require my computer that it could do because it's a cloud agent.

1081
01:08:21.902 --> 01:08:22.782
Wow.

1082
01:08:22.842 --> 01:08:23.283
Look at that.

1083
01:08:26.242 --> 01:08:29.183
It's maybe a little chatty in things that it's doing.

1084
01:08:29.203 --> 01:08:30.323
We'll work through that.

1085
01:08:30.343 --> 01:08:32.184
There's two buttons labeled the same thing, Tom.

1086
01:08:32.284 --> 01:08:37.846
I don't know if you wanted to know that, but I'm pretty sure this is critical information for you.

1087
01:08:37.946 --> 01:08:38.366
Oh, man.

1088
01:08:39.047 --> 01:08:39.307
Sweet.

1089
01:08:39.787 --> 01:08:41.207
Got Legos coming tomorrow.

1090
01:08:42.048 --> 01:08:42.608
There you go.

1091
01:08:44.649 --> 01:08:49.931
So our goal, Tom, is to get this to a place where you are comfortable installing this on your main machine.

1092
01:08:50.191 --> 01:08:53.272
That will be when I know we're ready to launch.

1093
01:08:53.692 --> 01:08:53.992
So...

1094
01:08:55.307 --> 01:08:56.928
Yeah, that's cool.

1095
01:08:56.968 --> 01:08:58.109
I like this.

1096
01:08:58.489 --> 01:08:59.029
This is rad.

1097
01:08:59.750 --> 01:09:06.614
If we open source the client, would that make you more comfortable installing it on the machine where you've got all your personal data and all your...

1098
01:09:06.914 --> 01:09:09.275
I mean, marginally, I suppose.

1099
01:09:10.676 --> 01:09:10.896
Yeah.

1100
01:09:11.637 --> 01:09:12.697
I don't know that that's critical.

1101
01:09:12.818 --> 01:09:21.623
I think it's really just a matter of building trust with the system itself, you know, and we're starting to get into a world where these LLMs are sophisticated enough that...

1102
01:09:22.250 --> 01:09:30.093
Clearly Claude with Claude code is like, I don't know, like people don't like saying yes all the time to stuff, you know, individually to all these commands.

1103
01:09:30.173 --> 01:09:35.556
So auto mode is default because they feel like it's safe enough.

1104
01:09:36.516 --> 01:09:42.158
And I think that that's a thing in the world that is happening where people are just getting more comfortable with these.

1105
01:09:42.839 --> 01:09:50.282
And as long as you have decent policies and kind of things in place where you're going to have an LLM that's checking for you,

1106
01:09:51.709 --> 01:10:01.606
and you build up that trust over time, like you leave it in the, what was it in the, where were the modes here?

1107
01:10:01.887 --> 01:10:03.971
If you leave it in the- The rules.

1108
01:10:03.991 --> 01:10:04.351
The rules.

1109
01:10:05.563 --> 01:10:06.224
Oh, that's in rules.

1110
01:10:06.264 --> 01:10:06.464
Yeah.

1111
01:10:06.624 --> 01:10:08.126
If you're like, ask me every time.

1112
01:10:08.166 --> 01:10:10.989
And, you know, it's always suggesting the stuff that you would agree with.

1113
01:10:11.089 --> 01:10:14.713
Then over time, you start to be comfortable with it.

1114
01:10:14.773 --> 01:10:18.677
So it's just, you know, you build up trust with a product over time.

1115
01:10:18.797 --> 01:10:27.046
But having it ask me is a nice way to be able to try it out without feeling like you're putting yourself at undue risk.

1116
01:10:27.727 --> 01:10:28.388
which I think is nice.

1117
01:10:28.909 --> 01:10:29.711
Cool.

1118
01:10:29.851 --> 01:10:30.692
Any feature requests?

1119
01:10:31.193 --> 01:10:36.362
I mean, the one that, as I'm building trust with this, I think it would be cool to have a bigger way to see

1120
01:10:37.845 --> 01:10:51.015
or I guess an immediate one is like, I want to see whatever that little browser, I guess it closes when it's done, but I'd like to be able to see what it's doing more directly just to, as a trust building experience of like, just, you don't know, let me watch what you're doing.

1121
01:10:51.195 --> 01:11:01.262
Like you have some new intern that comes along and you're like, do this thing and I'm going to kind of observe just to make sure that you're being a reasonable new person at this task.

1122
01:11:01.282 --> 01:11:06.206
So being able to observe it in that way, like this is really nice having this audit log

1123
01:11:07.289 --> 01:11:11.093
and knowing what it's doing and what it was, what it allowed and denied and come in here.

1124
01:11:11.133 --> 01:11:13.596
And I can be like, well, what was, you know, what was that about?

1125
01:11:14.677 --> 01:11:15.037
Like that.

1126
01:11:15.218 --> 01:11:15.738
I like that.

1127
01:11:15.818 --> 01:11:17.240
I like this concept of rules.

1128
01:11:18.629 --> 01:11:26.152
I kind of want to, you know, as I get more sophisticated, I'd want maybe something a lot more, more capable than just a single text box.

1129
01:11:27.333 --> 01:11:33.315
Maybe I want, I don't know how, you know, but I want to be able to invite other people to do certain things or whatever.

1130
01:11:33.435 --> 01:11:37.357
And so making that more competent, understanding what people are trying to do and.

1131
01:11:38.140 --> 01:11:49.666
how complicated they want to get, make it really easy for easy cases, but then allow for growing complexity to adjust to different scenarios or to teach it.

1132
01:11:49.706 --> 01:11:55.429
I guess I wonder if it doesn't, if it's not doing something the way that I want it to do it, can I teach it?

1133
01:11:55.469 --> 01:12:03.553
Can I tell it like, oh, next time when I'm ordering pizzas, you know, don't forget to add the garlic dipping sauce or whatever.

1134
01:12:03.893 --> 01:12:05.474
And then it just knows, like, can it build it?

1135
01:12:05.574 --> 01:12:06.935
Is there a memory feature where, where,

1136
01:12:07.815 --> 01:12:11.556
It's maybe building up that kind of knowledge over time.

1137
01:12:11.616 --> 01:12:13.096
I guess that's a specific question.

1138
01:12:13.216 --> 01:12:15.877
What's your take on memory?

1139
01:12:16.417 --> 01:12:18.097
There's two different kinds of teaching.

1140
01:12:18.218 --> 01:12:20.038
So one is teaching the adversarial reviewer.

1141
01:12:20.358 --> 01:12:32.121
And this is coming where if it denies something, you'll be able to, it'll suggest edits to the language in order for you to guide it around like, hey, actually, this is okay to run.

1142
01:12:32.141 --> 01:12:32.701
Yeah.

1143
01:12:33.368 --> 01:12:34.089
So there's that teaching.

1144
01:12:34.129 --> 01:12:36.290
And then there's teaching your personal agent.

1145
01:12:37.030 --> 01:12:42.754
And there, there's a ton of prior art around, you know, what kind of memory should you use?

1146
01:12:43.054 --> 01:12:47.856
And actually, this is maybe the last thing I want to show you because, for example, OpenClaw has its own memory infrastructure.

1147
01:12:48.377 --> 01:13:00.664
And so if you hit agents, and let's say you want to use OpenClaw because you like how they do memory, you know, and you like how you may already have an OpenClaw container that's tuned to your preferences because you've been using it for a while.

1148
01:13:01.964 --> 01:13:12.007
And so you can actually give OpenClaw access to your Mac if you just hit the Agents tab, Connect MCP Client.

1149
01:13:12.447 --> 01:13:20.129
And I won't have you do this because it exposes a credential that anyone watching the podcast could use to access your Mac.

1150
01:13:20.169 --> 01:13:29.432
But if you hit Get a Static Credential, then that creates a bearer token that you can pass to any agent and give it access to the MCP server that you're running.

1151
01:13:30.032 --> 01:13:30.272
Gotcha.

1152
01:13:31.331 --> 01:13:31.571
Okay.

1153
01:13:31.731 --> 01:13:33.712
So really, so it is agent agnostic.

1154
01:13:33.732 --> 01:13:35.273
You can really plug in whatever here.

1155
01:13:35.914 --> 01:13:49.882
Plow is really, Plow Latch, I guess, specifically, is about being the bridge to your computer and being the adversarial agent and the rules engine for how that's going to work and how that's going to be safe.

1156
01:13:50.302 --> 01:13:50.482
Yep.

1157
01:13:50.742 --> 01:13:54.004
And we have like a, you know, bring your own agent.

1158
01:13:55.530 --> 01:13:58.071
For many users, they're going to want to just quickly try it.

1159
01:13:58.291 --> 01:14:02.733
And so we have kind of a starter container that you can easily spin up like you did here.

1160
01:14:02.913 --> 01:14:06.374
But for others, they already have their own agent infrastructure.

1161
01:14:06.955 --> 01:14:07.615
Okay, cool.

1162
01:14:07.755 --> 01:14:08.075
I love it.

1163
01:14:08.155 --> 01:14:09.756
Yeah, I mean, this feels really good.

1164
01:14:10.396 --> 01:14:15.138
I always think about usability and UX for these products.

1165
01:14:15.738 --> 01:14:17.419
And this is very nice.

1166
01:14:17.439 --> 01:14:18.339
It's easy to get started.

1167
01:14:18.679 --> 01:14:20.160
Instantly, I was doing useful things.

1168
01:14:21.210 --> 01:14:21.770
That's a big deal.

1169
01:14:21.991 --> 01:14:22.311
Cool.

1170
01:14:22.491 --> 01:14:22.931
All right.

1171
01:14:23.272 --> 01:14:24.733
We'll continue spending your money then.

1172
01:14:27.334 --> 01:14:28.615
Thank you for the investment.

1173
01:14:28.976 --> 01:14:29.476
You're welcome.

1174
01:14:29.616 --> 01:14:31.337
I'm super excited with where you're taking this.

1175
01:14:31.738 --> 01:14:38.042
You know, we invested, PWV invested for a reason, and it's because of this vision that you're playing out here.

1176
01:14:38.062 --> 01:14:38.923
I think it's great.

1177
01:14:39.263 --> 01:14:39.704
Keep going.

1178
01:14:39.984 --> 01:14:40.544
Thanks, Tom.

1179
01:14:41.265 --> 01:14:41.785
That was fun.

1180
01:14:42.325 --> 01:14:43.406
Thank you, Sam Plukas.

1181
01:14:43.787 --> 01:14:44.467
Always a pleasure.

1182
01:14:45.087 --> 01:14:45.748
Yeah, thanks, man.
