<?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: Igor Kan</title>
    <description>The latest articles on DEV Community by Igor Kan (@igorkan).</description>
    <link>https://dev.to/igorkan</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%2F3224237%2Fee0a72aa-f753-468d-af5f-26ce188b810c.jpg</url>
      <title>DEV Community: Igor Kan</title>
      <link>https://dev.to/igorkan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/igorkan"/>
    <language>en</language>
    <item>
      <title>The Legal Profession's Best-Kept Secret: Why Git Belongs in Every Law Firm</title>
      <dc:creator>Igor Kan</dc:creator>
      <pubDate>Sat, 21 Mar 2026 05:25:54 +0000</pubDate>
      <link>https://dev.to/igorkan/the-legal-professions-best-kept-secret-why-git-belongs-in-every-law-firm-35bg</link>
      <guid>https://dev.to/igorkan/the-legal-professions-best-kept-secret-why-git-belongs-in-every-law-firm-35bg</guid>
      <description>&lt;p&gt;You've sent it. Everyone has.&lt;/p&gt;

&lt;p&gt;An email with a subject line that reads something like: &lt;em&gt;"Merger Agreement — FINAL_v4_revised_JT_edits_ACTUALLYFINAL.docx"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;And somewhere in that chain of files is a version that went to the client by mistake. Or a clause that got quietly removed and nobody noticed. Or a dispute — weeks later, in a meeting nobody wanted to be in — about who changed what and when.&lt;/p&gt;

&lt;p&gt;This is not a technology problem. It's a documentation problem. And it has a solution that software engineers figured out decades ago. It's called &lt;strong&gt;Git&lt;/strong&gt;, and it's quietly changing how governments write laws, how legal teams manage contracts, and how the most forward-thinking firms in the world handle document history.&lt;/p&gt;

&lt;p&gt;This article is for anyone in the legal world — lawyers, paralegals, legal ops professionals, law students — who has never heard of Git, or has heard the name and assumed it wasn't for them. By the end, you'll understand exactly what it does, why it matters for legal work specifically, and how it's already being used at the level of national and municipal law.&lt;/p&gt;




&lt;h2&gt;
  
  
  Part One: What Is Git? (Without the Jargon)
&lt;/h2&gt;

&lt;p&gt;Let's start from the very beginning.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Git is a system that tracks every change ever made to a document — who made it, when, and why.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's the core of it. Everything else is detail.&lt;/p&gt;

&lt;p&gt;Imagine you're drafting a contract. Every time you save a version, Git takes a snapshot. Not just of what the document looks like now, but of exactly what changed since the last snapshot — every word added, every word deleted, every clause rewritten. It stores all of this in a neat timeline, and it never throws any of it away.&lt;/p&gt;

&lt;p&gt;Now imagine you have three colleagues also working on the same document. Git tracks all of their changes separately. It can show you a side-by-side comparison of any two versions. It can show you who changed a specific clause on a specific date. And if a change was a mistake, you can go back — not to "yesterday's version" saved somewhere in your email, but to any specific moment in the document's history, with one command.&lt;/p&gt;

&lt;p&gt;Here are the key terms you'll see throughout this article, explained in plain English:&lt;/p&gt;




&lt;h3&gt;
  
  
  Git Glossary for Non-Developers
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Repository (or "repo"):&lt;/strong&gt; The project folder. Not just the files, but the entire history of every change ever made to them. Think of it as a filing cabinet that never forgets anything.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Commit:&lt;/strong&gt; A saved snapshot. Each time you commit, you're saying: &lt;em&gt;"I'm done with this set of changes. Lock them in."&lt;/em&gt; You also write a short message explaining what you did — like a mandatory comment next to a redline. Example commit message: &lt;em&gt;"Removed arbitration clause per client instruction on 14 March call."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Branch:&lt;/strong&gt; A parallel version of the document. You can create a branch to explore a different direction — say, draft the contract with a different indemnity structure — without touching the main version. If the branch works out, you merge it in. If it doesn't, you delete it. Nothing is lost, nothing is broken.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Merge:&lt;/strong&gt; Combining two branches back into one. Git is smart enough to do this automatically in most cases — and in cases where two people changed the same clause differently, it flags the conflict and asks you to resolve it manually.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Diff:&lt;/strong&gt; Short for "difference." A diff shows you exactly what changed between two versions, line by line. Added text in green, removed text in red. This is Git's version of tracked changes in Word — except it works across every file, every version, forever.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pull Request (or PR):&lt;/strong&gt; A formal proposal to merge one set of changes into another. In a legal context, think of it as a junior associate submitting a draft for a partner's review. The partner can see every change, leave comments on specific lines, request revisions, and approve or reject — all in one place.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;git blame:&lt;/strong&gt; A command (the name sounds harsh, but it's standard) that shows, for every line of a document, who wrote it and when. In a legal context, this is an audit trail at the line level.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub / GitLab:&lt;/strong&gt; Websites that host Git repositories and add a visual interface on top. Git itself is the system; GitHub is a popular place to use it with a web browser rather than a command line.&lt;/p&gt;




&lt;h2&gt;
  
  
  Part Two: The Problem Git Was Built to Solve — and Why Law Has the Same Problem
&lt;/h2&gt;

&lt;p&gt;Git was invented in 2005 by Linus Torvalds, the creator of Linux, to manage something extraordinarily complex: millions of lines of code being edited simultaneously by thousands of developers around the world.&lt;/p&gt;

&lt;p&gt;The legal profession faces a structurally identical problem.&lt;/p&gt;

&lt;p&gt;Large contracts can run to hundreds of pages. Multiple parties redline the same document over weeks or months. Clauses are added, removed, reworded, restored. Different versions circulate between firms, clients, opposing counsel, and regulators — sometimes simultaneously. And at any moment, someone might need to answer the question: &lt;em&gt;"What was in version seven? And who approved the change from version seven to version eight?"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Right now, most law firms answer that question by digging through email chains. Some use document management systems (DMS) like iManage or NetDocuments, which offer basic version tracking — better than email, but still a long way from what Git provides. The difference is intent and precision: a DMS tells you that a document was saved as a new version at 3pm on Tuesday. Git tells you exactly which words changed, which words were deleted, who made each change, and what note they left explaining why.&lt;/p&gt;

&lt;p&gt;That distinction matters enormously in legal work, where the &lt;em&gt;why&lt;/em&gt; behind a clause change can be as legally significant as the change itself.&lt;/p&gt;




&lt;h2&gt;
  
  
  Part Three: What Git Actually Looks Like in a Legal Context
&lt;/h2&gt;

&lt;p&gt;Let's make this concrete with a scenario.&lt;/p&gt;

&lt;h3&gt;
  
  
  Scenario: The M&amp;amp;A Contract
&lt;/h3&gt;

&lt;p&gt;A mid-sized law firm is handling a merger. The acquisition agreement is 180 pages. Three partners, two associates, and outside counsel for the other party are all making changes over six weeks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Without Git&lt;/strong&gt;, the workflow looks something like this: the document circulates by email. Each person saves a new copy with their name and a date in the filename. After two weeks, there are fourteen versions in a shared folder. Someone overwrites the wrong file. A clause added in version six mysteriously disappears in version nine. Nobody is sure when it happened or why. The client asks for a change history. The associate spends three hours reconstructing it from email timestamps and hoping they haven't missed anything.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;With Git&lt;/strong&gt;, every change is committed with a message. The history looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;March 3  |  J. Thompson  |  "Added force majeure clause per client call 3/3"
March 5  |  S. Patel     |  "Revised indemnification cap — reduced to $2M per opposing counsel"
March 7  |  J. Thompson  |  "Removed arbitration clause — client preference, confirmed in writing"
March 10 |  R. Chen      |  "Added governing law clause — New York jurisdiction agreed"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Each of those entries is a permanent, timestamped, attributed record. Click any one of them and you see a precise diff — every word that was added or removed, shown side by side with what was there before. The entire six-week history of the document is reconstructable in seconds.&lt;/p&gt;

&lt;p&gt;If someone asks: &lt;em&gt;"When did the indemnification cap change, and who authorised it?"&lt;/em&gt; — the answer is one click away.&lt;/p&gt;

&lt;h3&gt;
  
  
  Scenario: The Contract Dispute
&lt;/h3&gt;

&lt;p&gt;Two parties end up in litigation over the terms of a supply agreement. The dispute centres on whether a limitation of liability clause was present in the version that was agreed upon, or was added afterward.&lt;/p&gt;

&lt;p&gt;A law firm using Git can produce a complete, timestamped audit trail: when the clause was added, by whom, with what commit message. It's the equivalent of a notarised log of every document event. This kind of traceability is increasingly valuable in disputes, and some courts are beginning to expect it.&lt;/p&gt;

&lt;p&gt;As one legal technology expert put it: "In a real estate M&amp;amp;A dispute, a firm can avoid liability by producing a version history that shows exact approval timestamps. That audit trail is their first line of defence in court."&lt;/p&gt;

&lt;h3&gt;
  
  
  Scenario: The Policy Document
&lt;/h3&gt;

&lt;p&gt;A large financial institution needs to update its internal compliance policy whenever regulation changes. The policy is 60 pages. Different departments own different sections. Currently, a new Word document is emailed around every quarter with tracked changes turned on — and then someone always accepts all changes before sending it on, losing the revision history.&lt;/p&gt;

&lt;p&gt;With Git, each department works on their section in a branch. Changes are reviewed via pull requests before being merged. The compliance officer has a complete history of every policy change going back years — who changed what, when, and what note they left. When regulators audit, the firm can demonstrate exactly how policies evolved in response to specific regulatory changes.&lt;/p&gt;




&lt;h2&gt;
  
  
  Part Four: Governments Already Do This — And the Results Are Striking
&lt;/h2&gt;

&lt;p&gt;Here is where the story becomes genuinely surprising.&lt;/p&gt;

&lt;p&gt;Legal professionals often assume Git is a developer tool that would need to be "translated" for law. But some governments have already made that translation — and the results show both the enormous potential and the real limitations.&lt;/p&gt;

&lt;h3&gt;
  
  
  Washington D.C.: The City That Put Its Law on GitHub
&lt;/h3&gt;

&lt;p&gt;In 2018, the District of Columbia did something unprecedented: it made GitHub the official, authoritative source for D.C.'s legal code.&lt;/p&gt;

&lt;p&gt;A civic hacker named Joshua Tauberer found a typo in the District of Columbia's legal code and corrected it using GitHub, highlighting the groundbreaking way the District manages its legal code. The District publishes the law on GitHub as an authoritative source — it is where the DC Council stores the digital versions of enacted laws, and this source feeds directly into the Council's DC Code website.&lt;/p&gt;

&lt;p&gt;The practical effects were immediate and meaningful. With the District's previous codification contractor, updates to the DC Code were published three times a year, with a five-to-seven month delay in seeing the latest laws. The Open Law Library has shortened the publication process to about a week after a law is enacted.&lt;/p&gt;

&lt;p&gt;That is not a marginal improvement. It means citizens, lawyers, and courts are working with law that is weeks old instead of months old. The transparency gain is equally significant: anyone in the world can see exactly what changed in D.C.'s legal code, when, and in what version.&lt;/p&gt;

&lt;h3&gt;
  
  
  The U.S. Congress: The Comparative Print Project
&lt;/h3&gt;

&lt;p&gt;At the federal level, the U.S. House of Representatives has been working on what it calls the Comparative Print Project — an effort to bring version control to federal legislation.&lt;/p&gt;

&lt;p&gt;The U.S. Law Revision Counsel compiles the U.S. Code through careful analysis of new laws. Since 2011, the LRC has been using and publishing the results of this analysis in XML format, making it feasible to automatically match the "before" to the "after" text and produce a redlined version showing the changes in context.&lt;/p&gt;

&lt;p&gt;The project addresses a problem that most people don't realise exists: for many laws, particularly those that were recently changed, there is no current official version and no way to see a precise history of amendments over time. In the Canadian House of Commons, a lack of version control led to embarrassing headlines when the Senate debated the wrong version of a government bill — for the second time in less than three months.&lt;/p&gt;

&lt;p&gt;The goal of the Comparative Print Project is to create what Git provides automatically for every software project: a legally relevant diff — the ability to see exactly how a new bill changes existing law, before it passes.&lt;/p&gt;

&lt;h3&gt;
  
  
  New Zealand and the "Better Rules" Movement
&lt;/h3&gt;

&lt;p&gt;Further afield, New Zealand has been a pioneer in what it calls the "Better Rules" approach — a methodology for drafting legislation that is machine-readable, unambiguous, and collaboratively developed by teams of policy experts, lawyers, and technologists.&lt;/p&gt;

&lt;p&gt;The approach represents a fundamental shift in how governments draft rules, bringing multi-disciplinary teams together to look at what's proposed in a Bill or Amendment, virtually model and test the draft rules using real data and likely scenarios, to ensure the rules are implementable and more likely to achieve the intended outcome.&lt;/p&gt;

&lt;p&gt;This is not just about Git specifically — it's about adopting the &lt;em&gt;principles&lt;/em&gt; of version-controlled, collaboratively-drafted, machine-readable documents. The OECD selected this approach from over 500 public sector innovation case studies for its Global Trends Report.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Honest Limitation: Git Wasn't Built for Law
&lt;/h3&gt;

&lt;p&gt;It's worth being clear about something: Git is not a perfect fit for legal documents out of the box. It was built for code — plain text files that follow predictable structures. Legal documents, with their complex formatting, cross-references, page and line numbers, and jurisdiction-specific drafting conventions, don't map cleanly onto Git's assumptions.&lt;/p&gt;

&lt;p&gt;Git is designed specifically for the software development process. The legislative process has a quite different set of requirements and traditions which must be met. It simply isn't possible to bend and distort the legislative process to fit the model prescribed by Git.&lt;/p&gt;

&lt;p&gt;What this means practically is that the &lt;em&gt;concepts&lt;/em&gt; of Git — version history, commits, branches, diffs, pull requests — are the valuable thing, not necessarily Git the exact tool. The future of legal document management will likely involve software built on Git's principles but designed specifically for legal workflows: tools that understand redlining conventions, can handle Word and PDF formats, and integrate with existing legal technology stacks.&lt;/p&gt;

&lt;p&gt;Some of that software already exists. Tools like Ironclad, ContractSafe, and Hyperstart bring version-control thinking to contract management. The legal document management platforms used by major firms — iManage, NetDocuments — are adding increasingly Git-like features. The direction of travel is clear.&lt;/p&gt;




&lt;h2&gt;
  
  
  Part Five: How to Actually Start Using Git's Thinking in a Law Firm Today
&lt;/h2&gt;

&lt;p&gt;You don't need to install Git on day one to start applying its principles. Here is a practical roadmap, from simplest to most advanced.&lt;/p&gt;

&lt;h3&gt;
  
  
  Level 1: Adopt the Commit Message Habit
&lt;/h3&gt;

&lt;p&gt;The most immediately valuable thing Git brings to legal work is the discipline of &lt;em&gt;explaining every change&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Start by making it a firm policy that every time a document is sent with changes, the email must include a brief note describing exactly what changed and why. This isn't Git — it's just good practice. But it's the same habit that makes Git's commit log so powerful.&lt;/p&gt;

&lt;p&gt;Example: instead of &lt;em&gt;"Please see attached revised agreement,"&lt;/em&gt; write: &lt;em&gt;"Revised Section 4.2 — removed liquidated damages clause per opposing counsel's objection on 15 March call. Added right of termination for convenience at client's request."&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That note, attached to every revision, turns your email chain into something resembling a commit log. It takes thirty seconds and creates a paper trail that could be invaluable months later.&lt;/p&gt;

&lt;h3&gt;
  
  
  Level 2: Use a Document Management System with Proper Version Control
&lt;/h3&gt;

&lt;p&gt;If your firm is still managing documents through a shared drive or email attachments, the first step is a proper DMS. Systems like iManage, NetDocuments, or Clio all offer version tracking, access controls, and audit trails. After 20+ years in legal technology, version control is on the short list of things a law firm's document system absolutely must do well.&lt;/p&gt;

&lt;p&gt;This is not the same as Git, but it puts in place the infrastructure — centralised storage, version history, attribution — that Git formalises.&lt;/p&gt;

&lt;h3&gt;
  
  
  Level 3: Use Contract Lifecycle Management (CLM) Software
&lt;/h3&gt;

&lt;p&gt;For firms that handle high volumes of contracts, CLM platforms like Ironclad, Hyperstart, or Icertis bring Git-like thinking directly to legal workflows: structured approval workflows, complete version history, automated audit trails, and clause-level tracking.&lt;/p&gt;

&lt;p&gt;When legal teams get version control right, the payoff is huge. You can prove who made what changes, when they were made, and whether they were approved. Every edit is logged, every comment saved, and access is role-based. You avoid costly he-said-she-said disputes.&lt;/p&gt;

&lt;h3&gt;
  
  
  Level 4: Explore Git Directly for Plain-Text Legal Work
&lt;/h3&gt;

&lt;p&gt;For legal professionals who work with policy documents, regulatory submissions, or internal guidelines — documents that don't require complex Word formatting — using Git directly is increasingly viable.&lt;/p&gt;

&lt;p&gt;Plain text documents (including Markdown, a simple formatting language) work beautifully with Git. A compliance team that manages its policy documents as plain text files in a Git repository gets the full benefit: line-by-line history, branching for draft alternatives, pull requests for review, and a permanent audit trail.&lt;/p&gt;

&lt;p&gt;This is not for everyone. But for legal operations teams, in-house counsel, or legal technology professionals, it's worth exploring. GitHub provides free accounts and extensive documentation. A few hours of setup creates infrastructure that pays dividends for years.&lt;/p&gt;




&lt;h2&gt;
  
  
  Part Six: The Bigger Picture
&lt;/h2&gt;

&lt;p&gt;There is a version of the future where the opacity of legal documents — who added that clause, when this term was agreed, what the original draft looked like — becomes a relic of an older way of working.&lt;/p&gt;

&lt;p&gt;What if you could fire up git blame and see who is responsible for writing each individual line of a bill? Think of how easy it would be to track those responsible, especially if the actual writer was tracked, and not just the bill's official sponsor.&lt;/p&gt;

&lt;p&gt;That vision applies as much to a corporate acquisition agreement as to a piece of legislation. Legal documents are, at their core, a record of decisions made by human beings over time. Version control doesn't change the substance of those decisions. It just makes the record honest.&lt;/p&gt;

&lt;p&gt;The legal profession has long prided itself on precision — on the exact meaning of words, on the careful drafting of clauses, on the documented intent behind every contractual provision. Git is simply a technology that makes that precision verifiable. Every change, every decision, every iteration: provably recorded, forever.&lt;/p&gt;

&lt;p&gt;The question isn't whether version control belongs in legal work. It clearly does. The question is how long it takes the profession to fully recognise something that software engineers worked out decades ago — and that Washington D.C. has already proved works.&lt;/p&gt;




&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Git&lt;/strong&gt; is a system that tracks every change to a document: who made it, when, and why&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;In legal terms:&lt;/strong&gt; it's a permanent, timestamped audit trail for every draft, revision, and decision in a document's history&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The problem it solves:&lt;/strong&gt; the &lt;code&gt;FINAL_v4_ACTUALLYFINAL.docx&lt;/code&gt; email chain, missing revision history, and undocumentable clause changes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Key concepts:&lt;/strong&gt; repository (project folder), commit (saved snapshot + explanation), branch (parallel draft), diff (what changed), pull request (formal review), git blame (who wrote each line)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Real-world legal use:&lt;/strong&gt; Washington D.C. uses GitHub as the official source for its legal code; the U.S. House of Representatives' Comparative Print Project applies version control to federal legislation; New Zealand's "Better Rules" programme uses similar principles for drafting law&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;For law firms today:&lt;/strong&gt; start with commit message discipline, invest in a proper DMS or CLM platform, and for plain-text documents, consider using Git directly&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The honest limitation:&lt;/strong&gt; Git was built for code, not legal documents — but its &lt;em&gt;principles&lt;/em&gt; are invaluable, and legal-specific tools are catching up fast&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;If this sparked a question or a "we actually tried something like this" story, share it in the comments. The legal technology conversation is just getting interesting.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>git</category>
      <category>productivity</category>
      <category>tooling</category>
      <category>writing</category>
    </item>
    <item>
      <title>The "Just Run It" Problem: Why AI + Bash Is Everyone's Business Now</title>
      <dc:creator>Igor Kan</dc:creator>
      <pubDate>Sat, 21 Mar 2026 05:22:36 +0000</pubDate>
      <link>https://dev.to/igorkan/the-just-run-it-problem-why-ai-bash-is-everyones-business-now-1p0f</link>
      <guid>https://dev.to/igorkan/the-just-run-it-problem-why-ai-bash-is-everyones-business-now-1p0f</guid>
      <description>&lt;p&gt;There's a moment that's becoming increasingly common.&lt;/p&gt;

&lt;p&gt;Someone opens up an AI tool — Claude, ChatGPT, Cursor, or any number of others — types a request like &lt;em&gt;"set up my project"&lt;/em&gt; or &lt;em&gt;"clean up these files"&lt;/em&gt; or &lt;em&gt;"automate this task"&lt;/em&gt;, and the AI responds with something like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-rf&lt;/span&gt; ~/Documents/old-project
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The person doesn't know what that means. But the AI said it, so they copy it, paste it into their terminal, and hit Enter.&lt;/p&gt;

&lt;p&gt;Their Documents folder is now gone. Permanently.&lt;/p&gt;

&lt;p&gt;This is not a hypothetical. It happens. And as AI agents become more powerful — capable of running commands on your computer without you even typing them — the stakes are getting higher. Fast.&lt;/p&gt;

&lt;p&gt;This article is for anyone who uses AI tools and has ever thought &lt;em&gt;"I'll just let it handle it."&lt;/em&gt; You don't need to know how to code. But you do need to understand what's happening under the hood — because right now, that gap in understanding is where things go wrong.&lt;/p&gt;




&lt;h2&gt;
  
  
  First: What Is Bash, and Why Does AI Care About It?
&lt;/h2&gt;

&lt;p&gt;Bash is the language of the terminal — the black (or white) command-line window you've probably seen developers use and assumed was only for them.&lt;/p&gt;

&lt;p&gt;Think of your computer's visual interface — the icons, folders, drag-and-drop — as the "polite" version of your computer. Bash is the direct version. Instead of clicking &lt;em&gt;File → Delete&lt;/em&gt;, you type a command. Instead of dragging a folder somewhere, you write an instruction.&lt;/p&gt;

&lt;p&gt;It's powerful because it's direct. You can do in one line what would take ten clicks. You can automate tasks that would take hours of manual work. You can control things the visual interface doesn't even expose.&lt;/p&gt;

&lt;p&gt;And here's the thing: &lt;strong&gt;AI agents love bash.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When an AI agent "does something" on your computer — creates a file, moves data, runs a script, installs software — it's almost always using bash commands behind the scenes. The friendly chat interface is just a wrapper. The actual work happens in the terminal.&lt;/p&gt;

&lt;p&gt;Which means the AI is, in many cases, typing on your behalf. And unlike you, it doesn't hesitate.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why Bash Is Becoming an AI Skill (Not Just a Developer Skill)
&lt;/h2&gt;

&lt;p&gt;Five years ago, if someone said "you should learn bash," they meant developers and sysadmins. It was a niche skill for people who lived in terminals.&lt;/p&gt;

&lt;p&gt;That's no longer true.&lt;/p&gt;

&lt;p&gt;AI tools have quietly put bash into the hands of everyone — not by teaching people to write it, but by writing it for them. When you ask Claude to "organize your downloads folder" or ask an AI coding assistant to "set up your environment," the AI figures out the bash commands and runs them.&lt;/p&gt;

&lt;p&gt;This is genuinely useful. It's also genuinely risky if you have no idea what's being run.&lt;/p&gt;

&lt;p&gt;Here's why this matters for non-developers specifically:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Writers&lt;/strong&gt; using AI to manage manuscripts, rename files, or automate backups are increasingly working with tools that run terminal commands.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lawyers and researchers&lt;/strong&gt; using AI to process documents, sort files, or batch-rename folders are in the same position.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Small business owners&lt;/strong&gt; using AI to automate invoicing, move files between folders, or set up simple workflows — same thing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Anyone using AI agents&lt;/strong&gt; — tools that don't just answer questions but actually &lt;em&gt;do things&lt;/em&gt; on your computer or in your accounts — needs a basic mental model of what's happening.&lt;/p&gt;

&lt;p&gt;You don't need to write bash. But you need to know when an AI is running it on your behalf, and what questions to ask before you let it.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Three Ways This Goes Wrong
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. The Irreversible Command
&lt;/h3&gt;

&lt;p&gt;Some bash commands cannot be undone. The most infamous:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-rf&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This deletes files permanently. No Trash. No recycle bin. No recovery. Just gone.&lt;/p&gt;

&lt;p&gt;An AI agent that has permission to run commands on your system can run this. If it misunderstands your request — or if you misunderstood what you were asking it to do — the results can be catastrophic.&lt;/p&gt;

&lt;p&gt;A real-world example: someone asks an AI to "clean up the temp files in my project." The AI interprets this broadly, runs a deletion command, and removes files that weren't temp files at all. The person didn't know to check. The AI didn't ask for confirmation. The files are gone.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The lesson:&lt;/strong&gt; Before any AI runs a deletion, moving, or overwriting command, you should know what it's touching. "Delete these files" should always come with a list of exactly which files, reviewed by you first.&lt;/p&gt;




&lt;h3&gt;
  
  
  2. The Runaway Script
&lt;/h3&gt;

&lt;p&gt;Bash can do things in loops. One command can run a thousand times. An AI agent that's tasked with "processing all the files in this folder" might write a script that touches every single file on your hard drive if the scope isn't clearly defined.&lt;/p&gt;

&lt;p&gt;This is less about malice and more about ambiguity. AI agents are optimistic interpreters. They try to do what you asked. If you weren't specific, they fill in the gaps — and their gaps and your gaps might not match.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The lesson:&lt;/strong&gt; Scope matters. "Do this to my files" is very different from "do this to the files in this specific folder." Always be explicit about what the AI has access to.&lt;/p&gt;




&lt;h3&gt;
  
  
  3. The Permissions Creep
&lt;/h3&gt;

&lt;p&gt;When you install software or run certain scripts, bash sometimes asks for elevated permissions — essentially the ability to do anything on your computer, including things that affect system files, other users, or security settings.&lt;/p&gt;

&lt;p&gt;An AI agent that prompts you for your password is asking for those elevated permissions. Once granted, it can do far more than you likely intended.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The lesson:&lt;/strong&gt; If an AI tool asks for your system password, stop and ask why. Understand what it needs elevated access for before you give it.&lt;/p&gt;




&lt;h2&gt;
  
  
  So Should You Let AI Run Bash Commands Unsupervised?
&lt;/h2&gt;

&lt;p&gt;The honest answer: &lt;strong&gt;not yet, and not without guardrails.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's not a reason to avoid these tools. It's a reason to use them thoughtfully.&lt;/p&gt;

&lt;p&gt;Here's a practical framework for thinking about it:&lt;/p&gt;

&lt;h3&gt;
  
  
  Low risk — generally fine to let AI handle it
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Reading files and summarizing them&lt;/li&gt;
&lt;li&gt;Creating new files in a specific location you've defined&lt;/li&gt;
&lt;li&gt;Renaming files according to a pattern you've reviewed&lt;/li&gt;
&lt;li&gt;Running commands where the worst case is easy to reverse&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Medium risk — review before running
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Moving large numbers of files&lt;/li&gt;
&lt;li&gt;Installing software&lt;/li&gt;
&lt;li&gt;Making changes to configuration files&lt;/li&gt;
&lt;li&gt;Anything that touches multiple folders&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  High risk — always confirm, always review
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Anything involving deletion&lt;/li&gt;
&lt;li&gt;Anything requiring your password&lt;/li&gt;
&lt;li&gt;Anything that touches system files or settings&lt;/li&gt;
&lt;li&gt;Anything you don't understand and can't verify&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The key question to ask is: &lt;strong&gt;"If this goes wrong, can I undo it?"&lt;/strong&gt; If the answer is no, you should understand exactly what's being run before it runs.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Guardrails That Actually Help
&lt;/h2&gt;

&lt;p&gt;You don't need to become a bash expert. But a few habits go a long way:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ask the AI to explain before it executes.&lt;/strong&gt; Most good AI tools will tell you what they're about to do if you ask. "Tell me what commands you're going to run and why before you run them" is a completely reasonable thing to say to an AI agent.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ask for a dry run.&lt;/strong&gt; Many bash commands have a "preview" mode that shows you what would happen without actually doing it. You can ask the AI to show you the dry run first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Work in a test folder.&lt;/strong&gt; When trying something new, create a folder with copies of your files and let the AI work there first. That way, the worst case is losing a copy, not the original.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Read the command, even if you don't understand all of it.&lt;/strong&gt; You don't need to be fluent in bash to notice red flags. If you see &lt;code&gt;rm&lt;/code&gt;, that's deletion. If you see a path you don't recognize, ask what it is. If something looks broad — like &lt;code&gt;/*&lt;/code&gt; which means "everything" — ask for clarification.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use AI tools that show their work.&lt;/strong&gt; The best AI agent interfaces make visible what commands are being run, in real time. Prefer tools that don't hide this from you.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Bigger Picture
&lt;/h2&gt;

&lt;p&gt;AI agents are becoming genuinely capable. In the next few years, it won't be unusual for an AI to manage files, run automations, interact with your email, and execute complex multi-step workflows — all from a single instruction you gave it in plain English.&lt;/p&gt;

&lt;p&gt;This is mostly a good thing. The productivity gains are real. The reduction in tedious work is real.&lt;/p&gt;

&lt;p&gt;But there's a version of this where people hand over more and more control to systems they don't understand, and occasionally something goes very wrong — not because the AI is malicious, but because the human didn't know what questions to ask.&lt;/p&gt;

&lt;p&gt;The goal isn't to make everyone a bash programmer. The goal is to close the understanding gap just enough that you can be an informed participant in what your AI tools are doing on your behalf.&lt;/p&gt;

&lt;p&gt;Bash is no longer just a developer skill. It's becoming AI literacy. And AI literacy is becoming — quietly, quickly — something everyone needs.&lt;/p&gt;




&lt;h2&gt;
  
  
  The One Thing to Remember
&lt;/h2&gt;

&lt;p&gt;If an AI agent is about to do something on your computer and you don't understand what it's doing: &lt;strong&gt;ask it to explain, in plain English, exactly what will happen and whether it can be undone.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That one habit will save you more times than you know.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Found this useful? Share it with someone who uses AI tools but hasn't thought about what's happening under the hood. They'll thank you later.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>beginners</category>
      <category>cli</category>
      <category>security</category>
    </item>
  </channel>
</rss>
