WEBVTT

NOTE Sentence-level transcript of https://www.youtube.com/watch?v=QSeaZ6qHyXs

NOTE One cue per sentence. Cue ids are the line anchors on /transcripts/QSeaZ6qHyXs.html. A cue ends where the next begins, or 2 s after its last word.

s1
00:00:01.309 --> 00:00:03.309
[music]

s2
00:00:13.200 --> 00:00:16.120
All right, we have a question here.

s3
00:00:21.200 --> 00:00:23.200
Hey.

s4
00:00:23.320 --> 00:00:26.760
How do you see ICD the agent convex?

s5
00:00:26.760 --> 00:00:27.480
Um

s6
00:00:27.480 --> 00:00:28.680
Ah, that's a great question.

s7
00:00:28.680 --> 00:00:39.840
Uh so, we have something called Ancho CLI, which is a CLI that basically wraps our API to make calls um and allows you to do sort of Terraform-like things where you pass in YAML.

s8
00:00:39.840 --> 00:00:54.520
So, you can put your uh long-term uh resources in YAML in your code base and then build um CICD to basically update the Ancho with Ancho CLI using those YAMLs

s9
00:00:54.520 --> 00:00:57.720
uh every time you make a change to your to your resource.

s10
00:00:57.720 --> 00:00:58.440
Does that make sense?

s11
00:00:58.440 --> 00:00:58.920
Got it.

s12
00:00:58.920 --> 00:01:02.440
Uh so, I assume you guys use the same internally too.

s13
00:01:02.440 --> 00:01:07.400
Yeah, that's how if if we need to build durable long-term resources, we just we can check them in.

s14
00:01:07.400 --> 00:01:08.480
All right, thanks.

s15
00:01:08.480 --> 00:01:09.760
Thanks.

s16
00:01:09.760 --> 00:01:14.480
Um so, I think you mentioned you can send messages whenever you want.

s17
00:01:14.480 --> 00:01:19.280
Um can you still send messages if the model's waiting for a a custom tool result?

s18
00:01:19.280 --> 00:01:21.280
Uh not when it's waiting for a custom tool result.

s19
00:01:21.280 --> 00:01:24.920
We basically pause execution uh at that time.

s20
00:01:24.920 --> 00:01:30.560
Um but if the model is doing other work, uh then we do allow you to queue up messages.

s21
00:01:30.560 --> 00:01:38.080
Um but when it's doing a custom tool result, we're expecting you to send that um so, because of ordering purposes, we we block the calls.

s22
00:01:38.080 --> 00:01:40.080
Well, what happens if you do send the message?

s23
00:01:40.080 --> 00:01:41.040
You'll get a 400.

s24
00:01:41.040 --> 00:01:43.800
Okay, that makes sense.

s25
00:01:43.800 --> 00:01:47.280
Uh there was an ask to see the QR code slide one more time.

s26
00:01:47.280 --> 00:01:48.240
The uh

s27
00:01:48.240 --> 00:01:52.240
The uh the credits one, yeah.

s28
00:01:54.880 --> 00:01:56.400
Any any other questions?

s29
00:01:56.400 --> 00:01:57.840
If you're if you're shy, we

s30
00:01:57.840 --> 00:02:03.000
Yeah, we'll hang out after for any any questions you don't feel

s31
00:02:07.680 --> 00:02:08.640
Yeah, I'm looking through a repo.

s32
00:02:08.640 --> 00:02:10.679
There's a lot of interesting workshop talks.

s33
00:02:10.679 --> 00:02:16.120
Is there anything that's missing from that like slides that would help us go through other

s34
00:02:16.120 --> 00:02:16.480
Yeah, yeah.

s35
00:02:16.480 --> 00:02:25.120
sessions like that you can post or is it pretty much self-explanatory through the the readme files you just like have you know cuz you had like a skill that did workshop.

s36
00:02:25.120 --> 00:02:25.840
Yeah, yeah.

s37
00:02:25.840 --> 00:02:29.480
The other workshops came from our Code with Cloud conference.

s38
00:02:29.480 --> 00:02:34.320
Most of which you can find online for the version we did in London about a month ago.

s39
00:02:34.320 --> 00:02:45.640
Yeah, all all the all those talks are on YouTube if you're interested in the other repos that are in there, but this one should give you like a pretty good overview and it's pretty similar to what we've done at other conferences.

s40
00:02:45.920 --> 00:02:46.880
Yeah.

s41
00:02:46.880 --> 00:02:55.040
Yeah, so just going back to evals, can you talk a little bit about you know how you guys are maintaining quality, best practices around the the eval harness?

s42
00:02:55.040 --> 00:03:00.760
Uh yeah, we run a lot of evals especially as new models come up as new capabilities come up.

s43
00:03:00.760 --> 00:03:04.519
We have access to the models before you all do obviously.

s44
00:03:04.519 --> 00:03:15.959
So one of the things that we as a managed offering want to make sure we do is that we update our assumptions about the harness as early as possible so that we can remove things that are no longer needed

s45
00:03:15.959 --> 00:03:17.959
and we do all of that in a eval base.

s46
00:03:17.959 --> 00:03:25.280
So we have internal tooling that basically looks like different data sets that we can then run our different sessions.

s47
00:03:25.280 --> 00:03:36.800
It's because it's all in the cloud it's easy to say like spin up 10,000 sessions to do this all in parallel and then we evaluate those results and tune prompts and tune assumptions,

s48
00:03:36.800 --> 00:03:48.360
remove things, add things to make sure that for every model release we're doing the best we can and we're evaluating all sorts of things for generic purposes not just coding.

s49
00:03:48.360 --> 00:03:51.120
So so how does that extend into the agents that we would build?

s50
00:03:51.120 --> 00:03:56.160
Is there a recommended path for for evals or is there kind of just bring your own solution?

s51
00:03:56.160 --> 00:04:02.840
Uh I think the the best advice we can give you is to get high quality data to evaluate over.

s52
00:04:02.840 --> 00:04:08.000
I think Claude Claude code is pretty good at building an eval for you, but garbage in, garbage out.

s53
00:04:08.000 --> 00:04:18.040
We've seen that some of our initial ideas for how to evaluate things were sort of ill-defined and you get 100%, but what does that mean in performance?

s54
00:04:18.040 --> 00:04:22.560
So, iterating on your data and making sure that you're setting up the problem correctly.

s55
00:04:22.560 --> 00:04:27.840
Um I know it's like not out of the box solution, but it generally the advice that we've seen works.

s56
00:04:27.840 --> 00:04:36.160
And you can probably look at like your historical sessions and like what results you got and then sort of try to score it and see how the model's doing.

s57
00:04:36.160 --> 00:04:41.800
Um that would be a good way of like building your data set looking at your historical sessions.

s58
00:04:42.320 --> 00:04:43.960
I have a question over here.

s59
00:04:43.960 --> 00:04:45.240
Hey, thanks for sharing.

s60
00:04:45.240 --> 00:04:52.200
Uh I have a question about how to share those agent and all the resources across all the the entire organization.

s61
00:04:52.200 --> 00:04:55.640
The reason I'm asking is because we use Claude as code quite a lot.

s62
00:04:55.640 --> 00:04:57.080
We're building shared skills.

s63
00:04:57.080 --> 00:04:58.840
We're building shared connectors.

s64
00:04:58.840 --> 00:05:11.120
But for the everything you shared today, for example, agent, memory store, or MCB channel, can we actually share them or can we partially share them across the organization to different departments?

s65
00:05:11.120 --> 00:05:12.200
So, what is boundary?

s66
00:05:12.200 --> 00:05:15.120
What is the privilege about those resources?

s67
00:05:15.120 --> 00:05:19.240
Are those resources bonded to my account or how can I control this?

s68
00:05:19.240 --> 00:05:21.040
So, what's the what's the way to do that?

s69
00:05:21.040 --> 00:05:22.720
They're bound to your workspace.

s70
00:05:22.720 --> 00:05:27.840
So, any API key within your workspace can have access to the resources that

s71
00:05:27.840 --> 00:05:34.600
So, can my can my teammates edit or modify what I'm building or is Yes, completely controlled, right?

s72
00:05:34.600 --> 00:05:40.840
So, I think your Claude platform admin, so you'll have an org for your organization.

s73
00:05:40.840 --> 00:05:47.120
And then your admin will be the one setting up the workspaces and deciding who gets access to which workspace.

s74
00:05:47.120 --> 00:05:47.560
So, I think

s75
00:05:47.560 --> 00:05:51.560
you would basically design your workspaces depending on your access control.

s76
00:05:51.560 --> 00:05:51.800
Correct.

s77
00:05:51.800 --> 00:05:58.040
You'd probably want to do like wh- whatever group of people you want access to resources X, put them in one.

s78
00:05:58.040 --> 00:06:04.040
So, you can share whatever you want, even partially of the, you know, you build an agent that can do something, but I only want to share part of that.

s79
00:06:04.040 --> 00:06:08.080
For example, I share the memory to someone that share the MCP channel to the others.

s80
00:06:08.080 --> 00:06:08.800
Is that possible?

s81
00:06:08.800 --> 00:06:12.640
Or I need to share the entire tech stack of what I'm building?

s82
00:06:12.640 --> 00:06:22.280
We don't have fine-grained controls of like this to share this or this not, but you as a as a builder and integration would be able to control that at pretty granularly so that your end users

s83
00:06:22.280 --> 00:06:25.680
can have access to partial sharing.

s84
00:06:25.680 --> 00:06:25.800
Cool.

s85
00:06:25.800 --> 00:06:26.160
Sweet.

s86
00:06:26.160 --> 00:06:27.080
Thanks very much.

s87
00:06:27.080 --> 00:06:27.919
Thank you.

s88
00:06:27.919 --> 00:06:29.360
Yeah.

s89
00:06:29.360 --> 00:06:39.320
Yeah, so basically we can generate a lot of code with a lot of agents, and then we're getting to the bottleneck of uh reviewing that code, making sure you can actually merge it.

s90
00:06:39.320 --> 00:06:49.480
Um how do you guys think about that in terms of are you deploying like I see you deploy every 30 days, which uh might be a different definition of deployment, but

s91
00:06:49.480 --> 00:06:57.960
is it deploying something you can actually test to make sure it works well, or how are you reviewing uh this many lines of code from all the agents?

s92
00:06:57.960 --> 00:07:03.280
So, the the original workshop that we wanted to do was actually answering that question.

s93
00:07:03.280 --> 00:07:05.960
How do you How do you build agents to review code?

s94
00:07:05.960 --> 00:07:19.440
Um what we found is you can build an integration with CMA so that on PR, it kicks off one, two, three, many sessions with many sub-agents to evaluate what has changed and find bugs.

s95
00:07:19.440 --> 00:07:33.240
Internally, we we have uh these sorts of agents do a lot of the uplift for us, and we've seen that that enables us to uh reduce the amount of time we need to spend on a per PR basis and reduce the number of bugs and keep the quality

s96
00:07:33.240 --> 00:07:34.200
uh high.

s97
00:07:34.200 --> 00:07:46.640
Um but this is partially an open question of now we've removed the boundary of uh typing and exploded the number of PRs we can make per day, hour, second.

s98
00:07:46.640 --> 00:07:47.480
Um how do we keep up?

s99
00:07:47.480 --> 00:07:49.760
And we're still exploring that, but

s100
00:07:49.760 --> 00:07:50.280
Yeah.

s101
00:07:50.280 --> 00:07:52.400
CMA is part of the answer, I think.

s102
00:07:52.400 --> 00:08:02.680
Yeah, and you can iterate in a loop, you know, to like review, add comments, review until it's done, but then at some point you still need to run the thing to make sure it works well locally.

s103
00:08:02.680 --> 00:08:11.000
So, I think that's where the deployments can come in, where you can um you know, auto deploy something that you can test with a custom deploy agent, like you said.

s104
00:08:11.000 --> 00:08:15.400
Um it just depends, like if you have different environments for each branch, but

s105
00:08:15.400 --> 00:08:22.720
You you can run your application in the sandbox as well and have Claude self-validate the changes that it made.

s106
00:08:22.720 --> 00:08:28.160
Um and make sure that like it acts as a QA agent as well.

s107
00:08:28.160 --> 00:08:33.440
Are these like long-running sessions that you can go in and actually play around on the UI?

s108
00:08:33.440 --> 00:08:36.760
We don't have uh kind of tunneling today,

s109
00:08:36.760 --> 00:08:40.039
So, you would have Claude go in there, play around with the browser.

s110
00:08:40.039 --> 00:08:40.400
That's right.

s111
00:08:40.400 --> 00:08:41.000
And then

s112
00:08:41.000 --> 00:08:41.760
and validate it.

s113
00:08:41.760 --> 00:08:43.960
And then maybe even give you back a video, maybe.

s114
00:08:43.960 --> 00:08:45.480
Yep, exactly.

s115
00:08:45.480 --> 00:08:46.440
Cool.

s116
00:08:46.440 --> 00:08:48.440
Thanks.

s117
00:08:48.800 --> 00:08:49.920
Any other questions?

s118
00:08:49.920 --> 00:08:50.320
Hello.

s119
00:08:50.320 --> 00:08:50.839
Hi.

s120
00:08:50.839 --> 00:09:00.880
Uh for an enterprise company, if at all we want to maintain true tenant isolation that we want to support, I heard that you are not supporting yet the enterprise

s121
00:09:00.880 --> 00:09:03.360
uh company uh use cases, probably.

s122
00:09:03.360 --> 00:09:05.080
We're not supporting on-prem.

s123
00:09:05.080 --> 00:09:05.640
On-prem.

s124
00:09:05.640 --> 00:09:05.960
Yeah.

s125
00:09:05.960 --> 00:09:16.560
But what if I want to have uh let's say I have 100 customers that as an enterprise company, can I have separate uh Claude-managed agent instances

s126
00:09:16.560 --> 00:09:16.880
Yeah.

s127
00:09:16.880 --> 00:09:20.120
per company of ours that we want to support?

s128
00:09:20.120 --> 00:09:22.080
Is that a viable option that you support?

s129
00:09:22.080 --> 00:09:28.720
Is it only one instance that we get, or can we get one instance per company that we support as an

s130
00:09:28.720 --> 00:09:30.560
It's however you choose to define it.

s131
00:09:30.560 --> 00:09:41.000
You can define an agent per customer, and then that way the data will be segregated, or you can use a workspace per customer if you want like true isolation you could do

s132
00:09:41.000 --> 00:09:43.000
an org per customer.

s133
00:09:43.000 --> 00:09:45.480
So it depends on how you want to set up.

s134
00:09:45.480 --> 00:09:51.560
Your agents and you would probably want to maintain that mapping of like which customer maps to which agent.

s135
00:09:51.560 --> 00:09:53.560
Okay.

s136
00:09:54.480 --> 00:09:56.720
I think I have a follow up question.

s137
00:09:56.720 --> 00:10:08.600
So just to given the scenario that we have two customers and we want to build the agent once but the agent going to be shared by the two customers.

s138
00:10:08.600 --> 00:10:11.360
How to achieve that?

s139
00:10:11.480 --> 00:10:13.280
There's many ways to do it.

s140
00:10:13.280 --> 00:10:14.320
You could do it through automation.

s141
00:10:14.320 --> 00:10:25.480
So you could have your agent definition live in Yamo in your code and then build tooling to update it to both of your workspaces and basically synchronize them or you can model everything in a single organization

s142
00:10:25.480 --> 00:10:28.560
and then do the the modeling that way.

s143
00:10:28.560 --> 00:10:28.600
Uh

s144
00:10:28.600 --> 00:10:37.160
You could create like a single agent across all your customers and then you manage the mapping of like which customer is using which session.

s145
00:10:37.160 --> 00:10:42.800
Yeah, then in in which workspace I can accurate this agent?

s146
00:10:42.800 --> 00:10:56.800
Yeah, if if you do it per workspace then you need we give you tooling to synchronize a single definition in your code to multiple places so that whenever you update it in your code through CI you can update all of the definitions at once.

s147
00:10:56.800 --> 00:11:06.080
So you can either make a copy of your agent which is essentially a template of system prompt model name tools and you can like make a copy of across every workspace.

s148
00:11:06.080 --> 00:11:14.240
Let's say you go down like the one workspace per customer or you can just put all your customers in a single workspace and then you maintain the mapping of

s149
00:11:14.240 --> 00:11:23.240
which either you do again have like copies of your agent or you use a single agent and then have the mapping of like which session maps to which customer.

s150
00:11:23.240 --> 00:11:31.280
We have like a metadata field on the session where you can put in like let's say customer ID so you know which session what map to which customer.

s151
00:11:31.280 --> 00:11:41.000
Okay, that you know like a putting all the customer data in one workspace, how do we satisfy the data segre- segregation

s152
00:11:41.040 --> 00:11:41.560
Yeah.

s153
00:11:41.560 --> 00:11:42.760
requirement, you know.

s154
00:11:42.760 --> 00:11:48.640
Yeah, if you if you care about data segregation, then you need to put them in individual workspaces, and the resources are allocated per workspace.

s155
00:11:48.640 --> 00:11:54.120
But, there's basically tooling to enable you to do each of each of those things.

s156
00:11:54.120 --> 00:11:59.280
And when you say data segregation, like is is that like a legal requirement, or is that something just you want to

s157
00:11:59.280 --> 00:11:59.960
Yes, so

s158
00:11:59.960 --> 00:12:06.560
something legal, like customer doesn't want to share data with other customers, you know, they want to dedicate

s159
00:12:06.560 --> 00:12:08.680
Yeah, you would do it per workspace.

s160
00:12:08.680 --> 00:12:09.200
Okay.

s161
00:12:09.200 --> 00:12:10.080
Okay.

s162
00:12:10.080 --> 00:12:10.480
Thank you.

s163
00:12:10.480 --> 00:12:12.440
I saw a question here.

s164
00:12:12.440 --> 00:12:14.720
You have to speak up, or

s165
00:12:14.720 --> 00:12:31.200
Um Is there a way to modify the compute environment, meaning uh in some cases, I may need to have higher memory for my agent to do the work, or I need a GPU for my agent to actually do the work.

s166
00:12:31.200 --> 00:12:33.880
Is it supported in this, or

s167
00:12:33.880 --> 00:12:40.320
To to the Today, if you want to do custom resource allocations for your sandbox, you would use self-hosted sandboxes.

s168
00:12:40.320 --> 00:12:43.160
You would use something like Modal that has GPU offerings.

s169
00:12:43.160 --> 00:12:57.280
And we have cookbooks and kind of first-party integration, so that you can hook up your Modal instances to run your agent loop inside of Modal instead of our provided sandboxes, which today are all the same.

s170
00:12:57.280 --> 00:13:00.920
So, if you care about different scale, you would use a different provider for that.

s171
00:13:00.920 --> 00:13:07.600
And do you have like a list of specifications of what the environment these agents have access to?

s172
00:13:07.600 --> 00:13:13.760
Yeah, you you can find that in our docs, and you can find cookbooks to integrate with third-party providers as well in our docs.

s173
00:13:13.760 --> 00:13:20.720
Yeah, we have a bunch of cookbooks on like how to work with Modal or EB2, Daytona, whatever provider that you want to use for sandboxes.

s174
00:13:20.720 --> 00:13:21.560
Yeah.

s175
00:13:21.560 --> 00:13:22.280
Yeah.

s176
00:13:22.280 --> 00:13:22.800
Hi.

s177
00:13:22.800 --> 00:13:23.400
Hi.

s178
00:13:23.400 --> 00:13:24.400
Thanks again.

s179
00:13:24.400 --> 00:13:36.040
So, out of curiosity, how to build a sim- version of Cloud Tag using CMA in a different chat channel, especially for the multiplayer mode.

s180
00:13:36.040 --> 00:13:51.320
Uh this definitely something you could do today where you would on a per thread level map it to a session and then anytime a user messages that session, you inject that as a user.message

s181
00:13:51.320 --> 00:13:55.560
letting the agent know, hey, this is coming from Gabe or if it's coming from Priyanka.

s182
00:13:55.560 --> 00:13:59.400
And so everybody can message that agent independently.

s183
00:13:59.400 --> 00:14:03.600
You can have it share memory across sessions so that it learns from each other.

s184
00:14:03.600 --> 00:14:12.760
You can give it tools to reply back using like the Slack post tool or something like that so that the agent can decide when it wants to post.

s185
00:14:12.760 --> 00:14:16.480
You don't necessarily want to just mirror whatever the agent is responding.

s186
00:14:16.480 --> 00:14:18.080
You want it to be explicit.

s187
00:14:18.080 --> 00:14:21.520
Uh but you could definitely model this using CMA and

s188
00:14:21.520 --> 00:14:30.240
And if you want it to be like Cloud Tag, you'd probably do like one agent per Slack channel and then every agent has its separate memory and only has access to

s189
00:14:30.240 --> 00:14:34.120
messages within that Slack channel.

s190
00:14:34.120 --> 00:14:34.880
Yes.

s191
00:14:34.880 --> 00:14:36.839
Hey, thank you for the presentation.

s192
00:14:36.839 --> 00:14:38.040
Very useful.

s193
00:14:38.040 --> 00:14:47.720
Quick question in terms of um looping and doing long runs um in this Cloud Console, how do you see that?

s194
00:14:47.720 --> 00:14:58.120
Um is this something you have like some specific module that I I'm not finding or um are you you're planning to develop that um more in the future?

s195
00:14:58.120 --> 00:15:00.560
Um thank you.

s196
00:15:00.560 --> 00:15:06.040
Do you mean how do we provide the observability for really long sessions or

s197
00:15:06.040 --> 00:15:17.600
No, no, no. Um so more focus on um using this platform to build those uh long-running agents like hours and hours like last 6 hours for example.

s198
00:15:17.600 --> 00:15:29.760
Um is this something that is already embedded in what you have built in the agents or I'm more curious to know if you are developing something specifically for that or how you see that trend.

s199
00:15:29.760 --> 00:15:40.920
The the outcome system that I demoed is the best way to do really long sessions because you define an exit criteria and Claude will just keep going until it meets that criteria.

s200
00:15:40.920 --> 00:15:51.640
And it could be a really long task like you know, rebuild blank and it will just mercilessly iterate until it matches the the rubric.

s201
00:15:51.640 --> 00:15:57.000
There there there's nothing special you would need to do to get the session running longer than six hours.

s202
00:15:57.000 --> 00:15:59.960
It should it should just keep keep going.

s203
00:15:59.960 --> 00:16:01.000
One quick follow-up.

s204
00:16:01.000 --> 00:16:10.200
So, if I run at the agent for hours and hours and I want to understand like checkpoints status, the best way to that will be through the session tab.

s205
00:16:10.200 --> 00:16:11.120
Uh yeah.

s206
00:16:11.120 --> 00:16:12.320
be the session event stream.

s207
00:16:12.320 --> 00:16:15.040
Yeah, there's the events API on under the session.

s208
00:16:15.040 --> 00:16:15.440
Okay.

s209
00:16:15.440 --> 00:16:28.680
You could have a custom tool called like update status for human or something like that and Claude would on intervals whenever it feels like it's made progress call that tool and give you a status update.

s210
00:16:28.680 --> 00:16:29.080
Thank you.

s211
00:16:29.080 --> 00:16:30.880
Thank you very much.

s212
00:16:30.880 --> 00:16:32.680
All right, any other final questions?

s213
00:16:32.680 --> 00:16:33.160
Yes.

s214
00:16:33.160 --> 00:16:39.760
Um following up on that previous question about using this for Claude tag or just similar functionality.

s215
00:16:39.760 --> 00:16:45.480
I've been uh analyzing a whole bunch of uh agent frameworks.

s216
00:16:45.480 --> 00:16:54.000
So, if you get a message while the um agent is waiting for a custom tool result for example, human in the loop, um you said it would 400.

s217
00:16:54.000 --> 00:16:58.720
Do you have uh any suggestions on how you would deal with that?

s218
00:16:58.720 --> 00:16:59.480
Um

s219
00:16:59.480 --> 00:17:03.200
Can you do custom tools on a sub agent?

s220
00:17:03.200 --> 00:17:03.560
I forgot.

s221
00:17:03.560 --> 00:17:04.839
You you could do custom tools on a sub

s222
00:17:04.839 --> 00:17:13.600
Cuz then cuz you could basically have like a sub agent that's handling your custom tool and then that way your main kind of coordinator agent's always free for receiving.

s223
00:17:13.600 --> 00:17:20.280
In the API, can you directly return a custom tool result for the sub agents tool.

s224
00:17:20.280 --> 00:17:25.439
Well, the sub agent would emit the custom tool use and then you would populate it back to that.

s225
00:17:25.439 --> 00:17:42.400
you you define like your main coordinator agent and then you can say agent A can talk to agent B and C and then agent B is the one let's say processing your custom tools and your agent B definition is where you'll define your custom tool and then that's the session thread that you would listen to get the

s226
00:17:42.400 --> 00:17:44.400
Is that a different session thread or the same?

s227
00:17:44.400 --> 00:17:46.680
No, it's it's part of like the same core session.

s228
00:17:46.680 --> 00:17:54.600
a different thread technically, but you only interact with the main thread and we correctly delegate it cuz we know where it needs to go based on IDs.

s229
00:17:54.600 --> 00:17:54.920
Um

s230
00:17:54.920 --> 00:17:55.480
Okay.

s231
00:17:55.480 --> 00:17:59.960
And then the main agent will pass it along to the sub agent.

s232
00:17:59.960 --> 00:18:02.840
So the session is still idle even though the

s233
00:18:02.840 --> 00:18:05.800
If if if a sub agent is doing work, it's not idle.

s234
00:18:05.800 --> 00:18:06.640
It's

s235
00:18:06.640 --> 00:18:11.480
But like if the main coordinator agent is idle the sub agents could still be

s236
00:18:11.480 --> 00:18:12.040
still doing work.

s237
00:18:12.040 --> 00:18:13.480
Yeah, you you can see that here.

s238
00:18:13.480 --> 00:18:14.760
Okay, that's pretty impressive.

s239
00:18:14.760 --> 00:18:18.120
This uh gap here, the main session is is idle.

s240
00:18:18.120 --> 00:18:21.120
The main the main thread is idle while the sub agents were doing work.

s241
00:18:21.120 --> 00:18:22.680
And they could be waiting for tool results.

s242
00:18:22.680 --> 00:18:23.080
Exactly.

s243
00:18:23.080 --> 00:18:23.680
Yeah.

s244
00:18:23.680 --> 00:18:30.440
So if you're trying to do something where you want like the main agent to be always chatty, then I think the coordinator pattern works pretty well for that.

s245
00:18:30.440 --> 00:18:30.920
That's awesome.

s246
00:18:30.920 --> 00:18:31.600
Yeah.

s247
00:18:31.600 --> 00:18:36.520
I think we're we're at time, but we'll we'll be just outside if you want to come talk to us.

s248
00:18:36.520 --> 00:18:37.920
Uh thank you for having us.

s249
00:18:37.920 --> 00:18:38.520
All right.

s250
00:18:38.520 --> 00:18:40.062
Th- Thank you so much.

s251
00:18:40.062 --> 00:18:42.062
[applause]

s252
00:18:54.473 --> 00:18:56.473
[music]
