<?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>Forem: Kriday Dave</title>
    <description>The latest articles on Forem by Kriday Dave (@kriday_dave_8b7622f44d651).</description>
    <link>https://forem.com/kriday_dave_8b7622f44d651</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%2F3760230%2F27aec1f6-255b-45d2-8cf7-78776eb527d1.png</url>
      <title>Forem: Kriday Dave</title>
      <link>https://forem.com/kriday_dave_8b7622f44d651</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/kriday_dave_8b7622f44d651"/>
    <language>en</language>
    <item>
      <title>Your AI Agent Ordered Bananas. Here's Why.</title>
      <dc:creator>Kriday Dave</dc:creator>
      <pubDate>Fri, 15 May 2026 10:41:27 +0000</pubDate>
      <link>https://forem.com/kriday_dave_8b7622f44d651/your-ai-agent-ordered-bananas-heres-why-1ke9</link>
      <guid>https://forem.com/kriday_dave_8b7622f44d651/your-ai-agent-ordered-bananas-heres-why-1ke9</guid>
      <description>&lt;p&gt;Your AI Agent Ordered Bananas. Here's Why.&lt;br&gt;
You told your AI agent you like apples and oranges. Somewhere between Agent 1 and Agent 2, a banana snuck in. Now your grocery agent is ordering bananas. Not because the LLM hallucinated -- because the context handoff was broken.&lt;br&gt;
This is the real problem nobody talks about. Everyone's arguing about which model is smarter while the plumbing underneath is leaking.&lt;br&gt;
We blame the LLM for everything&lt;br&gt;
Yelling at Claude at 3AM to fix your broken pipeline isn't going to work. Claude doesn't know you. Claude doesn't remember what Agent 1 said to Agent 2 three steps ago. Each handoff between agents is just a JSON blob getting passed around with zero guarantees. No signing. No validation. No rollback if something goes wrong.&lt;br&gt;
RAG gets thrown around as the solution to everything but RAG just helps agents find relevant information. It doesn't protect the information that's already been passed around and corrupted.&lt;br&gt;
If your AI agent corrupts your context -- your Obsidian vault, your memory store, whatever you're using -- every downstream agent inherits the damage. Silently.&lt;br&gt;
The banana problem, formally&lt;br&gt;
Here's what actually happens without any protection:&lt;br&gt;
python# Agent 1 produces output&lt;br&gt;
agent1_output = {"entities": ["Apple", "2024 revenue"], "summary": "Apple grew"}&lt;/p&gt;

&lt;h1&gt;
  
  
  Manual serialization -- easy to lose data, corrupt context
&lt;/h1&gt;

&lt;p&gt;context = json.dumps(agent1_output)&lt;/p&gt;

&lt;h1&gt;
  
  
  Agent 2 receives corrupted context
&lt;/h1&gt;

&lt;p&gt;agent2_input = f"Given: {context}\nAnalyze this."&lt;br&gt;
Agent 2 might drop keys. Add hallucinated ones. Quietly rewrite history. You won't know until something downstream breaks in a way that's nearly impossible to trace back.&lt;br&gt;
What if we treated context handoffs like database transactions?&lt;br&gt;
That's the question that led to Relay.&lt;br&gt;
Relay treats your context like an append-only ledger. Every handoff between agents gets signed and validated. If an agent drops a critical key -- like "entities" disappearing between steps -- Relay catches it and rolls back to the last clean state automatically.&lt;br&gt;
pythonfrom relay.core_pipeline import CoreRelayPipeline&lt;/p&gt;

&lt;p&gt;pipeline = CoreRelayPipeline(&lt;br&gt;
    signing_secret="your-secret-key",&lt;br&gt;
    token_budget=8000&lt;br&gt;
)&lt;/p&gt;

&lt;h1&gt;
  
  
  Agent 1 creates a signed envelope
&lt;/h1&gt;

&lt;p&gt;result = pipeline.execute_step({"entities": ["Apple"], "revenue": "2024"})&lt;br&gt;
envelope1 = result.value  # signed, immutable&lt;/p&gt;

&lt;h1&gt;
  
  
  Agent 2 accidentally drops "entities"
&lt;/h1&gt;

&lt;p&gt;result = pipeline.execute_step({"summary": "growth"})  # contradiction detected&lt;/p&gt;

&lt;h1&gt;
  
  
  Relay rolls back automatically
&lt;/h1&gt;

&lt;p&gt;result = pipeline.rollback()&lt;br&gt;
restored_envelope = result.value&lt;/p&gt;

&lt;h1&gt;
  
  
  Back to the clean state from step 1
&lt;/h1&gt;

&lt;p&gt;No banana.&lt;br&gt;
What Relay actually does&lt;br&gt;
Every context move between agents gets wrapped in a signed envelope with a version, a timestamp, the token budget, and an HMAC signature. If anything changes, the signature fails. If a critical key disappears, the validator fires. If the validator fires, you get a rollback to the last clean checkpoint instead of silent corruption propagating through your pipeline.&lt;br&gt;
It also supports parallel agents through fork-join -- you can run multiple agents against the same context snapshot at the same time, then merge or vote on their outputs. If there's a conflict, the whole step rolls back cleanly.&lt;br&gt;
Why this matters&lt;br&gt;
Reliable AI systems need reliable infrastructure underneath them. The model quality is only as good as the context it receives. Right now most multi-agent pipelines have no protection on context handoffs at all.&lt;br&gt;
I built Relay as a 10th grader because I kept running into this problem and couldn't find anything that solved it properly. Context matters. It needs to be protected, not just passed around and hoped for the best.&lt;br&gt;
You can use it today:&lt;br&gt;
pip install relay-middleware&lt;br&gt;
Or check the source: &lt;a href="https://github.com/kridaydave/Relay" rel="noopener noreferrer"&gt;https://github.com/kridaydave/Relay&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>opensource</category>
      <category>python</category>
    </item>
    <item>
      <title>I'm 15 and Built a Production-Grade MCP Server During Winter Break</title>
      <dc:creator>Kriday Dave</dc:creator>
      <pubDate>Sun, 08 Feb 2026 15:31:08 +0000</pubDate>
      <link>https://forem.com/kriday_dave_8b7622f44d651/im-15-and-built-a-production-grade-mcp-server-during-winter-break-i56</link>
      <guid>https://forem.com/kriday_dave_8b7622f44d651/im-15-and-built-a-production-grade-mcp-server-during-winter-break-i56</guid>
      <description>&lt;p&gt;The Problem: My Downloads Folder Was a Disaster 🗑️&lt;br&gt;
I'm a 15-year-old student, and like most people, my Downloads folder was a mess.&lt;br&gt;
1,200+ files scattered everywhere. Videos mixed with documents. Installers next&lt;br&gt;
to screenshots. It was chaos.&lt;br&gt;
Every time I needed to find something, I'd waste 10 minutes scrolling through&lt;br&gt;
hundreds of randomly named files. There had to be a better way.&lt;/p&gt;

&lt;p&gt;The Discovery: NetworkChuck's MCP Tutorial 🎥&lt;br&gt;
During winter break, I was browsing YouTube and stumbled on NetworkChuck's video&lt;br&gt;
about the Model Context Protocol (MCP). He showed how you can give AI assistants&lt;br&gt;
like Claude new capabilities through custom servers.&lt;br&gt;
That's when it clicked: What if Claude could organize my files for me?&lt;br&gt;
I spent the next week building what would become File Organizer MCP.&lt;/p&gt;

&lt;p&gt;The Build: From Idea to Production in 7 Days 🚀&lt;br&gt;
Day 1-2: Learning &amp;amp; Planning&lt;/p&gt;

&lt;p&gt;Studied the MCP specification&lt;br&gt;
Learned about file categorization algorithms&lt;br&gt;
Planned the architecture&lt;/p&gt;

&lt;p&gt;Day 3-4: Core Features&lt;/p&gt;

&lt;p&gt;Built file scanning and categorization&lt;br&gt;
Implemented duplicate detection using SHA-256 hashing&lt;br&gt;
Added dry-run mode for safety&lt;/p&gt;

&lt;p&gt;Day 5-6: Polish &amp;amp; Security&lt;/p&gt;

&lt;p&gt;Migrated everything to TypeScript&lt;br&gt;
Added 8-layer path validation (security is important!)&lt;br&gt;
Wrote comprehensive tests (ended up with 268!)&lt;br&gt;
Created an interactive setup wizard&lt;/p&gt;

&lt;p&gt;Day 7: Launch&lt;/p&gt;

&lt;p&gt;Published to NPM&lt;br&gt;
Listed on MCP Registry&lt;br&gt;
Wrote documentation&lt;br&gt;
Hit publish 🎉&lt;/p&gt;

&lt;p&gt;The Tech Stack 🛠️&lt;br&gt;
Why I chose these technologies:&lt;/p&gt;

&lt;p&gt;TypeScript - Type safety prevents bugs&lt;br&gt;
Zod - Runtime validation for user inputs&lt;br&gt;
Jest - Comprehensive testing framework&lt;br&gt;
Node.js - Works everywhere&lt;/p&gt;

&lt;p&gt;Security was a priority:&lt;/p&gt;

&lt;p&gt;8-layer path validation pipeline&lt;br&gt;
TOCTOU mitigation using file descriptors&lt;br&gt;
Atomic operations to prevent data loss&lt;br&gt;
Sandboxed operations (files can't escape allowed directories)&lt;/p&gt;

&lt;p&gt;The Features ✨&lt;br&gt;
File Organizer MCP provides these tools to Claude (and other AI assistants):&lt;/p&gt;

&lt;p&gt;Smart Categorization - Automatically sorts files into 12+ categories&lt;br&gt;
Duplicate Detection - Finds duplicate files and calculates wasted space&lt;br&gt;
Batch Renaming - Rename multiple files with patterns and regex&lt;br&gt;
Metadata Extraction - Reads EXIF/ID3 tags for smart organization&lt;br&gt;
Scheduled Organization - Cron-based auto-organization&lt;br&gt;
Rollback Support - Undo operations if needed&lt;/p&gt;

&lt;p&gt;All with a simple command:&lt;br&gt;
bashnpm i file-organizer-mcp&lt;br&gt;
npx file-organizer-mcp --setup&lt;br&gt;
The setup wizard auto-detects your AI clients (Claude Desktop, Cursor, Windsurf,&lt;br&gt;
etc.) and configures them for you. One command, done.&lt;/p&gt;

&lt;p&gt;The Results: 728 Downloads in Week 1 📈&lt;br&gt;
I honestly didn't expect much. This was a personal project to solve my own problem.&lt;br&gt;
But within the first week:&lt;/p&gt;

&lt;p&gt;✅ 728 npm downloads&lt;br&gt;
✅ 11 GitHub stars&lt;br&gt;
✅ Listed on MCP Registry&lt;br&gt;
✅ Users from around the world&lt;/p&gt;

&lt;p&gt;People were actually using it! And more importantly, it was helping them.&lt;/p&gt;

&lt;p&gt;What I Learned 💡&lt;br&gt;
Technical Lessons:&lt;/p&gt;

&lt;p&gt;Security is hard - Path traversal, symlink attacks, race conditions...&lt;br&gt;
there's so much to think about!&lt;br&gt;
Testing matters - Those 268 tests caught SO many bugs&lt;br&gt;
TypeScript is worth it - Caught errors at compile time instead of runtime&lt;br&gt;
Documentation is for future you - I've already forgotten why I wrote some code&lt;/p&gt;

&lt;p&gt;Personal Lessons:&lt;/p&gt;

&lt;p&gt;Just ship it - Don't wait for perfect, ship and iterate&lt;br&gt;
Solve real problems - Personal pain points make the best projects&lt;br&gt;
Open source is rewarding - Seeing others use your code is amazing&lt;br&gt;
Age doesn't matter - Good code is good code, regardless of who wrote it&lt;/p&gt;

&lt;p&gt;What's Next? 🔮&lt;br&gt;
Currently working on:&lt;/p&gt;

&lt;p&gt;Cloud storage integration (S3, Dropbox, Google Drive)&lt;br&gt;
More metadata support (organize photos by location, music by genre)&lt;br&gt;
Better scheduling (more flexible automation)&lt;br&gt;
Performance improvements (handle even larger directories)&lt;/p&gt;

&lt;p&gt;Try It Yourself 🚀&lt;br&gt;
Want to organize your files with AI?&lt;br&gt;
bashnpm i file-organizer-mcp&lt;br&gt;
npx file-organizer-mcp --setup&lt;br&gt;
Then ask your AI assistant:&lt;/p&gt;

&lt;p&gt;"Organize my Downloads folder"&lt;br&gt;
"Find duplicate files in Documents"&lt;br&gt;
"Show me my largest files"&lt;/p&gt;

&lt;p&gt;Links:&lt;/p&gt;

&lt;p&gt;📦 NPM: &lt;a href="https://www.npmjs.com/package/file-organizer-mcp" rel="noopener noreferrer"&gt;https://www.npmjs.com/package/file-organizer-mcp&lt;/a&gt;&lt;br&gt;
🐙 GitHub: &lt;a href="https://github.com/kridaydave/File-Organizer-MCP" rel="noopener noreferrer"&gt;https://github.com/kridaydave/File-Organizer-MCP&lt;/a&gt;&lt;br&gt;
📚 MCP Registry: &lt;a href="https://registry.modelcontextprotocol.io/servers/io.github.kridaydave/file-organizer" rel="noopener noreferrer"&gt;https://registry.modelcontextprotocol.io/servers/io.github.kridaydave/file-organizer&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Final Thoughts 💭&lt;br&gt;
This started as a simple solution to a messy Downloads folder. It became a&lt;br&gt;
production-grade tool with hundreds of users.&lt;br&gt;
If you're reading this and thinking "I could never build something like this" -&lt;br&gt;
you absolutely can. I'm just a 15-year-old who watched a YouTube video and had&lt;br&gt;
a problem to solve.&lt;br&gt;
Start small. Solve your own problems. Ship it. Iterate.&lt;br&gt;
The hardest part is starting. So start today.&lt;/p&gt;

&lt;p&gt;Questions? Comments?&lt;br&gt;
Drop a comment below or open an issue on GitHub. I read everything!&lt;br&gt;
And if you try File Organizer MCP, let me know what you think. Your feedback&lt;br&gt;
helps make it better for everyone.&lt;br&gt;
Happy organizing! 🎯&lt;br&gt;
Tags to add:&lt;/p&gt;

&lt;h1&gt;
  
  
  mcp #claude #ai #typescript #opensource #nodejs #productivity #tools
&lt;/h1&gt;

&lt;p&gt;P.S. - Yes, I really am 15. And yes, this really was built during winter break.&lt;br&gt;
And yes, you can do this too. Now go build something cool! 🚀&lt;/p&gt;

</description>
      <category>ai</category>
      <category>mcp</category>
      <category>productivity</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
