Install
openclaw skills install pad-modeTurn messy requests into structured plans. PAD Mode (Plan → Act → Deliver) gives your AI agent project management superpowers — automatic task breakdown, live progress tracking, sub-agent parallel execution, and human approval gates. Use /pad for complex tasks that need more than a single-shot answer. Perfect for plan mode, project planning, task planning, workflow planning, and multi-step execution. Triggers: 1. Slash command: "/pad" in conversation 2. Explicit keywords: "pad mode", "plan mode", "make a plan", "plan this out" 3. Auto-detect: When the user's request is complex (3+ distinct tasks, multi-file changes, architectural decisions, or ambiguous requirements), proactively suggest entering PAD mode. Use when: user wants structured execution tracking for non-trivial tasks, not for simple one-shot questions or commands.
openclaw skills install pad-modePAD Mode transforms ambiguous requests into structured, trackable execution plans. Five phases: Plan → Discuss → Approve → Act → Deliver.
PAD Mode is a general execution framework, not a coding-only workflow. It should remain lightweight for general tasks while applying stricter execution guardrails when the task type warrants them.
Violating the rules below is considered an execution failure. Treat the 🛑 STOP points as hard blockers, not suggestions.
🔵 Confirmed, and wait for explicit user approval.🔄 In Progress → ✅ Done / ❌ Failed).Execute → Verify → Mark done.A task is not complete because work was attempted. A task is complete only when its promised output exists and the relevant checks have passed.
Before marking any task ✅ Done, confirm the relevant items below:
❌ Failed instead of ✅ DoneTask-specific additions:
If verification is missing, the task is still in progress.
When triggered, analyze the user's request and create a plan document.
If the trigger is bare /pad with no additional context, do NOT guess or infer from conversation history. Instead, ask the user directly:
What do you want to plan? Give me the task and I'll break it down.
Wait for the user to provide a clear request before proceeding.
plans/YYYY-MM-DD-<short-slug>.md
assets/plan-template.md🟡 Discussing), timestampcoding, research, ops, content, or general.Present the plan summary to the user and wait for feedback.
Iterate on the plan based on user feedback:
auth/validator.js, update login route to use new module, tests passing" (specific)Continue until the user says the plan is good, looks good, or approved.
When the user confirms the plan:
🔵 Confirmed🛑 STOP. Do NOT proceed to Phase 4 until ALL of the following are true:
🔵 Confirmed (updated in the plan file)If the user has not responded yet, DO NOT execute. Wait. Do not infer approval from silence or from earlier messages in the conversation.
Execute tasks with live tracking.
🟢 Executing🛑 STOP. Before ANY tool calls or task execution, ask the user about execution mode:
This plan has N tasks and will take some time. Would you like to run it in the foreground (real-time updates) or background (notify when done)?
DO NOT start any tool calls, web searches, file writes, or other actions until the user replies with their preferred mode. Use buttons (Foreground / Background) if the channel supports them, otherwise wait for text reply.
If channel supports buttons, use Foreground / Background buttons. Otherwise ask as text and wait.
Foreground mode: Work through tasks directly, notifying after each one.
Background mode: Spawn a sub-agent with the plan context. The sub-agent:
sessions_sendWork through tasks in dependency order. Independent tasks may run in parallel via sub-agents.
For every task, use the mandatory loop below:
🔄 In Progress in the plan doc✅ Done❌ Failed, document the issue, and propose a fix, retry, or skip pathVerification guidance by task type:
Trigger review before completion when any of the following apply:
Review may be done by a reviewer sub-agent or by explicit self-review if no sub-agent is appropriate.
If a task reveals that the plan needs adjustment:
After all tasks are marked complete, do NOT automatically close the plan. Instead:
⏳ Pending Review📋 Plan "XXX" , all tasks completed. Deliverables:
- T1.1 ✅ xxx
- T2.1 ✅ xxx ...
Does everything look good? Any changes needed?
🛑 STOP. Do NOT auto-archive. Send confirmation and WAIT for user response:
✅ Archive / 🔧 Changes Needed buttons, wait for click✅ CompletedPAD Mode should stay general, but task type should influence execution rigor.
Sub-agents are not just extra workers. Assign them clear roles when useful.
Not every PAD run needs all roles. Use only the roles that create clear value.
When tasks are independent (no shared dependencies), use sub-agents for parallel execution.
Task A (independent) , sub-agent 1 ,┐
Task B (independent) , sub-agent 2 ,┤, merge results , update plan doc
Task C (depends on A) , wait for A ,┘
Always update the plan doc from the main agent, not from sub-agents.
All plans live in: ~/.openclaw/workspace/plans/
Create the directory if it does not exist. Use read to check an existing plan before creating a new one for the same topic.
If the user references an existing plan (for example, "continue the last plan"), search for it in plans/, read the doc, identify the last completed task, and resume from there.