<?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: K X</title>
    <description>The latest articles on DEV Community by K X (@k_x_3bdabdd8981a983626896).</description>
    <link>https://dev.to/k_x_3bdabdd8981a983626896</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%2F3809194%2Fb90b10d3-ef5d-41df-a965-b8ef1e96d988.jpg</url>
      <title>DEV Community: K X</title>
      <link>https://dev.to/k_x_3bdabdd8981a983626896</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/k_x_3bdabdd8981a983626896"/>
    <language>en</language>
    <item>
      <title>Google I/O 2026 Wasn't About One More Model. It Was About the Agent Stack.</title>
      <dc:creator>K X</dc:creator>
      <pubDate>Sat, 23 May 2026 15:50:30 +0000</pubDate>
      <link>https://dev.to/k_x_3bdabdd8981a983626896/google-io-2026-wasnt-about-one-more-model-it-was-about-the-agent-stack-21ia</link>
      <guid>https://dev.to/k_x_3bdabdd8981a983626896/google-io-2026-wasnt-about-one-more-model-it-was-about-the-agent-stack-21ia</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-io-writing-2026-05-19"&gt;Google I/O Writing Challenge&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.amazonaws.com%2Fuploads%2Farticles%2Fvkgnvdh4agtph5a5c4lz.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.amazonaws.com%2Fuploads%2Farticles%2Fvkgnvdh4agtph5a5c4lz.png" alt="Google I/O 2026 agent stack" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The release that stuck with me
&lt;/h2&gt;

&lt;p&gt;The Google I/O 2026 announcement I keep coming back to is not a single model, a single demo, or a single product screenshot.&lt;/p&gt;

&lt;p&gt;It is the shape of the developer stack Google is assembling around Gemini: &lt;strong&gt;Google AI Studio for fast prototyping, the Gemini API for production integration, Managed Agents for less infrastructure friction, and Antigravity as an agent-first development environment.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Google's own challenge prompt asks us to go beyond summary, so here is my take: I/O 2026 was less about "look, the model is smarter" and more about "the unit of software is changing."&lt;/p&gt;

&lt;p&gt;The new unit is not just an app. It is a loop:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;intent -&amp;gt; prototype -&amp;gt; agent/tool loop -&amp;gt; deployed workflow -&amp;gt; feedback -&amp;gt; improvement
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That sounds abstract until you compare it with how developers actually build today. We still spend a lot of time translating intent into boilerplate, wiring tools, building glue code, and creating small internal dashboards that should not take a sprint. Google is clearly trying to compress that middle layer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this is different from another chatbot launch
&lt;/h2&gt;

&lt;p&gt;A chatbot helps when you already know what to ask.&lt;/p&gt;

&lt;p&gt;An agentic developer stack helps when the work itself has multiple steps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;inspect the current project&lt;/li&gt;
&lt;li&gt;create or modify code&lt;/li&gt;
&lt;li&gt;call tools&lt;/li&gt;
&lt;li&gt;run checks&lt;/li&gt;
&lt;li&gt;explain tradeoffs&lt;/li&gt;
&lt;li&gt;repeat until the workflow is closer to done&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That is why the developer announcements matter. The official Google I/O developer highlights describe updates around Google Antigravity, an enhanced Gemini API, and native Android support in Google AI Studio. The Developer Keynote roundup also points to Google AI Studio integrations, native Kotlin support, and Managed Agents through the Gemini API.&lt;/p&gt;

&lt;p&gt;Those details are easy to skim past. I think they are the main story.&lt;/p&gt;

&lt;p&gt;If AI Studio can turn an idea into an Android prototype faster, and the Gemini API can host agent behavior with less custom infrastructure, and Antigravity can make the development loop more agent-native, then Google is not just improving a model. It is trying to own the path from idea to shipped AI workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  The useful mental model: three layers
&lt;/h2&gt;

&lt;p&gt;The way I now think about Google's I/O 2026 developer stack is three layers.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Prototype layer: Google AI Studio
&lt;/h3&gt;

&lt;p&gt;AI Studio is the "try the idea now" layer.&lt;/p&gt;

&lt;p&gt;This matters because many AI projects die before they become software. Not because the model cannot do the task, but because the setup cost is too high: credentials, app shell, mobile scaffolding, API wiring, prompt iteration, output handling.&lt;/p&gt;

&lt;p&gt;Native Android support and Kotlin-oriented workflows are interesting because they lower the distance between "I have an idea" and "I can touch the thing on a device."&lt;/p&gt;

&lt;p&gt;My critique: fast prototyping is only valuable if it does not trap you in a toy environment. The winning version of AI Studio is not a magic demo generator. It is a staging area that teaches good patterns and lets developers graduate to real code.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Runtime layer: Gemini API and Managed Agents
&lt;/h3&gt;

&lt;p&gt;This is the layer I find most underrated.&lt;/p&gt;

&lt;p&gt;A lot of agent projects look impressive in a demo but become annoying in production because you have to maintain orchestration, tool calls, retries, memory boundaries, logs, permissions, and state.&lt;/p&gt;

&lt;p&gt;Managed Agents are interesting because they suggest Google wants to make agent infrastructure feel more like an API capability than a pile of custom glue.&lt;/p&gt;

&lt;p&gt;That does not remove the need for engineering judgment. In fact, it makes judgment more important. If agents are easier to create, developers need stronger defaults around observability, permission scopes, evaluation, and failure handling.&lt;/p&gt;

&lt;p&gt;The dangerous version is "just let the agent do it."&lt;/p&gt;

&lt;p&gt;The useful version is "give the agent a narrow job, clear tools, auditable outputs, and a way to fail safely."&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Development layer: Antigravity
&lt;/h2&gt;

&lt;p&gt;Antigravity is the signal that Google sees coding itself as an agent workflow, not just a text completion problem.&lt;/p&gt;

&lt;p&gt;That fits where developer tools are going. The IDE is no longer only a place where humans type code. It is becoming a coordination surface where humans, models, tests, tools, and deploy systems negotiate changes.&lt;/p&gt;

&lt;p&gt;This changes what "developer productivity" means.&lt;/p&gt;

&lt;p&gt;The old productivity question was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How fast can I write code?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The new productivity question is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;How safely can I turn intent into a reviewed, tested, shipped change?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That is a much better question.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I would build with this stack
&lt;/h2&gt;

&lt;p&gt;If I were using the Google I/O 2026 stack for a real project, I would build a small "agent readiness checker" for developer repos.&lt;/p&gt;

&lt;p&gt;The workflow would be:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Use AI Studio to prototype the UI and interaction.&lt;/li&gt;
&lt;li&gt;Use the Gemini API to inspect repository docs, tests, CI files, and issue history.&lt;/li&gt;
&lt;li&gt;Use a Managed Agent to produce a narrow readiness report.&lt;/li&gt;
&lt;li&gt;Ask the agent to suggest one safe improvement at a time.&lt;/li&gt;
&lt;li&gt;Require every suggestion to include a test or verification step.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The output would not be "rewrite my whole app." It would be closer to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"repo_status"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"almost shippable"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"highest_risk_gap"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"no CI for sample workflow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"safe_next_step"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"add a smoke test and GitHub Actions job"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"verification"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"run python -m unittest discover -s tests"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That is the kind of agent I trust: boring, narrow, inspectable, and useful.&lt;/p&gt;

&lt;h2&gt;
  
  
  What developers should be careful about
&lt;/h2&gt;

&lt;p&gt;My main concern after I/O is not that agents will be useless. It is that they will become too easy to deploy without enough boundaries.&lt;/p&gt;

&lt;p&gt;The hard parts are still hard:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;permissions&lt;/li&gt;
&lt;li&gt;cost controls&lt;/li&gt;
&lt;li&gt;prompt injection&lt;/li&gt;
&lt;li&gt;user consent&lt;/li&gt;
&lt;li&gt;logging&lt;/li&gt;
&lt;li&gt;human review&lt;/li&gt;
&lt;li&gt;model drift&lt;/li&gt;
&lt;li&gt;tool failure&lt;/li&gt;
&lt;li&gt;rollback&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The more powerful the stack becomes, the more important it is to design small loops instead of giant autonomous blobs.&lt;/p&gt;

&lt;p&gt;My rule of thumb:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If you cannot explain what the agent is allowed to do, what it is not allowed to do, and how you will verify the result, the agent is not ready for production.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  My takeaway
&lt;/h2&gt;

&lt;p&gt;Google I/O 2026 made me more convinced that AI development is moving from prompt demos to workflow systems.&lt;/p&gt;

&lt;p&gt;The interesting competition is not only "which model is best?" It is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;who gives developers the shortest path from idea to working workflow?&lt;/li&gt;
&lt;li&gt;who makes agent infrastructure observable and safe?&lt;/li&gt;
&lt;li&gt;who lets prototypes graduate into real software?&lt;/li&gt;
&lt;li&gt;who helps developers keep control as automation gets stronger?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That is why the AI Studio + Gemini API + Managed Agents + Antigravity direction feels important.&lt;/p&gt;

&lt;p&gt;It is not one more chatbot.&lt;/p&gt;

&lt;p&gt;It is a bet that the next generation of developer tools will be agent-native from the first sketch to the final deploy.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI disclosure
&lt;/h2&gt;

&lt;p&gt;I used AI assistance to organize this draft and check clarity. The perspective, source selection, final structure, and publication decision are mine.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources I read
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/challenges/google-io-writing-2026-05-19"&gt;Google I/O 2026 Writing Challenge&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/devteam/tune-in-and-join-the-google-io-2026-writing-challenge-1000-in-prizes-4apl"&gt;Tune in and Join the Google I/O 2026 Writing Challenge&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.google/innovation-and-ai/technology/developers-tools/google-io-2026-developer-highlights/" rel="noopener noreferrer"&gt;I/O 2026 developer highlights: Antigravity, Gemini API, AI Studio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developers.googleblog.com/all-the-news-from-the-google-io-2026-developer-keynote/" rel="noopener noreferrer"&gt;All the news from the Google I/O 2026 Developer keynote&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>googleiochallenge</category>
      <category>gemini</category>
      <category>devchallenge</category>
    </item>
    <item>
      <title>I Finished My Hermes Content Ops Agent With Tests, CI, and a Public Audit Trail</title>
      <dc:creator>K X</dc:creator>
      <pubDate>Fri, 22 May 2026 08:29:40 +0000</pubDate>
      <link>https://dev.to/k_x_3bdabdd8981a983626896/i-finished-my-hermes-content-ops-agent-with-tests-ci-and-a-public-audit-trail-2k9b</link>
      <guid>https://dev.to/k_x_3bdabdd8981a983626896/i-finished-my-hermes-content-ops-agent-with-tests-ci-and-a-public-audit-trail-2k9b</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-05-21"&gt;GitHub Finish-Up-A-Thon Challenge&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.amazonaws.com%2Fuploads%2Farticles%2Ftn3814i9cxua8nzph2tj.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.amazonaws.com%2Fuploads%2Farticles%2Ftn3814i9cxua8nzph2tj.png" alt="Hermes Agent Content Ops hero" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;I started with &lt;strong&gt;Hermes Agent Content Ops&lt;/strong&gt;, a real content-operations workflow for a Chinese WeChat Official Account.&lt;/p&gt;

&lt;p&gt;The private version uses Hermes Agent to help run a two-post-a-day media workflow: topic research, article packaging, WeChat-safe HTML, local visual assets, draft-first WeChat delivery, and a Xiaohongshu pet-supplies review queue.&lt;/p&gt;

&lt;p&gt;The first public repo was useful, but it was still mostly a challenge package. It had a README, diagrams, and sanitized sample scripts, but it did not have enough proof that the public artifact was finished and safe to maintain.&lt;/p&gt;

&lt;p&gt;The unfinished parts were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;no CI&lt;/li&gt;
&lt;li&gt;no tests&lt;/li&gt;
&lt;li&gt;no public audit command&lt;/li&gt;
&lt;li&gt;no before/after evidence inside the repo&lt;/li&gt;
&lt;li&gt;no explicit Copilot instructions for future assisted edits&lt;/li&gt;
&lt;li&gt;no repeatable quality gate for secret hygiene&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;For this finish-up pass, I turned the repo from a polished demo into a more complete public artifact.&lt;/p&gt;

&lt;p&gt;I added:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;content_ops/audit.py&lt;/code&gt; for repeatable completion checks&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;scripts/run_finish_audit.py&lt;/code&gt; to generate a Markdown audit report&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;tests/test_audit.py&lt;/code&gt; for basic quality gates&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;.github/workflows/ci.yml&lt;/code&gt; for GitHub Actions&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;.github/copilot-instructions.md&lt;/code&gt; for future Copilot-assisted work&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;BEFORE_AFTER.md&lt;/code&gt; to make the completion arc explicit&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;FINISH_UP_A_THON.md&lt;/code&gt; to document what changed and why&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;WATCH_LAYER.md&lt;/code&gt; and &lt;code&gt;content_ops/watch_layer.py&lt;/code&gt; after a community comment pointed out that cron should not be the whole operating model&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The public repo now has a way to answer: is the submission complete, inspectable, and safe to publish?&lt;/p&gt;

&lt;h3&gt;
  
  
  Update after community feedback
&lt;/h3&gt;

&lt;p&gt;After publishing the first version, Harpinder left a useful comment: the system should not rely only on cron. A real content operations agent should also have a watch layer that can wake on source changes, human review events, or safe retry conditions.&lt;/p&gt;

&lt;p&gt;I agreed, so I added a lightweight event-aware layer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;content_ops/watch_layer.py&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scripts/watch_content_events.py&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WATCH_LAYER.md&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tests/test_watch_layer.py&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;examples/watch-report.json&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cron still owns the 07:00 and 18:00 rhythm, but the watch layer now models event-based wakeups for changed research, approved human review, and WeChat draft upload failures.&lt;/p&gt;

&lt;p&gt;Example output:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"wakeAgent"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"nextAction"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"wake_agent"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"events"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"kind"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"source_changed"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"path"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"topic_research.md"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"reason"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"topic research changed; agent should re-evaluate freshness and angle"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"severity"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"info"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This made the project feel much less like "a cron script" and much more like an event-aware agent workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before &amp;amp; After
&lt;/h2&gt;

&lt;p&gt;Before:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Strong project idea.&lt;/li&gt;
&lt;li&gt;Real private workflow behind it.&lt;/li&gt;
&lt;li&gt;Good README and visuals.&lt;/li&gt;
&lt;li&gt;Sanitized sample scripts.&lt;/li&gt;
&lt;li&gt;But no automated verification.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Public audit command.&lt;/li&gt;
&lt;li&gt;Unit tests.&lt;/li&gt;
&lt;li&gt;CI workflow.&lt;/li&gt;
&lt;li&gt;Secret-hygiene check.&lt;/li&gt;
&lt;li&gt;Before/after docs.&lt;/li&gt;
&lt;li&gt;Copilot-ready instructions.&lt;/li&gt;
&lt;li&gt;A generated completion report.&lt;/li&gt;
&lt;li&gt;Event-aware wakeups for source changes, human review approvals, and safe retries.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Run the audit:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python scripts/run_finish_audit.py
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It writes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;finish-audit-report.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;p&gt;Repository:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/kax168/hermes-agent-content-ops" rel="noopener noreferrer"&gt;https://github.com/kax168/hermes-agent-content-ops&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Core files added during the finish-up:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;content_ops/audit.py
scripts/run_finish_audit.py
tests/test_audit.py
.github/workflows/ci.yml
.github/copilot-instructions.md
BEFORE_AFTER.md
FINISH_UP_A_THON.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The audit checks that the required public files exist, that the finish-up evidence exists, and that obvious credential tokens are not present in public source files.&lt;/p&gt;

&lt;h2&gt;
  
  
  How GitHub Copilot Helped
&lt;/h2&gt;

&lt;p&gt;The honest note: my local GitHub CLI exposed the &lt;code&gt;gh copilot&lt;/code&gt; entry point, but the Copilot CLI binary was not installed in this environment when I attempted to invoke it. I did not want to pretend otherwise.&lt;/p&gt;

&lt;p&gt;So I made the project &lt;strong&gt;Copilot-ready&lt;/strong&gt; rather than writing a fake Copilot story.&lt;/p&gt;

&lt;p&gt;The repo now includes &lt;code&gt;.github/copilot-instructions.md&lt;/code&gt;, which tells future Copilot-assisted edits to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;keep credentials out of the repo&lt;/li&gt;
&lt;li&gt;preserve draft-first publishing&lt;/li&gt;
&lt;li&gt;avoid live API calls in public samples&lt;/li&gt;
&lt;li&gt;keep Xiaohongshu review human-in-the-loop&lt;/li&gt;
&lt;li&gt;add tests or audit checks when changing the public package&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I also added a concrete audit script and CI workflow, which are useful because Copilot works better when a repository has clear boundaries, tests, and a feedback loop.&lt;/p&gt;

&lt;p&gt;If I continue this project with Copilot enabled, the next Copilot tasks are obvious: expand tests, add issue templates, strengthen the audit report, and refactor the sample scripts while preserving the safety boundaries.&lt;/p&gt;

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

&lt;p&gt;The hard part of finishing an agent project is not only making it run. It is making it inspectable.&lt;/p&gt;

&lt;p&gt;Agent workflows touch schedules, APIs, credentials, generated content, and user intent. A public repo needs more than screenshots. It needs proof that the dangerous parts are fenced off and the useful parts are easy to understand.&lt;/p&gt;

&lt;p&gt;This finish-up pass gave the project that missing layer: tests, CI, auditability, and a clear before/after story.&lt;/p&gt;

</description>
      <category>githubchallenge</category>
      <category>devchallenge</category>
      <category>githubcopilot</category>
    </item>
    <item>
      <title>I Built a Local Gemma 4 Content Radar for Private Editorial Decisions</title>
      <dc:creator>K X</dc:creator>
      <pubDate>Wed, 20 May 2026 07:07:04 +0000</pubDate>
      <link>https://dev.to/k_x_3bdabdd8981a983626896/i-built-a-local-gemma-4-content-radar-for-private-editorial-decisions-1hp8</link>
      <guid>https://dev.to/k_x_3bdabdd8981a983626896/i-built-a-local-gemma-4-content-radar-for-private-editorial-decisions-1hp8</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-gemma-2026-05-06"&gt;Gemma 4 Challenge: Build with Gemma 4&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.amazonaws.com%2Fuploads%2Farticles%2F3dedmg81kdqook2wbvma.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.amazonaws.com%2Fuploads%2Farticles%2F3dedmg81kdqook2wbvma.png" alt="Local Gemma 4 Content Radar hero" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;I built &lt;strong&gt;Local Gemma 4 Content Radar&lt;/strong&gt;, a small but practical editorial intelligence tool that runs Gemma 4 locally and turns a messy batch of content signals into a structured publishing decision report.&lt;/p&gt;

&lt;p&gt;The problem I wanted to solve is simple: creators and technical media operators do not need one more random idea generator. They need a way to compare signals, choose the strongest angle, explain why it matters now, and flag risks before something gets published.&lt;/p&gt;

&lt;p&gt;The tool takes a JSON file of candidate signals like trend notes, draft ideas, source snippets, audience hooks, or risk observations. It sends the full batch to a local Gemma 4 model through Ollama and returns:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the strongest topic to pursue&lt;/li&gt;
&lt;li&gt;why that topic matters now&lt;/li&gt;
&lt;li&gt;a reader-facing hook&lt;/li&gt;
&lt;li&gt;ranked alternative candidates&lt;/li&gt;
&lt;li&gt;evidence notes&lt;/li&gt;
&lt;li&gt;risk notes&lt;/li&gt;
&lt;li&gt;practical next actions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The project is designed around privacy. The default endpoint is &lt;code&gt;http://127.0.0.1:11434/api/generate&lt;/code&gt;, so the editorial notes stay on the local machine unless the user chooses otherwise.&lt;/p&gt;

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

&lt;p&gt;Repository:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/kax168/gemma4-local-content-radar" rel="noopener noreferrer"&gt;https://github.com/kax168/gemma4-local-content-radar&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Run it locally:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python3 scripts/content_radar.py examples/signals.json &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--out&lt;/span&gt; examples/radar-output.json &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--markdown&lt;/span&gt; examples/radar-output.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Example output from Gemma 4 selected this top topic:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Developers are testing local multimodal models for private document review&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Gemma 4 explained that this is timely because teams increasingly want to process proprietary PDFs, screenshots, internal docs, and research notes without sending sensitive data to cloud APIs. It also produced a hook, risk notes, ranked alternatives, and follow-up actions.&lt;/p&gt;

&lt;p&gt;That is the core user experience: local Gemma 4 acts as a private editorial reasoning layer, not just a text generator.&lt;/p&gt;

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

&lt;p&gt;The implementation is intentionally small and inspectable.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.
+-- examples/
|   +-- signals.json
|   +-- radar-output.json
|   +-- radar-output.md
+-- scripts/
|   +-- content_radar.py
+-- assets/
    +-- hero.svg
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The script does four things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;loads candidate signals from JSON&lt;/li&gt;
&lt;li&gt;builds a prompt that asks for strict structured output&lt;/li&gt;
&lt;li&gt;calls local Ollama with Gemma 4&lt;/li&gt;
&lt;li&gt;writes both JSON and Markdown reports&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I kept the project dependency-light on purpose. It uses Python's standard library so the workflow is easy to audit, clone, and adapt.&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Used Gemma 4
&lt;/h2&gt;

&lt;p&gt;I used &lt;code&gt;gemma4:e4b&lt;/code&gt; locally through Ollama.&lt;/p&gt;

&lt;p&gt;From my local setup:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Architecture: &lt;code&gt;gemma4&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Effective parameters: &lt;code&gt;8.0B&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Context length: &lt;code&gt;131072&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Capabilities reported by Ollama: completion, vision, audio, tools, thinking&lt;/li&gt;
&lt;li&gt;License: Apache License 2.0&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I chose E4B because this project is about practical local AI, not winning a benchmark screenshot. E4B is small enough to run locally, but capable enough to compare a batch of signals, rank competing angles, and explain the tradeoffs.&lt;/p&gt;

&lt;p&gt;Gemma 4 is doing the central work here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;long-context comparison across all candidate signals&lt;/li&gt;
&lt;li&gt;editorial prioritization&lt;/li&gt;
&lt;li&gt;hook generation&lt;/li&gt;
&lt;li&gt;risk-aware summarization&lt;/li&gt;
&lt;li&gt;next-step planning&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The part I like most is that the model is not being used as a cloud chatbot bolted onto a workflow. It is the local reasoning engine at the center of the product.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Gemma 4 Unlocked
&lt;/h2&gt;

&lt;p&gt;The useful unlock is privacy-friendly judgment.&lt;/p&gt;

&lt;p&gt;For content operations, the sensitive material is often not a final article. It is the messy middle: private notes, early research, screenshots, customer language, internal docs, and unverified claims. Sending all of that to a hosted API is not always acceptable.&lt;/p&gt;

&lt;p&gt;A local Gemma 4 workflow changes the shape of the product. It lets the user perform the first editorial pass on private material before anything is sanitized, summarized, or published.&lt;/p&gt;

&lt;p&gt;That makes this pattern useful beyond content marketing. The same approach could support:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;private research triage&lt;/li&gt;
&lt;li&gt;local document review&lt;/li&gt;
&lt;li&gt;pre-publication safety checks&lt;/li&gt;
&lt;li&gt;creator workflow planning&lt;/li&gt;
&lt;li&gt;multilingual editorial planning&lt;/li&gt;
&lt;li&gt;internal knowledge synthesis&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What I Would Build Next
&lt;/h2&gt;

&lt;p&gt;The next version would add a small browser UI, source importers, and an optional multimodal path where Gemma 4 can inspect screenshots or visual drafts before producing the editorial report.&lt;/p&gt;

&lt;p&gt;I would also add a "claim hygiene" mode that forces every generated angle to include what is known, what is inferred, and what still needs verification.&lt;/p&gt;

&lt;p&gt;For this submission, I wanted the core to be honest and reproducible: local model in, structured decision report out.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>gemmachallenge</category>
      <category>gemma</category>
    </item>
    <item>
      <title>I Built a Hermes Agent That Runs a Two-Post-a-Day AI Media Workflow</title>
      <dc:creator>K X</dc:creator>
      <pubDate>Wed, 20 May 2026 05:10:08 +0000</pubDate>
      <link>https://dev.to/k_x_3bdabdd8981a983626896/i-built-a-hermes-agent-that-runs-a-two-post-a-day-ai-media-workflow-1kbo</link>
      <guid>https://dev.to/k_x_3bdabdd8981a983626896/i-built-a-hermes-agent-that-runs-a-two-post-a-day-ai-media-workflow-1kbo</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hermes-agent-2026-05-15"&gt;Hermes Agent &lt;br&gt;
Challenge&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.amazonaws.com%2Fuploads%2Farticles%2Fd9pmvzpxfgvsx3aqezlp.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.amazonaws.com%2Fuploads%2Farticles%2Fd9pmvzpxfgvsx3aqezlp.png" alt="Hermes Agent Content Ops hero" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built a Hermes-powered content operations system for a Chinese WeChat Official Account focused on AI tools, cross-border monetization, content going global, and practical AI workflows.&lt;/p&gt;

&lt;p&gt;The goal was not to make a generic chatbot. I wanted Hermes to do the unglamorous operational work behind a real media account:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;research current topics before writing;&lt;/li&gt;
&lt;li&gt;pick a high-click-through topic that fits the account strategy;&lt;/li&gt;
&lt;li&gt;generate a polished WeChat article;&lt;/li&gt;
&lt;li&gt;create a theme-matched cover and visual structure;&lt;/li&gt;
&lt;li&gt;format everything as WeChat-safe HTML;&lt;/li&gt;
&lt;li&gt;upload the result into the WeChat Official Account draft box;&lt;/li&gt;
&lt;li&gt;run the whole thing twice per day on a schedule.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The account publishes one article at 7:00 AM and another at 6:00 PM. The morning slot favors practical tutorials and tool/workflow guides. The evening slot favors trend analysis, controversy, reviews, and case breakdowns.&lt;/p&gt;

&lt;p&gt;I also added a second operational workflow: a daily Xiaohongshu research queue for pet-supplies affiliate videos. It prepares search targets and review files, but intentionally keeps the final approval human-in-the-loop because the acceptance criteria require audio and on-screen text judgment.&lt;/p&gt;
&lt;h2&gt;
  
  
  Demo
&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.amazonaws.com%2Fuploads%2Farticles%2F41ockt1jddzpxsztibm4.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.amazonaws.com%2Fuploads%2Farticles%2F41ockt1jddzpxsztibm4.png" alt="Hermes Agent Content Ops architecture" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The WeChat pipeline produces a complete local article package for each run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~/.hermes/wechat-mp/YYYY-MM-DD/morning/
  article.md
  article.html
  article.json
  topic_research.md
  image_plan.md
  cover.png
  cover_prompt.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The draft creation step uses the official WeChat API. A run only counts as successful if the API returns a real draft media ID. Otherwise, the generated package stays on disk for inspection and Hermes reports the failure.&lt;/p&gt;

&lt;p&gt;The Xiaohongshu workflow produces a daily review queue:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~/.hermes/xhs-pet-supplies-videos/YYYY-MM-DD/
  review_queue.txt
  approved_links_template.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Approved video links are appended to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~/.hermes/xhs-pet-supplies-videos/links.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The important design choice: Hermes automates the repeatable operational work, but it does not pretend to verify things it cannot safely verify. For videos, "no Chinese narration" and "no more than 10 Chinese characters on screen" need visual/audio review, so the system creates the queue and saves only manually approved links.&lt;/p&gt;

&lt;h3&gt;
  
  
  Validation From My Local Build
&lt;/h3&gt;

&lt;p&gt;The private local deployment has been tested end-to-end with real scheduled jobs and real WeChat draft creation. I am not publishing account credentials, access tokens, draft media IDs, or screenshots that expose private account metadata, but the workflow is designed around concrete success checks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hermes cron has two active daily article jobs: morning and evening.&lt;/li&gt;
&lt;li&gt;A successful WeChat run must produce &lt;code&gt;article.md&lt;/code&gt;, &lt;code&gt;article.html&lt;/code&gt;, &lt;code&gt;article.json&lt;/code&gt;, &lt;code&gt;topic_research.md&lt;/code&gt;, &lt;code&gt;image_plan.md&lt;/code&gt;, and &lt;code&gt;cover.png&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;The WeChat API call must return a real draft result; otherwise the run is considered failed.&lt;/li&gt;
&lt;li&gt;The Xiaohongshu workflow creates review queues but does not auto-save links without human verification.&lt;/li&gt;
&lt;li&gt;The public repo contains sanitized runnable samples so the architecture can be reviewed without leaking secrets.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Repository: &lt;a href="https://github.com/kax168/hermes-agent-content-ops" rel="noopener noreferrer"&gt;github.com/kax168/hermes-agent-content-ops&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The private installation contains:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a Hermes skill for WeChat Official Account operations;&lt;/li&gt;
&lt;li&gt;deterministic cron scripts for reliable scheduled execution;&lt;/li&gt;
&lt;li&gt;WeChat Official Account API integration;&lt;/li&gt;
&lt;li&gt;a content strategy file persisted under Hermes home;&lt;/li&gt;
&lt;li&gt;Xiaohongshu review-queue scripts;&lt;/li&gt;
&lt;li&gt;environment-based model/provider configuration.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Secrets are stored outside the repo in &lt;code&gt;~/.hermes/.env&lt;/code&gt; and are never printed or committed.&lt;/p&gt;

&lt;h3&gt;
  
  
  My Tech Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Hermes Agent&lt;/li&gt;
&lt;li&gt;Hermes cron scheduler&lt;/li&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;WeChat Official Account API&lt;/li&gt;
&lt;li&gt;Google News RSS and Hacker News search for topic discovery&lt;/li&gt;
&lt;li&gt;Configurable model provider for article generation&lt;/li&gt;
&lt;li&gt;WeChat-safe inline HTML/CSS&lt;/li&gt;
&lt;li&gt;Local PNG cover generation as a reliable fallback&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How I Used Hermes Agent
&lt;/h2&gt;

&lt;p&gt;Hermes is the operating layer of the project, not just a model wrapper.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Persistent skills
&lt;/h3&gt;

&lt;p&gt;I created a local Hermes skill called &lt;code&gt;wechat-official-account-operator&lt;/code&gt;. It contains the account strategy, content rules, visual requirements, API safety defaults, output schema, and success criteria.&lt;/p&gt;

&lt;p&gt;That mattered because the account has a strong editorial position:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI tool tutorials and reviews;&lt;/li&gt;
&lt;li&gt;global AI product news;&lt;/li&gt;
&lt;li&gt;AI agents and automation;&lt;/li&gt;
&lt;li&gt;cross-border monetization;&lt;/li&gt;
&lt;li&gt;GEO, AdSense, affiliate, independent sites, and content export;&lt;/li&gt;
&lt;li&gt;legal "freebie" and cost-saving AI tool tactics.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The skill keeps these rules close to the agent so each run is not starting from a blank prompt.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Scheduled autonomous work
&lt;/h3&gt;

&lt;p&gt;Hermes cron runs two jobs every day:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;0 7 * * *&lt;/code&gt; for the morning article;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;0 18 * * *&lt;/code&gt; for the evening article.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is where Hermes felt different from a normal chat interface. The system is not waiting for a human to ask, "Please write a post now." It wakes up, collects context, generates artifacts, calls an API, and leaves a concrete result.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Tool use and API execution
&lt;/h3&gt;

&lt;p&gt;The WeChat pipeline performs several real steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Collect current topic candidates from web/news/community sources.&lt;/li&gt;
&lt;li&gt;Generate a topic-research file with candidate topics, source links, heat signals, and final rationale.&lt;/li&gt;
&lt;li&gt;Generate an article with a strong hook, practical value, risks, and CTA.&lt;/li&gt;
&lt;li&gt;Render a polished WeChat-safe HTML layout instead of dumping plain Markdown.&lt;/li&gt;
&lt;li&gt;Create a local cover image and visual plan.&lt;/li&gt;
&lt;li&gt;Write a machine-readable &lt;code&gt;article.json&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Upload the cover and article to WeChat through the official API.&lt;/li&gt;
&lt;li&gt;Report the run status.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I added a strict "no simulation" rule: the run is not successful unless the local files exist and the WeChat API returns a real draft result.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Practical reliability over agent theater
&lt;/h3&gt;

&lt;p&gt;One of the more interesting lessons was that a fully autonomous large-prompt agent run was not the most reliable way to handle scheduled publishing. Some agentic runs timed out or got stuck on browser/model calls.&lt;/p&gt;

&lt;p&gt;So I changed the architecture: Hermes still owns the schedule, skills, memory, and operational workflow, but the daily execution path uses deterministic Python scripts for the fragile parts.&lt;/p&gt;

&lt;p&gt;That hybrid design made the system more useful:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the agent defines and evolves the workflow;&lt;/li&gt;
&lt;li&gt;scripts perform predictable API/file work;&lt;/li&gt;
&lt;li&gt;Hermes cron keeps it alive on a schedule;&lt;/li&gt;
&lt;li&gt;failures leave inspectable artifacts instead of vague chat logs.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. Human-in-the-loop where judgment is required
&lt;/h3&gt;

&lt;p&gt;The Xiaohongshu workflow is deliberately semi-automatic. It searches for pet-supplies affiliate video candidates and prepares a review queue, but final saving requires manual confirmation.&lt;/p&gt;

&lt;p&gt;That is not a limitation I wanted to hide. It is a product decision. If the rule says "no Chinese narration" and "almost no Chinese on-screen text," then silently adding links without checking would produce bad data. Hermes is still useful because it removes the repetitive search/setup work while preserving the judgment step.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why This Fits the Judging Criteria
&lt;/h2&gt;

&lt;p&gt;The Build With Hermes Agent prompt is judged on effective use of Hermes Agent's agentic capabilities, technical implementation and code quality, creativity and originality, and usability/user experience. Here is how I designed for those points:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Agentic capabilities:&lt;/strong&gt; Hermes is used for persistent skills, scheduled execution, workflow memory, tool/API orchestration, and delivery reporting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Technical implementation:&lt;/strong&gt; Fragile steps are handled by deterministic scripts, credentials stay in environment files, generated artifacts are inspectable, and API success is verified instead of assumed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Creativity:&lt;/strong&gt; The project applies an open agent to a real media-operations workflow across WeChat and Xiaohongshu, not a generic assistant demo.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Usability:&lt;/strong&gt; The system defaults to draft creation instead of risky auto-publishing, keeps failures debuggable, and uses human review where automation would be unsafe.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What Makes This Useful
&lt;/h2&gt;

&lt;p&gt;This project is small, but it is real. It has all the annoying parts of actual automation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;credentials and API permissions;&lt;/li&gt;
&lt;li&gt;scheduled jobs;&lt;/li&gt;
&lt;li&gt;retries and timeouts;&lt;/li&gt;
&lt;li&gt;local artifacts for debugging;&lt;/li&gt;
&lt;li&gt;editorial constraints;&lt;/li&gt;
&lt;li&gt;platform-specific HTML limitations;&lt;/li&gt;
&lt;li&gt;safe publishing defaults;&lt;/li&gt;
&lt;li&gt;human review boundaries.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Hermes Agent was a good fit because the workflow needed memory, scheduling, tools, and persistence more than it needed a prettier chat response.&lt;/p&gt;

&lt;p&gt;The result is an agentic system that can operate a narrow but real content pipeline: from topic discovery to WeChat draft creation, twice a day.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Would Improve Next
&lt;/h2&gt;

&lt;p&gt;I would like to add:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a visual dashboard for scheduled run status;&lt;/li&gt;
&lt;li&gt;screenshot-based QA for WeChat article layout before upload;&lt;/li&gt;
&lt;li&gt;safer browser automation for Xiaohongshu candidate collection;&lt;/li&gt;
&lt;li&gt;automatic source-quality scoring;&lt;/li&gt;
&lt;li&gt;multi-platform repurposing from one article package to X/Twitter, LinkedIn, and short-video scripts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The biggest takeaway: the best agent projects are often not magic demos. They are workflows where the agent keeps showing up, on schedule, doing the boring parts correctly.&lt;/p&gt;

</description>
      <category>hermesagentchallenge</category>
      <category>devchallenge</category>
      <category>agents</category>
    </item>
    <item>
      <title>5 AI Prompt Engineering Techniques That Actually Work in 2026</title>
      <dc:creator>K X</dc:creator>
      <pubDate>Fri, 06 Mar 2026 06:17:44 +0000</pubDate>
      <link>https://dev.to/k_x_3bdabdd8981a983626896/5-ai-prompt-engineering-techniques-that-actually-work-in-2026-5el</link>
      <guid>https://dev.to/k_x_3bdabdd8981a983626896/5-ai-prompt-engineering-techniques-that-actually-work-in-2026-5el</guid>
      <description>&lt;p&gt;After testing hundreds of prompts over the past year, I've identified 5 techniques that consistently deliver high-quality outputs.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Specificity Over Generality
&lt;/h2&gt;

&lt;p&gt;❌ Bad: "Write a story"&lt;br&gt;
✅ Good: "Write a 500-word mystery story set in 1920s Paris, featuring a detective who solves crimes using psychology"&lt;/p&gt;

&lt;p&gt;The more specific you are, the better the output.&lt;/p&gt;
&lt;h2&gt;
  
  
  2. Role Assignment
&lt;/h2&gt;

&lt;p&gt;Start with: "You are an expert [role]..."&lt;/p&gt;

&lt;p&gt;This primes the AI to respond with domain-specific knowledge and appropriate tone.&lt;/p&gt;

&lt;p&gt;Example: "You are an expert copywriter with 10 years of experience in SaaS marketing..."&lt;/p&gt;
&lt;h2&gt;
  
  
  3. Output Format Specification
&lt;/h2&gt;

&lt;p&gt;Always specify the format you want:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bullet points&lt;/li&gt;
&lt;li&gt;Numbered lists&lt;/li&gt;
&lt;li&gt;JSON&lt;/li&gt;
&lt;li&gt;Markdown table&lt;/li&gt;
&lt;li&gt;Code blocks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This prevents the AI from choosing a format you don't need.&lt;/p&gt;
&lt;h2&gt;
  
  
  4. Iterative Refinement
&lt;/h2&gt;

&lt;p&gt;Don't expect perfection on the first try. Use follow-up prompts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Make it more concise"&lt;/li&gt;
&lt;li&gt;"Add more technical details"&lt;/li&gt;
&lt;li&gt;"Rewrite in a casual tone"&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  5. Context Layering
&lt;/h2&gt;

&lt;p&gt;Provide context in layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Background information&lt;/li&gt;
&lt;li&gt;Specific task&lt;/li&gt;
&lt;li&gt;Constraints&lt;/li&gt;
&lt;li&gt;Desired outcome&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Background: I'm writing a blog post about AI for beginners
Task: Explain neural networks
Constraints: Use simple language, no math
Outcome: 300 words, engaging tone
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;p&gt;If you want ready-to-use prompts, check out &lt;a href="https://fromlaerkai.store" rel="noopener noreferrer"&gt;LaerKai&lt;/a&gt; - a collection of 200 battle-tested prompts across 8 categories including creative writing, business content, and technical documentation.&lt;/p&gt;

&lt;p&gt;What prompt techniques work best for you? Share in the comments!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>prompts</category>
      <category>chatgpt</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
