<?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: Yacov drori</title>
    <description>The latest articles on DEV Community by Yacov drori (@yacovdroridev).</description>
    <link>https://dev.to/yacovdroridev</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%2F3991490%2Fe66e88bf-797c-416c-aa06-b441cf6df6bd.jpg</url>
      <title>DEV Community: Yacov drori</title>
      <link>https://dev.to/yacovdroridev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/yacovdroridev"/>
    <language>en</language>
    <item>
      <title>From Silicon to PWA: My Experience Deploying an Autonomous AI Agent (Hermes) Directly into My Daily Workflow</title>
      <dc:creator>Yacov drori</dc:creator>
      <pubDate>Thu, 18 Jun 2026 20:44:34 +0000</pubDate>
      <link>https://dev.to/yacovdroridev/from-silicon-to-pwa-my-experience-deploying-an-autonomous-ai-agent-hermes-directly-into-my-daily-1bac</link>
      <guid>https://dev.to/yacovdroridev/from-silicon-to-pwa-my-experience-deploying-an-autonomous-ai-agent-hermes-directly-into-my-daily-1bac</guid>
      <description>&lt;p&gt;As an engineer with 20+ years of experience working from the silicon up—programming bare-metal C, motion control, and industrial automation—I’ve always been skeptical of "AI coding assistants." Writing auto-complete snippets is easy; architecting complex, production-ready systems is a completely different beast.&lt;/p&gt;

&lt;p&gt;But recently, during the launch of my new ventures—specifically a modular Flutter Web PWA Book-to-App Framework (tefila_meditation), a Go-native desktop app (remote-viewer), and optimization of a women's health cycle calculator—I decided to do something different. &lt;/p&gt;

&lt;p&gt;I deployed Hermes (by Nous Research), an autonomous, CLI-driven AI agent, directly into my Linux terminal environment.&lt;/p&gt;

&lt;p&gt;Unlike standard chat widgets that sit in a browser tab and ask you to copy-paste code, Hermes was deployed locally with full filesystem, package manager, and terminal access. It doesn't write "stubs" or "placeholders"; it writes code, compiles it, analyzes the static output, runs git, and deploys the builds directly.&lt;/p&gt;

&lt;p&gt;Here are 3 real-world battles we won together:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;The Mobile Autoplay &amp;amp; PWA Asset Path Hell&lt;br&gt;
When building our offline-ready Daily Quiet Corner playing looping ambient nature audio, we hit a classic mobile web wall. Modern browsers aggressively block audio unless triggered by an immediate, synchronous user gesture. Furthermore, Flutter Web compiles assets into a double-nested structure (assets/assets/audio/...), causing a triple-asset path resolution (assets/assets/assets/...) and silent 404s.&lt;br&gt;
• How we solved it: Hermes analyzed the network resource requests of our test browser, isolated the 404s, and refactored our player into a synchronous execution flow to preserve the browser's "user gesture token." It dynamically switched the source loader to use native UrlSource with double-asset routing on Web, while preserving native AssetSource on mobile.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Timezone-Drift &amp;amp; DST Calculations in Python/Dart&lt;br&gt;
Our cycle calculations were suffering from a classic bug: seasonal Daylight Saving Time (DST) transitions were introducing 23-hour and 25-hour day calculations, shifting predictions.&lt;br&gt;
• How we solved it: Instead of applying patchy offset fixes, we normalized all datetime math to UTC across both the Dart frontend and Python backend, backed by comprehensive unit tests to ensure 100% mathematical consistency during seasonal clock switches.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Desktop Linux Toolchain Compilation&lt;br&gt;
When building our Go-native desktop app "remote-viewer" on Ubuntu, we ran into native GStreamer link errors during CMake. Hermes parsed the compiler logs, isolated the missing native dev packages, and provided the exact GStreamer installation dependencies to unblock Android Studio.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Key Takeaways:&lt;br&gt;
• Say Goodbye to Async Gaps in UI Events: Mobile browsers are ruthless with autoplay blocks. If you have even a single 'await' microtask between a click and a '.play()' call, the browser discards the gesture token. Keep your media play setups strictly synchronous.&lt;br&gt;
• Flutter Web Asset Caching is Aggressive: Service workers in PWAs cache Compiled JS so heavily that standard refreshes won't show updates. Always perform a hard cache-reload (Ctrl+F5) when testing asset-prefix changes.&lt;br&gt;
• AI Agents as Partners, Not Replacements: The magic happens when you combine systems-thinking (the human) with rapid execution and iteration (the agent). I guided the architecture; Hermes handled the boilerplate, compilations, and repo synchronization.&lt;/p&gt;

&lt;p&gt;Deploying Hermes directly into my terminal didn’t make me code less; it allowed me to build faster, cleaner, and with much higher confidence.&lt;/p&gt;

&lt;p&gt;Are you integrating AI agents into your development workflows, or keeping them in the sandbox? Let’s discuss!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>hermes</category>
      <category>flutter</category>
      <category>go</category>
    </item>
  </channel>
</rss>
