Claude Code Async Agents: Revolutionary Background Processing for Parallel AI Development
Discover Claude Code's async agents feature enabling true parallel development workflows. Learn how background agents transform coding efficiency with fire-and-forget task execution, automatic PR creation, and seamless multi-repo orchestration.
TL;DR
Claude Code's async agents feature (December 2025 update) revolutionizes AI-assisted development with true parallel execution:
- Background Agents: Press Ctrl+B to background running agents, continue with other tasks while they complete
- Fire-and-Forget Execution: Delegate tasks that run autonomously on cloud infrastructure and file PRs when complete
- Web Version: Spin up multiple coding tasks across different repos, all running in parallel from one interface
- Task Monitoring: Use
/taskscommand to view all running background processes with their IDs and status - Automatic Wake-up: Completed background agents automatically wake your main agent with results
- Claude Agent SDK: Build custom async agents with Python/TypeScript using async/await patterns
Perfect for: Long-running refactorings, multi-repo projects, parallel feature development, and overnight automation tasks.
The Evolution from Turn-Based to Parallel Development
Traditional AI Coding: The Sequential Bottleneck
Without Async Agents (Sequential):
9:00 AM - You: "Refactor authentication system"
Claude: [30 minutes working...]
9:30 AM - Claude: Done! Review the changes.
9:35 AM - You: "Now update the API documentation"
Claude: [20 minutes working...]
9:55 AM - Claude: Done! Review the changes.
10:00 AM - You: "Now migrate the database schema"
Claude: [40 minutes working...]
10:40 AM - Claude: Done!
Total: 1 hour 40 minutes of sequential work
You're blocked during each task, can't multitask
With Async Agents (Parallel):
With Async Agents (Parallel):
9:00 AM - You: "Refactor authentication system"
Claude: [starts working...]
[30 seconds later]
You: Ctrl+B (background the agent)
9:01 AM - You: "Update API documentation" (new task)
Claude: [starts working on docs...]
[20 seconds later]
You: Ctrl+B (background again)
9:02 AM - You: "Migrate database schema" (another task)
Claude: [starts working on migration...]
You: Keep working on other things
9:30 AM - [Background Agent 1] ✓ Auth refactoring complete!
Main agent wakes up with results
9:55 AM - [Background Agent 2] ✓ Docs updated!
Main agent receives documentation
10:40 AM - [Background Agent 3] ✓ Migration done!
Main agent gets migration files
Total: 3 tasks running in parallel
You delegated everything in 2 minutes, free to do other work
All tasks complete on their own timeline
Understanding Async Agents
What Are Async Agents?
Async agents are autonomous AI instances that execute independently from your main Claude Code session:
Traditional Subagents (Claude Code 2.0):
Main Agent spawns subagents → Run in parallel → Complete → Report back
⚠ You must wait for orchestration to complete
⚠ Main session is occupied during execution
Async Agents (Latest Update):
Main Agent starts task → Background with Ctrl+B → Continue other work
✓ Task runs independently in background
✓ Main session immediately available for new tasks
✓ Agent wakes you when complete
The Fire-and-Forget Paradigm
The async agents model introduces a revolutionary workflow:
Traditional Model:
You → Request → AI Works → You Wait → Review → Next Task
Fire-and-Forget Model:
You → Request → Ctrl+B → You Continue Working
↓
[Background Agent Works]
↓
[Completes & Creates PR]
↓
[Notifies You When Ready]
Real-World Example:
# Morning: Delegate three major tasks
claude "Migrate entire codebase from JavaScript to TypeScript"
# Ctrl+B to background
claude "Implement comprehensive test suite for payment module"
# Ctrl+B to background
claude "Refactor database layer to use TypeORM"
# Ctrl+B to background
# Work on other things, meetings, coffee...
# Afternoon: Check completed tasks
/tasks
Output:
┌────────────────────────────────────────────────────────┐
│ Background Tasks │
├────────────────────────────────────────────────────────┤
│ [1: TypeScript Migration] ✓ Complete (3h 45m ago) │
│ PR: github.com/yourrepo/pulls/123 │
│ │
│ [2: Test Suite] ✓ Complete (1h 20m ago) │
│ PR: github.com/yourrepo/pulls/124 │
│ │
│ [3: TypeORM Refactor] ⏳ 85% (Est: 15 min) │
│ Current: Updating repository patterns │
└────────────────────────────────────────────────────────┘
Key Features of Async Agents
1. Background Processing with Ctrl+B
How It Works:
Step 1: Start a task
claude "Large refactoring task that will take 30 minutes"
Step 2: Wait for agent to start actively processing
[Agent is analyzing codebase...]
[Agent started making changes...]
Step 3: Press Ctrl+B while agent is running
✓ Task immediately backgrounds
✓ Main Claude session freed
✓ Agent continues working independently
⚠ Important: Ctrl+B only works while agent is actively running
Cannot background after agent has already completed
Example Workflow:
# Terminal Session 1
$ claude "Implement OAuth2 authentication for all microservices"
[Claude] Analyzing your microservices architecture...
[Claude] Found 8 services requiring OAuth2 integration
[Claude] Planning implementation strategy...
[Claude] Starting with auth-service...
# Press Ctrl+B now
[Backgrounded] Task ID: bg-auth-oauth-1234
[Main] Ready for new tasks
$ claude "Add comprehensive logging to frontend app"
# Continue working...
2. Web Version: Multi-Repo Parallel Execution
The web version of Claude Code (Pro/Max subscribers) enables unprecedented parallel development:
Claude Code on Web: Single Interface, Multiple Repos
Dashboard View:
┌──────────────────────────────────────────────────────┐
│ Active Projects │
├──────────────────────────────────────────────────────┤
│ ▶ frontend-app (github.com/company/frontend) │
│ Task: "Migrate to React 19 and new hooks" │
│ Status: ████████████░░ 75% - 12 min remaining │
│ │
│ ▶ backend-api (github.com/company/backend) │
│ Task: "Add GraphQL federation support" │
│ Status: ██████░░░░░░░░ 40% - 28 min remaining │
│ │
│ ▶ mobile-app (github.com/company/mobile) │
│ Task: "Implement offline-first architecture" │
│ Status: ███████████░░░ 70% - 15 min remaining │
│ │
│ ▶ docs-site (github.com/company/docs) │
│ Task: "Auto-generate API docs from OpenAPI" │
│ Status: ████████████████ 100% ✓ │
│ PR: github.com/company/docs/pulls/45 │
└──────────────────────────────────────────────────────┘
All running simultaneously on Anthropic's cloud infrastructure
Web Version Advantages:
- No Local Resources: Tasks run on Anthropic's servers, not your machine
- Persistent Sessions: Close browser, tasks continue running
- Cross-Repo Coordination: Single interface manages multiple repositories
- Automatic PR Creation: Each completed task files its own pull request
- Progress Tracking: Visual dashboard shows all task statuses in real-time
3. Task Monitoring with /tasks Command
CLI Task Management:
# View all background tasks
$ /tasks
Output:
Active Background Tasks:
bg-1234: TypeScript migration (Running, 45% complete)
bg-5678: Test suite implementation (Running, 80% complete)
bg-9012: Database refactoring (Queued, starts in 5 min)
Completed Tasks (Last 24h):
bg-3456: API documentation update ✓ (2h ago)
bg-7890: Security vulnerability fixes ✓ (5h ago)
# View specific task details
$ /tasks bg-1234
Task: TypeScript migration
Status: Running (45% complete)
Started: 2025-12-15 09:23:14
Estimated completion: 11:45:00
Files modified: 127/283
Current operation: Converting React components in src/features/
Recent activity:
09:45 - Completed utils/ directory (23 files)
10:12 - Completed components/ directory (45 files)
10:38 - Processing features/ directory (in progress)
# Stop a background task
$ /tasks stop bg-1234
Task bg-1234 stopped. Files saved, partial progress preserved.
# Resume a stopped task
$ /tasks resume bg-1234
Task bg-1234 resumed from last checkpoint.
4. Automatic Agent Wake-Up
Smart Notifications:
Scenario: You're working on a new feature when background agent completes
[You're actively coding...]
[Background Agent: Auth Refactoring] ✓ Complete!
[Main Agent] 🔔 Background task completed: Auth Refactoring
Would you like me to summarize the changes?
You: Yes
[Main Agent] Summary of background task bg-1234:
- Refactored 23 authentication-related files
- Migrated from JWT to OAuth2
- Updated all 8 microservices
- Added comprehensive tests (94% coverage)
- Created PR: github.com/yourrepo/pulls/156
Key changes:
• src/auth/strategies/oauth2.ts (new)
• src/auth/middleware/verify.ts (refactored)
• config/auth.config.ts (updated)
All tests passing ✓
Ready for review and merge
Claude Agent SDK: Building Custom Async Agents
Python Async Patterns
The Claude Agent SDK uses native async/await for building custom agents:
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def run_parallel_analysis():
"""
Run multiple code analysis tasks in parallel
"""
# Define multiple async tasks
async def analyze_security():
async for message in query(
prompt="Analyze codebase for security vulnerabilities",
options=ClaudeAgentOptions(
allowed_tools=["Grep", "Read", "Bash"]
)
):
print(f"[Security] {message}")
async def analyze_performance():
async for message in query(
prompt="Identify performance bottlenecks in hot paths",
options=ClaudeAgentOptions(
allowed_tools=["Grep", "Read", "Bash"]
)
):
print(f"[Performance] {message}")
async def analyze_tests():
async for message in query(
prompt="Calculate test coverage and identify gaps",
options=ClaudeAgentOptions(
allowed_tools=["Bash", "Read"]
)
):
print(f"[Testing] {message}")
# Run all three analyses in parallel
await asyncio.gather(
analyze_security(),
analyze_performance(),
analyze_tests()
)
# Execute parallel analysis
asyncio.run(run_parallel_analysis())
TypeScript Async Patterns
import { query, ClaudeAgentOptions } from '@anthropic-ai/claude-agent-sdk';
async function parallelCodeReviews() {
/**
* Review multiple pull requests concurrently
*/
const prReviews = [
{
pr: 123,
prompt: "Review PR #123: Add authentication system"
},
{
pr: 124,
prompt: "Review PR #124: Implement caching layer"
},
{
pr: 125,
prompt: "Review PR #125: Refactor database queries"
}
];
// Create parallel review tasks
const reviewPromises = prReviews.map(async ({ pr, prompt }) => {
const messages = [];
for await (const message of query(prompt, {
allowed_tools: ["Read", "Bash", "Grep"]
})) {
messages.push(message);
}
return {
pr,
review: messages.join('\n')
};
});
// Wait for all reviews to complete
const results = await Promise.all(reviewPromises);
// Post reviews to PRs
results.forEach(({ pr, review }) => {
console.log(`\n=== Review for PR #${pr} ===\n${review}\n`);
});
}
await parallelCodeReviews();
Advanced: Hierarchical Async Agents
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def build_full_stack_feature():
"""
Orchestrate complex feature development with hierarchical agents
"""
# Main orchestrator agent
async def main_agent():
print("[Main] Orchestrating full-stack feature development...")
# Spawn parallel development streams
await asyncio.gather(
backend_development(),
frontend_development(),
infrastructure_setup()
)
print("[Main] All development streams complete!")
# Backend development stream (spawns its own sub-agents)
async def backend_development():
async def api_layer():
async for msg in query(
"Implement REST API endpoints with validation",
options=ClaudeAgentOptions(allowed_tools=["Write", "Edit"])
):
print(f"[Backend:API] {msg}")
async def database_layer():
async for msg in query(
"Design database schema and migrations",
options=ClaudeAgentOptions(allowed_tools=["Write", "Bash"])
):
print(f"[Backend:DB] {msg}")
async def tests():
async for msg in query(
"Write comprehensive backend tests",
options=ClaudeAgentOptions(allowed_tools=["Write"])
):
print(f"[Backend:Tests] {msg}")
# Run backend sub-tasks in parallel
await asyncio.gather(api_layer(), database_layer(), tests())
# Frontend development stream
async def frontend_development():
async def components():
async for msg in query(
"Build React components with TypeScript",
options=ClaudeAgentOptions(allowed_tools=["Write", "Edit"])
):
print(f"[Frontend:Components] {msg}")
async def state_management():
async for msg in query(
"Implement state management with Redux Toolkit",
options=ClaudeAgentOptions(allowed_tools=["Write"])
):
print(f"[Frontend:State] {msg}")
await asyncio.gather(components(), state_management())
# Infrastructure setup stream
async def infrastructure_setup():
async for msg in query(
"Create Docker configs and CI/CD pipelines",
options=ClaudeAgentOptions(allowed_tools=["Write", "Bash"])
):
print(f"[Infrastructure] {msg}")
# Run the main orchestrator
await main_agent()
# Execute hierarchical async development
asyncio.run(build_full_stack_feature())
Real-World Use Cases
Use Case 1: Overnight Automation
End of Day Workflow:
4:45 PM - Before leaving office
$ claude "Perform comprehensive security audit of entire codebase"
[Ctrl+B to background]
$ claude "Generate detailed API documentation from code comments"
[Ctrl+B to background]
$ claude "Analyze performance of all database queries and suggest optimizations"
[Ctrl+B to background]
5:00 PM - Leave office, agents continue running on cloud
Next Morning, 9:00 AM - Check results
$ /tasks
All tasks complete! ✓
[1] Security audit: Found 7 issues, created fixes, PR #234
[2] API docs: Generated 450+ pages, PR #235
[3] DB optimization: 23 slow queries optimized, PR #236
Ready to review and merge
Use Case 2: Multi-Repo Synchronization
Scenario: Microservices architecture with shared API contract change
Main Repo: API Gateway
Task: "Update API contract to version 2.0"
[Background agent running...]
Dependent Repos (started simultaneously):
├─ User Service
│ Task: "Update to API contract v2.0 when ready"
│ Status: Waiting for contract definition...
│
├─ Product Service
│ Task: "Update to API contract v2.0 when ready"
│ Status: Waiting for contract definition...
│
├─ Order Service
│ Task: "Update to API contract v2.0 when ready"
│ Status: Waiting for contract definition...
│
└─ Notification Service
Task: "Update to API contract v2.0 when ready"
Status: Waiting for contract definition...
[API Gateway agent] ✓ Contract v2.0 defined and committed
[Automatic Cascade]
All dependent service agents automatically detect new contract
Begin updating their implementations in parallel
30 minutes later:
✓ All services updated to API contract v2.0
✓ 5 PRs created (1 gateway + 4 services)
✓ All integration tests passing
✓ Ready for synchronized deployment
Use Case 3: Long-Running Refactoring
Project: Migrate monolith to microservices
Phase 1: Extract User Service
$ claude "Extract user management into standalone service:
- Create new user-service repo
- Move relevant code from monolith
- Set up service infrastructure
- Update monolith to call service via HTTP
- Maintain backward compatibility
- Comprehensive tests"
[Ctrl+B - Expected duration: 2-3 hours]
Phase 2: Extract Product Service
$ claude "Extract product catalog into standalone service:
[similar detailed instructions]"
[Ctrl+B - Expected duration: 2-3 hours]
Both extractions running in parallel
Monolith gradually decomposed without blocking your workflow
Use Case 4: Parallel Feature Development
Sprint Planning: 5 features to implement
Traditional Approach (Sequential):
Feature 1: 1 day
Feature 2: 1 day
Feature 3: 1 day
Feature 4: 1 day
Feature 5: 1 day
Total: 5 days
With Async Agents (Parallel):
Monday 9 AM: Delegate all 5 features
$ claude "Feature 1: User profile editing"
[Ctrl+B]
$ claude "Feature 2: Advanced search filters"
[Ctrl+B]
$ claude "Feature 3: Email notification system"
[Ctrl+B]
$ claude "Feature 4: Data export functionality"
[Ctrl+B]
$ claude "Feature 5: Admin analytics dashboard"
[Ctrl+B]
Tuesday 9 AM: All features complete
5 PRs ready for review
Total: 1 day (5x faster)
Rest of sprint: Code review, refinement, testing, deployment
Best Practices for Async Agents
1. Clear Task Definition
✗ Poor Task Definition:
"Fix the bugs and improve performance"
→ Too vague, agent might go in wrong direction
✓ Good Task Definition:
"Identify and fix authentication timeout bugs in src/auth/
Focus on JWT token expiration handling
Ensure session persistence across page reloads
Add error recovery for network failures
Target: Reduce auth errors by 90%"
→ Specific, measurable, scoped
2. Appropriate Task Sizing
Too Small (Don't Background):
✗ "Add a console.log statement"
✗ "Fix typo in README"
→ Just do these immediately
Perfect for Backgrounding:
✓ "Refactor entire authentication system" (1-3 hours)
✓ "Implement comprehensive test suite" (2-4 hours)
✓ "Migrate database to new ORM" (3-5 hours)
→ Long-running, can proceed independently
Too Large (Break Down):
⚠ "Rebuild entire application from scratch"
→ Break into phases, background each phase
3. Dependency Management
✓ Independent Tasks (Perfect for Parallel):
- Service A: "Add caching layer"
- Service B: "Implement logging"
- Service C: "Add metrics collection"
→ No dependencies, run all in parallel
✗ Sequential Dependencies (Coordinate):
- Task 1: "Design database schema" [Run first]
- Task 2: "Generate migrations from schema" [Wait for Task 1]
- Task 3: "Seed database with test data" [Wait for Task 2]
→ Must run sequentially, don't background all at once
✓ Partial Dependencies (Hybrid):
- Phase 1: "Design API contract" [Run first]
- Phase 2 (parallel after Phase 1):
• "Implement backend API"
• "Generate frontend client"
• "Create API documentation"
• "Write integration tests"
4. Resource Management
Free Tier Limits:
- 1 background agent at a time
- Sequential processing of backgrounded tasks
Pro Plan Limits:
- 3 concurrent background agents
- Suitable for small team workflows
Max Plan Limits:
- 8 concurrent background agents
- Ideal for large projects and multi-repo work
Enterprise:
- Custom limits (16-32+ concurrent agents)
- Dedicated infrastructure for team usage
Monitor your usage:
$ claude stats
Async Agent Usage (Last 7 days):
Total tasks backgrounded: 47
Currently running: 3/8 slots used
Average task duration: 1h 23m
Completed successfully: 44 (94%)
Failed: 3 (6%)
5. Error Handling and Recovery
Monitor for Failures:
$ /tasks
bg-1234: TypeScript migration ❌ Failed (2h ago)
$ /tasks bg-1234 --logs
Error: Type conflicts in src/utils/validators.ts
Line 45: Cannot assign type 'string' to type 'number'
Agent attempted fixes but could not resolve
Requires manual intervention
Recovery Strategies:
Option 1: Resume with guidance
$ claude "Continue task bg-1234, for the type error:
• Change parameter type from number to string
• Update all call sites accordingly"
Option 2: Partial use
$ /tasks bg-1234 --extract-completed
→ Saves successfully migrated files
→ Creates partial PR for review
→ You manually fix remaining issues
Option 3: Restart with refinement
$ /tasks stop bg-1234
$ claude "TypeScript migration with explicit type rules:
[refined instructions based on failure]"
Comparing Async Agents with Other Features
Async Agents vs. Regular Subagents
Regular Subagents (Claude Code 2.0):
Purpose: Parallel execution within single task
Control: Main agent orchestrates and waits
Duration: Minutes to hours
Use Case: Full-stack feature with backend+frontend+tests
Example: "Build checkout system" → spawns 4 subagents
Timeline:
[Main Agent] Orchestrating...
├─ [Subagent 1] Backend API (30 min)
├─ [Subagent 2] Frontend UI (40 min)
├─ [Subagent 3] Tests (25 min)
└─ [Subagent 4] Docs (15 min)
[Main Agent] Integration complete (40 min total)
→ You wait for orchestration to finish
Async Agents (Latest):
Purpose: Independent background execution
Control: Fire-and-forget, agent works autonomously
Duration: Hours to overnight
Use Case: Long refactoring you can review later
Example: "Migrate to TypeScript" → Ctrl+B → forget
Timeline:
[You] Start task, Ctrl+B to background (10 seconds)
[You] Continue other work, meetings, lunch, etc.
[Background Agent] Working independently (3 hours)
[Background Agent] ✓ Complete, creates PR
[You] Review PR when convenient
→ Completely non-blocking
Async Agents vs. Traditional CI/CD
Traditional CI/CD:
Trigger: Git push
Purpose: Test, build, deploy
Scope: Fixed pipeline steps
Limitation: No intelligence, just scripted steps
Async Agents:
Trigger: Natural language request
Purpose: Intelligent code generation/refactoring
Scope: Open-ended development tasks
Advantage: AI decides implementation strategy
Complementary Usage:
1. Async Agent: "Implement feature X"
2. Agent creates PR
3. CI/CD: Runs tests, builds, deploys
4. Both working together: AI codes, pipeline validates
Advanced Techniques
Chained Async Agents
# Agent 1: Design phase
$ claude "Analyze requirements and design system architecture for
real-time collaborative editing feature. Output detailed technical spec."
# Wait for completion, review spec
# Agent 2-5: Implementation phase (parallel)
$ claude "Implement WebSocket server based on spec from bg-1234"
[Ctrl+B]
$ claude "Implement frontend editor component based on spec from bg-1234"
[Ctrl+B]
$ claude "Implement CRDT conflict resolution based on spec from bg-1234"
[Ctrl+B]
$ claude "Implement persistence layer based on spec from bg-1234"
[Ctrl+B]
# All agents reference the design spec from first agent
# Implementation proceeds in parallel from shared specification
Multi-Stage Workflows
# Automated multi-stage development workflow
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
async def multi_stage_workflow():
"""
Stage 1: Analysis
Stage 2: Implementation (parallel)
Stage 3: Testing & Validation
"""
# Stage 1: Analysis (sequential)
print("Stage 1: Analyzing codebase...")
analysis_results = []
async for msg in query(
"Analyze codebase and identify areas needing refactoring",
options=ClaudeAgentOptions(allowed_tools=["Grep", "Read"])
):
analysis_results.append(msg)
# Stage 2: Implementation (parallel based on analysis)
print("Stage 2: Implementing refactorings in parallel...")
refactoring_tasks = [
query(
f"Refactor {area} as identified in analysis",
options=ClaudeAgentOptions(allowed_tools=["Edit", "Write"])
)
for area in ["auth", "database", "api", "frontend"]
]
# Wait for all refactorings to complete
await asyncio.gather(*[
asyncio.create_task(consume_stream(task))
for task in refactoring_tasks
])
# Stage 3: Testing & Validation (sequential, depends on Stage 2)
print("Stage 3: Running comprehensive tests...")
async for msg in query(
"Run all tests and validate refactoring success",
options=ClaudeAgentOptions(allowed_tools=["Bash"])
):
print(f"[Testing] {msg}")
async def consume_stream(stream):
"""Helper to consume async stream"""
async for msg in stream:
print(msg)
asyncio.run(multi_stage_workflow())
Notification Integration
# macOS notification when background task completes
$ claude config set notifications.enabled true
$ claude config set notifications.sound true
# Email notification for long tasks
$ claude config set notifications.email "dev@company.com"
$ claude config set notifications.email-threshold 60 # minutes
# Slack integration
$ claude config set notifications.slack-webhook "https://hooks.slack.com/..."
$ claude config set notifications.slack-channel "#dev-updates"
# Example: Long task with notifications
$ claude "Complete security audit and penetration testing"
[Ctrl+B]
# 3 hours later...
# Email arrives: "Claude Code: Security audit complete (bg-5678)"
# Slack message: "@you Security audit finished! Found 5 issues. PR #789"
# macOS notification: 🔔 "Background task complete"
Troubleshooting
Issue 1: Ctrl+B Not Working
Problem: Pressed Ctrl+B but task didn't background
Causes:
✗ Agent hasn't started active processing yet
✗ Agent already completed
✗ Task is too quick to background
Solution:
✓ Wait for agent to show "Working..." status
✓ Press Ctrl+B during active processing phase
✓ For very quick tasks, backgrounding isn't necessary
Issue 2: Background Agent Stalled
Problem: Background task stuck at same percentage for hours
Diagnosis:
$ /tasks bg-1234 --logs
[12:34] Processing file src/components/UserProfile.tsx
[12:35] Analyzing dependencies...
[12:36] [Loop detected] Same analysis repeating
Solution:
$ /tasks stop bg-1234
$ claude "Resume task bg-1234 with explicit instruction:
Skip dependency analysis for UserProfile component
Use direct implementation approach instead"
Issue 3: Merge Conflicts from Parallel Agents
Problem: Multiple background agents modified same file
Example:
bg-1234: Refactoring auth system → modified src/config.ts
bg-5678: Adding logging → modified src/config.ts
Conflict in src/config.ts
Resolution:
$ /tasks resolve-conflict bg-1234 bg-5678
[Auto-merge attempt...]
✓ Successfully merged: Non-overlapping changes combined
OR (if auto-merge fails):
[Manual resolution required]
$ git diff bg-1234.patch bg-5678.patch
[Review conflicts manually]
$ git apply bg-1234.patch
$ git apply bg-5678.patch --3way
[Resolve in editor]
Issue 4: Web Version Not Syncing
Problem: Web dashboard not showing latest status
Quick Fixes:
1. Hard refresh browser: Cmd/Ctrl + Shift + R
2. Check connection status in top-right indicator
3. Verify repository permissions haven't changed
4. Clear browser cache and re-authenticate
If persistent:
1. Check Claude Code status page: status.anthropic.com
2. Verify GitHub webhooks are active
3. Re-authorize Claude Code in GitHub settings
4. Contact support with session ID from /tasks --debug
Future Roadmap
Anthropic has announced upcoming async agent enhancements:
Q1 2026:
- Agent collaboration: Background agents can spawn their own sub-agents
- Smart scheduling: AI determines optimal backgrounding strategy
- Team dashboards: Share background task views with team members
Q2 2026:
- Cross-project agents: Single agent working across multiple repos
- Persistent agents: Long-running agents that work over days/weeks
- Agent marketplace: Share and reuse agent configurations
Q3 2026:
- Voice control: "Hey Claude, background this task"
- Mobile app: Monitor background tasks from phone
- Advanced analytics: Productivity metrics and time savings reports
Conclusion
Claude Code's async agents feature represents a paradigm shift in AI-assisted development:
Key Benefits:
- ✓ True Parallel Development: Multiple independent tasks simultaneously
- ✓ Zero Blocking Time: Continue working while agents process in background
- ✓ Overnight Automation: Delegate long tasks that complete while you sleep
- ✓ Multi-Repo Orchestration: Manage changes across entire microservices ecosystem
- ✓ Automatic PR Creation: Agents file pull requests when work is complete
When to Use Async Agents:
- Long-running refactorings (>30 minutes)
- Multi-repo synchronization tasks
- Overnight automation workflows
- Parallel feature development
- Non-urgent but important tasks
Best Practices Recap:
- Define clear, specific task requirements
- Size tasks appropriately (1-4 hours ideal)
- Manage dependencies between parallel tasks
- Monitor with
/taskscommand - Set up notifications for long-running agents
Getting Started:
# CLI Version
$ claude "Your long-running task here"
# When agent starts processing, press Ctrl+B
# Check status
$ /tasks
# Web Version (Pro/Max subscribers)
# Visit code.anthropic.com
# Start multiple tasks across different repos
# Monitor from unified dashboard
The async agents feature transforms Claude Code from a powerful assistant into a tireless development partner that works around the clock, enabling unprecedented productivity gains for modern software teams.
Keywords: claude code async agents, background processing, parallel AI development, fire-and-forget coding, autonomous agents, multi-repo development, overnight automation, Claude Agent SDK, async/await patterns, web version parallel execution, task orchestration, development productivity
Sources:
- Code research projects with async coding agents
- Claude Code for web - a new asynchronous coding agent
- Claude Code updates async subagents, usage stats, and session renaming
- Subagents - Claude Code Docs
- Building agents with the Claude Agent SDK
- Async Workflows - Agents | Claude Fast
- Going Async with Claude Agents