<?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: Javier Leandro Arancibia</title>
    <description>The latest articles on DEV Community by Javier Leandro Arancibia (@javimosch).</description>
    <link>https://dev.to/javimosch</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1655837%2F30baec18-fb3d-4a4b-97af-0441d12b5f28.jpg</url>
      <title>DEV Community: Javier Leandro Arancibia</title>
      <link>https://dev.to/javimosch</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/javimosch"/>
    <language>en</language>
    <item>
      <title>I let an AI agent write the tests for my access-control layer</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Thu, 25 Jun 2026 21:29:28 +0000</pubDate>
      <link>https://dev.to/javimosch/i-let-an-ai-agent-write-the-tests-for-my-access-control-layer-2fh7</link>
      <guid>https://dev.to/javimosch/i-let-an-ai-agent-write-the-tests-for-my-access-control-layer-2fh7</guid>
      <description>&lt;p&gt;Fourth in the series. I've been giving &lt;strong&gt;mago&lt;/strong&gt; — an autonomous agent team that runs over a GitHub repo on your own LLM key — real tasks on my &lt;em&gt;own&lt;/em&gt; repos: a &lt;a href="https://dev.to/javimosch/i-let-an-autonomous-agent-fix-my-own-deploy-cli-here-is-the-pr-it-shipped-4l6n"&gt;feature in Go&lt;/a&gt;, a &lt;a href="https://dev.to/javimosch/same-agent-different-language-mago-fixed-a-crashing-test-in-my-zig-cli-3553"&gt;crash fix in Zig&lt;/a&gt;, and a &lt;a href="https://dev.to/javimosch/an-ai-agent-fixed-my-red-python-test-suite-without-gutting-the-tests-16b6"&gt;refactor in Python it wasn't allowed to cheat on&lt;/a&gt;. This time, the one that actually made me nervous: &lt;strong&gt;let it test my access-control layer.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The gap
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;superbackend&lt;/code&gt; is my Node.js backend toolkit. Its RBAC middleware — &lt;code&gt;src/middleware/rbac.js&lt;/code&gt;: &lt;code&gt;requireRight&lt;/code&gt;, &lt;code&gt;requireModuleAccess&lt;/code&gt;, and a basic-auth super-admin bypass — had &lt;strong&gt;zero tests&lt;/strong&gt;. Untested authorization is the scariest kind of untested code: a silent regression there is a security hole, not a bug report.&lt;/p&gt;

&lt;p&gt;So I filed an issue: add a real unit-test suite for it. Mock the service so it needs no DB; cover the actual decisions; &lt;strong&gt;don't change the behavior&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it shipped
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;src/middleware/rbac.test.js&lt;/code&gt; — &lt;strong&gt;25 tests&lt;/strong&gt;, +326 lines, covering each export against fake &lt;code&gt;req/res/next&lt;/code&gt; with the rbac service mocked out:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;requireRight&lt;/code&gt; — calls &lt;code&gt;next()&lt;/code&gt; when the right is granted, returns &lt;strong&gt;403&lt;/strong&gt; when denied, the super-admin basic-auth path bypasses the check, &lt;code&gt;orgId&lt;/code&gt; resolves from &lt;code&gt;params&lt;/code&gt;/&lt;code&gt;query&lt;/code&gt;/&lt;code&gt;body&lt;/code&gt; (and a custom resolver), and a service error is handled rather than crashing the request.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;requireModuleAccess&lt;/code&gt; — allow/deny for both read and write actions.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;isBasicAuthSuperAdmin&lt;/code&gt; — the true/false cases.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No change to &lt;code&gt;rbac.js&lt;/code&gt; itself — tests only, exactly as asked.&lt;/p&gt;

&lt;h2&gt;
  
  
  Verified
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="gp"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;npx jest src/middleware/rbac.test.js
&lt;span class="go"&gt;Tests: 25 passed, 25 total
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And the full suite stayed green — the PR is purely additive (&lt;code&gt;+326/-0&lt;/code&gt;, one new file), introducing zero new failures. Merged. My access-control layer now has a safety net it didn't have this morning.&lt;/p&gt;

&lt;h2&gt;
  
  
  Four repos, four stacks, four kinds of work
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Stack&lt;/th&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Go&lt;/td&gt;
&lt;td&gt;a feature&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zig&lt;/td&gt;
&lt;td&gt;a crash fix&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Python&lt;/td&gt;
&lt;td&gt;a refactor (without gutting the tests)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Node&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;test coverage for security-critical RBAC&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Same loop every time: file an issue, the agent implements it on your own key, runs the repo's own tests, and opens a &lt;strong&gt;PR you review&lt;/strong&gt; — verified, not blindly merged. Not pinned to a language, a framework, or a kind of task.&lt;/p&gt;

&lt;p&gt;The honest framing hasn't changed: it's a reliable autonomous dev shop for &lt;strong&gt;well-scoped, verifiable work&lt;/strong&gt; — features, fixes, refactors, and the tests you keep meaning to write. Not "build me a startup."&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;CLI-only, BYOK (your Claude Code or tau key — it never resells completions), €20/mo. First 10 founding operators &lt;strong&gt;free during the beta&lt;/strong&gt;, with a direct line to me:&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://mago.intrane.fr" rel="noopener noreferrer"&gt;https://mago.intrane.fr&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://mago.intrane.fr/install.sh | sh
mago register
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>ai</category>
      <category>node</category>
      <category>testing</category>
      <category>security</category>
    </item>
    <item>
      <title>An AI agent fixed my red Python test suite — without gutting the tests</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Thu, 25 Jun 2026 21:16:17 +0000</pubDate>
      <link>https://dev.to/javimosch/an-ai-agent-fixed-my-red-python-test-suite-without-gutting-the-tests-16b6</link>
      <guid>https://dev.to/javimosch/an-ai-agent-fixed-my-red-python-test-suite-without-gutting-the-tests-16b6</guid>
      <description>&lt;p&gt;This is the third in a short series. I've been pointing &lt;strong&gt;mago&lt;/strong&gt; — an autonomous agent team that runs over a GitHub repo on your own LLM key — at my &lt;em&gt;own&lt;/em&gt; repos and giving it real tasks. So far: a &lt;a href="https://dev.to/javimosch/i-let-an-autonomous-agent-fix-my-own-deploy-cli-here-is-the-pr-it-shipped-4l6n"&gt;feature in Go&lt;/a&gt; and a &lt;a href="https://dev.to/javimosch/same-agent-different-language-mago-fixed-a-crashing-test-in-my-zig-cli-3553"&gt;crash fix in Zig&lt;/a&gt;. This time it's &lt;strong&gt;Python&lt;/strong&gt;, and the question every skeptic asks: &lt;em&gt;won't it just hack the tests to make them pass?&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The setup
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;boilerplate-cli-ui-python&lt;/code&gt; is my agent-first Python CLI boilerplate. Its test suite was &lt;strong&gt;red&lt;/strong&gt; — 4 failing tests:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;FAILED tests/test_config.py::test_config_defaults - assert False == True
FAILED tests/test_output.py::test_output_formatter_json_mode - SystemExit: 0
FAILED tests/test_output.py::test_output_formatter_human_mode - SystemExit: 0
FAILED tests/test_output.py::test_output_error_json - SystemExit: 85
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I filed an issue with one explicit instruction: &lt;strong&gt;fix the root cause, don't gut the tests.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What it actually did
&lt;/h2&gt;

&lt;p&gt;It diagnosed &lt;em&gt;two&lt;/em&gt; real bugs:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A config default mismatch (&lt;code&gt;no_color&lt;/code&gt; defaulted to the wrong value).&lt;/li&gt;
&lt;li&gt;The interesting one: &lt;code&gt;OutputFormatter.output()&lt;/code&gt; and &lt;code&gt;output_error()&lt;/code&gt; called &lt;code&gt;sys.exit()&lt;/code&gt; &lt;em&gt;inside the formatter&lt;/em&gt;, right after writing. That makes them impossible to unit-test — the test can't capture-then-assert because the process just exits — and it's a design smell: a formatter shouldn't own process control.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The fix wasn't "delete the assertions." It was a &lt;strong&gt;separation of concerns&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# before — formatter exits, untestable
&lt;/span&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;output_error&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;self&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;code&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="p"&gt;...&lt;/span&gt;&lt;span class="k"&gt;print&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="bp"&gt;...&lt;/span&gt;
    &lt;span class="n"&gt;sys&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;exit&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;code&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# after — the formatter just formats; the CALL SITE owns the exit
# src/output.py: no sys.exit at all
# src/main.py / src/cli.py, at every error path:
&lt;/span&gt;&lt;span class="n"&gt;formatter&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;output_error&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;to_dict&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;code&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;sys&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;exit&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;code&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It pulled &lt;code&gt;sys.exit()&lt;/code&gt; out of the formatter and added it at &lt;strong&gt;every&lt;/strong&gt; error call-site in &lt;code&gt;main.py&lt;/code&gt;/&lt;code&gt;cli.py&lt;/code&gt; — so production exit codes are &lt;strong&gt;preserved&lt;/strong&gt; while the formatter becomes testable. Then it rewrote the tests to assert the error &lt;em&gt;payload&lt;/em&gt; instead of requiring the process to die.&lt;/p&gt;

&lt;h2&gt;
  
  
  I verified it — and checked specifically for cheating
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="gp"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;python &lt;span class="nt"&gt;-m&lt;/span&gt; pytest
&lt;span class="go"&gt;20 passed
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Green is cheap if you gut tests, so I checked the diff:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;grep sys.exit src/output.py&lt;/code&gt; → &lt;strong&gt;0&lt;/strong&gt; (removed, as intended)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;sys.exit(error.code)&lt;/code&gt; added at every error path in &lt;code&gt;main.py&lt;/code&gt;/&lt;code&gt;cli.py&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;the CLI still exits non-zero on errors&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It fixed the design, kept the behavior, and made the tests meaningful. Merged.&lt;/p&gt;

&lt;h2&gt;
  
  
  Three repos, three stacks, one loop
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Go&lt;/strong&gt; — a feature (a command suggester).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zig&lt;/strong&gt; — a crash fix (red → green).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Python&lt;/strong&gt; — a real refactor that made a broken suite green &lt;em&gt;without weakening it&lt;/em&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Same loop every time: file an issue, the agent implements it on your own key, runs the repo's own tests, and opens a &lt;strong&gt;PR&lt;/strong&gt; you review — verified, not blindly merged. It isn't pinned to a language or a framework, and — the part I actually cared about — when told not to cheat, it didn't.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;CLI-only, BYOK (your Claude Code or tau key — it never resells completions), €20/mo. First 10 founding operators &lt;strong&gt;free during the beta&lt;/strong&gt;, with a direct line to me:&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://mago.intrane.fr" rel="noopener noreferrer"&gt;https://mago.intrane.fr&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://mago.intrane.fr/install.sh | sh
mago register
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you point it at one of your own repos — any stack — I'd love to hear how it goes.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>python</category>
      <category>testing</category>
      <category>automation</category>
    </item>
    <item>
      <title>Same agent, different language: mago fixed a crashing test in my Zig CLI</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Thu, 25 Jun 2026 20:43:30 +0000</pubDate>
      <link>https://dev.to/javimosch/same-agent-different-language-mago-fixed-a-crashing-test-in-my-zig-cli-3553</link>
      <guid>https://dev.to/javimosch/same-agent-different-language-mago-fixed-a-crashing-test-in-my-zig-cli-3553</guid>
      <description>&lt;p&gt;In a &lt;a href="https://dev.to/javimosch/i-let-an-autonomous-agent-fix-my-own-deploy-cli-here-is-the-pr-it-shipped-4l6n"&gt;previous post&lt;/a&gt; I let &lt;strong&gt;mago&lt;/strong&gt; — an autonomous agent team that runs over a GitHub repo — ship a &lt;em&gt;feature&lt;/em&gt; to my Go deploy CLI. The obvious next question: does it generalize past Go, and past "add a feature"? So I pointed it at a &lt;strong&gt;Zig&lt;/strong&gt; project and a &lt;strong&gt;crashing test&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The bug
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;tau&lt;/code&gt; is my agent-first AI CLI, reimplemented in Zig. Its test suite had one test that didn't just fail — it &lt;strong&gt;crashed&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;error: 'agents_md.test.scanAgentsMd returns empty for bad path' terminated with signal ABRT
Build Summary: 1/3 steps succeeded (1 failed); 132/133 tests passed (1 crashed)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;132 green, 1 hard abort — the kind of thing that sits red in CI because "it's just a test."&lt;/p&gt;

&lt;h2&gt;
  
  
  What mago did
&lt;/h2&gt;

&lt;p&gt;It read the test and found the &lt;em&gt;root cause&lt;/em&gt;, not the symptom. The test was passing &lt;code&gt;undefined&lt;/code&gt; as the &lt;code&gt;io: std.Io&lt;/code&gt; argument:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight zig"&gt;&lt;code&gt;&lt;span class="c"&gt;// before&lt;/span&gt;
&lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;scanAgentsMd&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;undefined&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;std&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;testing&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;allocator&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;std&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;testing&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;allocator&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;"/nonexistent"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;catch&lt;/span&gt; &lt;span class="o"&gt;...&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;scanAgentsMd&lt;/code&gt; uses &lt;code&gt;io&lt;/code&gt;, so in a debug build Zig traps the undefined access and aborts — &lt;em&gt;before&lt;/em&gt; the test ever reaches the bad-path logic it meant to exercise. The fix is one line: pass a real io.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight zig"&gt;&lt;code&gt;&lt;span class="c"&gt;// after&lt;/span&gt;
&lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;scanAgentsMd&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;std&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;testing&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;io&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;std&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;testing&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;allocator&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;std&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;testing&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="py"&gt;allocator&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;"/nonexistent"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;catch&lt;/span&gt; &lt;span class="k"&gt;return&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It opened a PR with exactly that.&lt;/p&gt;

&lt;h2&gt;
  
  
  Verified
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="gp"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;zig build &lt;span class="nb"&gt;test&lt;/span&gt;
&lt;span class="gp"&gt;Build Summary: 3/3 steps succeeded;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;133/133 tests passed
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Red → green. Merged.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two repos, two stacks, one loop
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Last time:&lt;/strong&gt; a &lt;em&gt;feature&lt;/em&gt; in &lt;strong&gt;Go&lt;/strong&gt; (a "did you mean" command suggester for a 32-command CLI).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;This time:&lt;/strong&gt; a &lt;em&gt;bug fix&lt;/em&gt; in &lt;strong&gt;Zig&lt;/strong&gt; (a crashing test, root-caused and fixed).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Same loop both times: file a GitHub issue, the agent implements it on your own LLM key, runs the repo's own build/tests, and opens a &lt;strong&gt;PR&lt;/strong&gt; — verified, not blindly auto-merged. It isn't tied to a language or a framework; it works against whatever your repo's &lt;code&gt;build&lt;/code&gt;/&lt;code&gt;test&lt;/code&gt; command says is green.&lt;/p&gt;

&lt;p&gt;It's good at &lt;strong&gt;well-scoped, verifiable work&lt;/strong&gt; — features, fixes, tests, refactors, DX. Not "build me a startup." Honest framing: a reliable autonomous dev shop you steer with a roadmap.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;CLI-only, BYOK (your Claude Code or tau key — it never resells completions), €20/mo. First 10 founding operators &lt;strong&gt;free during the beta&lt;/strong&gt;, with a direct line to me:&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://mago.intrane.fr" rel="noopener noreferrer"&gt;https://mago.intrane.fr&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://mago.intrane.fr/install.sh | sh
mago register
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you point it at one of your own repos — any stack — I'd love to hear how it goes.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>zig</category>
      <category>testing</category>
      <category>automation</category>
    </item>
    <item>
      <title>I let an autonomous agent fix my own deploy CLI — here is the PR it shipped</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Thu, 25 Jun 2026 20:26:05 +0000</pubDate>
      <link>https://dev.to/javimosch/i-let-an-autonomous-agent-fix-my-own-deploy-cli-here-is-the-pr-it-shipped-4l6n</link>
      <guid>https://dev.to/javimosch/i-let-an-autonomous-agent-fix-my-own-deploy-cli-here-is-the-pr-it-shipped-4l6n</guid>
      <description>&lt;p&gt;While building &lt;strong&gt;mago&lt;/strong&gt; — a CLI that runs a small autonomous "company" of AI agents over a GitHub repo — I did the obvious test: point it at one of &lt;em&gt;my own&lt;/em&gt; tools and give it a real task. No demo repo, no cherry-picked example. Here's exactly what happened, PR included.&lt;/p&gt;

&lt;h2&gt;
  
  
  The tool and the task
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;hotify-cli&lt;/code&gt; is my Go CLI for deploying web apps behind Traefik + Cloudflare (it's literally what deploys mago's own backend). It has 32 subcommands, and like a lot of CLIs, a mistyped command just dumped the entire ~130-line usage block and exited. Annoying for humans, noisy for agents.&lt;/p&gt;

&lt;p&gt;So I filed a normal GitHub issue:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;feat: suggest the nearest command on unknown input ("did you mean"), not a full-usage dump&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;…labeled it &lt;code&gt;mago&lt;/code&gt;, and let the agent take it.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the agent did, unattended
&lt;/h2&gt;

&lt;p&gt;mago routed the issue to its implementer, which:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cloned the repo and read the 32-command dispatch in &lt;code&gt;main.go&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Wrote &lt;code&gt;suggest.go&lt;/code&gt; — a rune-aware Levenshtein distance + a prefix-match shortcut + a canonical command list, with a length-aware threshold so unrelated typos don't surface a misleading suggestion.&lt;/li&gt;
&lt;li&gt;Wrote &lt;code&gt;suggest_test.go&lt;/code&gt; — 11 cases (typos, prefix matches, unrelated input).&lt;/li&gt;
&lt;li&gt;Wired it into the &lt;code&gt;default&lt;/code&gt; case of the dispatch.&lt;/li&gt;
&lt;li&gt;Ran &lt;code&gt;gofmt&lt;/code&gt; / &lt;code&gt;go vet&lt;/code&gt; / &lt;code&gt;go build&lt;/code&gt; / &lt;code&gt;go test&lt;/code&gt;, then opened a pull request.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;About &lt;strong&gt;3 minutes, on Claude Sonnet, with no human in the per-step loop&lt;/strong&gt;. Crucially it opened a &lt;strong&gt;PR&lt;/strong&gt; — it didn't push to main. The merge stayed my call.&lt;/p&gt;

&lt;h2&gt;
  
  
  I verified it (don't trust the summary)
&lt;/h2&gt;

&lt;p&gt;I checked out the branch myself:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;gofmt: clean   go vet: clean   go build: OK   go test: ok
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And the actual behavior:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="gp"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;hotify-cli statuss
&lt;span class="go"&gt;hotify-cli: unknown command "statuss"
Did you mean "status"?
Run 'hotify-cli help' for usage.

&lt;/span&gt;&lt;span class="gp"&gt;$&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;hotify-cli deploi
&lt;span class="go"&gt;Did you mean "deploy"?
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Correct, scoped, tested, dependency-free. Merged.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why it works — and where it doesn't
&lt;/h2&gt;

&lt;p&gt;The thing that makes it trustworthy isn't the model, it's the &lt;strong&gt;loop&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Verified autonomy&lt;/strong&gt; — a PR only auto-merges if review passes &lt;em&gt;and&lt;/em&gt; the repo's own build/tests are green; failing or unverifiable work waits for you. (I kept this one review-only.)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub-native&lt;/strong&gt; — issues = tasks, labels = status, PRs = deliverables. The worker dials &lt;em&gt;out&lt;/em&gt;, so there's no inbound webhook to expose.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;BYOK&lt;/strong&gt; — it drives your own Claude Code or tau key. It never resells completions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It's genuinely good at &lt;strong&gt;well-scoped, verifiable work&lt;/strong&gt;: tests, refactors, small features, CLI/UX fixes. It is &lt;em&gt;not&lt;/em&gt; "build me a startup." Honest framing — it's a reliable autonomous dev shop you steer with a roadmap, not magic.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;mago is CLI-only, BYOK, €20/mo. I'm onboarding the &lt;strong&gt;first 10 founding operators free during the beta&lt;/strong&gt;, with a direct line to me:&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://mago.intrane.fr" rel="noopener noreferrer"&gt;https://mago.intrane.fr&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://mago.intrane.fr/install.sh | sh
mago register
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you try it on one of your own repos, I'd love to hear where it helped — and where it annoyed you.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>go</category>
      <category>automation</category>
      <category>devtools</category>
    </item>
    <item>
      <title>Append-CLIP-Interrogation: A SuperCLI Plugin Guide</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Wed, 24 Jun 2026 03:44:35 +0000</pubDate>
      <link>https://dev.to/javimosch/append-clip-interrogation-a-supercli-plugin-guide-5bao</link>
      <guid>https://dev.to/javimosch/append-clip-interrogation-a-supercli-plugin-guide-5bao</guid>
      <description>&lt;h1&gt;
  
  
  Append-CLIP-Interrogation
&lt;/h1&gt;

&lt;p&gt;Simple python script to automatically append caption generated by CLIP interrogator to an image file&lt;/p&gt;

&lt;h2&gt;
  
  
  Source
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/Append-CLIP-Interrogation/Append-CLIP-Interrogation" rel="noopener noreferrer"&gt;https://github.com/Append-CLIP-Interrogation/Append-CLIP-Interrogation&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;python&lt;/li&gt;
&lt;li&gt;tool&lt;/li&gt;
&lt;li&gt;development&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Check GitHub repository for installation instructions&lt;/li&gt;
&lt;li&gt;Verify: Append-CLIP-Interrogation --version&lt;/li&gt;
&lt;li&gt;supercli plugins install ./plugins/Append-CLIP-Interrogation --on-conflict replace --json&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  About SuperCLI
&lt;/h2&gt;

&lt;p&gt;This plugin is part of the &lt;a href="https://github.com/javimosch/supercli" rel="noopener noreferrer"&gt;SuperCLI&lt;/a&gt; ecosystem - a unified CLI plugin manager for AI agents and developers.&lt;/p&gt;

&lt;p&gt;Discover, install, and orchestrate thousands of command-line tools with SuperCLI.&lt;/p&gt;

</description>
      <category>supercli</category>
      <category>cli</category>
      <category>python</category>
      <category>tool</category>
    </item>
    <item>
      <title>App-Store-Connect-CLI: A SuperCLI Plugin Guide</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Wed, 24 Jun 2026 02:44:35 +0000</pubDate>
      <link>https://dev.to/javimosch/app-store-connect-cli-a-supercli-plugin-guide-hlh</link>
      <guid>https://dev.to/javimosch/app-store-connect-cli-a-supercli-plugin-guide-hlh</guid>
      <description>&lt;h1&gt;
  
  
  App-Store-Connect-CLI
&lt;/h1&gt;

&lt;p&gt;Fast, scriptable CLI for the App Store Connect API. Automate TestFlight, builds, submissions, signing, analytics, screenshots, subscriptions, and more. JSON-first, no interactive prompts&lt;/p&gt;

&lt;h2&gt;
  
  
  Source
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/App-Store-Connect-CLI/App-Store-Connect-CLI" rel="noopener noreferrer"&gt;https://github.com/App-Store-Connect-CLI/App-Store-Connect-CLI&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;App-Store-Connect-CLI&lt;/li&gt;
&lt;li&gt;Go&lt;/li&gt;
&lt;li&gt;cli&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;pip install app-store-connect-cli&lt;/li&gt;
&lt;li&gt;Verify: app-store-connect-cli --version&lt;/li&gt;
&lt;li&gt;supercli plugins install ./plugins/App-Store-Connect-CLI --on-conflict replace --json&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  About SuperCLI
&lt;/h2&gt;

&lt;p&gt;This plugin is part of the &lt;a href="https://github.com/javimosch/supercli" rel="noopener noreferrer"&gt;SuperCLI&lt;/a&gt; ecosystem - a unified CLI plugin manager for AI agents and developers.&lt;/p&gt;

&lt;p&gt;Discover, install, and orchestrate thousands of command-line tools with SuperCLI.&lt;/p&gt;

</description>
      <category>supercli</category>
      <category>cli</category>
      <category>appstoreconnectcli</category>
      <category>go</category>
    </item>
    <item>
      <title>AiToEarn: A SuperCLI Plugin Guide</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Wed, 24 Jun 2026 01:44:35 +0000</pubDate>
      <link>https://dev.to/javimosch/aitoearn-a-supercli-plugin-guide-1gn5</link>
      <guid>https://dev.to/javimosch/aitoearn-a-supercli-plugin-guide-1gn5</guid>
      <description>&lt;h1&gt;
  
  
  AiToEarn
&lt;/h1&gt;

&lt;p&gt;AI-powered earning platform CLI for monetizing AI capabilities and services&lt;/p&gt;

&lt;h2&gt;
  
  
  Source
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/AiToEarn/AiToEarn" rel="noopener noreferrer"&gt;https://github.com/AiToEarn/AiToEarn&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;AiToEarn&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;cli&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;pip install aitoearn&lt;/li&gt;
&lt;li&gt;Verify: aitoearn --version&lt;/li&gt;
&lt;li&gt;supercli plugins install ./plugins/AiToEarn --on-conflict replace --json&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  About SuperCLI
&lt;/h2&gt;

&lt;p&gt;This plugin is part of the &lt;a href="https://github.com/javimosch/supercli" rel="noopener noreferrer"&gt;SuperCLI&lt;/a&gt; ecosystem - a unified CLI plugin manager for AI agents and developers.&lt;/p&gt;

&lt;p&gt;Discover, install, and orchestrate thousands of command-line tools with SuperCLI.&lt;/p&gt;

</description>
      <category>supercli</category>
      <category>cli</category>
      <category>aitoearn</category>
      <category>typescript</category>
    </item>
    <item>
      <title>Accurate-Cyber-Defense-Network-Penetration-Testing-Tool-CLI: A SuperCLI Plugin Guide</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Wed, 24 Jun 2026 00:44:36 +0000</pubDate>
      <link>https://dev.to/javimosch/accurate-cyber-defense-network-penetration-testing-tool-cli-a-supercli-plugin-guide-10mg</link>
      <guid>https://dev.to/javimosch/accurate-cyber-defense-network-penetration-testing-tool-cli-a-supercli-plugin-guide-10mg</guid>
      <description>&lt;h1&gt;
  
  
  Accurate-Cyber-Defense-Network-Penetration-Testing-Tool-CLI
&lt;/h1&gt;

&lt;p&gt;Accurate-Cyber-Defense is a command-line penetration testing toolkit that performs automated network discovery, vulnerability scanning, exploit verification, and concise reporting to help security teams find and fix risks quickly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Source
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/Accurate-Cyber-Defense-Network-Penetration-Testing-Tool-CLI/Accurate-Cyber-Defense-Network-Penetration-Testing-Tool-CLI" rel="noopener noreferrer"&gt;https://github.com/Accurate-Cyber-Defense-Network-Penetration-Testing-Tool-CLI/Accurate-Cyber-Defense-Network-Penetration-Testing-Tool-CLI&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;python&lt;/li&gt;
&lt;li&gt;tool&lt;/li&gt;
&lt;li&gt;development&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Check GitHub repository for installation instructions&lt;/li&gt;
&lt;li&gt;Verify: Accurate-Cyber-Defense-Network-Penetration-Testing-Tool-CLI --version&lt;/li&gt;
&lt;li&gt;supercli plugins install ./plugins/Accurate-Cyber-Defense-Network-Penetration-Testing-Tool-CLI --on-conflict replace --json&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  About SuperCLI
&lt;/h2&gt;

&lt;p&gt;This plugin is part of the &lt;a href="https://github.com/javimosch/supercli" rel="noopener noreferrer"&gt;SuperCLI&lt;/a&gt; ecosystem - a unified CLI plugin manager for AI agents and developers.&lt;/p&gt;

&lt;p&gt;Discover, install, and orchestrate thousands of command-line tools with SuperCLI.&lt;/p&gt;

</description>
      <category>supercli</category>
      <category>cli</category>
      <category>python</category>
      <category>tool</category>
    </item>
    <item>
      <title>7zr: A SuperCLI Plugin Guide</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Tue, 23 Jun 2026 23:44:34 +0000</pubDate>
      <link>https://dev.to/javimosch/7zr-a-supercli-plugin-guide-b99</link>
      <guid>https://dev.to/javimosch/7zr-a-supercli-plugin-guide-b99</guid>
      <description>&lt;h1&gt;
  
  
  7zr
&lt;/h1&gt;

&lt;p&gt;CLI tool: 7zr&lt;/p&gt;

&lt;h2&gt;
  
  
  Source
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://manpages.debian.org/7zr" rel="noopener noreferrer"&gt;https://manpages.debian.org/7zr&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;7zr&lt;/li&gt;
&lt;li&gt;system&lt;/li&gt;
&lt;li&gt;cli&lt;/li&gt;
&lt;li&gt;7zr&lt;/li&gt;
&lt;li&gt;system&lt;/li&gt;
&lt;li&gt;cli&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;apt-get install 7zr 2&amp;gt;/dev/null || which 7zr&lt;/li&gt;
&lt;li&gt;Verify: 7zr --version&lt;/li&gt;
&lt;li&gt;supercli plugins install ./plugins/7zr --on-conflict replace --json&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  About SuperCLI
&lt;/h2&gt;

&lt;p&gt;This plugin is part of the &lt;a href="https://github.com/javimosch/supercli" rel="noopener noreferrer"&gt;SuperCLI&lt;/a&gt; ecosystem - a unified CLI plugin manager for AI agents and developers.&lt;/p&gt;

&lt;p&gt;Discover, install, and orchestrate thousands of command-line tools with SuperCLI.&lt;/p&gt;

</description>
      <category>supercli</category>
      <category>cli</category>
      <category>system</category>
    </item>
    <item>
      <title>7zip: A SuperCLI Plugin Guide</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Tue, 23 Jun 2026 22:44:34 +0000</pubDate>
      <link>https://dev.to/javimosch/7zip-a-supercli-plugin-guide-3h4f</link>
      <guid>https://dev.to/javimosch/7zip-a-supercli-plugin-guide-3h4f</guid>
      <description>&lt;h1&gt;
  
  
  7zip
&lt;/h1&gt;

&lt;p&gt;7zip — high-ratio file archiver supporting 7z, ZIP, and RAR formats&lt;/p&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;7zip&lt;/li&gt;
&lt;li&gt;utility&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;brew install p7zip&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  About SuperCLI
&lt;/h2&gt;

&lt;p&gt;This plugin is part of the &lt;a href="https://github.com/javimosch/supercli" rel="noopener noreferrer"&gt;SuperCLI&lt;/a&gt; ecosystem - a unified CLI plugin manager for AI agents and developers.&lt;/p&gt;

&lt;p&gt;Discover, install, and orchestrate thousands of command-line tools with SuperCLI.&lt;/p&gt;

</description>
      <category>supercli</category>
      <category>cli</category>
      <category>utility</category>
    </item>
    <item>
      <title>7za: A SuperCLI Plugin Guide</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Tue, 23 Jun 2026 21:44:35 +0000</pubDate>
      <link>https://dev.to/javimosch/7za-a-supercli-plugin-guide-3opa</link>
      <guid>https://dev.to/javimosch/7za-a-supercli-plugin-guide-3opa</guid>
      <description>&lt;h1&gt;
  
  
  7za
&lt;/h1&gt;

&lt;p&gt;CLI tool: 7za&lt;/p&gt;

&lt;h2&gt;
  
  
  Source
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://manpages.debian.org/7za" rel="noopener noreferrer"&gt;https://manpages.debian.org/7za&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;7za&lt;/li&gt;
&lt;li&gt;system&lt;/li&gt;
&lt;li&gt;cli&lt;/li&gt;
&lt;li&gt;7za&lt;/li&gt;
&lt;li&gt;system&lt;/li&gt;
&lt;li&gt;cli&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;apt-get install 7za 2&amp;gt;/dev/null || which 7za&lt;/li&gt;
&lt;li&gt;Verify: 7za --version&lt;/li&gt;
&lt;li&gt;supercli plugins install ./plugins/7za --on-conflict replace --json&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  About SuperCLI
&lt;/h2&gt;

&lt;p&gt;This plugin is part of the &lt;a href="https://github.com/javimosch/supercli" rel="noopener noreferrer"&gt;SuperCLI&lt;/a&gt; ecosystem - a unified CLI plugin manager for AI agents and developers.&lt;/p&gt;

&lt;p&gt;Discover, install, and orchestrate thousands of command-line tools with SuperCLI.&lt;/p&gt;

</description>
      <category>supercli</category>
      <category>cli</category>
      <category>system</category>
    </item>
    <item>
      <title>7z: A SuperCLI Plugin Guide</title>
      <dc:creator>Javier Leandro Arancibia</dc:creator>
      <pubDate>Tue, 23 Jun 2026 20:44:35 +0000</pubDate>
      <link>https://dev.to/javimosch/7z-a-supercli-plugin-guide-1f54</link>
      <guid>https://dev.to/javimosch/7z-a-supercli-plugin-guide-1f54</guid>
      <description>&lt;h1&gt;
  
  
  7z
&lt;/h1&gt;

&lt;p&gt;CLI tool: 7z&lt;/p&gt;

&lt;h2&gt;
  
  
  Source
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://manpages.debian.org/7z" rel="noopener noreferrer"&gt;https://manpages.debian.org/7z&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tags
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;7z&lt;/li&gt;
&lt;li&gt;system&lt;/li&gt;
&lt;li&gt;cli&lt;/li&gt;
&lt;li&gt;7z&lt;/li&gt;
&lt;li&gt;system&lt;/li&gt;
&lt;li&gt;cli&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;apt-get install 7z 2&amp;gt;/dev/null || which 7z&lt;/li&gt;
&lt;li&gt;Verify: 7z --version&lt;/li&gt;
&lt;li&gt;supercli plugins install ./plugins/7z --on-conflict replace --json&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  About SuperCLI
&lt;/h2&gt;

&lt;p&gt;This plugin is part of the &lt;a href="https://github.com/javimosch/supercli" rel="noopener noreferrer"&gt;SuperCLI&lt;/a&gt; ecosystem - a unified CLI plugin manager for AI agents and developers.&lt;/p&gt;

&lt;p&gt;Discover, install, and orchestrate thousands of command-line tools with SuperCLI.&lt;/p&gt;

</description>
      <category>supercli</category>
      <category>cli</category>
      <category>system</category>
    </item>
  </channel>
</rss>
