How I AI - From Figma to Claude Code and back | Gui Seiz & Alex Kern (Figma)
Episode Date: March 11, 2026Most teams are still passing static design files back and forth, and most Figma files are already out of date by the time they reach engineering. Gui Seiz (designer) and Alex Kern (engineer) from Figm...a walk through the exact workflow their team uses to bridge that gap with AI, live onscreen. They demo how to pull a running web app directly into Figma using the Figma MCP, edit it collaboratively, and push it back to code. The old linear waterfall workflow is gone. What replaces it is a fluid, bidirectional loop where design and code inform each other in real time.What you’ll learn:How to use Figma’s MCP to pull production code directly into Figma filesA workflow for pushing design changes from Figma back into your codebase using Claude Code without manual CSS adjustmentsHow to export multiple code states (like all five states of a signup flow) into Figma so designers can work with what actually exists in productionWhy AI has shifted design work upstream to planning and downstream to craft, eliminating the rushed middle phase of executionHow to create custom skills that automate pre-flight checks, lint fixes, and CI monitoring before pushing code to productionHow to structure your codebase so AI can write 90% of your code more effectively—Brought to you by:Optimizely—Your AI agent orchestration platform for marketing and digital teams—In this episode, we cover:(00:00) Introduction to Gui and Alex from Figma(02:56) How AI has transformed Figma’s internal workflows(05:17) The collapse of linear design-to-code workflows(07:28) Demo: Pulling production code into Figma using MCPs(10:49) Using Figma for precise design manipulation and team collaboration(14:10) Demo: Pushing Figma designs back into code with Claude Code(16:06) How AI has changed the role of software engineers(18:43) The shift to upstream planning and downstream craft(22:31) Demo: Exporting multiple code states back into Figma(25:23) Synchronous vs. asynchronous collaboration with AI(28:00) Eliminating design and engineering toil with AI(29:03) Demo: Custom skills for automating pre-flight checks(34:06) Code first or design first?(35:24) Using AI to learn and explore codebases—Tools referenced:• Figma: https://www.figma.com/• From Claude Code to Figma: Turning production code into editable Figma designs: https://www.figma.com/blog/introducing-claude-code-to-figma/• Codex: https://codex.ai/• Claude Code: https://claude.ai/code• Buildkite: https://buildkite.com/—Other references:• Balsamiq: https://balsamiq.com/—Where to find Gui Seiz:X: https://x.com/guiseizLinkedIn: https://www.linkedin.com/in/guiseiz/—Where to find Alex Kern:X: https://x.com/kernioLinkedIn: https://www.linkedin.com/in/alexanderskern/—Where to find Claire Vo:ChatPRD: https://www.chatprd.ai/Website: https://clairevo.com/LinkedIn: https://www.linkedin.com/in/clairevo/X: https://x.com/clairevo—Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email jordan@penname.co.
Transcript
Discussion (0)
The energy that we've rediscovered around those spikes, where we're all just prototyping and throwing it all into the same place, momentum begets momentum.
And so having the team together riffing and yes, anding and trying this stuff out is really great.
This feels like pair programming for designers and engineers.
And you can work very quickly back and forth using the MCP as a connector here.
Oftentimes, the codebase gets way ahead of where the actual design file is.
And there are states or workflows that just don't exist at all.
within the design file. So what I can do is say send all five states sign up flow to Figma.
Now the agent's going to do is read my code base, understand what I'm referring to when I say
those five states. And for each one of those, it's going to individually import that one by one
into Figma, such that the Figma document will then have all of those states laid out all side
by side so that my design partner can work against it.
It's definitely changed our workflows in the way that it's kind of really blown up what a
workflow even is. I spend quite a lot of my time just sitting here inside of my terminal now.
I often have two, three, up to five maybe cloud code instances running all at the same time,
working on different aspects of the work that I'm tracking.
Welcome back to How IAI. I'm Claire Vaux, product leader and AI obsessive here on a mission
to help you build better with these new tools. Today we have Alex, an engineer and Guy,
a designer from Figma, and they're going to show us the new world and the new workflows of design,
code and back to design.
I'm really excited about this one because it's going to show you how more forward-looking
teams are thinking about the interplay between design and engineering teams, how designs
don't have to be static artifacts either in Figma or in code, and we're going to get some
tips and tricks on how you can use skills in your repo to take away toil both for engineers
and for designers.
Let's get to it.
This episode is brought to you by Optimizely.
Most marketing teams aren't short on ideas, but what they are short on, you know,
is time. And that's exactly what optimizely Opel gives you back. With AI agents that handle real
marketing workflows. You know, like creating content and checking compliance, generating experiment
variations, personalizing user experiences, analyzing pages for GEO, even tasks like approvals
and reporting. It's your AI agent orchestration platform for marketing and digital teams,
plugging seamlessly into the tools you already use, handling the boring busy work, and keeping
everything on brand. That leaves marketers with more time to do your actual job. See what Opel can
automate for your team by signing up for a free enterprise agentic AI workshop with Optimizely.
Find out more at optimizely.com slash how I.A.I.A. Attend live and you'll get a free pair of
Rayban meta-AI glasses. Welcome to How IAI, Alex Gee. I am so psyched for you all
to be here because we get to finally answer definitively a question on everyone's mind,
which is, which comes first, the design or the code. Is that right? Do we get to finally decide that
today? Or are you going to force us to watch both directions? I think the answer is it depends.
So my favorite answer. Your favorite answer. And what I love about what Figma is doing right now
is it's building the product for every team that is realized, it just depends.
What are we going to do here?
And so I know that your business has to have changed a lot.
Your product has to have changed a lot in the last couple of years because the way people
design and build software now changes so much.
And I'm sure that has impact both on how you think about what product you're building,
but also how you yourself build products.
So I'm curious, how has this shifted?
how Figma approaches the internal design and development process?
I mean, it's definitely changed our workflows in a way that it's kind of really blown up
what a workflow even is. Before, you know, for the majority of our careers, we've had a very
like linear agreed upon workflow where you increase fidelity as you go on, right? Because
it's really expensive to work in code. And it's really cheap just to trade ideas and sketch them out.
but AI basically collapse that
and it's just as cheap to riff
in code as it is to riff in design
and so a lot of times
where we used to mock up these kind of
gray scale wireframes to point
at what things should be, we can get
functional wireframes straight away
and a lot of times what we treat these kind of vibe
coded outputs is like let me get to something
that I can just is more malleable
I can play with and then let me kind of work into it
let me bring my team in
and we're still like many companies right now
trying to figure out what is the best kind of step process. And to Alex's point, it depends.
It really depends on the scale of the feature, whether it's a feature or bug or product. Like,
what are we trying to get to? We find ourselves reinventing a workflow almost every day,
multiple times a day, depending on the case, you know, that we have to solve for.
What I like about what you said is a couple things. One, I do think up until this point,
you know, both design and engineering felt very scarce.
expensive resources. And so you were always trying to reduce effort and design by doing things
like wireframes. And I tell the young people today, they don't know how spoiled they are. You don't
know what like balsamic is or like those old mockups used to be like you don't know what we
used to have to do with wireframe. So I think we were always trying to figure out that. And then we're
always like scarcely protecting engineering resources. And part of that meant more work
fell on the design team to make lots of very specific decisions about design implementation so that you
didn't waste engineering's time trying to figure out, is this supposed to be a rounded corner,
what's the hover effect, what's the error state, all this kind of stuff. And what I do appreciate
about AI is now the cost of generating really high quality stuff has gone down, which means
you can invest more in the pieces that really matter. And then more people can contribute to the
ultimate experience in design. And, you know, Alex, I'm sure you feel like you can contribute more
and, you know, and so I think that's an interesting change to how we had historically been doing
more of a waterfile style product development process. And to add to that, you also have more
exploration capacity because you're not spending so long on one idea, de-risking that one idea
through meetings and prototypes, et cetera. If you can shortcut to that, you're going to explore more
ideas, you have more, more divergence potential. And I think that's really interesting as well.
I think we got to like going deep on quality, but we can actually go wide as well. Yeah.
Yeah. I find that I'm spending a lot less time doing like the mechanistic, even on the
engineering side, the mechanistic like, you know, changing of syntax and, you know, trying to
thread data through different call sites and more focused on the problem solving aspects. And I feel
like that same, you know, focus on like problem solving as opposed to the mechanical,
work is really what AI is enabling on engineering as well as design teams.
Awesome.
Well, we're going to actually dive in and show some of this, not in theory, but in practice.
And we're going to see design starting in Codex, which is not what I expected when I
dialed into this call today that you all were going to say, hey, we're going to start over
in Codex.
But that's what we're going to do.
So do you want to share your screen and show us what I'm going to call the sandwich of code,
which is going to be code design code, I think, is the process.
Love it. Yeah, let's do it.
So, yeah, we thought to start with Codex, because we've just recently launched this as well.
We had a launch for Cloud.
We've just launched on Codex, and we're bringing this kind of MCP functionality to a bunch of stuff.
Let me see if I can just go open my local host for this project.
Something that happens a lot is the sources of truth diverge between design and code.
So sometimes some things only really exist in a state in code.
or you start working with the developer
and you really elevate what the thing was,
the artifact that you were originally supplied.
Or sometimes that just doesn't exist in code.
You've inherited someone else's project from forever ago.
And so what's really interesting here is that I can just open up a local page.
So now we've been working on as a demo app, Alex and I put something together
just to show you the power of this.
Let's imagine I am working on a thing that there isn't really a coherent source of truth
for it's just a financial tracking app.
And I really want to do some editing in here.
And the case that usually comes up is that, yes, I could prompt it for these things,
but it's kind of a wish and a hope that it gets it, or I have to be super specific,
or I have to install a bunch of tools that help me kind of manipulate closer to the material.
But what I really want to do here is just ask Codex to send the budget allocation page to Figma.
Got it. So what we're seeing here, and I think the problem we're setting up, which I can empathize with, which is no one ever keeps their Figma up to date with what's the latest in Prad. And Prad rarely has the hopes and dreams of what has been designed in Figma. And a lot of times, even I do this at chat PRD, we've created like a Figma page with a bunch of screenshots and they always go out of date. And so even for using recent designs in things like marketing assets, not even just,
just the software development process.
It's really hard to keep these things in sync because code and design are moving in parallel
tracks.
And there's not a common substrate between them yet, I would say, that can keep them sort of
up to date on those sides.
Exactly.
Exactly.
That's exactly right.
Great.
So then what you're using here, if I can, if I tell me if I'm wrong, which is you
have the Figma MCP connected to Codex.
So that's a hosted MCP that you've connected.
Do you have the Figma skill also installed here in Codex?
Because I know Codex has made a big deal about skills.
And so I'm wondering if you're using those two together.
Honestly, at some point, I installed all the skills.
Perfect.
I have no doubt that at some point I'm using it.
We also have, you know, we're exploring and how we improve those.
Alex can talk more to those for sure.
Yeah, you can use the skills in order to do this.
But you could also just ask the MCP directly.
and it seems to pretty reliably get you to a...
Ooh.
You got a clairvote.
Ooh.
This is really good.
So if you actually, I mean, if you look at the page and you look at the comparison kind of side by side,
now I have all of this in Figma.
And so not only can I do more intense kind of direct manipulation,
I can go in here and I can move stuff around in a way that's much more freeform,
perhaps I would have had to like really express.
with words that it should be really burdensome and laborious to explain which bits I want to
move where and et cetera. But my whole team can also jump in. And now we can just exponentially
scale this work versus me solo having to do everything. And when you work in a team, it's
like really helpful to leverage that. So for those that are listening and maybe not watching
the screen share, what we just saw is taking a locally hosted web app and code base,
and then using the Figma MCP to then pull the whole design of a page or component into Figma, into a frame, and then you can just edit that frame.
And a benefit that I didn't really think about, which is really useful, is it's really, you know, Figma's really built for multi-person collaboration, multi-player collaboration in a way that prompting code in something like a codex or a cursor or Claude Code really isn't built for.
And so that broad exploration is very, very hard to do.
The other thing that I want to say for people is, look, I'm a true believer.
Every designer should be in their IDE plan with GitHub, all that kind of stuff.
And also, there are some orgs that just like aren't there yet.
There are some designers that aren't there yet that don't have the front end language,
the prompting skills, whatever, that are super pros in Figma.
And this is a nice stepping stone to say, okay, we can get.
you back into a place where you're really comfortable with, but also use that as a way to educate,
upskill them on how to use some of these more coding tools to also bring their design skills
to bear. And so I think there's a kind of halfway step here that is really useful for folks that
are used to a design tool like Figma. For sure. And also to me it's just the, I don't think
where they in general with these kind of code tools in terms of the precision editing, they
you want to do. And trust me, I use the whole kind of landscape of tools to really see kind of
where these workflows are going. And I think still the cold standard for me is just being able
to drag stuff around. And you can do a lot with a click that would take your 100 words
to kind of write and to like really precisely nail. No one wants to prompt for the exact hex
code or the shade of yellow and that kind of stuff. That's just easier to just quickly do
and directly manipulate.
Yeah.
I just think, like, what are humans, where are humans going to be in the loop?
And it's going to be, like, fine motor skills.
And honestly, being able to eyeball, is that yellow happy or not?
Like, it's very hard to go through a design loop, a prompting loop of like, oh, no, make that yellow just like a little bit more cheerful.
But when you pull up the color picker and you start going like this, you can really find the one that works for you.
So once you've gotten this into Figma, your collaboration.
with your team, you're updating the design. What's the next step here? Because, you know, I can
imagine you could pull this into another ticket and then send it to an engineer and say,
please, could you make these updates? But what do you think about doing once you've pulled it into
Figma? There's definitely a few ways that we can do this. I can keep working myself. I'm working
a late night because I'm really kind of into this project and I can just use MCP to bring it back to
to my local host.
I could also just ping my engineer and say,
hey, do you have an instance of this running?
Do you want to, like, just upload it yourself and just work on it?
So from here, we've created this kind of shared common ground
where different people can plug in and just grab things out versus it living on my
machine, having to branch it, having to get grapple with all that technical complexity.
And actually, it's a good point.
Alex, do you want to try and implement some of these other changes that we've kind of put together?
Yeah, absolutely. So let's say I want to implement this particular variant. What I can do is I can copy the URL of that and go right back into my ClaudeCode session. So I have the app also loaded here locally. And I can say bring the changes from this component into my code code. And which component is it? It's the this is for, uh,
the budget allocations page.
And it's going to then use the Figma MCP server in a different way.
This one allows it to take stuff that's currently within the Figma document and automatically
transform that into code, which then gets reconciled with your local code base and automatically
applies those changes for you automatically.
Again, I need to have like an old lady moment, which is I tell people, you know,
when I used to have to like walk uphill both ways for my CES.
thinking about what I used to have to do to get a close to pick and I was on both sides of the table.
I was a designer and then I was an engineer to get like a pixel perfect version of whatever somebody had mocked up.
And I mean, we didn't even have Figma that I was doing things.
I was making Photoshop PSDs for the real olds out there.
And just the ability to like pull in what's the size of this.
How is it supposed to look?
What's the alignment?
all through just typing, still to this day blows my mind. Alex, I'm curious how this has just
changed your relationship with what your job is as a software engineer. I know you said,
like, the mechanistic pieces have gone away, but what does this do from you from like a time,
like how you spend your time perspective? Yeah, I mean, I spend quite a lot of my time just sitting
here inside of my terminal now. I do so much less. I think of the like what I used to have to do
where I had to have a browser window open at the same time
as having my code window open.
There are times where I need to check those types
of product-oriented flows.
But there's actually quite a few changes,
especially when they're kind of mechanistic in nature
like this, where I don't even necessarily
have to have the visual in order to get the work done.
So I often have two, three, up to five maybe
ClaudeCode instances running all at the same time,
working on different aspects of the work
that I'm tracking.
So some of them might be.
doing things that are just reconciling the design file with the codebase, but other ones might
be working on exploratory things, answering questions that I have about the codebase, writing specs
and documentation that we've talked about in a little bit, and kind of my workflow around grounding
technical specifications inside of codebases. I'm just going to allow Cloud to progress here.
So it was able to find what those differences were between the design file and the codebase,
and it's actually going ahead and applying them.
And what's amazing to me, and I think people don't articulate enough about, let's call it a multimodal AI or, you know, computer vision, all this stuff is it doesn't have to be you dragging a PNG of the file into quad code, reading that through a vision model and then making some inferences about it and designing it. You're actually doing this like sort of pseudo-structured data to pseudo-structured data translation through the MCP, which has to have much higher accuracy.
but is translating functionally visual information, which I think is just so nifty. I love it.
Has this changed kind of your mental model of what does? I mean, I think Figma in general has
pushed forward everybody's mental model of like how you encode design into data. But I'm curious,
how are you all evolving your thinking when you have all these multimodal models at your
at your fingertips when you can do kind of structured data to other structured data translation?
Has that inspired any ideas internally about what the future of design looks like?
What's really interesting about like our role with all of this is kind of really moved upstream.
And we're in this really, I find it almost decadent moment in time where before we had to be so conditioned on really sharp product decision-making skill that would have happened like almost immediately and being able to like quickly reason with stuff and quickly get to really good craft because the bulk of the time was spent building.
And so the longer you ate into that, the more P0s became P1s and P2s.
And so now we're kind of actually at this point where more of the priorities can make it above the cutline.
And also, we can spend a lot more time in the planning stage.
You ask me, like, does it start with design or with code?
Actually, I start a lot of it with planning and just, like, really riffing and allowing myself and indulging in the possibilities.
and then kind of riffing in something that, you know,
if I need it to be something that can only exist in code,
it will be code if otherwise I will diverge in design.
But I see design as much more at this kind of like,
what should we be building at a stage of the conversation,
which we were before,
but it was like a very rushed moment there.
And now we can spend a lot more time in it
because we know that actually the building will happen a lot quicker.
And so we do that.
And then on the other side,
we spend a lot more time in the craft
because we can, because we can reach higher for ideas.
Because before we're like, well, I don't know, hopefully an engineer will get my intention.
Now I could spend a lot longer in that moment.
I love that you call this a decadent moment because it was two years ago at Config.
Actually, I gave a talk on the future of product management.
And I said, this is the era of yes.
Like this idea of the cut line has to disappear.
And how many planning meetings have we all been in where we look at a design and an engineer goes,
oh, well, that's just going to add scope.
Like we got to cut scope.
Or we look in a priority planning meeting and we say, oh, that little fix that everybody hates
in our app, I know that everybody hates it, but it's not a P0 priority.
So it's got to, you know, go next year.
And I do think this idea that you can really have an abundance, a feature level abundance
mindset is in the craft level abundance mindset where you can put the polish and all the
things that make these experience tonight are one of the benefits of working with AI right now.
So it's done here. It's applied the patch. And now you can actually see that the app has been
updated. And it looked exactly like what the figment design looked like, but has been applied
entirely within code. And so the benefit we got here, just to reiterate for folks that are not
watching, is taking an existing app that had drifted very far from the original file in
Figma happens to the best of us. We programmatically pulled it into Figma. We used our beautiful,
fine-tuned opposable thumbs and fingers to actually drag and create the perfect design that we
wanted in Figma. And then that's very easily pulled in by an engineer like Alex, cloud code,
whatever your code is, built the code, didn't even look. I mean, you did look, but like didn't have to
look at the design. And now it can be deployed pixel perfect. Everybody's happy. That's how it works.
That's how it works.
Okay, now we're just hitting the rubber wall and we're going on the other direction.
So you're going to show me how we can start with no design, go from Claudecode into a design,
and then I'm presuming back to Codex in this episode is just going to be a ping pong back and forth.
So, Alex, how would you, as a engineer, no design set up, actually start designing something in FIGBA?
Oftentimes, like the code base gets way ahead of where the actual design file is.
and there are states or workflows that just don't exist at all within the design file.
And I want to show you a little demo of how you can actually take all of those states that don't exist within your design file,
but exist within your codebase, bring them into a Figma design file so that your design collaborators can work directly off of those.
Here I've been working on a sign-up flow for a new app that I've been working on,
and there's a few different states of the sign-up flow, but not all of those states exist within my design file.
And so what I can do is say, send all five states of the signup flow to Figma.
Now the agent's going to do is read my codebase, understand what I'm referring to when I say those five states.
And for each one of those, it's going to individually import that one by one into Figma, such that the Figma document will then have all of those states laid out all side by side so that Ghee, my design partner, can work against it.
Yeah, again, I'm just going to go back to how it was before, and I'm having flashbacks to these design packages that I used to send over to engineering where every single error state, every bit of copy, every this flash is yellow, this flash is red, this has orange, this is the hover state, was documented, designed, lovingly crafted pixel by pixel. And the ability here, again, I think for a designer even to say, like, can you remind me what happens?
happens when you have a correct email, but an incorrect password on this sign-in flow and
like what is our error state without having to go into the code and without having to replicate
that in production is pretty powerful. And then you layer on top of that, oh, cool, it's actually
in a Figma component so I can go in and edit it. It's not just a screenshot is quite nice. And so right
here, is this in Figma? These are all the browser windows that it opened up. But here is now the
Figma document that has all of those states laid out side by side. And you can see that each one of them
was imported as part of this exact flow all into the same Figma file. And I can now send this link
over to my design partner so that while I'm working on my side of the codebase, they can actually
get started on riffing on this, experimenting with different colors, patterns, et cetera, all while
I'm doing my normal development work.
This feels like pair programming for designers and engineers together.
It's such an interesting new way, you know, Ghee, as you said at the beginning, like a new workflow to think about where you're both in different expressions of the same part of the app.
And you can work very quickly back and forth using the MCP as a connector here.
Exactly.
Do you find yourself doing more synchronous work or more asynchronous work because of this?
I find that asynchronous work tends to be like my default now.
However, I do find that like there's something that's really special about synchronously working through things like with your collaborators, whether it's other engineers or designers.
Remote oriented environments, like, you know, you get a lot of benefits about being able to like work, you know, around the clock basically, regardless of, you know, where everyone's located.
But there's something that's still really special about putting everyone together in one place and having that collaborative canvas experience.
that really brings everyone together, I think, is still something that you can't quite replace,
even with pull requests, even with, you know, jumping on, you know, screen share.
There's something that feels different when, you know, folks can freestyle over here
and other folks can be working on something else totally unrelated,
but in the same shared space and seeing each other, like, kind of work in real time.
I think with this kind of tool, it's really reenabled a lot of the sync work.
We went, it's funny you're talking about the,
handoffs of packages.
It's, I often feel it's like the Planet of the Apes analogy where we've gone so far into
the future or in the past where like technology is sci-fi, but we're back in this like thing
of handing over USB sticks.
Here's my version.
Here's version controlling things.
And, you know, now with this, I can like be working on an idea with my team together.
And the energy that we've rediscovered around those spikes where we're all just prototyping
and throwing it all into the same place,
and it doesn't feel like,
oh, I'm going to work into this,
and tomorrow I'll show you a version,
and then you'll show me a version.
Like, momentum begets momentum.
And so having the team together riffing
and yes, anding and trying the stuff out
is really great.
There are going to be moments where I was like,
all right, I think we've had a good jam here.
Now let's go deep, and that's fine.
Let's go converge.
But there is something to be said about,
even in remote environments,
jumping into your figma file and just seeing cursors flying around and trying out stuff.
I haven't found a better alternative for that.
And I'm hoping if anybody does, it will be us, to be honest.
One thing that I want to call out is we've talked a lot on this podcast about engineering toil
and reducing engineering toil through AI.
And Alex, we might see some of that in just a little bit of how do you structure your process
and reduce the, you know, as you say, the mechanistic parts of your work or the,
kind of tactical parts of your work. There is design toil out there. There is copying and pasting
files. There is this version, Final Final, Final V3, Final Final, signed off by Boss. Just kidding, Final
again. Like, there's, you know, there's who's rounding these corners and checking that,
you know, the fonts are matching or that the capitalizations, right? There's a lot of design toil that
goes into building a beautiful product. And the other thing that I see is AI can just strip a lot of that
work away and again leave you focusing on the higher leverage uses of your talent and
contributions to your product which you think results in a higher engaged team.
Great.
Okay.
We're going to wrap with one last use case, which is not Figma related, but has been really
powerful in your workflow, Alex, which is everybody's favorite new, primitive of the AI
stack, the skill.
So let's see a couple of skills that you found useful to install as an engineer and why you pick them, why you built them, and how you use them.
So I may actually be someone in the minority here where I actually just write a lot of the skills myself or ask the AI to write them for me.
A lot of it is based on just consistently having, I kind of think of them as just like large like macros like prompts that I can invoke at any like point in my workflow.
One of the ones that I've been using frequently is this slash ship skill that I wrote.
I use it all the time in my workflow.
Often in order to get something into a large repo like the Figma repo,
there's a lot of work that's involved in just making sure test pass,
making sure all of the like pre-flight things are in order.
And also then once it's pushed to the repository,
checking on CI and making sure that it correctly built and is all green,
so that I can actually merge it.
Previously, I would have to kind of babysit these processes
all the way at every single step.
And it just created a lot of friction for me.
So I wrote this slash ship skill that I use all the time.
So inside of Figma, we have these things called dev boxes,
which are hosted development environments
that we do most of our work in now.
Part of that debt box environment is that we automatically
insert bootstrap scripts in order to make it
so that when you boot your new debt
environment that any of your customizations that you specifically have for your dev environment also get put alongside it.
So what you're looking at right here is my internal Git repository that stores all of my personal
configuration for my dev box. And I have a couple of commands here, some of which are underneath
the dev box command that I'll talk about in a little bit. But this is how I manage the dev box itself
and create new skills via it. So I have a skill for creating more skills, as well as a couple of just really
popular ones that I use all the time, such as addressing PR feedback and the slash ship command
that I just mentioned. So what does that do? It boots up a bunch of things and runs a bunch of
checks against the repository. These are what I refer to as pre-flight checks. They check for
things inside of the commit to make sure I didn't accidentally commit something that doesn't make
sense in the context of this particular like commit, as well as running Lint, querying for various
packages to make sure that we're correctly running the Basel build commands.
We use Basil for BASL for build systems.
And then finally, like pushing it to the Git repository.
So monitoring the CI checks after push using GitHub pull request checks in order to do
that.
We use Build Kite for our CI loop.
And that also gets checked.
So once the build either succeeds or fails, the script will then check build
build kite for whether or not the logs represented anything. And if there are minor fixes,
like linked issues or otherwise, it'll automatically push another commit in order to
fix that particular, like, more minor issue. And it'll do this up to five times with a one-hour
timeout waiting for CI. There's also a handful of things that are, you know, as things as I went
through, like encouraging and not to force push just in case. That's the one I was looking at.
overwrites something inside of my repository or it commits credentials or things like that.
But I use this skill pretty much all the time in my dev loop as a way once I've like hit a good
state where I think that this is ready to go and should be like, you know,
push to our repository.
I do slash ship and then walk away from my laptop.
And it usually takes it from there.
So one thing I want to call out, this is giving me such inspiration,
which is every engineering org that I've ever run has an internal wiki.
that has that page, which is this is what you do before you push a PR and you get in everybody's
way in the deploy pipeline. And every engineering team should go through their onboarding wiki
and pull every page out, every, this is what you should do into a skill and then give, give access
to that to their entire team. And so I think we're really shifted from this idea of like
an SOP into a skill or a doc into a skill. And I know so many folks that have this buried in GitHub,
in confluence, and you can just give somebody the job for a week to take all that stuff and make it a skill, push it in your repo, and then let everybody benefit from a systematic way to roll up those best practices.
Absolutely.
Yeah.
Awesome.
It turns like a lot of these like processes that would otherwise just be, you know, based on best intentions and whenever people remember into something that can be fully automated and brought into people's workflows by default.
Amazing.
Okay, well, this has been great.
Just to recap what we saw.
We saw Codex to Figma to CodCode,
to CodCode to Figma,
basically just calling out,
you don't have to think about your designs
as a static asset anymore.
You don't have to think about
building components in code only
or in design only.
These things can interact together,
calling out the benefits
of just being able to touch the design
with your cursor
and collaborate live
with your colleagues and then encoding some of your best practices into things like skills,
encoding some of your capabilities into things like MTP, so then everybody can access this stuff.
So I'm going to ask you a couple lightning around questions.
You both have to answer.
They're clear rules.
So you cannot say it depends.
I'm going to start with the one that I started this episode with, which is Ghee, code first or design first if you had to pick one.
Design first.
I love it.
And Alex?
I'd probably pick code first.
And this is why Figma had to make this MCB,
because there will never be, never be agreement here.
You know, my second question for you all,
I'm interested in your opinion,
is are there any things around AI,
not let's put software and design systems,
all this stuff aside,
that you're really excited about as a creative,
as a designer,
that you hope people are going to start,
using more or talking about more?
Honestly, it's just been a, like, a platform for me to just learn more about something
that I was always curious about.
And I hope that people, like, see the educational and the upskilling aspect of it and not just
outsourcing any potential capability, because it happens across everything.
Anything you wanted to get a little bit deeper on, you can now do it without having to
troll through links.
Like, it just, it's just there at whatever moment you need it.
And I think, I think diving deep.
into getting deeper into shaders, which before was just pure mathematics that I had no business
playing in. And now it's like, oh, wait, I can talk about it in natural language and I can learn
more about the specifics that I want to learn about. Alex, what about you? Yeah, I mean, I love
going really deep. We have a massive code base at Figma. And so I love asking all of the, like,
crazy questions that I had always, like, wondered about. We have an internal service, for example,
that I didn't know the origin of its name. And so I asked Claude to go and figure out,
based on the commit history, what the origin was.
And it came back with a really good story about how that came to be.
It got renamed multiple times that contributor has since left the company many years ago.
So this was kind of lost in the ether.
But now all of this lore, honestly, up from the company, is actually like embedded inside
of the codebase.
And I can find it now.
I'm going to bridge both of your excitement, which is I think it's such a fun thing to learn by
querying open source libraries. And so the example of this recently is, you know, OpenClaw,
now named OpenClaugh came out. And everybody's like so mystified. They're like, it's working
overnight and it's doing all this stuff for me. And I was like, I'm just going to go into this
thing and figure out how it's architected and how it actually does the thing it does. And it was
such an interesting learning experience just to decompose how you would design an agent and what were
some of the kind of new things that it had built. And so that's another thing that I recommend,
either going deep in your own code base or going deep in an open source code base to learn something
is something that was so inaccessible before.
And now you can do basically on any open source library out there, which I think is really cool.
Okay.
Last question.
I'm going to start with you first because you, you know, we had a tiny bit of friction with,
with Claude Code.
I saw you sweat a little bit.
When AI is not replying, how you want.
It's not doing what you want.
What is your prompting technique?
Do you do you like just slash clear and kill it?
Like, what do you do?
That can work, but I find that the more successful one is,
it's either cursing a little bit in the prompt.
I, you know, I am somewhat ashamed to admit that that's extremely effective.
But the more common one I use now is that my boss is mad at me.
And it seems to work pretty well.
It kind of sympathizes with you.
And it's kind of cute.
You know, I sometimes say about this, about parenting.
I tell my kids, I only yell at you because it works.
Look, I don't want to yell at you.
But sometimes it's the only thing that you guys listen to.
Gee, what about you?
Are you also?
Do you also?
I have to take the gentle parenting route.
I'm terrified of the robots taking over and reading through my prompt history.
I'm still on the Make No Mistakes camp.
Oh, make no mistakes.
I am very polite.
I kind of go with like, no, like I sound really like sad.
I'm like, no.
Or I do sort of growth mindset parenting where I say, I believe you can do it.
I believe you're capable of solving this problem.
You just apply yourself.
You can do all things.
Alex Gee, this was so great.
Where can we find you both?
And how can we be helpful to you?
You can find me on X.
I'm on X as Kernio.
Amazing.
And you can find me on any social media platform as Guy Sy, G-Y,
S-E-I-Z. And just generally, if you at Figma, chances
I'll probably be reading it. Amazing. Well, it was so great to have you. I am so excited.
I've been very inspired about how we can manage our U-2-N-N-A-Ls through code and Figma.
So I'm going to go experiment with that. And I appreciate you all joining Howa-I-I.
Thank you for having us.
That's great.
Thanks so much for watching. If you enjoyed this show, please like and subscribe here on YouTube,
or even better, leave us a comment with your thoughts. You can
You can also find this podcast on Apple Podcasts, Spotify, or your favorite podcast app.
Please consider leaving us a rating and review, which will help others find the show.
You can see all our episodes and learn more about the show at how IAiipod.com.
See you next time.
