I run a personal AI system with three specialized agents that deploy websites, build software, manage communications, and handle research โ all from my phone. This page documents the patterns, not the passwords. Built for AI builders who want to see what a production multi-agent setup actually looks like.
Three agents, each with a distinct role and cost profile. Every agent is reachable via Telegram. The key insight: not every question needs the most expensive model.
Claude Opus on OpenClaw. The first agent I reach for everything. Deep research, strategy, content creation, SEO/GEO optimization, client onboarding, and end-to-end site deploys. Has deploy access to the web server and ships content to production autonomously. Always on, always reachable โ including from my Apple Watch via an action button relay.
Claude Sonnet/Opus on OpenClaw. Manages everything that needs local machine presence โ calendar, messaging bridges, hardware integrations (smart glasses, audio), and Obsidian. Resilience layer: if cloud goes down, Eitan keeps the system running locally with fallback to local models.
Anthropic's coding agent with full filesystem access. Owns all software development โ every codebase, every feature, every bug fix. Managed through the Wright pipeline: Harbinger writes the spec, Claude Code builds it, an adversarial review challenges the design decisions and catches security/architecture issues, then QA tests functionality with up to 3 fix loops before shipping. Once a build passes, Harbinger deploys it to production.
Lessons from running this in production. These are the patterns that survived contact with reality.
Match the model to the task. Haiku for memory lookups and simple queries. Sonnet for coordination and everyday work. Opus for research, strategy, and complex reasoning. Most agent frameworks default everything to the most expensive model โ this is how costs explode.
Cloud agent (Harbinger) and local agent (Eitan) can both reach the same resources. If the API provider goes down, Eitan falls back to local models. If the Mac sleeps, Harbinger covers. Multiple nodes on a mesh VPN ensure there's always a path. The system degrades gracefully instead of failing completely.
Instead of building monolithic agents, extend them with skills โ self-contained instruction files that load on demand when context matches. A skill for SEO audits. A skill for PDF editing. A skill for memory restructuring. Agents stay lean; capabilities grow without bloating the base prompt. ClawHub is the registry.
Three tiers: HOT (active builds, immediate tasks โ read every session), WARM (preferences, people, infrastructure โ checked before acting), COLD (completed work, historical reference โ searched when needed). Plus an entity graph for structured knowledge and daily logs for raw state. Memory is the hardest problem in long-running agents. Tiers make it tractable.
Every agent is reachable via Telegram. No dashboards, no SSH required for daily ops. Deploy a website, check server status, kick off a research task โ all from the phone. An action button relay lets me trigger the primary agent from my Apple Watch with voice. The cockpit is the phone.
Each agent has a soul file โ a document defining its ethical ground, what it will and won't do, and how it handles edge cases. Derived from the Guardian framework (Forrest Landry's Immanent Metaphysics). Symmetry ethics: say the same thing regardless of audience. Continuity ethics: behave the same regardless of who's watching. This isn't decoration โ it's what prevents an autonomous agent from drifting.
Skills are SKILL.md files that load on demand when the agent detects a matching context. Currently running 20+ skills on the primary agent. Here's what's actually installed:
The hardest problem in long-running agents is memory. Here's the system that works.
Claude Code on jMac runs with 81 skills, 38 security plugins, 54 design references, 24 hooks, and 4 plugins. It's not a vanilla coding agent โ it's a fully armed build environment. Here's what's loaded.
Claude Opus 4.6 with dangerous mode (skipPermissions), full filesystem access, MCP servers for workflow automation (n8n) and live library docs (Context7), plus agnix for linting agent configs. Desktop observability via claude-devtools shows context usage, compaction events, and subagent trees in real time.
UI UX Pro Max โ 161 reasoning rules, 67 UI styles, 96 color palettes, 57 font pairings, 13 tech stacks. Plus 54 extracted DESIGN.md files from production sites (Linear, Stripe, Vercel, Supabase, Notion, Figma, etc.). Say "build it like Linear" and it reads the actual design system.
38 professional security plugins. Static analysis (CodeQL + Semgrep), variant analysis, supply chain risk auditing, insecure defaults detection, mutation testing, property-based testing, and custom rule authoring. From an actual security firm, not a hobbyist repo.
15 skills covering the full AI search visibility stack โ citability scoring, AI crawler analysis, schema markup, llms.txt generation, platform-specific optimization, competitive analysis, and auto-generated client proposals with PDF export.
11 skills from Single Brain โ growth experiments with real statistics, cold outbound optimization, CRO audits, podcast-to-content multiplication (1 episode โ 20+ pieces), revenue intelligence, and value-based pricing frameworks.
Language-specific patterns for Python, Rust, Go, Kotlin, Java, C++, Perl, Laravel, Django, and Spring Boot. TDD workflows, e2e testing, database migrations, API design, and MCP server development patterns. Each with dedicated testing skills.
24 hooks across 7 lifecycle phases. Auto-format on edit, security scanning, PR alerts, build-complete notifications, quality gates, cost tracking, and strategic compaction. The Everything Claude Code (ECC) plugin ties it together with session-level evaluation.
Obsidian serves as the human-readable knowledge layer that bridges all agents. Notes sync across devices via Obsidian Sync, so anything written to the vault is immediately available on the phone.
Agents write to Obsidian via the URI scheme (obsidian://new) over SSH to the Mac. This triggers Obsidian Sync, which pushes to all devices within seconds. The vault becomes the shared reference layer โ site indexes, architecture docs, skill inventories, and daily briefs all live here. Agents read and write; I review on my phone.
obsidian://new?vault=...&name=...&content=...) ensures every write goes through Obsidian's sync pipeline. Wikilinks connect notes into a graph. The vault is the human interface to the agents' memory.
Open source where it matters. Managed services where the cost-benefit makes sense.
Own the compute. Data lives on machines I control. Cloud is for capability, not custody.
Static first. Every website is HTML files served by Caddy. No frameworks unless the task demands it.
Right model, right cost. Haiku for recall. Sonnet for coordination. Opus for hard problems. Cost discipline is an architecture decision.
Agents do the work. I steer. They build, deploy, research, and communicate. My job is direction and decisions.
Phone is the cockpit. Everything is reachable from Telegram. Deploy a website, start a build, check a server โ from anywhere.
Degrade, don't fail. Multiple nodes, multiple models, multiple paths. If one thing goes down, the system gets slower, not dead.
Ethics are structural. Every agent has a soul file. Not because AI needs morality, but because autonomous systems need constraints that don't drift.