AI Native DevCon 2026 London — all conference sessions as interactive skills
71
89%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Risky
Do not use without reviewing
⚠️ Speaker-label warning. This transcript has no per-speaker labels. There appear to be at least two presenters (Alfonso Graziano of Nearform, and an unnamed co-presenter who fields several audience questions) plus various audience interjections. When attributing quotes, use hedged language ("the speaker", "a presenter", "one attendee asked") unless context names someone unambiguously.
⚠️ Transcription quality warning. The source is unusually noisy from speech-to-text errors. Recurring garbles to interpret:
- "Spekit" / "psyched" / "spike pay" / "stat" / "spat" → Spec Kit (the framework) or spec (the artifact)
- "be matched" / "be mat" / "vmod" / "vmatch" / "bm" / "demed" / "beam ads" / "BAD" / "BMS" → BMAD (alternative SDD framework)
- "biocoding" / "bipoding" / "by coding" / "bypassing" → vibe coding
- "self working AI" → likely agentic AI
- "anti-gather" → likely a product/app name (idea-capture demo)
- "rate limiting" complaints suggest a shared LLM endpoint at the venue
Preserve garbles verbatim when quoting; bracket clarifications as
[Spec Kit]only when essential for sense.
Thank you for having us. Yeah, I prefer Nearform where we work with generative self working AI solutions. And thanks and more for being here. Hopefully today we have a good fun together. So before we start, how many of you have done any spectrum development? Oh, by the number of people, yes. We can go straight into the details. So my name's for about half of you refreshment.
So we're going to start by talking about quite a few different things, but we'll start by talking about why code. So prompting and getting coded out by the problem. So it's probably a lot of you already know this. You've gone using an agent and said, this is my mom, you got caught up in the event. Probably quite a long time to see how I. Could. It generates candy. Right.
So the biggest problem with my company. So you go, you put in a branch, it generates some code based on these training data. It doesn't necessarily take a look around your code. Give any prompts outlook for context or patterns. It goes, okay. This is the code. This is what they want to do. Great. I'm just going to do what I do. And if it's okay to install earlier, you will never say that agents. Will be constantly incorrect. So they confuse exactly the wrong thing. It would be very confident. This is whereby starts falling. You tell me what you want. You just generate something might look right, it'll pass tests, but it might be.
This is where my coding kind of hits the wall. Is unless you're spending a lot of time with the input outputs. Which then. Way slowly down anyway. So you move all that benefit. Speed. So unless you've got to be reviewing my outputs, you go to the. More time to know.
So we talk about, okay. Two ways you up there, the biocoding way that you describe, or you can give it specs. And specs are. Okay, this is the system, this is how we want things to be written. This is a plan. This is the guardrails, how not to do things and how to do things. Importantly, there is a human review all the way along. So your xmax, stop your music, says yes, it's Tess, silk. Correct. So you're free specific. Whereas my coding is very much, okay, you just fire it in and you get something. You haven't got a checkpoint.
Of documentation. This is a link to take into consideration. A lot of people say, well, isn't fake money on just about, right, what's confrontational? And then you're able to do actually the spec is more about you're planning out the work that needs to be done. You're setting up that contract between human and AI to develop new way which is safe and reproducible.
I think I'm something that's very important is this eventually again called outcome. It'll be exactly the same over time. You can get the same outcome. Whereas with bipoding, yeah,
So we talked about the loop. So we're talking about AI engineering. It changes the unit work from rain code to client intent. So you're telling the AI what intention is you're not telling it what you necessarily want to look like. But you're saying, this is what I want system to do. This is how I want system to operate. And letting the AI produce the code.
You're moving from being an influencer to orchestrate maintenance. So you still understand code, but actually you want to get out of the way of the AI agent and kind of go, this is what I want to go to do. These are the safeguards, go and do it. Make sure the engine's working the way that we. Should.
And humility environment or twice for AI agents rather than getting the way of the agency.
So when you're at your sites, things to consider. So you've got the intent, you decide what you want to build, what you want it to do. Before you sign up. So you're thinking about the sort. In a lot of cases, obviously people just go in and take the info. Right. We'll do something. But actually we expect trends, the problems that might come in, all the edge cases involved.
You said those constraints. In a way that AI understands. So that knows what not to do as well as.
And you're checking the results. So we have this crisper verify. We trust it can come up with the right output and spectralized. But we verified that the RP lines. Because like I said, AIs can be completely correct. And.
I know this is going to. Change depending on. The work. We're doing. But. I guess it's quite broad now. Do you mean. Like, because there's some people who think. You need to read every line of code. Output. Some people who think that you look to be functional at a business logic in it. You get an AI to summarize it. You read the help of the, do you have any sort of. I guess, how you figure out that verification. And what verification knowledge. For that. Implementation?
So specifically for spanks plus report. It's very easy for them to come up with information, right? Just make them good. So all you need to do is read the specs, make sure how to produce expensive. Way. Facing to the book right. Go back to what you mean by this. We need to look for it further. So it's a human driven. Process. Still. Yes.
If you were in the movie decentral. And going. Back and forth with the agent. So it's like. Iterative.
So you can still work with it. Absolutely. And it's essentially you want to get to the point where you have a spec which is the contract between AI and Q. So to renew and they are going to be using. So you need to make sure that the contract will try all the way on. As you dive deeper into it, as you refine things, as you expand on the site.
I went to the underside where we can see exactly where the money block is in the process. And as you can see, basically we are finding every time, right? So we are first of all kind of. What's your name? Then how will that is? Then we are dividing into chance and that we are 19 years of village and then we are financial. Then it's some more of us cases.
You can have like layers and layers of verification starting from deterministic aids that a interviewer sat on top of each other. And at that point you don't have to review any more line by line. There shall be a chicken renew. It carries a whole. Which is. Like way faster. Like a better user of your time, right? Because like the obvious things are cached hopefully earlier in the process.
Layering. Tools to assist you by. Using those pretty much. If you don't care about like the navy commission of the concept or something because you really have to release the player who checks out, you don't check anymore some of the side guys because hopefully you have let the dance into your rose files, right? And then now your agent is who they're using it. So you carry that when you do the review actually you care about. The agency comments and what I really like with a really deep follow. Ing and that's the implication that seems. Really important. Because when you notice something incorrectly speed up. Again. So that future work also includes.
So I guess we have this entire loop essentially. So we want to define a high level of what it is we're trying to get out of it. Come with plan split open to the smaller tasks. As normal process. Then you review and it's great.
I know that if all of that you've got your project contacts, your constitutions which basically define what are we trying to build overall, what are the things we should be doing and you guardrails which you wear a lot of the same. But do not do x in this situation. But if you're turn, just fuel. I like just on the police regardless and like security scanning secret like he takes on the subprime. So we try to start tooling on top. So that our agent has very strong batteries.
So for stages, four artifacts we're going to be using Spekit. It's a lighter weight framework. Some of the frameworks which are b matched will take days or even weeks to figure out how to use it properly. So Spekit should be pretty easy to fit into.
We have four phases. We have specify. So what are we building? What is it we actually want to achieve? I can't forget. So what has done? What's good enough? Because it's very easy to just specify the range of code frame.
So we also want to know that tell the agent. Seven plants on how is it going to be? Built. The things that we are willing to forego more central in order to get what we want.
Tasks are split up to those tasks. Okay, we need to boot tracking first before we build functional UI. So making sure that things are going to be in the right order. And what each task has. So this is. What looks like for this. House.
So run through your codes, those tasks at the end. Make sure it's out cooked the right thing to make sure the outcome is correct. So you don't need to verify one by one codes. They don't have tools. But making sure that okay it's still staying within those guard rails. Two stupid. It's actually out. You are the reveal between your. So it's not just real last year you will say yes continue or actually.
All right. So I have a really important question before we start. So I hope we all had lunch. What coffee after lunch? All right. Please guys it's going to be fun for you to sing.
So what we're going to do today we will implement. A small feature using SV using Spekit as he was mentioning who used package already in the past. Okay. So if you already use this package you're going to find it very familiar because it's basically like the stats of span. Hopefully we're going to learn something new.
Please kind of interesting. So please if you have like any questions which might be something like more high level or something like more advanced about I don't know how do you scale as the teams? How do you scale it on your organization? What are some of the main issues or challenges that we found out? We've been using as a defored. So across like tens of ticks. So I think we got a little bit of experience with it. We struggle sometimes on some projects. So we have a few learnings that we'd love to share with you guys. So if you have any questions we're definitely here.
During this time we are going to bother you and we'll ask or you're going like if you are like implementing this. I strongly recommend you to follow the workshop actively because that's it's going to be way more fun.
So we're going to college today is something very simple. It's basically a good functionality for navigation which this place we call it without like 20 years anti-gather which is basically just a place where you can wake up in the morning. Take a coffee table that we like and then write down your ideas for either day or maybe a side project. Like 10 times in a row I written I want to go to gym and everything but I just have it so basically what you will have at the end is that it's something around this where you can just say okay that's what I want to do like that's the core of the idea. That's the title of the idea with the description and then you can add more details every time you have detailed the idea. This here is going to change and there are like 16 levels. So you can see that every time you expand your idea you would say this here starting from a small seed to a light full fledged flat. Properly.
So without further ado I'm going to give you like five seconds or something. A bit more. But assuming that you have to use your laptop, this is the link is called new or shop. And basically on the workshop you will find the code which is already working all the instructions and I'm going to go through that in a second. Actually the code here is written in Node.js and React. If you're not used to JavaScript, don't be serene. It's completely fine. At this stage we don't care too much about like. The actual output code. We care more about the process. So there are just a few prerequisites like having Node.js installed.
And maybe let me show you actually how the readme looks like because on readme you will find like full gut full guide. And one quick thing actually. While we run the actual planning, implementation, all this good stuff. We might find some questions from people. We actually have a set of questions that we have ourselves and a lot of our teams asked a lot of clients actually. So maybe we will have a little bit of time to discuss some of those questions. But.
Are we literally all on the same page? Are we or here? Lovely. Okay. So. The first thing that you should do. Is just go here git clone download this. It should be fine. So you can just clone the repository. Once you close the repository. You will find actually on readme. So read me it's going to be our guidance for today. It contains all the steps. As we tested a little bit. So in theory should kind of work. But you don't know. And it contains what this project is, what you're going to find. And well a little bit of an explanation which we already discussed.
What we care about is from what we will build today. Right. So we have around I think like 60 minutes 70 minutes for that ideally we want to implement one feature. Imagine that you just received. Well that's really a relatively good fact. But imagine you received a requirement from the business. And business is saying oh you have to implement this and just be ready. For fair as usual.
So we are going to use SDD to implement this actual prompt. And you can just follow the entire readme. There are also some references branches. So if you're interested about seeing the actual real difference between bypassing and SDD like the actual div of the code, you can see here there is a branch called by coded implementation. Which shows you the actual is the same. The hardness is the same. So I've used code code for both. But the process of reaching that goal process of implementing it is already one is. I hit you the prompt very by prompt and I hope for the best. And the other one is I follow the entire cycle.
At any point in case you are stuck in case I don't know something is not working something is broken whatever. We do also have a set of tags. Right so at any point bear with me let me find it actually. Sorry. Oh there we go. Thanks. Perfect. So at any point in case you're a sap or in case you want to just move on because maybe your stats I don't know like 15 minutes of the plan you didn't review everything but just want to move faster and go and go you can actually skip. To the next phase. So we have types for everything. So you have step 2 specified tree plan for task and file implements. Just in case you want to speed up things a little bit.
So as we mentioned today we're going to use Spekit. So in case you don't have it installed strongly recommend just to install it. Very quickly shouldn't take too much time. And yeah I think we can start. Any questions so far anything?
Very good. Yeah good. Check. To. Place that all we need. Is a vector. Phone locally. Installed. Ideally Node.js proved there anything else just that like the first thing for me is just run git clone this repository and in the repository the readme actually does you literally everything. In case you're stuck with anything you can just reach out to us. Or we can just say to your agent I am cycling this in this place here is read me have fun figure it out and that makes sense like I'm fine. If you get to a point where you're weighing for 10 minutes and you have questions feel free. While we are waiting for the agents run day the planning so let us know when you are planning stage when starting to actually build and we can solve for like few minutes and we can look at some questions like ngm install the repo and we've got a Spekit.
What is it we do to trigger. The. Static headline? Yeah we just check out that. Step on. No let me show you actually so again everything explained fully in readme what you can do actually let me go here so the first thing that you might want to do is run India right so npm install npm rundown so you start from master for people not use pajamas and chemical justice so all the dependencies and can run down starts the project right both front end and back end. Once we do this we are now ready to go to the asd loop step by step so there are three premises here. So we want to have no distort the rainbow clone locally I didn't have a cold code colleagues whatever running.
By the way. The node run debt web windows because. It uses concurrent link. So you might. Oh. That. Oh no that's fine you you can also run quick cash actually. No no I think it's fine you can run you can just cd into like the single application right both the front end and backend you can open two terminals cd to that path and then you can run npm run that specific thing concurrently it's just for like making things a bit simpler but in case you have windows yes it might be a bit more complex. Yeah. So if you have a map which I assume you have you can just run ntms from the root and then I can run sat or sorry I can run that from the root which is going to solve both the battery. So yeah you don't need to you have to see into the project but you don't have to see it be a specific application which you have to edit currently.
By the way to make things a little bit more spicier have you ever used skills here? Okay pretty much ever right so we do have a couple of skills that might be helpful one is the front end design skill from a tropic. Which by the way created this beautiful guy which I have no idea how I did it but anyway. I'm still trying to understand how to set relief but it looks like ai disease can do this and there is also something that there are also skills for three js which this kind of animations and let's see what it works. Oh no I should be the other I should be the other branch but it's going to also be the very coalition when the plant changes right when you when you level up microphone. So you can you can control that and you can download it from here actually so I skills add whatever name of the skill.
Server an app slash web just run npm run device it just know they were inertia work. You have to solve force. Yeah non campaign school in the room. Macey can I show. Up? If it doesn't let's try to whatever you like us before that if you're starting if you're struggling to start it already guys just ask the agent to. Ask. Yeah. I'm not. Sure. Oh. Yeah. This is not too much. That. Same thing right. Yeah. It's so interesting. So I. Didn't hand it. You know. What it is. Just a question. Okay change your. Let's try. It down. Use traction. So you have to anti.
Interesting that. One thing about number 26 it might be that you have to like to note that. In case you are using MDM it's just nbm is called 24 and then I give you. Space expectations. To. Feature perspective. So. If you want to take a master you should not call yourself. Did someone start to specify based like the first phase range. Only to record the. Mining index yet. Who work in. That direction. Is the output.
We have rate limiting issues. That's interesting. Because we are this IP is going to get blocked because there's hundreds not just in this one. We'll find out at the moment it's just given what sort of cues that we use region. Bill on previous. So you knew that. We're looking at is it becoming nice. What you would do is. It depends on the. Final things you go for a I hope that requirements we need to make sure. Tasks related to those once they've done. Which are foundational reason. S. In theory do you remember. Staff and that's one of the reasons why we have to spend so what's your intern?
All right so one question from Paul which I believe might be interesting for everyone here all asked but if everyone is the same prompt for building stat are we all going to get same result and like yeah in practice kind of everyone is too much you guys know what we are talking about so because what happens is that of course the deal that the LLM is not the mystical even that we might using different harnesses, different models, different temperatures and all these things and even even though. Even if we are using I don't know opus for those age on quote code temperature zero whatever if everything is the same we still we are still going to get different results in the final spike. That's why that's why this thing here it's very important. Where it is. Very good. So.
When we give the first prompt and we generate the first pack we still have to do the radio we still have to check everything because basically what it does when we create the spec we are basically expanding the initial count right so from initial relatively fake from it's going to build the full spec right and we want to check that this full spec is exactly what we are looking for right because we might have hidden assumptions and cases which are not managed all this stuff. And then.
And so this is this is covering the what right so when we are at this point we should have very clear what we are building right in fact one of the things that's more advanced teams are doing. Is. Co-creating the actual initial spec is that someone here which is actually using as the name production of fp right now. Okay a few people nice.
When you create actual specs like the actual spec that identify or whatever. Are your product managers designers all these other people collaborating with spec or to build a spec or are you only writing the spectrum? On yourself? How about you? Say okay. In most of us teams at least the initial phase of this fact is that in a collaborative way. Because the spec is going to contain assumptions that might come from product or from design or from like anyone else maybe you're the main experts.
Right and then when we go to the implementation plan like the plan with an e-file. That we are in control because we want to know how to implement this. Right so answer your question the initial question. Absolutely we are gonna get slightly different results. And that's why we need to have the UN law because we want to converge and control. I hope this answer this answers it first.
When we're talking about defining what we want to talk about how we solve an output and so that would be different depending on who's that input is very much about what are you trying to achieve? And when you get to this end when you get to review in a trade box might be the way if we find that it's doing something wrong and it's not giving me the outcome that you want. Me read the laws go right back to the first steps of THEM I talked to triple down all the chains through all the other states. But ultimately those facts people's truth for what the AI will work from and so that means we must up to date practice all the information we can give. So you might find okay you have to lapse the original stacks and tell you how to edit. It as more information. Because probably all of us know is you have consultant projects. Some information doesn't be coherent until halfway through the project or towards the end project and so you need to be that.
Right just just checking is anyone still psyched installation phase? Two people. Already like reviewing the actual generating spec. All right. Obviously looking so far? Is it good?
One of the one of the questions that we get quite a lot here is and I think you might have the same question or you will have that negotiable when we reach the expectation phase is this happens like super robust. Like I'm not sure how many lines iterated. That should be a big number should be relatively. Fair. If a brother imagine will give you a funeral requirements. But like. That is as detailed as you can get like part of our job is to review that because if we don't review it at this point. If we don't preview it at this stage. Right at the initial stage. Then the agent is gonna basically decide. On the assumptions which is coming from their trading weights right so it's basically gonna implement something which kind of works on average but it might not be correct in our use case so that's why sometimes these specs and implementation plan might seem to be like very long because we are trying to remove all negative right from this from this process.
Oh. Like. What model do. We usually. Lose.
That's a nice question okay so one question is what types of models we can use to actually build the specs right. I'm gonna tell you like my personal experience let's say we have something different. What it notice is that. If you put a lot of effort and if you use very strong models to build the actual stack and implementation plan then you can use a smaller model to actually get the final implementation because heavy lifting of understanding the problem which is the real complex thing and understanding how to write implementation you need it already right and so like the implementation part becomes almost the secret part of the. Job right if you use by coding you do everything you want in one moment right so you need to have like the most powerful model like what was for the day five five whatever if you use this approach on the other end. What I'm finding very helpful is to use a very powerful model initially like the office lab model and that is slightly smaller model like sonnet or something like on those lines for the actual implementation. Because this gives you a very nice balance between number of tokens that you're burning. Because in the first time in the first step you are not gonna invest too many tokens to be fair. But then get a very nice final result. So it seems a little bit more counterintuitive but the moment where you need more let's call it intelligence like however you want to call it. Is the first part not the final one.
Yes. Already used. As contex. T. In finding. The. Or is. No use. Implement. Ation.
Oh next question so just let me rephrase the question is the code base rent. When we are defining the spec what is it only used for like the model is looking at the code when we are defining implementation plan is that question? Okay it kind of depends a little bit of course when you create the prompt to different spec you can definitely say to model hey this to kids look at this piece of code you can use pointers and you can almost force it to read but from a just purely semantic point of view. The main goal of the spec is to define and understand what you have to build. Right so it ended the path so if what you're building is very coupled with your code right then you might want to say hey let's start looking to the code base because maybe. When you define. What you have to implement you might find in some walls or you might need some constraints which are really validated into your code right Generally speaking based on my experience we try as much as we can to keep the spec in the problem space not the solution space. So inspection defining the what and then the implementation plan should find the how so in implementation plan it's going to go into the system understand it and read it that being said as you can see here. In every place we are reading the project context language constitution. Which means that even the actual is reading what is my present day how is it how it is doing it the architecture you know very well so if I have a constraint. Theory should not.
I have seen another hand here. But. You got three field apps 50 belts in a brown field app where you are just changing everything because you've got massive amounts of temple then you want to refund this so existing codes. As a way of running code in the application you don't really care about you don't need to include anything about it to the sex if you wanted to follow existing patterns you might include that effect so that it knows okay. It's in place in an interesting cold place specific what's happening? Here. For example. Like. High levels package. Show. The business people. And. Once it. Aligns with. Them to go. This constraints with. Things like that.
I guess it's. Not supported by Spekit how to box no it's something it kind of depends on the tool and framework that you have to use so just for context there are like multiple frameworks that can use Spekit is one of those patterns also be mat over spaghetti we propose back here today because it's like a little bit faster because you only have those four steps right but we give an example if you have like a very if you have a full PRD right full product requirement documents and you have to implement like terifires being for example has two workflows that can help you to break down the work each multiple specs while specking does not that so with Spekit what we usually do is we try to break down work. Almost manually of course always with the agent right so we we try to run this work where we say okay this use pack which contains all these requirements let's bring it down into two three four like whatever number of specs it makes sense.
Ideally as we were saying before every spec should be validated or co-created which is even better with the business paper. Right with our cross-functional team both the business stakeholders and the people in our team like designers. And so on.
And so in spite if we do it manually in vmod he has been as a workflow which is called create stories that fix which takes it purely and breaks it down. Into. Multiple stories and elements.
I would. Love to. Risk output of. Just. Combine them. For. For. Specific pretty much. Like if you are using beam edge it doesn't make too much sense to use apart from a few cases about like in general if you are using b mags use bm for everything right so on vacuum you have workflows to just creating the mission plan and then implement it and then do code review right so BAD is a bit more complex it has more like functionalities more power it's just more powerful in general it has few more workflows right be an aging let me show you actually. I promised to myself I'm not gonna talk about ban today but hey.
Also as you move further on you kind of want to break the center a little bit more so if you move further right because you have tasks which are firmly focused and don't necessarily need to pull up back as architectural space into context. So if you break the specs you just want.
So you're saying token contact information. So at some point you probably if it gets too large probably do you want to break it down just to help save that concep. T?
So one thing we should see from between striking the BMS and again I don't want to market too much beam at first we are using it quite a lot it's like a bit heavy but for like enterprise environment it works relatively well. One of the differences is that on Spekit you are focused on the expedition right so if you want to only implement something Spekit is perfect for it but for example it's missing a lot of things regarding analysis and planning right so let's assume that. Do we have any color manager here in the room? I was tied for a moment but let's assume that you have a product manager and let's assume that that product manager just got access to Spekit and now we said. That maybe not but this person can use actually beam ads for example to you to do all the brainstorming research you know it has a lot of features which are helpful for tech leads product managers developers as well and then demed is also super helpful in the planning phase right because you can actually do the work breakdown instead of even with their workflows which is something which is not supported by at least not by default from Spekit.
That being said Spekit has community packages that you can store which are basically like custom workflows install them like use them and so a few of them can be used for applying as well. But they are like not in the core like the core of Spekit is just for implementing something.
Of nice race is it easy to bring your back into your. Service Spekit and then you want to give feedback straightforward or change yeah I'd say throwing solution what you would do if you would take the specs that comes back in either end to be much at the early stage when we skip a whole bunch of questions that you can all ask the area context but it starts to be fully advanced migrated to us specs are because of the way they're in failed it's just like something that could generate by human who can generate framework but you kind of speak them in and you frame all the samples before.
The difference between Spekit and frameworks and like a short frameworks that we use like react hunt or whatever. Or like any other backend framework is that we as a framework we just have started right so we can relatively see part down from one format to the other. It's not that we have to rebuild everything from scratch. Like migrating is very likely and you shouldn't but if you want you can also use like multiple tools together or in parallel or you can just have one branch for you testing stuff and just to give an example some of our teams are start to choose vmatch they found out that it was working very well for deep space which happens right and they started to use overspac which is a bit more lightweight. And they didn't lose anything because in the end it's just harder. Or they can just get left there. Of course in the hands which is like the answer to 95% of those questions. On average yes there is a value in moving them of moving at least some specs shows.
You. Whatever it says is that there are like two types of space the spikes that you create and you maintain which is more similar to living documentation. And the fact that you use. To help your thinking and have the event but once you build your code you want free care too much about the actual kind of object. So the lady spots the one that contains of your features and how it should look like. That is that reward migrating now. And back across you can ask for hate this migrant also for us and then we raise but like if you have like a lot of stories like in one of my projects I should have something about something like 200 demeterrated spectrum. I think only like 10% of it is worth like taking over.
Oh it's good questions. Stage where you need to start curating the specs that you have like. Home contacts and. It will. Start. Expensive. Change. Or. Every structure. Are you curating. Facts. Or item?
Anyway. Probably not and this is part of that iteration piece is those early steps which he used to generate tasks and come up with implementation you maintain those as you go so and you learn stuff you will take those your product definition your architecture especially on project concept you will take the steps that we find those tasks once they're implemented the probably network and so we can jump into them they never put micro. So you actually implement the issue of them. Initial ones are the slow choose of what you want. Because otherwise you just kind of with all the information if somebody new joins the project they'll look at those types of freedoms try to understand the projects that you want to see them on today.
We had like two or three more pants here?
Okay that's that's like a one meter long press so what makes a good requirement document? Well I think for us we got that.
So what makes a good requirement documents I think we can split the question in two which is one for us like developers and second is like for the agent what it makes a good requirement for the agent. One trick that I use quite a lot and it's actually like super simple but that should work very very well. Is I give my initial requirement to the agent and they say okay please let's create requirements I usually use years for much that means I should show you. Oh. With me. Sorry. So I usually use this format write requirements. Which is basically a template that you can use to say when this happens I want that like I want that distinct fbx whatever and so I give it my first prompt and I say hey those are all the requirements that I want to put this back.
And then I say this very simple thing but which actually is very helpful ask me as many questions as you can. To understand better the requirements to surface edge cases to like help me think about things that I did the ticket right because a lot of times we give to the agent what we think is a proper spike route is not and so we we can go back and forth with the agent to clarify and let the complex emerge. At the spec level.
And once we are happy about the requirements of the defile about the final requirements file. Then we can go to plant right because otherwise imagine if imagine if you go on jira like whatever tool you're using. You have to implement the story and this story has two acceptance criteria which are. The user has to log in. It doesn't have to break. How do you implement that? Right and so you want to iterate with the agent so that you come up with as many requirements as you can. And you feed them in the spec. Right.
Pretty much yes absolutely you can use that. First. Foundation. Page so it. Was just like. A checklist for. The. Specs. Right. So that. That's that's also the part you want to ask who might be if you have like different parts that contact. Quality. Different things.
So it's like it's one sorry what file are you able to just to double check. List so. You find it. Also. Okay. So this is what I. Want to use this is this is your. First pre-planning and then actually respected the fact that you angle so that this is a general file generated by and by Spekit. So the file that we usually refer to it is staggering file. This is the one. That. We created by. Demon sorry yes so basically when we actually arrhythmic. So do I have to zoom in a little bit yeah. Hopefully that's good.
So when we do this specify actually we create we care mostly about the spike of the file right which is the file that we just mentioned where we have user scenarios we have the user stories right so what Spekit. Might be multiple user stories? Now Spekit and Spekit for example are different than that because in fact you have to epic and then you have stories while on Spekit you have the spec and that respect has not crossed but doesn't change too much.
And then you have the requirements.nb file. Which is basically just. Spekit itself. Is checking its work it's a sort of adversarial review so basically Spekit does its own thing and then it checks that it did everything. And that's like a relatively common pattern that you say to the agent hey do this first. And then check if you did what you were supposed to do because especially very long sessions didn't just keep stop. So what we do is hey please check that to this all this stuff and every time you see that you did something you. Said as a normal human right so this one is fully obgenerated we don't care too much for it we mostly care about this python.
Right. That we all. Project.
It kind of depends on what you want to do because just to give you an example this is a relatively simple project where it's basically a monorappo right imagine if you have. A multi-repo of project. Where do you come into your space? If for example if one spec is touching multiple repos you either create a repo where you keep all the specs. Or you don't meet them or you put them in a different place or you just choose a repo and put them here and then you add all the sim links. Where to put the specs highly changes depending on your context.
If. Everybody. In February not sure.
It has. To be yeah ideally you want to give them version somewhere absolutely yeah if you're working on team. Either it can be like the project repo or like a different specs place or another thing that some teams are doing is they are which my team is doing as well for example. We are seeking the specs not implementation plan but specs of the project management tool like Jira, Azure DevOps, whatever you're using. And you can follow installing I confidence notion somewhere central we're looking at.
User. S. Have a tool. For us.
Okay so let me rephrase your question for everyone. So first of all can we have multiple specs working at same time? Absolutely yes and then how to differentiate spikes and how does the system understand on what spec we are working on?
What you can do here is in this case I'm using close code right but you can use whatever you want right so if I do like new session let's say Spekit up. What oh I don't know expecting this talk shame on me sorry. I call the ID school the reconsider fresh so that doesn't spike this out anyway let's assume I do have Spekit so let's assume I just Spekit plan. Right. If I if I say Spekit there like this. I am not saying explicitly what's back to use right so how does he know what to use well it turns out that there is a file a json file basically in a dot specified folder which is saying this is the actual active spike. So if I don't explain if I don't say here hey now we are working on spec 5 for example it's going to pick the spike which is in the jso. N but I can override that let's assume that I'm working on three specs at the same time ideally if we're working on three specs at the same time we want to have we want to have them in different trees or different like different variations for sure but different input trees what I can say is let's assume we have like spec 5 Spekit plan work on spec 5. And the agent it's just going to look at the spike it folder and it's going to pick the right right spell.
Maybe. For example. Has the. Residency.
Ideally in the same ideally a spec should be like if thin slice of your system and it should both contain functional requirement and non-functional requirement of that thin slice right so you want to so you have to slice the words so that every spec is almost self-contained and it's a piece of work that you can implement. But of course you might have you might have a spec which is just we have to work on the latency of design point right which is not going to change any functional requirement but it's also is only non-functional like I don't know we have to optimize this endpoint to be like under 400 millisecond in like 99% of the cases.
Yeah so the standard approach here is just to give you an example this one. The approach is that we want to have the user scenarios for every user scenario we want to have the stories and in this case and here I have a description of the story we want to have like the list of tasks the acceptance criteria right everything which is which is useful and then we go to the planning stage which is this one.
And here in plan as we can see in generated a bunch of files right so as we were discussing before it did a lot of research right so it's try to understand our code base a little bit and it eventually it created the planet and d right and in plumb letter D we find technical context let me see whether I can. Oh that's bad right. That's. Okay. So it's showing us technical context it's checking the constitution so we didn't talk too much about it but the constitution is a file which is loaded every time it's almost closer kind of period and basically we are really that fire every time and it contains all the information about our system. And so here we have like all the principles and so on.
Okay move on. Okay so here is looking at the code source so that's what I was saying before which is in the fishing plan. Is actually going into our code base doing research trying to understand what we do have and what we want to have right is then find delta and it's trying to like understanding what you build and how to build it.
There we go.
That's what we have to do next mile is it you get any different results like say you have like so much respect file breaking the damage we use your stories like a spec file producer story or dependent calling one file or does it not have pretty much in the. Same yeah so just let me see whether I find the right collection so actually what Spekit is doing is it is keeping all the specs into one single file okay and then when we are in the task section. There we go. In the task section. Is let me find it. My draw file. Indeed all the. Okay there we go.
So he's dividing into faces right and so he's doing okay this is one requirement that I have to implement this schema whatever define extend updb you know run all these things.
What we tend to do is when we create the actual spec. We try to do something which is not. Huge for us to implement and review right so we try to keep the specs so you're saying you're setting a scope already so it correct yes so you should always keep in fact this is one of the things that be made does for us even though it's not perfect so we still want to steer it a little bit but what we usually do is we try to. Give it a relatively small scope so that we are still controlled.
Okay. Something I would say it also depends on the size of the project in the framework we're using so if you're doing like enterprise scale projects you must record the entire concept. Yeah so you follow some idea you might be able to ID so part of the current definition will expect to have an architect of different perspective will I have to answer what you're getting at it going to be made versus. Expected is it sort of. Or one of the things you're getting sort of that ability. Really. Had. Different. Views like. 30,000. But you. Got sort of. This type of project if you go into enterprise scale it probably starts to creep quite a lot on the edges because to start if you want to start using it I think Spekit is when you start learning yeah it's a bit more likely because otherwise if for the first time you see and you want to start using vnet yeah start it right I wouldn't start well yeah it's just you have to us like a way to understand you like deal how it works and using professionally so it's a bit of a. Question. That you never. Makes the skills initializing. So again does that again. Specify. Yes.
It depends a little bit on what your team is doing right so assuming that your team is using almost same to harness like protocol like everyone is using protocol or hypothesis codex it's 100 bio to commit them right even though like they are just magnified in the end right they are just skills in general so it's 100% fine. Yeah it's one of those questions we back to the force quite a lot and it's essentially coming down to how does the team work so if everybody is going to use the same skills and we framework and use the same. Models great just put them on there because there would be two cents if everybody's doing everything completely different about why at some point you might go at least skills or are you not everybody else so.
Yes so I think it's important to mention here that we are retrospectively generating these because I think I'm hearing. A slightly different thing that we are generating the spec before we started posting the start squad we are not we haven't specified when we started off this because we took a code base that there was code written and we didn't expect generator. Spec for it. We did not start with a blank slate and generate the speech.
No, in this case you are generating a spec for a new feature. But it has no but it has generated a lot of stuff that it already knows about. As well. It has not generated only the feature. If you look at all of the specific it has context and says a lot of stuff. It's not just a true feature that would be just like a small page of it. This is like a massive file that has created because it has. Mined the whole core phase right yeah so that one feature yes but the other it has generated specs for the other bits that you've already written in. Your question this is a brown field it was a green field then it would have to start asking us questions which you did absolutely just to give an example actually so in this one if you look at the it doesn't change too much actually so if we look at the specs folder you can see that there is foundation homepage which basically contains like the first spec that we created to build I think like the landing page or like the first page and here you can find that it's pretty much similar it. Just it doesn't know about the old stuff that it was there because nothing was done initially right so when you create the plan when you like build new features it's gonna. Look at what we do already have right because it doesn't work in the void it works in it in an existing code base so it's gonna look at what we have and based on that it's gonna be this way right it's not working in isolation it's working within our context.
Of running the thing. But. My person's. House the. Planning section. Has. Speaking.
Sorry again. Maybe. Your question is how we are generating actual plan.
Absolutely so there is a question about. There is a question about how we are managing the plan how we are creating and building the plan so let's assume that we do have our how many here have the sky pay the dollar. Oh. Okay. So you have this now we are doing the planning phase right so we are we are doing the plant the naive way to create a plan is to go here of layers are like me who is actually so psyched so you run a Spekit plan once you run clarify so you want to clarify this step is clarify yeah so verify is basically another skill that you can run.
We only got 10 minutes all right. So as you can see I thought I saw at least 37. So where is there we go. So.
One of the things that I suggested is to do the is to us to the agent to give us as many questions as it can right if we skip that phase if we skip that the agent might create a needs clarification so basically when we create a spark the agent in sense back.nj file straightforward needs and needs clarification placeholders where he's not sure what to do right in this case it will not create that you just go into having an answer by this correct so if you have some needs clarification placeholders you need to use the clarify spec because then it's going to ask you this questions right but if you say to the agent hey please ask me the questions beforehand you're not going to see that needs clarifications yeah it's already now asking me questions yeah. This. Question.
At this point the verifications are business. Questions right questions and questions correct so when we are at this specified section let's keep in mind this is the product sorry this is the problem space okay so at this stage we don't care too much yet about how we are going to solve it we care about what is the problem that we can solve so here we have mostly. Product requirements problems. Next stage here.
Of course when we call the when we call the skill here. We can give it we can give more information so here I press space and I say I don't want to use I don't know so actually in the plants we have what we need for specified but it can be like the technical part. If we just run Spekit plants like this without nothing. It's going to run in code base but let's see what we have and at best effort it's going to say okay you guys are using Gran so what problem do you want to know the same trick yeah so with the current code there it's no buy if I don't affect. This. Plan and I say something like that yeah cool.
That out or is it relying or is this left relying on the human. Lack of stupidity like you know it's unions lacks weightage units by deep by default this tool doesn't challenge. Demons on the side I don't remember the name of fisher but it has a feature which allows you to not be charged help you to think about it so ideally when you are doing something. I don't worry that word material first if you take some series you're going to help you to surface that idea which might be suboptimal and it's going to be. Possible. But by default let's keep in mind that. You're absolutely right.
We going we only hope five minutes. Okay who do we need to corrupt to get our native we have t-shirts many more t-shirts.
All right see the questions earlier about what the specs are they normally like this is how the teacher works at this point in time or do you maintain them let's say in our workshop example now in circumstance we wanted fiber at some point and they want to go to level 30 instead of whatever so you just add new specs on top of this how to speed reverse I'm going to give you a very pragmatic answer. Which I respect it depends on your context what we usually do is imagine a place we tend to upend on top so like if something is changing we need meditation we go back to the spike we have the inspired and we go straight to the condition right but let's assume that we prevented everything as be merged lovely a week from now our lovely pian says oh no I've run user research I spent 10,000 dollars and then our users want to go let us turn these for the lights things I just want to say fine and I'm going to append them.
That's for like the products right but then we also have the like the living documents which are like the documents which are read like the project constitution for example which are at almost every interaction. And so those documents when we try to be done as as much as see as we can. Because if I have something which is not in sync here every Spekit now creates it's not going to be. Right but of course we don't I mean in theory you can keep all the specs up to date it just becomes a little bit loneliness like it takes all the time so sometimes it's just.
So how did you manage from neon space changes like you know specify one thing here and then you specify something else there and they kind of contradict each other is it helping you. Find that or you have to do that by reading it yourself can we make an example I'll give you a very simple one where you see the color of the button should be. Green and then somewhere else you say the round and same spec well on a just to keep it simple let's put it somewhere in the same split okay and that's a very simple example of contradiction that you can clearly see but I this is this is pre working with specs where we also got hand using given and then bring in my DMS by the way using the second language very very easy to make sure you can't see it in the you read it sometimes you start implementing it for sale but that can't be because the test is not failing because I tried to change that and I broke that in the spec level because it's too late and you can only have two minutes possible for you to what I would say is not an excellent care but actually you just because you're not going to spend what they usually do with my specs is I'm an adversarial video guys that this might be album for everyone so the question here is let's assume that I don't expect for the plan or anything else that they generate without a lens has internally consistencies by that we mean at line five we say the confirm button has to be green aligned 20 we say go for button has to be rounded and black, right same for button. How like of course in a lot it's hard to find those inconsistencies manually.
But at length are relatively good at that. So what we can do is we can run an adversarial radio which is. We start from a new content window that's important we start from a new context window and we say you have to run an adversarial let me actually write it here. You have two seconds I have to type cluster yeah you have to say you have to find inconsistencies find blind spots missing edge cases is going to prompt this analysis and it's going to find the most obvious state for us and hopefully it's going to fix this point so that's something that they do every time and it's always worth it because you are always going to find all this stuff.
From. Like.
PRO I think we're on time now just before we finish who's learned something today? And who is going to start using Spekit development later. Before before the folks very important we have to take a selfie otherwise my mom is not going to believe that I was here today. All right. How does this work? Okay? All right. Smile. All right it actually work remain you folks has been nice. For engaging and being such a good audience to participate in that much appreciated couple announcements before I let you go actually you are pretty back if you want me but we have our closing keynote on the main stage in about 15 minutes then Simon the host there is going to do the prize draw I know you guys love this how to raise lands. A bunch of creeps in here I can tell you piss day of rain outside and enjoy it also all of the sessions from yesterday and today are available to rates in the app please do not include any of that coming to New York in November we're going to do this all again there so anything that's helpful and thank you. We can bring them. Home. First signing.
.tessl-plugin
talk-azriel-executable-specs-agentic-coding
talk-batey-building-product-teams-age-of-ai
talk-birgitta-closing-keynote
talk-cormack-tests-lie-observability-ai-honest
talk-debois-agent-enablement
talk-douglas-training-ai-on-your-own-code
talk-dubnov-merge-rate-ai-adoption
talk-farley-vibe-coding-best-we-can-do
talk-firtman-web-mcp-agentic-web
talk-foxwell-reinvention-dev-team
talk-graziano-spec-driven-development
talk-groetzinger-skills-everywhere
talk-jones-odevo-ai-native-transformation
talk-jourdan-pipelines-to-prompts
talk-katsioloudes-code-security-ai
talk-kerr-bipolar-disorder-dysregulation-ai
talk-lamis-context-engineering-dreaming
talk-lawson-agent-experience
talk-lopopolo-harness-engineering-humans-steer-agents-execute
talk-luebken-embedding-pi-coding-agent
talk-maleix-collective-intelligence
talk-marsden-agent-desktops
talk-martinelli-spec-driven-development
talk-moss-skills-team-workflow
talk-obstbaum-willoughby-evals-hard
talk-overweg-one-brain-no-filtering
talk-podjarny-skills-are-the-new-code
talk-roberts-ai-native-brownfield
talk-roberts-brownfield-ai-native
talk-scheire-artificial-intelligence
talk-selajev-docker-sandboxes-agents
talk-sloan-harness-engineering-beyond-code
talk-smith-connecting-context-future-transports
talk-stack-humans-architect-ai-writes-code
talk-stoneham-product-brain
talk-syme-agentic-repository-automation
talk-tal-skills-security
talk-thomas-ai-native-engineering
talk-trieloff-browser-agents
talk-walter-runtime-intelligence-agents
talk-wilson-cq-stack-overflow-for-agents
talk-wotherspoon-humans-vs-slop