Skip to content
autonomous-skill logo

Autonomous Skill - Long-Running Task Execution

autonomous-skill

Use when user wants to execute long-running tasks that require multiple sessions to complete. This skill manages task decomposition, progress tracking, and autonomous execution using Claude Code headless mode with auto-continuation. Trigger phrases: "autonomous", "long-running task", "multi-sessi...

SKILL.md

Full skill instructions

Autonomous Skill - Long-Running Task Execution

Execute complex, long-running tasks across multiple sessions using a dual-agent pattern (Initializer + Executor) with automatic session continuation.

Directory Structure

All task data is stored in .autonomous/<task-name>/ under the project root:

project-root/
└── .autonomous/
    ├── build-rest-api/
    │   ├── task_list.md
    │   └── progress.md
    ├── refactor-auth/
    │   ├── task_list.md
    │   └── progress.md
    └── ...

This allows multiple autonomous tasks to run in parallel without conflicts.

Workflow Overview

User Request → Generate Task Name → Create .autonomous/<task-name>/ → Execute Sessions

Step 1: Initialize Task Directory

Generate a task name from user's description and create the directory:

# Generate task name (lowercase, hyphens, max 30 chars)
# Example: "Build a REST API for todo app" → "build-rest-api-todo"
TASK_NAME=$(echo "$USER_TASK" | tr '[:upper:]' '[:lower:]' | sed 's/[^a-z0-9]/​-/​g' | sed 's/​--*/​-/​g' | cut -c1-30 | sed 's/​-$//')

# Create task directory
TASK_DIR=".autonomous/​$TASK_NAME"
mkdir -p "$TASK_DIR"

echo "Task directory: $TASK_DIR"

Step 2: Analyze Current State

Check if this is a new task or continuation:

TASK_DIR=".autonomous/​$TASK_NAME"

# Look for existing task list
if [ -f "$TASK_DIR/​task_list.md" ]; then
  echo "=== CONTINUATION MODE ==="
  echo "Found existing task at: $TASK_DIR"

  # Show progress summary
  TOTAL=$(grep -c '^\- \[' "$TASK_DIR/​task_list.md" 2>/​dev/​null || echo "0")
  DONE=$(grep -c '^\- \[x\]' "$TASK_DIR/​task_list.md" 2>/​dev/​null || echo "0")
  echo "Progress: $DONE/​$TOTAL tasks completed"

  # Show recent progress notes
  echo ""
  echo "=== Recent Progress ==="
  head -50 "$TASK_DIR/​task_list.md"
else
  echo "=== NEW TASK MODE ==="
  echo "Creating new task at: $TASK_DIR"
  mkdir -p "$TASK_DIR"
fi

Step 3: Choose Agent Mode

For NEW Tasks (Initializer Mode)

If task_list.md does NOT exist in the task directory:

SKILL_DIR="${CLAUDE_PLUGIN_ROOT}/​skills/​autonomous-skill"
TASK_DIR=".autonomous/​$TASK_NAME"

# Read the initializer prompt template
INITIALIZER_PROMPT=$(cat "$SKILL_DIR/​templates/​initializer-prompt.md")

# Execute initializer session
claude -p "Task: $USER_TASK_DESCRIPTION
Task Directory: $TASK_DIR

$INITIALIZER_PROMPT" \
  --output-format stream-json \
  --max-turns 50 \
  --append-system-prompt "You are the Initializer Agent. Create task_list.md and progress.md in $TASK_DIR directory."

For CONTINUATION (Executor Mode)

If task_list.md EXISTS in the task directory:

SKILL_DIR="${CLAUDE_PLUGIN_ROOT}/​skills/​autonomous-skill"
TASK_DIR=".autonomous/​$TASK_NAME"

# Read the executor prompt template
EXECUTOR_PROMPT=$(cat "$SKILL_DIR/​templates/​executor-prompt.md")

# Read current state
TASK_LIST=$(cat "$TASK_DIR/​task_list.md")
PROGRESS=$(cat "$TASK_DIR/​progress.md" 2>/​dev/​null || echo "No previous progress notes")

# Execute executor session
claude -p "Continue working on the task.
Task Directory: $TASK_DIR

Current task_list.md:
$TASK_LIST

Previous progress notes:
$PROGRESS

$EXECUTOR_PROMPT" \
  --output-format stream-json \
  --max-turns 100 \
  --append-system-prompt "You are the Executor Agent. Complete tasks and update files in $TASK_DIR directory."

Step 4: Auto-Continue Loop

After each session completes, check remaining tasks and auto-continue:

#!/​bin/​bash
TASK_DIR=".autonomous/​$TASK_NAME"
AUTO_CONTINUE_DELAY=3
SESSION_NUM=1

while true; do
  echo ""
  echo "=========================================="
  echo "  SESSION $SESSION_NUM - Task: $TASK_NAME"
  echo "=========================================="

  # Run the appropriate agent
  # ... execute session ...

  # Check completion
  if [ -f "$TASK_DIR/​task_list.md" ]; then
    TOTAL=$(grep -c '^\- \[' "$TASK_DIR/​task_list.md" 2>/​dev/​null || echo "0")
    DONE=$(grep -c '^\- \[x\]' "$TASK_DIR/​task_list.md" 2>/​dev/​null || echo "0")

    echo ""
    echo "=== Progress: $DONE/​$TOTAL tasks completed ==="

    if [ "$DONE" -eq "$TOTAL" ] && [ "$TOTAL" -gt 0 ]; then
      echo ""
      echo "All tasks completed! Exiting."
      break
    fi
  fi

  # Auto-continue with delay
  echo ""
  echo "Continuing in $AUTO_CONTINUE_DELAY seconds... (Press Ctrl+C to pause)"
  sleep $AUTO_CONTINUE_DELAY

  SESSION_NUM=$((SESSION_NUM + 1))
done

Step 5: Report Progress

After execution, display a clear progress report:

==========================================
  SESSION COMPLETE - Task: build-rest-api
==========================================

Task Directory: .autonomous/​build-rest-api/

Tasks completed this session:
- [x] Task 5: Implement user authentication
- [x] Task 6: Add login form validation

Overall Progress: 18/​50 tasks (36%)

Next tasks:
- [ ] Task 7: Create password reset flow
- [ ] Task 8: Add session management

Continuing in 3 seconds... (Press Ctrl+C to pause)

Usage Examples

Example 1: Start New Task

User: Please use autonomous skill to build a REST API for a todo app

Response:
1. Generated task name: "build-rest-api-todo"
2. Created directory: .autonomous/​build-rest-api-todo/
3. Running Initializer Agent...
4. Created task_list.md with 25 tasks
5. Progress: 3/​25 completed
6. Auto-continuing in 3 seconds...

Example 2: Continue Existing Task

User: Continue the autonomous task "build-rest-api-todo"

Response:
1. Found task: .autonomous/​build-rest-api-todo/
2. Current progress: 15/​25 tasks
3. Running Executor Agent...
4. Completed tasks 16-17
5. Progress: 17/​25 completed
6. Auto-continuing in 3 seconds...

Example 3: List All Tasks

# List all autonomous tasks
ls -la .autonomous/

# Show progress for specific task
cat .autonomous/​build-rest-api-todo/​task_list.md

Key Files

For each task in .autonomous/<task-name>/:

FilePurpose
task_list.mdMaster task list with checkbox progress
progress.mdSession-by-session progress notes

Important Notes

  1. Task Isolation: Each task has its own directory, no conflicts
  2. Task Naming: Auto-generated from description (lowercase, hyphens)
  3. Task List is Sacred: Never delete or modify descriptions, only mark [x]
  4. One Task at a Time per Session: Focus on completing tasks thoroughly
  5. Auto-Continue: Sessions auto-continue with 3s delay; Ctrl+C to pause

Troubleshooting

IssueSolution
Task not foundCheck .autonomous/ for existing tasks
Multiple tasksSpecify task name explicitly
Session stuckCheck progress.md in task directory
Need to restartDelete task directory and start fresh

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