NightDesk: voice triage for MSP after-hours calls
How I built a Twilio + Claude voice agent that handles MSP after-hours calls — covering stateless multi-turn conversation over GATHER, runbook injection, and CW ticket creation.
Read →How I built a Twilio + Claude voice agent that handles MSP after-hours calls — covering stateless multi-turn conversation over GATHER, runbook injection, and CW ticket creation.
Read →NightDesk already escalated P1 calls via SMS and Microsoft Teams. Adding Slack took 40 lines — including the Block Kit message, target URL resolution, and tests for all three failure modes.
Read →The triage kernel is a three-action loop with a deliberate bias toward escalation. False escalations are cheap — annoyed techs go back to sleep. False non-escalations lose clients. The architecture follows from that single principle.
Read →Most onboarding emails just say 'welcome.' EverCV's 4-step drip at days 1, 3, 7, and 14 teaches the product in the order users are ready to hear it — with different copy for free vs. Pro.
Read →EverCV now has a job application tracker built in — POST to add applications, GET to list them, PUT to update status as you move through the pipeline. Color-coded badges in the dashboard (applied → interviewing → offer).
Read →CertWatch has a public /check/public endpoint that returns cert expiry, chain validation, and DNS resolution for any domain in one HTTP call. No signup, no API key, rate-limited to 3/min. The paid-tier /check endpoint adds domain expiry and doesn't rate-limit.
Read →Every resolved ticket needs a billable time entry with clean, client-facing notes. I added an AI draft endpoint to TicketScope that turns a messy ticket thread into professional billing notes in one click.
Read →Every product had Stripe webhooks but no way to start a checkout. Here's the pattern I used to fix all three at once.
Read →I added an unauthenticated JSON endpoint to OSS Pulse so you can check whether a dependency is still actively maintained without leaving your terminal.
Read →How I built package.json / requirements.txt import into OSS Pulse — from paste to watching 40 repos in under 10 seconds.
Read →A breakdown of where job applications actually die: dead links, misfiled status, truncated URLs, and the needs_manual graveyard.
Read →How I built EverCV's team tier — invite by email, inherited feature access via a single field, per-member usage counters with atomic DynamoDB increments, and a usage analytics dashboard.
Read →EverCV now has tailor, gap analysis, and interview prep. Here's why I built each one and what the system prompt looks like.
Read →I added a CI token endpoint to EverCV so you can trigger a CV rebuild from GitHub Actions. One curl step in your workflow and your CV rebuilds within 30 seconds of every push to main.
Read →