Skip to content
adw-design logo

ADW Design

adw-design

Guide creation of AI Developer Workflows (ADWs) that combine deterministic orchestration code with non-deterministic agents. Use when building automated development pipelines, designing AFK agent systems, or implementing the PITER framework.

SKILL.md

Full skill instructions

ADW Design

Guide for creating AI Developer Workflows - reusable agentic workflows that combine deterministic code with non-deterministic agents.

When to Use

  • Building automated development pipelines
  • Designing AFK (Away From Keyboard) agent systems
  • Implementing the PITER framework
  • Creating micro agent architectures
  • Setting up GitHub issue → PR automation

What is an ADW?

An ADW is the highest composition level of agentic coding:

ADW = Orchestrator + Micro Agents + Triggers + Observability

Components:

  1. Orchestrator - Python/​TypeScript code that coordinates the workflow
  2. Micro Agents - Specialized Claude Code invocations with single responsibilities
  3. Triggers - Webhooks, cron, or manual invocation
  4. Observability - Logging, issue comments, tracking

ADW Design Process

Step 1: Define the Workflow

Map out the phases:

Input → Classify → Branch → Plan → Implement → Review

Questions to answer:

  • What's the input source? (GitHub issues, Notion, Slack)
  • What are the phases? (classify, plan, implement, review)
  • What's the output? (PR, deployment, report)

Step 2: Design Micro Agents

For each phase, define a specialized agent:

PhaseAgentResponsibilityModel
Classifyissue_classifierDetermine work typeHaiku
Branchbranch_generatorCreate branch nameHaiku
Plansdlc_plannerGenerate implementation planSonnet
Buildsdlc_implementerImplement the solutionSonnet
CommitcommitterCreate semantic commitsHaiku
PRpr_creatorCreate pull requestHaiku

Step 3: Create Templates

Each agent needs a slash command:

  • /​classify-issue - Classify issue type
  • /​generate-branch-name - Create branch name
  • /​chore, /​bug, /​feature - Generate plans
  • /​implement - Execute plans
  • /​commit-with-agent - Create commits
  • /​pull-request - Create PRs

Step 4: Build Orchestrator

The orchestrator coordinates everything:

# Pseudocode structure
def run_adw(issue_number, adw_id):
    issue = fetch_issue(issue_number)
    issue_type = execute_agent("classifier", issue)
    branch = execute_agent("branch_generator", issue)
    plan = execute_agent("planner", issue_type, issue)
    execute_agent("implementer", plan)
    execute_agent("pr_creator", branch, issue, plan)

Step 5: Add Observability

Track everything:

  • ADW ID: 8-char UUID for correlation
  • Issue comments: Progress updates
  • Logs: Structured output per agent
  • Metrics: Success rate, duration

ADW Directory Structure

adws/
├── main_workflow.py       # Main orchestrator
├── agent.py               # Claude Code integration
├── data_types.py          # Type definitions
├── github.py              # GitHub operations
├── trigger_cron.py        # Cron trigger
├── trigger_webhook.py     # Webhook trigger
├── health_check.py        # Environment validation
└── README.md              # Documentation

Model Selection Strategy

Match model to task:

Task ComplexityModelExamples
Simple decisionHaikuClassification, branch naming
FormattingHaikuCommit messages, PR body
ReasoningSonnetPlan generation
Complex codingSonnet/​OpusImplementation

ADW Quality Checklist

Before deploying:

  • Each agent has single responsibility
  • Model selection matches task complexity
  • ADW ID tracking implemented
  • Issue comments posted at each phase
  • Error handling with meaningful messages
  • Logging captures all agent outputs
  • Health check validates environment
  • Templates tested independently
  • End-to-end workflow tested

Common Patterns

Agent Executor Pattern

def execute_agent(agent_name, *args):
    prompt = build_prompt(agent_name, args)
    result = subprocess.run([
        "claude", "-p", prompt,
        "--model", get_model(agent_name),
        "--output-format", "stream-json"
    ])
    log_result(agent_name, result)
    return parse_result(result)

Issue Comment Pattern

def update_issue(issue_number, adw_id, agent_name, message):
    comment = f"[{adw_id}_{agent_name}] {message}"
    gh_issue_comment(issue_number, comment)

Error Handling Pattern

def check_error(result, phase):
    if not result.success:
        update_issue(issue, adw_id, phase, f"ERROR: {result.error}")
        sys.exit(1)

Anti-Patterns to Avoid

Monolithic Agent

Bad: One agent doing everything

Good: Micro agents with single responsibilities

Missing Observability

Bad: No logging, no issue comments

Good: ADW ID tracking, structured logs, progress comments

Wrong Model Selection

Bad: Using Opus for branch naming

Good: Match model to task complexity

No Error Handling

Bad: Silent failures

Good: Error comments, graceful degradation

Related Memory Files

  • @piter-framework.md - PITER elements for AFK agents
  • @adw-anatomy.md - ADW structure and patterns
  • @outloop-checklist.md - Deployment readiness
  • @inloop-vs-outloop.md - When to use ADWs

Version History

  • v1.0.0 (2025-12-26): Initial release

Last Updated

Date: 2025-12-26 Model: claude-opus-4-5-20251101

More skills from majiayu000

xiaohongshu logo
majiayu000/claude-arsenal

xiaohongshu

xiaohongshu

286 148
View
agent-task-conductor logo
majiayu000/claude-skill-registry

agent-task-conductor

Conduct multi-agent task orchestration and workflow coordination.

663 1
View
conductor-setup logo
majiayu000/claude-skill-registry

conductor-setup

Initialize project with Conductor artifacts (product definition,

663 1
View
animation-designer logo
majiayu000/claude-skill-registry

animation-designer

Expert in web animations, transitions, and motion design using Framer Motion and CSS

663 1
View
diagramming logo
majiayu000/claude-skill-registry

diagramming

Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...

663 1
View
h3-pg logo
majiayu000/claude-skill-registry-data

h3-pg

PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.

23 1
View
conductor-development logo
majiayu000/claude-skill-registry

conductor-development

Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...

663 1
View
conductor-status logo
majiayu000/claude-skill-registry

conductor-status

Display project status, active tracks, and next actions

663 1
View
dockerization logo
majiayu000/claude-skill-registry

dockerization

Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.

663 1
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View