<?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: Arthur Ming</title>
    <description>The latest articles on DEV Community by Arthur Ming (@damingerdai).</description>
    <link>https://dev.to/damingerdai</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%2F4168723%2F45a9ff90-1f22-4cb5-adf7-22cdaed4d494.jpg</url>
      <title>DEV Community: Arthur Ming</title>
      <link>https://dev.to/damingerdai</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/damingerdai"/>
    <language>en</language>
    <item>
      <title>I made an AI that writes commit messages so I don't have to think at 6pm on a Friday</title>
      <dc:creator>Arthur Ming</dc:creator>
      <pubDate>Wed, 07 Oct 2026 11:34:13 +0000</pubDate>
      <link>https://dev.to/damingerdai/i-made-an-ai-that-writes-commit-messages-so-i-dont-have-to-think-at-6pm-on-a-friday-3356</link>
      <guid>https://dev.to/damingerdai/i-made-an-ai-that-writes-commit-messages-so-i-dont-have-to-think-at-6pm-on-a-friday-3356</guid>
      <description>&lt;p&gt;You know the feeling. You've just spent 3 hours on a fix, your brain is mush, and now you have to write a commit message. So you type &lt;code&gt;fix stuff&lt;/code&gt; and hate yourself a little.&lt;/p&gt;

&lt;p&gt;So I built &lt;strong&gt;YuShi (御史)&lt;/strong&gt; — named after ancient Chinese imperial inspectors whose whole job was being nitpicky. Now it's an AI that's nitpicky about my commits instead of me.&lt;/p&gt;

&lt;p&gt;It reads your diff and spits out a proper Angular-style commit message. You know, the &lt;code&gt;feat(scope): do the thing&lt;/code&gt; format, with an actual body explaining &lt;em&gt;why&lt;/em&gt;. Three ways to feed it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;CLI&lt;/strong&gt; — run it in your repo, it reads staged changes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Web&lt;/strong&gt; — yeet a &lt;code&gt;.diff&lt;/code&gt; file at it&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub PR link&lt;/strong&gt; — paste a public PR URL, no login/token needed, it grabs the diff anonymously&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Try it:&lt;/strong&gt; &lt;a href="https://arthur-ming-yushi.vercel.app/" rel="noopener noreferrer"&gt;https://arthur-ming-yushi.vercel.app/&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Code:&lt;/strong&gt; &lt;a href="https://github.com/damingerdai/yushi" rel="noopener noreferrer"&gt;https://github.com/damingerdai/yushi&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Fun bits: the AI treats your diff as untrusted input so you can't prompt-inject it through code comments (yes I tested). It also won't touch your custom footer. Everything else is Bun + Turborepo + Next.js + DeepSeek.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here's the thing though — I have no idea what I'm doing.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'm a dev, not a product person. The thing works, but "what's next" is a giant shrug. VS Code extension? GitHub App? Commit linting? A git hook that judges you? Tell me. Please.&lt;/p&gt;

&lt;p&gt;And if you're playing with AI coding agents — just point yours at the repo. Seriously. Issue, feature request, PR, whatever. Human-written, agent-written, I don't care. Only rule: no malicious code. If it compiles and isn't evil, I'll probably merge it.&lt;/p&gt;

&lt;p&gt;Roast it, use it, fork it, fix it. All appreciated 🙏&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
