<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://codeongrass.hashnode.dev</loc>
    <lastmod>2026-09-19T10:11:40.717Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/inside-the-loop-vs-outside-the-loop-evaluating-agent-architectures</loc>
    <lastmod>2026-05-06T17:30:19.210Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/cut-claude-code-token-usage-98-with-purpose-built-mcps</loc>
    <lastmod>2026-05-06T17:30:17.861Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/catch-agent-mistakes-before-they-execute-agent-verifier-conduct</loc>
    <lastmod>2026-05-05T17:30:19.049Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/when-should-your-agent-ask-before-acting-a-3-tier-risk-framework</loc>
    <lastmod>2026-05-05T17:30:17.822Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/ai-agent-disaster-postmortems-the-3-structural-guardrails</loc>
    <lastmod>2026-05-04T17:30:20.040Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/25-claude-code-agents-in-production-the-hooks-architecture</loc>
    <lastmod>2026-05-04T17:30:18.609Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-a-coding-agent-deleted-a-production-database-in-9-seconds</loc>
    <lastmod>2026-05-03T17:30:16.657Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/where-to-gate-your-ai-coding-agent-a-3-checkpoint-framework</loc>
    <lastmod>2026-05-03T17:30:15.412Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/claude-code-vs-codex-for-heavy-users-limits-costs-and-when-to-switch</loc>
    <lastmod>2026-05-01T17:30:16.584Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/the-core-agentic-workflow-task-plan-review-approve-pr</loc>
    <lastmod>2026-04-30T17:30:15.844Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/why-your-claude-agent-ignores-rules-past-15-tool-calls</loc>
    <lastmod>2026-04-30T17:30:14.840Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/the-mcp-server-ecosystem-in-2026-integration-layer-for-ai-agents</loc>
    <lastmod>2026-04-29T17:30:19.251Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/hardening-claude-code-in-github-actions-after-the-cvss-9-4-cve</loc>
    <lastmod>2026-04-29T17:30:17.388Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-i-shipped-a-production-ios-app-solo-with-claude</loc>
    <lastmod>2026-04-28T17:30:17.339Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/leo-adhdev-tmux-notify-aipass-4-diy-control-layers-compared</loc>
    <lastmod>2026-04-28T17:30:16.228Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/coordinate-multiple-claude-code-sessions-on-a-shared-repo</loc>
    <lastmod>2026-04-27T17:30:15.067Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-to-build-human-in-the-loop-approval-gates-for-ai-coding-agents</loc>
    <lastmod>2026-04-26T17:30:19.129Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/prompt-injection-in-ai-coding-agents-3-attack-vectors-4-defenses</loc>
    <lastmod>2026-04-26T17:30:17.790Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/daytona-vs-agentbox-vs-diy-sandbox-runtime-for-ai-agents</loc>
    <lastmod>2026-04-25T17:30:17.815Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/claude-code-ecosystem-2026-memory-sync-and-mobile-tools</loc>
    <lastmod>2026-04-25T17:30:16.617Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/mobile-ui-quality-control-checklist-for-ai-generated-code</loc>
    <lastmod>2026-04-24T17:30:17.064Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-to-review-ai-generated-code-that-ships-faster-than-you-can-read</loc>
    <lastmod>2026-04-24T17:30:15.799Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/the-permission-layer-is-98-of-agent-engineering</loc>
    <lastmod>2026-04-24T13:50:29.018Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-to-keep-parallel-coding-agents-from-stepping-on-each-other</loc>
    <lastmod>2026-04-24T13:50:27.675Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-to-audit-what-your-ai-agent-actually-did-after-the-session</loc>
    <lastmod>2026-04-24T12:31:30.362Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/why-claude-code-pretooluse-hooks-can-still-be-bypassed</loc>
    <lastmod>2026-04-24T12:32:40.075Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-to-review-your-agent-s-code-changes-from-your-phone</loc>
    <lastmod>2026-04-02T13:30:45.652Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-to-monitor-a-long-running-coding-agent-overnight</loc>
    <lastmod>2026-04-02T13:21:40.869Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/setting-up-grass-with-a-daytona-remote-server</loc>
    <lastmod>2026-04-01T12:57:25.249Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/how-to-connect-grass-to-claude-code</loc>
    <lastmod>2026-04-01T12:51:34.527Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/getting-started-with-grass-in-5-minutes</loc>
    <lastmod>2026-04-01T12:53:22.315Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/archive</loc>
    <lastmod>2026-09-19T10:11:40.717Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://codeongrass.hashnode.dev/recommendations</loc>
    <lastmod>2026-09-19T10:11:40.717Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>