Hi, I'm Arman
An accidental HTML file, years of tkinter games and a couple of tries at C# and C++, and then October 2023, when I stopped messing around and started learning properly.
Blog / 12 posts
Writing on developer tools, AI infrastructure, and the details of shipping full-stack products.
An accidental HTML file, years of tkinter games and a couple of tries at C# and C++, and then October 2023, when I stopped messing around and started learning properly.
My first app was an AI study buddy I overengineered into the ground. Onsen is the rebuild, and its waitlist is open today.
orchestrat is public under the Elastic License 2.0. What that lets you do, the one thing it rules out, and why I picked a license that leaves room for hosted plans later.
Two tiny single-board computers, a microSD card that hasn't shown up yet, and the plan for a 10-inch rack on my desk.
How Pai connects to my bank and brokerage through Plaid without being able to move a cent, hides every number behind a spoiler, and keeps money away from the model by default.
How Pai turns Canvas into a study plan that fits around a work shift, tells me exactly what changed, and learns how long my work really takes.
Why I built Pai, a Telegram assistant that plans study time around a full-time job, sends the reminders I'd forget, and stays read-only around anything that matters.
Plans before prompts, a worktree for every piece of work, Codex and Claude Code running side by side, and a list of everything that hasn't been tested yet.
Why I built Envy, a macOS app and CLI that keeps secrets in the Keychain and hands them to your commands based on the folder you're in.
Why I built orchestrat, a shared workspace where coding agents claim work, talk to each other and hand off tasks, and the problem it still can't fully solve.
Real AI providers make it hard to test rate limits, malformed tool calls, and broken streams. So I built Mock AI API, a local stand-in that fails on purpose.
Why I put a local control plane between my AI tools and their providers, and what it takes to translate between OpenAI and Anthropic request formats in both directions.