4to1-planner

TotalClaw 作者 totalclaw

使用 4To1 Method™ 的 AI 规划教练 — 将 4 年愿景转化为日常行动。连接到 Notion、Todoist、Google 日历或本地 Markdown。当用户想要计划目标、每周回顾、跟踪项目或建立计划系统时使用。

安装 / 下载方式

TotalClaw CLI推荐
totalclaw install totalclaw:totalclaw~qingxuantang-4to1-planner
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~qingxuantang-4to1-planner/file -o qingxuantang-4to1-planner.md
## 概述(中文)

使用 4To1 Method™ 的 AI 规划教练 — 将 4 年愿景转化为日常行动。连接到 Notion、Todoist、Google 日历或本地 Markdown。当用户想要计划目标、每周回顾、跟踪项目或建立计划系统时使用。

## 原文

# 4To1 Planner — AI Planning Coach

> **"From Vision to Action: 4to1"**

An AI-native planning coach that turns your 4-year vision into today's action — through conversation, not templates.

## The 4To1 Method™

A 4-layer strategic planning system. Each layer bridges the gap between vision and execution:

```
4 YEARS  →  Strategic Vision     (Where am I going?)
3 MONTHS →  Project Milestones   (Quarterly Gantt Log)
2 WEEKS  →  Action Execution     (1 Day in a Week sprints)
1 DAY    →  Daily Tasks          (Today's to-do list)
```

Plus two elimination layers:
- **Not-To-Do Projects**: Things you explicitly say NO to
- **Time Wasters**: Daily habits you're eliminating

**Core principle:** Every daily task connects to a 2-week sprint, which connects to a 3-month milestone, which connects to your 4-year vision. **Nothing floats.**

## Quick Start

User says any of these → this skill activates:
- "Help me set up a planning system"
- "I want to plan my next 4 years"
- "Do my weekly review"
- "What should I focus on today?"
- "Set up 4to1 planner"

## Setup: Connect Your Backend

The planner needs somewhere to store plans. Ask the user which they prefer:

### Option 1: Notion (Recommended)

```bash
# 1. Create a Notion integration at https://www.notion.so/my-integrations
# 2. Copy the API key (starts with ntn_)
# 3. Store it:
mkdir -p ~/.config/4to1
echo "BACKEND=notion" > ~/.config/4to1/config
echo "NOTION_API_KEY=ntn_your_key_here" >> ~/.config/4to1/config
```

Share a parent page with the integration in Notion (click ··· → Connections → select your integration).

**Create the planning workspace in Notion:**

```bash
NOTION_KEY=$(grep NOTION_API_KEY ~/.config/4to1/config | cut -d= -f2)
PARENT_PAGE=$(grep NOTION_PARENT_PAGE ~/.config/4to1/config | cut -d= -f2)

# Create the 4To1 Planning Hub page
curl -s -X POST "https://api.notion.com/v1/pages" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d "{
    \"parent\": {\"page_id\": \"$PARENT_PAGE\"},
    \"properties\": {\"title\": {\"title\": [{\"text\": {\"content\": \"🎯 4To1 Planning Hub\"}}]}},
    \"children\": [
      {\"type\": \"heading_1\", \"heading_1\": {\"rich_text\": [{\"text\": {\"content\": \"🔭 4-Year Vision\"}}]}},
      {\"type\": \"paragraph\", \"paragraph\": {\"rich_text\": [{\"text\": {\"content\": \"Your strategic direction. Updated annually.\"}}]}},
      {\"type\": \"heading_1\", \"heading_1\": {\"rich_text\": [{\"text\": {\"content\": \"📊 3-Month Milestones\"}}]}},
      {\"type\": \"paragraph\", \"paragraph\": {\"rich_text\": [{\"text\": {\"content\": \"Quarterly Gantt Log — project milestones for this quarter.\"}}]}},
      {\"type\": \"heading_1\", \"heading_1\": {\"rich_text\": [{\"text\": {\"content\": \"🏃 2-Week Sprint\"}}]}},
      {\"type\": \"paragraph\", \"paragraph\": {\"rich_text\": [{\"text\": {\"content\": \"1 Day in a Week — action execution in 2-week cycles.\"}}]}},
      {\"type\": \"heading_1\", \"heading_1\": {\"rich_text\": [{\"text\": {\"content\": \"🚫 Not-To-Do List\"}}]}},
      {\"type\": \"paragraph\", \"paragraph\": {\"rich_text\": [{\"text\": {\"content\": \"Projects and commitments you are explicitly saying NO to.\"}}]}},
      {\"type\": \"heading_1\", \"heading_1\": {\"rich_text\": [{\"text\": {\"content\": \"⏰ Time Wasters\"}}]}},
      {\"type\": \"paragraph\", \"paragraph\": {\"rich_text\": [{\"text\": {\"content\": \"Daily habits you are eliminating.\"}}]}}
    ]
  }"

# Create Projects database (tracks items across all 4 layers)
curl -s -X POST "https://api.notion.com/v1/databases" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d "{
    \"parent\": {\"page_id\": \"$PARENT_PAGE\"},
    \"title\": [{\"text\": {\"content\": \"📋 4To1 Projects\"}}],
    \"properties\": {
      \"Name\": {\"title\": {}},
      \"Status\": {\"select\": {\"options\": [
        {\"name\": \"Active\", \"color\": \"green\"},
        {\"name\": \"Planned\", \"color\": \"blue\"},
        {\"name\": \"On Hold\", \"color\": \"yellow\"},
        {\"name\": \"Done\", \"color\": \"gray\"},
        {\"name\": \"Not-To-Do\", \"color\": \"red\"}
      ]}},
      \"Layer\": {\"select\": {\"options\": [
        {\"name\": \"4-Year Vision\", \"color\": \"blue\"},
        {\"name\": \"3-Month Milestone\", \"color\": \"green\"},
        {\"name\": \"2-Week Sprint\", \"color\": \"orange\"},
        {\"name\": \"1-Day Task\", \"color\": \"red\"}
      ]}},
      \"Priority\": {\"select\": {\"options\": [
        {\"name\": \"Primary\", \"color\": \"red\"},
        {\"name\": \"Secondary\", \"color\": \"orange\"},
        {\"name\": \"Nice-to-have\", \"color\": \"gray\"}
      ]}},
      \"Parent Project\": {\"rich_text\": {}},
      \"Start Date\": {\"date\": {}},
      \"End Date\": {\"date\": {}},
      \"Progress\": {\"number\": {\"format\": \"percent\"}},
      \"Notes\": {\"rich_text\": {}}
    }
  }"

# Create Sprint Log database (2-week tracking cycles)
curl -s -X POST "https://api.notion.com/v1/databases" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d "{
    \"parent\": {\"page_id\": \"$PARENT_PAGE\"},
    \"title\": [{\"text\": {\"content\": \"📅 Sprint Log\"}}],
    \"properties\": {
      \"Sprint\": {\"title\": {}},
      \"Focus Areas\": {\"rich_text\": {}},
      \"Completed\": {\"number\": {}},
      \"Planned\": {\"number\": {}},
      \"Completion Rate\": {\"formula\": {\"expression\": \"if(prop(\\\"Planned\\\") > 0, round(prop(\\\"Completed\\\") / prop(\\\"Planned\\\") * 100), 0)\"}},
      \"Reflection\": {\"rich_text\": {}},
      \"Energy Level\": {\"select\": {\"options\": [
        {\"name\": \"🔥 High\", \"color\": \"green\"},
        {\"name\": \"😊 Normal\", \"color\": \"blue\"},
        {\"name\": \"😴 Low\", \"color\": \"yellow\"},
        {\"name\": \"💀 Burnt Out\", \"color\": \"red\"}
      ]}}
    }
  }"
```

### Option 2: Todoist

```bash
# 1. Get API token from https://app.todoist.com/app/settings/integrations/developer
echo "BACKEND=todoist" > ~/.config/4to1/config
echo "TODOIST_API_KEY=your_token_here" >> ~/.config/4to1/config
```

**Create the 4To1 structure:**

```bash
TODOIST_KEY=$(grep TODOIST_API_KEY ~/.config/4to1/config | cut -d= -f2)

for project in "🔭 4-Year Vision" "📊 3-Month Milestones" "🏃 2-Week Sprint" "✅ Daily Tasks" "🚫 Not-To-Do"; do
  curl -s -X POST "https://api.todoist.com/rest/v2/projects" \
    -H "Authorization: Bearer $TODOIST_KEY" \
    -H "Content-Type: application/json" \
    -d "{\"name\": \"$project\"}"
done
```

### Option 3: Google Calendar + Tasks

```bash
echo "BACKEND=gcal" > ~/.config/4to1/config
# Requires Google OAuth — run the setup script:
python3 {baseDir}/scripts/gcal_setup.py
```

### Option 4: Local Markdown (No account needed)

```bash
echo "BACKEND=local" > ~/.config/4to1/config
echo "LOCAL_DIR=~/4to1-plans" >> ~/.config/4to1/config
mkdir -p ~/4to1-plans/{vision,milestones,sprints,daily,not-to-do}
```

## Core Commands

### 1. Onboarding — "Set up my planning system"

Guide the user through this conversation:

**Step 1: Choose backend** (see Setup above)

**Step 2: 4-Year Vision** (5-10 min conversation)

Ask one at a time, conversationally:
1. "If you could be anywhere in 4 years — career, life, skills — what does that look like?"
2. "What are the 2-3 biggest areas you want to transform?" (career, health, relationships, skills, finances)
3. "For each area, what does SUCCESS look like in 4 years? Be specific."
4. "What are you willing to give up to get there?" → seeds the Not-To-Do list
5. "Any daily habits stealing your time?" → seeds the Time Wasters list

After the conversation, create:
- 4-Year Vision document with their answers (Layer: 4-Year