<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Cesar Bouli</title>
    <description>The latest articles on DEV Community by Cesar Bouli (@bouli).</description>
    <link>https://dev.to/bouli</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1432043%2Fd349f7df-245a-4388-8283-1854ae2f9195.jpg</url>
      <title>DEV Community: Cesar Bouli</title>
      <link>https://dev.to/bouli</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bouli"/>
    <language>en</language>
    <item>
      <title>Lazy Scripts: my path to understand (a little bit) AI in my developer workflow</title>
      <dc:creator>Cesar Bouli</dc:creator>
      <pubDate>Sat, 06 Jun 2026 12:07:34 +0000</pubDate>
      <link>https://dev.to/bouli/lazy-scripts-my-path-to-understand-a-little-bit-ai-in-my-developer-workflow-5hk8</link>
      <guid>https://dev.to/bouli/lazy-scripts-my-path-to-understand-a-little-bit-ai-in-my-developer-workflow-5hk8</guid>
      <description>&lt;p&gt;I have a small repository called &lt;a href="https://github.com/bouli/lazy-scripts" rel="noopener noreferrer"&gt;lazy-scripts&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;At first, it was exactly what the name says: a bunch of lazy scripts. Nothing fancy. Some helpers to clean my Python environment, create a simple &lt;code&gt;sandbox&lt;/code&gt; folder to make tests, and automate things I repeat too much in my daily developer life.&lt;/p&gt;

&lt;p&gt;But after some time, this repository became something different for me. It became the place where I started to understand how I can really use AI as a developer, not only as a chat where I ask questions and copy code.&lt;/p&gt;

&lt;h2&gt;
  
  
  The beginning: simple scripts
&lt;/h2&gt;

&lt;p&gt;The first idea was very practical.&lt;/p&gt;

&lt;p&gt;I wanted commands that save me small amounts of time:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;create a disposable development sandbox;&lt;/li&gt;
&lt;li&gt;clean generated files from projects;&lt;/li&gt;
&lt;li&gt;copy some reusable GitHub Actions workflows;&lt;/li&gt;
&lt;li&gt;make repetitive local tasks easier.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is still the base of the repository. I do not see it as a professional CLI product. It is more like my personal toolbox.&lt;/p&gt;

&lt;p&gt;Today the repository has commands like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;bouli-sandbox&lt;/code&gt;, to recreate a local sandbox and open it in VS Code;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;dev-garbage-collector&lt;/code&gt;, to clean Python, JavaScript, and Go generated files;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;dev-lazy-gh&lt;/code&gt;, to copy reusable GitHub Actions workflows;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ai-sbx-codex&lt;/code&gt;, to start Codex inside an &lt;code&gt;sbx&lt;/code&gt; sandbox;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ai-sbx-opencode&lt;/code&gt;, to start OpenCode inside an &lt;code&gt;sbx&lt;/code&gt; sandbox;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ai-ralph-codex&lt;/code&gt;, to run my Ralph workflow with Codex.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The interesting part is that the repository history shows my own learning path. It started with simple shell scripts, and slowly became a place to test AI workflows with more control.&lt;/p&gt;

&lt;h2&gt;
  
  
  First contact with AI coding
&lt;/h2&gt;

&lt;p&gt;Like many developers, I started using AI in the most obvious way.&lt;/p&gt;

&lt;p&gt;I was creating code in a chat, copying it, downloading files, testing locally, asking again, fixing again.&lt;/p&gt;

&lt;p&gt;It worked, but it was not a real workflow. It was more like using a very advanced autocomplete outside of my project.&lt;/p&gt;

&lt;p&gt;After that I installed the Claude plugin in VS Code. The results were interesting, but I had a problem: I did not really like the code. Sometimes the code worked, but it did not feel like my code. Sometimes the price question also started to appear in my head.&lt;/p&gt;

&lt;p&gt;Then I started looking more seriously into local AI.&lt;/p&gt;

&lt;h2&gt;
  
  
  Local AI: Cline, Ollama, Qwen
&lt;/h2&gt;

&lt;p&gt;The idea of local AI was very attractive to me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;more control;&lt;/li&gt;
&lt;li&gt;more privacy;&lt;/li&gt;
&lt;li&gt;controlled price;&lt;/li&gt;
&lt;li&gt;the possibility to experiment without thinking all the time about tokens.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I started to play with Cline CLI, Ollama, and a Qwen model.&lt;/p&gt;

&lt;p&gt;The results were interesting, but there was still something missing. The model could do things, but it did not always understand the project as I expected. And my programmer brain was still thinking like a classic programmer: architecture, small changes, review, responsibility.&lt;/p&gt;

&lt;p&gt;At the same time, I was trying to understand how other programmers were using AI. This is not easy. There is a lot of content, but also a lot of hype. After some research, I found a video that finally gave me useful ideas about workflow: what a &lt;code&gt;skill&lt;/code&gt; is for, who Ralph is, and why the process matters more than only the model.&lt;/p&gt;

&lt;p&gt;That changed my focus.&lt;/p&gt;

&lt;p&gt;The important question stopped being:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Which AI tool writes more code?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And became:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Which workflow helps me understand and review the code that is being created?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  The problem with too much freedom
&lt;/h2&gt;

&lt;p&gt;I tried Claude again later, and again I found something I did not like.&lt;/p&gt;

&lt;p&gt;It started touching things I did not ask for. Worse: things outside of the project folder.&lt;/p&gt;

&lt;p&gt;For me this is a big problem.&lt;/p&gt;

&lt;p&gt;I want AI to help me develop, but I do not want to give it the same freedom I have on my machine. My computer is not the project. My repository is the project.&lt;/p&gt;

&lt;p&gt;This is where the &lt;code&gt;sbx&lt;/code&gt; command changed things for me.&lt;/p&gt;

&lt;p&gt;With Docker sandboxing, I started to believe more in the workflow. The agent can work, but inside a controlled environment. This made the idea much more acceptable to me.&lt;/p&gt;

&lt;h2&gt;
  
  
  OpenCode, Codex, and the difference between planning and building
&lt;/h2&gt;

&lt;p&gt;After that I tried OpenCode.&lt;/p&gt;

&lt;p&gt;For me, the results were better than Cline. Still not perfect, but better. And working with these open source tools helped me understand something important: there is a difference between planning and building.&lt;/p&gt;

&lt;p&gt;Sometimes I do not want the AI to change code yet. I want it to understand the project, create a PRD, suggest issues, split the work.&lt;/p&gt;

&lt;p&gt;Only after that I want the implementation.&lt;/p&gt;

&lt;p&gt;This is where Codex started to make sense for me. With all the previous learning, using Codex + a paid account felt much more useful. Not because now I can "vibe code" everything (I definetely can't), but because I finally had a process around it and that helps not just to make the things more understandable, but "cheaper" as well.&lt;/p&gt;

&lt;h2&gt;
  
  
  My current workflow
&lt;/h2&gt;

&lt;p&gt;Nowadays, when I want to improve one of my personal projects, I usually follow this path:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;I start with a clean repository, with no pending commits.&lt;/li&gt;
&lt;li&gt;I ask the agent to check the repo and create a &lt;code&gt;PRD.md&lt;/code&gt; file.&lt;/li&gt;
&lt;li&gt;I explain my idea and ask for possible issues.&lt;/li&gt;
&lt;li&gt;I review the issues to see if the direction is OK.&lt;/li&gt;
&lt;li&gt;I ask the agent to create the issues.&lt;/li&gt;
&lt;li&gt;Ralph on it.&lt;/li&gt;
&lt;li&gt;I review the code for real.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This is the most important part for me: small steps and human code review.&lt;/p&gt;

&lt;p&gt;If the AI creates a huge change, I cannot review it properly. If it creates small pieces, I can read the code, understand the decision, test it, and decide if I want to keep it.&lt;/p&gt;

&lt;p&gt;Sometimes something is completely out of reality. In this case, I just restore the repo or drop the commit. No drama. But because the work is split in small parts, I can usually keep the useful parts and reject the bad ones.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why lazy-scripts exists
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https://github.com/bouli/lazy-scripts" rel="noopener noreferrer"&gt;lazy-scripts&lt;/a&gt; repository is not only a collection of commands.&lt;/p&gt;

&lt;p&gt;It is also my lab.&lt;/p&gt;

&lt;p&gt;It has normal development scripts, like the garbage collector that cleans generated artifacts from Python, JavaScript, and Go projects. It has sandbox helpers. It has AI helpers. It has my current way to start Codex or OpenCode inside &lt;code&gt;sbx&lt;/code&gt;. It has the commands I use to run Ralph workflows.&lt;/p&gt;

&lt;p&gt;It is not perfect, and I do not want it to be perfect in the wrong way. It is a personal repository, so the code should be simple enough that I can understand and maintain it.&lt;/p&gt;

&lt;p&gt;This is also part of my AI learning: if I cannot understand the generated code, the result is not really good for me.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I do not believe yet
&lt;/h2&gt;

&lt;p&gt;I still do not believe too much in starting a full project with pure vibe coding.&lt;/p&gt;

&lt;p&gt;Maybe it works. Maybe the code is even good. But I think there is a risk: you become completely outside of the architecture. You have files, features, and commits, but you do not really know the system.&lt;/p&gt;

&lt;p&gt;For now, I prefer another way:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;use AI to understand the repo;&lt;/li&gt;
&lt;li&gt;use AI to create a PRD;&lt;/li&gt;
&lt;li&gt;use AI to suggest small issues;&lt;/li&gt;
&lt;li&gt;use AI to implement one slice at a time;&lt;/li&gt;
&lt;li&gt;review everything like a developer.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Maybe I will change my mind in the future. But today, this is the way that gives me better results.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final thought
&lt;/h2&gt;

&lt;p&gt;AI can write code. This is not the interesting part anymore.&lt;/p&gt;

&lt;p&gt;The interesting part is how to create a workflow where the code still belongs to you.&lt;/p&gt;

&lt;p&gt;If you are feeling lost, I highly recommend you to play and try to automate your daily life with tiny scripts like the ones I did. That makes you understand better your own wokflow, what you want and what you DON'T want to automate with or without AI.&lt;/p&gt;

&lt;p&gt;In the end of the day, the prices will rise, we will need to be more productive, spending less "token$" and choosing what you can and what you cannot put in an "OpenAI" server.&lt;/p&gt;




&lt;p&gt;&lt;a href="https://github.com/bouli/posts/blob/main/posts/99999-dev-to-lazy-scripts-ai-workflow.md" rel="noopener noreferrer"&gt;Prompt to this post&lt;/a&gt; &lt;/p&gt;

</description>
      <category>productivity</category>
      <category>ai</category>
      <category>opensource</category>
      <category>development</category>
    </item>
  </channel>
</rss>
