Systems · 2025 – now
An operating system for working with AI agents
Over the last year I rebuilt how I work around coding agents — Cursor, Codex, Claude Code, and Antigravity. Not prompts: a repeatable workspace methodology, custom skills and MCP servers, and voice-driven workflows that let a designer ship native software.
assets/img/ai-systems-hero.png
Why
For most of my career, “designer” meant I stopped at the handoff. In 2025 that stopped being true. With agents doing the typing, the bottleneck moved to the thing designers are good at: defining the problem precisely, structuring the work, and judging the result. So I treated my own workflow as a product.
The ICM method
ICM is the workspace methodology I use for every agent project. It treats a repo like a physical production shop:
AGENTS.mdis the front-door sign — what shop did you just walk into.CONTEXT.mdis the reception desk — it routes a request to the right workbench.- Each stage is a workbench with a small contract: allowed inputs, process, outputs, and checks.
references/is the rule binder;processes/are SOPs; scripts are machines the agent invokes rather than improvises.output/is the finished tray — humans review it before the next stage trusts it. Every job carries a durablerun.json.
Core rules: load only the context for the current bench; write durable files, not chat conclusions; verify before handoff; when the same correction repeats, edit the source (contract, reference, or script) instead of the output; keep contracts small. It’s what lets a long pipeline run across many sessions and models without the context degrading.
What it has shipped
- ConvertSave — Tauri 2 / Rust / React desktop app; 398 commits; cross-platform CI; parallel Claude Code worktrees for features.
- ConvertSave for iPhone — 100% native Swift/SwiftUI media converter (AVFoundation, ImageIO, PDFKit, CoreImage), zero third-party dependencies, sharing the Nocturne design tokens with desktop.
- Screen Studio Redactor — native macOS SwiftUI/AppKit app plus CLI that finds and masks PII in tutorial recordings (Vision, Core Image/Metal, SQLite; non-destructive projects). Paired with a 265-job Antigravity computer-vision swarm that inspected video keyframes before anything went to YouTube.
- Linked Designs — a Canva App bringing Photoshop-style Smart Objects to Canva (Canva Apps SDK + Connect API, OAuth 2.0 PKCE, Node/TypeScript).
- YouTube operations — watch-folder auto-uploader with metadata rules, SEO dashboards, a competitor-velocity warehouse (Top10k), a thumbnail pipeline with tightly constrained copy rules, and a Remotion B-roll generator.
- Studio hardware tooling — Swift/AVFoundation utilities for zero-latency iPhone mirroring in device frames, camera pixel-format fixes, and headless control of Screen Studio through Chrome DevTools Protocol.
Voice & ambient workflows
A lot of my agent work happens by voice. A custom skill (top10k-voice) lets me review competitor videos and curate production queues hands-free. A Discord voice bridge runs an agent against a workspace and reads results back at 1.25× so I can supervise from the studio floor. Dictation (Wispr Flow, superwhisper) is the default input for prompts and PR descriptions.
Tooling I’ve built for agents
- Figma MCP server
- Top10k MCP + CLI
- Mangools / VidIQ MCP
- screenstudio-cli (CDP)
- youtube-auto-uploader skill
- convertsave-paper-design skill
- ios-simulator / xcodebuild skills
- Thumbnail Agent v6.2 rules
- ICM templates & conventions
Everything above runs on my own machines and pipelines; where a tool is public (ConvertSave, Linked Designs) it’s linked from the work page.
Contact
Want to work together? Say hello.
Open to senior product design roles, founding-designer conversations, and select collaborations.