文件预览

mindmap_best_practices.md

查看 Mindmap Generator 技能包中的文件内容。

文件内容

references/mindmap_best_practices.md

# Mindmap Best Practices for AI Personal Assistants

> Reference document for the mindmap-generator skill.
> Guides the agent on WHEN and HOW to create effective mindmaps.

---

## When Mindmaps Add Value (vs. Plain Text)

| Situation | Use Mindmap? | Why |
|---|---|---|
| 3+ priorities competing for attention | ✅ Yes | Visual hierarchy helps triage |
| Simple to-do list (1-3 items) | ❌ No | Text is faster, less overhead |
| Decision with multiple factors | ✅ Yes | Seeing pros/cons/risks spatially aids judgment |
| Meeting recap with action items | ✅ Only if 3+ owners/threads | Otherwise a bullet list is clearer |
| Goal decomposition | ✅ Yes | Shows dependencies and hierarchy |
| Single status update | ❌ No | Text message is appropriate |
| Weekly review | ✅ Yes | Comparing completed vs. pending is visual |
| "I'm overwhelmed" | ✅ Yes | Externalizing structure reduces cognitive load |

**Rule of thumb:** If the content has **hierarchy AND 3+ branches**, a mindmap helps. If it's flat or small, stick to text.

---

## Structure Guidelines

### The 7±2 Rule (Miller's Law)
- Root should have **5-7 branches** max
- If you have more, group them into categories first
- Each branch should have **3-5 children** max

### Depth Limits
- **Level 1:** Categories (Meetings, Tasks, Follow-ups)
- **Level 2:** Specific items (Client call at 2pm, Review proposal)
- **Level 3:** Details only when needed (Pricing section needs update)
- **Level 4:** Avoid — if you're here, the branch needs restructuring

### Label Length
- **Ideal:** 3-5 words per node
- **Maximum:** 8 words — beyond this, the mindmap becomes unreadable on mobile
- **Bad:** "Review the updated pricing proposal that Rajesh sent on Monday"
- **Good:** "Review Rajesh pricing proposal"

---

## Shape Usage Strategy

Don't use shapes randomly. Use them as a **visual language** the user learns over time:

| Shape | Meaning | When |
|---|---|---|
| Circle `(( ))` | Central topic | Always the root, only the root |
| Rounded rect `( )` | Category/group | For organizing branches |
| Square `[ ]` | Action item | Something that needs to be DONE |
| Cloud `) (` | Open/uncertain | Questions, ideas, unknowns |
| Bang `)) ((` | Urgent/blocked | Things that need immediate attention |
| Hexagon `{{ }}` | Decision point | When a choice needs to be made |

**Consistency matters more than variety.** The user should be able to glance at a mindmap and immediately know what needs action (squares), what's urgent (bangs), and what's uncertain (clouds).

---

## Telegram-Specific Considerations

### Image Readability
- Telegram displays photos at ~300-400px width in chat
- Users can tap to zoom, but the mindmap should be scannable at small size
- **Implication:** Fewer branches and shorter labels are critical

### Dark Mode
- ~40% of Telegram users use dark mode
- White background PNGs work in both light and dark mode
- Avoid light-colored text or low-contrast elements

### Caption Strategy
- Always pair the image with a **1-2 sentence caption**
- The caption should highlight the most actionable insight:
  - "Your proposal is due today and Rajesh's SOW is 3 days overdue — those need attention first."
  - NOT "Here's a mindmap of your day" (obvious, adds nothing)

### When the Image Fails
- Rendering can fail (Node.js not available, complex syntax, etc.)
- Always have a **text fallback** using Unicode tree characters:
  ```
  📊 Today's Priorities
  ├── 🔴 Client Proposal (due 2pm)
  │   ├── Review pricing
  │   └── Add case studies
  ├── 🟡 Standup (11am)
  └── 🟢 Follow up with Rajesh
  ```

---

## Meeting Notes: Optional Input

Meeting notes are one of many possible inputs. The skill should handle:

1. **Meeting notes available** → Extract decisions, actions, open questions → Mindmap
2. **No meeting notes** → Use calendar, memory, and messages instead → Mindmap
3. **Voice transcript** → Parse the unstructured text → Extract hierarchy → Mindmap
4. **Simple text request** → "Map out my Q3 goals" → Use goals from memory → Mindmap

**Never assume meeting notes exist.** The agent should gracefully work with whatever context is available.

---

## Progressive Complexity

Start simple, offer to elaborate:

1. **First version:** 2 levels, key categories only
2. **If user asks "expand on Tasks":** Add level 3 detail to that branch
3. **If user asks "add last week's context":** Pull from memory, add a "History" branch

This prevents overwhelming the user while keeping the option open for depth.