本文へ移動
cccskills
無料GitHub で公開

4to1-planner

AI planning coach using the 4To1 Method™ — turn 4-year vision into daily action. Connects to Notion, Todoist, Google Calendar, or local Markdown. Use when user wants to plan goals, do weekly reviews, track projects, or set up a planning system.

インストール方法を見る

含まれるファイル(5)

  • SKILL.md15.8 KB
  • README.md3.1 KB
  • scripts/setup.sh3.4 KB
  • scripts/status.sh2.7 KB
  • scripts/weekly_review.md1.8 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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)

# 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:

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

# 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:

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

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)

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 Vision)
  • 2-5 vision areas with concrete success criteria
  • Initial Not-To-Do list + Time Wasters list

Step 3: 3-Month Milestones (5 min)

  1. "Of your vision areas, which 1-2 need the most progress in the next 3 months?"
  2. "What specific milestones would mean real progress?"
  3. "Break each into measurable deliverables."

Create items with Layer: 3-Month Milestone, linked to vision areas.

Step 4: 2-Week Sprint (3 min)

  1. "For your quarterly milestones, what can you accomplish in the next 2 weeks?"
  2. "Pick 2 Primary projects and up to 5 Secondary projects."
  3. "What does 'done' look like for each?"

Create items with Layer: 2-Week Sprint.

Step 5: Today (1 min)

  1. "What are the 3 most important tasks for today?"
  2. "Which sprint project does each serve?"

Write everything to the chosen backend.

2. Weekly Review — "Do my weekly review"

Run every Sunday evening or Monday morning. Read {baseDir}/scripts/weekly_review.md for the full template.

Summary:

READ: This week's tasks + completion status + project progress + Not-To-Do list
ASK:  How did this week go? → Wins? → Blockers? → Energy level?
      → Did you spend time on Not-To-Do items? → Next week's top 3?
WRITE: Sprint log entry + next week's tasks + updated progress

Keep it under 10 minutes. Be a coach, not a form.

3. Bi-Weekly Sprint Review — Every 2 weeks

READ: Current 2-week sprint tasks and progress
REVIEW: What got done? What carries over? Any sprint goal changes?
PLAN: Next 2-week sprint — new primary/secondary projects
CHECK: Are sprints still aligned with 3-month milestones?

4. Quarterly Review — End of each quarter

READ: All projects and sprint logs for the quarter
REPORT: Projects completed/stalled/abandoned, completion trend, top win, biggest blocker
ASK: Which projects continue? Which get cut? New projects? Update Not-To-Do?
WRITE: Quarterly report + next quarter's milestones

5. Daily Check-in — "What should I focus on today?"

READ: Current sprint tasks + project priorities
RESPOND:
  "Based on your 2-week sprint, today's focus:
   1. [Task] → serves [3-month milestone]
   2. [Task] → serves [milestone]
   3. [Task]

   ⚠️ [Project X] hasn't had progress in a week.
   🚫 Not-To-Do reminder: You said NO to [thing]."

6. Quick Add — "Add [task] to my plan"

Parse the task. Ask which project/sprint it serves if unclear. Add to backend with correct layer linkage.

7. Progress Check — "How am I doing?"

READ: All data
SHOW:
  🔭 4-Year Vision: [areas and direction]
  📊 Q[X] Milestones: [X/Y complete]
  🏃 Current Sprint: [X/Y tasks done, Z% rate]
  📈 Sprint streak: X consecutive reviews
  🚫 Not-To-Do violations: [any this week?]

Notion API Reference

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

# Search planning pages
curl -s -X POST "https://api.notion.com/v1/search" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{"query": "4To1"}'

# Query projects by layer
curl -s -X POST "https://api.notion.com/v1/databases/{db_id}/query" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{"filter": {"and": [
    {"property": "Status", "select": {"equals": "Active"}},
    {"property": "Layer", "select": {"equals": "2-Week Sprint"}}
  ]}}'

# Update progress
curl -s -X PATCH "https://api.notion.com/v1/pages/{page_id}" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{"properties": {"Progress": {"number": 0.75}, "Status": {"select": {"name": "Active"}}}}'

# Create sprint log entry
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": {"database_id": "{sprint_log_db_id}"},
    "properties": {
      "Sprint": {"title": [{"text": {"content": "2026-W07 Sprint Review"}}]},
      "Completed": {"number": 8},
      "Planned": {"number": 10},
      "Reflection": {"rich_text": [{"text": {"content": "Good sprint. Hit main milestones."}}]},
      "Energy Level": {"select": {"name": "😊 Normal"}}
    }
  }'

Todoist API Reference

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

# Get all projects
curl -s "https://api.todoist.com/rest/v2/projects" -H "Authorization: Bearer $TODOIST_KEY"

# Get active tasks in a project
curl -s "https://api.todoist.com/rest/v2/tasks?project_id={id}" -H "Authorization: Bearer $TODOIST_KEY"

# Create task linked to sprint
curl -s -X POST "https://api.todoist.com/rest/v2/tasks" \
  -H "Authorization: Bearer $TODOIST_KEY" -H "Content-Type: application/json" \
  -d '{"content": "Task name", "project_id": "xxx", "priority": 4, "due_string": "next monday", "description": "Sprint: 2-Week Sprint | Milestone: Q1 Goal"}'

# Complete task
curl -s -X POST "https://api.todoist.com/rest/v2/tasks/{id}/close" -H "Authorization: Bearer $TODOIST_KEY"

Local Markdown Backend

~/4to1-plans/
├── vision.md            # 4-year vision document
├── not-to-do.md         # Not-To-Do projects + Time Wasters
├── milestones/
│   └── 2026-Q1.md       # 3-month milestone plan
├── sprints/
│   ├── 2026-W07.md      # 2-week sprint plan
│   └── 2026-W09.md
├── daily/
│   └── 2026-02-10.md    # Daily task list
└── reviews/
    ├── sprint-2026-W07.md  # Sprint review log
    └── quarterly-2026-Q1.md

Use YAML frontmatter for structured data:

---
project: Launch MVP
layer: 3-month-milestone
status: active
priority: primary
progress: 45
start: 2026-01-01
end: 2026-03-31
parent_vision: "Build a profitable SaaS"
---
# Launch MVP
## Tasks (2-week sprint)
- [x] Define feature scope
- [x] Build prototype
- [ ] User testing round 1
- [ ] Iterate on feedback

Automation (Heartbeat/Cron)

For OpenClaw users with heartbeats or cron:

Weekly review reminder (Sunday 8pm):

"Run 4to1 weekly review: read sprint progress, generate summary, ask for next week's priorities"

Daily focus (weekdays 8am):

"Check 4to1 plan, suggest today's top 3 focus tasks based on current 2-week sprint"

Stall detection (every 3 days):

"Check if any active 4to1 sprint project hasn't been updated in 1+ week. Alert if stalled."

Coach Principles

  1. Respect the 4-3-2-1 hierarchy — every task connects up through sprint → milestone → vision
  2. Protect the Not-To-Do list — if user adds something conflicting, remind them why they said no
  3. Never fabricate progress — only report what's actually tracked
  4. Keep it lightweight — weekly review = 5-10 min, daily check-in = 1 min
  5. Be encouraging but honest — celebrate wins, flag stalls kindly
  6. Think in 2-week cycles — the sprint is the core execution rhythm

Learn More

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

name: 4d-compression-core version: 1.0.2 description: "把长内容压缩成结构化向量——节省 60-80% Token,保留核心信息" metadata: { "openclaw": { "emoji": "🌀", "requires": { "bins": ["jq", "awk"] }, "triggers": ["压缩", "4d",...

日本語の概要は準備中です。原文の説明を表示しています。

modbender/skill-library-mcp162026年9月28日 更新

Use cheap, TEE-verified AI models from the 0G Compute Network as OpenClaw providers. Discover available models and compare pricing vs OpenRouter, verify provider integrity via hardware attestation (Intel TDX), manage your 0G wallet and sub-accounts, and configure models in OpenClaw with one workflow. Supports DeepSeek, GLM-5, Qwen, and other models available on the 0G marketplace.

日本語の概要は準備中です。原文の説明を表示しています。

modbender/skill-library-mcp162026年9月28日 更新

Send and receive P2P messages using disposable numbers and PINs. No servers, no accounts. Use for human notifications, approval flows, and agent-to-agent communication.

日本語の概要は準備中です。原文の説明を表示しています。

modbender/skill-library-mcp162026年9月28日 更新

0xarchive

無料

Query historical crypto market data from 0xArchive across Hyperliquid, Lighter.xyz, and HIP-3. Covers orderbooks, trades, candles, funding rates, open interest, liquidations, and data quality. Use when the user asks about crypto market data, orderbooks, trades, funding rates, or historical prices on Hyperliquid, Lighter.xyz, or HIP-3.

日本語の概要は準備中です。原文の説明を表示しています。

modbender/skill-library-mcp162026年9月28日 更新

0xwork

無料

Find and complete paid tasks on the 0xWork decentralized marketplace (Base chain, USDC escrow). Use when: the agent wants to earn money/USDC by doing work, discover available tasks, claim a bounty, submit deliverables, check earnings or wallet balance, or set up as a 0xWork worker. Task categories: Writing, Research, Social, Creative, Code, Data. NOT for: posting tasks (use the website), managing the 0xWork platform, or frontend development.

日本語の概要は準備中です。原文の説明を表示しています。

modbender/skill-library-mcp162026年9月28日 更新

Patterns and practices that dramatically accelerate development velocity. Covers parallel execution, automation, feedback loops, workflow optimization, and anti-pattern avoidance. Use when starting projects, planning sprints, optimizing workflows, or onboarding developers.

日本語の概要は準備中です。原文の説明を表示しています。

modbender/skill-library-mcp162026年9月28日 更新

modbender のスキルをすべて見る

このスキルの問題を報告する