I need you to hear me out (it’s REALLY good)
Read full transcript 27 segments
-
If you had told me a few months ago I If you had told me a few months ago I would have to make this video, I would would have to make this video, I would would have to make this video, I would have looked at you very, very strange have looked at you very, very strange have looked at you very, very strange because I never thought I would be because I never thought I would be because I never thought I would be praising Claude code as much as I'm praising Claude code as much as I'm praising Claude code as much as I'm about to, especially in the context I'm about to, especially in the context I'm about to, especially in the context I'm about to praise it in. You see, I've about to praise it in. You see, I've about to praise it in. You see, I've been using 5-6 a lot, but I haven't been been using 5-6 a lot, but I haven't been been using 5-6 a lot, but I haven't been using it in Codex. I'm using it in using it in Codex. I'm using it in using it in Codex. I'm using it in Claude code. I'm sure you have a lot of Claude code. I'm sure you have a lot of Claude code. I'm sure you have a lot of questions as you probably should because questions as you probably should because questions as you probably should because this is kind of dumb. It is so dumb that this is kind of dumb. It is so dumb that this is kind of dumb. It is so dumb that I tried it out during my early access I tried it out during my early access I tried it out during my early access window and was impressed. And now that window and was impressed. And now that window and was impressed. And now that I'm getting more and more frustrated I'm getting more and more frustrated I'm getting more and more frustrated with Codex as a harness, a CLI and more, with Codex as a harness, a CLI and more, with Codex as a harness, a CLI and more, I decided to go explore using 5-6 soul I decided to go explore using 5-6 soul I decided to go explore using 5-6 soul in Claude code a bit more. And the in Claude code a bit more. And the in Claude code a bit more. And the results have absolutely broken me. It is results have absolutely broken me. It is results have absolutely broken me. It is not just cuz like Claude code is a not just cuz like Claude code is a not just cuz like Claude code is a better UI, it kind of is better than the better UI, it kind of is better than the better UI, it kind of is better than the Codex CLI, but the real benefits are the Codex CLI, but the real benefits are the Codex CLI, but the real benefits are the things Claude code does differently from things Claude code does differently from things Claude code does differently from how it thinks about sub-agents to its how it thinks about sub-agents to its how it thinks about sub-agents to its system prompt to its integrations and system prompt to its integrations and system prompt to its integrations and more. I already did a video where I more. I already did a video where I more. I already did a video where I praised the good parts of Claude code. I praised the good parts of Claude code. I praised the good parts of Claude code. I did not think I would be revisiting this did not think I would be revisiting this did not think I would be revisiting this topic so soon, but uh yeah, I have some topic so soon, but uh yeah, I have some topic so soon, but uh yeah, I have some issues [clears throat] with Codex. This issues [clears throat] with Codex. This issues [clears throat] with Codex. This video is going to be a bit chaotic. I'm video is going to be a bit chaotic. I'm video is going to be a bit chaotic. I'm obviously going to show you how to set obviously going to show you how to set obviously going to show you how to set up 5-6 soul in Claude code, but I also up 5-6 soul in Claude code, but I also up 5-6 soul in Claude code, but I also I'm going to talk a lot about the why, I'm going to talk a lot about the why, I'm going to talk a lot about the why, both why I'm so frustrated with Codex both why I'm so frustrated with Codex both why I'm so frustrated with Codex and also what Claude code is doing and also what Claude code is doing and also what Claude code is doing better to make me want to reach for it better to make me want to reach for it better to make me want to reach for it instead. And also a hint of why I'm not instead. And also a hint of why I'm not instead. And also a hint of why I'm not reaching for things like pie as cool as reaching for things like pie as cool as reaching for things like pie as cool as they are. No shots fired at pie at all, they are. No shots fired at pie at all, they are. No shots fired at pie at all, but I really need to focus in on Claude but I really need to focus in on Claude but I really need to focus in on Claude code and Codex because there is a new code and Codex because there is a new code and Codex because there is a new generation of capability with these
-
generation of capability with these generation of capability with these models and it is very, very important models and it is very, very important models and it is very, very important that we understand what these harnesses that we understand what these harnesses that we understand what these harnesses are doing right and wrong if we want to are doing right and wrong if we want to are doing right and wrong if we want to get the most out of them. But first, I get the most out of them. But first, I get the most out of them. But first, I want to make sure you get the most out want to make sure you get the most out want to make sure you get the most out of today's sponsor. AI has gotten really of today's sponsor. AI has gotten really of today's sponsor. AI has gotten really good at writing code and it's even good at writing code and it's even good at writing code and it's even gotten decent at reviewing code. So why gotten decent at reviewing code. So why gotten decent at reviewing code. So why is it that code review has never been is it that code review has never been is it that code review has never been worse? I'm so tired of just going worse? I'm so tired of just going worse? I'm so tired of just going through these PRs. Like look at this. through these PRs. Like look at this. through these PRs. Like look at this. Why is it an alphabetical list of files Why is it an alphabetical list of files Why is it an alphabetical list of files in my code base? This PR has a thousand in my code base? This PR has a thousand in my code base? This PR has a thousand lines changed. Are you seriously going lines changed. Are you seriously going lines changed. Are you seriously going to tell me I have to sit here and go to tell me I have to sit here and go to tell me I have to sit here and go through every single one of them? through every single one of them? through every single one of them? Wouldn't it be nicer if this was broken Wouldn't it be nicer if this was broken Wouldn't it be nicer if this was broken up based on what's actually happening up based on what's actually happening up based on what's actually happening and not the order of the code in the and not the order of the code in the and not the order of the code in the code base? It'd be really cool if one of code base? It'd be really cool if one of code base? It'd be really cool if one of our code review agents could do this our code review agents could do this our code review agents could do this breaking up for us and give us a way breaking up for us and give us a way breaking up for us and give us a way better interface to review our code in, better interface to review our code in, better interface to review our code in, wouldn't it? Oh, it's open, isn't it? wouldn't it? Oh, it's open, isn't it? wouldn't it? Oh, it's open, isn't it? Surprise, Code Rabbit has a code review Surprise, Code Rabbit has a code review Surprise, Code Rabbit has a code review platform now, not just a GitHub plugin, platform now, not just a GitHub plugin, platform now, not just a GitHub plugin, but an actual full website that is way but an actual full website that is way but an actual full website that is way easier to read changes from. They break easier to read changes from. They break easier to read changes from. They break up the PR into different layers, which up the PR into different layers, which up the PR into different layers, which describe specific changes that the PR describe specific changes that the PR describe specific changes that the PR makes, making it way easier to review.
-
makes, making it way easier to review. makes, making it way easier to review. Each of these sections is a summary and Each of these sections is a summary and Each of these sections is a summary and the details that are important called the details that are important called the details that are important called out, and the pieces inside of the layer out, and the pieces inside of the layer out, and the pieces inside of the layer are prioritized based on what you should are prioritized based on what you should are prioritized based on what you should be caring about. They even have fancy be caring about. They even have fancy be caring about. They even have fancy little guides on the side here that show little guides on the side here that show little guides on the side here that show us labeled sections that might be worth us labeled sections that might be worth us labeled sections that might be worth checking out. This is particularly checking out. This is particularly checking out. This is particularly useful on gigantic PRs because they're useful on gigantic PRs because they're useful on gigantic PRs because they're basically impossible to use in the basically impossible to use in the basically impossible to use in the GitHub interface. Since this one breaks GitHub interface. Since this one breaks GitHub interface. Since this one breaks things up, it's way easier to find the things up, it's way easier to find the things up, it's way easier to find the parts that actually matter and give parts that actually matter and give parts that actually matter and give useful feedback to your team. Merge useful feedback to your team. Merge useful feedback to your team. Merge bigger PRs faster with more confidence bigger PRs faster with more confidence bigger PRs faster with more confidence at soidev.link/coderabbit. at soidev.link/coderabbit. at soidev.link/coderabbit. So, with that, let's get started with uh So, with that, let's get started with uh So, with that, let's get started with uh what's wrong with Codex? There are what's wrong with Codex? There are what's wrong with Codex? There are layers to this one. I don't want to layers to this one. I don't want to layers to this one. I don't want to crash out again about the rebranding of crash out again about the rebranding of crash out again about the rebranding of Codex as the Chachi BT desktop app or Codex as the Chachi BT desktop app or Codex as the Chachi BT desktop app or about the [ __ ] show of the CLI not about the [ __ ] show of the CLI not about the [ __ ] show of the CLI not getting updated as much as the desktop getting updated as much as the desktop getting updated as much as the desktop app. app. app. Generally speaking, I still think for Generally speaking, I still think for Generally speaking, I still think for most people, the best way to start using most people, the best way to start using most people, the best way to start using and taking advantage of more agentic and taking advantage of more agentic and taking advantage of more agentic engineering is the Codex desktop app on engineering is the Codex desktop app on engineering is the Codex desktop app on one of the Codex subscriptions. This one of the Codex subscriptions. This one of the Codex subscriptions. This hurts because obviously, I want to be hurts because obviously, I want to be hurts because obviously, I want to be pushing people towards T3 Code, but the pushing people towards T3 Code, but the pushing people towards T3 Code, but the Codex app is a really good starting Codex app is a really good starting Codex app is a really good starting point. So much so that it inspired me to point. So much so that it inspired me to point. So much so that it inspired me to build my own open-source alternative, build my own open-source alternative, build my own open-source alternative, but I have some issues right now. The but I have some issues right now. The but I have some issues right now. The biggest issue by far is how Codex thinks biggest issue by far is how Codex thinks biggest issue by far is how Codex thinks about sub-agents. I just filmed a video about sub-agents. I just filmed a video about sub-agents. I just filmed a video about Ultra mode that's already out. I about Ultra mode that's already out. I about Ultra mode that's already out. I would recommend checking that if you would recommend checking that if you would recommend checking that if you want a deeper dive on this. The simplest want a deeper dive on this. The simplest want a deeper dive on this. The simplest TLDR I can give is that there's two TLDR I can give is that there's two TLDR I can give is that there's two versions of sub-agents in Codex. The V1 versions of sub-agents in Codex. The V1 versions of sub-agents in Codex. The V1 is stable and very simple. It lets the
-
is stable and very simple. It lets the is stable and very simple. It lets the top-level agent spawn a bunch of top-level agent spawn a bunch of top-level agent spawn a bunch of sub-agents one level deeper with sub-agents one level deeper with sub-agents one level deeper with specific work and tasks to do and then specific work and tasks to do and then specific work and tasks to do and then gets a response when they're done. V2, gets a response when they're done. V2, gets a response when they're done. V2, which is the new unfinished version that which is the new unfinished version that which is the new unfinished version that you have to manually enable, has the you have to manually enable, has the you have to manually enable, has the ability to copy the whole context window ability to copy the whole context window ability to copy the whole context window over by default, which is annoying, and over by default, which is annoying, and over by default, which is annoying, and also let the sub-agents spin up their also let the sub-agents spin up their also let the sub-agents spin up their own named sub-agents beneath them with own named sub-agents beneath them with own named sub-agents beneath them with layering and message passing between layering and message passing between layering and message passing between them. It takes a very simple hierarchy them. It takes a very simple hierarchy them. It takes a very simple hierarchy and makes it a bit absurdly complex and and makes it a bit absurdly complex and and makes it a bit absurdly complex and adds a ton of tools that are necessary adds a ton of tools that are necessary adds a ton of tools that are necessary for all of these things to communicate, for all of these things to communicate, for all of these things to communicate, and the result's a bit chaotic and and the result's a bit chaotic and and the result's a bit chaotic and clearly still being tuned. That's why clearly still being tuned. That's why clearly still being tuned. That's why it's off by default. Go check out my it's off by default. Go check out my it's off by default. Go check out my video I just did about Ultra if you want video I just did about Ultra if you want video I just did about Ultra if you want a deeper dive on how sub-agents are a deeper dive on how sub-agents are a deeper dive on how sub-agents are currently working in Codex. The thing I currently working in Codex. The thing I currently working in Codex. The thing I want you to know right now is that I want you to know right now is that I want you to know right now is that I don't like it and I find that the don't like it and I find that the don't like it and I find that the sub-agent workflows, specifically the sub-agent workflows, specifically the sub-agent workflows, specifically the workflow feature in Claude code, is much workflow feature in Claude code, is much workflow feature in Claude code, is much better. Because instead of having better. Because instead of having better. Because instead of having sub-agents spawn randomly when the model sub-agents spawn randomly when the model sub-agents spawn randomly when the model decides to, the model will upfront decides to, the model will upfront decides to, the model will upfront define a programmatic workflow with define a programmatic workflow with define a programmatic workflow with different stages, different prompts, different stages, different prompts, different stages, different prompts, different sub-agents at each stage that different sub-agents at each stage that different sub-agents at each stage that can spawn work for other stages, all in can spawn work for other stages, all in can spawn work for other stages, all in a single JavaScript file that is a single JavaScript file that is a single JavaScript file that is executed top to bottom because code is a executed top to bottom because code is a executed top to bottom because code is a great way to define something dynamic.
-
great way to define something dynamic. great way to define something dynamic. Since workflows are code, they actually Since workflows are code, they actually Since workflows are code, they actually end, which I have found to be a huge win end, which I have found to be a huge win end, which I have found to be a huge win for token efficiency when using the 5-6 for token efficiency when using the 5-6 for token efficiency when using the 5-6 models. They tend to just kind of go models. They tend to just kind of go models. They tend to just kind of go forever with Ultra, and I have seen way, forever with Ultra, and I have seen way, forever with Ultra, and I have seen way, way less utilization on my limits when way less utilization on my limits when way less utilization on my limits when I'm doing this through workflows I'm doing this through workflows I'm doing this through workflows instead, even for the same task. Ultra instead, even for the same task. Ultra instead, even for the same task. Ultra can just go forever, workflows won't. can just go forever, workflows won't. can just go forever, workflows won't. The output quality's the same if not The output quality's the same if not The output quality's the same if not better from workflows, and the token better from workflows, and the token better from workflows, and the token usage is like a fourth as much. So, much usage is like a fourth as much. So, much usage is like a fourth as much. So, much more efficient way of doing things. more efficient way of doing things. more efficient way of doing things. OpenAI is shipping the code in Codex OpenAI is shipping the code in Codex OpenAI is shipping the code in Codex itself, and the model has to call the itself, and the model has to call the itself, and the model has to call the code correctly. Claude Code lets the code correctly. Claude Code lets the code correctly. Claude Code lets the model itself write the code for its model itself write the code for its model itself write the code for its workflow and for its sub-agents, which I workflow and for its sub-agents, which I workflow and for its sub-agents, which I have found to be much better overall. I have found to be much better overall. I have found to be much better overall. I found it to be so much better that I found it to be so much better that I found it to be so much better that I wanted to try it myself, and that's what wanted to try it myself, and that's what wanted to try it myself, and that's what inspired me initially to start using 5-6 inspired me initially to start using 5-6 inspired me initially to start using 5-6 inside of Claude Code. Not Fable in inside of Claude Code. Not Fable in inside of Claude Code. Not Fable in Claude Code calling 5-6 over the Codex Claude Code calling 5-6 over the Codex Claude Code calling 5-6 over the Codex CLI, but with 5-6 is the actual model CLI, but with 5-6 is the actual model CLI, but with 5-6 is the actual model doing the work in Claude Code itself. doing the work in Claude Code itself. doing the work in Claude Code itself. Since then, I've been using it a ton. Since then, I've been using it a ton. Since then, I've been using it a ton. And the more I use it, the more And the more I use it, the more And the more I use it, the more impressed I get. I have a question for impressed I get. I have a question for impressed I get. I have a question for you guys. Which model do you think you guys. Which model do you think you guys. Which model do you think designed this page?
-
designed this page? designed this page? When I look at this, it screams Claude When I look at this, it screams Claude When I look at this, it screams Claude to me. to me. to me. This obviously looks like something that This obviously looks like something that This obviously looks like something that Claude made, right? Like Fable or Opus. Claude made, right? Like Fable or Opus. Claude made, right? Like Fable or Opus. Clearly. As someone who's looked at a Clearly. As someone who's looked at a Clearly. As someone who's looked at a lot of pages that were generated with lot of pages that were generated with lot of pages that were generated with Codex, Codex, Codex, it could be something GLM or otherwise it could be something GLM or otherwise it could be something GLM or otherwise distilled off of Claude, but this distilled off of Claude, but this distilled off of Claude, but this screams Claude to me. For reference, screams Claude to me. For reference, screams Claude to me. For reference, here's a similar page I did with Codex here's a similar page I did with Codex here's a similar page I did with Codex in 5-6 Soul. I don't know about you in 5-6 Soul. I don't know about you in 5-6 Soul. I don't know about you guys, but the difference in quality here guys, but the difference in quality here guys, but the difference in quality here is pretty aggressive to me. is pretty aggressive to me. is pretty aggressive to me. I think both are slop, to be clear. I think both are slop, to be clear. I think both are slop, to be clear. This one hurts me a lot less than the This one hurts me a lot less than the This one hurts me a lot less than the one that Codex did. one that Codex did. one that Codex did. It shouldn't be too surprising to you, It shouldn't be too surprising to you, It shouldn't be too surprising to you, based on the topic of this video, that based on the topic of this video, that based on the topic of this video, that this page was made with Soul inside of this page was made with Soul inside of this page was made with Soul inside of Claude Code. Claude Code. Claude Code. So, why the hell is 5-6 Soul making So, why the hell is 5-6 Soul making So, why the hell is 5-6 Soul making designs this much better in Claude Code? designs this much better in Claude Code? designs this much better in Claude Code? You probably are going to have the same You probably are going to have the same You probably are going to have the same assumption I had, which is that they assumption I had, which is that they assumption I had, which is that they have some things in the system prompt have some things in the system prompt have some things in the system prompt for Claude Code that make it more likely for Claude Code that make it more likely for Claude Code that make it more likely to do good designs.
-
to do good designs. to do good designs. So, I investigated. I read the full So, I investigated. I read the full So, I investigated. I read the full Claude Code system prompt, trying to Claude Code system prompt, trying to Claude Code system prompt, trying to find this front-end guidance so that I find this front-end guidance so that I find this front-end guidance so that I could bring it over to Codex and maybe could bring it over to Codex and maybe could bring it over to Codex and maybe have Codex design better. So, I hunted, have Codex design better. So, I hunted, have Codex design better. So, I hunted, and the word front-end appears three and the word front-end appears three and the word front-end appears three times. First, it appears with the times. First, it appears with the times. First, it appears with the instructions that for UI and front-end instructions that for UI and front-end instructions that for UI and front-end changes, start the dev server and use changes, start the dev server and use changes, start the dev server and use the features in a browser before the features in a browser before the features in a browser before reporting the task as complete. This is reporting the task as complete. This is reporting the task as complete. This is telling the model to confirm its work. telling the model to confirm its work. telling the model to confirm its work. Cool, makes sense. Not really front-end Cool, makes sense. Not really front-end Cool, makes sense. Not really front-end guidance. Don't worry though, the word guidance. Don't worry though, the word guidance. Don't worry though, the word front-end appears two more times on the front-end appears two more times on the front-end appears two more times on the page. Oh, page. Oh, page. Oh, they're both here they're both here they're both here as examples of memory. as examples of memory. as examples of memory. Huh. Huh. Huh. Strange. Maybe UI appears in here? Oh, Strange. Maybe UI appears in here? Oh, Strange. Maybe UI appears in here? Oh, yeah, it does twice in the thing we were yeah, it does twice in the thing we were yeah, it does twice in the thing we were just app for UI or front-end changes. just app for UI or front-end changes. just app for UI or front-end changes. Huh. Does that mean the system prompt Huh. Does that mean the system prompt Huh. Does that mean the system prompt has nothing about design? has nothing about design? has nothing about design? Why is it designing things so much Why is it designing things so much Why is it designing things so much better then? Something has to be up. I better then? Something has to be up. I better then? Something has to be up. I also remember that OpenAI has been also remember that OpenAI has been also remember that OpenAI has been bragging about 5.6 being way better at bragging about 5.6 being way better at bragging about 5.6 being way better at design even though I never saw that. But design even though I never saw that. But design even though I never saw that. But when I was testing 5.6, almost all of when I was testing 5.6, almost all of when I was testing 5.6, almost all of the work I did in it was done in Codex.
-
the work I did in it was done in Codex. the work I did in it was done in Codex. Turns out I was checking the wrong Turns out I was checking the wrong Turns out I was checking the wrong place. If you were waiting for the crash place. If you were waiting for the crash place. If you were waiting for the crash out, out, out, it begins now. it begins now. it begins now. This is the official Codex system This is the official Codex system This is the official Codex system prompt. You are Codex, an agent based on prompt. You are Codex, an agent based on prompt. You are Codex, an agent based on GPT-5. You and the user share one GPT-5. You and the user share one GPT-5. You and the user share one workspace and your job is to collaborate workspace and your job is to collaborate workspace and your job is to collaborate with them until their goal is genuinely with them until their goal is genuinely with them until their goal is genuinely handled. You can tell from the first handled. You can tell from the first handled. You can tell from the first sentence what you're in for here, can't sentence what you're in for here, can't sentence what you're in for here, can't you? you? you? Oh boy. Oh boy. Oh boy. I don't want to spend this whole video I don't want to spend this whole video I don't want to spend this whole video reading this to you guys and explaining reading this to you guys and explaining reading this to you guys and explaining how horrible it is. Okay, that's a lie. how horrible it is. Okay, that's a lie. how horrible it is. Okay, that's a lie. I do kind of want to do that. It is very I do kind of want to do that. It is very I do kind of want to do that. It is very tempting because I did read this whole tempting because I did read this whole tempting because I did read this whole thing. thing. thing. And however bad you think it is, it is And however bad you think it is, it is And however bad you think it is, it is comically worse. I think they might have comically worse. I think they might have comically worse. I think they might have listened to me and removed the part I listened to me and removed the part I listened to me and removed the part I want to [ __ ] about the most, so I'm want to [ __ ] about the most, so I'm want to [ __ ] about the most, so I'm going to go find a cached version so I going to go find a cached version so I going to go find a cached version so I can do that there. Thank you to Felipe can do that there. Thank you to Felipe can do that there. Thank you to Felipe for uploading this for me. It is very for uploading this for me. It is very for uploading this for me. It is very helpful to have. Here is the official helpful to have. Here is the official helpful to have. Here is the official front-end guidance that was in Codex up front-end guidance that was in Codex up front-end guidance that was in Codex up until recently, like I think at least. until recently, like I think at least. until recently, like I think at least. Let me double-check. What was an easy Let me double-check. What was an easy Let me double-check. What was an easy way to do this? Yes, they changed it. way to do this? Yes, they changed it. way to do this? Yes, they changed it. They listened to me. I crashed out at my They listened to me. I crashed out at my They listened to me. I crashed out at my friend who works on front-end stuff at friend who works on front-end stuff at friend who works on front-end stuff at Codex to get this fixed and they did.
-
Codex to get this fixed and they did. Codex to get this fixed and they did. But can we take a moment to appreciate But can we take a moment to appreciate But can we take a moment to appreciate that it takes a [ __ ] YouTuber to get that it takes a [ __ ] YouTuber to get that it takes a [ __ ] YouTuber to get slop removed from Codex? slop removed from Codex? slop removed from Codex? Why is this my job? Why is this my job? Why is this my job? Let me show you what I made them remove. Let me show you what I made them remove. Let me show you what I made them remove. This is the previously present official This is the previously present official This is the previously present official front end guidance. You follow these front end guidance. You follow these front end guidance. You follow these instructions when building applications instructions when building applications instructions when building applications with a front end experience. First off, with a front end experience. First off, with a front end experience. First off, build with empathy. If working with an build with empathy. If working with an build with empathy. If working with an existing design or given a design existing design or given a design existing design or given a design framework and context, you pay careful framework and context, you pay careful framework and context, you pay careful attention to existing conventions and attention to existing conventions and attention to existing conventions and ensure that what you build is consistent ensure that what you build is consistent ensure that what you build is consistent with the frameworks used in design of with the frameworks used in design of with the frameworks used in design of the existing application. It gets so the existing application. It gets so the existing application. It gets so much worse from here. I see people in much worse from here. I see people in much worse from here. I see people in chat already freaking the [ __ ] out. You chat already freaking the [ __ ] out. You chat already freaking the [ __ ] out. You have no idea how bad this gets. This have no idea how bad this gets. This have no idea how bad this gets. This probably the worst counter psychosis probably the worst counter psychosis probably the worst counter psychosis I've ever had was reading this. This I've ever had was reading this. This I've ever had was reading this. This feels like it was written for GPT-41. feels like it was written for GPT-41. feels like it was written for GPT-41. You think deeply about the audience of You think deeply about the audience of You think deeply about the audience of what you are building and use that to what you are building and use that to what you are building and use that to decide what features to build and when decide what features to build and when decide what features to build and when designing layouts, components, visual designing layouts, components, visual designing layouts, components, visual styles, on-screen text, and interaction styles, on-screen text, and interaction styles, on-screen text, and interaction patterns. patterns. patterns. Using your application should feel rich Using your application should feel rich Using your application should feel rich and sophisticated.
-
and sophisticated. and sophisticated. You make sure that the front end design You make sure that the front end design You make sure that the front end design is tailored for the domain and subject is tailored for the domain and subject is tailored for the domain and subject matter of the application. For example, matter of the application. For example, matter of the application. For example, SaaS, CRM, and other operational tools SaaS, CRM, and other operational tools SaaS, CRM, and other operational tools should feel quiet, utilitarian, and work should feel quiet, utilitarian, and work should feel quiet, utilitarian, and work focused rather than illustrative or focused rather than illustrative or focused rather than illustrative or editorial. Remember that thing that editorial. Remember that thing that editorial. Remember that thing that opening eye models do where when you opening eye models do where when you opening eye models do where when you tell them to do a thing, they do the tell them to do a thing, they do the tell them to do a thing, they do the thing? This just told the model if thing? This just told the model if thing? This just told the model if you're doing anything that looks like a you're doing anything that looks like a you're doing anything that looks like a SaaS, that it needs to look utilitarian, SaaS, that it needs to look utilitarian, SaaS, that it needs to look utilitarian, quiet, and work focused. quiet, and work focused. quiet, and work focused. Always. And it does, always. Always. And it does, always. Always. And it does, always. But this isn't even the bad section of But this isn't even the bad section of But this isn't even the bad section of the front end guidance. the front end guidance. the front end guidance. You make sure to use icons and buttons You make sure to use icons and buttons You make sure to use icons and buttons for tools, swatches for color, segmented for tools, swatches for color, segmented for tools, swatches for color, segmented controls for models, toggle/checkboxes controls for models, toggle/checkboxes controls for models, toggle/checkboxes for binary settings, for binary settings, for binary settings, sliders/steppers/inputs sliders/steppers/inputs sliders/steppers/inputs for numeric values, menus for option for numeric values, menus for option for numeric values, menus for option sets, tabs for views, and text or icon sets, tabs for views, and text or icon sets, tabs for views, and text or icon plus text buttons only for clear plus text buttons only for clear plus text buttons only for clear commands (parentheses) unless otherwise commands (parentheses) unless otherwise commands (parentheses) unless otherwise specified. Cards are kept at 8-pixel specified. Cards are kept at 8-pixel specified. Cards are kept at 8-pixel border radius or less unless the border radius or less unless the border radius or less unless the existing design system requires existing design system requires existing design system requires otherwise. You do not use rounded otherwise. You do not use rounded otherwise. You do not use rounded rectangular UI elements with text inside rectangular UI elements with text inside rectangular UI elements with text inside if you could use a familiar symbol or if you could use a familiar symbol or if you could use a familiar symbol or icon instead. You build tool tips with icon instead. You build tool tips with icon instead. You build tool tips with names and describe unfamiliar icons when names and describe unfamiliar icons when names and describe unfamiliar icons when the user hovers over it. Cool, fine.
-
the user hovers over it. Cool, fine. the user hovers over it. Cool, fine. Point three. You use Lucid icons inside Point three. You use Lucid icons inside Point three. You use Lucid icons inside buttons whenever one exists instead of buttons whenever one exists instead of buttons whenever one exists instead of manually drawn SVG icons. If there's a manually drawn SVG icons. If there's a manually drawn SVG icons. If there's a library, use that icon library instead. library, use that icon library instead. library, use that icon library instead. Whatever. The fact that it's prescribing Whatever. The fact that it's prescribing Whatever. The fact that it's prescribing specific libraries for icons and specific libraries for icons and specific libraries for icons and specific border radiuses for cards is specific border radiuses for cards is specific border radiuses for cards is absurd. absurd. absurd. But, we're just getting started here. But, we're just getting started here. But, we're just getting started here. You build feature-complete controls, You build feature-complete controls, You build feature-complete controls, states, and views that a target user states, and views that a target user states, and views that a target user would naturally expect for the would naturally expect for the would naturally expect for the application. You do not use visible application. You do not use visible application. You do not use visible in-app text to describe the in-app text to describe the in-app text to describe the application's features, functionality, application's features, functionality, application's features, functionality, keyboard shortcuts, styling, visual keyboard shortcuts, styling, visual keyboard shortcuts, styling, visual elements, or how to use the application. elements, or how to use the application. elements, or how to use the application. You should not make a landing page You should not make a landing page You should not make a landing page unless absolutely required. When asked unless absolutely required. When asked unless absolutely required. When asked for a site, app, game, or tool, build for a site, app, game, or tool, build for a site, app, game, or tool, build the actual usable experience as the the actual usable experience as the the actual usable experience as the first screen, not marketing or first screen, not marketing or first screen, not marketing or explanatory content. When making a hero explanatory content. When making a hero explanatory content. When making a hero page, you use a relevant image, a page, you use a relevant image, a page, you use a relevant image, a generated bitmap image, or an immersive generated bitmap image, or an immersive generated bitmap image, or an immersive full-bleed interactive scene as the full-bleed interactive scene as the full-bleed interactive scene as the background with text over it that is not background with text over it that is not background with text over it that is not in a card. Notice how all of the pages in a card. Notice how all of the pages in a card. Notice how all of the pages that Codex designs are the same. It's that Codex designs are the same. It's that Codex designs are the same. It's cuz it tells it exactly how to make it cuz it tells it exactly how to make it cuz it tells it exactly how to make it look. Here, it tells it how to structure look. Here, it tells it how to structure look. Here, it tells it how to structure the home page to make sure that H1 tag the home page to make sure that H1 tag the home page to make sure that H1 tag is the brand, product, place, or person is the brand, product, place, or person is the brand, product, place, or person name, or a literal offer/category.
-
name, or a literal offer/category. name, or a literal offer/category. Chad is begging me to stop reading Chad is begging me to stop reading Chad is begging me to stop reading because this is hurting them so much. because this is hurting them so much. because this is hurting them so much. This is an absolute [ __ ] show. This is an absolute [ __ ] show. This is an absolute [ __ ] show. And sadly, Never Drax, this isn't a And sadly, Never Drax, this isn't a And sadly, Never Drax, this isn't a skill. This isn't a thing that you can skill. This isn't a thing that you can skill. This isn't a thing that you can add to Codex. This is the official Codex add to Codex. This is the official Codex add to Codex. This is the official Codex system prompt directly. Up until system prompt directly. Up until system prompt directly. Up until yesterday, every single time you sent a yesterday, every single time you sent a yesterday, every single time you sent a prompt to any OpenAI model in Codex, prompt to any OpenAI model in Codex, prompt to any OpenAI model in Codex, this all came along with it. You have this all came along with it. You have this all came along with it. You have burned hundreds of thousands, if not burned hundreds of thousands, if not burned hundreds of thousands, if not millions of tokens millions of tokens millions of tokens on this slop. on this slop. on this slop. And it took me, probably the first And it took me, probably the first And it took me, probably the first person to ever actually read this, person to ever actually read this, person to ever actually read this, to get it removed. to get it removed. to get it removed. I'm not trying to talk myself up here. I'm not trying to talk myself up here. I'm not trying to talk myself up here. In fact, I'm trying to do the opposite. In fact, I'm trying to do the opposite. In fact, I'm trying to do the opposite. I don't get why it's my job as a [ __ ] I don't get why it's my job as a [ __ ] I don't get why it's my job as a [ __ ] YouTuber to be the one to get this YouTuber to be the one to get this YouTuber to be the one to get this fixed. fixed. fixed. And I'm at the point now where I am And I'm at the point now where I am And I'm at the point now where I am working on building a whole new Codex working on building a whole new Codex working on building a whole new Codex system prompt from scratch by hand, no system prompt from scratch by hand, no system prompt from scratch by hand, no AI-generated anything in it. AI-generated anything in it. AI-generated anything in it. Prompts should be by hand, especially Prompts should be by hand, especially Prompts should be by hand, especially global ones and skills and things like global ones and skills and things like global ones and skills and things like that. My system prompt will be written that. My system prompt will be written that. My system prompt will be written by hand by the end of this coming week.
-
by hand by the end of this coming week. by hand by the end of this coming week. And if it works out well, I will share And if it works out well, I will share And if it works out well, I will share it with all of you and harass OpenAI to it with all of you and harass OpenAI to it with all of you and harass OpenAI to copy my changes. copy my changes. copy my changes. But there is so much more in here. I But there is so much more in here. I But there is so much more in here. I don't want to just sit here and complain don't want to just sit here and complain don't want to just sit here and complain because I because I because I God, you do not put UI cards inside of God, you do not put UI cards inside of God, you do not put UI cards inside of other cards. Do not style up page other cards. Do not style up page other cards. Do not style up page sections as floating cards. Only use sections as floating cards. Only use sections as floating cards. Only use cards for individual repeated items, cards for individual repeated items, cards for individual repeated items, models, and genuinely framed tools. models, and genuinely framed tools. models, and genuinely framed tools. The word cards is on this page six The word cards is on this page six The word cards is on this page six times. times. times. The word card is 12. The word card is 12. The word card is 12. I feel sick. I feel sick. I feel sick. I'm going to ask you guys a question to I'm going to ask you guys a question to I'm going to ask you guys a question to the power users of Codex. Have you ever the power users of Codex. Have you ever the power users of Codex. Have you ever noticed that when you set it off to do noticed that when you set it off to do noticed that when you set it off to do some work, like babysitting a PR or some work, like babysitting a PR or some work, like babysitting a PR or keeping track of sub-agents, or just keeping track of sub-agents, or just keeping track of sub-agents, or just doing something long and difficult, that doing something long and difficult, that doing something long and difficult, that it loves to set timers? Specifically, it it loves to set timers? Specifically, it it loves to set timers? Specifically, it really loves to set 30-second timers. really loves to set 30-second timers. really loves to set 30-second timers. Have you guys seen this weird fixation Have you guys seen this weird fixation Have you guys seen this weird fixation on 30-second time limits in Codex? on 30-second time limits in Codex? on 30-second time limits in Codex? Because I did, and I was suspicious of Because I did, and I was suspicious of Because I did, and I was suspicious of this. Would you like to know where that this. Would you like to know where that this. Would you like to know where that came from. You provide user updates came from. You provide user updates came from. You provide user updates frequently every 30 seconds.
-
frequently every 30 seconds. frequently every 30 seconds. I cannot say enough bad things about I cannot say enough bad things about I cannot say enough bad things about this system prompt. It is enough of a this system prompt. It is enough of a this system prompt. It is enough of a reason to never trust Codex again. The reason to never trust Codex again. The reason to never trust Codex again. The fact that this has been shipping for as fact that this has been shipping for as fact that this has been shipping for as long as it has and is burning our long as it has and is burning our long as it has and is burning our tokens, wasting our time, and making our tokens, wasting our time, and making our tokens, wasting our time, and making our outputs worse outputs worse outputs worse is hilarious. And with this, I must is hilarious. And with this, I must is hilarious. And with this, I must issue an apology to my friends on Pi. I issue an apology to my friends on Pi. I issue an apology to my friends on Pi. I underestimated your game. To be fair, underestimated your game. To be fair, underestimated your game. To be fair, this is your fault, too, because you this is your fault, too, because you this is your fault, too, because you never told us how bad the Codex system never told us how bad the Codex system never told us how bad the Codex system prompt was. Because the problem with prompt was. Because the problem with prompt was. Because the problem with Codex isn't even the implementation. A Codex isn't even the implementation. A Codex isn't even the implementation. A lot of it is just this. It is so bad. lot of it is just this. It is so bad. lot of it is just this. It is so bad. Don't worry, though. It mentions goblins Don't worry, though. It mentions goblins Don't worry, though. It mentions goblins twice. The Codex system prompt mentions twice. The Codex system prompt mentions twice. The Codex system prompt mentions goblins more than the Claude code one goblins more than the Claude code one goblins more than the Claude code one mentions front end and UI. And it mentions front end and UI. And it mentions front end and UI. And it mentions cards six times more than the mentions cards six times more than the mentions cards six times more than the Claude code prompt mentions front end at Claude code prompt mentions front end at Claude code prompt mentions front end at all. My chat is crashing out so hard all. My chat is crashing out so hard all. My chat is crashing out so hard over this right now. What in the [ __ ] over this right now. What in the [ __ ] over this right now. What in the [ __ ] This has been [ __ ] with it This has been [ __ ] with it This has been [ __ ] with it interacting with Claude 2. Please God, interacting with Claude 2. Please God, interacting with Claude 2. Please God, stop this. Yep, you've all noticed this stop this. Yep, you've all noticed this stop this. Yep, you've all noticed this and I'm the first person to figure out and I'm the first person to figure out and I'm the first person to figure out why somehow. I'm sure others have and why somehow. I'm sure others have and why somehow. I'm sure others have and they just don't have a platform enough they just don't have a platform enough they just don't have a platform enough that they can be loud about it online.
-
that they can be loud about it online. that they can be loud about it online. But like But like But like what the [ __ ] I did mention before that what the [ __ ] I did mention before that what the [ __ ] I did mention before that you shouldn't be using agents to write you shouldn't be using agents to write you shouldn't be using agents to write your system prompts, your skills, and your system prompts, your skills, and your system prompts, your skills, and all of those things. Like just do it by all of those things. Like just do it by all of those things. Like just do it by hand. They will come out way better and hand. They will come out way better and hand. They will come out way better and you can adjust and learn as you go. That you can adjust and learn as you go. That you can adjust and learn as you go. That said, even most models should be able to said, even most models should be able to said, even most models should be able to see the problems with this system see the problems with this system see the problems with this system prompt. So, I asked 56 all in Claude prompt. So, I asked 56 all in Claude prompt. So, I asked 56 all in Claude code, as well as Fable 5 in Claude code, code, as well as Fable 5 in Claude code, code, as well as Fable 5 in Claude code, and of course 56 all in Codex just to and of course 56 all in Codex just to and of course 56 all in Codex just to double check and be sure to describe all double check and be sure to describe all double check and be sure to describe all of the things that are wrong with this of the things that are wrong with this of the things that are wrong with this system prompt and help me rate it. 56 in system prompt and help me rate it. 56 in system prompt and help me rate it. 56 in Claude code said the following. Claude code said the following. Claude code said the following. Seven out of 10 is a prompt for one Seven out of 10 is a prompt for one Seven out of 10 is a prompt for one tightly controlled Codex runtime, four tightly controlled Codex runtime, four tightly controlled Codex runtime, four out of 10 is a general coding agent out of 10 is a general coding agent out of 10 is a general coding agent prompt, and three out of 10 is a prompt, and three out of 10 is a prompt, and three out of 10 is a portable prompt for modern models like portable prompt for modern models like portable prompt for modern models like 560. 560. 560. Obviously, it is coupled to Codex. It's Obviously, it is coupled to Codex. It's Obviously, it is coupled to Codex. It's built for that. That's fine. It calls built for that. That's fine. It calls built for that. That's fine. It calls out that modern models generally out that modern models generally out that modern models generally understand tool schemas well without the understand tool schemas well without the understand tool schemas well without the main behavioral prompt repeatedly main behavioral prompt repeatedly main behavioral prompt repeatedly describing implementation details. These describing implementation details. These describing implementation details. These runtime instructions should be generated runtime instructions should be generated runtime instructions should be generated by the harness not embedded into the by the harness not embedded into the by the harness not embedded into the reusable agent prompt. Yeah, sure, reusable agent prompt. Yeah, sure, reusable agent prompt. Yeah, sure, whatever. But it redescribes tool calls whatever. But it redescribes tool calls whatever. But it redescribes tool calls multiple times throughout. The front-end multiple times throughout. The front-end multiple times throughout. The front-end section is far too prescriptive. It's section is far too prescriptive. It's section is far too prescriptive. It's effectively a separate front-end design effectively a separate front-end design effectively a separate front-end design constitution. It consumes about a constitution. It consumes about a constitution. It consumes about a quarter of the prompt even when the task quarter of the prompt even when the task quarter of the prompt even when the task concerns a CLI database back-end or a concerns a CLI database back-end or a concerns a CLI database back-end or a library. Cards must have a 8-pixel library. Cards must have a 8-pixel library. Cards must have a 8-pixel radius or letter spacing must always be radius or letter spacing must always be radius or letter spacing must always be zero. All of these things that I went zero. All of these things that I went zero. All of these things that I went over before. A capable model will obey over before. A capable model will obey over before. A capable model will obey these, but this doesn't mean the results these, but this doesn't mean the results these, but this doesn't mean the results improve. It may ignore the existing improve. It may ignore the existing improve. It may ignore the existing design system user request or domain design system user request or domain design system user request or domain convention to satisfy arbitrary global
-
convention to satisfy arbitrary global convention to satisfy arbitrary global constraints. And then there's a bunch of constraints. And then there's a bunch of constraints. And then there's a bunch of actively questionable UX guidance. Like actively questionable UX guidance. Like actively questionable UX guidance. Like it's weird call-outs for icon-only it's weird call-outs for icon-only it's weird call-outs for icon-only controls, especially for touch devices. controls, especially for touch devices. controls, especially for touch devices. Cuz touch devices don't have tooltips, Cuz touch devices don't have tooltips, Cuz touch devices don't have tooltips, remember? The ban on visible remember? The ban on visible remember? The ban on visible instructional text is more concerning. instructional text is more concerning. instructional text is more concerning. Empty states, onboarding, validation, Empty states, onboarding, validation, Empty states, onboarding, validation, guidance, accessibility, hints, and guidance, accessibility, hints, and guidance, accessibility, hints, and contextual help are often essential contextual help are often essential contextual help are often essential product UI. Yep. Have you ever wondered product UI. Yep. Have you ever wondered product UI. Yep. Have you ever wondered why Codex never does good empty states? why Codex never does good empty states? why Codex never does good empty states? It's the system prompt. They also have a It's the system prompt. They also have a It's the system prompt. They also have a bunch of weird stuff in there like bunch of weird stuff in there like bunch of weird stuff in there like continue until solved that is probably continue until solved that is probably continue until solved that is probably part of why 56 doesn't stop when it part of why 56 doesn't stop when it part of why 56 doesn't stop when it should sometimes. should sometimes. should sometimes. Have you ever wondered why Codex loves Have you ever wondered why Codex loves Have you ever wondered why Codex loves to just start building when you're in to just start building when you're in to just start building when you're in the early stages of planning? It's right the early stages of planning? It's right the early stages of planning? It's right here, autonomy and persistence. here, autonomy and persistence. here, autonomy and persistence. Unless the user explicitly asks for a Unless the user explicitly asks for a Unless the user explicitly asks for a plan, asks a question about the code, is plan, asks a question about the code, is plan, asks a question about the code, is brainstorming possible approaches, or brainstorming possible approaches, or brainstorming possible approaches, or otherwise makes it clear that they do otherwise makes it clear that they do otherwise makes it clear that they do not want code changes yet, you assume not want code changes yet, you assume not want code changes yet, you assume they want you to make the change or run they want you to make the change or run they want you to make the change or run the tools needed to solve the problem. the tools needed to solve the problem. the tools needed to solve the problem. In those cases, do not stop at a In those cases, do not stop at a In those cases, do not stop at a proposal, implement the fix. If you hit proposal, implement the fix. If you hit proposal, implement the fix. If you hit a blocker, try to work it through a blocker, try to work it through a blocker, try to work it through yourself before handing the problem yourself before handing the problem yourself before handing the problem back. I am very thankful opening I let back. I am very thankful opening I let back. I am very thankful opening I let you use your Codex on other places right you use your Codex on other places right you use your Codex on other places right now.
-
now. now. I love that I'm seeing in chat as I do I love that I'm seeing in chat as I do I love that I'm seeing in chat as I do this, people saying, "Oh my god, that's this, people saying, "Oh my god, that's this, people saying, "Oh my god, that's infuriating. I've been [ __ ] by that infuriating. I've been [ __ ] by that infuriating. I've been [ __ ] by that exact prompt." I forgot it includes exact prompt." I forgot it includes exact prompt." I forgot it includes callouts about limiting dominant purple callouts about limiting dominant purple callouts about limiting dominant purple and purple blue gradients, beige, cream, and purple blue gradients, beige, cream, and purple blue gradients, beige, cream, sand, and tan, dark blue and slate, and sand, and tan, dark blue and slate, and sand, and tan, dark blue and slate, and brown {slash} orange {slash} espresso brown {slash} orange {slash} espresso brown {slash} orange {slash} espresso palettes. Scan CSS colors before you you palettes. Scan CSS colors before you you palettes. Scan CSS colors before you you get the idea. They tried to make 5.5 get the idea. They tried to make 5.5 get the idea. They tried to make 5.5 better at design by putting a bunch of better at design by putting a bunch of better at design by putting a bunch of rules in, it made it worse. They tried rules in, it made it worse. They tried rules in, it made it worse. They tried to make 5.5 more persistent by putting a to make 5.5 more persistent by putting a to make 5.5 more persistent by putting a bunch of rules in, it made it worse or bunch of rules in, it made it worse or bunch of rules in, it made it worse or different. And all of these things were different. And all of these things were different. And all of these things were still applied on 5.6 where they should still applied on 5.6 where they should still applied on 5.6 where they should not have been. Apparently, the changes not have been. Apparently, the changes not have been. Apparently, the changes they made for the front-end design stuff they made for the front-end design stuff they made for the front-end design stuff is only for 5.6, it still applied for is only for 5.6, it still applied for is only for 5.6, it still applied for 5.5, even better. We're unlikely to 5.5, even better. We're unlikely to 5.5, even better. We're unlikely to change the current system prompt for 5.5 change the current system prompt for 5.5 change the current system prompt for 5.5 because it was used during training, but because it was used during training, but because it was used during training, but I'll pass your feedback along to the I'll pass your feedback along to the I'll pass your feedback along to the team. Even 5.6 Soul in Codex had a lot of Even 5.6 Soul in Codex had a lot of negative things to say. Specifically negative things to say. Specifically negative things to say. Specifically called it four out of 10 prompt called it four out of 10 prompt called it four out of 10 prompt implementation and tore apart a bunch of implementation and tore apart a bunch of implementation and tore apart a bunch of things that are wrong with it. I think things that are wrong with it. I think things that are wrong with it. I think there's even more than that. The point there's even more than that. The point there's even more than that. The point I'm trying to make here is that the I'm trying to make here is that the I'm trying to make here is that the system prompt feels more thrown together system prompt feels more thrown together system prompt feels more thrown together than crafted. And although I've [ __ ] on than crafted. And although I've [ __ ] on than crafted. And although I've [ __ ] on Claude Code and the insane length of Claude Code and the insane length of Claude Code and the insane length of their system prompt and whatnot, it's a their system prompt and whatnot, it's a their system prompt and whatnot, it's a lot better here. I think they're lot better here. I think they're lot better here. I think they're actually writing a decent bit of it.
-
actually writing a decent bit of it. actually writing a decent bit of it. You're an interactive agent that helps You're an interactive agent that helps You're an interactive agent that helps users with software engineering tasks. users with software engineering tasks. users with software engineering tasks. Use the instructions below and the tools Use the instructions below and the tools Use the instructions below and the tools available to you to assist the user. available to you to assist the user. available to you to assist the user. They added some inserts here about what They added some inserts here about what They added some inserts here about what to not do with like hacking and whatnot. to not do with like hacking and whatnot. to not do with like hacking and whatnot. It starts with descriptions of what the It starts with descriptions of what the It starts with descriptions of what the user will see. It's All text you output user will see. It's All text you output user will see. It's All text you output outside of tool use is displayed to the outside of tool use is displayed to the outside of tool use is displayed to the user. Output text to communicate with user. Output text to communicate with user. Output text to communicate with the user. Cool. That is fine. Tools are the user. Cool. That is fine. Tools are the user. Cool. That is fine. Tools are executed in a user-specific permission executed in a user-specific permission executed in a user-specific permission mode. Yep, makes sense. mode. Yep, makes sense. mode. Yep, makes sense. Doing tasks. The user will primarily Doing tasks. The user will primarily Doing tasks. The user will primarily request you to perform software request you to perform software request you to perform software engineering tasks. This may include engineering tasks. This may include engineering tasks. This may include solving bugs, adding new functionality, solving bugs, adding new functionality, solving bugs, adding new functionality, yada yada. You're highly capable and yada yada. You're highly capable and yada yada. You're highly capable and often allow users to complete ambitious often allow users to complete ambitious often allow users to complete ambitious tasks that would otherwise be too tasks that would otherwise be too tasks that would otherwise be too complex or take too long. You defer to complex or take too long. You defer to complex or take too long. You defer to user judgment about whether a task is user judgment about whether a task is user judgment about whether a task is too large to attempt. For exploratory too large to attempt. For exploratory too large to attempt. For exploratory questions, respond in two to three questions, respond in two to three questions, respond in two to three sentences with recommendations and the sentences with recommendations and the sentences with recommendations and the main trade-offs. Presented as something main trade-offs. Presented as something main trade-offs. Presented as something the user can redirect, not a decided the user can redirect, not a decided the user can redirect, not a decided plan. Don't influence until the user plan. Don't influence until the user plan. Don't influence until the user agrees. This is the opposite of the agrees. This is the opposite of the agrees. This is the opposite of the Codex one, and it's actually quite nice Codex one, and it's actually quite nice Codex one, and it's actually quite nice to have the model ask some questions. to have the model ask some questions. to have the model ask some questions. Prefer editing existing files to Prefer editing existing files to Prefer editing existing files to creating new ones. That's nice. Just be creating new ones. That's nice. Just be creating new ones. That's nice. Just be careful to not introduce security careful to not introduce security careful to not introduce security problems. Probably doesn't need to be problems. Probably doesn't need to be problems. Probably doesn't need to be inserted anymore, but not the worst inserted anymore, but not the worst inserted anymore, but not the worst thing.
-
thing. thing. Default to writing no comments. Only add Default to writing no comments. Only add Default to writing no comments. Only add one when the why is non-obvious. A one when the why is non-obvious. A one when the why is non-obvious. A hidden constraint, a subtle invariant, a hidden constraint, a subtle invariant, a hidden constraint, a subtle invariant, a workaround for a bug, behavior that workaround for a bug, behavior that workaround for a bug, behavior that would surprise a reader. If removing the would surprise a reader. If removing the would surprise a reader. If removing the comment wouldn't confuse a future comment wouldn't confuse a future comment wouldn't confuse a future reader, don't write it. These are reader, don't write it. These are reader, don't write it. These are reasonable guidelines, and all of these reasonable guidelines, and all of these reasonable guidelines, and all of these are simple and pretty general. Executing are simple and pretty general. Executing are simple and pretty general. Executing actions with care. Carefully consider actions with care. Carefully consider actions with care. Carefully consider the reversibility and blast radius of the reversibility and blast radius of the reversibility and blast radius of actions. Generally, you could freely actions. Generally, you could freely actions. Generally, you could freely take local reversible actions like take local reversible actions like take local reversible actions like editing files or running tests. But for editing files or running tests. But for editing files or running tests. But for actions that are hard to reverse, affect actions that are hard to reverse, affect actions that are hard to reverse, affect shared systems beyond your local shared systems beyond your local shared systems beyond your local environment, or could otherwise be risky environment, or could otherwise be risky environment, or could otherwise be risky or destructive, check with the user or destructive, check with the user or destructive, check with the user before proceeding. Just like the way before proceeding. Just like the way before proceeding. Just like the way this is written, the tone of it, the this is written, the tone of it, the this is written, the tone of it, the actual details, of course, as well. It's actual details, of course, as well. It's actual details, of course, as well. It's not that bad. It's actually decent. not that bad. It's actually decent. not that bad. It's actually decent. It gives a list of examples that are It gives a list of examples that are It gives a list of examples that are things it should verify before doing, things it should verify before doing, things it should verify before doing, like destructive operations, hard to like destructive operations, hard to like destructive operations, hard to reverse operations, actions visible to reverse operations, actions visible to reverse operations, actions visible to others. others. others. Meanwhile, I just saw poor Matt Schumer Meanwhile, I just saw poor Matt Schumer Meanwhile, I just saw poor Matt Schumer get his entire system, like user folder, get his entire system, like user folder, get his entire system, like user folder, deleted by Soul running an ultra in deleted by Soul running an ultra in deleted by Soul running an ultra in Codex. So, maybe Codex needs these Codex. So, maybe Codex needs these Codex. So, maybe Codex needs these warnings now, too.
-
warnings now, too. warnings now, too. There's a simple tone and style section. There's a simple tone and style section. There's a simple tone and style section. It says only use emojis if the user It says only use emojis if the user It says only use emojis if the user requests it. Your responses should be requests it. Your responses should be requests it. Your responses should be short and concise. When referencing short and concise. When referencing short and concise. When referencing specific functions or pieces, use the specific functions or pieces, use the specific functions or pieces, use the pattern file path colon line number. pattern file path colon line number. pattern file path colon line number. Don't use a colon before tool calls. Don't use a colon before tool calls. Don't use a colon before tool calls. Your tool calls may not be shown Your tool calls may not be shown Your tool calls may not be shown directly in the output. As things to not directly in the output. As things to not directly in the output. As things to not save, memory is complex. I'm happy that save, memory is complex. I'm happy that save, memory is complex. I'm happy that they gave it enough instructions here to they gave it enough instructions here to they gave it enough instructions here to do it right. It gives info on the do it right. It gives info on the do it right. It gives info on the environment it is in. It gives the environment it is in. It gives the environment it is in. It gives the tools. Has instructions on how to create tools. Has instructions on how to create tools. Has instructions on how to create a pull request, which are a little more a pull request, which are a little more a pull request, which are a little more specific than I like, and make it in specific than I like, and make it in specific than I like, and make it in formats I don't love. This is one of the formats I don't love. This is one of the formats I don't love. This is one of the few things I would actually change here. few things I would actually change here. few things I would actually change here. Their edit tool, I still hate how Claude Their edit tool, I still hate how Claude Their edit tool, I still hate how Claude code does edits, but that's a rant for code does edits, but that's a rant for code does edits, but that's a rant for another time. Schedule wake up is cool. another time. Schedule wake up is cool. another time. Schedule wake up is cool. It doesn't specify to wait 30 seconds. It doesn't specify to wait 30 seconds. It doesn't specify to wait 30 seconds. It gives it info on how to pick a good It gives it info on how to pick a good It gives it info on how to pick a good amount of delay, which is useful. It amount of delay, which is useful. It amount of delay, which is useful. It then just gives a description of skills, then just gives a description of skills, then just gives a description of skills, tool search, and that's it. It's not tool search, and that's it. It's not tool search, and that's it. It's not that long. I read through the whole that long. I read through the whole that long. I read through the whole thing and it wasn't too bad. Meanwhile, thing and it wasn't too bad. Meanwhile, thing and it wasn't too bad. Meanwhile, the more I read the Codex system prompt, the more I read the Codex system prompt, the more I read the Codex system prompt, the more I questioned my whole life up the more I questioned my whole life up the more I questioned my whole life up until this point. Yeah.
-
until this point. Yeah. until this point. Yeah. That's enough of the Codex crash out for That's enough of the Codex crash out for That's enough of the Codex crash out for now. I think a cleaning of house is in now. I think a cleaning of house is in now. I think a cleaning of house is in order on that side though. This system order on that side though. This system order on that side though. This system prompt is so bad that it should just be prompt is so bad that it should just be prompt is so bad that it should just be deleted and rewritten from scratch, and deleted and rewritten from scratch, and deleted and rewritten from scratch, and they need to make some really, really they need to make some really, really they need to make some really, really intense benchmarks to measure success intense benchmarks to measure success intense benchmarks to measure success and failure, as well as auditing the and failure, as well as auditing the and failure, as well as auditing the histories to see how cringe its histories to see how cringe its histories to see how cringe its interactions are. This is interactions are. This is interactions are. This is bad beyond what is acceptable. So, we bad beyond what is acceptable. So, we bad beyond what is acceptable. So, we established what's wrong with Codex and established what's wrong with Codex and established what's wrong with Codex and a good bit of what's better in Claude a good bit of what's better in Claude a good bit of what's better in Claude code. The system prompt is better, code. The system prompt is better, code. The system prompt is better, workflows are [ __ ] awesome. It's UX workflows are [ __ ] awesome. It's UX workflows are [ __ ] awesome. It's UX in the terminal is better overall. The in the terminal is better overall. The in the terminal is better overall. The CLI for Codex is rougher than it should CLI for Codex is rougher than it should CLI for Codex is rougher than it should be right now. One last thing before we be right now. One last thing before we be right now. One last thing before we do the setup though, I want to talk do the setup though, I want to talk do the setup though, I want to talk about the gotchas that I've been about the gotchas that I've been about the gotchas that I've been experiencing using Codex models inside experiencing using Codex models inside experiencing using Codex models inside of Claude code. Admittedly, there have of Claude code. Admittedly, there have of Claude code. Admittedly, there have been fewer than I expected. First off, been fewer than I expected. First off, been fewer than I expected. First off, I've noticed it sometimes loses track of I've noticed it sometimes loses track of I've noticed it sometimes loses track of what it's doing a little bit more. This what it's doing a little bit more. This what it's doing a little bit more. This could be changes in how context is could be changes in how context is could be changes in how context is managed, but I honestly think this is managed, but I honestly think this is managed, but I honestly think this is just something small in the system just something small in the system just something small in the system prompt. Here is an example where I had prompt. Here is an example where I had prompt. Here is an example where I had it making changes alongside two other it making changes alongside two other it making changes alongside two other agents. All three were making HTML files agents. All three were making HTML files agents. All three were making HTML files for me to go review the feedback it was for me to go review the feedback it was for me to go review the feedback it was giving.
-
giving. giving. And two of them happened to come up with And two of them happened to come up with And two of them happened to come up with the same name for the HTML file. One was the same name for the HTML file. One was the same name for the HTML file. One was using Fable and it wrote fine and made using Fable and it wrote fine and made using Fable and it wrote fine and made the URL fine. the URL fine. the URL fine. This one was using 56 Soul This one was using 56 Soul This one was using 56 Soul and it tried to write the file. and it tried to write the file. and it tried to write the file. It already existed, so it said it would It already existed, so it said it would It already existed, so it said it would leave that file untouched and publish a leave that file untouched and publish a leave that file untouched and publish a new report with a distinct file name. new report with a distinct file name. new report with a distinct file name. So, it did its own different file So, it did its own different file So, it did its own different file instead. instead. instead. Of note though is that I told it to use Of note though is that I told it to use Of note though is that I told it to use my HTML plan skill. And my HTML plan my HTML plan skill. And my HTML plan my HTML plan skill. And my HTML plan skill explicitly tells the model skill explicitly tells the model skill explicitly tells the model to use the web host through the CLI I to use the web host through the CLI I to use the web host through the CLI I gave it to host this model. This skill gave it to host this model. This skill gave it to host this model. This skill is meant to give the model the ability is meant to give the model the ability is meant to give the model the ability to upload the HTML with a link that I to upload the HTML with a link that I to upload the HTML with a link that I can click and look at. It's one of my can click and look at. It's one of my can click and look at. It's one of my favorite things I've built, my silly favorite things I've built, my silly favorite things I've built, my silly little post plan site. And it even says little post plan site. And it even says little post plan site. And it even says here, I'll keep it standalone and here, I'll keep it standalone and here, I'll keep it standalone and responsive, then publish through post responsive, then publish through post responsive, then publish through post plan as requested. plan as requested. plan as requested. It failed to write. It noticed the file It failed to write. It noticed the file It failed to write. It noticed the file already existed. It made the new file. already existed. It made the new file. already existed. It made the new file. Oh, wait. I was wrong. I thought it Oh, wait. I was wrong. I thought it Oh, wait. I was wrong. I thought it didn't host it. This is a link. It's didn't host it. This is a link. It's didn't host it. This is a link. It's just not familiar with the formatting just not familiar with the formatting just not familiar with the formatting here. I'm used to the model spitting out here. I'm used to the model spitting out here. I'm used to the model spitting out an actual link. This is somehow a an actual link. This is somehow a an actual link. This is somehow a clickable link even though it doesn't clickable link even though it doesn't clickable link even though it doesn't look like that here at all. I was wrong.
-
look like that here at all. I was wrong. look like that here at all. I was wrong. I thought it just didn't do that step. I thought it just didn't do that step. I thought it just didn't do that step. It did. I asked it and here it gave me It did. I asked it and here it gave me It did. I asked it and here it gave me the actual link in text that makes more the actual link in text that makes more the actual link in text that makes more sense. sense. sense. I was wrong about that. Mostly it's good I was wrong about that. Mostly it's good I was wrong about that. Mostly it's good about these things. Like it does about these things. Like it does about these things. Like it does stay on task largely fine. It just stay on task largely fine. It just stay on task largely fine. It just doesn't know how to use the formatting doesn't know how to use the formatting doesn't know how to use the formatting great. And I have noticed this in other great. And I have noticed this in other great. And I have noticed this in other places, too. Like here when it did the places, too. Like here when it did the places, too. Like here when it did the number-based formatting, it screwed it number-based formatting, it screwed it number-based formatting, it screwed it up a little bit. Like here it's number up a little bit. Like here it's number up a little bit. Like here it's number one, it's heavily coupled to one one, it's heavily coupled to one one, it's heavily coupled to one specific runtime. Has a chunk and then specific runtime. Has a chunk and then specific runtime. Has a chunk and then one again, modern models generally one again, modern models generally one again, modern models generally understand yada yada. Then it has two understand yada yada. Then it has two understand yada yada. Then it has two twice, then it has three twice, and then twice, then it has three twice, and then twice, then it has three twice, and then four twice. I think there's something four twice. I think there's something four twice. I think there's something weird about how markdown formatting weird about how markdown formatting weird about how markdown formatting works in Claude code, but works in Claude code, but works in Claude code, but 5-6 isn't doing it right, clearly. 5-6 isn't doing it right, clearly. 5-6 isn't doing it right, clearly. Remember, the reason I wanted to do this Remember, the reason I wanted to do this Remember, the reason I wanted to do this initially was for ultra code and initially was for ultra code and initially was for ultra code and specifically for workflows, because I specifically for workflows, because I specifically for workflows, because I wanted to see how good 5-6 could do wanted to see how good 5-6 could do wanted to see how good 5-6 could do workflows. workflows. workflows. And it does them great. There was a And it does them great. There was a And it does them great. There was a problem, though. It is an append to the problem, though. It is an append to the problem, though. It is an append to the system prompt that says, "Hey, please system prompt that says, "Hey, please system prompt that says, "Hey, please please please use workflows for this please please use workflows for this please please use workflows for this task." This works great with Claude task." This works great with Claude task." This works great with Claude models. You can tell it to use them for models. You can tell it to use them for models. You can tell it to use them for your workflows and orchestration. For your workflows and orchestration. For your workflows and orchestration. For example, here I told it that I want to example, here I told it that I want to example, here I told it that I want to better understand this code base. It's better understand this code base. It's better understand this code base. It's the Codex code base, and I want it to the Codex code base, and I want it to the Codex code base, and I want it to analyze with a workflow. Use 5 6 Soul, 5 analyze with a workflow. Use 5 6 Soul, 5 analyze with a workflow. Use 5 6 Soul, 5 6 Terra, and Fable 5 all on high 6 Terra, and Fable 5 all on high 6 Terra, and Fable 5 all on high reasoning levels to analyze the code reasoning levels to analyze the code reasoning levels to analyze the code base. I want it to have the info when I base. I want it to have the info when I base. I want it to have the info when I ask it a vague thing like this so that ask it a vague thing like this so that ask it a vague thing like this so that it will orchestrate properly. So, I'll it will orchestrate properly. So, I'll it will orchestrate properly. So, I'll probably put it in my system prompt in probably put it in my system prompt in probably put it in my system prompt in some way or my global agents MD. There's some way or my global agents MD. There's some way or my global agents MD. There's a lot of places you can put it, but as a lot of places you can put it, but as a lot of places you can put it, but as long as you give Claude code the ability long as you give Claude code the ability long as you give Claude code the ability to know what you mean by Soul Terra and
-
to know what you mean by Soul Terra and to know what you mean by Soul Terra and other things, or you just specify them other things, or you just specify them other things, or you just specify them correctly here, you're good to go. correctly here, you're good to go. correctly here, you're good to go. There's a couple other small catches. There's a couple other small catches. There's a couple other small catches. Like for example, here the 5 6 models Like for example, here the 5 6 models Like for example, here the 5 6 models don't report how many tokens they're don't report how many tokens they're don't report how many tokens they're using until the work is done. Fable will using until the work is done. Fable will using until the work is done. Fable will give you live updates about how many give you live updates about how many give you live updates about how many tokens it's using. It's a small thing, tokens it's using. It's a small thing, tokens it's using. It's a small thing, just one of the few I noticed. Overall, just one of the few I noticed. Overall, just one of the few I noticed. Overall, I've actually been really impressed with I've actually been really impressed with I've actually been really impressed with this. this. this. And I already see the comments coming And I already see the comments coming And I already see the comments coming in, in, in, so I'm going to address them now. so I'm going to address them now. so I'm going to address them now. Why not open code or Pi or O my Pi or Why not open code or Pi or O my Pi or Why not open code or Pi or O my Pi or whatever harness is popular today? whatever harness is popular today? whatever harness is popular today? The reason is because they don't solve The reason is because they don't solve The reason is because they don't solve the problem I care about. They're sure the problem I care about. They're sure the problem I care about. They're sure their system prompts are less bad than their system prompts are less bad than their system prompts are less bad than Codex is, but they don't solve the sub Codex is, but they don't solve the sub Codex is, but they don't solve the sub agent orchestration problem, which is agent orchestration problem, which is agent orchestration problem, which is the thing I am most excited about here. the thing I am most excited about here. the thing I am most excited about here. O my Pi, absolute [ __ ] slop. It froze O my Pi, absolute [ __ ] slop. It froze O my Pi, absolute [ __ ] slop. It froze my terminal for 2 minutes when I my terminal for 2 minutes when I my terminal for 2 minutes when I installed it because they thought it was installed it because they thought it was installed it because they thought it was a good idea to post their entire 150 a good idea to post their entire 150 a good idea to post their entire 150 page change log in formatted markdown in page change log in formatted markdown in page change log in formatted markdown in my terminal, destroying my entire scroll my terminal, destroying my entire scroll my terminal, destroying my entire scroll back, and just destroying it entirely.
-
back, and just destroying it entirely. back, and just destroying it entirely. It was real bad. Pi is great, but you're It was real bad. Pi is great, but you're It was real bad. Pi is great, but you're going to have to build all of these going to have to build all of these going to have to build all of these workflows and orchestration tools workflows and orchestration tools workflows and orchestration tools yourself. Open code has a bunch of yourself. Open code has a bunch of yourself. Open code has a bunch of hard-coded sub agents that aren't very hard-coded sub agents that aren't very hard-coded sub agents that aren't very good. The V2 of Open Code might be good. The V2 of Open Code might be good. The V2 of Open Code might be better. I have not explored it at all better. I have not explored it at all better. I have not explored it at all yet, but none of those have workflows. yet, but none of those have workflows. yet, but none of those have workflows. And to be real, and to be very, very And to be real, and to be very, very And to be real, and to be very, very clear cuz I started here, I did this for clear cuz I started here, I did this for clear cuz I started here, I did this for workflows. The workflows in Claude Code workflows. The workflows in Claude Code workflows. The workflows in Claude Code are the best implementation I have seen are the best implementation I have seen are the best implementation I have seen of orchestrating sub-agents on real of orchestrating sub-agents on real of orchestrating sub-agents on real day-to-day work for people who are day-to-day work for people who are day-to-day work for people who are employed that I've ever seen, by far. If employed that I've ever seen, by far. If employed that I've ever seen, by far. If you want to have an agent break up other you want to have an agent break up other you want to have an agent break up other agents with other models to do complex agents with other models to do complex agents with other models to do complex work, to take turns and have phases work, to take turns and have phases work, to take turns and have phases throughout, to kick off things that throughout, to kick off things that throughout, to kick off things that matter and ignore things that don't, and matter and ignore things that don't, and matter and ignore things that don't, and have an actual end, have an actual end, have an actual end, workflows are the best solution I have workflows are the best solution I have workflows are the best solution I have found for this by far. And nothing else found for this by far. And nothing else found for this by far. And nothing else comes close. To be very clear, I don't comes close. To be very clear, I don't comes close. To be very clear, I don't think workflows are the super complex think workflows are the super complex think workflows are the super complex feature that no one else can implement. feature that no one else can implement. feature that no one else can implement. In fact, Codex told me to just add it to In fact, Codex told me to just add it to In fact, Codex told me to just add it to Codex myself when I asked it about that Codex myself when I asked it about that Codex myself when I asked it about that versus using it in Claude Code. You can versus using it in Claude Code. You can versus using it in Claude Code. You can absolutely do this.
-
absolutely do this. absolutely do this. That all said, Claude Code has this That all said, Claude Code has this That all said, Claude Code has this figured out. They have a good system for figured out. They have a good system for figured out. They have a good system for it built in. They have good UI built for it built in. They have good UI built for it built in. They have good UI built for it, too, in the terminal, at least. The it, too, in the terminal, at least. The it, too, in the terminal, at least. The desktop app, less so. They have a system desktop app, less so. They have a system desktop app, less so. They have a system prompt that properly steers models to do prompt that properly steers models to do prompt that properly steers models to do it right, and they have a harness that it right, and they have a harness that it right, and they have a harness that is good enough. One last cool thing that is good enough. One last cool thing that is good enough. One last cool thing that I'm sure you probably could have I'm sure you probably could have I'm sure you probably could have guessed, CLI proxy API supports things guessed, CLI proxy API supports things guessed, CLI proxy API supports things other than Claude Code and Codex and other than Claude Code and Codex and other than Claude Code and Codex and subs from those platforms. So, if you subs from those platforms. So, if you subs from those platforms. So, if you want to bring in subscriptions from want to bring in subscriptions from want to bring in subscriptions from other places, like a cough cough, Grok other places, like a cough cough, Grok other places, like a cough cough, Grok Build, because you have an existing Build, because you have an existing Build, because you have an existing Twitter Premium account, you can here. Twitter Premium account, you can here. Twitter Premium account, you can here. It's actually a pretty good value. You It's actually a pretty good value. You It's actually a pretty good value. You get a slightly absurd amount of usage get a slightly absurd amount of usage get a slightly absurd amount of usage out of the $20 a month Twitter plan if out of the $20 a month Twitter plan if out of the $20 a month Twitter plan if you use it with Grok Build. And if you you use it with Grok Build. And if you you use it with Grok Build. And if you don't want to use Grok Build, and you don't want to use Grok Build, and you don't want to use Grok Build, and you want to use it in other things, you can want to use it in other things, you can want to use it in other things, you can now get Opus 4.5 in Claude Code by just now get Opus 4.5 in Claude Code by just now get Opus 4.5 in Claude Code by just adding it here. I had a lot of fun with adding it here. I had a lot of fun with adding it here. I had a lot of fun with this one. And again, to be clear, I this one. And again, to be clear, I this one. And again, to be clear, I don't think everyone should go don't think everyone should go don't think everyone should go exclusively use their Codex sub through exclusively use their Codex sub through exclusively use their Codex sub through Claude Code. I just thought it was a fun Claude Code. I just thought it was a fun Claude Code. I just thought it was a fun experiment with results that were much experiment with results that were much experiment with results that were much better than I expected. And now I'm just better than I expected. And now I'm just better than I expected. And now I'm just curious if you guys are interested curious if you guys are interested curious if you guys are interested enough to do the same yourself. Am I enough to do the same yourself. Am I enough to do the same yourself. Am I insane for going this deep, or is this insane for going this deep, or is this insane for going this deep, or is this actually kind of fun and interesting?
-
actually kind of fun and interesting? actually kind of fun and interesting? Are you going to set it up yourself, or Are you going to set it up yourself, or Are you going to set it up yourself, or maybe you're just going to point your maybe you're just going to point your maybe you're just going to point your agent at this video and ask it to do it agent at this video and ask it to do it agent at this video and ask it to do it for you? Let me know how all of that for you? Let me know how all of that for you? Let me know how all of that goes. I'm genuinely curious. I'll keep goes. I'm genuinely curious. I'll keep goes. I'm genuinely curious. I'll keep an eye on the comment section, but until an eye on the comment section, but until an eye on the comment section, but until next time, next time, next time, peace nerds.
Summary
The main theme is the superiority of Claude code when integrating with 5-6 soul compared to alternatives like Codex. Key subjects include Claude code's sub-agent system prompt and integrations, alongside frustrations with Codex. The practical takeaway is to leverage Claude code for its advanced capabilities in harnessing AI for code development.