jshah
← Index
AI · Developer Tools · Workflow

My AI Dev Workflow

I’ve been building my dev workflow around AI tooling over the last year and wanted to share what that looks like today. My setup is built in layers, with Claude Code as the foundation and custom skills, plugins, integrations, and orchestration tools on top.

In this post, I’ll walk through each layer of my setup.

Claude Code

Claude Code is a CLI coding agent, and it’s where I spend most of my development time. It can read files, write code, run commands, and interact with git, so I work in it the same way I would work in a terminal. Everything else in this post layers on top of it.

Custom Skills

Skills are the most useful part of my setup. They’re portable .md files you drop into a project’s .claude/skills/ directory that act as reusable slash commands. I’ve built 10 that automate most of my dev lifecycle.

Git & Branch Management

  • /branch creates branches with standardized naming and integrates with the Atlassian MCP server to auto-fetch Jira ticket titles and generate branch names from them.
  • /commit handles pre-commit hook failures by auto-re-staging after formatters run, so commits don’t fail on formatting issues.
  • /fix-merge-conflicts detects whether conflicts are local or on GitHub and resolves them accordingly.

PR Workflow

  • /pr auto-detects the base branch, extracts ticket IDs from the branch name, finds PR templates, and generates descriptions that explain why the change was made instead of listing what changed.
  • /address-pr-feedback reads all unresolved PR comments, groups them by topic, makes changes, creates logical commits, and replies to each thread with the commit SHA. It can also reject feedback with reasoning.

Code Review

  • /code-walkthrough is an interactive, educational review. It breaks changes into sections (database, backend, frontend, tests) and walks through them conversationally. I use this one when I want to come out of the review understanding the change, rather than just approving it.
  • /pr-review is an autonomous review that posts inline GitHub comments with severity tags (Critical, Warning, Suggestion). It runs end-to-end without interaction.
  • /final-review runs 5 parallel review subagents before merge for a thorough last pass.

Testing

  • /add-tests analyzes the branch diff, detects existing test patterns and frameworks, identifies untested behaviors, and writes tests in a separate subagent context.

Communication

  • /ship-it generates Slack ship announcements from commits, PRs, or branches. It focuses on the user-facing impact of the change rather than the technical details.

The Workflow

A typical feature goes through these in order: /branch to start, write code, /commit, /pr, /pr-review or /code-walkthrough, /address-pr-feedback if there are comments, and /ship-it when it lands.

One pattern I want to highlight is that /add-tests and /pr-review deliberately run their analysis in a separate subagent context, independent from the implementation context. Since the review doesn’t have access to the reasoning behind the code, it evaluates the code on its own merits, which helps avoid confirmation bias.

Plugins

I use a few plugins from the Claude Code marketplace that add structured workflows on top of the base tool.

Matt Pocock’s skills is a community skill collection that adds structured workflows for TDD, systematic debugging, planning, code review, and resolving merge conflicts.

Frontend Design generates UI that avoids the generic look that AI-generated interfaces tend to have.

Feature Dev provides guided feature development with specialized subagents for codebase exploration, architecture design, and code review.

Security Guidance is a hook-based plugin that fires on every edit and write operation. It detects patterns like command injection, XSS, eval(), and pickle deserialization in real-time and shows context-specific warnings without blocking.

I also use a few community skills from the Vercel engineering team:

  • Vercel React Best Practices covers performance rules across priority-ranked categories like eliminating waterfalls, bundle size optimization, and rendering performance.
  • Vercel Composition Patterns covers React composition patterns that scale: compound components, explicit variants over boolean props, state decoupling.
  • Web Design Guidelines reviews code for accessibility, semantic HTML, responsive design, touch targets, and keyboard navigation.

MCP Servers

MCP (Model Context Protocol) servers give Claude direct access to external tools and services during development. The ones I get the most value from:

  • Playwright for browser automation. Navigate pages, fill forms, take screenshots, run end-to-end test flows.
  • Chrome DevTools for performance traces, network request analysis, console messages, and Lighthouse audits.
  • Figma to access design files, extract component information, and translate designs into code.
  • Sentry for error monitoring and debugging context during development.
  • Datadog to query metrics, traces, and logs while debugging.

I also have MCP servers configured for GitHub, Slack, Supabase, Context7 (up-to-date library docs), Terraform, and a few others. Most of these I configured once and rarely think about, but they’re available whenever a task needs them.

Superset and Conductor

The last layer of my setup is running multiple agents in parallel instead of just one.

Superset is a terminal-based orchestration platform for running multiple AI coding agents in parallel. It supports any CLI-based agent (Claude Code, Codex, Cursor, Gemini, etc.), creates isolated git worktrees for each one, and gives you real-time monitoring and task switching between them. It’s the infrastructure that lets me run several things at once without stepping on myself.

Conductor by Melty Labs is a macOS app for running a team of coding agents in parallel. It supports Claude Code and Codex agents, each in an isolated git worktree. Conductor provides a unified dashboard showing what each agent is working on, with code review and merging built in.

I’ve found that single-agent workflows are useful on their own, but once I could parallelize independent work across multiple agents, I started breaking down my tasks differently to take advantage of it.


While this setup will undoubtedly change as new tools come out and I rewrite my skills, it’s a good snapshot of how I’m developing with AI today. If you’re building something similar or have recommendations for me, let me know!

// END

Next Collaboration vs Innovation