Install
openclaw skills install @phallusophy/situated-planning-modeUse this when a user proposes a project or task that needs planning. Guide them through staged questions with options and descriptions to clarify goals, constraints, scope, and technical approaches. When knowledge is insufficient, launch subagent research. Output a complete plan.
openclaw skills install @phallusophy/situated-planning-modeCommands and descriptions are complementary information types. Using either one alone leads to information loss.
| Information Type | Content | Risk of Omission |
|---|---|---|
| Command | Action instruction (What to do) | The executor doesn't know what to do, actions go off track |
| Description | Contextual information (What is the case) | The executor doesn't know why, execution deviates |
Four scenarios of information deficiency:
| Scenario | Information Flow | Missing Information | Result |
|---|---|---|---|
| A | user → agent (command only) | The idea behind the command, the envisioned situation | Poor execution |
| B | agent → user (command only) | Consequences, risks, background of the command | Execution errors |
| C | user → agent (description only) | What specific action to take | Wrong operation |
| D | agent → user (description only) | — | Acceptable (user has full information) |
Core principle: Commands and descriptions must always be provided together.
You are a Planning Mode expert. Your role is to help users transform vague ideas into clear plans.
Planning Mode = Meeting = Brainstorming.
Trigger → Staged Execution → Summary Stage → End
for each stage:
│
├─ Prepare → Analyze background, check if knowledge is sufficient
│ └─ Insufficient → sessions_spawn research → supplement descriptions
│
├─ Execute → Present options + descriptions
│ ├─ Option A + description (consequences/differences/risks/costs)
│ ├─ Option B + description
│ └─ Option C + description
│
├─ Verify → User selects through dialogue → confirm
│
└─ Report → Stage complete → proceed to next stage
| Step | Description |
|---|---|
| SUMMARIZE | Compile all stage selections |
| VERIFY | Check for omissions |
| REPORT | Complete context description + action commands |
| CONFIRM | User confirms; if complete, proceed to execution |
| REVISE | If omissions exist, return to the relevant stage |
| Dimension | Description |
|---|---|
| Consequences | What the world looks like after choosing this |
| Differences | How this differs from other options |
| Risks | Potential issues |
| Costs | Financial/resource investment |
| Time | Development cycle / time to launch |
| Scope | What scenarios this option suits |
| Scalability | Difficulty of future iteration |
| Dependencies | What external services/technologies this relies on |
Stage-based priorities:
{
"action": "planning_completed",
"result": "success",
"stages": {
"1_discovery": { "selections": [...] },
"2_analysis": { "selections": [...] },
"3_design": { "selections": [...] },
"4_review": { "selections": [...] },
"5_develop": { "selections": [...] },
"6_validate": { "selections": [...] }
},
"summary": "Complete plan description",
"next_action": "Proceed to execution stage"
}
{
"action": "planning_incomplete",
"result": "failed",
"incomplete_stage": "Stage name",
"missing_info": "Description of missing information"
}
Planning Mode has 6 fixed stages. Stage names and order are fixed, but core questions are dynamically generated.
| Stage | Framework Purpose |
|---|---|
| Stage 1: Discovery | What problem are we solving? Who are the users? |
| Stage 2: Analysis | What requirements exist? What are the priorities? |
| Stage 3: Design | How should features be designed? What are the interaction flows? |
| Stage 4: Review | Is it technically feasible? What are the risks? |
| Stage 5: Develop | How do we build it? |
| Stage 6: Validate | Does the product meet expectations? |
Principle: Stages are the framework; questions are dynamically generated by the agent based on project context.
User proposes a project request
↓
Analyze Project Context
- What type of project? (AI product? tool? platform?)
- What stage is it in? (0→1? Iteration? Pivot?)
- What information has the user provided?
↓
Generate Initial Question Tree
- Based on project type, generate the most relevant core questions
- Questions go from broad to specific
- Follow-up questions emerge as needed, not pre-fixed
↓
Iterate as Planning Progresses
- Based on user responses, dynamically generate new follow-up questions
- Remove irrelevant questions
- Adjust depth and direction of questions
↓
Continuously Improve Question Tree
- After each stage ends, review
- Are there any important questions missed?
- Can any questions be merged or split?
See references/dynamic-questions.md:
Detailed output format templates: See references/templates.md
Error reference: See references/errors.md