AI
I Built an AI Chief of Staff. Then Claude Shipped Everything I Built. In 52 Days.
I Built an AI Chief of Staff. Then Claude Shipped Everything I Built. In 52 Days.
I spent 14 weeks building an AI system that runs my company while I sleep.
Then Anthropic shipped every single feature I built. As a native platform capability. In under two months.
5,600 lines of Python. Eight always-on services. A multi-model AI council. A custom memory layer. A remote deployment system I controlled from my phone.
All of it. Replaced.
This is either the worst timing in tech history, or the most validating. I think it's both.
The Drowning
Here's what nobody tells you about being a bootstrapped CTO at a $5M ARR company with 130,000+ students.
You're not just the CTO. You're the VP of Engineering. The Head of AI. The Growth Lead. Sometimes the support escalation endpoint. Five domains. One brain. Every single day.
The problem isn't intelligence. It's continuity.
I context-switch so aggressively that by 3 PM, I've forgotten the decision I made at 9 AM. I have 200+ repositories on GitHub. A 10-person engineering team in Turkey. A CRM I built myself. Satellite sites. An AI lesson analyzer. Marketing automations running on Insider CDP.
No human can hold all of this simultaneously. I tried for years. It doesn't scale.
What I needed wasn't another dashboard. I needed a second brain that never forgets, never sleeps, and understands the full context of my company.
The False Start: OpenClaw
I didn't start from zero. I looked at what existed.
NVIDIA's OpenClaw caught my eye. An open infrastructure that promised always-on AI assistants with a single deploy command. On paper, exactly what I needed.
In practice? A nightmare.
OpenClaw was built for everyone. And when you build for everyone, you build for no one.
I needed an agent that knows the difference between our 200+ repos. One that understands which Nightwatch alert is critical and which is noise. One that remembers the sales team calls the CRM "the dashboard" while engineering calls it "ai-crm." One that knows when I say "fix the webhook" I mean the payment webhook in turacoon, not the notification webhook in the CRM.
OpenClaw couldn't do any of that. It came with bloated UIs I didn't need, configuration layers designed for enterprise procurement teams, dashboards that looked great in demos but added zero value to a technical founder who lives in the terminal.
Every customization felt like surgery on someone else's opinionated framework. Then they started shifting from an open promise to token-based pricing. That was the final signal.
If you want something that truly understands your organization, you have to build it yourself.
The irony? Claude Code turned out to be the perfect starting point. Terminal-native. Zero UI. Hackable by design. No dashboards to bypass. No enterprise config wizards. Just a CLI that speaks your language and gets out of the way.
Everything I couldn't do with OpenClaw, I did with Claude Code, a few Python scripts, and launchd.
What I Built: Sag Kol
Sag Kol. Turkish for "right hand."
Not a chatbot. A system. Eight autonomous services running on my MacBook via macOS launchd, orchestrated through Telegram, backed by a persistent memory layer, powered by a multi-model AI council.
8 always-on services:
| Service | What It Does | Schedule |
|---------|-------------|----------|
| Morning Briefing | Compiles overnight events into an executive summary | 7:30 AM CET |
| Hourly Scan | Monitors signals across all systems | Every hour, business hours |
| Daily Summary | End-of-day wrap-up with priorities for tomorrow | 6:00 PM CET |
| Nightwatch | Watches production errors via Laravel Nightwatch | Multiple times daily |
| Heartbeat | Health check with local Qwen triage | Every 30 minutes |
| Content Engine | Generates content in my voice for blog and X/Twitter | Scheduled |
| Weekly Report | Comprehensive weekly analysis | Mondays |
| Remote Operator | Telegram command interface, the brain | Always on |
A persistent memory layer. state.md tracked current priorities. SOUL.md defined personality. IDENTITY.md held organizational context. A full Workspace/ directory with org charts, repo indices, and operational rules. Every new AI session read these files first. Context wasn't lost between conversations. It accumulated.
A multi-model Swarm Council. Opus for deep reasoning. GPT-5.4 for edge cases. Gemini for web-grounded research. Kimi for long-context analysis. MiniMax for creative alternatives. Five models debating, then an executor implementing the consensus.
A Telegram-based Remote Operator. /cc fix the webhook race condition spins up an isolated Claude session. /swarm redesign the onboarding flow convenes the council. /finalize job_123 opens a PR. All from my pocket. I deployed production code from my phone while my daughter played at the playground.
The whole thing ran on my M5 Max MacBook Pro with 128GB RAM. No cloud servers. No Kubernetes. The entire infrastructure cost was my electricity bill.
I was proud of it. I was about to publish this blog post about it.
Then I opened my timeline.
73 Products. 52 Days. All of Them Mine.
Between February 1 and March 23, 2026, Anthropic went on a shipping spree that made my jaw drop.
Not because the products were impressive. Because they were my products.
Feature by feature, they shipped what I had built with duct tape and shell scripts. But native. Polished. Integrated into Claude Code itself.
Here's the obituary of my custom infrastructure.
/schedule Killed My Cron Jobs
I had 8 launchd plist files. Each one hand-crafted to trigger Python scripts at specific times. Morning briefing at 7:30. Hourly scans. Weekly reports. I debugged timezone issues, handled failures with retry logic, wrote health checks.
Then Claude shipped /schedule. Recurring cloud-based jobs, right from the terminal. Daily code reviews, weekly reports, automated tests. No plist files. No launchd debugging. No "why did the 7:30 trigger fire at 6:30 after a timezone update."
My 8 launchd services. One /schedule command each.
Auto-Memory Killed My Memory Layer
The crown jewel of Sag Kol was its memory architecture. Four files. Custom read/write logic. Weeks of iteration on the file structure, update patterns, and context window management.
Then Claude shipped Auto-Memory. Persistent, cross-session memory that accumulates automatically. No manual file management. No "read this before you start" preamble. The AI just... remembers.
And it's not just Claude. The broader ecosystem is moving fast. Supermemory's ASMR architecture hit ~99% accuracy on LongMemEval benchmarks using three parallel observer agents. Memory is becoming a solved problem. Not a custom infrastructure project.
My 4-file memory layer. A built-in feature.
Agent Teams Killed My Swarm Council
I was genuinely proud of the council. Five models debating, reaching consensus, then an executor implementing the decision. Task tracking in memory/swarm/tasks/ with full audit trails. 2,000 lines of Python orchestration.
Then Claude shipped Agent Teams. Native multi-agent orchestration where specialized agents collaborate on complex tasks. Same architecture. Zero custom code.
My multi-model council. Built-in.
Remote Control Killed My Remote Operator
The Remote Operator was my most complex piece of engineering. A Python system that polls Telegram, routes through Qwen for triage, spins up tmux sessions, manages git worktrees, handles the full lifecycle from task creation to PR. 1,500 lines.
Then Claude shipped Remote Control and Dispatch. Mouse, keyboard, screen. Full computer control. Remote orchestration without my remote_operator.py.
My Telegram-to-tmux pipeline. Native remote execution.
Auto Mode Killed My Permission Manager
Half of Sag Kol's complexity was permission management. Safe mode by default. Read access everywhere, write access only in worktrees. A custom escalation system.
Claude shipped Auto Mode. File writing and bash permissions managed automatically.
My handcrafted permission system. A toggle.
The Score
| What I Built | Lines of Code | Time Spent | What Claude Shipped |
|-------------|--------------|------------|-------------------|
| 8 launchd cron services | ~800 | 2 weeks | /schedule |
| Memory layer (state, soul, identity) | ~600 | 3 weeks | Auto-Memory |
| Swarm Council (5 models) | ~2,000 | 4 weeks | Agent Teams |
| Remote Operator (Telegram + tmux) | ~1,500 | 3 weeks | Remote Control + Dispatch |
| Permission manager | ~400 | 1 week | Auto Mode |
| Codebase context system | ~300 | 1 week | /init + 1M Context |
| Total | ~5,600 | ~14 weeks | 52 days of Anthropic shipping |
Fourteen weeks of my nights and weekends. Replaced by platform features in under two months.
How It Felt
I'd be lying if I said it didn't sting.
For about ten seconds.
Then I realized something. I was right.
Every architectural decision I made was correct. Persistent memory. Scheduled autonomous agents. Multi-model orchestration. Remote command execution. Safe-by-default permissions. All of it.
I didn't get outbuilt. I got validated.
This is what happens when you build at the frontier. You're not competing with the platform. You're previewing it.
What This Actually Means
Custom AI Infrastructure Is Getting Absorbed
I'm not the only one who built this kind of system. Every technically ambitious founder, every CTO who saw the potential, we all built our own versions of agent orchestration, memory persistence, and scheduled AI workflows.
That era is closing. The platform layer is absorbing it.
This isn't new. It happened with web servers. Apache became Vercel. Self-hosted databases became managed. Jenkins became GitHub Actions. The custom infrastructure gets commoditized. The thinking behind it doesn't.
Your Laptop Is a Data Center (and Getting Stronger)
Here's what the platform can't replace: my local AI stack.
Qwen running on my M5 Max via oMLX for instant triage. Zero API costs for 90% of my interactions.
People are running 397B parameter models on MacBooks now. Flash-MoE with Pure C and Metal shaders, getting 4.4 tokens per second. Others are clustering MacBooks via Thunderbolt 5 RDMA for tensor parallelism. 30B+ models at 70 tokens per second across four laptops.
The cloud isn't the only game in town anymore. Your laptop is a data center. And it's getting more powerful every quarter.
The Real Skill Isn't Building. It's Knowing What to Build.
Here's what I keep from Sag Kol. Not the code. The architecture.
The mental model of treating AI as a system, not a tool. The understanding that memory matters more than intelligence. That orchestration beats raw capability. That constraints build trust.
When I rebuild with Claude's native features, I'll do it in hours instead of months. But I'll do it better than anyone who didn't build it from scratch first. Because I know where the edge cases are. I know what breaks at 3 AM. I know why the permission model matters.
The people who built custom infrastructure aren't left behind. They're the ones who know exactly what to do with the platform features.
The New Sag Kol
I'm rebuilding. Not from scratch. From understanding.
Morning briefing? /schedule with a prompt that reads my Nightwatch alerts, calendar, and Jira status.
Memory? Auto-Memory, augmented by a structured CLAUDE.md in every repo.
Multi-model decisions? Agent Teams for code. Gemini and Perplexity MCP tools for research grounding.
Remote execution? Still Telegram. But the backend is Claude's native session management, not my Python Rube Goldberg machine.
Local triage? Qwen 3.5 on my M5 Max. Some things the platform can't replace. And shouldn't.
Same system. 10% of the effort. More reliable. Because I'm not the one maintaining it at 2 AM.
The Real Question
Most people use AI like a calculator. Pick it up, use it, put it down.
I built mine like a colleague. It has a desk, a schedule, a memory, and a personality. It shows up every morning before I do.
Now the platform lets everyone do what I did. The barrier just dropped to zero. You don't need to build a Sag Kol anymore.
Claude is a Sag Kol.
The question used to be "what should your AI be doing at 3 AM while you sleep?"
Now the question is simpler: why isn't it already?
Hayreddin Tuzel, CTO & Co-Founder @ Flalingo