<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Blog — Fabio Borges</title>
    <link>https://flabs.tech/blog</link>
    <description>Engineering blog by Fabio Borges — web development, AI agents, and production systems from real-world engineering.</description>
    <language>en</language>
    <lastBuildDate>Wed, 09 Sep 2026 16:51:39 GMT</lastBuildDate>
    <atom:link href="https://flabs.tech/api/rss" rel="self" type="application/rss+xml" />
    <managingEditor>noreply@example.com (Fabio Borges)</managingEditor>
    <webMaster>noreply@example.com (Fabio Borges)</webMaster>
    <image>
      <url>https://flabs.tech/images/avatar.webp</url>
      <title>Blog — Fabio Borges</title>
      <link>https://flabs.tech/blog</link>
    </image>
    
    <item>
      <title><![CDATA[OpenCode Go now requires x-opencode-session — here's why and how to fix it]]></title>
      <link>https://flabs.tech/blog/opencode-go-session-header-required</link>
      <guid>https://flabs.tech/blog/opencode-go-session-header-required</guid>
      <pubDate>Mon, 07 Sep 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[OpenCode Go started enforcing the x-opencode-session header for routing optimization. If your chat widget or agent broke today, here's what happened and how to fix it.]]></description>
      
      <category>Engineering</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[Mysterious Contributor on my GitHub Repository: What Happened and How to Avoid It]]></title>
      <link>https://flabs.tech/blog/mysterious-contributor-on-my-github-repository</link>
      <guid>https://flabs.tech/blog/mysterious-contributor-on-my-github-repository</guid>
      <pubDate>Thu, 03 Sep 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[A contributors pill shows three avatars, the API lists one, and git log agrees with the API. We traced a live incident on atlaslink — branch fix/issue-7-isolate-session-diagram showed fworks-tech, claude and krkshw — to a force-pushed orphan history, GitHub's two contributor graphs, and the cache that makes ghosts linger for weeks. Here is which graph to trust and how to prove it.]]></description>
      <enclosure url="https://flabs.tech/images/ghost-contributors-sidebar.webp" type="image/jpeg" />
      <category>Engineering</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[Never Leave the Chatbox Hanging: Fixing a Silent Timeout in Our AI Assistant]]></title>
      <link>https://flabs.tech/blog/never-leave-the-chatbox-hanging</link>
      <guid>https://flabs.tech/blog/never-leave-the-chatbox-hanging</guid>
      <pubDate>Thu, 03 Sep 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[A real visitor question about the Atlaslink project froze our portfolio AI — Thinking, then Typing, then nothing. No error, no recovery. Here's the four-layer postmortem and why every layer of an AI feature needs its own way to fail fast.]]></description>
      
      <category>Engineering</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[The Agenthood news digest now writes itself]]></title>
      <link>https://flabs.tech/blog/agenthood-news-digest-agent</link>
      <guid>https://flabs.tech/blog/agenthood-news-digest-agent</guid>
      <pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[A scheduled AI agent drafts the Agenthood news digest from GitHub releases, validates it against a strict contract, and opens a PR for human review. Here's how it works and what our own review caught.]]></description>
      
      <category>AI</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[DevSprint — JavaScript Quiz Mini-Game]]></title>
      <link>https://flabs.tech/blog/devsprint-quiz</link>
      <guid>https://flabs.tech/blog/devsprint-quiz</guid>
      <pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[Test your JavaScript fundamentals with DevSprint: 20 questions, 3 lives, 20 seconds each. Leaderboard, achievements, and referral opportunities for top scorers.]]></description>
      
      <category>Projects</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[Effective Prompt Techniques: 6 Foundational Prompting Techniques]]></title>
      <link>https://flabs.tech/blog/effective-prompt-techniques</link>
      <guid>https://flabs.tech/blog/effective-prompt-techniques</guid>
      <pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[We explain that prompt engineering is simply the practice of designing effective instructions for AI systems, combining familiar human communication principles with AI-specific considerations. We introduce six foundational techniques: giving context, showing examples of desired outputs, specifying constraints, breaking complex tasks into steps, asking the AI to think first, and defining the AI's role or tone. We also share troubleshooting strategies for when responses aren't quite right and highlight common patterns that lead to successful interactions.]]></description>
      
      <category>AI</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[How to Build an AI Agent: The Complete Engineering Guide]]></title>
      <link>https://flabs.tech/blog/how-to-build-an-ai-agent</link>
      <guid>https://flabs.tech/blog/how-to-build-an-ai-agent</guid>
      <pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[A practical, step-by-step guide to building production AI agents — from purpose definition to testing. No hype, just the engineering decisions that matter.]]></description>
      
      <category>AI</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[The Bouncer: how we defend a public AI endpoint from prompt injection, cost drains, and IP spoofing]]></title>
      <link>https://flabs.tech/blog/ai-chat-abuse-prevention</link>
      <guid>https://flabs.tech/blog/ai-chat-abuse-prevention</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[flabs.tech's AI assistant is a public, unauthenticated endpoint that calls a paid model. We built a deterministic abuse-prevention pipeline — investigation, quarantine tiers, two-tier injection detection, and shadow-mode rollout — without ever locking out a legitimate visitor.]]></description>
      
      <category>Engineering</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[DeepSeek V4 Flash on OpenCode Go now requires China hosting opt-in]]></title>
      <link>https://flabs.tech/blog/deepseek-v4-flash-opencode-go-china-toggle</link>
      <guid>https://flabs.tech/blog/deepseek-v4-flash-opencode-go-china-toggle</guid>
      <pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[The official V4-Flash-0731 release (July 31, 2026) is served exclusively via DeepSeek's PRC infrastructure. OpenCode Go/Zen now requires an explicit 'Enable models hosted in China' toggle. Here's what changed and your options.]]></description>
      
      <category>Engineering</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[Your Portfolio Should Answer Questions, Not Just List Them]]></title>
      <link>https://flabs.tech/blog/ai-portfolio-assistant</link>
      <guid>https://flabs.tech/blog/ai-portfolio-assistant</guid>
      <pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[We added a floating AI assistant to flabs.tech that knows everything about Fabio's experience, skills, and projects. Here's why every portfolio should have one.]]></description>
      
      <category>AI</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[ChainTelescope — from Jupyter notebook to production crypto command center]]></title>
      <link>https://flabs.tech/blog/chain-telescope-from-jupyter-to-streamlit</link>
      <guid>https://flabs.tech/blog/chain-telescope-from-jupyter-to-streamlit</guid>
      <pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[How a personal crypto analysis notebook evolved through two renames and a full modular rewrite into a production Streamlit dashboard with multi-provider fallback, AI assistant, and CI-enforced quality gates.]]></description>
      
      <category>Engineering</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[OpenCode Zen and Go — what they are, what they cost, and how Agenthood connects to them]]></title>
      <link>https://flabs.tech/blog/opencode-zen-and-go</link>
      <guid>https://flabs.tech/blog/opencode-zen-and-go</guid>
      <pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[OpenCode is more than an open-source coding agent — it also runs Zen (pay-as-you-go) and Go (subscription) model APIs. Here's how they work, what they cost, and how Agenthood integrates with both.]]></description>
      
      <category>Engineering</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[Agenthood v3.0.0 — M5 Intelligence is shipped]]></title>
      <link>https://flabs.tech/blog/agenthood-v3-is-out</link>
      <guid>https://flabs.tech/blog/agenthood-v3-is-out</guid>
      <pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[v3.0.0 introduces hierarchical RAG, agent-controlled retrieval, 16-member orchestration, OpenCode providers, governance docs, and 527 passing tests.]]></description>
      
      <category>AI</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[Agenthood is now on SkillsMP and Skills.sh]]></title>
      <link>https://flabs.tech/blog/agenthood-skills-registries</link>
      <guid>https://flabs.tech/blog/agenthood-skills-registries</guid>
      <pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[The full Society now ships as open Agent Skills — one canonical SKILL.md each, installable from Skills.sh or browsable on SkillsMP.]]></description>
      
      <category>AI</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[Agenthood: The Academy is live]]></title>
      <link>https://flabs.tech/blog/agenthood-the-academy</link>
      <guid>https://flabs.tech/blog/agenthood-the-academy</guid>
      <pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[25 practical articles across 3 levels — from GenAI and RAG fundamentals to production-ready agent systems.]]></description>
      
      <category>AI</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
    <item>
      <title><![CDATA[GraphQL Federation at scale — what I learned shipping it to a US telecom]]></title>
      <link>https://flabs.tech/blog/graphql-federation-at-scale</link>
      <guid>https://flabs.tech/blog/graphql-federation-at-scale</guid>
      <pubDate>Fri, 05 Jun 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[Shipping Apollo Federation to production for a major US telecom's AI checkout flow — subgraph architecture, N+1 elimination, WunderGraph as the gateway, and the observability setup that let us actually debug it.]]></description>
      
      <category>Engineering</category>
      <author>noreply@example.com (Fabio Borges)</author>
    </item>
  </channel>
</rss>