[{"data":1,"prerenderedAt":238},["ShallowReactive",2],{"blog-article-/blog/debugging-my-zsh-config-with-goose-and-why-agentic-ai-actually-helped":3,"blog-surround-/blog/debugging-my-zsh-config-with-goose-and-why-agentic-ai-actually-helped":229},{"id":4,"title":5,"body":6,"canonical":214,"date":215,"description":216,"extension":217,"featured":218,"image":219,"meta":220,"navigation":221,"ogImage":219,"path":222,"provider":219,"published":221,"seo":223,"stem":224,"tags":225,"url":219,"__hash__":228},"blog/blog/debugging-my-zsh-config-with-goose-and-why-agentic-ai-actually-helped.md","Debugging My Zsh Config With Goose (and Why Agentic AI Actually Helped)",{"type":7,"value":8,"toc":202},"minimark",[9,13,16,19,22,27,30,33,36,39,43,55,58,68,78,81,85,93,96,99,102,112,115,118,124,133,136,139,142,145,148,151,154,158,161,164,167,170,173,176,179,184],[10,11,12],"p",{},"I've been playing around with a few things recently and wanted to share a real experience that genuinely surprised me.",[10,14,15],{},"You might have seen the news from the Linux Foundation announcing the formation of the Agentic AI Foundation. As part of that, a few projects were donated into the foundation, including the Model Context Protocol (MCP), Agents.md, and Goose.",[10,17,18],{},"I'm guessing a lot of people haven't heard of Goose yet. I hadn't either until recently, so I figured I'd dig into it and see what it's actually about.",[10,20,21],{},"If you want the full announcement, you can read it on the Linux Foundation website. This post isn't about the announcement though — it's about what happened when I tried to use Goose for real.",[23,24,26],"h2",{"id":25},"what-is-goose","What is Goose?",[10,28,29],{},"Goose was released in early 2025, so it's still very new. It's open source (which I love), and it's a local-first AI agent framework. It combines language models with extensible tools like MCP so it can actually do things, not just talk about them.",[10,31,32],{},"There's both a desktop app and a CLI. I'm much more of a desktop app person than a CLI person, but everything seems to be going CLI these days, so I decided to give the Goose CLI a try.",[10,34,35],{},"The docs live at block.github.io, and I did start reading them. Like most people, I got through the first bit and then thought, \"I'll figure it out as I go.\"",[10,37,38],{},"That decision led me directly into a very familiar kind of developer pain.",[23,40,42],{"id":41},"the-problem-goose-wouldnt-run","The Problem: Goose Wouldn't Run",[10,44,45,46,50,51,54],{},"I installed the desktop app first and then followed the docs to install the CLI. The instructions said that after updating my ",[47,48,49],"code",{},".zshrc",", I should be able to run the ",[47,52,53],{},"goose"," command.",[10,56,57],{},"I couldn't. No matter what I did, I kept getting:",[59,60,65],"pre",{"className":61,"code":63,"language":64},[62],"language-text","zsh: command not found: goose\n","text",[47,66,63],{"__ignoreMap":67},"",[10,69,70,71,73,74,77],{},"I sourced my ",[47,72,49],{},". I ran ",[47,75,76],{},"goose --help",". Nothing worked. The agent kept telling me everything was done correctly, and I kept replying with some version of, \"No, it's not working.\"",[10,79,80],{},"This is where it got interesting.",[23,82,84],{"id":83},"goose-didnt-argue-it-investigated","Goose Didn't Argue — It Investigated",[10,86,87,88,92],{},"Instead of looping on generic advice, Goose pointed out something important: terminal config changes are only picked up when a new session starts. That's something I ",[89,90,91],"em",{},"always"," forget.",[10,94,95],{},"So I closed the terminal, opened a new one, and tried again.",[10,97,98],{},"Still broken.",[10,100,101],{},"At this point, Goose acknowledged that something wasn't right. It explained that if sourcing the file and restarting the terminal didn't work, then one of two things was probably happening:",[103,104,105,109],"ul",{},[106,107,108],"li",{},"The change didn't save correctly",[106,110,111],{},"Another startup config was overriding the PATH",[10,113,114],{},"Honestly, that explanation alone would normally make me sigh and prepare to lose an hour.",[10,116,117],{},"Instead, Goose suggested checking the file directly.",[23,119,121,122],{"id":120},"letting-an-ai-read-my-zshrc","Letting an AI Read My ",[47,123,49],{},[10,125,126,127,129,130,132],{},"Goose used a tool to open my ",[47,128,49],{}," and read it. I didn't need to install this tool. Reading ",[47,131,49],{}," files is not something I do often and I definitely don't enjoy debugging them.",[10,134,135],{},"Goose scanned through all the usual stuff, pnpm, bun, nvm, PATH exports and then immediately spotted the problem.",[10,137,138],{},"When it had added the Goose PATH export earlier, it didn't include a newline. That meant the new export was stuck onto the end of the previous line, creating a syntax error.",[10,140,141],{},"I wouldn't have noticed that quickly. I was looking at the file and just seeing noise.",[10,143,144],{},"Goose explained exactly what went wrong, showed me the broken line, and explained that it should really be two separate lines.",[10,146,147],{},"Then it fixed it. It replaced the bad line with two clean, correctly formatted lines and even added a comment to make it clearer for the future.",[10,149,150],{},"After that, Goose asked me to restart my terminal one more time. This time, when I typed goose, the command worked. I could see all the available commands. Sessions, MCP servers, bundled tools, everything was there.",[10,152,153],{},"At that point, I just sat back for a second. Not because this was some massive, complex bug, but because this is exactly the kind of small, annoying issue that can completely derail your flow.",[23,155,157],{"id":156},"why-this-actually-matters","Why This Actually Matters",[10,159,160],{},"If I had debugged this myself, I would have figured it out eventually. But it would have taken time, frustration, and a lot of trial and error. Instead, the agent noticed something was off. It inspected a real config file and identified a subtle syntax error, fixed it safely and then it explained what happened.",[10,162,163],{},"That's the difference between AI that answers questions and AI that actually helps you get unstuck.",[10,165,166],{},"I also didn't know Goose could edit files like this. Seeing it work through the problem step by step, without pretending everything was fine when it wasn't, made a big difference.",[10,168,169],{},"We don't have the answers to everything as developers. That's normal. What is changing is how quickly we can get unblocked.",[10,171,172],{},"If something doesn't feel right, push back. Say it's not working. Let the agent iterate. Let it re-check assumptions. That's where this starts to become genuinely useful.",[10,174,175],{},"If you're curious about Goose, it's worth a look. And even if you're not, this kind of experience is a good reminder that using AI well isn't about shortcut, it's about reducing unnecessary friction.",[10,177,178],{},"That's it. Have fun experimenting with AI.",[180,181,183],"h3",{"id":182},"useful-links","Useful Links:",[103,185,186,195],{},[106,187,188],{},[189,190,194],"a",{"href":191,"rel":192},"https://block.github.io/goose/docs/getting-started/installation/",[193],"nofollow","Goose",[106,196,197],{},[189,198,201],{"href":199,"rel":200},"https://www.linuxfoundation.org/press/linux-foundation-announces-the-formation-of-the-agentic-ai-foundation",[193],"Linux Foudation",{"title":67,"searchDepth":203,"depth":203,"links":204},2,[205,206,207,208,210],{"id":25,"depth":203,"text":26},{"id":41,"depth":203,"text":42},{"id":83,"depth":203,"text":84},{"id":120,"depth":203,"text":209},"Letting an AI Read My .zshrc",{"id":156,"depth":203,"text":157,"children":211},[212],{"id":182,"depth":213,"text":183},3,"https://dev.to/debs_obrien/debugging-my-zsh-config-with-goose-and-why-agentic-ai-actually-helped-1noh","2025-12-15","I've been playing around with a few things recently and wanted to share a real experience that genuinely surprised me. When Goose CLI wouldn't run, the agent investigated my .zshrc file and found a subtle syntax error that would have taken me much longer to debug manually.","md",false,null,{},true,"/blog/debugging-my-zsh-config-with-goose-and-why-agentic-ai-actually-helped",{"title":5,"description":216},"blog/debugging-my-zsh-config-with-goose-and-why-agentic-ai-actually-helped",[226,227],"ai","webdev","QDTmcblgFZA5mwzjK333TZyXeNGZOYPmsf4VswBeGS4",[230,234],{"title":231,"path":232,"stem":233,"children":-1},"First Two Years of Raising Kids and Working Fulltime","/blog/first-two-years-raising-kids-working-fulltime","blog/first-two-years-raising-kids-working-fulltime",{"title":235,"path":236,"stem":237,"children":-1},"Laid off from my dream job, what now?","/blog/laid-off-what-now","blog/laid-off-what-now",1790839746211]