{"id":14249,"date":"2026-10-23T23:00:01","date_gmt":"2026-10-24T03:00:01","guid":{"rendered":"https:\/\/spinor.info\/weblog\/?p=14249"},"modified":"2026-10-23T23:00:01","modified_gmt":"2026-10-24T03:00:01","slug":"agent-or-assistant","status":"publish","type":"post","link":"https:\/\/spinor.info\/weblog\/?p=14249","title":{"rendered":"Agent or assistant?"},"content":{"rendered":"<p>I use AI on a daily basis, in my software development work. It is an incredible productivity tool. Things that would take days, even weeks, are often accomplished in mere minutes.<\/p>\n<p>Take this example, just the other day. I received another dire warning from Google, indicating that their existing search services for third-party software will be discontinued. This was bad news: My own <a href=\"https:\/\/wispl.com\/\">WISPL<\/a> <a href=\"https:\/\/chat.wispl.com\/\">chatbot<\/a> uses Google&#8217;s search API and the snippets it provides as a means for AI models to search the Internet for accurate or up-to-date information. This capability will no longer be available starting in January.<\/p>\n<p>So I consulted with, well, Google. What are the alternatives? Google&#8217;s own AI helpfully recommended several, among them a service called <a href=\"https:\/\/search.brave.com\/\">Brave Search<\/a>. I checked it out and it seemed to match my needs perfectly, in fact better than Google ever did. So&#8230; let&#8217;s do this! I rolled up my sleeves and&#8230; fired up Claude in my chatbot, presented the problem, presented the code segments from my chatbot implementation that would likely be affected, and asked Claude to suggest a solution.<\/p>\n<p>In a minute, I had a response from Claude. A nice new function that would connect to Brave Search. A thin compatibility layer that allows my code to use wither Google or Brave. Even a bug fix for something it stumbled across as it reviewed my old code.<\/p>\n<p>I took Claude&#8217;s code, incorporated it into the source base, made some minor adjustments, ran some tests and that was it. Less than three hours after I began this exercise, the solution was deployed. Brave Search works perfectly in my WISPL chatbot, and delivers better results than Google ever did, suitable for AI models to digest.<\/p>\n<p>But&#8230; notice what I did not do as part of this exercise. At no point did Claude have access to my source code. I was using Claude strictly as a chatbot. I received its output as a recommendation, not as a solution. I scrutinized it, evaluated it, adjusted it, and then integrated it. As a result, by the time I was done, I &#8220;owned&#8221; the code, figuratively speaking. I know what it is, where it is, what it does and why.<\/p>\n<p>I could have used Claude Code. At the cost of a great many more (pricey) tokens, it&#8217;d have mapped the entire code base of my WISPL chatbot. It&#8217;d have implemented its changes without a human in the loop. It&#8217;d have committed those changes to my git repository, and pushed them to GitHub. It would, quite likely, have also presented a nice explanation of what it did and why, which I could read at my convenience&#8230; or not. Because, well, if the solution works, what&#8217;s the point?<\/p>\n<p>And that is how we gradually lose agency over our projects when we allow AI systems to act not just as assistants but also as agents.<\/p>\n<p>Yes, I tried. I have a working Claude Code installation. My reaction was negative due to the opacity of the process. Claude goes away, does things&#8230; maybe asks for permission to modify the code base, maybe not, depending on the setting&#8230; and then comes back when it is done. Chances are the result works, or at least, appears to work. How could I even tell the difference?<\/p>\n<p>And I&#8217;ve seen the consequences of this already. There were publicly disclosed cases but I also interacted with folks who let Claude Code go a tad too far.<\/p>\n<p>As for me, I&#8217;d prefer to continue using AI systems as assistants. An AI assistant is like an incredibly capable, knowledgeable, tireless junior programmer: I retain the senior programmer role. The junior programmer may be writing the code, but I am the one reviewing it, integrating it, validating it. With a coding agent, the situation changes. The coding agent is not just a junior programmer: it&#8217;s an entire development team. My role? That of the detached project manager who know things in PowerPoint slides and KPIs, and no longer has an in-depth understanding, intellectual &#8220;ownership&#8221; of the code proper.<\/p>\n<p>This is especially dangerous when the project involves unfamiliar code. The coding agent can review, map, &#8220;understand&#8221; that code base and make changes to it, while I remain in the dark. The AI may offer explanations, but it&#8217;s not quite the same as hands-on experience with the code base. I may not be aware of the broader context, and accept the (plausible) explanations at face value.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-14252\" src=\"https:\/\/spinor.info\/weblog\/wp-content\/uploads\/2026\/10\/assistant-or-agent.jpg\" alt=\"\" width=\"768\" height=\"512\" srcset=\"https:\/\/spinor.info\/weblog\/wp-content\/uploads\/2026\/10\/assistant-or-agent.jpg 768w, https:\/\/spinor.info\/weblog\/wp-content\/uploads\/2026\/10\/assistant-or-agent-300x200.jpg 300w, https:\/\/spinor.info\/weblog\/wp-content\/uploads\/2026\/10\/assistant-or-agent-150x100.jpg 150w\" sizes=\"(max-width: 768px) 100vw, 768px\" \/><\/p>\n<p>In any case, the agentic productivity gain is not quite as great as this DALL-E illustration might imply. As my search engine replacement surgery demonstrates, the bulk of the productivity gain comes from writing good quality code fast. The perceived gain with the agent comes at a huge cost: a bird&#8217;s eye view of the project is not the same as robust understanding of its architecture and details.<\/p>\n<p>Indeed, paradoxically, the ones who benefit the most from the extra productivity gain offered by coding agents are the ones who should be most wary of it: people with less experience than I have. The biggest productivity gain from agentic behavior is for users who are least equipped to supervise the agent safely. And that, I worry, will lead to many more software development horror stories in the coming years.<\/p>\n<fb:like href='https:\/\/spinor.info\/weblog\/?p=14249' send='false' layout='button_count' show_faces='true' width='450' height='65' action='like' colorscheme='light' font='lucida grande'><\/fb:like>","protected":false},"excerpt":{"rendered":"<p>I use AI on a daily basis, in my software development work. It is an incredible productivity tool. Things that would take days, even weeks, are often accomplished in mere minutes. Take this example, just the other day. I received another dire warning from Google, indicating that their existing search services for third-party software will <a href='https:\/\/spinor.info\/weblog\/?p=14249' class='excerpt-more'>[&#8230;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[58,35,36,1],"tags":[],"class_list":["post-14249","post","type-post","status-publish","format-standard","hentry","category-cybernetics","category-personal","category-programming","category-uncategorized","category-58-id","category-35-id","category-36-id","category-1-id","post-seq-1","post-parity-odd","meta-position-corners","fix"],"_links":{"self":[{"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=\/wp\/v2\/posts\/14249","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=14249"}],"version-history":[{"count":9,"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=\/wp\/v2\/posts\/14249\/revisions"}],"predecessor-version":[{"id":14259,"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=\/wp\/v2\/posts\/14249\/revisions\/14259"}],"wp:attachment":[{"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=14249"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=14249"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/spinor.info\/weblog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=14249"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}