WEBVTT

00:00:00.000 --> 00:00:02.520
That's also how I think a coding harness should be.

00:00:03.020 --> 00:00:05.080
Like, he has a different workflow than I have.

00:00:05.520 --> 00:00:11.620
And I want my coding harness with my agent, so to speak, to work according to his workflow.

00:00:11.740 --> 00:00:13.380
Because that would be terrible. I hate his workflow.

00:00:14.280 --> 00:00:20.720
So Pi is also a self-modifying, self-healing kind of harness, where the agent can write me ad hoc tools,

00:00:20.720 --> 00:00:27.060
and in the same session I can reload the updated version of that, and it sees if it fixed it or if it wrote it the correct

00:00:27.060 --> 00:00:27.760
way and so on.

00:00:27.780 --> 00:00:29.280
And I can give feedback immediately.

00:00:29.420 --> 00:00:29.980
And I...

00:00:30.000 --> 00:00:35.740
What I think is, like, what is really fascinating to see, like, how Pi works is that the system prompt is tiny.

00:00:36.260 --> 00:00:38.400
I think it's under 1,000 tokens. I'm actually not sure.

00:00:38.660 --> 00:00:44.120
And 25%, I guess, of the system prompt is the manual for Pi to read its own manual.

00:00:44.640 --> 00:00:50.920
And so when I tell it, like, hey, we need to build this thing, it, like, I don't have to tell it what Pi is.

00:00:50.960 --> 00:00:52.980
It's sort of like, oh, here are some examples to read this, right?

00:00:53.020 --> 00:00:58.160
And so it's building its own tools, and it understands how to build these tools to be hot reloadable too.

00:00:58.160 --> 00:00:59.520
It's just really interesting.

00:00:59.900 --> 00:01:02.040
A Pi extension can bring up UI, right?

00:01:02.120 --> 00:01:06.180
And so I have a custom review command that works exactly like I want the review to be.

00:01:06.240 --> 00:01:07.980
Like, it looks exactly for the things that I want.

00:01:08.340 --> 00:01:11.940
But I don't have to tell it, like, hey, please review the change versus the main branch.

00:01:12.280 --> 00:01:13.200
It's kind of like, hey, review.

00:01:13.380 --> 00:01:16.080
And then it comes up a menu that's like, okay, how do you want me to review it?

00:01:16.080 --> 00:01:18.020
Is it, like, uncommitted changes?

00:01:18.320 --> 00:01:19.780
Is it as a single commit?

00:01:19.980 --> 00:01:21.400
Is it a commit against the main thing?

00:01:22.020 --> 00:01:24.480
And it's UI that sort of auto-populates.

00:01:24.840 --> 00:01:30.240
And if I don't like how it behaves, then I go to Pi and say, like, hey, actually, I keep doing this and this.

00:01:30.320 --> 00:01:32.040
Can we have a custom UI component for it?

00:01:32.080 --> 00:01:34.040
And it will just appear magically in the thing.

00:01:34.660 --> 00:01:36.180
And that, to me, is really the interesting part.

00:01:36.280 --> 00:01:41.340
It's like it becomes super malleable and adjusts to that without me having to jump for hoops.

00:01:41.340 --> 00:01:47.260
Like, the Claude Code team has released a new to-do tool, like, a couple of days ago.

00:01:48.280 --> 00:01:52.940
Armin rebuilt that as an extension to buy Pi in, what was it?

00:01:53.020 --> 00:01:53.340
I don't know.

00:01:53.760 --> 00:01:54.540
An hour?

00:01:55.020 --> 00:01:55.200
Yeah.

00:01:55.200 --> 00:01:55.400
Something.

00:01:55.940 --> 00:02:02.120
So I don't have to wait for my coding harness producer or vendor to add a feature I need for my workflow.

00:02:02.260 --> 00:02:03.440
I just tell Pi, build me this.

00:02:03.440 --> 00:02:04.200
You just add it.

00:02:04.940 --> 00:02:09.940
It reads for documentation, which is just marked on files with examples and API descriptions.

00:02:09.940 --> 00:02:11.760
And then it builds the thing for me.

00:02:12.560 --> 00:02:15.160
And I think that has value, at least as an experiment.

00:02:16.100 --> 00:02:16.780
Yeah, yeah.

00:02:17.160 --> 00:02:19.780
Also, I got Doom running that way, so that's nice.

00:02:19.780 --> 00:02:19.900
Yeah.
