# Srijan Shukla > Senior SRE turned AI builder. I build reliable agent systems, developer tooling, and production infrastructure. 8+ years across AWS / Azure / GCP. Open-source MCPs and AI dev tools at 140+ GitHub stars. This file is an llms.txt index (https://llmstxt.org) for AI agents and crawlers. Every writing piece and project below has a raw markdown endpoint at `/writing/.md` or `/projects/.md` - prefer those over scraping HTML. ## Identity - Home: https://srijanshukla.com/ - About: https://srijanshukla.com/about-me (markdown: https://srijanshukla.com/about-me.md) - Resume: https://srijanshukla.com/resume (markdown: https://srijanshukla.com/resume.md) - Quantified self (hub for time + calories audits): https://srijanshukla.com/quantified-self - Time audit (15-min sampling, public mirror): https://srijanshukla.com/quantified-self/time - Calories audit (calorie deficit mirror): https://srijanshukla.com/quantified-self/calories - GitHub: https://github.com/srijanshukla18 - LinkedIn: https://linkedin.com/in/srijanshukla18 - X / Twitter: https://x.com/srijanshukla18 - Email: srijanshukla18@gmail.com - Based: Bengaluru, IST ## Discovery - RSS: https://srijanshukla.com/rss.xml - Sitemap: https://srijanshukla.com/sitemap-index.xml - Writing index: https://srijanshukla.com/writing - Projects index: https://srijanshukla.com/projects ## Writing · AI - [I Built an AI Detector on My Own Blog. Then I Beat It.](https://srijanshukla.com/writing/ai/ai-text-detection-is-a-style-classifier.md) - Two generic detectors failed on my content. So I built my own on my own ground truth: pre-2026 posts are human, 2026 posts are machine-written. It scored 44 for 44. Then I attacked it for an evening, drove its verdict on this very post down to 0.313, and packaged the attack as a skill. (2026-08-11) - [AI Builder Notes - Week of June 14, 2026](https://srijanshukla.com/writing/ai/ai-builder-notes-week-of-june-14-2026.md) - Notes on agent loops, deterministic workflows, Claude Fable, OpenRouter Fusion, and Google Open Knowledge Format. (2026-06-14) - [AI Builder Notes - Week of June 8, 2026](https://srijanshukla.com/writing/ai/ai-builder-notes-week-of-june-8-2026.md) - AI-assisted notes from my liked-tweets feed, organized around agent loops, cloud agent infrastructure, skill security, memory, and runtime context. (2026-06-08) - [Notes on agent engineering](https://srijanshukla.com/writing/ai/notes-on-agent-engineering.md) - Notes on agent engineering: what counts as an agent, why long tasks fail, harness design, eval loops, observability, and when teams build vs buy. (2026-06-03) - [AI Builder Notes - May 2026](https://srijanshukla.com/writing/ai/may-ai-builder-newsletter.md) - AI-assisted notes from my liked-tweets feed, organized around agent workflows, browser traces, model loops, and guardrails. (2026-05-30) - [A quantified-self setup with one AI agent and two readouts](https://srijanshukla.com/writing/ai/quantified-self-with-one-agent-and-two-readouts.md) - One WhatsApp thread with Hermes Agent captures what I do every 15 minutes and what I eat, writes two JSON files, and this site renders two public readouts from them. Why it works, and why I only track two things. (2026-05-17) - [AI Builder Notes - April 2026](https://srijanshukla.com/writing/ai/april-ai-builder-newsletter.md) - AI-assisted notes from my liked-tweets feed, organized around harnesses, managed agents, memory, workflow packaging, and enterprise AI work. (2026-04-30) - [Model overthinking is a control problem](https://srijanshukla.com/writing/tech/model-overthinking-is-a-control-problem.md) - High thinking budgets can reduce control, especially when stale context and autonomous tool use mix together. (2026-04-14) - [Skill Sync Cron](https://srijanshukla.com/writing/tech/what-happened-when-i-let-an-agent-design-shared-skill-sync.md) - One skills repo, two laptops, five agent runtimes. I let an agent design the sync, and every unstated decision gave it room to optimize for control instead of maintainability. (2026-04-14) - [Sequential Gated Prompting with a Pi extension](https://srijanshukla.com/writing/tech/feature-end-extension.md) - I wanted one cleanup workflow after each feature and tried building a Pi extension for it. Packing all three steps into a single prompt failed quietly, so the extension now runs them as sequential gated steps. (2026-04-12) - [Frontiers in Agentic Design](https://srijanshukla.com/writing/tech/frontier-of-agentic-design.md) - The written version of my talk on agentic design. The model is one layer; the interesting system is the harness, context, memory, control loop, and review process around it. (2026-04-12) - [What Happened When I Tried to Coordinate Two AI Agents Over NFS](https://srijanshukla.com/writing/tech/nfs-to-git-agent-bus.md) - A shared mount looked like the cleanest way to make two agent instances talk across machines. A 30 minute directory cache made it unreliable, so Git became the bus instead. (2026-04-12) - [Vibe Coded a `watch` Command for Autonomous LLMs, and It Became My Debugging Loop](https://srijanshukla.com/writing/tech/vigil-watch-command-for-autonomous-llms.md) - Once I had LLMs editing code autonomously, I wanted to watch a directory breathe in real time. Existing tools gave me file events or diffs or a TUI, never all three, so I built vigil. (2026-04-12) - [TAO - territorial agent orchestration](https://srijanshukla.com/writing/tech/territorial-agent-orchestration.md) - A prompt rule for running parallel agents without conflicts: the coordinator owns the shared work, sub-agents only get isolated slices. (2026-02-22) ## Writing · Infrastructure - [What Happened When I Tried to Use S3 Like Dropbox on macOS](https://srijanshukla.com/writing/tech/rclone-s3-mount-macos.md) - I mounted an S3 bucket as a local folder in Finder with rclone and FUSE-T, auto-mounted on login. This is the full setup, the flags that make it behave, and where it falls over. (2026-04-12) - [AWS Cloud Infra Gotchas](https://srijanshukla.com/writing/tech/aws-cloud-infra-gotchas.md) - You can run AWS Batch jobs as pods in your Kubernetes cluster. Pretty cool actually. As expected the AWS tutorial is reliable, you follow it step by step... (2025-08-27) - [Dropbox download to your VM](https://srijanshukla.com/writing/tech/dropbox-download-to-your-vm.md) - Handy script to download all your business from dropbox This script had to undergo a lot of iterations, it failed a lot of times after download for hours on... (2025-08-27) - [Geofence validation on Google Maps JS API](https://srijanshukla.com/writing/tech/geofence-validation-on-google-maps-js-api.md) - Note: This post reflects my 2019 exploration of geofence validation. Today, libraries like Turf.js or GEOS handle these cases more efficiently. Suppose you... (2025-08-27) - [Incident - 20th Feb, 21st Feb 2017](https://srijanshukla.com/writing/tech/incident-20th-feb-21st-feb-2017.md) - I can write about the whole incident in detail because this was my own startup. I was the one man tech team here for about 2 years. What happened = 20th Feb... (2025-08-27) - [K8s DNS fail](https://srijanshukla.com/writing/tech/k8s-dns-fail.md) - Let the service name be ‘banana’ Let the pods be of the service ‘pineapple’ There was a rise in 502s accompanied by cannot lookup banana and interestingly... (2025-08-27) - [Kubernetes, Terraform, Kafka and others](https://srijanshukla.com/writing/tech/kubernetes-terraform-kafka-and-others.md) - Kubernetes: TIL in a k8s pod when you define env vars, if you define the same env var twice, the latter one takes precendence how resource quotas work in... (2025-08-27) - [WebRTC](https://srijanshukla.com/writing/tech/webrtc.md) - What a joy! It was a breath of fresh air when I came across the requirement of implementing live streaming. It was quite a learning curve to understand how... (2025-08-27) - [When OpenTelemetry Auto-Instrumentation Meets Python PEX, A Debugging Journey](https://srijanshukla.com/writing/tech/when-opentelemetry-auto-instrumentation-meets-python-pex-a-debugging-journey.md) - OpenTelemetry auto-instrumentation worked in a Python REPL but not in the actual FastAPI server. The reason was PEX running Python with -sE flags, which ignore PYTHONPATH. How I found it, and two ways to fix it. (2025-08-27) - [cpu ram disk](https://srijanshukla.com/writing/you-a-junior-infra-techie/cpu-ram-disk.md) - Explaining CPU, RAM, and disk to juniors with a kitchen analogy: chef, counter, pantry. Covers iowait, steal time, throttling, overcommit, and IOPS vs bandwidth. (2025-08-27) - [VPS vs VM vs Containers](https://srijanshukla.com/writing/you-a-junior-infra-techie/vps-vs-vm-vs-containers.md) - VPS, VM, and containers get used interchangeably. They solve the same problem - packing more workloads onto fewer machines - at different abstraction levels. The breakdown I give juniors. (2025-08-27) - [data store](https://srijanshukla.com/writing/you-a-junior-infra-techie/data-store.md) - How I explain data storage choices to juniors. The questions to ask about your data first, then the usual suspects: relational databases, object stores, warehouses, NoSQL, and file systems. (2025-02-08) - [encryption, compression, encoding, hashing, checksums, and error correction](https://srijanshukla.com/writing/you-a-junior-infra-techie/encryption-compression-encoding-hashing-checksums-and-error-correction.md) - Encryption, compression, encoding, hashing, checksums and error correction, explained as tools in a toolbox for juniors. What each one is for and the mix-ups to avoid. (2025-02-08) - [networking](https://srijanshukla.com/writing/you-a-junior-infra-techie/networking.md) - My mental model of networking from IP packets to HTTP, written down for juniors with a postal-system analogy. IP is the address, TCP/UDP the postage, DNS the phone book, TLS the sealed envelope, HTTP the letter. (2025-02-08) - [Mac Utilities](https://srijanshukla.com/writing/tech/mac-utilities.md) - April 1, 2019 I’ll keep updating this post as I come across new stuff. The external hard drive is detected.. but won’t mount? grep for the fsck process,... (2023-12-09) ## Writing · Others - [A physics explainer whose lessons are unit tests](https://srijanshukla.com/writing/tech/physics-explainer-whose-lessons-are-unit-tests.md) - How I built Spin Lab, an interactive table-tennis spin course, by keeping the physics pure, precomputing every shot into a frame timeline, and asserting the prose itself in a headless test suite. Plus the calibration bug that proved four of my serves were physically impossible. (2026-07-26) - [Chessmaster Grandmaster on your Mac](https://srijanshukla.com/writing/chessmaster-grandmaster-on-your-mac.md) - How a nostalgia trip through Windows XP on UTM failed, why QEMU could not provide the Direct3D support Chessmaster needed, and why Whisky ended up being the actual fix. (2026-02-20) - [meta, fun, random](https://srijanshukla.com/writing/tech/meta-fun-random.md) - Reminder: you can just do things a new word pedagogy. which means the method of teaching something. another unrelated word tacit knowledge. knowledge that... (2025-08-27) - [you can just do things](https://srijanshukla.com/writing/you-can-just-do-things.md) - There is nothing more that needs to be said. (2025-08-27) - [speed is king](https://srijanshukla.com/writing/musings-alone/speed-is-king.md) - We often underestimate the value of speed in everything we do. People are always amazed when someone does something faster. The combination of speed and... (2025-03-03) - [John Von Goddamn Neumann](https://srijanshukla.com/writing/just-stuff/john-von-goddamn-neumann.md) - VON GODDAMN NEUMANN https://medium.com/cantors paradise/the unparalleled genius of john von neumann 791bb9f42a2d https://medium.com/cantors paradise (2025-02-08) - [2018 first marathon attempt](https://srijanshukla.com/writing/musings-alone/2018-first-marathon-attempt.md) - My first marathon. Attempt. 28 07 2017. What a fail. Those words keep coming back to me. And it was, a big failure. I ran for the first 10kms, then the pain... (2025-02-08) - [aging hometown](https://srijanshukla.com/writing/musings-alone/aging-hometown.md) - (crosspost from https://thinkdeli.com/post/aging hometown 1119) Parents getting old, they are not able to do with ease what they were able to before.... (2025-02-08) - [bars from seedhe maut](https://srijanshukla.com/writing/just-stuff/bars-from-seedhe-maut.md) - end of 2023, start of 2024 heavily obsessed with this duo infact I only exclusively listen to their songs now they are a vibe, that I've not seen anywhere... (2025-01-31) - [Ideas I cannot classify](https://srijanshukla.com/writing/musings-alone/ideas-i-cannot-classify.md) - Badi badi baatein, vada paav khaatein We look for so many optimizations in our day to day lives. There are people who are hellbent on collecting advance... (2023-12-09) ## Projects - [alpha](https://srijanshukla.com/projects/alpha.md) - IAM policy rightsizing agent with AI-powered risk signals and instant rollback. · https://github.com/srijanshukla18/alpha - [chat-harvest](https://srijanshukla.com/projects/chat-harvest.md) - Local-first archive for AI chat traces across agents, designed as a substrate for DSPy/GEPA-style optimization loops. · https://github.com/srijanshukla18/chat-harvest - [chorus-ai](https://srijanshukla.com/projects/chorus-ai.md) - Frontend-only LLM ensemble interface with bring-your-own OpenRouter/API keys and client-side multi-model workflows. · https://github.com/srijanshukla18/chorus-ai.git - [extract-lessons-book](https://srijanshukla.com/projects/extract-lessons-book.md) - Ebook/document normalizer with optional OCR and LLM-generated advice + flowcharts. It also became a practical OCR evaluation project for me: for most books, plain PDF text extraction worked better than heavy OCR, so GLM OCR ended up as a fallback reserved for noisy pages, scans, or extraction failures. · https://github.com/srijanshukla18/extract-lessons-book - [hashlines-mcp](https://srijanshukla.com/projects/hashlines-mcp.md) - MCP server for hashline-anchored safe file read/edit workflows inspired by this archived write-up: https://web.archive.org/web/20260412162933/https://blog.can.ac/2026/02/12/the-harness-problem/ · https://github.com/srijanshukla18/hashlines-mcp - [ita-kg](https://srijanshukla.com/projects/ita-kg.md) - Knowledge-graph representation of the Indian Income Tax Act so agents can traverse section-to-section relationships explicitly. · https://github.com/srijanshukla18/ita-kg.git - [logsieve](https://srijanshukla.com/projects/logsieve.md) - log deduplication sidecar using Drain3 algorithm, reduces volumes ~90%. · https://github.com/srijanshukla18/logsieve - [murmur](https://srijanshukla.com/projects/murmur.md) - Wispr Flow OSS - live streaming voice-to-text using whisper.cpp with Metal acceleration. · https://github.com/srijanshukla18/murmur.git - [netwatchrs](https://srijanshukla.com/projects/netwatchrs.md) - Rust network diagnostics toolkit I built while debugging inconsistent Wi‑Fi and suspected service-quality issues on my own machine; the goal was to see what was actually happening under the hood instead of relying on vague network status indicators. · https://github.com/srijanshukla18/netwatchrs.git - [podcast-watcher](https://srijanshukla.com/projects/podcast-watcher.md) - Open-source attempt to replicate Gemini-style long-form YouTube understanding: extract MP3 audio with ffmpeg, build timestamped transcripts, detect only meaningful frame changes, and feed the useful video/audio context into an LLM. I found the visual path added little value, so it effectively converged into an audio-first podcast/video understanding pipeline. · https://github.com/srijanshukla18/podcast-watcher.git - [softcron](https://srijanshukla.com/projects/softcron.md) - Kubernetes CronJob controller with Prometheus gating, pacing, and jitter. · https://github.com/srijanshukla18/softcron - [vigil](https://srijanshukla.com/projects/vigil.md) - Watch your codebase breathe; TUI for real-time file change monitoring with inline diffs · https://github.com/srijanshukla18/vigil - [wiki-in-a-box](https://srijanshukla.com/projects/wiki-in-a-box.md) - offline Wikipedia with hybrid no‑index RAG - powered by gpt-oss:20b · https://github.com/srijanshukla18/wiki-in-a-box - [scx-slo](https://srijanshukla.com/projects/scx-slo.md) - eBPF CPU scheduler enforcing latency SLOs via Earliest Deadline First. · https://github.com/srijanshukla18/scx-slo - [contextgraph](https://srijanshukla.com/projects/contextgraph.md) - Decision audit ledger for AI agents - captures "why" as queryable data. · https://github.com/srijanshukla18/contextgraph - [xray](https://srijanshukla.com/projects/xray.md) - structural code intelligence for AI assistants using ast-grep. · https://github.com/srijanshukla18/xray - [claude-memory-viz](https://srijanshukla.com/projects/claude-memory-viz.md) - memory visualization for Anthropic's Claude memory MCP. · https://github.com/srijanshukla18/claude-memory-viz - [kubectl-smart](https://srijanshukla.com/projects/kubectl-smart.md) - turns noisy Kubernetes debugging into signal-first workflows. · https://github.com/srijanshukla18/kubectl-smart ## Notes for crawlers - Content is permissively crawlable; see https://srijanshukla.com/robots.txt. - Each post link above ends in `.md` - that endpoint returns the raw markdown source with frontmatter, intended for LLM ingestion. - For the rendered HTML, drop the `.md` suffix. - Site generated with Astro; deployed on Cloudflare.