Imagine you have a Nodejs server with endpoint that performs heavy CPU operations. By default your server runs on a single thread. This means it will freeze depending on the CPU load. If your server has other asynchronous endpoints, for example, to execute database operations, those endpoints would become unresponsive while the heavy load endpoint is processing. Our first idea is to create more th
Every dev team has lost hours to .env problems. A missing variable breaks a deploy. I built Razify to make all of that stop happening. Razify is a single binary CLI tool for .env file management. No cloud account No tracking No Go installation required Works with Node.js, Python, Ruby, Laravel, Rails — anything that uses .env files. razify scan .env Detects leaked secrets using 80+ regex patte
In the previous post, I walked through the compensation logic in each service. The code looks clean on paper. But sagas have a lot of moving parts, and bugs tend to hide in the transitions between services, not inside a single service. This post covers how I test the saga system: unit tests for each service, orchestrator routing tests, and the edge cases that caught me off guard. The orchestrator'
The Model Context Protocol (MCP) has become the default standard for connecting AI agents to external tools and APIs. Governed by the Linux Foundation since early 2025 and adopted by OpenAI, Anthropic, Microsoft, and Vercel, MCP is the USB-C port of the AI ecosystem — one protocol that lets any LLM application talk to any tool server. But there's a gap between reading the spec and building somethi
If you have spent any real time with Claude Code, you have probably noticed the same problem I did. You write the same instructions in the prompt every other day. "Use four-space indentation here." "Always run the linter after edits." "Format commit messages this way." After the third or fourth repeat, it stops feeling like a prompt and starts feeling like missing config. Skills are how Claude Cod
Adding email and calendar tools to an AI agent is mostly an exercise in restraint. Give it 50 commands and the agent gets confused. Give it 5 carefully-chosen ones and it punches above its weight. After running agents against the Nylas CLI for a few months, these are the five I keep coming back to. Each gets exposed via MCP (nylas mcp install) so the agent can call them directly. nylas email send
You ssh'd into a fresh Linux box and you need to send an email. Maybe a backup completed. Maybe a deploy succeeded. Maybe a process crashed and you want a stack trace in your inbox. The traditional path: install Postfix, edit main.cf, configure a smart relay, generate SASL credentials, restart the daemon, and pray nothing else on the box uses port 25. That is the 30-minute path. The 60-second path
I tried to give an AI agent its own email account three different ways. The first two took most of an afternoon. The third took 28 seconds. This is the migration story. The first instinct: just create a Gmail. Free, familiar, works everywhere. Forty-five minutes in: Created a new Google account with a phone number Google would accept (the agent does not have a phone) Configured 2FA, generated an a