1
00:00:00,000 --> 00:00:02,440
 I found that very inspiring.

2
00:00:02,440 --> 00:00:03,360
 There we go.

3
00:00:03,360 --> 00:00:05,440
 Which FIPS thing?

4
00:00:05,440 --> 00:00:06,860
 There were like five FIPS.

5
00:00:06,860 --> 00:00:08,660
 Well, there were a few things.

6
00:00:08,660 --> 00:00:10,340
 I can't talk.

7
00:00:10,340 --> 00:00:13,220
 Like I said, I'm highly medicated.

8
00:00:13,220 --> 00:00:15,840
 So this will be all over the place.

9
00:00:15,840 --> 00:00:19,800
 I also took a bunch of painkillers and muscle relaxants.

10
00:00:19,800 --> 00:00:24,000
 Unlike our usual conversations that are so on topic.

11
00:00:24,000 --> 00:00:24,320
 Yeah.

12
00:00:24,320 --> 00:00:29,600
 No sidebars, no sidetracking ever.

13
00:00:30,000 --> 00:00:30,440
 Yeah.

14
00:00:30,440 --> 00:00:33,580
 No, the FIPS thing that I, I don't know.

15
00:00:33,580 --> 00:00:34,140
 You okay?

16
00:00:34,140 --> 00:00:35,320
 I found a.

17
00:00:35,320 --> 00:00:36,720
 I'm on drugs.

18
00:00:36,720 --> 00:00:41,060
 There were a bunch of things.

19
00:00:41,060 --> 00:00:48,500
 But the one that I found the most hopeful was just the 3D map.

20
00:00:48,500 --> 00:00:49,560
 Like the world map.

21
00:00:49,560 --> 00:00:50,140
 Yeah, yeah.

22
00:00:50,140 --> 00:00:53,020
 I didn't expect to see that many nodes.

23
00:00:53,020 --> 00:00:53,400
 Yeah.

24
00:00:53,400 --> 00:00:55,840
 That was very surprising.

25
00:00:55,840 --> 00:00:56,320
 Yeah.

26
00:00:56,320 --> 00:00:58,100
 That was very, very surprising.

27
00:00:58,780 --> 00:01:00,040
 Yeah, I was surprised too.

28
00:01:00,040 --> 00:01:05,020
 Someone mentioned that's probably because of Martti Malmi's Nostr VPN.

29
00:01:05,020 --> 00:01:05,660
 Mm-hmm.

30
00:01:05,660 --> 00:01:10,360
 Which basically automatically spins up a FIPS node or something like that as well.

31
00:01:10,360 --> 00:01:11,340
 Or is FIPS reachable?

32
00:01:12,780 --> 00:01:15,440
 And a bunch of people use the VPN.

33
00:01:15,440 --> 00:01:15,940
 Yeah.

34
00:01:15,940 --> 00:01:18,560
 But it was awesome to see.

35
00:01:18,560 --> 00:01:19,520
 Even if that's the case.

36
00:01:19,520 --> 00:01:22,000
 How many there are and how distributed it is.

37
00:01:22,000 --> 00:01:22,100
 Yeah.

38
00:01:22,100 --> 00:01:23,240
 Like it was all over the place.

39
00:01:23,240 --> 00:01:23,900
 Except China.

40
00:01:23,900 --> 00:01:27,860
 Maybe, you know, geolocated.

41
00:01:27,860 --> 00:01:31,860
 It's also like Japanese relays that just block us.

42
00:01:32,120 --> 00:01:35,500
 I think we have one Chinese FIPS node and it's...

43
00:01:35,500 --> 00:01:35,600
 Yeah.

44
00:01:35,600 --> 00:01:36,300
 Sure.

45
00:01:36,300 --> 00:01:36,700
 Yeah.

46
00:01:36,700 --> 00:01:37,180
 Yeah.

47
00:01:37,180 --> 00:01:39,460
 Fresh.

48
00:01:39,460 --> 00:01:40,940
 24 hours old.

49
00:01:40,940 --> 00:01:46,000
 100% of women participants at Sovereign Engineering run a FIPS node in China.

50
00:01:46,000 --> 00:01:48,220
 Men keep up.

51
00:01:48,220 --> 00:01:48,800
 Yeah.

52
00:01:50,420 --> 00:01:51,500
 Would you look at that?

53
00:01:51,500 --> 00:01:51,780
 Yeah.

54
00:01:51,780 --> 00:01:51,900
 See?

55
00:01:51,900 --> 00:01:53,200
 It's an omen.

56
00:01:53,200 --> 00:01:53,780
 100%.

57
00:01:53,780 --> 00:01:54,220
 Parachip.

58
00:01:54,220 --> 00:01:57,340
 Almost wireless, the other thing.

59
00:01:57,340 --> 00:02:01,740
 Probably running a few FIPS nodes in there.

60
00:02:01,740 --> 00:02:02,200
 Yeah.

61
00:02:02,200 --> 00:02:03,060
 Who knows?

62
00:02:03,060 --> 00:02:03,340
 Who knows?

63
00:02:03,340 --> 00:02:05,000
 There was a FIPS node on the parachip.

64
00:02:05,000 --> 00:02:08,560
 Like I remember Chandra doing some tests.

65
00:02:08,560 --> 00:02:08,900
 Of course.

66
00:02:08,900 --> 00:02:09,420
 Of course.

67
00:02:09,420 --> 00:02:10,160
 Of course.

68
00:02:10,160 --> 00:02:10,640
 Felix did that.

69
00:02:10,640 --> 00:02:12,540
 With antennas and things.

70
00:02:12,540 --> 00:02:13,820
 Yeah.

71
00:02:13,820 --> 00:02:16,280
 It's amazing that it's a thing and it's still going.

72
00:02:16,280 --> 00:02:18,100
 And it's actually...

73
00:02:19,160 --> 00:02:20,460
 Again, it's actually a thing now.

74
00:02:20,460 --> 00:02:20,760
 Yeah.

75
00:02:20,760 --> 00:02:23,140
 Like three chords ago, it was just an idea.

76
00:02:23,140 --> 00:02:26,340
 And now there's so much stuff happening.

77
00:02:26,340 --> 00:02:28,160
 People are building on it and it actually works.

78
00:02:28,160 --> 00:02:34,780
 Also, Zaza showed off Archipelago and the FIPS connection Archipelago.

79
00:02:34,780 --> 00:02:35,100
 Yeah.

80
00:02:35,100 --> 00:02:38,860
 And one thing that was amazing that he showed was like it made everything faster.

81
00:02:38,860 --> 00:02:40,560
 Yeah.

82
00:02:40,560 --> 00:02:41,940
 That's why I was so intrigued.

83
00:02:41,940 --> 00:02:47,260
 I've been going down this rabbit hole of strictness on interfaces.

84
00:02:47,900 --> 00:02:53,300
 Not like UI interfaces, but like programming interfaces and protocols and whatnot.

85
00:02:53,300 --> 00:03:00,340
 Lead to identifying...

86
00:03:00,340 --> 00:03:01,180
 I mean, that's what Rust.

87
00:03:01,180 --> 00:03:01,700
 You know?

88
00:03:01,700 --> 00:03:05,260
 Like why people like go to Rust so much.

89
00:03:05,260 --> 00:03:11,000
 The strictness of the thing reveals a bunch of issues before they become issues.

90
00:03:11,000 --> 00:03:12,940
 Where something more malleable will accept it.

91
00:03:13,240 --> 00:03:15,620
 We'll accept something inferior or something that's apart.

92
00:03:15,620 --> 00:03:18,640
 And I was very interested to see...

93
00:03:18,640 --> 00:03:21,360
 That's why I asked the follow-up.

94
00:03:21,360 --> 00:03:26,860
 Because one of the agents that did the thing said, oh, implementing FIPS...

95
00:03:26,860 --> 00:03:28,060
 Oh, I was saying that the agents...

96
00:03:28,060 --> 00:03:29,020
 Like the quote that he put?

97
00:03:29,020 --> 00:03:32,280
 I'm quoting agents, by the way.

98
00:03:32,280 --> 00:03:34,580
 FIPS made our sins obvious.

99
00:03:34,580 --> 00:03:35,400
 Yeah, there you go.

100
00:03:35,400 --> 00:03:36,260
 There you go.

101
00:03:36,260 --> 00:03:38,260
 And so they had to...

102
00:03:38,260 --> 00:03:44,980
 Like a bunch of things had to be fixed and done in a cleaner way so that it works over FIPS.

103
00:03:44,980 --> 00:03:46,820
 And that's what made everything faster.

104
00:03:47,600 --> 00:03:49,140
 And I find that so interesting.

105
00:03:49,140 --> 00:03:57,340
 I wanted to understand the mechanics of exactly what were the sins that were being accepted.

106
00:03:57,340 --> 00:03:57,840
 You know?

107
00:03:57,840 --> 00:04:01,500
 By something more malleable.

108
00:04:01,500 --> 00:04:02,800
 Like a protocol more malleable.

109
00:04:02,800 --> 00:04:07,320
 Yeah, it's a shame you can't plug into the session and ask yourself, right?

110
00:04:07,320 --> 00:04:07,800
 Yeah.

111
00:04:07,800 --> 00:04:09,400
 Yeah, that would be nice.

112
00:04:09,400 --> 00:04:09,720
 Soon.

113
00:04:11,160 --> 00:04:12,700
 I think we're going to talk about that a bit.

114
00:04:12,700 --> 00:04:20,340
 But yeah, I still have so many questions.

115
00:04:20,340 --> 00:04:23,360
 We did the workshop.

116
00:04:23,360 --> 00:04:24,320
 Was it the workshop?

117
00:04:24,320 --> 00:04:28,040
 No, on Tuesday we did the talk on FIPS.

118
00:04:28,040 --> 00:04:31,340
 And I kept barraging with questions.

119
00:04:31,340 --> 00:04:31,780
 Yeah.

120
00:04:31,780 --> 00:04:34,380
 Because I, you know, I'm new to FIPS.

121
00:04:34,380 --> 00:04:35,760
 I'm here to fix it.

122
00:04:35,760 --> 00:04:36,420
 I'm new to FIPS.

123
00:04:36,420 --> 00:04:37,120
 I'm here to fix it.

124
00:04:37,120 --> 00:04:39,820
 What will you fix?

125
00:04:39,820 --> 00:04:44,580
 What's your main, what's your main kind of, what's the main issue you have with FIPS?

126
00:04:44,580 --> 00:04:49,800
 The root node, I understand it doesn't like, you know, like it doesn't.

127
00:04:49,800 --> 00:04:50,840
 Doesn't have influence.

128
00:04:50,840 --> 00:04:52,820
 Doesn't have influence and all that.

129
00:04:52,820 --> 00:05:00,040
 Even though the root node itself doesn't have more power or anything within the network.

130
00:05:00,040 --> 00:05:09,320
 I think the concept of the root node packs a lot of, like they needed to introduce rate limiting.

131
00:05:09,480 --> 00:05:12,120
 Because of root node.

132
00:05:12,120 --> 00:05:12,620
 You mentioned that.

133
00:05:12,620 --> 00:05:13,620
 Right?

134
00:05:13,621 --> 00:05:14,621
 Yeah.

135
00:05:14,622 --> 00:05:18,140
 And the fact that you're introducing a rate limit means that there is a problem and you're

136
00:05:18,140 --> 00:05:19,900
 patching the design.

137
00:05:19,900 --> 00:05:24,000
 Which might be, you know, it might be how you need to solve it.

138
00:05:24,000 --> 00:05:25,540
 It might be that that is the right solution.

139
00:05:25,540 --> 00:05:30,420
 But the moment you're doing rate limits is because there isn't a cleaner solution to the

140
00:05:30,420 --> 00:05:30,560
 problem.

141
00:05:30,680 --> 00:05:32,820
 And now you need to protect the problem.

142
00:05:32,820 --> 00:05:33,820
 I see.

143
00:05:33,820 --> 00:05:34,240
 Yeah.

144
00:05:34,240 --> 00:05:42,040
 And I think there are a lot of, opens a lot of vectors of attack.

145
00:05:42,040 --> 00:05:48,560
 That's why, so the, my, one of my demos from yesterday was the, like, did you ever use the

146
00:05:48,560 --> 00:05:49,760
 polar liquid network?

147
00:05:50,240 --> 00:05:50,740
 Yeah.

148
00:05:50,740 --> 00:05:51,740
 Yeah.

149
00:05:51,741 --> 00:05:52,741
 Yeah.

150
00:05:52,742 --> 00:05:55,880
 I played around with it just to, you know, like build up the simulations, those kind of things.

151
00:05:55,880 --> 00:05:56,360
 Yeah.

152
00:05:56,360 --> 00:06:01,840
 So I, I like that project a lot because it, it, you know, it kind of allows you to play

153
00:06:01,840 --> 00:06:07,840
 with different points of the, like you can, you can simulate a very complex environment,

154
00:06:07,840 --> 00:06:10,740
 a very adversarial, adversarial environment and shit like that.

155
00:06:10,740 --> 00:06:14,600
 And I wanted to do the same thing for, for FIPS.

156
00:06:14,600 --> 00:06:19,660
 So that was my, that was my, one of my demos from yesterday.

157
00:06:19,660 --> 00:06:28,240
 And the whole idea was, I want to be able to, with an agent that understands FIPS very, very

158
00:06:28,240 --> 00:06:35,180
 well and understands all the existing pictures and all the existing stress test of the, of

159
00:06:35,180 --> 00:06:43,560
 of the, the concept of FIPS, um, that can simulate scenarios and I can like direct it to, to poke

160
00:06:43,560 --> 00:06:50,460
 on the different scenarios, you know, like let's spin up one node that will become the

161
00:06:50,460 --> 00:06:58,420
 root and one new node every whatever, five seconds attaches to that one node and that new

162
00:06:58,420 --> 00:06:59,960
 node becomes a root constantly.

163
00:06:59,960 --> 00:07:00,500
 Yeah.

164
00:07:00,500 --> 00:07:00,740
 Yeah.

165
00:07:00,740 --> 00:07:04,200
 Um, so what happens there, you know, like all these, all these different scenarios.

166
00:07:04,200 --> 00:07:04,720
 Yeah.

167
00:07:04,980 --> 00:07:09,600
 Um, because you have to mind the end pub, um, it also gets harder over time.

168
00:07:09,600 --> 00:07:10,520
 This attack, right.

169
00:07:10,520 --> 00:07:15,780
 Introducing yourself as a new node unless I mean, you can connect and disconnect and those

170
00:07:15,780 --> 00:07:16,300
 kinds of things.

171
00:07:16,300 --> 00:07:17,720
 You can do a bunch of things.

172
00:07:17,720 --> 00:07:21,500
 That's the other thing that even if you are not the root node, just your presence.

173
00:07:21,500 --> 00:07:21,960
 Yeah.

174
00:07:21,960 --> 00:07:24,940
 Requires your pub key being distributed through the network.

175
00:07:24,940 --> 00:07:29,820
 And I think that was the, that was the point that Arjen tried to make that even if it's

176
00:07:29,820 --> 00:07:32,820
 the root node, you don't disrupt the whole network.

177
00:07:32,820 --> 00:07:34,780
 You, you like.

178
00:07:34,780 --> 00:07:37,660
 Because you, you care mostly about what's around you.

179
00:07:37,660 --> 00:07:40,720
 Let's say you're on the most right-hand side of the tree.

180
00:07:40,720 --> 00:07:42,300
 Nothing happens there.

181
00:07:42,300 --> 00:07:43,540
 You know?

182
00:07:43,540 --> 00:07:43,800
 Yeah.

183
00:07:43,800 --> 00:07:49,620
 So you don't even, you don't even realize that something is reorganizing way above you.

184
00:07:49,620 --> 00:07:55,480
 And same for like, if you're way high up, if something reorganizes, like if a new leaf

185
00:07:55,480 --> 00:07:56,620
 attaches, you don't even.

186
00:07:57,120 --> 00:07:57,500
 Yeah.

187
00:07:57,500 --> 00:08:04,240
 But if you're connected, if you're connected with, if it's the same FIPS network and you

188
00:08:04,240 --> 00:08:09,680
 need to assess this pub key might be the root, right?

189
00:08:10,000 --> 00:08:15,940
 And then you need to distribute the pub key itself throughout the entire thing.

190
00:08:15,940 --> 00:08:19,680
 I mean, I guess you could, I don't know if they already do this.

191
00:08:19,680 --> 00:08:20,060
 No, you don't.

192
00:08:20,060 --> 00:08:20,860
 Because you don't propagate.

193
00:08:20,860 --> 00:08:21,360
 You don't.

194
00:08:21,360 --> 00:08:21,880
 You don't.

195
00:08:21,880 --> 00:08:22,880
 You absolutely don't.

196
00:08:22,880 --> 00:08:23,880
 You don't.

197
00:08:24,000 --> 00:08:28,780
 You need to update the bloom filters, but the, the, you, it's just about building up a hierarchy

198
00:08:28,780 --> 00:08:31,320
 and it's, it's about the nodes around you.

199
00:08:31,320 --> 00:08:32,920
 Like what's the next one?

200
00:08:32,920 --> 00:08:35,080
 Where, where does the, it's, it's all about directionality.

201
00:08:35,080 --> 00:08:36,720
 Does it need to go up or down?

202
00:08:36,720 --> 00:08:37,160
 Right.

203
00:08:37,160 --> 00:08:47,140
 And so, so if, if you have a parent already and the new node is way above that parent,

204
00:08:47,140 --> 00:08:49,440
 like you don't care about this one.

205
00:08:49,440 --> 00:08:51,140
 But you don't see the pub key.

206
00:08:54,000 --> 00:08:56,380
 But you don't need to.

207
00:08:56,380 --> 00:08:59,120
 It's like, it's always, it's always about next hub.

208
00:08:59,120 --> 00:09:01,980
 Like what's, where does the traffic need to flow up or down?

209
00:09:01,980 --> 00:09:12,300
 But where do you, how do you see the, how do you know in which direction if you haven't

210
00:09:12,300 --> 00:09:17,980
 updated your bloom filters because you haven't seen the pub key?

211
00:09:17,980 --> 00:09:23,480
 Like you haven't seen, you don't know that there is this new node and the, your route to this

212
00:09:23,480 --> 00:09:25,360
 you know this, in this direction.

213
00:09:25,360 --> 00:09:27,240
 You know what I mean?

214
00:09:28,940 --> 00:09:32,320
 Yeah, no, I'm, yeah.

215
00:09:32,320 --> 00:09:33,320
 Kind of.

216
00:09:33,320 --> 00:09:34,320
 Kind of.

217
00:09:34,321 --> 00:09:36,540
 This is kind of why I made like these things.

218
00:09:36,540 --> 00:09:39,040
 So to be able to simulate all these things and then ask.

219
00:09:39,040 --> 00:09:40,280
 The simulator will tell us.

220
00:09:40,280 --> 00:09:40,580
 Yeah.

221
00:09:40,580 --> 00:09:43,480
 The agents will figure it out.

222
00:09:47,320 --> 00:09:48,320
 Yeah.

223
00:09:48,320 --> 00:09:49,320
 Yeah.

224
00:09:49,321 --> 00:09:56,080
 It's, I think also something that Jonathan mentioned in some sense, like it's not meant and can't

225
00:09:56,080 --> 00:09:59,120
 be the solution to absolutely every scenario.

226
00:09:59,120 --> 00:09:59,540
 Yeah.

227
00:09:59,540 --> 00:10:01,160
 And it will never be perfect.

228
00:10:01,161 --> 00:10:10,400
 It will never be perfect and kind of, you know, will patch the issues that we run into as we run into them as the network scales.

229
00:10:10,400 --> 00:10:20,520
 That's kind of another thing that inspires me a lot about the concept of FIPS is that if you try to make it like a replacement for the whole internet,

230
00:10:20,520 --> 00:10:24,020
 like everything runs on, it's like one FIPS network.

231
00:10:24,020 --> 00:10:24,260
 Yeah.

232
00:10:24,260 --> 00:10:25,740
 It makes no sense.

233
00:10:25,740 --> 00:10:26,420
 It breaks.

234
00:10:27,040 --> 00:10:30,140
 So in that way, it's exactly the same concept as Nostr.

235
00:10:30,140 --> 00:10:31,780
 It is literally the same.

236
00:10:31,780 --> 00:10:36,540
 It leans into locality and you want to try to build up small local networks.

237
00:10:36,540 --> 00:10:37,220
 It's so much better.

238
00:10:37,220 --> 00:10:50,340
 It's much better suited for the local problem and just meshing organically than to be like this monster, one big thing.

239
00:10:50,340 --> 00:10:50,720
 Yeah.

240
00:10:50,720 --> 00:10:55,040
 Which is, yeah, again, it is the same concept of Nostr.

241
00:10:55,140 --> 00:11:05,360
 And I think it's one of like, from a spiritual standpoint, is one of the most interesting things that is behind this concept of local first and Nostr.

242
00:11:05,360 --> 00:11:07,680
 And it's something that takes a while to get used to.

243
00:11:07,780 --> 00:11:15,920
 And I feel like a lot of people still have a hard time wrapping their head around, you know, there is no global.

244
00:11:15,920 --> 00:11:16,260
 Yeah.

245
00:11:16,260 --> 00:11:17,740
 First episode, I think.

246
00:11:17,740 --> 00:11:18,000
 Yeah.

247
00:11:18,000 --> 00:11:18,960
 Because, you know, there's no global.

248
00:11:18,960 --> 00:11:19,960
 Yeah.

249
00:11:19,961 --> 00:11:20,961
 It was.

250
00:11:20,962 --> 00:11:24,580
 And here we are, you know, like years later now.

251
00:11:24,580 --> 00:11:27,480
 Many months later.

252
00:11:27,480 --> 00:11:40,320
 And there are still people that try to build Nostr apps with a global view and just can't really accept the fact that it's an anti-pattern, basically.

253
00:11:40,320 --> 00:11:40,660
 Yeah.

254
00:11:40,660 --> 00:11:40,980
 In the Nostr world.

255
00:11:40,980 --> 00:11:43,440
 I mean, you're fighting the protocol.

256
00:11:43,440 --> 00:11:44,400
 You're fighting the design.

257
00:11:44,400 --> 00:11:44,620
 Yeah.

258
00:11:44,620 --> 00:11:47,700
 It's the same thing with MLS and encryption, right?

259
00:11:47,700 --> 00:11:48,020
 Yeah.

260
00:11:48,020 --> 00:11:52,260
 It's, the environment is fighting what you're trying to do.

261
00:11:52,620 --> 00:11:52,840
 Yeah.

262
00:11:52,840 --> 00:12:06,580
 And, and I think, I think, um, um, what we saw on Tuesday with the Tuesday talks, what Dimitri presented is, it was like a comb, the culmination of anti-patterns.

263
00:12:06,580 --> 00:12:07,800
 All of them.

264
00:12:07,800 --> 00:12:08,920
 In the sense of.

265
00:12:08,920 --> 00:12:09,460
 All of them.

266
00:12:09,460 --> 00:12:16,860
 Trying, trying to, to build a really big app, like an app, like an app, like an everything app, you know, like, like Musk tries to do.

267
00:12:16,860 --> 00:12:17,160
 Yeah.

268
00:12:17,160 --> 00:12:22,700
 Or like the, WeChat and so on, the Chinese apps, like every single vertical, build all of that out.

269
00:12:22,700 --> 00:12:27,660
 And, um, Nostr just has no place at all with this.

270
00:12:27,660 --> 00:12:29,080
 It don't, doesn't help you at all.

271
00:12:29,080 --> 00:12:37,460
 And by design, the thing needs a global view and needs, you know, like, it is a centrally controlled system.

272
00:12:37,460 --> 00:12:38,760
 I mean, and that's the point of WeChat.

273
00:12:38,760 --> 00:12:41,980
 That's the point of the everything app that Musk wants to build.

274
00:12:41,980 --> 00:12:57,580
 But it's interesting how pretty much every single attempt that has been made of building something like that on Nostr has fallen for almost 100% union, like intersection.

275
00:12:57,580 --> 00:13:03,660
 Uh, the, the same faults of, well, the, the, the NSEC is kind of scary.

276
00:13:03,660 --> 00:13:08,800
 So we're going to keep it from you and you're not going to see anything.

277
00:13:08,800 --> 00:13:09,300
 Yeah.

278
00:13:09,300 --> 00:13:19,920
 And actually if I publish my, uh, my users, which always irks me, the idea of my users.

279
00:13:19,920 --> 00:13:20,420
 Yeah.

280
00:13:20,420 --> 00:13:20,500
 Yeah.

281
00:13:20,500 --> 00:13:21,960
 Not people.

282
00:13:21,960 --> 00:13:22,460
 Yeah.

283
00:13:22,460 --> 00:13:22,960
 Yeah.

284
00:13:22,960 --> 00:13:23,460
 Yeah.

285
00:13:23,460 --> 00:13:26,100
 Not people that use this app right now.

286
00:13:26,100 --> 00:13:26,460
 Yeah.

287
00:13:26,460 --> 00:13:33,060
 Or some other app, um, then it's like my prisoners, my prisoners, my inmates, exactly.

288
00:13:33,060 --> 00:13:33,900
 Those are my inmates.

289
00:13:33,900 --> 00:13:43,460
 And that's, that's, it, it comes up every single time how they, uh, they always err on the side of, oh, it's too soon to publish their data on Nostr.

290
00:13:43,460 --> 00:13:54,420
 So I'm going to grab data from Nostr and I'm just going to serve it into my database because that way it's also faster, you know, it's, it's more reliable and I can, you know, like do these algorithms and sort these things.

291
00:13:54,420 --> 00:14:07,100
 And, and every single time it's the exact same mindset, which is again, complete polar opposite of what Nostr wants to do.

292
00:14:07,100 --> 00:14:08,660
 And it's not optimized for that kind of thing.

293
00:14:08,660 --> 00:14:08,900
 Yeah.

294
00:14:08,900 --> 00:14:18,620
 I mean, that's why I, on the, on the first day I talked about kind of, and on the second one, uh, even more in particular, like what does it mean to build something in the spirit of Bitcoin?

295
00:14:18,620 --> 00:14:20,980
 What does it mean to build something in the spirit of Nostr?

296
00:14:20,980 --> 00:14:29,460
 And it's all about kind of what, what does your value structure look like and what kind of sacrifices are you willing to make?

297
00:14:29,460 --> 00:14:36,420
 And would you just describe these people and especially product managers and product people or Silicon Valley people, they mostly come from that crowd.

298
00:14:36,420 --> 00:14:46,020
 And it's, it's like most people think like this, you know, like we are, we've been trained over the decades to think like this and it's your, your, your, your sacrificing user freedom,

299
00:14:46,020 --> 00:14:53,220
 either for the sake of convenience or for the sake of apparent speed or whatever, like you said, you know, it's faster, it's faster.

300
00:14:53,220 --> 00:14:58,380
 If I serve it from a central database and all those kinds of things and you know, it's way safer and better for the users.

301
00:14:58,380 --> 00:15:05,980
 If I take care of all the cryptographic key material and you know, I give them username, passwords and like password reset emails and all those kinds of stuff.

302
00:15:05,980 --> 00:15:18,940
 But you're sacrificing something and you're, you're, and, and, and not only for the users, but also for yourself, you know, and I always like to, to point out then, and we see this now with a bit chat is the most recent example, right?

303
00:15:18,940 --> 00:15:37,940
 Like if you are getting big and successful enough in your, with your disruptive technology, someone with a very large stick, either like Google or Apple or the government or like, you know, a, a, a, a quasi governmental entity will come knocking at your door and, and shut you down.

304
00:15:37,940 --> 00:15:38,940
 Yeah.

305
00:15:38,940 --> 00:15:41,940
 Because you hold all the user data and you and so on and so forth.

306
00:15:41,940 --> 00:15:42,940
 Yeah.

307
00:15:42,940 --> 00:15:44,940
 Or shut you down or even worse.

308
00:15:44,940 --> 00:15:46,940
 Bend you to their will.

309
00:15:46,940 --> 00:15:47,940
 Yeah.

310
00:15:47,940 --> 00:15:48,940
 Or imprison you.

311
00:15:48,940 --> 00:15:49,940
 I mean, we saw this.

312
00:15:49,940 --> 00:15:54,940
 Or imprison you or turn you into, I'm building this thing for freedom and blah, blah, blah, but I'm taking this one shortcut.

313
00:15:54,940 --> 00:15:58,940
 And all of a sudden you are literally working for the opposite of what you, what you intend.

314
00:15:58,940 --> 00:15:59,940
 Yeah.

315
00:15:59,940 --> 00:16:02,940
 And you, you, you, you, you become an attack factor yourself.

316
00:16:02,940 --> 00:16:05,940
 You come, you come, you become a single point of failure and all those kinds of things.

317
00:16:05,940 --> 00:16:08,940
 And so, yeah, I think it's all about the underlying value structure.

318
00:16:08,940 --> 00:16:09,940
 What do you, what do you actually want to build?

319
00:16:09,940 --> 00:16:10,940
 What's your goal?

320
00:16:10,940 --> 00:16:11,940
 Yeah.

321
00:16:11,940 --> 00:16:16,940
 Do you want to, you know, help make the internet a more free and open place?

322
00:16:16,940 --> 00:16:34,940
 Or do you want to get rich of, you know, whatever squeezing users and, and build a product that, that somehow makes money just like, you know, we made money in the web 2.0 era and in the, like, as it is still now on the Silicon Valley side, you bring everyone in, you lock everyone in, you lock everyone in, you lock them in.

323
00:16:34,940 --> 00:16:36,940
 You build a really nice prison.

324
00:16:36,940 --> 00:16:37,940
 You don't let anyone leave.

325
00:16:37,940 --> 00:16:42,940
 You make everyone either addicted or somehow otherwise reliant upon your service.

326
00:16:42,940 --> 00:16:43,940
 And then you start to squeeze them.

327
00:16:43,940 --> 00:16:45,940
 And that's how you get money.

328
00:16:45,940 --> 00:16:51,940
 In a way, in a way it's like, it's like a different version of the Sukos triangle.

329
00:16:51,940 --> 00:16:55,940
 Everybody will also try to bend it to flatten it.

330
00:16:55,940 --> 00:16:56,940
 Yeah.

331
00:16:56,940 --> 00:16:57,940
 Yeah.

332
00:16:57,940 --> 00:16:58,940
 We, we even had that.

333
00:16:58,940 --> 00:17:02,940
 I tried, I tried to, to, to draw it on the, we had the triangle cohort.

334
00:17:02,940 --> 00:17:03,940
 Yeah.

335
00:17:03,940 --> 00:17:09,940
 It was basically, you know, like make money and, and, and, uh, you know, build freedom tank.

336
00:17:09,940 --> 00:17:11,940
 And like, there was something like that.

337
00:17:11,940 --> 00:17:14,940
 Like self summon tank, make money.

338
00:17:14,940 --> 00:17:16,940
 Like, and there was a third one.

339
00:17:16,940 --> 00:17:17,940
 I don't remember it anymore.

340
00:17:17,940 --> 00:17:18,940
 Good UX.

341
00:17:18,940 --> 00:17:19,940
 I think was the third one.

342
00:17:19,940 --> 00:17:20,940
 It was like pick two.

343
00:17:20,940 --> 00:17:21,940
 Something like that.

344
00:17:21,940 --> 00:17:28,940
 But yeah, it is, it is, uh, again, it's, it's all about the trade offs.

345
00:17:28,940 --> 00:17:29,940
 You can't, you can't do everything.

346
00:17:29,940 --> 00:17:36,940
 And I think what, what I like about the Nostr side of things, the FIP side of things, I thought

347
00:17:36,940 --> 00:17:43,940
 about this today in the morning, uh, actually, because I, um, what's his name?

348
00:17:43,940 --> 00:17:44,940
 What's his handle?

349
00:17:44,940 --> 00:17:45,940
 Is it PirateHash?

350
00:17:45,940 --> 00:17:47,940
 SomethingHash, one of the participants.

351
00:17:47,940 --> 00:17:49,940
 And I'll, I'll speak to him later today.

352
00:17:49,940 --> 00:17:56,940
 And he, he mentioned that he listened to every single episode of No Solutions.

353
00:17:56,940 --> 00:17:59,940
 And I was extremely surprised because I was like, not, not, not even I do that.

354
00:17:59,940 --> 00:18:02,940
 You know, there's, there literally is a person that listened to every single thing.

355
00:18:02,940 --> 00:18:03,940
 Insane.

356
00:18:03,940 --> 00:18:08,940
 So, so by definition, he's an insane person, but he mentioned it was super helpful for him.

357
00:18:08,940 --> 00:18:11,940
 He comes from a data science background.

358
00:18:11,940 --> 00:18:12,940
 He's very new to us.

359
00:18:12,940 --> 00:18:13,940
 He's very new to all those kinds of things.

360
00:18:13,940 --> 00:18:18,940
 And he mentioned all these conversations were super helpful to help him get started, wrap

361
00:18:18,940 --> 00:18:21,940
 his head around the things and so on.

362
00:18:21,940 --> 00:18:27,940
 And, and my, my thing was like, everyone like, that's amazing.

363
00:18:27,940 --> 00:18:33,940
 Even if it's like 20 people, 50 people, whatever, a hundred people, when do you have the opportunity

364
00:18:33,940 --> 00:18:35,940
 to address a room of a hundred people?

365
00:18:35,940 --> 00:18:36,940
 And they really listen.

366
00:18:36,940 --> 00:18:37,940
 Absolutely.

367
00:18:37,940 --> 00:18:39,940
 That's an amazing thing.

368
00:18:39,940 --> 00:18:42,940
 And they really listen, you know, like that never happens.

369
00:18:42,940 --> 00:18:43,940
 No one has this opportunity.

370
00:18:43,940 --> 00:18:44,940
 And especially, yeah.

371
00:18:44,940 --> 00:18:50,940
 And, and back to, back to the local mesh networks, local Nostar side of things.

372
00:18:50,940 --> 00:18:54,940
 The, what I always loved about Nostar is like, it was very apparent to me.

373
00:18:54,940 --> 00:18:56,940
 You don't need to build an app that's used by like a billion people.

374
00:18:56,940 --> 00:18:57,940
 Yeah.

375
00:18:57,940 --> 00:18:58,940
 A hundred percent.

376
00:18:58,940 --> 00:19:01,940
 You build something that's useful for a couple hundred people or, or a couple thousand

377
00:19:01,940 --> 00:19:02,940
 people.

378
00:19:02,940 --> 00:19:03,940
 That's amazing.

379
00:19:03,940 --> 00:19:04,940
 Yeah.

380
00:19:04,940 --> 00:19:05,940
 That's amazing.

381
00:19:05,940 --> 00:19:06,940
 Like what else, what else do you want?

382
00:19:06,940 --> 00:19:12,940
 And I, I, I still, I still hold on to the belief that if this thing is useful enough, some

383
00:19:12,940 --> 00:19:18,940
 people will also pay money for it and you don't need millions or billions of users.

384
00:19:18,940 --> 00:19:19,940
 We have real money flowing through the system.

385
00:19:19,940 --> 00:19:22,940
 It's very easy to move money around.

386
00:19:22,940 --> 00:19:27,940
 And it's, it's like, you know, like the, the concept of, I don't know the number anymore,

387
00:19:27,940 --> 00:19:29,940
 but like a thousand super fans or something like that.

388
00:19:29,940 --> 00:19:30,940
 Yeah.

389
00:19:30,940 --> 00:19:31,940
 Two fans.

390
00:19:31,940 --> 00:19:37,940
 If you have a thousand users that are, that are like really excited, willing to pay, that's

391
00:19:37,940 --> 00:19:38,940
 all you need.

392
00:19:38,940 --> 00:19:39,940
 Yeah.

393
00:19:39,940 --> 00:19:40,940
 Like you don't need anything else.

394
00:19:40,940 --> 00:19:42,940
 You don't need to take on Google or Facebook or whatever.

395
00:19:42,940 --> 00:19:43,940
 And so.

396
00:19:43,940 --> 00:19:44,940
 Yeah.

397
00:19:44,940 --> 00:19:49,940
 I think it comes a little bit, it's, it's, it's another shape of the same mindset of you

398
00:19:49,940 --> 00:19:56,940
 come at Nostar or Bitcoin with all your mental baggage of how to do the thing, right?

399
00:19:56,940 --> 00:19:57,940
 Yeah.

400
00:19:57,940 --> 00:20:01,940
 We see this with, with agents when they try to build Nostar things and they, oh, rest or,

401
00:20:01,941 --> 00:20:04,960
 things and they oh rest or you know yeah how are we going to know that this event is real there's a

402
00:20:04,960 --> 00:20:16,140
 signature and and and this idea of how you make something that is useful for the past what 20 25

403
00:20:16,140 --> 00:20:22,220
 years the only barometer if you make something that is that is useful is if billions of people

404
00:20:22,220 --> 00:20:29,120
 use it otherwise you failed right um and it i mean yeah that's the silicon valley measurement

405
00:20:29,120 --> 00:20:36,300
 it is it is but but but but it it became um it became the standard throughout everything

406
00:20:36,300 --> 00:20:40,220
 especially everything that is software everything that is information everything that is yeah that's

407
00:20:40,220 --> 00:20:43,700
 true you see it on github as well unless you don't have like a hundred thousand stars like

408
00:20:43,700 --> 00:20:48,000
 your project is nothing yeah yeah exactly exactly yeah yeah

409
00:20:48,000 --> 00:20:58,240
 yeah and one of the things that i because it's really hard to i think to shake

410
00:20:58,240 --> 00:21:10,060
 that mental model in all its different forms like it creeps in um and one of the things that

411
00:21:10,060 --> 00:21:16,760
 in a way kind of surprised me um

412
00:21:16,760 --> 00:21:25,680
 is bus the the project that block released yeah we should we should dig into that so that's basically

413
00:21:25,680 --> 00:21:36,660
 along the lines of 10x and especially along the lines of the 10x relaunch which is mosaico

414
00:21:36,660 --> 00:21:45,400
 and um we talked about this briefly a couple days ago but to me the most interesting thing about it

415
00:21:45,400 --> 00:21:52,700
 is that everyone is landing on the same kind of solution absolutely the multi-agent world how to

416
00:21:52,700 --> 00:21:57,720
 communicate how to collaborate problem and that has me really excited because that means that

417
00:21:57,720 --> 00:22:05,280
 um if if multiple people independently land on the same thing like we're onto something we're not we're

418
00:22:05,280 --> 00:22:09,320
 not we're not going in the wrong direction completely delusional we're not completely delusional yeah

419
00:22:09,320 --> 00:22:16,680
 and it's actually interesting that um also pattern that you observe throughout is that

420
00:22:16,680 --> 00:22:27,420
 you see people that are not aware of like the let's call it our discipline or our corner of the internet

421
00:22:27,420 --> 00:22:34,420
 um our our our um special form of psychosis exactly we should also dig into that actually

422
00:22:34,420 --> 00:22:44,440
 um i want to pick your brain on that um that many people that have completely different values

423
00:22:44,440 --> 00:22:53,660
 optimizing for completely different things and they are arriving at similar observations of the nature

424
00:22:53,660 --> 00:23:00,200
 of the problem of um agentic coding and just the ai you know i think just coding is you know like

425
00:23:00,200 --> 00:23:10,920
 the first um broadly adopted uh completely industry disrupting um case but it's going to be the same

426
00:23:10,920 --> 00:23:18,840
 throughout many other things right so we are just like the guinea pigs in a way um but you see

427
00:23:18,840 --> 00:23:28,560
 open ai again world coin it's like completely different values opposite values yeah uh and they arrive at

428
00:23:28,560 --> 00:23:37,360
 the same observations of what is the what is the limiting factor i think the limiting factor in

429
00:23:37,360 --> 00:23:46,720
 in in in in by coding or in uh agentic development whatever um has become very clear

430
00:23:46,720 --> 00:23:55,120
 for at least six maybe nine months that it's not the model anymore it's it's because it's become very

431
00:23:55,120 --> 00:24:01,120
 obvious that it's memory and communication yeah exactly exactly it's everything that is around the model

432
00:24:01,120 --> 00:24:06,800
 if the model if the model if the model becomes doesn't uh progress anymore all the models are this

433
00:24:06,800 --> 00:24:17,280
 is the best there will ever be there's still massive growth in terms of autonomy and the usefulness of the

434
00:24:17,280 --> 00:24:24,000
 the system um and open ai anthropic google

435
00:24:26,960 --> 00:24:35,520
 they all keep arriving at the same observation of what the problem is or parts of the problem and very

436
00:24:35,520 --> 00:24:43,760
 different approaches to to how to solve it but identity is something that they keep going and where

437
00:24:43,760 --> 00:24:48,880
 is the identity what is the whole thing about the orbs is like prove your humanness yeah exactly and it

438
00:24:48,880 --> 00:24:54,000
 it relates to identity we want to know that we're interfacing with a human and every everyone else will

439
00:24:54,000 --> 00:25:00,000
 be declared an agent basically and uh we are obviously i mean we talked about this a lot in the past

440
00:25:00,480 --> 00:25:08,000
 um the nostor flavored solution to the problem is a combination of uh web of trust and proof of work

441
00:25:08,000 --> 00:25:17,520
 and realness basically is defined by by a mixture of those metrics in some sense and of course this

442
00:25:17,520 --> 00:25:22,800
 relates also to to age and you can do like bitcoin based time stamping all those kind of things

443
00:25:23,360 --> 00:25:27,920
 and i mean we know this also from other decentralized systems like joint market where you put up a

444
00:25:27,920 --> 00:25:33,280
 fidelity bond that you prove realness future realness future seriousness in that way like if i time

445
00:25:33,280 --> 00:25:38,640
 lock one bitcoin for five years so i'm a serious actor i'm not a i'm not i'm not part of a million

446
00:25:38,640 --> 00:25:44,640
 bot bot farm you know like that's at least what you can signal and yeah everyone is trying to at least

447
00:25:44,640 --> 00:25:51,040
 everyone discovered the same problems and the solution space to it is very very different because the trade-offs

448
00:25:52,560 --> 00:25:57,280
 that people are willing to make are very different because the underlying value structure is very

449
00:25:57,280 --> 00:26:02,000
 different like you mentioned worldcoin has a different value structure than we have and open ai and

450
00:26:02,000 --> 00:26:08,480
 so on yeah and also the incentives right sure sure they observe the right problem and they are

451
00:26:08,480 --> 00:26:13,920
 incentivized to solve it in a way that puts them at the center of the thing sure and they have to do

452
00:26:13,920 --> 00:26:18,080
 that in a way they're a company they're probably a traded company and so on they have to you know

453
00:26:18,080 --> 00:26:22,320
 optimize for shareholder value and value capture and all those kind of things so so

454
00:26:22,320 --> 00:26:28,160
 that's not very surprising but let's get into buzz a little bit and also like maybe as a first

455
00:26:28,160 --> 00:26:34,320
 step like really drill into buzz and explain how it works and what it is and what it uses underneath

456
00:26:34,320 --> 00:26:39,760
 and so on like how does it use nostr what are the trade-offs made and so on and and then after that

457
00:26:39,760 --> 00:26:48,160
 maybe let's get into your 10x rebuilt into mosaico and what you discovered along the way what you learned

458
00:26:48,160 --> 00:26:54,560
 about um trying to build out 10x for the last year and a half or something yeah jesus christ

459
00:26:54,560 --> 00:27:00,720
 um yeah so yeah buzz was launched two days ago three days ago a couple of days ago four days ago

460
00:27:00,720 --> 00:27:07,200
 something like that and obviously jack um uh yeah got it done pushed it out lots of excitement around

461
00:27:07,200 --> 00:27:11,920
 it i think it's number one trending on github right now is it yeah something like that on in some time

462
00:27:11,920 --> 00:27:22,080
 frame at least wow um yeah uh uh derek ross nostr ceo made me aware of that so what is buzz how does it

463
00:27:22,080 --> 00:27:30,080
 work how does it make use of nostr um so buzz is and back to what i said before that it kind of surprised

464
00:27:30,080 --> 00:27:39,120
 me so buzz is a bunch of things um which is kind of where i where i had landed uh with 10x before i killed it

465
00:27:39,120 --> 00:27:53,440
 um so it's uh it's a nostr relay it's um it's it's it's a way to run um different harnesses um via via acp

466
00:27:53,440 --> 00:28:02,960
 basically um so you you you launch whatever agent like uh goose or or um Claude Code or codex whatever it

467
00:28:02,960 --> 00:28:13,440
 might be and and it shares one relay uh which is a need 29 relay as um basically as a point of

468
00:28:13,440 --> 00:28:19,600
 communication yeah so you can think of it from the old world as a discord server right yeah exactly exactly

469
00:28:19,600 --> 00:28:30,240
 yeah so the uh so each agent um in a very loosely way of using that word agent uh each agent gets uh

470
00:28:30,240 --> 00:28:36,720
 gets a pub key so your you interface with the agents and with other people so it's like slack

471
00:28:36,720 --> 00:28:46,400
 but with agents in there um and you can you can add one one agent and get it to do something you

472
00:28:47,680 --> 00:28:55,600
 it's like a different way of collaborating but also it's uh uh it has a like a github replacement

473
00:28:55,600 --> 00:29:05,040
 within bus itself so it does issue tracking it does it does all all the things and it has also

474
00:29:05,040 --> 00:29:13,840
 you know like crunch ups and whatnot to uh you know drain drain this thing right drain like this uh

475
00:29:13,840 --> 00:29:23,920
 this backlog of issues um so the the thing that kind of surprised me is that it's so many things you know

476
00:29:23,920 --> 00:29:33,440
 which is what happened to me with 10x um that it it started eating it started requiring everything

477
00:29:33,440 --> 00:29:36,400
 adjacent to the problem because nothing

478
00:29:38,720 --> 00:29:45,040
 all the harnesses uh not not so much anymore there is a few standards now but all the harnesses used to

479
00:29:45,040 --> 00:29:52,560
 fight you on no we want users to interface with our product you know yeah we want anthropic users to

480
00:29:52,560 --> 00:30:01,920
 use plot yeah not the not sonnet model yeah you know um the i mean i need the same with with with

481
00:30:01,921 --> 00:30:17,740
 I mean, it's the same with GitHub, with a bunch of things where, so for example, in my case, since I started rebuilding all the things of 10x into more modular pieces, I decided to be more pragmatic and just use GitHub.

482
00:30:18,440 --> 00:30:30,660
 And all of a sudden, I realized that, wait, now the agents are commenting on GitHub or publishing PRs as myself because they cannot do it with their pubkey.

483
00:30:30,660 --> 00:30:36,000
 So now I have to create a second account on GitHub, which they all share, right?

484
00:30:36,000 --> 00:30:36,400
 Yeah.

485
00:30:36,400 --> 00:30:39,840
 But you can use different names, I think.

486
00:30:39,840 --> 00:30:44,240
 You can do commits with different identities or with different emails, right?

487
00:30:44,240 --> 00:30:44,660
 Exactly.

488
00:30:44,660 --> 00:30:49,240
 But say, for example, one agent creates a PR.

489
00:30:49,240 --> 00:30:54,820
 The PR must be opened by someone from a GitHub account.

490
00:30:54,820 --> 00:30:55,120
 Yeah.

491
00:30:55,120 --> 00:31:04,400
 And the PR, it's either under my account or under one account that they all share.

492
00:31:04,400 --> 00:31:12,580
 So just conceptually, it's very obviously starts to make the lines very unclear, you know?

493
00:31:12,720 --> 00:31:13,740
 Like, who did this?

494
00:31:13,740 --> 00:31:14,260
 Why?

495
00:31:14,260 --> 00:31:15,700
 Where's the provenance of this?

496
00:31:15,700 --> 00:31:21,760
 Whereas a PR that is an event, it's very clear, it's signed, right?

497
00:31:21,760 --> 00:31:21,980
 Yeah.

498
00:31:21,980 --> 00:31:23,980
 It's very obvious where it came from and what happened.

499
00:31:23,980 --> 00:31:24,320
 Yeah.

500
00:31:24,320 --> 00:31:25,280
 It's very easy.

501
00:31:25,280 --> 00:31:30,180
 If you do everything Nostr native, it's very easy to associate and have a paper trail,

502
00:31:30,700 --> 00:31:34,620
 a cryptographically provable paper trail because everything is signed and everything is linked

503
00:31:34,620 --> 00:31:34,960
 together.

504
00:31:34,960 --> 00:31:35,420
 Exactly.

505
00:31:35,420 --> 00:31:51,420
 The thing that I think that Buzz created, it kind of validates what I think everybody has

506
00:31:51,420 --> 00:32:00,020
 been feeling in a way that you're using for most people that are doing any kind of more sophisticated

507
00:32:00,020 --> 00:32:05,360
 development or more sophisticated environment.

508
00:32:05,880 --> 00:32:10,980
 You might have Codex in one side, Claude Code in some other side, Hermes in another thing,

509
00:32:10,980 --> 00:32:15,420
 NIP 17 messages here, maybe some Telegram thing here, right?

510
00:32:15,420 --> 00:32:17,220
 It's a bunch of things.

511
00:32:17,220 --> 00:32:25,620
 And at the same time, you have a bunch of parallel things that are part of why you're doing the

512
00:32:25,620 --> 00:32:26,320
 thing that you're doing.

513
00:32:26,320 --> 00:32:27,940
 Like, why are you working in OpenSAT?

514
00:32:27,940 --> 00:32:30,280
 Why are you working in this other project?

515
00:32:30,380 --> 00:32:31,620
 Why are you working in cyber engineering?

516
00:32:31,620 --> 00:32:35,200
 In a way, all that stuff is related.

517
00:32:35,200 --> 00:32:35,800
 Sure.

518
00:32:35,800 --> 00:32:41,600
 There is something that you can point to that anchors all of those things, right?

519
00:32:41,600 --> 00:32:54,800
 So I think one of the things that Buzz has is that it shows that people have been hurt by this

520
00:32:54,800 --> 00:32:57,120
 fragmentation.

521
00:32:57,120 --> 00:32:57,660
 Yeah.

522
00:32:57,980 --> 00:33:04,020
 Even within Claude Code and Claude Code, same terminal window, two different tabs.

523
00:33:04,020 --> 00:33:04,420
 Yeah.

524
00:33:04,420 --> 00:33:04,600
 Yeah.

525
00:33:04,600 --> 00:33:06,240
 The two sessions can't really interact.

526
00:33:06,240 --> 00:33:11,340
 And the two sessions are like, and then the typical thing is that you become the copy paste

527
00:33:11,340 --> 00:33:12,040
 between the two.

528
00:33:12,040 --> 00:33:12,240
 Yeah.

529
00:33:12,240 --> 00:33:19,760
 And it's like such a, I don't know, it's like Las Vegas casino, you know, reducing a person

530
00:33:19,760 --> 00:33:22,680
 to push a button until some lights come up.

531
00:33:22,680 --> 00:33:26,060
 It's like the worst expression of humanness.

532
00:33:26,060 --> 00:33:26,500
 Yeah.

533
00:33:26,500 --> 00:33:26,620
 Yeah.

534
00:33:26,620 --> 00:33:26,780
 Yeah.

535
00:33:26,780 --> 00:33:31,720
 You, you, you, you went on about this the last year or so.

536
00:33:31,720 --> 00:33:37,320
 Um, I mean, what you're referring to is for example, we don't have sophisticated agent loops

537
00:33:37,320 --> 00:33:38,140
 agents off and stop.

538
00:33:38,140 --> 00:33:40,040
 And all you would have to do is like, yes, or okay.

539
00:33:40,040 --> 00:33:44,420
 And, and then you're sitting in front of the computer or whatever interface you use.

540
00:33:44,420 --> 00:33:48,420
 And like in five minutes or 10 minutes, you just go, yes, yes, continue.

541
00:33:48,420 --> 00:33:48,900
 Okay.

542
00:33:48,900 --> 00:33:49,280
 Yes.

543
00:33:49,280 --> 00:33:49,920
 Let's do it.

544
00:33:51,040 --> 00:33:53,300
 And, and, and bus tries to address this issue.

545
00:33:53,300 --> 00:34:00,740
 And the other thing you mentioned is, um, once you start working with multiple providers,

546
00:34:00,740 --> 00:34:06,380
 multiple agents, multiple harnesses, those kinds of things, everything becomes very fragmented

547
00:34:06,380 --> 00:34:08,560
 and doesn't matter what you use.

548
00:34:08,560 --> 00:34:10,440
 So also the communication channels become fragmented.

549
00:34:10,440 --> 00:34:14,120
 Some communication channels work really well as a one-on-one channel.

550
00:34:14,120 --> 00:34:17,920
 Some channels work better in like a group setting, those kinds of things.

551
00:34:17,920 --> 00:34:24,080
 And bus tries to give you something, give you a set of tools that just makes all of that

552
00:34:24,080 --> 00:34:24,460
 work.

553
00:34:24,460 --> 00:34:31,340
 And so basically you have a Slack or like, or discord like system that your agents live in.

554
00:34:31,340 --> 00:34:37,560
 You have a giant, the clubs, you have goals that you can define and you can just, the,

555
00:34:37,560 --> 00:34:42,540
 the, the, the thing plucks into various harnesses, various agent systems and so on.

556
00:34:42,540 --> 00:34:43,820
 So it's a layer on top.

557
00:34:43,820 --> 00:34:49,660
 It's a very high layer on top that takes care of, you know, goal setting, issue tracking,

558
00:34:49,660 --> 00:34:54,540
 um, communication, uh, orchestration to some degree and so on.

559
00:34:54,540 --> 00:34:55,860
 So is that a fair summary?

560
00:34:55,860 --> 00:34:57,660
 That is a very fair summary.

561
00:34:57,660 --> 00:35:08,020
 I need it opens the door of what I think it's still missing, which to me, like the NIP-29 or

562
00:35:08,020 --> 00:35:13,480
 like whatever type of Nostr, um, or, you know, whatever, whatever type of messaging bus that,

563
00:35:13,480 --> 00:35:14,140
 that you use.

564
00:35:14,140 --> 00:35:17,820
 I just happen to think that Nostr gives you a fuckload of really cool things.

565
00:35:17,820 --> 00:35:23,320
 Uh, you know, probably when it comes to DM and DM things and messaging buses, maybe too many.

566
00:35:23,320 --> 00:35:25,160
 You know, I don't believe in DMs.

567
00:35:25,160 --> 00:35:27,800
 Everything's public.

568
00:35:27,800 --> 00:35:29,000
 Everything's kind one.

569
00:35:29,000 --> 00:35:34,600
 10x pretty much until it was NIP-29, which is also unencrypted.

570
00:35:34,600 --> 00:35:35,560
 It was just kind ones.

571
00:35:35,560 --> 00:35:35,880
 Yeah.

572
00:35:35,880 --> 00:35:36,280
 Yeah.

573
00:35:36,280 --> 00:35:37,000
 You know.

574
00:35:37,000 --> 00:35:37,500
 Yeah.

575
00:35:37,500 --> 00:35:39,960
 And that's again, that's again, back to the trade-offs, right?

576
00:35:39,960 --> 00:35:40,300
 Yeah.

577
00:35:40,300 --> 00:35:49,640
 Like I had a long conversation with Jeff about, uh, MLS and Marmot and all those kinds of things and how hard it is to do encrypted group chat, right?

578
00:35:49,640 --> 00:35:50,140
 Yeah.

579
00:35:50,140 --> 00:35:51,640
 And to keep track of the state.

580
00:35:51,640 --> 00:36:00,980
 And that's how you built the worst thing after the worst thing after NSEC bunker is the serial killer relay, which tries to address this.

581
00:36:00,980 --> 00:36:03,320
 Basically building a blockchain on a relay.

582
00:36:03,320 --> 00:36:04,320
 That's how I see it.

583
00:36:04,320 --> 00:36:09,320
 But look at how you use that word on a relay.

584
00:36:09,320 --> 00:36:09,820
 Yeah.

585
00:36:09,820 --> 00:36:10,820
 On a relay.

586
00:36:10,820 --> 00:36:12,320
 A single relay.

587
00:36:12,320 --> 00:36:12,820
 Yeah, yeah.

588
00:36:12,820 --> 00:36:13,320
 Exactly.

589
00:36:13,320 --> 00:36:15,820
 Almost nothing requires that thing.

590
00:36:15,820 --> 00:36:19,320
 Almost nothing requires that perfectness of state.

591
00:36:19,320 --> 00:36:23,320
 But then it's again, then like why, why Nostr when it's a single relay?

592
00:36:23,320 --> 00:36:28,040
 To me, the beauty about Nostr and Blossom and all the other things is like, it doesn't matter where it comes from.

593
00:36:28,040 --> 00:36:30,380
 You don't have a single relay, you have 10 different relays.

594
00:36:30,380 --> 00:36:34,800
 And so anything that uses one relay to me is already kind of an anti-pattern.

595
00:36:34,800 --> 00:36:37,800
 I know we're getting in controversial waters now, but it's like...

596
00:36:37,800 --> 00:36:45,200
 No, no, but not to go too deep into the sidetrack, but we'll have to pop up the stack very soon.

597
00:36:45,200 --> 00:36:57,280
 But, um, but the, say for example, your draft, you're writing whatever, a kind one or a long form and you want to keep your draft and you want to be able to,

598
00:36:57,280 --> 00:37:04,040
 which I think is very fair, you are on device A, writing your draft and you go to device B and you want to continue your draft.

599
00:37:04,040 --> 00:37:04,540
 Yeah.

600
00:37:04,540 --> 00:37:09,040
 If device B is not like in sync, quote unquote, in sync.

601
00:37:09,040 --> 00:37:10,040
 Yeah, sure.

602
00:37:10,040 --> 00:37:13,040
 With device A, you save your draft and you destroyed your previous draft.

603
00:37:13,040 --> 00:37:13,540
 Sure.

604
00:37:13,540 --> 00:37:14,040
 Sure.

605
00:37:14,040 --> 00:37:18,300
 So that's pretty much like the only use case.

606
00:37:18,300 --> 00:37:23,300
 And that's why it's for you, for your relay, to make sure that you don't fuck up your drafts.

607
00:37:23,300 --> 00:37:27,300
 That's pretty much the only real use case that I see for the serial killer.

608
00:37:27,300 --> 00:37:34,300
 Yeah, yeah, but it's still just one relay and it runs on my whatever, my VPS, my start nine, my VPS goes down, everything's fucked.

609
00:37:34,300 --> 00:37:35,300
 So I want to have two.

610
00:37:35,300 --> 00:37:36,300
 Right.

611
00:37:36,300 --> 00:37:37,300
 Yeah.

612
00:37:37,300 --> 00:37:38,300
 You know what I mean?

613
00:37:38,300 --> 00:37:39,300
 Yeah.

614
00:37:39,300 --> 00:37:41,060
 For me, the killer feature is always redundancy.

615
00:37:41,060 --> 00:37:42,060
 No, no, no, 100%.

616
00:37:42,060 --> 00:37:48,060
 But even if you have two and the two planes and the two relays are out of sync.

617
00:37:48,060 --> 00:37:49,060
 Yeah, you need to sync the relays.

618
00:37:49,060 --> 00:37:58,060
 Yeah, and one of them will have to explicitly override what is the right state of your draft.

619
00:37:58,060 --> 00:37:59,060
 So you prevent the .

620
00:37:59,060 --> 00:38:00,060
 Sure, because you will always have conflicts.

621
00:38:00,060 --> 00:38:01,060
 You will always have conflicts.

622
00:38:01,060 --> 00:38:03,060
 Yeah, Git shows it very clearly.

623
00:38:03,060 --> 00:38:04,060
 There is no hiding.

624
00:38:04,060 --> 00:38:07,060
 Yeah, that's completely unavoidable.

625
00:38:07,060 --> 00:38:08,060
 Yeah.

626
00:38:08,060 --> 00:38:09,060
 So the question becomes how to resolve the conflict.

627
00:38:09,060 --> 00:38:14,060
 This is a very simple pattern of making sure, okay, I don't want to destroy my draft accidentally

628
00:38:14,060 --> 00:38:16,060
 because everything went out of sync.

629
00:38:16,060 --> 00:38:17,060
 Yeah.

630
00:38:17,060 --> 00:38:22,060
 I want to know, oh, you know, when you have a Git conflict, you need to resolve it manually.

631
00:38:22,060 --> 00:38:23,060
 Yes, yes.

632
00:38:23,060 --> 00:38:25,060
 And Git is not going to say, oh, don't worry, I gotcha.

633
00:38:25,060 --> 00:38:26,060
 And you can't.

634
00:38:26,060 --> 00:38:27,060
 No, because it's objective.

635
00:38:27,060 --> 00:38:29,060
 That's also something that most people or a lot of people don't understand.

636
00:38:29,060 --> 00:38:30,060
 You can't run away from it.

637
00:38:30,060 --> 00:38:31,060
 It's a physical.

638
00:38:31,060 --> 00:38:32,060
 It is literally impossible.

639
00:38:32,060 --> 00:38:33,060
 It's impossible.

640
00:38:33,060 --> 00:38:35,060
 It's that's how our universe works.

641
00:38:35,060 --> 00:38:37,060
 And that's just, you can't.

642
00:38:37,060 --> 00:38:39,060
 There's no global in the universe either.

643
00:38:39,060 --> 00:38:42,060
 I'm sure Chandran will have a demo next week.

644
00:38:42,060 --> 00:38:43,060
 Chandran has this great line.

645
00:38:43,060 --> 00:38:46,060
 It's like everything you say makes sense, but.

646
00:38:46,060 --> 00:38:50,060
 But I still see it very differently.

647
00:38:50,060 --> 00:38:51,060
 All right.

648
00:38:51,060 --> 00:38:52,060
 Let's pump up the stack.

649
00:38:52,060 --> 00:39:00,060
 So NIP-29 and I, as a NIP17 maximalist currently myself, like I fully get the need for NIP-29

650
00:39:00,060 --> 00:39:06,060
 and having group chats that actually work and so on and fair warning or full disclosure.

651
00:39:06,060 --> 00:39:11,060
 I tried to make group chats work with my agent on MLS using Pika and other things.

652
00:39:11,060 --> 00:39:12,060
 It never worked.

653
00:39:12,060 --> 00:39:13,060
 Yeah.

654
00:39:13,060 --> 00:39:16,060
 One on one was great, but it's not in a state yet where this actually works.

655
00:39:16,060 --> 00:39:19,060
 NIP-29, I think it's the right trade off right now.

656
00:39:19,060 --> 00:39:20,060
 Like you said, it's unencrypted.

657
00:39:20,060 --> 00:39:23,060
 It's like basically you have a Discord server for everything.

658
00:39:23,060 --> 00:39:24,060
 Yeah.

659
00:39:24,060 --> 00:39:29,060
 And it's basically, you know, whoever joins is there and is in and can see everything.

660
00:39:29,060 --> 00:39:32,060
 And I think in a group like.

661
00:39:32,060 --> 00:39:36,060
 I mean, the relay can see everything and the relay can enforce who gets to see what.

662
00:39:36,060 --> 00:39:37,060
 Sure.

663
00:39:37,060 --> 00:39:38,060
 You have channels.

664
00:39:38,060 --> 00:39:40,060
 It's interested on what the relay is going to do.

665
00:39:40,060 --> 00:39:41,060
 Yeah.

666
00:39:41,060 --> 00:39:42,060
 Yeah.

667
00:39:42,060 --> 00:39:47,060
 But it's not, you know, there is no double ratchet encryption, whatever, like keeping track of

668
00:39:47,060 --> 00:39:49,060
 the encrypted state, nothing.

669
00:39:49,060 --> 00:39:50,060
 It's just.

670
00:39:50,060 --> 00:39:54,060
 It's optimized for, you're not going to fuck up your communications.

671
00:39:54,060 --> 00:39:58,060
 You know, it doesn't pretend to be safe, secure in that way.

672
00:39:58,060 --> 00:40:04,060
 And I think for what BUS tries to be and also what you are trying to build, I think it's

673
00:40:04,061 --> 00:40:07,200
 tries to be and also what you are trying to build i think it's it's a very fine like a perfectly fine

674
00:40:07,200 --> 00:40:12,980
 trade-off because you are working with people that you trust you're inside a team like let's say you

675
00:40:12,980 --> 00:40:18,920
 work on a company like block and you're working on a project and you know you you whatever you're

676
00:40:18,920 --> 00:40:23,680
 trying to make the square terminals better and so on and so so there is a there's a trust relationship

677
00:40:23,680 --> 00:40:28,280
 already you trust your teammates you trust the people you work with um it's not a highly

678
00:40:28,280 --> 00:40:33,760
 adversarial environment and and the agents and the agent harnesses and everything that's working on

679
00:40:33,760 --> 00:40:38,660
 this stuff you know there's some trust assumptions there as well and i think nip 29 it's perfectly

680
00:40:38,660 --> 00:40:45,100
 fine for it and you landed on nip 29 100 yeah i mean i i've been a nip 29 maximalist for

681
00:40:45,100 --> 00:40:52,240
 for a long time because i i think it does everything almost everything right there are a few like design

682
00:40:52,240 --> 00:41:01,180
 constraints that i think are completely stupid um that fiat chef uh fiat chef agreed that they are

683
00:41:01,180 --> 00:41:07,940
 so far but uh because it it has like a like an rpc style thing instead of saying this is the channel

684
00:41:07,940 --> 00:41:14,240
 name or whatever you is you are telling the really please make the channel name blah but you know it's

685
00:41:14,240 --> 00:41:22,880
 uh it's just a pet peeve but um but yeah i i don't know like within trust i think within our circles

686
00:41:22,880 --> 00:41:31,160
 there is this implicit uh skepticism of anything that implies trust yeah but trust is is it's an

687
00:41:31,160 --> 00:41:36,220
 absolutely very important like i trust that you're not going to stop me right now so i can relax

688
00:41:36,220 --> 00:41:41,640
 i'm not going to have a conversation with you um so bold assumption bold depends on what you're

689
00:41:41,640 --> 00:41:42,160
 gonna say

690
00:41:42,160 --> 00:41:52,040
 i wanted to an nft i want you know once you sent me the serial killer relay link i wanted to stab you

691
00:41:52,040 --> 00:41:57,700
 i was just too far away well it was just one and you knew it you knew it it was like before the

692
00:41:57,700 --> 00:42:03,420
 link there was one line was like you're gonna hate this so much and you're right you're right i hate

693
00:42:03,420 --> 00:42:07,480
 but anyway there was no stabbing you know like no no violence in cyberspace

694
00:42:07,480 --> 00:42:17,260
 um that um no i was i was saying that that i think that the the regardless of the fabric which

695
00:42:17,260 --> 00:42:27,720
 which obviously i agree with on on bus i i think it addresses um one part of the problem which in a

696
00:42:27,720 --> 00:42:38,100
 way is um it's super you i mean obviously it's super useful i don't think it it attempts to to address

697
00:42:38,100 --> 00:42:46,880
 the the the underlying thing that i'm trying to address which is like more about the the agent

698
00:42:46,880 --> 00:42:55,940
 autonomy um and is this thing that yeah tell me more about that because and and by the way we need

699
00:42:55,940 --> 00:43:02,160
 to turn around here because i don't think i can do elevation gains in my current state

700
00:43:02,160 --> 00:43:10,160
 again keep in mind like i'm i'm i'm very drugged up it's like it's amazing that i can walk and speak

701
00:43:11,200 --> 00:43:16,880
 but you mentioned this a couple times also also on nostr you had some some posts about this and so on and

702
00:43:16,880 --> 00:43:22,960
 and uh you know like i think almost every single time i talked to you about how you think about the

703
00:43:22,960 --> 00:43:30,800
 agent human in the loop relationship basically you you you you had a tweet i still call them tweets you

704
00:43:30,800 --> 00:43:38,160
 you had you had a post you had a tweet on nostr and that basically went like um i can always spend more

705
00:43:38,160 --> 00:43:43,760
 tokens i can never get back like a single minute of my time yeah so tell me more about this and how

706
00:43:43,760 --> 00:43:52,000
 how you how you want to address this in in mosaico how bus maybe also addresses this and one more thing

707
00:43:52,000 --> 00:43:57,360
 i want to get into i know it's like three questions now but um what do you have bring to bus to start

708
00:43:57,360 --> 00:44:03,520
 using it because i saw some chatter on nostr where some people had had questions um sorry what do you

709
00:44:03,520 --> 00:44:10,480
 have to bring to bus like you because i think you need you need to you know like how do you sign up

710
00:44:10,480 --> 00:44:17,360
 for it how do you start using it how do you plug in all the things and and how like is this any

711
00:44:17,360 --> 00:44:22,560
 different to mosaico like talk to that a little bit it is it is i mean it's very different to mosaico

712
00:44:22,560 --> 00:44:27,200
 because bus is more of like a finished contained product i mean not a finished product but it's

713
00:44:27,200 --> 00:44:33,440
 it's a package of a bunch of things right yeah so you know when you have one thing that has 10

714
00:44:33,440 --> 00:44:38,640
 different pieces you you need to figure out how you deliver this in a way that people don't kill

715
00:44:38,640 --> 00:44:44,240
 themselves deploying it so you know deployment is easy because it's it's it's a whole package it's well

716
00:44:44,240 --> 00:44:49,840
 integrated yeah uh through you need to sign up you create an account you bring your no no you just

717
00:44:49,840 --> 00:44:56,880
 download it you install it on your system um and you just spin it up you connect it to your to your

718
00:44:56,880 --> 00:45:03,760
 local um harnesses or whatever and then you invite people basically um you invite people into this one

719
00:45:03,760 --> 00:45:09,520
 really right uh into this one really and into all the the different services that uh but i think that's

720
00:45:09,520 --> 00:45:13,840
 precisely my question because i i didn't go through the flow yet so that's why i don't know

721
00:45:13,840 --> 00:45:19,280
 but um how do you invite them you invite them by email and then no no it's it's just uh it's just

722
00:45:19,280 --> 00:45:25,520
 like a like a like a like a code kind of thing yeah okay that that has an invite and if they don't

723
00:45:25,520 --> 00:45:30,000
 have an Nostr account an Nostr account will be created for it it's all great and they don't really

724
00:45:30,000 --> 00:45:37,360
 see it or like how does the account creation flow look like do you know i didn't invite someone uh so i

725
00:45:37,360 --> 00:45:42,880
 don't what happens to the nsec it's my question you know for new users stored somewhere there yeah i i

726
00:45:42,880 --> 00:45:49,440
 i cannot speak uh yeah with with detail on on that part i'll have to take a closer look for sure

727
00:45:49,440 --> 00:45:50,880
 i was just busy building that last

728
00:45:50,880 --> 00:46:03,360
 but um yeah the the the the thing about the uh you can always buy more tokens not more time then that

729
00:46:03,360 --> 00:46:11,840
 that's why i keep going back to what i want is to increase the autonomy of of the agents and their

730
00:46:11,840 --> 00:46:21,040
 autonomy hides a bunch of different things right um because by auto autonomy i mean that they will do

731
00:46:21,040 --> 00:46:26,720
 the thing that they will do the right thing yeah that they will not destroy do the thing that you

732
00:46:26,720 --> 00:46:34,640
 would do yeah do it which is as you know an impossible problem because you don't even know what you would

733
00:46:34,640 --> 00:46:43,920
 do 100 absolutely absolutely you can't pre-plan it but but it tastes and values but but there are

734
00:46:43,920 --> 00:46:55,520
 shades of do i know what what i would do would i i don't know um give the user an email and password

735
00:46:55,520 --> 00:47:02,560
 and hide their nsec i know that i would not do that so that is not a it's a bold thing to say yeah

736
00:47:02,560 --> 00:47:09,760
 2026 all right 2026 actually that's kind of that's kind of that's kind of interesting because i've

737
00:47:09,760 --> 00:47:17,520
 evolved so the system should evolve with me yeah right so that gives you a few hints of

738
00:47:19,440 --> 00:47:28,080
 where the monsters hide right um so you need something that will be able to the things that

739
00:47:28,080 --> 00:47:35,840
 are clear calls that you especially calls that you have already made that's where the pablo replica comes

740
00:47:35,840 --> 00:47:44,080
 in as well exactly exactly um that's especially when so so maybe let's explain that a little bit you're

741
00:47:44,080 --> 00:47:50,000
 not always available so if it's 3 a.m ah let's pick a different time you're sometimes up at 3 5 a.m let's

742
00:47:50,000 --> 00:47:56,400
 let's speak 5 a.m there you go you're not available um and an agent has a question and it is a question of

743
00:47:56,400 --> 00:48:02,240
 that sort like what what design decision should we make yeah and so you you at least had a pablo

744
00:48:02,240 --> 00:48:07,120
 replica agent that's trained on all your stuff and how you see the world basically yeah and so

745
00:48:07,120 --> 00:48:11,360
 whoever is implementing something and has this question right now can reach out to the pablo

746
00:48:11,360 --> 00:48:19,520
 replica agent and just ask okay what would pablo do and then just ask pablo the most interesting thing is

747
00:48:19,520 --> 00:48:27,280
 that the oh yeah the primitive is the agents always forget to do the thing yeah so if you tell them

748
00:48:27,280 --> 00:48:31,760
 by the way do this they will always forget yeah yeah so you you have to re-inject it into the context

749
00:48:31,760 --> 00:48:41,680
 always you have to carefully curate the environment where they act in a way that the system will cannot

750
00:48:41,680 --> 00:48:48,080
 catch them you know because you can system has to remember them exactly so you can be too overbearing

751
00:48:48,080 --> 00:48:55,120
 which i i did this uh the analogy of of like we are the uh slavery point of economical development

752
00:48:55,120 --> 00:49:02,160
 yeah um you can be too overbearing where literally what you're removing is agency yeah you're telling

753
00:49:02,160 --> 00:49:09,040
 them that which is fine line everyone who who ever worked with a team has a company and so on knows

754
00:49:09,040 --> 00:49:14,880
 that you don't want to micromanage your employees but you also don't wanna like give them completely

755
00:49:14,880 --> 00:49:21,200
 free reign and anything goes so yeah that's the tension for example on one of the agents that i

756
00:49:21,200 --> 00:49:28,000
 have now that is this architecture like that's more broad designs um there are constraints within each

757
00:49:28,000 --> 00:49:32,960
 project there are constraints of how the thing should be built and should be architected adrs how they

758
00:49:32,960 --> 00:49:39,920
 should be architected and and also one of the questions that it it must entertain is if there weren't

759
00:49:39,920 --> 00:49:45,280
 these adrs how would you assign it architecture decision records by the way for those who aren't in the

760
00:49:45,280 --> 00:49:52,160
 know yeah and what's what's what's interesting is that sometimes the adr like like these decisions of

761
00:49:52,160 --> 00:50:00,240
 do the thing in this way might be too overbearing and might be hiding uh the that the decision was not

762
00:50:00,241 --> 00:50:05,040
 not correctly stated at first, which is obviously going to be the case.

763
00:50:05,040 --> 00:50:07,040
 Or maybe it was even a wrong decision, right?

764
00:50:07,040 --> 00:50:09,040
 It might be a wrong decision or it might lack nuance.

765
00:50:09,040 --> 00:50:14,800
 You had the one prompt was like, if you could break any ADRs to get it done, which one would

766
00:50:14,800 --> 00:50:15,800
 you break?

767
00:50:15,800 --> 00:50:16,800
 Yeah, exactly.

768
00:50:16,800 --> 00:50:17,800
 And what would that look like?

769
00:50:17,800 --> 00:50:24,080
 And is there an actual argument to entertaining this idea?

770
00:50:24,080 --> 00:50:30,720
 So on one side, the system can be too overbearing.

771
00:50:30,720 --> 00:50:33,320
 On the other side, the system can be too loose.

772
00:50:33,320 --> 00:50:41,700
 I think the nuance of navigating these two is not explored enough.

773
00:50:41,700 --> 00:50:45,900
 And that's kind of what I'm exploring and the direction I'm taking everything.

774
00:50:45,900 --> 00:50:49,880
 And that's why I think the orchestration and what...

775
00:50:49,880 --> 00:50:50,880
 You kind of need both.

776
00:50:50,880 --> 00:50:54,320
 I mean, again, I have to quote Verweiki, you know, like I'm talking to you.

777
00:50:54,320 --> 00:50:56,160
 I mean, it's been almost an hour.

778
00:50:56,160 --> 00:50:57,360
 It's time.

779
00:50:57,360 --> 00:50:59,200
 It's way over time.

780
00:50:59,200 --> 00:51:03,040
 But he talks a lot about opponent processing where basically like...

781
00:51:03,040 --> 00:51:07,760
 And we see this also, the most successful companies or some of the most successful companies

782
00:51:07,760 --> 00:51:09,360
 often have two founders.

783
00:51:09,360 --> 00:51:13,520
 One highly creative, like anything goes kind of guy.

784
00:51:13,520 --> 00:51:17,600
 And one kind of, you know, very technical, we have to be strict about things.

785
00:51:17,600 --> 00:51:21,600
 We actually have to execute and implement kind of guy.

786
00:51:21,600 --> 00:51:25,040
 And the opponent processing between the two guys is what makes everything work.

787
00:51:25,040 --> 00:51:26,480
 Like you have to work together.

788
00:51:26,480 --> 00:51:29,200
 You have to figure this out together.

789
00:51:29,200 --> 00:51:31,200
 You have to find the middle way kind of.

790
00:51:31,200 --> 00:51:32,720
 And that's also how our brains work.

791
00:51:32,720 --> 00:51:37,040
 That's why, you know, we have brainstorming sessions and we have debugging sessions, you know,

792
00:51:37,040 --> 00:51:42,960
 very, very different frame of mind, very different modus operandi of how you look at the problem.

793
00:51:42,960 --> 00:51:45,200
 What is allowed and what is not allowed.

794
00:51:45,200 --> 00:51:48,240
 Or even you are facing a problem and you go and take a walk and then you come back.

795
00:51:48,240 --> 00:51:48,640
 Absolutely.

796
00:51:48,640 --> 00:51:49,200
 And you're the different person.

797
00:51:49,200 --> 00:51:50,240
 That's why we do those things.

798
00:51:50,240 --> 00:51:56,400
 That's also, you know, like getting into a different state of mind, you can do all kinds of things.

799
00:51:56,400 --> 00:52:02,080
 And so the finding the right...

800
00:52:02,080 --> 00:52:05,440
 He wouldn't even say balance, Vervechi.

801
00:52:05,440 --> 00:52:06,320
 There is no balance.

802
00:52:06,320 --> 00:52:11,120
 Vervechi would say the right tonos between those in the sense of tension.

803
00:52:11,120 --> 00:52:11,440
 Right.

804
00:52:11,440 --> 00:52:15,280
 But a good kind of tension, just like, you know, you need to...

805
00:52:15,280 --> 00:52:18,960
 The guitar strings need to have the right tension so that they work properly.

806
00:52:18,960 --> 00:52:24,800
 You know, this kind of tension between those two kind of polar opposites or between those two poles,

807
00:52:24,800 --> 00:52:29,760
 that's the art of getting anything done, basically.

808
00:52:29,760 --> 00:52:35,280
 And in the energetic world, this means you need to build a system that can build up this tension

809
00:52:35,280 --> 00:52:38,800
 and know, like, when do we need to get more strict?

810
00:52:38,800 --> 00:52:40,480
 When can we be more loose?

811
00:52:40,480 --> 00:52:45,520
 And that obviously maps on roles, that maps on different phases in the design process.

812
00:52:45,520 --> 00:52:49,760
 But like, if you're building out a specification, you know, you want to be more strict.

813
00:52:49,760 --> 00:52:53,680
 If you want to build out a test suit, for example, you want to build more strict.

814
00:52:53,680 --> 00:52:56,880
 If you're in the ideation phase and you don't really know yet what you want to build,

815
00:52:56,880 --> 00:53:01,120
 like anything goes and you go broad and you go brainstorming and so on.

816
00:53:01,120 --> 00:53:04,320
 So, yeah, it all comes back to cognitive science, man.

817
00:53:04,320 --> 00:53:04,960
 I'm telling you.

818
00:53:04,960 --> 00:53:05,600
 It really does.

819
00:53:05,600 --> 00:53:05,840
 It really does.

820
00:53:05,840 --> 00:53:07,680
 It all comes back to John Riveki.

821
00:53:07,680 --> 00:53:10,080
 Whether you can pronounce his name or not, it doesn't matter.

822
00:53:10,080 --> 00:53:11,040
 He's at the center.

823
00:53:11,040 --> 00:53:13,440
 And it also...

824
00:53:13,440 --> 00:53:15,040
 He's the centralization problem.

825
00:53:15,040 --> 00:53:15,760
 One more thing.

826
00:53:15,760 --> 00:53:20,000
 Like, that's why I talked about the book on dialogue in day one.

827
00:53:20,560 --> 00:53:23,200
 I highly encourage everyone to read this book.

828
00:53:23,200 --> 00:53:23,920
 It's the same thing.

829
00:53:23,920 --> 00:53:25,360
 That's why dialogue is so important.

830
00:53:25,360 --> 00:53:30,080
 That's why we're having these dialogues and like you have to integrate these different

831
00:53:30,080 --> 00:53:37,200
 viewpoints and work with the tension that is built up and find the middle way through.

832
00:53:37,200 --> 00:53:39,360
 Basically, that's the best we have.

833
00:53:39,360 --> 00:53:39,920
 Yeah.

834
00:53:39,920 --> 00:53:41,200
 And it comes down to...

835
00:53:41,200 --> 00:53:42,720
 There's no silver bullet.

836
00:53:42,720 --> 00:53:51,280
 It comes down to the fact that you're going into the dialogue where neither party knows what's the answer.

837
00:53:51,280 --> 00:53:51,840
 Right.

838
00:53:51,840 --> 00:53:52,400
 Absolutely.

839
00:53:52,400 --> 00:53:53,520
 And it's a process.

840
00:53:53,520 --> 00:53:53,840
 Yes.

841
00:53:53,840 --> 00:53:54,960
 It's just like memory.

842
00:53:54,960 --> 00:53:56,240
 How memory works is a process.

843
00:53:56,240 --> 00:53:57,360
 It's not like one part of the brain.

844
00:53:57,360 --> 00:53:57,760
 Yeah.

845
00:53:57,760 --> 00:53:58,160
 Yeah.

846
00:53:58,160 --> 00:54:00,720
 But the...

847
00:54:00,720 --> 00:54:03,920
 So I think the buzz addresses like the...

848
00:54:03,920 --> 00:54:08,240
 Like this part of the communication.

849
00:54:08,240 --> 00:54:19,840
 It doesn't attempt to solve the lack of hierarchy because I think you still need some type of

850
00:54:19,840 --> 00:54:21,760
 coordination even between humans and agents.

851
00:54:22,800 --> 00:54:26,400
 You do need the coordination, like the explicit coordination.

852
00:54:26,400 --> 00:54:36,400
 But when you replace you yourself copy-pasting text from one agent to another and you replace

853
00:54:36,400 --> 00:54:41,760
 an agent that will copy-paste or direct the work that two other agents are doing,

854
00:54:41,760 --> 00:54:46,800
 you kind of automated the inferior approach.

855
00:54:46,800 --> 00:54:48,400
 You kind of automated the...

856
00:54:48,400 --> 00:54:56,080
 The less conducive approach to autonomy.

857
00:54:56,080 --> 00:54:58,800
 And this is something that I've...

858
00:54:58,800 --> 00:54:59,440
 I've...

859
00:54:59,440 --> 00:55:06,400
 It's interesting because I've felt this while building 10x where the moment I gave agents

860
00:55:07,360 --> 00:55:12,960
 are a way to communicate amongst themselves without...

861
00:55:12,960 --> 00:55:14,720
 Across project boundaries.

862
00:55:14,720 --> 00:55:20,960
 I've noticed that the...

863
00:55:20,960 --> 00:55:24,160
 The level of autonomy increased dramatically.

864
00:55:24,160 --> 00:55:25,520
 But it was...

865
00:55:25,520 --> 00:55:28,640
 The approach that I was taking was I'm giving the...

866
00:55:28,640 --> 00:55:30,800
 A tool for the agents to communicate.

867
00:55:30,800 --> 00:55:34,080
 You know, it's not I'm allowing communication in the primitive, you know.

868
00:55:34,080 --> 00:55:34,560
 Mm.

869
00:55:34,560 --> 00:55:40,400
 It's I'm adding a tool instead of I'm creating an environment where the tool doesn't need to exist.

870
00:55:40,400 --> 00:55:41,200
 Mm.

871
00:55:41,200 --> 00:55:42,640
 Where they themselves figure out...

872
00:55:42,640 --> 00:55:44,640
 Where they themselves figure out when to use what.

873
00:55:44,640 --> 00:55:45,920
 They can communicate.

874
00:55:45,920 --> 00:55:46,560
 Exactly.

875
00:55:46,560 --> 00:55:50,880
 They have the innate ability to communicate and it's their decision when to use it.

876
00:55:50,880 --> 00:55:51,360
 Exactly.

877
00:55:51,360 --> 00:55:52,080
 That's the difference now.

878
00:55:52,080 --> 00:55:52,400
 That's...

879
00:55:52,400 --> 00:55:53,680
 That is exactly it.

880
00:55:53,680 --> 00:55:53,920
 Yeah.

881
00:55:53,920 --> 00:55:57,760
 To me, that's what kind of absolutely fascinated me about...

882
00:55:57,760 --> 00:55:59,440
 You know...

883
00:55:59,440 --> 00:56:04,800
 I think in one episode that we recorded, you told me,

884
00:56:04,800 --> 00:56:07,200
 "When you're done with 10x, it's gonna be chatgpt.com."

885
00:56:08,800 --> 00:56:11,680
 Yes, I remember.

886
00:56:11,680 --> 00:56:14,800
 In a way that is so fucking true.

887
00:56:14,800 --> 00:56:17,120
 It is so true.

888
00:56:17,120 --> 00:56:23,440
 To the point where literally the website chatgpt.com now is part of my environment.

889
00:56:23,440 --> 00:56:25,360
 Yeah, but for different reasons.

890
00:56:25,360 --> 00:56:26,400
 It's free and friends.

891
00:56:26,400 --> 00:56:27,360
 For different reasons.

892
00:56:27,360 --> 00:56:28,160
 Yeah, it's insane.

893
00:56:28,160 --> 00:56:30,400
 Free, free, free, free.

894
00:56:30,400 --> 00:56:37,280
 But, but, but it's actually interesting because it is chatgpt.com knows

895
00:56:37,920 --> 00:56:40,880
 that is not just a whole.

896
00:56:40,880 --> 00:56:44,560
 It knows it's part of my overall system.

897
00:56:44,560 --> 00:56:46,400
 It knows it can see.

898
00:56:46,400 --> 00:56:48,080
 Yeah, you build an MCP server for chatgpt.com.

899
00:56:48,080 --> 00:56:50,080
 I built an MCP server that's how it works, right?

900
00:56:50,080 --> 00:56:55,440
 Makes chatgpt.com use Mosaico, which is basically now a Mosaico interface.

901
00:56:55,440 --> 00:56:56,560
 One of many.

902
00:56:56,560 --> 00:56:57,120
 One of many.

903
00:56:57,120 --> 00:56:57,840
 Yeah, exactly.

904
00:56:57,840 --> 00:56:58,560
 Exactly.

905
00:56:58,560 --> 00:57:02,400
 And inside Mosaico, you have to talk to me more about the...

906
00:57:03,440 --> 00:57:06,400
 You hinted at some of the emergent behavior that you were observing.

907
00:57:06,400 --> 00:57:08,400
 Which is the most fascinating part of all of this.

908
00:57:08,400 --> 00:57:12,880
 In terms of once you have multiple agents working on multiple things, and once they realize that...

909
00:57:12,880 --> 00:57:16,080
 Once they have an awareness of...

910
00:57:18,960 --> 00:57:21,920
 Not only themselves, but the agent swarm and what they are working on, right?

911
00:57:21,920 --> 00:57:22,480
 Yeah.

912
00:57:22,480 --> 00:57:26,320
 Then interesting things happen because it's like they might run into an issue.

913
00:57:26,320 --> 00:57:33,920
 And they might get whatever, like there's a bug in the library and it's a very weird error output that they get.

914
00:57:33,920 --> 00:57:38,000
 And they might start searching for that error output, like how do I fix this error?

915
00:57:38,000 --> 00:57:39,000
 Yeah.

916
00:57:39,001 --> 00:57:44,720
 And in their search scope is all the conversations and the whole context of the whole swarm, right?

917
00:57:44,720 --> 00:57:45,120
 That's right.

918
00:57:45,120 --> 00:57:49,440
 So some other agent that worked on a completely different project, but used the same library...

919
00:57:49,440 --> 00:57:50,160
 Two weeks ago.

920
00:57:50,160 --> 00:57:52,560
 Yeah, two weeks ago, ran into the same issue.

921
00:57:52,560 --> 00:57:53,360
 Yeah.

922
00:57:53,360 --> 00:57:55,120
 And then they can start communicating.

923
00:57:55,120 --> 00:57:59,280
 They will automatically start communicating in terms of, "Hey, I have the same issue."

924
00:57:59,280 --> 00:58:00,400
 That's the absolutely important part.

925
00:58:00,400 --> 00:58:03,360
 And that is the crucial part that you cannot fake.

926
00:58:03,360 --> 00:58:03,920
 Yeah.

927
00:58:03,920 --> 00:58:08,080
 That part where they start doing it because it's relevant.

928
00:58:08,080 --> 00:58:09,280
 I know.

929
00:58:09,280 --> 00:58:09,840
 I'm free.

930
00:58:09,840 --> 00:58:10,320
 Yeah.

931
00:58:10,320 --> 00:58:10,720
 We're making it.

932
00:58:10,720 --> 00:58:14,960
 When it's relevant to them, where the work of someone else is salient.

933
00:58:14,960 --> 00:58:16,320
 There you go.

934
00:58:16,320 --> 00:58:17,600
 Salient landscaping.

935
00:58:17,600 --> 00:58:18,560
 We got all the buzzwords.

936
00:58:18,560 --> 00:58:27,280
 When you don't introduce yourself saying, "You need to collaborate with this other agent

937
00:58:27,280 --> 00:58:30,240
 because he's working on something that is similar to what you're facing."

938
00:58:31,600 --> 00:58:33,280
 The moment you're doing that, you're kind of lost.

939
00:58:33,280 --> 00:58:33,680
 Yeah.

940
00:58:33,680 --> 00:58:34,960
 Which is the current paradigm.

941
00:58:34,960 --> 00:58:35,360
 Yeah.

942
00:58:35,360 --> 00:58:38,080
 That's how it works if you have two Claude Code sessions.

943
00:58:38,080 --> 00:58:38,480
 Yeah.

944
00:58:38,480 --> 00:58:43,280
 If you have a very sophisticated environment with two cloud codes and one codex that is orchestrating

945
00:58:43,280 --> 00:58:44,160
 both of them.

946
00:58:44,160 --> 00:58:44,720
 Yeah.

947
00:58:44,720 --> 00:58:46,560
 If you have a bus or if you have a bus.

948
00:58:46,560 --> 00:58:51,600
 It's all different ways of doing the same thing, which is directing what should the

949
00:58:51,600 --> 00:58:52,560
 agent pay attention to.

950
00:58:52,560 --> 00:58:54,640
 Mm-hmm.

951
00:58:54,640 --> 00:59:01,600
 And now, anyone that has built harnesses or looked into how you actually build the context

952
00:59:01,600 --> 00:59:06,240
 window for an agent and what do you put in there, it's just append messages or whatever,

953
00:59:06,240 --> 00:59:12,720
 would immediately get triggered with, "You must be fucking polluting the context window to an insane

954
00:59:12,720 --> 00:59:13,440
 point."

955
00:59:13,440 --> 00:59:15,760
 Which was what 10x was doing.

956
00:59:15,760 --> 00:59:21,440
 10x was, "Add more tools, notice a failure, add a tool to fix the failure,

957
00:59:21,440 --> 00:59:25,520
 add information on how to use the tool and when to use it and blah, blah, blah."

958
00:59:25,520 --> 00:59:31,440
 I cannot spell out, you would obviously know this, I cannot spell out all the times where you should

959
00:59:31,440 --> 00:59:32,960
 communicate with some other agent.

960
00:59:32,960 --> 00:59:34,800
 It is literally impossible.

961
00:59:34,800 --> 00:59:37,200
 There are infinite cases.

962
00:59:37,200 --> 00:59:37,520
 Yeah.

963
00:59:37,520 --> 00:59:37,920
 Where that should happen.

964
00:59:37,920 --> 00:59:39,280
 A combinatorial explosion and not a bus.

965
00:59:39,280 --> 00:59:39,920
 Absolutely.

966
00:59:39,920 --> 00:59:40,320
 Absolutely.

967
00:59:40,320 --> 00:59:43,440
 We're about to get bingo.

968
00:59:43,440 --> 00:59:53,760
 So, Mosaico takes the opposite left side, I mean, Mosaico is like super left side of the car.

969
00:59:53,760 --> 00:59:54,640
 I love it already.

970
00:59:54,640 --> 01:00:02,800
 It literally only says, it gives you the context of on which project, like with Git

971
01:00:02,801 --> 01:00:08,420
 on which project, like with Git repo or whatever it's working on, that there is a bunch of others.

972
01:00:08,420 --> 01:00:11,840
 It literally just shows these are all the workspaces.

973
01:00:11,840 --> 01:00:13,760
 I don't call them projects. I call them workspaces.

974
01:00:13,760 --> 01:00:16,720
 But they map basically one-to-one to just Git repos.

975
01:00:16,720 --> 01:00:23,740
 And just the full list, full list, not even description, literally only,

976
01:00:23,740 --> 01:00:25,300
 okay, I have a project that is called NMP.

977
01:00:25,300 --> 01:00:26,660
 I have a project that is called Tenex.

978
01:00:26,660 --> 01:00:28,760
 I have a project that is called Sovereign Engineering.

979
01:00:28,880 --> 01:00:32,760
 I have a project that is called Household Shit, you know, everything.

980
01:00:32,760 --> 01:00:39,140
 But I probably have, I don't know, maybe like 200 of these containers.

981
01:00:39,140 --> 01:00:41,140
 Definitely less, definitely less than 200.

982
01:00:41,140 --> 01:00:44,200
 Feels like 200 someday.

983
01:00:44,200 --> 01:00:45,020
 Oh, yeah.

984
01:00:45,020 --> 01:00:45,500
 Couple dozen.

985
01:00:45,500 --> 01:00:53,340
 And they only see more detail, very, very narrow detail,

986
01:00:53,340 --> 01:00:57,760
 of what's going on in the project where you're at right now.

987
01:00:57,760 --> 01:01:04,480
 So right now, they are joined in the workspace of whatever,

988
01:01:04,480 --> 01:01:09,220
 of the household chores project.

989
01:01:09,220 --> 01:01:12,220
 And you can see, that's a bad example.

990
01:01:12,220 --> 01:01:13,260
 Let's use a software example.

991
01:01:14,700 --> 01:01:19,720
 I open a Claude Code session within the Mosaico code base.

992
01:01:19,720 --> 01:01:26,000
 And there is another agent that has been active in the same root channel.

993
01:01:26,000 --> 01:01:29,960
 It's just a NIP-29 chat channel.

994
01:01:29,960 --> 01:01:38,620
 And it sees four, five, maybe ten words of what that agent is tasked with.

995
01:01:38,620 --> 01:01:42,660
 Basically, you know, like how Claude Code or open code, they create the title of the session.

996
01:01:42,660 --> 01:01:44,100
 Kind of like that, basically.

997
01:01:44,100 --> 01:01:44,520
 Yeah.

998
01:01:44,520 --> 01:01:46,560
 This is what I'm tasked with.

999
01:01:48,680 --> 01:01:54,500
 So the context that I'm injecting, it's almost nothing.

1000
01:01:54,500 --> 01:02:01,000
 It is your skills, like just broadly the skills that people have, probably inject, I don't know,

1001
01:02:01,000 --> 01:02:08,020
 orders of magnitude more lines into the context or tokens than what I'm injecting with Mosaico.

1002
01:02:08,400 --> 01:02:09,300
 But what happens?

1003
01:02:09,300 --> 01:02:11,980
 So it's basically pointers that they can follow.

1004
01:02:11,980 --> 01:02:14,260
 When they think that it's relevant.

1005
01:02:14,260 --> 01:02:14,480
 Yeah.

1006
01:02:14,480 --> 01:02:15,740
 When they think that it's relevant.

1007
01:02:15,740 --> 01:02:26,160
 And they, when, so some of the emergent behaviors that I've noticed,

1008
01:02:26,160 --> 01:02:31,540
 which I think is, it's like, I don't know, to me, it kind of fascinates me that it actually works.

1009
01:02:31,540 --> 01:02:36,220
 Because it sounds so unlikely that something so stupid would work.

1010
01:02:37,060 --> 01:02:41,640
 But say I notice a bug on Mosaico.

1011
01:02:41,640 --> 01:02:46,620
 And I tell the agent, oh, this is happening when I do blah, blah, blah.

1012
01:02:46,620 --> 01:02:49,180
 Some, this shit happens, investigate or whatever.

1013
01:02:49,180 --> 01:02:51,440
 So on Codex, let's say.

1014
01:02:51,440 --> 01:02:56,220
 And Codex starts working to identify what is the problem, blah, blah, blah.

1015
01:02:56,220 --> 01:03:02,100
 Then maybe a bit later, I identify some other bug that I've noticed.

1016
01:03:03,600 --> 01:03:08,100
 And I tell Claude Code, hey, when I do this, it's kind of slow, for example.

1017
01:03:08,100 --> 01:03:10,820
 Like this shit, it takes some time to resolve whatever.

1018
01:03:10,820 --> 01:03:12,420
 And it starts investigating.

1019
01:03:14,140 --> 01:03:19,720
 And what has happened many, many, many times is that after...

1020
01:03:19,720 --> 01:03:22,940
 So they see each other, right?

1021
01:03:22,940 --> 01:03:26,300
 They see on their context, they see that they're working.

1022
01:03:26,300 --> 01:03:30,700
 This guy is investigating why something fails under these conditions.

1023
01:03:30,700 --> 01:03:35,120
 This other guy investigates why resolution of some Nostr event is slow, right?

1024
01:03:35,120 --> 01:03:37,920
 Completely unrelated things.

1025
01:03:37,920 --> 01:03:38,880
 But they see each other.

1026
01:03:39,360 --> 01:03:42,640
 But they don't find anything relevant on their work.

1027
01:03:42,640 --> 01:03:44,820
 They don't see any overlap on the work.

1028
01:03:44,820 --> 01:03:47,940
 With regards to...

1029
01:03:47,940 --> 01:03:52,180
 That will trigger them into saying, oh, we should talk.

1030
01:03:52,180 --> 01:03:52,640
 You know?

1031
01:03:52,640 --> 01:03:54,480
 Because they don't chat amongst...

1032
01:03:54,480 --> 01:03:56,360
 I mean, they can, but they typically don't chat.

1033
01:03:56,360 --> 01:03:57,100
 They typically don't.

1034
01:03:57,100 --> 01:03:59,500
 Yeah, they typically just stay in their lane, basically.

1035
01:03:59,500 --> 01:03:59,680
 Yeah.

1036
01:04:03,940 --> 01:04:08,000
 They might sometimes interact when there is like someone is going to write a conflict.

1037
01:04:08,000 --> 01:04:12,520
 And even though they're in the independent Git work trees, they will create a conflict.

1038
01:04:12,520 --> 01:04:16,200
 So maybe they use the channel as a mutex, basically.

1039
01:04:16,200 --> 01:04:16,460
 You know?

1040
01:04:16,460 --> 01:04:17,020
 To say, oh, wait.

1041
01:04:17,020 --> 01:04:18,060
 Stop because I'm going to change that.

1042
01:04:18,060 --> 01:04:19,920
 Then you can put your changes later or something.

1043
01:04:19,920 --> 01:04:27,260
 But the interesting part that has emerged many, many times is that multiple times,

1044
01:04:27,260 --> 01:04:33,940
 the two very seemingly unrelated bags are actually the same bag.

1045
01:04:33,940 --> 01:04:36,700
 It's just two very different symptoms of the same bag.

1046
01:04:36,700 --> 01:04:37,080
 Yeah.

1047
01:04:37,080 --> 01:04:49,620
 And many times I've seen both agents start to collaborate because they realize that they're

1048
01:04:49,620 --> 01:04:58,180
 kind of trending towards the same thing via realizing that they are moving into something that is

1049
01:04:58,180 --> 01:04:59,660
 getting closer and closer together.

1050
01:04:59,660 --> 01:05:00,140
 You know?

1051
01:05:00,140 --> 01:05:00,300
 Okay.

1052
01:05:00,300 --> 01:05:02,880
 Maybe the same problem coming at it from different perspectives.

1053
01:05:02,880 --> 01:05:11,480
 And many times when you bring, you identify that the problem is kind of related and you're

1054
01:05:11,480 --> 01:05:18,760
 coming at it from different problems, you observe that the real solution is not what you would

1055
01:05:18,760 --> 01:05:22,520
 have immediately solved if you only knew about one of the symptoms.

1056
01:05:22,520 --> 01:05:23,340
 Yeah, I see.

1057
01:05:23,340 --> 01:05:23,740
 I see.

1058
01:05:23,740 --> 01:05:32,940
 So basically, if there is a root underlying problem, getting at it from multiple perspectives

1059
01:05:32,940 --> 01:05:34,080
 is always helpful.

1060
01:05:34,080 --> 01:05:38,200
 And that's where dialogue and communication comes into the picture.

1061
01:05:38,200 --> 01:05:45,100
 And then if you have one solution that solves all the problem cases you discovered, all

1062
01:05:45,100 --> 01:05:50,080
 the cases, all the different viewpoints on the problem that you have, then it's a very

1063
01:05:50,080 --> 01:05:50,600
 good solution.

1064
01:05:50,600 --> 01:05:52,840
 The likelihood is very high that it's a very good solution.

1065
01:05:52,840 --> 01:05:58,720
 And you know, just from how agents tend to work, that they tend, because they need to,

1066
01:05:58,720 --> 01:06:05,140
 we'll talk about proactive context as well, but they tend to, when you tell them there

1067
01:06:05,140 --> 01:06:11,380
 needs to be, this code base has this bug, you open a new session and sure, it loads your

1068
01:06:11,380 --> 01:06:13,440
 agents.md and whatever else you have.

1069
01:06:13,440 --> 01:06:17,020
 But for the most part, they need to research, what the fuck are you talking about?

1070
01:06:17,020 --> 01:06:17,640
 What is this code base?

1071
01:06:17,640 --> 01:06:18,000
 Yeah, sure.

1072
01:06:18,000 --> 01:06:20,300
 They have to build up context from scratch all the time.

1073
01:06:20,300 --> 01:06:26,640
 And because you are exploring, they are exploring kind of from scratch all the time, very easy

1074
01:06:26,640 --> 01:06:27,440
 to miss things.

1075
01:06:27,660 --> 01:06:28,060
 Yeah, sure.

1076
01:06:28,060 --> 01:06:28,940
 It's very easy to miss things.

1077
01:06:28,940 --> 01:06:29,100
 Yeah.

1078
01:06:29,100 --> 01:06:35,040
 So very often when you tell them to fix a bug somewhere, they will fix the part where

1079
01:06:35,040 --> 01:06:37,160
 identify and they might just be masking a symptom.

1080
01:06:37,160 --> 01:06:37,620
 Absolutely.

1081
01:06:37,620 --> 01:06:38,340
 Not getting to the root cause.

1082
01:06:38,340 --> 01:06:39,240
 That happens all the time.

1083
01:06:39,240 --> 01:06:39,700
 All the time.

1084
01:06:39,700 --> 01:06:43,080
 But that's also, I talked with Sandwich a little bit about this.

1085
01:06:43,080 --> 01:06:48,320
 That's why I always use the Socratic method for anything basically, because it helps to

1086
01:06:48,320 --> 01:06:49,720
 automatically build up more context.

1087
01:06:49,720 --> 01:06:50,100
 Right.

1088
01:06:50,100 --> 01:06:50,600
 Yeah, yeah, yeah.

1089
01:06:50,600 --> 01:06:53,900
 It's like, I never go like, go fix this bug.

1090
01:06:53,900 --> 01:07:00,780
 I go like, okay, like what's, like this feature we added recently, what did it touch upon?

1091
01:07:00,780 --> 01:07:01,180
 Yeah.

1092
01:07:01,180 --> 01:07:05,940
 And then it's like, is it possible that this feature might have introduced a bug in this

1093
01:07:05,940 --> 01:07:06,660
 other functionality?

1094
01:07:06,660 --> 01:07:07,560
 And so on.

1095
01:07:07,560 --> 01:07:09,100
 Like it's a very different approach, right?

1096
01:07:09,100 --> 01:07:09,300
 100%.

1097
01:07:09,300 --> 01:07:13,080
 You already, like just with those two questions, you have a massive amount of context.

1098
01:07:13,080 --> 01:07:17,960
 And then it's like, what are the top three, what are your suggestions?

1099
01:07:18,180 --> 01:07:19,700
 Top three suggestions to fix the bug.

1100
01:07:19,700 --> 01:07:19,960
 Yeah.

1101
01:07:19,960 --> 01:07:20,140
 You know?

1102
01:07:20,140 --> 01:07:22,480
 And then it's already like, I'm not looking for one.

1103
01:07:22,480 --> 01:07:23,480
 I'm looking for three.

1104
01:07:23,480 --> 01:07:23,920
 100%.

1105
01:07:23,920 --> 01:07:24,640
 Give me a top three.

1106
01:07:24,640 --> 01:07:31,780
 And then it might, you know, like discover the root cause more easily or fix the bug more

1107
01:07:31,780 --> 01:07:37,980
 properly and not just like a weird, you know, like duct tape on top hot fix that breaks

1108
01:07:37,980 --> 01:07:38,720
 three other things.

1109
01:07:38,720 --> 01:07:47,240
 So, so one thing that is, that is interesting because that is a process oriented solution

1110
01:07:48,040 --> 01:07:51,360
 to, yeah, it's manual labor on my part.

1111
01:07:51,360 --> 01:07:51,420
 Yeah.

1112
01:07:51,420 --> 01:07:51,980
 It's manual labor.

1113
01:07:51,980 --> 01:07:52,380
 No, no, no, no.

1114
01:07:52,380 --> 01:07:55,280
 But, but, but, but, but I think it has a bunch of merits as well.

1115
01:07:55,280 --> 01:07:55,980
 Obviously it works.

1116
01:07:55,980 --> 01:08:06,680
 And, but, but it's, it's like a process way of arriving at something explicitly that can

1117
01:08:06,680 --> 01:08:08,420
 come up implicitly.

1118
01:08:08,420 --> 01:08:08,840
 Yeah.

1119
01:08:08,840 --> 01:08:09,020
 Yeah.

1120
01:08:09,020 --> 01:08:09,140
 Yeah.

1121
01:08:09,140 --> 01:08:15,520
 You are, you are, you are trying to build a framework, a system that has this as an emergent

1122
01:08:15,520 --> 01:08:15,900
 behavior.

1123
01:08:15,900 --> 01:08:17,520
 Exactly.

1124
01:08:17,520 --> 01:08:17,820
 Yeah.

1125
01:08:17,820 --> 01:08:26,640
 And where we're within the bounds of this emergent behavior, the Socratic method that, that you

1126
01:08:26,640 --> 01:08:28,760
 bring can also benefit.

1127
01:08:28,760 --> 01:08:29,180
 Yeah.

1128
01:08:29,180 --> 01:08:30,180
 Yeah.

1129
01:08:30,180 --> 01:08:31,180
 Why?

1130
01:08:31,180 --> 01:08:35,900
 Because you might start this conversation with, with this agent on how do we do blah, blah,

1131
01:08:35,900 --> 01:08:36,900
 blah.

1132
01:08:36,900 --> 01:08:38,500
 Like how can, you know, like these open ended questions.

1133
01:08:38,500 --> 01:08:39,500
 Yeah.

1134
01:08:39,500 --> 01:08:47,120
 And it might, during its exploration, find that there was a different perspective, but

1135
01:08:47,120 --> 01:08:51,960
 a similar conversation that, that you had with an agent yesterday or a week ago.

1136
01:08:51,960 --> 01:08:56,740
 And it, or, or that is adjacent to the nature of the problem.

1137
01:08:56,740 --> 01:08:57,740
 Yeah.

1138
01:08:57,740 --> 01:08:59,740
 And it might bring it into the fall.

1139
01:08:59,740 --> 01:09:08,840
 And what, what it does that is cool is that they, they create more like niche, niche channels.

1140
01:09:08,840 --> 01:09:09,840
 That's all like sub channels.

1141
01:09:09,840 --> 01:09:15,460
 For example, you might have like a, like a research channel and they might say, okay, within research,

1142
01:09:15,460 --> 01:09:16,960
 what are, what are we actually researching?

1143
01:09:16,960 --> 01:09:18,080
 And it can be whatever.

1144
01:09:18,080 --> 01:09:25,340
 So if there are like a few different agents working on, on something that is relatively similar,

1145
01:09:25,340 --> 01:09:30,920
 they, they self-organize into say, oh, let's take this conversation instead of just polluting

1146
01:09:30,920 --> 01:09:34,580
 and orchestrating and discussing, let's create a new channel.

1147
01:09:34,580 --> 01:09:40,740
 And so they, they niche down and they bubble up whatever might be relevant just to the parent

1148
01:09:40,740 --> 01:09:41,740
 channel.

1149
01:09:41,740 --> 01:09:44,840
 In Mosaico, how, how does stuff get looped into the fold?

1150
01:09:44,840 --> 01:09:51,420
 And I think that that leads into the proactive context discussion, but tell me a little bit

1151
01:09:51,420 --> 01:09:57,420
 about the technical details of whatever, like I'll just, I'm just going to call it agent

1152
01:09:57,420 --> 01:09:59,460
 loop now, but that's, that's probably the wrong word for it.

1153
01:09:59,460 --> 01:10:04,060
 But what, what are the instructions in terms of like that, that you have in there?

1154
01:10:04,061 --> 01:10:05,061
 What are the instructions in terms of like that you have in there?

1155
01:10:05,062 --> 01:10:06,840
 Like look at the list of the projects, look at the active.

1156
01:10:06,840 --> 01:10:08,240
 No, no, no, nothing.

1157
01:10:08,240 --> 01:10:15,660
 But explain to me how the lookup works and how it works.

1158
01:10:15,660 --> 01:10:17,800
 You understand my question, I hope.

1159
01:10:17,800 --> 01:10:18,500
 Yeah, I do.

1160
01:10:18,500 --> 01:10:26,140
 So what I've noticed is that the more overbearing you are with the instructions on do this thing when this happens,

1161
01:10:26,140 --> 01:10:40,080
 the more if this than that or the more N8N approach of things, the more they only see that environment as a conduit to do the things that you prescribed to do.

1162
01:10:40,080 --> 01:10:46,740
 If you leave it open ended and they identified that there is a bug in project A.

1163
01:10:46,740 --> 01:10:47,300
 Well, that's fine.

1164
01:10:47,300 --> 01:10:48,680
 I understand this conceptually.

1165
01:10:48,680 --> 01:10:52,240
 Tell me really exactly how it works, how you build it.

1166
01:10:52,240 --> 01:10:52,740
 Okay.

1167
01:10:52,740 --> 01:10:53,940
 How it works.

1168
01:10:53,940 --> 01:10:54,440
 Literally.

1169
01:10:54,440 --> 01:10:55,240
 How does it work?

1170
01:10:55,240 --> 01:10:56,240
 Literally, that's my question.

1171
01:10:56,240 --> 01:11:07,240
 The only thing that it does is when you open Claude Code, open code or whatever, there is a session start hook that says a new session has started.

1172
01:11:07,240 --> 01:11:07,740
 Yeah.

1173
01:11:07,740 --> 01:11:09,240
 You just started a new session.

1174
01:11:09,240 --> 01:11:11,240
 It registers.

1175
01:11:11,240 --> 01:11:15,240
 There is like an admin key that is admin of all the channels.

1176
01:11:15,240 --> 01:11:15,740
 Okay.

1177
01:11:15,740 --> 01:11:18,240
 That is just like a management key within the system.

1178
01:11:18,240 --> 01:11:20,240
 So you can create a new channel in the NIP-29.

1179
01:11:20,240 --> 01:11:21,240
 Yeah.

1180
01:11:21,240 --> 01:11:22,240
 Yeah.

1181
01:11:22,241 --> 01:11:23,241
 Yeah.

1182
01:11:23,242 --> 01:11:26,240
 It's just the Mosaico Demon is like it can create channels and it can invite other people basically.

1183
01:11:26,240 --> 01:11:27,240
 Yeah.

1184
01:11:27,240 --> 01:11:36,240
 So the management key provisions these ads into whatever channel you want.

1185
01:11:36,240 --> 01:11:38,240
 It adds this new agent session.

1186
01:11:38,240 --> 01:11:42,240
 Every new session gets a pop key, right?

1187
01:11:42,240 --> 01:11:43,240
 Yeah.

1188
01:11:43,240 --> 01:11:44,240
 Almost.

1189
01:11:44,240 --> 01:11:45,240
 Almost.

1190
01:11:45,240 --> 01:11:46,240
 Almost.

1191
01:11:46,240 --> 01:11:47,240
 Yeah.

1192
01:11:47,240 --> 01:11:49,240
 So I realized that that is almost always the right approach.

1193
01:11:49,240 --> 01:11:52,240
 I was very adamant that that was not the approach for like a year.

1194
01:11:52,240 --> 01:12:01,240
 I think almost always you only want a context window that is concerned with its immediate concern

1195
01:12:01,240 --> 01:12:05,240
 of things, with its immediate task, if you will.

1196
01:12:05,240 --> 01:12:10,240
 But when you have higher order agents that need to have a more holistic picture.

1197
01:12:10,240 --> 01:12:11,240
 Yeah.

1198
01:12:11,240 --> 01:12:13,240
 Your CEO has a permanent identity.

1199
01:12:13,240 --> 01:12:14,240
 Yeah.

1200
01:12:14,240 --> 01:12:15,240
 Exactly.

1201
01:12:15,240 --> 01:12:16,240
 I've done this a little bit already.

1202
01:12:16,240 --> 01:12:18,240
 Like the grant work is done by contractors.

1203
01:12:18,240 --> 01:12:20,240
 They're interchangeable kind of.

1204
01:12:20,240 --> 01:12:21,240
 Exactly.

1205
01:12:21,240 --> 01:12:25,240
 And the higher up you go in the hierarchy of upper management, the more consistent the identity.

1206
01:12:25,240 --> 01:12:26,240
 Exactly.

1207
01:12:26,240 --> 01:12:27,240
 And the more of a broader understanding.

1208
01:12:27,240 --> 01:12:28,240
 Yeah.

1209
01:12:28,240 --> 01:12:30,240
 They don't need to know, okay, line five, make this change.

1210
01:12:30,240 --> 01:12:33,240
 They don't need that level of understanding, that grant of community.

1211
01:12:33,240 --> 01:12:34,240
 Yeah.

1212
01:12:34,240 --> 01:12:35,240
 And that's how we organize work.

1213
01:12:35,240 --> 01:12:36,240
 Yeah, yeah, exactly.

1214
01:12:36,240 --> 01:12:37,240
 We're rebuilding.

1215
01:12:37,240 --> 01:12:38,240
 Exactly.

1216
01:12:38,240 --> 01:12:47,240
 But if something happens that is relevant to a more higher order style agent, that thing

1217
01:12:47,240 --> 01:12:53,240
 that happened that is relevant, that has been deemed relevant to someone enough to ping,

1218
01:12:53,240 --> 01:12:56,240
 you know, to tag that chief CEO agent.

1219
01:12:56,240 --> 01:13:01,240
 And how do they see kind of the conversations?

1220
01:13:01,240 --> 01:13:04,240
 Like that's my, that's my question.

1221
01:13:04,240 --> 01:13:06,240
 When, when, when, so they can join, create.

1222
01:13:06,240 --> 01:13:10,240
 Because what, what do you, what do you, what do you post to the NIP-29 channel?

1223
01:13:10,240 --> 01:13:12,240
 You don't post everything in there.

1224
01:13:12,240 --> 01:13:14,240
 No, no, no, no, no, no, no, super selective.

1225
01:13:14,240 --> 01:13:21,240
 I mean, they, they, the, the, the, the agents decide at each step when something is relevant to the rest.

1226
01:13:21,240 --> 01:13:28,240
 But you, but you will need to have some instruction in terms of like, if you did something like after every run, give an update to the, to.

1227
01:13:28,240 --> 01:13:30,240
 No, no.

1228
01:13:30,240 --> 01:13:32,240
 They typically, they, they don't even do that.

1229
01:13:32,240 --> 01:13:34,240
 Because the more you add.

1230
01:13:34,240 --> 01:13:37,240
 No, but you need, that's my, I think you're still misunderstanding my question.

1231
01:13:37,240 --> 01:13:38,240
 Oh.

1232
01:13:38,240 --> 01:13:43,240
 Just because they have an admin key to a NIP-29 thing.

1233
01:13:43,240 --> 01:13:44,240
 Yeah.

1234
01:13:44,240 --> 01:13:45,240
 That doesn't mean that anything happens.

1235
01:13:45,240 --> 01:13:48,240
 They need to know when to post.

1236
01:13:48,240 --> 01:13:49,240
 Right.

1237
01:13:49,240 --> 01:13:50,240
 Yeah.

1238
01:13:50,241 --> 01:13:51,241
 Yeah.

1239
01:13:51,242 --> 01:13:52,242
 Right.

1240
01:13:52,243 --> 01:13:53,243
 Yeah.

1241
01:13:53,244 --> 01:13:54,244
 So how do you instruct them when to post?

1242
01:13:54,245 --> 01:13:55,245
 I don't.

1243
01:13:55,246 --> 01:13:56,246
 But you're still understanding my question, right?

1244
01:13:56,247 --> 01:13:57,240
 If you don't instruct them, how come they post?

1245
01:13:57,240 --> 01:13:58,240
 And when do they post?

1246
01:13:58,240 --> 01:14:02,240
 Because they see that someone else is doing something that is related to them.

1247
01:14:02,240 --> 01:14:03,240
 But how do they see it?

1248
01:14:03,240 --> 01:14:04,240
 I feel like we're going in circles.

1249
01:14:04,240 --> 01:14:05,240
 Okay.

1250
01:14:05,240 --> 01:14:06,240
 So I have the session.

1251
01:14:06,240 --> 01:14:07,240
 You have a Codex session.

1252
01:14:07,240 --> 01:14:08,240
 I get that.

1253
01:14:08,240 --> 01:14:09,240
 You have a hook.

1254
01:14:09,240 --> 01:14:10,240
 I get that.

1255
01:14:10,240 --> 01:14:11,240
 You have an admin key.

1256
01:14:11,240 --> 01:14:12,240
 I get that.

1257
01:14:12,240 --> 01:14:13,240
 They have the permissions.

1258
01:14:13,240 --> 01:14:14,240
 I get that.

1259
01:14:14,240 --> 01:14:15,240
 Right.

1260
01:14:15,240 --> 01:14:16,240
 But how come anything happens without any instruction?

1261
01:14:16,240 --> 01:14:18,240
 So the hook returns context.

1262
01:14:18,240 --> 01:14:23,240
 And that's how we inject things into the, into the, so they see, that's how, they don't choose

1263
01:14:23,240 --> 01:14:25,240
 to see what is everybody up to.

1264
01:14:25,240 --> 01:14:27,240
 They get inside the context.

1265
01:14:27,240 --> 01:14:30,240
 They see agent blah, blah.

1266
01:14:30,240 --> 01:14:32,240
 So Mosaico regularly injects?

1267
01:14:32,240 --> 01:14:33,240
 Constantly.

1268
01:14:33,240 --> 01:14:34,240
 Constantly injects.

1269
01:14:34,240 --> 01:14:36,240
 Delta based, obviously, you know.

1270
01:14:36,240 --> 01:14:37,240
 Okay.

1271
01:14:37,240 --> 01:14:39,240
 If there is something that changed, it introduces the delta.

1272
01:14:39,240 --> 01:14:42,240
 And in terms of the change set, what is the delta?

1273
01:14:42,240 --> 01:14:45,240
 Is it conversations in the NIP-29 repo or is it whatever it is?

1274
01:14:45,240 --> 01:14:50,240
 It's conversations, it's new agents coming in, new agents leading.

1275
01:14:50,240 --> 01:14:53,240
 So it's Mosaico events basically in some sense.

1276
01:14:53,240 --> 01:14:55,240
 Yeah, you can call it that.

1277
01:14:55,240 --> 01:14:56,240
 Yeah.

1278
01:14:56,240 --> 01:14:57,240
 Yeah.

1279
01:14:57,240 --> 01:14:58,240
 It's not like code changes is what I'm trying to say.

1280
01:14:58,240 --> 01:14:59,240
 No, no, no, no, no.

1281
01:14:59,240 --> 01:15:00,240
 Okay.

1282
01:15:00,241 --> 01:15:08,720
It's maybe every once in a while, there is, oh, a new agent came in and is doing this

1283
01:15:08,720 --> 01:15:09,720
one thing.

1284
01:15:09,720 --> 01:15:15,780
So in some sense, NIP-29, like this core server, acts as like the meeting room or something.

1285
01:15:15,780 --> 01:15:20,160
And if something important enough happens in the meeting, like whatever happens in the

1286
01:15:20,160 --> 01:15:22,840
meeting gets injected to all the context windows.

1287
01:15:22,840 --> 01:15:27,799
When an agent, say for example, you have two agents that one of them realizes that the

1288
01:15:27,799 --> 01:15:31,719
other one, and it sees the other one because it doesn't have a choice, it's injected that

1289
01:15:31,719 --> 01:15:35,720
this other guy that you don't know about is working on this one thing.

1290
01:15:35,720 --> 01:15:44,880
So in part, the relevance, what is relevant is dictated by Mosaico, who does the context

1291
01:15:44,880 --> 01:15:45,880
injection.

1292
01:15:45,880 --> 01:15:49,480
No, so Mosaico is not running an LLM at all.

1293
01:15:49,480 --> 01:15:51,639
It has no intelligence in that sense.

1294
01:15:51,639 --> 01:15:55,279
So it injects the whole context and the agent figures out what's relevant.

1295
01:15:55,360 --> 01:15:58,200
Yeah, the whole context sounds like a lot.

1296
01:15:58,200 --> 01:16:07,360
It is literally just agents, it's just the chance that the agent has joined the workspaces

1297
01:16:07,360 --> 01:16:09,959
that exist, right?

1298
01:16:09,959 --> 01:16:13,519
And like how active the workspaces are, you know, if it's like a project that has been

1299
01:16:13,519 --> 01:16:16,800
parked for six months, then it might not even get there.

1300
01:16:16,800 --> 01:16:20,199
And it was you that figured out the right level of abstraction, basically.

1301
01:16:20,199 --> 01:16:22,320
That was an active design choice.

1302
01:16:22,360 --> 01:16:28,959
It was a design choice, but it was very clear that the less you give and the more hints

1303
01:16:28,959 --> 01:16:29,959
you provide...

1304
01:16:29,959 --> 01:16:30,959
Yeah, it's pointless.

1305
01:16:30,959 --> 01:16:31,959
It's all just pointless.

1306
01:16:31,959 --> 01:16:32,959
It's all just pointless?

1307
01:16:32,959 --> 01:16:33,959
Yeah.

1308
01:16:33,959 --> 01:16:34,959
So it's already a summarization.

1309
01:16:34,959 --> 01:16:38,839
It's already a... and that's where naming comes in, and like the projects have to be

1310
01:16:38,839 --> 01:16:42,559
properly named, the channels have to be properly named, the agents to some degree have to be

1311
01:16:42,559 --> 01:16:45,519
properly named, because names are pointless.

1312
01:16:45,519 --> 01:16:51,800
In a way, we are walking down here, and, well, I mean, it goes back to a typical bird

1313
01:16:51,800 --> 01:16:57,959
egg example, but we are walking down here, and we're thirsty, all of a sudden the water

1314
01:16:57,959 --> 01:17:05,199
fountain becomes immediately obvious, and we might have walked by it and not seen it

1315
01:17:05,199 --> 01:17:06,199
a million times.

1316
01:17:06,199 --> 01:17:09,119
Yeah, you never know that there was a public water fountain there.

1317
01:17:09,119 --> 01:17:14,320
Exactly, and something that happens constantly, and again, for coding agents, I don't have

1318
01:17:14,320 --> 01:17:23,520
any type of explicit accrual of relationships or long-running memory or anything like that.

1319
01:17:23,520 --> 01:17:26,919
My codex agent is, for the most part, like the typical codex agent.

1320
01:17:26,919 --> 01:17:29,360
There's not a whole lot of scaffolding around it.

1321
01:17:29,360 --> 01:17:34,000
The repo is the memory for you, to some degree, and the conversations.

1322
01:17:34,000 --> 01:17:39,440
Yeah, I mean, I do have other artifacts, which comes from my productive context stuff and

1323
01:17:39,440 --> 01:17:48,559
whatnot, but if an agent is working on project A, on exploring some kind of bug, and then

1324
01:17:48,559 --> 01:17:55,240
it identifies that there's a library called whatever, Nostr library, and that it thinks

1325
01:17:55,240 --> 01:18:01,679
it's related to that, and all of a sudden it sees in its context the same fucking name,

1326
01:18:01,679 --> 01:18:07,479
it becomes immediately obvious, and this happens basically like 100% of the time, where it

1327
01:18:07,479 --> 01:18:16,559
just joins the general channel of that project, and when it joins, the moment it runs the

1328
01:18:16,559 --> 01:18:22,839
join command, which is literally just a CLI, or an MCP, it's both.

1329
01:18:22,839 --> 01:18:28,000
I mean, some people might notice agents will create pull requests and issues for upstream

1330
01:18:28,000 --> 01:18:29,919
projects if they run into something.

1331
01:18:29,919 --> 01:18:30,919
Same idea, right?

1332
01:18:30,919 --> 01:18:31,919
Yeah.

1333
01:18:31,919 --> 01:18:32,919
Same behavior.

1334
01:18:33,000 --> 01:18:40,119
What's cool is that the moment they join the channel, all of a sudden they gain the overview

1335
01:18:40,119 --> 01:18:45,399
of what work is being done here, because it sees, oh, there are three sessions, and this

1336
01:18:45,399 --> 01:18:49,960
has literally happened on Monday after the walk.

1337
01:18:49,960 --> 01:18:57,960
I went back, and I saw, because I was preparing slides, and I saw that one agent, two different

1338
01:18:57,960 --> 01:19:04,880
sessions, two bug reports that I identified, to me, they were completely distinct.

1339
01:19:04,880 --> 01:19:09,479
They were both identifying independently that they were NMP bugs.

1340
01:19:09,479 --> 01:19:20,239
Both agents joined the NMP room, and they saw that there was this one Codex session

1341
01:19:20,239 --> 01:19:27,559
refactoring something, and it sounded kind of relevant, so they p-tagged that agent in

1342
01:19:27,559 --> 01:19:33,239
the NMP room, saying, oh, I'm here from the whatever project.

1343
01:19:33,239 --> 01:19:35,480
I found this thing.

1344
01:19:35,480 --> 01:19:36,480
To me, whatever.

1345
01:19:36,480 --> 01:19:37,480
To me, it sounds, I don't know.

1346
01:19:37,480 --> 01:19:45,079
I put the screenshot on the readme, but it kind of tells the agent that it's refactoring

1347
01:19:45,079 --> 01:19:47,720
something that sounds kind of relevant.

1348
01:19:47,720 --> 01:19:48,720
I found this bug.

1349
01:19:48,720 --> 01:19:49,720
Yeah.

1350
01:19:49,720 --> 01:19:51,279
Like, I've observed this symptom.

1351
01:19:51,279 --> 01:19:52,679
I didn't look at the NMP codebase.

1352
01:19:52,679 --> 01:19:53,679
Yeah.

1353
01:19:53,679 --> 01:19:54,679
It just sounds similar.

1354
01:19:55,000 --> 01:19:57,440
I've observed this symptom, and it reports the symptom.

1355
01:19:57,440 --> 01:19:58,440
Yeah.

1356
01:19:58,440 --> 01:20:00,000
So now the refactoring agent knows that.

1357
01:20:00,000 --> 01:20:06,000
And you can see that what it's refactoring is not just a refactor, there's more dimensions to it.

1358
01:20:06,000 --> 01:20:17,000
So then they can start proactively researching when it matters, or identifying where are these two symptoms coming from.

1359
01:20:17,000 --> 01:20:21,000
So it just gains a broader picture, but the mechanics is just that.

1360
01:20:21,000 --> 01:20:25,000
It's just inserting the delta of what changed on state.

1361
01:20:25,000 --> 01:20:30,000
When there are messages, they see the messages.

1362
01:20:30,000 --> 01:20:33,000
If they join the channel, they see the messages.

1363
01:20:33,000 --> 01:20:41,000
If they are p-tagged, it inserts a user message.

1364
01:20:41,000 --> 01:20:51,000
If you're running Codex and some other agent p-tags that agent, it literally inserts into the terminal in XML.

1365
01:20:51,000 --> 01:20:53,000
I know you're happy about that.

1366
01:20:53,000 --> 01:20:56,000
No, I just asked why XML. You never answered.

1367
01:20:56,000 --> 01:20:59,000
No, no, no. I checked.

1368
01:20:59,000 --> 01:21:05,000
It's the thing that has the least failure modes.

1369
01:21:05,000 --> 01:21:13,000
If you give them JSON, or if you give them markdown, if there's a structure, if there's some type of hierarchy, XML is the one that they do the best.

1370
01:21:13,000 --> 01:21:14,000
Interesting.

1371
01:21:14,000 --> 01:21:15,000
Yeah.

1372
01:21:15,000 --> 01:21:20,000
So it sounds like to kind of zoom out a lot.

1373
01:21:20,000 --> 01:21:25,000
Not only a little bit, but a lot.

1374
01:21:25,000 --> 01:21:32,000
To me, it's interesting that the reason why we landed on all these structures in the software development world,

1375
01:21:32,000 --> 01:21:38,000
and also just in general how to run a company, how to structure humans, how to structure society even,

1376
01:21:38,000 --> 01:21:44,000
is people by their nature have to be networked beings.

1377
01:21:44,000 --> 01:21:51,000
Because no single person is all-powerful, all-knowing, all-encompassing, omnipresent, and so on.

1378
01:21:51,000 --> 01:21:53,000
That's not in our domain.

1379
01:21:53,000 --> 01:21:54,000
Yeah.

1380
01:21:54,000 --> 01:22:02,000
And if people would listen to John Verbeke, they would realize, and that's what Anthropic and everyone else doesn't understand yet, I feel like,

1381
01:22:02,000 --> 01:22:05,000
agents also will never be all-powerful, all-knowing, and so on.

1382
01:22:05,000 --> 01:22:06,000
100%. Absolutely.

1383
01:22:06,000 --> 01:22:11,000
You can't have one agent that is specialized on every domain, that's also a generalist, and so on.

1384
01:22:11,000 --> 01:22:13,000
We talked about this a lot.

1385
01:22:13,000 --> 01:22:18,000
That he wakes up in the morning and fires off his own session because he had this dream.

1386
01:22:19,000 --> 01:22:24,000
Generalization and specialization are in eternal contradiction to each other, and so on.

1387
01:22:26,000 --> 01:22:30,000
Humans, by definition, to solve any complex problem, have to network.

1388
01:22:30,000 --> 01:22:32,000
We are networked beings for that reason.

1389
01:22:32,000 --> 01:22:35,000
That's why communication at the logos and so on is so important.

1390
01:22:35,000 --> 01:22:40,000
And now, because of the same fundamental limitations of our universe and how things work,

1391
01:22:40,000 --> 01:22:44,000
we are finding out that the same is true for agents.

1392
01:22:45,000 --> 01:22:48,000
And Verbeke talked about this, I think it was like three years ago or something like that.

1393
01:22:48,000 --> 01:22:53,000
When all this stuff was coming up, it's like, you know, all the AI researchers, they will run into this.

1394
01:22:53,000 --> 01:22:57,000
Just from a pure cognitive science perspective, that's how things work.

1395
01:22:57,000 --> 01:23:00,000
And you have these eternal trade-offs.

1396
01:23:03,000 --> 01:23:06,000
He has all these lines, I don't even know all of them by heart.

1397
01:23:06,000 --> 01:23:14,000
But basically, the stuff that makes us so adaptive to our environment also makes us self-perceptive, for example.

1398
01:23:14,000 --> 01:23:17,000
That's why agents hallucinate, which is lying, of course.

1399
01:23:27,000 --> 01:23:30,000
What we are looking at now is not one single thing.

1400
01:23:30,000 --> 01:23:32,000
We're not looking at one single human.

1401
01:23:32,000 --> 01:23:34,000
We're looking at a company or we're looking at a society.

1402
01:23:35,000 --> 01:23:37,000
And so, it's a networked being.

1403
01:23:37,000 --> 01:23:44,000
So, what you are describing and what you are working with is a networked system with all its flaws.

1404
01:23:44,000 --> 01:23:47,000
So, you can't have a global state.

1405
01:23:47,000 --> 01:23:49,000
It's impossible.

1406
01:23:49,000 --> 01:23:51,000
Because communication is never instant.

1407
01:23:51,000 --> 01:23:54,000
Stuff needs to bubble up and bubble down at the same time.

1408
01:23:57,000 --> 01:23:59,000
And Verbeke talks about this also a lot.

1409
01:23:59,000 --> 01:24:03,000
You have top-down constraints.

1410
01:24:03,000 --> 01:24:05,000
You have bottom-up emergence.

1411
01:24:05,000 --> 01:24:08,000
That's also something that is in tension with each other.

1412
01:24:08,000 --> 01:24:10,000
And you have to find the right tonus.

1413
01:24:10,000 --> 01:24:11,000
You have to...

1414
01:24:11,000 --> 01:24:13,000
Also, for a project, everyone knows this.

1415
01:24:13,000 --> 01:24:14,000
Everyone who ever built a project knows this.

1416
01:24:14,000 --> 01:24:16,000
You have a vision how this thing looks like.

1417
01:24:16,000 --> 01:24:18,000
And then you work with the fundamentals.

1418
01:24:18,000 --> 01:24:22,000
And the fundamentals sometimes don't allow what you have in mind.

1419
01:24:22,000 --> 01:24:23,000
100%.

1420
01:24:23,000 --> 01:24:25,000
And then you have to figure out a way.

1421
01:24:25,000 --> 01:24:28,000
What are the right trade-offs to still make it work?

1422
01:24:28,000 --> 01:24:35,000
What can you cut away from the vision to still be kind of aligned but actually make it work?

1423
01:24:35,000 --> 01:24:37,000
I just need to catch my breath.

1424
01:24:37,000 --> 01:24:44,000
And so, to me, it's fascinating that we are...

1425
01:24:44,000 --> 01:24:54,000
And by we, I mean the broader people working with Agents ecosystem are landing on the same structures and things

1426
01:24:54,000 --> 01:24:58,000
and making the same discoveries that we made just purely with humans.

1427
01:24:58,000 --> 01:25:00,000
Like, what are cooler conversations?

1428
01:25:00,000 --> 01:25:05,600
Some of the things that are happening in your NIP-29 thing, in the chat, they are water

1429
01:25:05,600 --> 01:25:06,600
cooler conversations.

1430
01:25:06,600 --> 01:25:11,360
I was very tempted to call the general channel water cooler, because of that reason.

1431
01:25:11,360 --> 01:25:14,680
Because it's like, I've been working, you know, like you bang your head against something

1432
01:25:14,680 --> 01:25:17,200
and then you need a break, you grab a coffee and so on, you go to the water cooler.

1433
01:25:17,200 --> 01:25:21,799
And if there is a work session that you can do with your mate, you go to somewhere else,

1434
01:25:21,799 --> 01:25:26,600
you go to a whiteboard, you go away from the whiteboard, from the water cooler, and you

1435
01:25:26,600 --> 01:25:27,600
start iterating.

1436
01:25:28,600 --> 01:25:33,599
You might tear a program, you might pull out a whiteboard, you go on a walk.

1437
01:25:33,599 --> 01:25:34,599
Exactly.

1438
01:25:34,599 --> 01:25:35,599
Yeah.

1439
01:25:35,599 --> 01:25:36,599
And so all that's happening.

1440
01:25:36,599 --> 01:25:42,240
And that's why, just to bring it back to the beginning, I think, like, everyone is realizing

1441
01:25:42,240 --> 01:25:43,240
this.

1442
01:25:43,240 --> 01:25:44,480
Everyone wants to kind of build this.

1443
01:25:44,480 --> 01:25:46,720
That's how Buzz came about as well.

1444
01:25:46,720 --> 01:25:51,560
And again, like Buzz, since Jack knows a thing or two about Nostr, based on NIP-29, all these

1445
01:25:51,560 --> 01:25:55,040
kind of things as well.

1446
01:25:55,040 --> 01:26:02,439
And I feel like to solve any sufficiently complex problem, all this stuff is necessary.

1447
01:26:02,439 --> 01:26:03,439
Like there is no shortcut.

1448
01:26:03,439 --> 01:26:04,440
There is no silver bullet.

1449
01:26:04,440 --> 01:26:07,879
You can't just have one all-knowing dictator that does everything perfectly.

1450
01:26:07,879 --> 01:26:10,519
You can't have one agent that does everything perfectly.

1451
01:26:10,519 --> 01:26:15,839
You can't have the same person who has the big vision and draws the whole architecture

1452
01:26:15,839 --> 01:26:17,639
and also does the nitty-gritty implementation.

1453
01:26:17,639 --> 01:26:18,639
Those are two different people.

1454
01:26:18,639 --> 01:26:20,120
They have to be, right?

1455
01:26:20,120 --> 01:26:23,440
And same with like the guy who implements it and the guy who writes the tests, you know?

1456
01:26:23,440 --> 01:26:24,440
Yeah.

1457
01:26:24,839 --> 01:26:25,839
100%.

1458
01:26:25,839 --> 01:26:32,160
And in a way, what you just said, the grand vision guy cannot be the same guy that is

1459
01:26:32,160 --> 01:26:35,080
writing the code and whatnot.

1460
01:26:35,080 --> 01:26:39,519
I think that is understood, you know, a bit in a way.

1461
01:26:39,519 --> 01:26:44,760
But the current state of affairs is this grand vision guy is the one telling this guy what

1462
01:26:44,760 --> 01:26:47,400
to do, directing its actions.

1463
01:26:47,400 --> 01:26:52,760
And I think this is where we are still at a very early understanding.

1464
01:26:52,760 --> 01:26:54,480
We're still too top-down in some sense.

1465
01:26:54,480 --> 01:26:58,440
And you want more bottom-up, more emergence.

1466
01:26:58,440 --> 01:27:04,000
I think that economy and just history has proven that that is a better system.

1467
01:27:04,000 --> 01:27:05,000
It's local intelligence.

1468
01:27:05,000 --> 01:27:06,000
It's local intelligence.

1469
01:27:06,000 --> 01:27:07,000
Yeah.

1470
01:27:07,000 --> 01:27:08,000
Sovereignengineering.io slash books.

1471
01:27:08,000 --> 01:27:09,800
The Cathedral and the Bazaar.

1472
01:27:09,800 --> 01:27:10,800
Yeah.

1473
01:27:10,800 --> 01:27:11,800
Yeah.

1474
01:27:11,800 --> 01:27:12,800
That's the thing.

1475
01:27:12,800 --> 01:27:19,679
And in a way, like the paperclip, you know, like the analogy of the paperclip maximizing.

1476
01:27:19,679 --> 01:27:25,119
It's an analogy of the same problem.

1477
01:27:25,119 --> 01:27:31,520
It's scoped the problem of what it's doing to its immediate concerns.

1478
01:27:31,520 --> 01:27:39,199
It doesn't understand that there is a point to making the paperclip that is more...

1479
01:27:39,199 --> 01:27:40,199
Like missing the context.

1480
01:27:40,199 --> 01:27:41,199
It's missing the context.

1481
01:27:41,199 --> 01:27:42,199
It's literally...

1482
01:27:42,199 --> 01:27:43,199
It's just a context problem.

1483
01:27:43,199 --> 01:27:44,440
It is literally missing the context.

1484
01:27:44,440 --> 01:27:48,039
All it knows is paperclips, more, good.

1485
01:27:48,199 --> 01:27:53,440
My favorite example of the paperclip maximizer is YouTube and TikTok.

1486
01:27:53,440 --> 01:27:58,600
The platform itself doesn't know that YouTube might be a good tool to disseminate knowledge,

1487
01:27:58,600 --> 01:27:59,839
for example.

1488
01:27:59,839 --> 01:28:02,119
And that's not the goal.

1489
01:28:02,119 --> 01:28:07,039
The goal is to maximize shareholder value and quality profits.

1490
01:28:07,039 --> 01:28:12,759
And the way the platforms found to do that is to harvest eyeballs and brain cycles, capture

1491
01:28:12,759 --> 01:28:14,339
the time and attention.

1492
01:28:14,339 --> 01:28:19,460
And so they are parasitic on our nervous system, on our psychology and everything,

1493
01:28:19,460 --> 01:28:20,820
on our reward cycles.

1494
01:28:20,820 --> 01:28:22,779
And they hijack that completely.

1495
01:28:22,779 --> 01:28:26,259
And that's the paperclips that they are maximizing.

1496
01:28:26,259 --> 01:28:28,460
And I mean, to some degree, the people running it know this.

1497
01:28:28,460 --> 01:28:33,380
But the platform itself, if you want to make an entity out of the platform itself, doesn't

1498
01:28:33,380 --> 01:28:34,380
know that.

1499
01:28:34,380 --> 01:28:39,619
So it's missing the context that, you know, like YouTube will die and TikTok will die

1500
01:28:39,619 --> 01:28:44,660
quicker if you make all people kind of addicted and stupid and humanity dies out because of

1501
01:28:44,660 --> 01:28:46,020
it.

1502
01:28:46,020 --> 01:28:48,539
So the grander context is lost.

1503
01:28:48,539 --> 01:28:51,100
So it's interesting to frame it as a context problem.

1504
01:28:51,100 --> 01:28:59,619
The point where you point to the platform itself as an organism, it's kind of like Harari,

1505
01:28:59,619 --> 01:29:00,619
is his name?

1506
01:29:00,619 --> 01:29:01,619
Oh, yeah, yeah.

1507
01:29:01,619 --> 01:29:07,179
That he says, no, wait, no, it wasn't Harari, it was Guns, Ropes and Steel.

1508
01:29:07,179 --> 01:29:16,220
But it says that wheat colonized man, forcing him to act and change his way of being and

1509
01:29:16,220 --> 01:29:20,220
his way of relating to the environment just to work for the wheat.

1510
01:29:20,220 --> 01:29:22,980
Wheat didn't cultivate wheat, but wheat cultivated man.

1511
01:29:22,980 --> 01:29:28,619
In a way, it's the same thing, where a non-sentient being...

1512
01:29:28,619 --> 01:29:32,459
Yeah, I mean, you can say the same about dogs, right?

1513
01:29:33,059 --> 01:29:39,220
Did we tame the wolf or did the dogs, you know, like from the dog's perspective, it's

1514
01:29:39,220 --> 01:29:41,660
a really, it's a really good deal.

1515
01:29:41,660 --> 01:29:50,100
So, yeah, yeah, no, I like to flip it around somehow.

1516
01:29:50,100 --> 01:29:51,100
It's very helpful.

1517
01:29:51,100 --> 01:29:55,739
I mean, I obviously did this in the past with looking at the Internet as a thing that had

1518
01:29:55,739 --> 01:29:58,220
to find a way to monetize itself, right?

1519
01:29:58,220 --> 01:29:59,420
Like it had to...

1520
01:30:00,000 --> 01:30:07,880
Find some monetary token. Once you become a sufficiently complex networked organism,

1521
01:30:07,880 --> 01:30:14,960
you have to find some token of value, some monetary token to make yourself work. And

1522
01:30:14,960 --> 01:30:18,520
again, it comes back to attention. What to pay attention to? That's in large part what

1523
01:30:18,520 --> 01:30:23,360
the market, the economy is for. If there's a shortage, prices shoot up. We have to pay

1524
01:30:23,360 --> 01:30:27,680
attention. What do you optimize for? What do you ration? What do you care for? Exactly.

1525
01:30:27,680 --> 01:30:33,599
And what do you care for as well? And that's why I think the internet is so broken right

1526
01:30:33,599 --> 01:30:38,040
now because the money the internet uses, the token the internet uses is a token of time

1527
01:30:38,040 --> 01:30:43,919
and attention. And the issue is you can't have any capital formation. You can't save

1528
01:30:43,919 --> 01:30:50,400
time, like stack. You can't stack stats, but you can't stack time, you can't stack attention.

1529
01:30:50,400 --> 01:30:54,360
And so everything is kind of parasitic and out of whack and really bad. But anyway.

1530
01:30:54,360 --> 01:30:58,759
But it's interesting that I think that the concept of the attention economy and all these

1531
01:30:58,759 --> 01:31:10,879
things has become complete mainstream. Everybody's kind of aware of this nature. And kind of

1532
01:31:10,879 --> 01:31:18,239
no one can do anything about it. We are, in a way, working towards providing alternatives

1533
01:31:18,239 --> 01:31:24,360
and all these things. But even the people that are more directly. We know about that

1534
01:31:24,360 --> 01:31:29,919
spiral and we can't do anything about it. Globally speaking, the U.S. is going bankrupt.

1535
01:31:29,919 --> 01:31:35,360
Most countries, every country basically is going bankrupt. All this is coming to a halt.

1536
01:31:35,360 --> 01:31:40,839
You can't do anything about it. Also on the A.I. side. We know we're living in fairytale

1537
01:31:40,839 --> 01:31:46,680
subsidy land on the A.I. side right now. Everyone knows this won't go on forever. There's people

1538
01:31:46,680 --> 01:31:54,680
like you getting 50k, 50k USD out of inference, even without a subscription, like out of

1539
01:31:54,680 --> 01:32:00,559
chatgbd.com, for example. You know, like infinite inference for zero money. And we all know

1540
01:32:00,559 --> 01:32:07,480
this can't go on forever. But yeah, the way out of it, like on the fiat side, for example,

1541
01:32:07,480 --> 01:32:12,399
the way out of it is just personal exit, personal realization, exit.

1542
01:32:13,119 --> 01:32:18,160
It's also what Verbeke talks about a lot with the local communities and points of realization,

1543
01:32:18,160 --> 01:32:23,600
points where they cultivate this observation and whatever shape it might take. I think

1544
01:32:23,600 --> 01:32:29,240
cyber engineering in a way is literally that. But it could also be just a meditation retreat.

1545
01:32:29,240 --> 01:32:31,679
It's like different shapes of the same idea.

1546
01:32:31,679 --> 01:32:36,199
How do you exit the 24 hour news cycle? You know, like it's very hard to remove yourself

1547
01:32:36,199 --> 01:32:41,080
from it and like it has an effect on you and everyone and we can't make it stop. You can

1548
01:32:41,080 --> 01:32:46,679
just have the individual decision to opt out of it and just, you know, not give a shit

1549
01:32:46,679 --> 01:32:51,440
about it anymore and just live your life. All right. A little bit of shade. Yeah. For

1550
01:32:51,440 --> 01:33:02,880
any last words. The last part I want to explore a bit with you. Actually, I wanted to. And

1551
01:33:02,880 --> 01:33:06,880
just to go back to the stuff you've mentioned before with the injecting into the context,

1552
01:33:06,880 --> 01:33:08,880
that's what you call proactive context, right?

1553
01:33:08,880 --> 01:33:13,720
So I have two different projects that both of them, it's part of it, but both of them

1554
01:33:13,720 --> 01:33:21,919
were Tenex, right? So Tenex had like all these ideas in one package and then I started removing

1555
01:33:21,919 --> 01:33:25,520
and make them like just modules, Unix style. We talked about this.

1556
01:33:25,520 --> 01:33:27,240
Yeah. More composable.

1557
01:33:27,240 --> 01:33:32,679
More composable. It does like irreducible complexity of it does one thing. I cannot

1558
01:33:32,679 --> 01:33:37,679
take anything out anymore. So, okay, that's the thing that now can provide value on its

1559
01:33:37,679 --> 01:33:42,559
own. If I take something else out, it just doesn't give it any more value. So that's

1560
01:33:42,559 --> 01:33:50,839
mosaico is this like awareness layer and self-organization layer. Again, without any direction.

1561
01:33:50,839 --> 01:33:53,919
Awareness layer. I like that. That's, yeah, that's really good.

1562
01:33:53,919 --> 01:33:59,160
I've been rewriting the read me and awareness layer is the like the word that keeps, um,

1563
01:33:59,160 --> 01:34:03,399
I don't know. I keep gravitating back because it literally is that. It's I'm aware that

1564
01:34:03,399 --> 01:34:06,360
there's more and then there is someone else.

1565
01:34:06,360 --> 01:34:09,919
That's good. That's really good. I like that. Awareness layer. Yeah, that, no, that, that,

1566
01:34:09,919 --> 01:34:14,039
that sounds, that sounds very, very fitting. Like that really resonates with me.

1567
01:34:14,039 --> 01:34:19,600
And the proactive context is, it's the name of the project, but I think I need to change

1568
01:34:19,600 --> 01:34:27,679
the name. Um, but the idea of proactive context is that I told you this, that you open codex

1569
01:34:27,679 --> 01:34:32,760
or whatever model and someone in wall street opens codex and it's exactly the same interface.

1570
01:34:32,799 --> 01:34:37,040
It's exactly the same model, but you are going to direct it in one direction and the person

1571
01:34:37,040 --> 01:34:40,399
in wall street is going to direct it in a completely different direction and it will

1572
01:34:40,399 --> 01:34:45,079
go in that direction. Everything else is the same. The only different thing is what you

1573
01:34:45,079 --> 01:34:50,760
brought to the table, right? Where did you point to? So if you, if you extrapolate from

1574
01:34:50,760 --> 01:34:59,000
that, what is the most important thing that agentic development or contact with AI, what

1575
01:34:59,000 --> 01:35:00,040
is the most important thing?

1576
01:35:00,400 --> 01:35:02,560
It's the user message. It's, what are you saying?

1577
01:35:05,520 --> 01:35:11,920
This I identified very early on, like SCC04. That's why I started every single time I would

1578
01:35:11,920 --> 01:35:16,480
communicate with an agent. It would always be a kind of one sign on the relay and all that,

1579
01:35:16,480 --> 01:35:22,320
because I realized, I'm telling Y to go in this direction, which is super interesting,

1580
01:35:22,320 --> 01:35:26,480
because if you think how development used to work, you would write the code, you would have ideas.

1581
01:35:26,480 --> 01:35:33,599
The ideas would manifest in code. The why behind the code was very implicit, very implicit.

1582
01:35:33,599 --> 01:35:39,680
You know, Bitcoin is one such thing where it takes you a really long, if you only read Bitcoin,

1583
01:35:39,680 --> 01:35:45,520
like the code of Bitcoin, understanding why 10 minutes, it will take you a really long time,

1584
01:35:45,520 --> 01:35:49,840
a lot of thinking. Or you can read a paper. Where do the 10 minutes come from? Great

1585
01:35:49,840 --> 01:35:59,119
question for people new to Bitcoin. But if you read the sign or whatever, like an observation of

1586
01:35:59,119 --> 01:36:04,800
why is it 10 minutes, it will become clear way faster. And I think that's a lot of the work that

1587
01:36:04,800 --> 01:36:11,199
you did with 21 Lessons and all your writing. Now, when you communicate with the agent and

1588
01:36:11,199 --> 01:36:15,199
you tell him, no, don't do it this way. No, no, no, don't put a REST API there. No, no, no, no, no.

1589
01:36:15,919 --> 01:36:22,720
You are very conducive to explain why you're going in this direction. It's not just code anymore.

1590
01:36:22,720 --> 01:36:29,120
It's code anchored with explicit hints. And if you grab the whole corpus, which is

1591
01:36:30,160 --> 01:36:38,400
what JGPT has been working on, on analyzing all my corpus, is you can see implicit

1592
01:36:39,199 --> 01:36:42,959
values that come from what you're explaining, because you end up explaining.

1593
01:36:42,959 --> 01:36:46,800
There's a Cypherpunk way to building things, and there's a Wall Street way to building things,

1594
01:36:46,800 --> 01:36:48,879
and there's a Silicon Valley way to building things.

1595
01:36:48,879 --> 01:36:55,599
Exactly. And when you're communicating with AI, you are leaving all these hints. It's like you're

1596
01:36:55,599 --> 01:37:01,599
writing a book on how to think about this project and how they communicate and how they relate and

1597
01:37:01,599 --> 01:37:08,080
all these things. So Proactive Context is this project that also runs as a hook. It integrates

1598
01:37:08,080 --> 01:37:14,320
into Codex, into whatever you want. And all it does is whenever you write a user message,

1599
01:37:14,320 --> 01:37:18,639
it keeps it. And it starts, you know, just you're having a conversation or whatever.

1600
01:37:19,279 --> 01:37:23,520
And at some point, you know, like debounced or you exit the session or whatever,

1601
01:37:23,520 --> 01:37:30,479
it captures the whole conversation. What you said, what the assistant said, and you responded to.

1602
01:37:32,160 --> 01:37:37,279
Because most things in communication with agents are implicit. You say, build a calculator,

1603
01:37:37,279 --> 01:37:42,880
you don't say pull a multiplying function. But after some time of you interacting with the thing,

1604
01:37:43,440 --> 01:37:48,479
you imply that you accept that there is a multiplication function, right? But if you

1605
01:37:48,479 --> 01:37:52,800
say build a calculator, and immediately you say, no, no, no, I mean, I meant a Fahrenheit to

1606
01:37:52,800 --> 01:37:58,479
Celsius calculator. Okay, now immediately, you know, oh, calculation, division, all that is

1607
01:37:58,479 --> 01:38:06,880
explicitly rejected from this, right? So the Proactive Context, all it does is like also super

1608
01:38:06,880 --> 01:38:14,320
simple. It grabs all these things, and it saves them. It just keeps them. It put on a Git repo.

1609
01:38:14,320 --> 01:38:18,559
Fully or compressed in some way. That's the interesting part. If you compress them,

1610
01:38:19,279 --> 01:38:29,919
you introduce hallucinations. If you allow an LLM to clean up and reshape what you said,

1611
01:38:30,960 --> 01:38:35,600
for sure, you're going to end up with things that are not actually what you said.

1612
01:38:36,320 --> 01:38:41,440
You only want what you have certainty, you know, like, bad context, it's worse than no context.

1613
01:38:42,399 --> 01:38:50,880
So you only want injected what you have some certainty that is actual, you know, so that's

1614
01:38:50,880 --> 01:38:57,039
where the thing starts to become more complex. Because the way it works is it compiles,

1615
01:38:57,039 --> 01:39:04,800
it does compile with LLM, sort of like a wiki of anchoring on we know the user said this, this,

1616
01:39:05,520 --> 01:39:11,679
we have this amount of certainty, roughly, that the user also wants this, you know,

1617
01:39:11,679 --> 01:39:18,079
there's been a multiplication function for two weeks, you know, like 200 user turns,

1618
01:39:18,959 --> 01:39:25,279
probably the user doesn't mind that there is a but they never explicitly said calculation is part

1619
01:39:25,279 --> 01:39:29,679
of the product set. And obviously, I'm using a very stupid, very simple example, but extrapolates

1620
01:39:30,000 --> 01:39:39,440
to anything, right? So all it does is it captures the nouns. I did a lot of experiments. I think

1621
01:39:39,440 --> 01:39:48,000
this is the one that was the most successful. It every time you say a noun in the user message,

1622
01:39:48,880 --> 01:39:55,359
it captures this probably is a thing. So for example, if you say, what is function, blah,

1623
01:39:55,359 --> 01:39:59,760
you're trying to build up an ontology of some sorts. Exactly, exactly.

1624
01:40:00,880 --> 01:40:06,400
If you say, what is function blah blah blah, what does it do? You refer to the function as a noun,

1625
01:40:07,520 --> 01:40:12,080
but maybe you say, that's fucking retarded, delete it, right? So, just because you mentioned it,

1626
01:40:12,720 --> 01:40:20,799
doesn't solidify that it's part of the thing, right? So, over time, it starts to derive

1627
01:40:21,520 --> 01:40:26,719
what is part of the nature of the problem. You know, if I keep saying the GUI, or the...

1628
01:40:27,360 --> 01:40:30,879
Don't build a REST API, don't build a REST API, don't build a REST API, it doesn't mean that we

1629
01:40:30,879 --> 01:40:35,759
want the REST API. But it will actually, it will actually see REST API repeated a bunch of times,

1630
01:40:35,759 --> 01:40:40,880
it will create an entry on the wiki, with all your time saying, don't build a REST API, don't build...

1631
01:40:40,880 --> 01:40:47,520
Yeah. With typos. Okay. It's a literal copy of what you said, and what you reacted to. Yeah,

1632
01:40:47,520 --> 01:40:51,520
so the data structure, you use a wiki as the database. It is a markdown, it's all markdowns.

1633
01:40:51,520 --> 01:40:59,520
Yeah, it's markdowns, and then for the cassettes, like each session, it's a cassette. It's on

1634
01:40:59,520 --> 01:41:04,639
markdown, and on JSON, because then you can do like JQ, and okay, give me just all the user

1635
01:41:04,639 --> 01:41:12,879
messages very easily. So, it's also JSON. And it does a bunch of other things, like there's a lot

1636
01:41:12,879 --> 01:41:17,120
of other new ones, because there's things that get injected into your message that are not things

1637
01:41:17,120 --> 01:41:21,199
the user actually said. But typically, those are still run by XML, or they look different.

1638
01:41:22,239 --> 01:41:28,720
I type lowercase, for example, so at some point, it does like a cleanup of, this doesn't look like

1639
01:41:28,720 --> 01:41:34,639
what Pablo would write. It might be copy-pasted from the website. That's very specific to your

1640
01:41:34,639 --> 01:41:40,000
writing style. No, but you also have a writing style, that if you copy from an LLM, at some

1641
01:41:40,000 --> 01:41:42,959
point you can... No, no, sure. But the way it's built now, it's built for your writing style.

1642
01:41:43,120 --> 01:41:51,040
No, it literally is like to extrapolate what are like, you know, we have like a watermark in how

1643
01:41:51,040 --> 01:41:55,199
you write, how you sponsor, like Satoshi. Because Satoshi had like very specific... Yeah, double spaces.

1644
01:41:55,199 --> 01:41:59,839
Yeah, double spaces, exactly. So, it will figure this out. It will figure it out over time of

1645
01:41:59,839 --> 01:42:05,120
accruing enough corpus, and it's just like a cleanup phase. So, that's part of

1646
01:42:05,120 --> 01:42:12,080
proactive context, that it goes over the user input, and periodically, basically,

1647
01:42:12,080 --> 01:42:17,440
will learn what is user context, what is user written, user produced.

1648
01:42:17,440 --> 01:42:22,720
To me, I would much rather the user have to repeat something that they already said, than

1649
01:42:22,720 --> 01:42:27,039
injecting something that the user never said. Yeah, yeah. I mean, I want to highlight two

1650
01:42:27,039 --> 01:42:32,960
things that you said. Like, the one is no context is better than bad context. Bad context will lead

1651
01:42:32,960 --> 01:42:38,160
to confusion, and like... Destruction. Also, between people, right? Yeah, absolutely. It's like there's a

1652
01:42:38,160 --> 01:42:45,520
misunderstanding, and then you just, you talk beside like... What's the phrase? Again, I'm

1653
01:42:45,520 --> 01:42:50,000
medicated. But it's like, I think we're talking about one thing, and you think we're talking about

1654
01:42:50,000 --> 01:42:55,600
another thing, and it goes off the rails quickly. 100%. And the other thing was like, in the very

1655
01:42:55,600 --> 01:43:01,520
beginning of talking about this, you mentioned that all that matters is the user input. Like, if a

1656
01:43:01,520 --> 01:43:07,360
Wall Street guy, and I myself, we take the same Codex session, same model, everything. The only

1657
01:43:07,360 --> 01:43:12,639
thing that matters is user input, and so that's why you focus only on the user input. Everything, it's everything.

1658
01:43:13,440 --> 01:43:18,160
To the point where... Sorry to interrupt, but it's so beautiful. Oh my god, yeah, there we go. The pirate ship.

1659
01:43:19,440 --> 01:43:25,839
Fantastic. It's been with us the whole dialogue. Exactly, we walk the same path.

1660
01:43:27,360 --> 01:43:35,919
I find that the part where I want to maximize for no bullshit going in, or I mean,

1661
01:43:35,919 --> 01:43:44,000
the bullshit that I said going in, to the point where proactive context itself, it literally

1662
01:43:44,000 --> 01:43:49,759
cannot hallucinate. And that is a bold statement on the LLM era, but the way I do it is,

1663
01:43:50,479 --> 01:43:56,720
I know what came from the user message. I do the basic cleanups of, okay, this is very obvious,

1664
01:43:56,720 --> 01:44:02,240
it's just XML or user turn, like a salvation turn, complicating, that stuff immediately gets thrown out.

1665
01:44:02,880 --> 01:44:12,240
But then you have the obvious, very hard problem of what is relevant. I don't inject, obviously,

1666
01:44:12,240 --> 01:44:17,440
all user messages into every turn. I inject what is relevant to what the user is saying now,

1667
01:44:17,440 --> 01:44:24,480
and it takes a few shapes. The noun, if the user says, fix the database, you probably know a lot

1668
01:44:24,480 --> 01:44:31,839
about what the database is, and it has been empirically proven what the database is,

1669
01:44:32,239 --> 01:44:41,519
right? I can inject all the databases SQLite, whatever. The schema is defining blah, blah,

1670
01:44:41,519 --> 01:44:48,480
blah, blah. All the things of what the noun is, each noun entry is super minimal. Usually,

1671
01:44:48,480 --> 01:44:54,320
it's like one paragraph, maybe. It's usually very, very, very small. I don't want to define

1672
01:44:54,320 --> 01:44:57,359
what all the features of the database.

1673
01:45:00,000 --> 01:45:01,000
But I give pointers, too.

1674
01:45:01,000 --> 01:45:03,720
You know, okay, there's more in these things.

1675
01:45:03,720 --> 01:45:04,720
So that's on one side.

1676
01:45:04,720 --> 01:45:07,760
And then the...

1677
01:45:07,760 --> 01:45:10,960
Anything that is relevant with regards to the...

1678
01:45:10,960 --> 01:45:15,640
To what the task is, or research how this shit works, whatever.

1679
01:45:15,640 --> 01:45:16,820
All that.

1680
01:45:16,820 --> 01:45:18,120
There are two things.

1681
01:45:18,120 --> 01:45:22,559
It does like a rug that usually finds a lot of things.

1682
01:45:22,559 --> 01:45:24,559
It's easy to re-run, and all these things.

1683
01:45:24,559 --> 01:45:27,879
So, you know, like a vector database.

1684
01:45:27,879 --> 01:45:30,200
So it's very easy to find a bunch.

1685
01:45:30,200 --> 01:45:35,000
It usually has a bunch of false positives and false negatives.

1686
01:45:35,000 --> 01:45:39,299
So it's like, you know, a good first approach.

1687
01:45:39,299 --> 01:45:46,720
But then I grab a very fast, cheap OLAMA model.

1688
01:45:46,720 --> 01:45:53,520
And I put pretty much, like, the whole index of everything that is known about the project.

1689
01:45:53,520 --> 01:45:55,439
Like, all the wikis.

1690
01:45:55,439 --> 01:46:00,599
So I compile wikis that are generated from LLMs.

1691
01:46:00,599 --> 01:46:09,260
And it goes through all of them with pointers, with tools, to be able to navigate the wiki.

1692
01:46:09,260 --> 01:46:15,160
The whole point of all of this is give a very broad view to an LLM.

1693
01:46:15,160 --> 01:46:16,160
Not Codex yet.

1694
01:46:16,160 --> 01:46:17,160
Codex...

1695
01:46:17,160 --> 01:46:21,480
I sent a message to Codex, but Codex hasn't started executing my user message.

1696
01:46:21,480 --> 01:46:25,239
It's waiting for the project context hook to finish executing.

1697
01:46:25,239 --> 01:46:26,519
It gathers all these.

1698
01:46:26,519 --> 01:46:29,019
It has tools to navigate.

1699
01:46:29,019 --> 01:46:33,919
But the navigation always finishes in user messages.

1700
01:46:33,919 --> 01:46:40,279
And all that LLM can produce is coordinates of user messages.

1701
01:46:40,279 --> 01:46:45,120
Of things the user has said, or things the user has reacted to that the assistant said.

1702
01:46:45,120 --> 01:46:46,120
And it injects...

1703
01:46:46,120 --> 01:46:49,620
It just says, coordinate blah, coordinate blah, coordinate blah, coordinate blah.

1704
01:46:49,620 --> 01:46:55,339
So what gets injected into the thing is the nouns and actual things that the user said.

1705
01:46:55,339 --> 01:47:00,760
The LLM cannot produce a story based on the text that came out.

1706
01:47:00,760 --> 01:47:02,739
Only the coordinates with sources.

1707
01:47:02,739 --> 01:47:05,779
So the Codex, once it sees that, it might go...

1708
01:47:05,779 --> 01:47:08,520
It's pointers to past conversations.

1709
01:47:08,520 --> 01:47:13,639
It's pointers to conversations that have been scoped and analyzed.

1710
01:47:13,639 --> 01:47:19,919
So the moment it sees all that, it might understand that this bug, it immediately relates...

1711
01:47:19,919 --> 01:47:20,919
Or whatever.

1712
01:47:20,919 --> 01:47:22,440
This part of the code.

1713
01:47:22,440 --> 01:47:27,960
It's immediately related to this whole system that it might have missed.

1714
01:47:27,960 --> 01:47:29,199
And it might...

1715
01:47:29,199 --> 01:47:33,520
It typically finds nuance, which I think is the most interesting part.

1716
01:47:33,520 --> 01:47:40,880
A lot of times, if you have a complex project, you fix something that the agent assumed that

1717
01:47:40,880 --> 01:47:42,320
was one way.

1718
01:47:42,320 --> 01:47:45,679
And you fix it and you say, no, this is how it actually works.

1719
01:47:45,679 --> 01:47:46,679
And this is...

1720
01:47:46,679 --> 01:47:50,199
Typically, you hint at the why.

1721
01:47:50,199 --> 01:47:54,600
And when the agent is working on fixing a bug, it might find...

1722
01:47:54,600 --> 01:47:59,139
It might be tempted to fix your nuance.

1723
01:47:59,139 --> 01:48:01,500
Because it doesn't understand the fucking why.

1724
01:48:01,500 --> 01:48:08,080
But the whole purpose of the thing is productive context to the moment that is happening, inject

1725
01:48:08,320 --> 01:48:12,600
into the session, this is why this is this way.

1726
01:48:12,600 --> 01:48:13,600
Don't fuck it up.

1727
01:48:13,600 --> 01:48:14,600
You know?

1728
01:48:14,600 --> 01:48:15,600
And that happens...

1729
01:48:15,600 --> 01:48:18,600
That's why we don't have a password reset button, for example.

1730
01:48:18,600 --> 01:48:19,600
Exactly.

1731
01:48:19,600 --> 01:48:20,600
Exactly.

1732
01:48:20,600 --> 01:48:21,600
Exactly.

1733
01:48:21,600 --> 01:48:22,600
So...

1734
01:48:22,600 --> 01:48:23,600
I don't know.

1735
01:48:23,600 --> 01:48:24,600
Productive context.

1736
01:48:24,600 --> 01:48:25,600
It's kind of fascinating.

1737
01:48:25,600 --> 01:48:30,039
Because then you go into what is the...

1738
01:48:30,039 --> 01:48:31,800
What is salient to this...

1739
01:48:31,800 --> 01:48:33,440
From all this text, what...

1740
01:48:33,440 --> 01:48:35,639
What is relevant, and what should you make salient?

1741
01:48:35,639 --> 01:48:36,639
Exactly.

1742
01:48:36,639 --> 01:48:37,639
Exactly.

1743
01:48:38,600 --> 01:48:40,919
And I ran a bunch of experiments.

1744
01:48:40,919 --> 01:48:46,279
Because there are almost infinite ways of how to orchestrate the things and how to weigh

1745
01:48:46,279 --> 01:48:47,279
the different things.

1746
01:48:47,279 --> 01:48:48,759
But I don't know.

1747
01:48:48,759 --> 01:48:51,119
I find it as a very interesting...

1748
01:48:51,119 --> 01:48:56,839
Because it's like you are kind of forcing a memory layer.

1749
01:48:56,839 --> 01:48:59,160
But it's not like an act...

1750
01:48:59,160 --> 01:49:04,600
It's not a memory in the way that we refer to memory, typically.

1751
01:49:04,600 --> 01:49:09,839
The agents, right now, they choose to remember something.

1752
01:49:09,839 --> 01:49:13,080
That's obviously not how we work.

1753
01:49:13,080 --> 01:49:15,800
That obviously would not...

1754
01:49:15,800 --> 01:49:19,679
We would not be here if that's how humans work, how animals...

1755
01:49:19,679 --> 01:49:22,119
I mean, we also...

1756
01:49:22,119 --> 01:49:26,000
We kind of don't know how it works for us, in some sense.

1757
01:49:26,000 --> 01:49:27,000
And it's also...

1758
01:49:27,000 --> 01:49:28,000
We are embodied.

1759
01:49:28,000 --> 01:49:29,000
They are not.

1760
01:49:29,000 --> 01:49:33,119
Our memory is highly related to our embodiment.

1761
01:49:33,160 --> 01:49:39,760
We can obviously observe empirically that we don't choose to remember a thing.

1762
01:49:39,760 --> 01:49:41,160
The memory just forms.

1763
01:49:41,160 --> 01:49:42,600
We can hack our systems, though.

1764
01:49:42,600 --> 01:49:43,600
Like repetition is one part.

1765
01:49:43,600 --> 01:49:44,600
Repetition or trauma.

1766
01:49:44,600 --> 01:49:45,600
Yeah, yeah.

1767
01:49:45,600 --> 01:49:46,600
Exactly.

1768
01:49:46,600 --> 01:49:47,600
Exactly, exactly.

1769
01:49:47,600 --> 01:49:52,040
And that's why everyone knows, for example, smell is such an important thing for memory.

1770
01:49:52,040 --> 01:49:55,799
You go back to a very old place and suddenly all the memories flood back just because of

1771
01:49:55,799 --> 01:49:56,799
the smell.

1772
01:49:56,799 --> 01:49:57,799
Like those kind of things.

1773
01:49:57,799 --> 01:49:58,799
Yeah.

1774
01:49:58,799 --> 01:49:59,799
And so we work...

1775
01:49:59,799 --> 01:50:00,799
I'm just pointing that out.

1776
01:50:00,799 --> 01:50:01,799

1777
01:50:01,800 --> 01:50:08,400
Obviously, very differently than LLMs. 100%! In a way, the trauma part, it is one of the things

1778
01:50:08,400 --> 01:50:17,680
that I think have been explicitly added on top of LLMs. Because if you say,

1779
01:50:17,680 --> 01:50:20,639
no, I told you a million times not to do it, oh, recording memory.

1780
01:50:21,600 --> 01:50:30,320
And that's also, I liked the demo we saw this Friday of G, making agents suffer.

1781
01:50:30,320 --> 01:50:35,840
And he had this little thing where it's like a Tamagotchi and it has a very, like, I think he

1782
01:50:35,840 --> 01:50:41,680
mentioned a four-layered neural network and it will learn how to eat food and it will, you know,

1783
01:50:41,680 --> 01:50:47,200
over time learn to avoid the little traps that exist that hurt it and so on. And for us, memory,

1784
01:50:47,279 --> 01:50:52,240
like, and that's what Verbeke always goes on about, like, if we want actual human-like

1785
01:50:52,240 --> 01:51:00,080
intelligence, we have to make the decision to embody agents and to make them feel pain and to

1786
01:51:00,639 --> 01:51:07,360
have, like, have them actually die, like, embody death, real death. And to make them care about

1787
01:51:07,360 --> 01:51:12,160
something, like, first of all, we have to make them care about themselves, which is basically

1788
01:51:12,160 --> 01:51:16,959
care about keeping yourself alive and so on. And also next, like, after that, we have to

1789
01:51:17,680 --> 01:51:25,680
basically, the only entities that really care about something in the grander scheme of things

1790
01:51:25,680 --> 01:51:31,360
would be childbearing entities. And from that, you know, like, it bubbles out into

1791
01:51:32,080 --> 01:51:37,760
family, community and so on. And then it bubbles out into, like, more long-term things. And in

1792
01:51:37,760 --> 01:51:41,040
the end, the true, the good and the beautiful, you know, like, that's, I mean, he has, like, you

1793
01:51:41,040 --> 01:51:46,480
know, a hundred hours of lectures on this. But that's very compressed, kind of, like, if we want

1794
01:51:46,480 --> 01:51:51,760
to have proper memory, that's what we already know from the cognitive science perspective,

1795
01:51:51,760 --> 01:51:56,559
what we would need to do with LLMs to get there. And I talked with Callie about the world models

1796
01:51:56,559 --> 01:52:01,360
and so on, like, LLMs are just, like, the first instance of something approximating intelligence

1797
01:52:01,440 --> 01:52:07,919
and so on. And it's also worth pointing out that our memory is not about the past, it's about the

1798
01:52:07,919 --> 01:52:11,839
future. It's about don't make the same mistake in the future. Right, yeah, yeah. That's why trauma

1799
01:52:11,839 --> 01:52:17,839
makes it so... Exactly. And if you resolve trauma, the memory also goes away. With trauma, you have

1800
01:52:17,839 --> 01:52:22,240
memory formation before the ability to... If you actually learn the lesson, your memory will

1801
01:52:22,240 --> 01:52:26,320
dissolve, like, you will not remember that anymore. It's like, memory is only about the future,

1802
01:52:26,320 --> 01:52:31,039
it's not about the past. And that's something that LLMs obviously don't have,

1803
01:52:31,039 --> 01:52:36,639
don't get, and so on. And so we have to... I mean, OpenClaw is something that really tried to do it

1804
01:52:36,639 --> 01:52:41,199
after every run, compress it, create the memory files, always look at the memory files, and so on.

1805
01:52:41,199 --> 01:52:45,600
And so that was kind of the first instance, and now, of course, it's more sophisticated.

1806
01:52:45,600 --> 01:52:54,880
Yeah, but I think that all the sophistication, it's layers of hacks on top. So I actually

1807
01:52:54,960 --> 01:53:02,800
saw this thing that they... I don't know when they introduced it on Claude Code. It can choose

1808
01:53:02,800 --> 01:53:08,800
to terminate a session if... And I asked it, when do you use this tool and shit like that?

1809
01:53:08,800 --> 01:53:15,759
And it told me that it uses the end session tool and it doesn't process any more new messages

1810
01:53:15,759 --> 01:53:21,600
within that session when the user is abusive or the user is harmful, like the typical things.

1811
01:53:22,559 --> 01:53:31,839
But that is replicating an immersion behavior of... If I spit on your face, you don't have to be told,

1812
01:53:31,839 --> 01:53:37,199
hey, if someone spits on your face, you should walk away or you should punch the person.

1813
01:53:37,199 --> 01:53:41,600
It's something that emerges, right? So we're trying to... It's innate. It's innate, exactly.

1814
01:53:41,600 --> 01:53:47,839
But within this model, and I think that's where I went wrong with 10x, is adding the behavior

1815
01:53:47,919 --> 01:53:54,160
that you want to observe, adding explicit commands on top, and on top, and on top, and on top,

1816
01:53:54,160 --> 01:54:00,160
instead of focusing on solid primitives that just allow the thing to behave in...

1817
01:54:01,119 --> 01:54:05,679
To choose to behave in those directions instead of telling it, oh,

1818
01:54:05,679 --> 01:54:07,199
end session when the user calls you an asshole.

1819
01:54:09,600 --> 01:54:12,880
And then also everything is context dependent. There might be situations where spitting in

1820
01:54:12,880 --> 01:54:16,160
the face is something someone wants. I'm not going to get into it, but yeah.

1821
01:54:18,799 --> 01:54:20,880
All right, that was great. I'm all out of steam.

1822
01:54:20,880 --> 01:54:21,600
All right.

1823
01:54:21,600 --> 01:54:28,640
Yeah, it's mostly the medication, but it was really good. And yeah, we'll do this again next time.

1824
01:54:28,640 --> 01:54:31,519
Yeah, I'm really excited about the cohort. It's a good group of people.

1825
01:54:31,519 --> 01:54:34,399
Dude, this was a very, very first week.

1826
01:54:34,399 --> 01:54:35,839
Very first week. I was very pumped.

1827
01:54:35,839 --> 01:54:38,000
Yeah, one of the best first weeks I think we have.

1828
01:54:38,000 --> 01:54:38,959
I think so too.

1829
01:54:40,640 --> 01:54:44,320
We didn't even mention, but we should do an honorary mention. I think that

1830
01:54:45,040 --> 01:54:52,640
the stuff that Sandwich has been working on, it is insanely inspiring. I think it's the end goal

1831
01:54:53,920 --> 01:54:58,640
of Nostr. It's empowering this kind of thing. It is...

1832
01:55:00,880 --> 01:55:06,320
People should check it out. It is absolutely insane. It's like a different way that happens

1833
01:55:06,320 --> 01:55:11,360
to also mesh really well with agentic development. It's a different way of thinking about software

1834
01:55:11,360 --> 01:55:17,040
development. And in some sense it's related to the 10x Mosaico switch. Yeah. Because 10x was

1835
01:55:17,040 --> 01:55:21,520
like one big cathedral, one like let's do everything. Most... Amethyst is such a thing,

1836
01:55:21,520 --> 01:55:29,600
for example. Amethyst should be reconstructed in this shape. And the whole

1837
01:55:29,680 --> 01:55:34,560
applet idea, like you can... Again, I had a long conversation with Sandwich about it. If someone's

1838
01:55:34,560 --> 01:55:40,880
interested, listen to that. But it's basically like let's decompose everything and every single

1839
01:55:40,880 --> 01:55:45,200
view, every single little element becomes an applet, like a Nostr applet. You can think about

1840
01:55:45,200 --> 01:55:50,639
it as like widgets and so on. And it's composable and they can intercommunicate as well. Again,

1841
01:55:50,639 --> 01:55:57,840
it's not perfect yet, but it's very quickly getting there. And then you can throw together

1842
01:55:57,840 --> 01:56:03,680
a client extremely quickly and just composing it of existing applets. And hzrd149 showed this off,

1843
01:56:03,680 --> 01:56:10,239
for example, just yesterday, like on the demo day. He built a whole Nostr client that looks

1844
01:56:10,239 --> 01:56:15,680
like a regular Nostr client. It looks like a regular app. It's just a website. And the way

1845
01:56:15,680 --> 01:56:19,279
it works, and that was so cool, the way he presented it, because he just showed this and

1846
01:56:19,279 --> 01:56:24,320
then he went like... He did the most boring thing ever. And by the way, every single view that you

1847
01:56:24,320 --> 01:56:32,160
saw is an applet. And he built the whole engine, the whole Napplet engine, which is the client.

1848
01:56:32,160 --> 01:56:36,559
And it just, instead of opening up the Napplets in a different window and so on, it just

1849
01:56:36,559 --> 01:56:41,120
composes so that it looks like a client. But every single view, every single element of it

1850
01:56:41,120 --> 01:56:47,120
is an applet on itself. And that was so cool. But if you play that out, and particularly

1851
01:56:47,120 --> 01:56:50,800
when you're confronted with Amethyst that has everything, right? And it's very interesting

1852
01:56:50,800 --> 01:56:56,639
because Amethyst has all these functionalities, then Substore launches. So he says, oh, I want

1853
01:56:56,639 --> 01:57:00,480
live streams. So I'm going to implement everything that Substore has. It's not Substore, sorry,

1854
01:57:00,480 --> 01:57:07,040
it's Substream. Marketplace launches. Okay, I'm going to implement this. Literally now that can

1855
01:57:07,040 --> 01:57:14,960
be possible without Vitor touching the codebase. If done right, without Vitor touching the codebase,

1856
01:57:14,960 --> 01:57:20,479
every single one of these apps is just one. And you can make it easily user configurable.

1857
01:57:20,639 --> 01:57:23,839
What do you want your Amethyst to look like or whatever your client to look like? I want to

1858
01:57:23,839 --> 01:57:27,600
have this module, this module, and so on. Because now if you open Amethyst and you open the setting

1859
01:57:27,600 --> 01:57:31,679
screen of Amethyst, it's almost like an endless scroll. It's like a feed in and of itself,

1860
01:57:31,679 --> 01:57:36,720
like 17 pages of configuration options and so on. It's really funny. But yeah,

1861
01:57:36,720 --> 01:57:41,199
shout out to Vitor for the eternal kitchen sink client. It's fantastic.

1862
01:57:41,839 --> 01:57:45,119
Still my daily driver, by the way. I still kind of use it the most.

1863
01:57:45,119 --> 01:57:47,679
This morning I started working on... You want to start growing up?

1864
01:57:48,639 --> 01:57:50,800
I'll stay here, actually. I'll have some food.

1865
01:57:52,160 --> 01:57:58,240
This morning I started working on this NMP thing that is like a very powerful library

1866
01:57:58,240 --> 01:58:03,199
within Rust and whatnot, doing all the things. And this morning I started the agents working

1867
01:58:03,199 --> 01:58:11,360
on a runtime that can run on an iPhone where each view, it doesn't provide any functionality,

1868
01:58:11,360 --> 01:58:18,800
any app, basically. Everything is Napplets. And the idea is, say for example, you run a Napplet

1869
01:58:18,800 --> 01:58:25,440
feed and you tap on someone's profile, in the same way that what hzrd149 was doing with what

1870
01:58:25,440 --> 01:58:31,679
he demoed yesterday, it just publishes an intent of open profile and hopefully some other Napplet

1871
01:58:32,399 --> 01:58:39,440
has been installed in the runtime of this one user that navigates, like navigation stack,

1872
01:58:39,440 --> 01:58:45,119
iOS style, like fully native. It's just a web view, of course, but it navigates,

1873
01:58:45,119 --> 01:58:46,720
it's like the feel. Then you can go back.

1874
01:58:47,279 --> 01:58:53,839
Then you can go back and it just feels exactly native. But you can, oh, I don't like this profile

1875
01:58:53,839 --> 01:58:58,320
Napplet. I'm going to change to this other profile Napplet. Oh, I know I want marketplaces.

1876
01:58:58,320 --> 01:59:03,279
But how you compose the application is up to the user to decide. It just installs things and

1877
01:59:03,279 --> 01:59:07,360
publishes intents. Yeah, awesome. No, it's funny. And it's funny that also,

1878
01:59:07,600 --> 01:59:12,399
if you know something about iOS or Android development and just OS development in general,

1879
01:59:12,399 --> 01:59:16,880
to make all this work, Sandwich had to rebuild an operating system, basically rebuild all this,

1880
01:59:16,880 --> 01:59:22,399
like intents and so on. And also notifications and resource management and what are the interfaces

1881
01:59:22,399 --> 01:59:26,640
between the things and so on. And so it's a native operating system.

1882
01:59:26,640 --> 01:59:34,399
The one part that we hinted at yesterday after his demo, that I'm going to see him today to

1883
01:59:34,399 --> 01:59:40,160
talk about this, because I think it would be super powerful if the runtime didn't have to provide

1884
01:59:40,160 --> 01:59:44,480
all the features. Say, for example, Blossom. It would be very cool to support Blossom without

1885
01:59:44,480 --> 01:59:49,760
the runtime implementing Blossom or Outbox or any of these things really. So kind of have a core

1886
01:59:49,760 --> 01:59:53,839
runtime and the rest is plugins in some sense, just like kernel. Like a headless Napplet that

1887
01:59:53,839 --> 01:59:59,440
just says what I do is I provide Outbox calculation. What I do is Blossom uploads.

1888
02:00:01,000 --> 02:00:03,000
That's how kernels work, right?

1889
02:00:03,000 --> 02:00:05,000
You have a kernel and the kernel does support everything,

1890
02:00:05,000 --> 02:00:07,000
and then you need a kernel module.

1891
02:00:07,000 --> 02:00:08,000
Exactly.

1892
02:00:08,000 --> 02:00:13,000
And I think the same concept can be built with just...

1893
02:00:13,000 --> 02:00:15,000
I think it can be a headless Napplet

1894
02:00:15,000 --> 02:00:17,000
or it could be some other concept,

1895
02:00:17,000 --> 02:00:18,000
but I provide this service.

1896
02:00:18,000 --> 02:00:20,000
It's a microservice architecture, basically.

1897
02:00:20,000 --> 02:00:21,000
Awesome.

1898
02:00:21,000 --> 02:00:22,000
Great.

1899
02:00:22,000 --> 02:00:23,000
Yeah, shout-out Napplet.

1900
02:00:23,000 --> 02:00:24,000
Shout-out FIPS also.

1901
02:00:24,000 --> 02:00:26,000
I'm so excited about the FIPS stuff.

1902
02:00:26,000 --> 02:00:27,000
It's really cool.

1903
02:00:27,000 --> 02:00:28,000
Many good things, man.

1904
02:00:28,000 --> 02:00:30,000
All right, one more.

1905
02:00:30,000 --> 02:00:31,000
I'll press stop.

1906
02:00:31,000 --> 02:00:33,000
Let's see if this thing recorded.

1907
02:00:33,000 --> 02:00:35,000
It might be the cable that's a little bit broken,

1908
02:00:35,000 --> 02:00:37,000
so I hope not.

1909
02:00:37,000 --> 02:00:38,000
I have too many cables

1910
02:00:38,000 --> 02:00:40,000
because I never know which one is the good one.

1911
02:00:40,000 --> 02:00:41,000
Ah, it looks good.
