<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>gaganpreet.sh</title>
  <subtitle>Notes on infrastructure, reliability, and the tools I build.</subtitle>
  <link href="https://gaganpreet.sh/feed.xml" rel="self" type="application/atom+xml"/>
  <link href="https://gaganpreet.sh/" rel="alternate" type="text/html"/>
  <id>https://gaganpreet.sh/</id>
  <updated>2026-09-17T00:00:00+05:30</updated>
  <author><name>Gaganpreet Singh</name><uri>https://gaganpreet.sh/</uri></author>

  <entry>
    <title>We gave Claude Code access to production.</title>
    <link href="https://gaganpreet.sh/posts/batman-mcp/"/>
    <id>https://gaganpreet.sh/posts/batman-mcp/</id>
    <published>2026-09-15T00:00:00+05:30</published>
    <updated>2026-09-17T00:00:00+05:30</updated>
    <summary>How batman connects Claude Code to production observability systems for incident investigation, with the security boundary explained.</summary>
  </entry>
  <entry>
    <title>The Office: A Local-First Platform for AI-Assisted Software Work</title>
    <link href="https://gaganpreet.sh/posts/the-office/"/>
    <id>https://gaganpreet.sh/posts/the-office/</id>
    <published>2026-09-07T00:00:00+05:30</published>
    <updated>2026-09-17T00:00:00+05:30</updated>
    <summary>A local-first platform coordinating Claude Code and Codex agents across repositories, including the limits behind the metaphor.</summary>
  </entry>
  <entry>
    <title>kubeguard: Helm-Aware Kubernetes PR Risk Analyzer</title>
    <link href="https://gaganpreet.sh/posts/kubeguard-intro/"/>
    <id>https://gaganpreet.sh/posts/kubeguard-intro/</id>
    <published>2026-07-07T00:00:00+05:30</published>
    <updated>2026-09-17T00:00:00+05:30</updated>
    <summary>Render full Helm context, validate it against live infrastructure, and put a calibrated risk signal on the PR.</summary>
  </entry>
  <entry>
    <title>Local Setup 2026: Arch Linux</title>
    <link href="https://gaganpreet.sh/posts/local-setup2026/"/>
    <id>https://gaganpreet.sh/posts/local-setup2026/</id>
    <published>2026-02-20T00:00:00+05:30</published>
    <updated>2026-09-17T00:00:00+05:30</updated>
    <summary>The terminal setup I actually use for production debugging, with the sharp edges left visible.</summary>
  </entry>
</feed>
