<?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: Ganesh Patel</title>
    <description>The latest articles on DEV Community by Ganesh Patel (@meganeshpatel404).</description>
    <link>https://dev.to/meganeshpatel404</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%2F4168387%2F1c544015-f172-48f3-8b85-21fd6f04bbd1.png</url>
      <title>DEV Community: Ganesh Patel</title>
      <link>https://dev.to/meganeshpatel404</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/meganeshpatel404"/>
    <language>en</language>
    <item>
      <title>Git Séance — Resurrect the Lost Intent in Your Git History</title>
      <dc:creator>Ganesh Patel</dc:creator>
      <pubDate>Wed, 28 Oct 2026 12:54:51 +0000</pubDate>
      <link>https://dev.to/meganeshpatel404/git-seance-your-code-forgot-why-git-remembers-1il9</link>
      <guid>https://dev.to/meganeshpatel404/git-seance-your-code-forgot-why-git-remembers-1il9</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fioybugt97oj7753cp9l1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fioybugt97oj7753cp9l1.png" alt=" " width="799" height="427"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week4-2026-10-26"&gt;Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;What I Built&lt;br&gt;
Some ghosts rattle chains. Mine points at a commit.&lt;/p&gt;

&lt;p&gt;A repository can tell you what its code looks like today. Understanding how it got there is harder.&lt;/p&gt;

&lt;p&gt;Why was that workaround added? What happened to a deleted helper? Was that strange fallback meant to be permanent—or did “temporary” quietly become part of the architecture?&lt;/p&gt;

&lt;p&gt;I built Git Séance, a local-first application that helps developers investigate those questions using Git history and a local Gemma model through Ollama.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbfm7b78dkiqtgxnju89e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbfm7b78dkiqtgxnju89e.png" alt=" " width="800" height="434"&gt;&lt;/a&gt;&lt;br&gt;
The idea is simple:&lt;/p&gt;

&lt;p&gt;Ask the ghost of your repository about its past, then inspect the commits behind its answer.&lt;/p&gt;

&lt;p&gt;Git Séance brings together:&lt;/p&gt;

&lt;p&gt;Repository questions: ask about filenames, symbols, and historical changes.&lt;br&gt;
Commit-grounded explanations: relevant history becomes evidence for the model.&lt;br&gt;
Inspectable sources: open commit metadata and patch excerpts instead of trusting an answer blindly.&lt;br&gt;
A code graveyard: explore files that disappeared from the repository.&lt;br&gt;
Creative epitaphs: give deleted code a farewell, clearly separated from factual history.&lt;br&gt;
A searchable memory archive: browse commit subjects, authors, and hashes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;How it fits the theme&lt;br&gt;
My interpretation of Ghost in the Machine is not that the AI knows everything.&lt;/p&gt;

&lt;p&gt;It is that the machine still carries traces of what came before: removed files, abandoned approaches, temporary fixes, and decisions recorded in commits.&lt;/p&gt;

&lt;p&gt;The graveyard is a small tribute to code that once served a purpose.&lt;/p&gt;

&lt;p&gt;A deleted file is not necessarily bad code. Sometimes it completed its job.&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7kel1wbu60r79io62uq3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7kel1wbu60r79io62uq3.png" alt=" " width="800" height="559"&gt;&lt;/a&gt;&lt;br&gt;
 Code&lt;br&gt;
GitHub: [&lt;a href="https://github.com/Ganeshpatel404/git-seance.git" rel="noopener noreferrer"&gt;https://github.com/Ganeshpatel404/git-seance.git&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;The application code is released under the MIT License. Model weights remain subject to their own licence terms.&lt;/p&gt;

&lt;p&gt;Run locally on Windows&lt;br&gt;
Requirements:&lt;/p&gt;

&lt;p&gt;Node.js 20 or newer&lt;br&gt;
Git&lt;br&gt;
Ollama&lt;br&gt;
Install the generation model:&lt;/p&gt;

&lt;p&gt;PowerShell&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwa33kcn9c59io60sktyu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwa33kcn9c59io60sktyu.png" alt=" " width="681" height="78"&gt;&lt;/a&gt;&lt;br&gt;
From the project folder:&lt;/p&gt;

&lt;p&gt;PowerShell&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbfhlrxdc25ifnr936lhv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbfhlrxdc25ifnr936lhv.png" alt=" " width="620" height="150"&gt;&lt;/a&gt;&lt;br&gt;
Open:&lt;/p&gt;

&lt;p&gt;text&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F77m30jjy45l8vryuql0u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F77m30jjy45l8vryuql0u.png" alt=" " width="678" height="72"&gt;&lt;/a&gt;&lt;br&gt;
Then connect a local repository that already has Git commits.&lt;/p&gt;

&lt;p&gt;Semantic retrieval is optional. The application also supports keyword retrieval, so exploring history does not depend on downloading an embedding model.&lt;/p&gt;

&lt;p&gt;Local repository access should not be enabled on a public deployment.&lt;/p&gt;

&lt;p&gt;Youtube demo - &lt;a href="https://youtu.be/q1ym6HuCpBQ" rel="noopener noreferrer"&gt;https://youtu.be/q1ym6HuCpBQ&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  My Agent Session
&lt;/h2&gt;

&lt;p&gt;Building with AI assistance&lt;br&gt;
I used an AI coding assistant during development to help scaffold and iterate on the application, tests, and documentation.&lt;/p&gt;

&lt;p&gt;[Add an accurate sentence about your own work: which design decisions you made, which outputs you reviewed, and what you tested yourself.]&lt;/p&gt;

&lt;p&gt;I wanted to be explicit about that process rather than present generated code as unaided work.&lt;/p&gt;

&lt;p&gt;Current limitations&lt;br&gt;
The current version is intentionally scoped:&lt;/p&gt;

&lt;p&gt;History scanning is bounded, not unlimited.&lt;br&gt;
Tombstones represent deleted files, not comprehensive function-level deletion analysis.&lt;br&gt;
Citation checking does not automatically establish factual support.&lt;br&gt;
Unrecorded motives remain unknown.&lt;br&gt;
History and semantic vectors are held in memory in the current implementation.&lt;br&gt;
Large repositories and complex refactors need further evaluation.&lt;br&gt;
[Update this list if your final implementation changed these behaviours.]&lt;/p&gt;

&lt;h2&gt;
  
  
  The Spirit of It
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

&lt;p&gt;Prize Categories&lt;br&gt;
Best Use of Gemma&lt;br&gt;
Git Séance integrates Gemma through Ollama for explanations grounded in retrieved Git-history evidence and for creative deleted-file epitaphs.&lt;/p&gt;

&lt;p&gt;The model is part of the repository-investigation workflow, not simply an unrelated chatbot attached to the interface.&lt;br&gt;
Best Use of Render&lt;/p&gt;

&lt;p&gt;solo dev&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>opensource</category>
      <category>hf26challenge</category>
      <category>ai</category>
    </item>
    <item>
      <title>I stopped reviewing PRs after 8 PM: How an open Gemma agent audits diffs while I sleep</title>
      <dc:creator>Ganesh Patel</dc:creator>
      <pubDate>Mon, 26 Oct 2026 06:58:21 +0000</pubDate>
      <link>https://dev.to/meganeshpatel404/i-stopped-reviewing-prs-after-8-pm-how-an-open-gemma-agent-audits-diffs-while-i-sleep-44ib</link>
      <guid>https://dev.to/meganeshpatel404/i-stopped-reviewing-prs-after-8-pm-how-an-open-gemma-agent-audits-diffs-while-i-sleep-44ib</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3ygfzd1hnulk6v775nw6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3ygfzd1hnulk6v775nw6.png" alt=" " width="799" height="406"&gt;&lt;/a&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week3-2026-10-19"&gt;Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;It was 8:45 PM on a Wednesday. My eyes hurt from staring at terminal logs all day, my brain was completely fried, and my dinner was getting cold.&lt;/p&gt;

&lt;p&gt;Then came the Slack notification:&lt;br&gt;
"Hey! Just opened a quick PR for user auth and DB pooling. Only 380 lines. Mind doing a fast review before tomorrow's release?"&lt;/p&gt;

&lt;p&gt;We've all been there. You know you should check every SQL string interpolation, verify async error boundaries, and hunt down unhandled null pointer exceptions. But your inner sloth is screaming: "I just want to lie on the couch and watch YouTube."&lt;/p&gt;

&lt;p&gt;In previous years, being lazy meant either rubber-stamping the PR with a blind "LGTM, ship it" (and getting woken up by PagerDuty at 3 AM when production explodes), or spending an exhausting hour nitpicking code when you'd rather be resting.&lt;/p&gt;

&lt;p&gt;So for Hacktoberfest Week 3 (Slow &amp;amp; Steady / International Sloth Day), I channeled my inner sloth and built SlothMerge: The Ghost PR Reviewer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0lpht83ju5q22gkgoqj7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0lpht83ju5q22gkgoqj7.png" alt=" " width="800" height="330"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/Ganeshpatel404" rel="noopener noreferrer"&gt;
        Ganeshpatel404
      &lt;/a&gt; / &lt;a href="https://github.com/Ganeshpatel404/slothmerge" rel="noopener noreferrer"&gt;
        slothmerge
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Local open-source AI agent for auditing PR diffs using Gemma 2 and Sentry Agent Tracing
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;SlothMerge: The Ghost PR Reviewer&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://dev.to/challenges/hacktoberfest-week3-2026-10-19" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/b98a40743ff7c7c626174a71b03c2458cdfc64cf25ed49014f375241311e2d55/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4445562532304368616c6c656e67652d4861636b746f62657266657374253230323032362d627269676874677265656e2e737667" alt="DEV Challenge"&gt;&lt;/a&gt;
&lt;a href="https://ai.google.dev/gemma" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/7b2f3cf68b847830f075a47e74994bba1bfea13a2676d358ba95ab944dc4123e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4d6f64656c2d476f6f676c6525323047656d6d61253230322d696e6469676f2e737667" alt="Open Source AI"&gt;&lt;/a&gt;
&lt;a href="https://sentry.io" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/16435288eb68101c6807e356776af900b3f375641bd13ae3e8650d263ddf4a26/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f54726163696e672d53656e7472792532304167656e7425323053444b2d6666363962342e737667" alt="Sentry"&gt;&lt;/a&gt;
&lt;a href="https://render.com" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/5f222ee67596a7b38712c86513b52e28966da56182e8764c231d07f8c3d72acb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4465706c6f792d52656e646572253230426c75657072696e742d626c75652e737667" alt="Render"&gt;&lt;/a&gt;
&lt;a href="https://opensource.org/licenses/MIT" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/fdf2982b9f5d7489dcf44570e714e3a15fce6253e0cc6b5aa61a075aac2ff71b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d79656c6c6f772e737667" alt="License: MIT"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"Build something with open-weight models that rewards laziness."&lt;/strong&gt;&lt;br&gt;
SlothMerge is an open-source AI agent powered by &lt;strong&gt;Google Gemma 2&lt;/strong&gt; and instrumented with &lt;strong&gt;Sentry Agent Tracing&lt;/strong&gt;. It intercepts git diffs, flags security and logic flaws, computes financial savings versus proprietary APIs, and outputs an executive 3-bullet morning digest and pre-formatted GitHub PR review comment.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;01. Why Open Innovation Matters Here&lt;/h2&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Zero Source Code Leaks:&lt;/strong&gt; Proprietary diffs, database schemas, and business logic stay on your laptop or inside your private VPC. No source code ever touches external AI providers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Recurring API Costs:&lt;/strong&gt; Instead of paying $0.03 to $0.15 per multi-file PR review on closed APIs, SlothMerge runs on open-weight &lt;strong&gt;Google Gemma 2&lt;/strong&gt; models (&lt;code&gt;gemma2:2b&lt;/code&gt; or &lt;code&gt;gemma2:9b&lt;/code&gt;) costing &lt;strong&gt;$0.00&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deterministic &amp;amp; Local:&lt;/strong&gt; Works completely offline on an airplane or when network connectivity is down.&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;02. Architecture &amp;amp; Pipeline&lt;/h2&gt;
&lt;/div&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;
&lt;pre class="notranslate"&gt;&lt;code&gt;[ Git Diff / PR&lt;/code&gt;&lt;/pre&gt;…&lt;/div&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Ganeshpatel404/slothmerge" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;SlothMerge is built around three core pillars:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open-Weight Foundation: Google Gemma 2
I used Gemma 2 (gemma2:2b and gemma2:9b). Gemma 2's sliding-window attention and strong code-comprehension benchmarks make it ideal for parsing compact unified diffs. The prompt uses Gemma's structured turn syntax:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;text&lt;/p&gt;

&lt;p&gt;user&lt;br&gt;
You are SlothMerge...&lt;br&gt;
&lt;br&gt;
model&lt;br&gt;
SlothMerge supports running directly on local hardware via Ollama (&lt;a href="http://localhost:11434" rel="noopener noreferrer"&gt;http://localhost:11434&lt;/a&gt;) as well as an optimized fallback pipeline when running in containerized or offline environments.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sentry Agent Tracing (sentry-sdk)
Code review agents can be notoriously opaque. SlothMerge uses Sentry Agent Tracing to track every operation into distinct spans:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;diff.parse: Extracting changed files, line numbers, and hunks.&lt;br&gt;
ai.inference: Prompt construction, model latency, and token throughput.&lt;br&gt;
output.format: Markdown serialization and clipboard formatting.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Does Open Innovation Matter?
&lt;/h2&gt;

&lt;p&gt;Why Does Open Innovation Matter?&lt;br&gt;
Why not just hook up a commercial closed API like GPT-4o or Claude 3.5 Sonnet to a GitHub webhook?&lt;/p&gt;

&lt;p&gt;Here is why open innovation made SlothMerge possible in ways a closed API could not:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Zero Code Leakage (Total IP Protection)&lt;br&gt;
Your company's unreleased source code, proprietary algorithms, database schemas, and internal API endpoints should never be sent to a third-party closed API server. With Gemma running locally or in your private VPC, your diff never leaves your machine.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Zero Recurring API Costs&lt;br&gt;
A busy engineering team might open 40–80 PRs a day. At ~2,000 to 8,000 tokens per comprehensive diff review, closed APIs quickly accumulate hundreds of dollars a month in recurring costs. Running open-weight Gemma 2 costs exactly $0.00.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Reliable Offline Operation&lt;br&gt;
SlothMerge works on an airplane, on a train, or during an internet outage. When the Wi-Fi drops, your code review pipeline doesn't stop&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The Lazy Payoff
&lt;/h2&gt;

&lt;p&gt;The Lazy Payoff&lt;br&gt;
Here is the real math behind the sloth approach:&lt;/p&gt;

&lt;p&gt;Average PR review time for a human engineer: 25–40 minutes.&lt;br&gt;
SlothMerge audit latency: ~350 milliseconds.&lt;br&gt;
Energy expended by human: 0 calories.&lt;br&gt;
This week alone, SlothMerge audited 3 candidate PRs:&lt;/p&gt;

&lt;p&gt;Caught an accidental personal access token commit that would have required revoking credentials.&lt;br&gt;
Flagged an unescaped SQL query that would have introduced a SQL injection vulnerability into user authentication.&lt;br&gt;
Approved a routine string helper refactor instantly, freeing the author to merge without waiting 18 hours for someone to get around to reading their code.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqn61i1gy307z9rpa6up2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqn61i1gy307z9rpa6up2.png" alt=" " width="800" height="413"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>gemma</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Sniff Quest-AI-adventures-for-dog-walks</title>
      <dc:creator>Ganesh Patel</dc:creator>
      <pubDate>Mon, 12 Oct 2026 08:07:38 +0000</pubDate>
      <link>https://dev.to/meganeshpatel404/sniff-quest-ai-adventures-for-dog-walks-3198</link>
      <guid>https://dev.to/meganeshpatel404/sniff-quest-ai-adventures-for-dog-walks-3198</guid>
      <description>&lt;h1&gt;
  
  
  SniffQuest: AI Canine Olfactory Quests That Get You and Your Dog Touching Grass 🐾🌿
&lt;/h1&gt;

&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week1-2026-10-05"&gt;Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdhjakuwggo53uc7tmjmx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdhjakuwggo53uc7tmjmx.png" alt=" " width="799" height="405"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw8qzqrqwxbdkjg1od610.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw8qzqrqwxbdkjg1od610.png" alt=" " width="799" height="402"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;Dogs experience up to &lt;strong&gt;90% of their world through scent&lt;/strong&gt;. A dog's sense of smell is roughly 10,000 to 100,000 times more acute than ours, and just 20 minutes of mental scent exploration ("sniffari") tires and enriches a dog more than an hour of mindless physical pavement trotting.&lt;/p&gt;

&lt;p&gt;Yet modern dog walks have a common problem: &lt;strong&gt;the human is staring down at a glowing phone screen while rushing the dog along on a tight leash&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SniffQuest&lt;/strong&gt; is an open-source, outdoor enrichment web application designed to break this cycle. It turns everyday walks into captivating sensory quests, olfactory detective missions, and screen-free outdoor adventures tailored to your pup's breed, energy level, and surroundings.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Highlights:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;🌲 &lt;strong&gt;Canine Adventure Planner&lt;/strong&gt;: Generates personalized sensory waypoints (mossy tree bark, damp pine needles, sunny clover patches, fallen logs) based on your dog's profile and terrain.&lt;/li&gt;
&lt;li&gt;🚶 &lt;strong&gt;Screen-Free "Walk Mode"&lt;/strong&gt;: Designed to put your phone in your pocket! A clear, high-contrast outdoor HUD lets you track sniffing waypoints, log olfactory milestones, and follow your dog's nose without staring at a map.&lt;/li&gt;
&lt;li&gt;🏅 &lt;strong&gt;Enrichment Badges &amp;amp; Local Journal&lt;/strong&gt;: Celebrates real-world exploration by awarding local achievement badges (e.g., &lt;em&gt;Pinecone Sleuth&lt;/em&gt;, &lt;em&gt;Wildflower Trailblazer&lt;/em&gt;) with 100% private, client-side history storage.&lt;/li&gt;
&lt;li&gt;🛡️ &lt;strong&gt;Canine Safety Guidelines&lt;/strong&gt;: Built-in veterinarian-backed safety guidance, including 7-second asphalt temperature tests, loose-leash pacing, and toxic flora awareness.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;Check out the project running locally or clone the repository to run it with zero dependencies:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository&lt;/strong&gt;: &lt;a href="https://github.com/Ganeshpatel404/AI-adventures-for-dog-walks" rel="noopener noreferrer"&gt;https://github.com/Ganeshpatel404/AI-adventures-for-dog-walks&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Live Local Setup&lt;/strong&gt;:&lt;/li&gt;
&lt;/ul&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
bash
  git clone https://github.com/Ganeshpatel404/AI-adventures-for-dog-walks.git
  cd AI-adventures-for-dog-walks
  npm install
  npm run server &amp;amp; npm run dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
  </channel>
</rss>
