SparkPlan — 平淡日常中的改变念头 × 每周创新计划生成器一、实际应用场景描述周三下午你盯着屏幕发呆脑子里突然冒出一个念头我想每天早上写 500 字。这个念头很轻轻到如果你不抓住它三分钟后就会被下一条消息覆盖。但你心里知道——它已经不是第一次来了。上个月来过一次上上个月也来过。每次都死在明天开始四个字上。更真实的情况是你不是不想写你是不知道怎么从想变成做到。- 你打开文档写不出第一句话关掉了- 你设了 6:30 的闹钟关掉继续睡- 你看了三篇如何养成写作习惯的文章然后继续刷手机问题不在于你不够想——在于从念头到行动之间缺了一座桥。SparkPlan 就是那座桥。它不催你加油不给你灌鸡汤。它做一件很朴素的事把你脑子里那些模糊的想变成一张写着具体日期、具体时间、具体动作的计划表。二、引入痛点痛点 本质问题 本工具解法想永远停在想 念头和动作之间缺结构化桥梁 8 要素细化法强制拆解目标太大无从下手 没有拆解能力 每周计划自动生成工作日/周末差异化冲动型决定浪费资源 情绪驱动 理性评估 冲动检验器绝对化/模糊/纯情绪检测分不清我想要vs应该要 内在/外在动机混淆 价值澄清器驱动力识别计划太死坚持不了 没有弹性空间 弹性任务 里程碑双轨放弃了就当没发生过 没有复盘机制 完成率追踪 模式识别三、核心逻辑讲解理论基础工程化映射1. 执行意图理论Gollwitzer, 1999- 公式「如果 [时间 X]那么我就做 [行为 Y]」- 把抽象目标变成具体触发-行为配对- 本工具细化阶段的 when where first_step 就是执行意图2. 设计思维Stanford d.school- 共情 → 定义 → 构思 → 原型 → 测试- 本工具捕捉共情→ 细化定义构思→ 周计划原型→ 执行复盘测试3. WOOP 模型Oettingen, 2014- Wish → Outcome → Obstacle → Plan- 本工具对应what → why → constraint → first_step4. 习惯叠加Fogg, 2019- 新习惯绑到已有习惯后面- 本工具 first_step 设计为今晚睡前等已有仪式锚点核心流程 捕捉念头30 秒零门槛↓ 自动分类7 大领域 能量方向趋近/回避↓⚠️ 冲动检验太模糊太大纯情绪↓ 细化8 要素提问5 分钟what / why / who / when / where / resource / constraint / first_step↓ 自动生成每周计划工作日1-2 件小任务5-30 分钟周六大块探索/产出周日回顾 下周规划里程碑周末验收标准弹性任务有余力时做↓✅ 每日执行 标记完成↓ 每周复盘 → 完成率/模式/洞察 → 调整下周关键设计决策决策 原因捕捉 30 秒 门槛越低越不会丢失念头先捕捉后分类 不打断思维流避免想太多8 要素而非自由写 结构化让模糊变具体可操作工作日小步 周末大块 符合精力节律避免日均过载弹性任务独立 有余力时加码没余力不焦虑冲动检验不阻断 警告而非阻止尊重用户自主权本地 JSON 无网络 隐私 零依赖 可审计四、代码模块化六层架构目录结构sparkplan/ ← 27 个 Python 文件 / ~1946 行├── main.py ← 入口层Application 容器 CLI 调度├── config.py ← 配置层分类体系/模板/阈值/菜单│├── models/ ← 数据模型层dataclass不可变自校验│ ├── enums.py ← 枚举类别/状态/细化字段│ ├── thought.py ← RawThought 实体原始念头│ ├── refined_idea.py ← RefinedIdea 实体8 要素想法│ └── weekly_plan.py ← WeeklyPlan 实体周计划│├── storage/ ← 持久化层Repository 模式│ └── json_store.py ← CRUD 原子写入 自动备份│├── services/ ← 业务层5 个 Service单一职责│ ├── capture_service.py ← 念头捕捉快速输入 自动分类│ ├── refine_service.py ← 8 要素细化引导│ ├── plan_service.py ← ★ 每周计划生成引擎│ ├── track_service.py ← 进度追踪 完成标记│ └── review_service.py ← 复盘报告 统计 导出│├── cognition/ ← 认知干预层│ ├── thought_classifier.py ← 7 领域分类 趋近/回避识别│ ├── impulse_validator.py ← 冲动检验绝对化/模糊/情绪化│ └── value_clarifier.py ← 价值澄清内在/外在驱动│├── utils/ ← 工具层纯函数零业务依赖│ ├── cli_helper.py ← 终端交互│ ├── dashboard.py ← 终端可视化│ ├── date_util.py ← 日期计算│ ├── statistics.py ← 均值/频次/覆盖率│ ├── text_processor.py ← 关键词提取│ └── validator.py ← 输入校验│├── README.md / USAGE.md / CHEATSHEET.md└── demo.py ← 一键跑通全流程各层职责边界层 能做什么 不能做什么main.py 组装系统、路由菜单 不写业务逻辑config.py 集中管理常量/分类/模板 不含逻辑models/ 数据结构、校验、序列化 不读写文件storage/ 读写 JSON、备份、查询 不知道数据含义services/ 核心业务逻辑 不直接操作文件cognition/ 认知干预、分类、检验 不修改数据utils/ 纯函数工具 零业务依赖核心模块代码展示1️⃣ 念头捕捉30 秒零门槛# services/capture_service.pydef capture_interactive(self) - Optional[RawThought]:交互式捕捉一条念头 —— 最少字段不打断流动print(\n 灵感来了就写下来不用想太多。)print( 先自由写后面再细化。\n)content prompt_text(你脑子里冒出了什么念头, min_len2, max_len300)if content is None: return None# 情绪强度1-5print(\n 这个念头让你有多「想做」1-5)print( 1 随便想想 3 有点想 5 非做不可)intensity prompt_int(情绪强度, 1, 5, default3) or 3# 触发场景可选context prompt_text(当时在做什么可选, requiredFalse) or # 自动分类基于关键词category self._auto_classify(content)return RawThought(thought_idfth_{datetime.now():%Y%m%d%H%M%S},contentcontent, emotional_intensityintensity,context_notecontext, categorycategory,)设计意图捕捉阶段只问 3 个问题总计 30 秒。不评判、不细化、不规划——先把火花接住。2️⃣ 8 要素细化核心方法论的工程化# services/refine_service.pydef refine_interactive(self, thought: RawThought) - Optional[RefinedIdea]:通过 8 要素提问将念头变为可执行想法print(f\n 原始念头: {thought.content}\n)print( 接下来 8 个问题帮你把念头变成具体想法。)print( 任何问题都可以回车跳过。\n)REFINE_PROMPTS {what: 你具体想改变/创造什么一句话,why: 为什么现在想做这件事,who: 和谁有关只有你自己还是需要别人,when: 希望什么时候开始具体到日期,where: 在哪里做,resource: 需要什么资源时间/钱/工具/人,constraint:最大的限制是什么,first_step:最小的第一步是什么今天就能做的,}answers {}for field_key, prompt_label in REFINE_PROMPTS.items():print(f ── {prompt_label} ──)val prompt_text(f {field_key}, requiredFalse, max_len300)answers[field_key] val or # 自动生成标题title self._generate_title(thought.content, answers)return RefinedIdea(refined_idfrf_{datetime.now():%Y%m%d%H%M%S},source_thought_idthought.thought_id,titletitle,**{k: answers.get(k, ) for k in REFINE_PROMPTS},)为什么是 8 个要素 每个要素对应执行意图的一个维度。缺了 what → 不知道做什么缺了 when → 永远明天缺了 first_step → 第一步就卡住。8 个全填了想法就从模糊冲动变成了可以执行的指令。3️⃣ 每周计划生成引擎核心算法# services/plan_service.pydef _build_daily_tasks(self, refined: RefinedIdea, mins: int) - dict:把想法拆成 7 天任务。策略差异化设计- 工作日周一到周五小步推进每天 1-2 件- 周六大块探索/产出2x 时间- 周日回顾 下周规划idea_type self._detect_type(refined) # learning/creation/habit/generaltemplates {creation: {工作日: [f创作 {mins} 分钟{refined.what[:30]},保存今天的作品不管好坏,],周六: [f大块创作时间 {mins*2} 分钟,尝试一种新方法/风格,],周日: [回顾本周所有产出,挑一个最满意的发出来,记录创作中的卡点,],},# ... learning / habit / general 各有模板}template templates.get(idea_type, templates[general])daily {}for i, day in enumerate(DAYS_OF_WEEK):if i 5: daily[day] template[工作日][:2]elif i 5: daily[day] template[周六]else: daily[day] template[周日]return daily设计意图不是把所有任务平均分到 7 天而是顺应精力节律——工作日小步、周末深潜、周日回顾。这比每天做一样的事更符合真实节奏。4️⃣ 冲动检验器认知护栏# cognition/impulse_validator.pydef check(self, thought: RawThought) - List[str]:检测念头是否过于模糊/过大/纯情绪warnings []content thought.content.lower()# 绝对化词汇 → 目标过大for word in [彻底, 完全, 永远, 必须, 一定要]:if word in content:warnings.append(f⚠️ 检测到「{word}」——绝对化目标容易让人还没开始就放弃。试试把目标缩小到一周能完成的范围。)break# 高强度 模糊 → 冲动型念头if thought.emotional_intensity 4 and len(content) 10:warnings.append(⚠️ 情绪很强但内容很模糊——这是「冲动型念头」的典型特征。建议等 24 小时后再决定是否投入资源。)return warnings设计意图不是否定念头而是给一道减速带。让你在投入资源前多看一眼。5️⃣ 价值澄清器动机诊断# cognition/value_clarifier.pydef clarify(self, text: str) - List[str]:区分「我想要」vs「别人觉得我应该想要」results []# 内在价值检测values self.detect_values(text) # 自主/成长/创造/连接/健康/意义if values:results.append(f 这个念头反映了你对 {, .join(values)} 的渴望——这是内在驱动力。)# 外在压力检测if self.detect_extrinsic_pressure(text):results.append(⚠️ 这个念头里有「别人觉得应该怎样」的声音。问一下自己如果没人知道我在做这件事我还想做吗)return results6️⃣ 入口层依赖注入# main.pyclass Application:def __init__(self):# 4 个 Storeself.thought_store JSONStore(DATA_DIR/thoughts.json, ...)self.refined_store JSONStore(DATA_DIR/refined.json, ...)self.plan_store JSONStore(DATA_DIR/plans.json, ...)self.log_store JSONStore(DATA_DIR/logs.json, ...)# 认知层3 个组件self.classifier ThoughtClassifier()self.validator ImpulseValidator()self.value_clarifier ValueClarifier()# 业务层5 个 Serviceself.capture_svc CaptureService(self.thought_store)self.refine_svc RefineService(self.refined_store, self.thought_store)self.plan_svc PlanService(self.plan_store, self.refined_store)self.track_svc TrackService(self.log_store, self.plan_store)self.review_svc ReviewService(...)项目统计指标 数值Python 文件 27 个总代码量 ~1946 行架构层数 6 层外部依赖 0仅标准库念头分类 7 大类计划模板 4 种创作/学习/习惯/通用数据持久化 本地 JSON 自动备份五、README 文件完整 README.md 已包含在项目中核心内容# SparkPlan把我也想…变成周一做这件事花 30 分钟。## 安装python 3.8仅标准库## 快速开始python demo.py # 看演示python main.py # 正式使用## 核心流程 捕捉30秒→ 分类检验 → 细化8要素→ 每周计划 → ✅ 追踪 → 复盘## 设计原则- 捕捉零门槛- 细化有结构- 计划有弹性- 不评判失败- 本地优先## 推荐节奏随时捕捉 → 每晚细化1个 → 每周一生成计划 → 每日执行 → 每周日复盘六、使用说明USAGE.md 节选三个核心概念概念 是什么 例子念头 最原始的想改变冲动 我想学吉他细化想法 8 要素拆解后的具体想法 what: 每天练 15 分钟基础和弦每周计划 7 天可执行任务表 周一-周五练 C/G 和弦周六学一首简单歌8 要素填写示例要素 填写what 每天早上 6:30-7:00 写 500 字小说why 一直想写故事早上有整块时间first_step 今晚睡前打开文档写标题和第一句常见误区❌ 念头太多每个都要细化 → 选情绪最强的 1-2 个❌ 计划完不成是不是没用 → 完不成是信号说明任务太大❌ 每天都要打卡好累 → 允许空白日工具不评判七、核心知识点卡片CHEATSHEET.md# 理论 工具对应1 执行意图Gollwitzer when where first_step2 设计思维Stanford 捕捉→定义→构思→原型→测试3 MVP 最小可行产品Ries first_step 弹性任务4 WOOP 模型Oettingen what→why→constraint→plan5 习惯叠加Fogg first_step 锚定已有仪式6 自我决定论Deci Ryan 价值澄清器内在/外在驱动7 CBT 思维记录Beck 冲动检验器8 艾森豪威尔矩阵 工作日小步 周末大块9 反思实践Schön 每周复盘 月度导出10 趋近vs回避动机Higgins 能量方向分类八、总结SparkPlan 不是一个 productivity tool是一个「念头落地器」。技术上它展示了- 如何用 6 层架构 组织一个中等复杂度的 Python 项目- 如何用 dataclass 枚举 校验 保证数据质量- 如何用 关键词匹配 规则引擎 实现认知干预- 如何用 模板化 类型检测 自动生成差异化周计划- 如何用 纯 ASCII 实现终端可视化零依赖心理学上它坚持几个原则不评判——模糊的念头也是有效的输入。不催促——从想到做需要一座桥不是一鞭子。不说教——你应该坚持是最大的毒药。不替代专业帮助——严重情绪问题请找专业人士。最终这个工具想传达一件事你脑子里那些想改变的火花不是噪音。它们是你的创造力在敲门。别让它停在想的阶段。用一座桥把它接到做的世界里。利用AI解决实际问题如果你觉得这个工具好用欢迎关注长安牧笛
编写程序记录平淡日常里想要改变现状的念头,将念头细化为可执行的每周创新计划。
SparkPlan — 平淡日常中的改变念头 × 每周创新计划生成器一、实际应用场景描述周三下午你盯着屏幕发呆脑子里突然冒出一个念头我想每天早上写 500 字。这个念头很轻轻到如果你不抓住它三分钟后就会被下一条消息覆盖。但你心里知道——它已经不是第一次来了。上个月来过一次上上个月也来过。每次都死在明天开始四个字上。更真实的情况是你不是不想写你是不知道怎么从想变成做到。- 你打开文档写不出第一句话关掉了- 你设了 6:30 的闹钟关掉继续睡- 你看了三篇如何养成写作习惯的文章然后继续刷手机问题不在于你不够想——在于从念头到行动之间缺了一座桥。SparkPlan 就是那座桥。它不催你加油不给你灌鸡汤。它做一件很朴素的事把你脑子里那些模糊的想变成一张写着具体日期、具体时间、具体动作的计划表。二、引入痛点痛点 本质问题 本工具解法想永远停在想 念头和动作之间缺结构化桥梁 8 要素细化法强制拆解目标太大无从下手 没有拆解能力 每周计划自动生成工作日/周末差异化冲动型决定浪费资源 情绪驱动 理性评估 冲动检验器绝对化/模糊/纯情绪检测分不清我想要vs应该要 内在/外在动机混淆 价值澄清器驱动力识别计划太死坚持不了 没有弹性空间 弹性任务 里程碑双轨放弃了就当没发生过 没有复盘机制 完成率追踪 模式识别三、核心逻辑讲解理论基础工程化映射1. 执行意图理论Gollwitzer, 1999- 公式「如果 [时间 X]那么我就做 [行为 Y]」- 把抽象目标变成具体触发-行为配对- 本工具细化阶段的 when where first_step 就是执行意图2. 设计思维Stanford d.school- 共情 → 定义 → 构思 → 原型 → 测试- 本工具捕捉共情→ 细化定义构思→ 周计划原型→ 执行复盘测试3. WOOP 模型Oettingen, 2014- Wish → Outcome → Obstacle → Plan- 本工具对应what → why → constraint → first_step4. 习惯叠加Fogg, 2019- 新习惯绑到已有习惯后面- 本工具 first_step 设计为今晚睡前等已有仪式锚点核心流程 捕捉念头30 秒零门槛↓ 自动分类7 大领域 能量方向趋近/回避↓⚠️ 冲动检验太模糊太大纯情绪↓ 细化8 要素提问5 分钟what / why / who / when / where / resource / constraint / first_step↓ 自动生成每周计划工作日1-2 件小任务5-30 分钟周六大块探索/产出周日回顾 下周规划里程碑周末验收标准弹性任务有余力时做↓✅ 每日执行 标记完成↓ 每周复盘 → 完成率/模式/洞察 → 调整下周关键设计决策决策 原因捕捉 30 秒 门槛越低越不会丢失念头先捕捉后分类 不打断思维流避免想太多8 要素而非自由写 结构化让模糊变具体可操作工作日小步 周末大块 符合精力节律避免日均过载弹性任务独立 有余力时加码没余力不焦虑冲动检验不阻断 警告而非阻止尊重用户自主权本地 JSON 无网络 隐私 零依赖 可审计四、代码模块化六层架构目录结构sparkplan/ ← 27 个 Python 文件 / ~1946 行├── main.py ← 入口层Application 容器 CLI 调度├── config.py ← 配置层分类体系/模板/阈值/菜单│├── models/ ← 数据模型层dataclass不可变自校验│ ├── enums.py ← 枚举类别/状态/细化字段│ ├── thought.py ← RawThought 实体原始念头│ ├── refined_idea.py ← RefinedIdea 实体8 要素想法│ └── weekly_plan.py ← WeeklyPlan 实体周计划│├── storage/ ← 持久化层Repository 模式│ └── json_store.py ← CRUD 原子写入 自动备份│├── services/ ← 业务层5 个 Service单一职责│ ├── capture_service.py ← 念头捕捉快速输入 自动分类│ ├── refine_service.py ← 8 要素细化引导│ ├── plan_service.py ← ★ 每周计划生成引擎│ ├── track_service.py ← 进度追踪 完成标记│ └── review_service.py ← 复盘报告 统计 导出│├── cognition/ ← 认知干预层│ ├── thought_classifier.py ← 7 领域分类 趋近/回避识别│ ├── impulse_validator.py ← 冲动检验绝对化/模糊/情绪化│ └── value_clarifier.py ← 价值澄清内在/外在驱动│├── utils/ ← 工具层纯函数零业务依赖│ ├── cli_helper.py ← 终端交互│ ├── dashboard.py ← 终端可视化│ ├── date_util.py ← 日期计算│ ├── statistics.py ← 均值/频次/覆盖率│ ├── text_processor.py ← 关键词提取│ └── validator.py ← 输入校验│├── README.md / USAGE.md / CHEATSHEET.md└── demo.py ← 一键跑通全流程各层职责边界层 能做什么 不能做什么main.py 组装系统、路由菜单 不写业务逻辑config.py 集中管理常量/分类/模板 不含逻辑models/ 数据结构、校验、序列化 不读写文件storage/ 读写 JSON、备份、查询 不知道数据含义services/ 核心业务逻辑 不直接操作文件cognition/ 认知干预、分类、检验 不修改数据utils/ 纯函数工具 零业务依赖核心模块代码展示1️⃣ 念头捕捉30 秒零门槛# services/capture_service.pydef capture_interactive(self) - Optional[RawThought]:交互式捕捉一条念头 —— 最少字段不打断流动print(\n 灵感来了就写下来不用想太多。)print( 先自由写后面再细化。\n)content prompt_text(你脑子里冒出了什么念头, min_len2, max_len300)if content is None: return None# 情绪强度1-5print(\n 这个念头让你有多「想做」1-5)print( 1 随便想想 3 有点想 5 非做不可)intensity prompt_int(情绪强度, 1, 5, default3) or 3# 触发场景可选context prompt_text(当时在做什么可选, requiredFalse) or # 自动分类基于关键词category self._auto_classify(content)return RawThought(thought_idfth_{datetime.now():%Y%m%d%H%M%S},contentcontent, emotional_intensityintensity,context_notecontext, categorycategory,)设计意图捕捉阶段只问 3 个问题总计 30 秒。不评判、不细化、不规划——先把火花接住。2️⃣ 8 要素细化核心方法论的工程化# services/refine_service.pydef refine_interactive(self, thought: RawThought) - Optional[RefinedIdea]:通过 8 要素提问将念头变为可执行想法print(f\n 原始念头: {thought.content}\n)print( 接下来 8 个问题帮你把念头变成具体想法。)print( 任何问题都可以回车跳过。\n)REFINE_PROMPTS {what: 你具体想改变/创造什么一句话,why: 为什么现在想做这件事,who: 和谁有关只有你自己还是需要别人,when: 希望什么时候开始具体到日期,where: 在哪里做,resource: 需要什么资源时间/钱/工具/人,constraint:最大的限制是什么,first_step:最小的第一步是什么今天就能做的,}answers {}for field_key, prompt_label in REFINE_PROMPTS.items():print(f ── {prompt_label} ──)val prompt_text(f {field_key}, requiredFalse, max_len300)answers[field_key] val or # 自动生成标题title self._generate_title(thought.content, answers)return RefinedIdea(refined_idfrf_{datetime.now():%Y%m%d%H%M%S},source_thought_idthought.thought_id,titletitle,**{k: answers.get(k, ) for k in REFINE_PROMPTS},)为什么是 8 个要素 每个要素对应执行意图的一个维度。缺了 what → 不知道做什么缺了 when → 永远明天缺了 first_step → 第一步就卡住。8 个全填了想法就从模糊冲动变成了可以执行的指令。3️⃣ 每周计划生成引擎核心算法# services/plan_service.pydef _build_daily_tasks(self, refined: RefinedIdea, mins: int) - dict:把想法拆成 7 天任务。策略差异化设计- 工作日周一到周五小步推进每天 1-2 件- 周六大块探索/产出2x 时间- 周日回顾 下周规划idea_type self._detect_type(refined) # learning/creation/habit/generaltemplates {creation: {工作日: [f创作 {mins} 分钟{refined.what[:30]},保存今天的作品不管好坏,],周六: [f大块创作时间 {mins*2} 分钟,尝试一种新方法/风格,],周日: [回顾本周所有产出,挑一个最满意的发出来,记录创作中的卡点,],},# ... learning / habit / general 各有模板}template templates.get(idea_type, templates[general])daily {}for i, day in enumerate(DAYS_OF_WEEK):if i 5: daily[day] template[工作日][:2]elif i 5: daily[day] template[周六]else: daily[day] template[周日]return daily设计意图不是把所有任务平均分到 7 天而是顺应精力节律——工作日小步、周末深潜、周日回顾。这比每天做一样的事更符合真实节奏。4️⃣ 冲动检验器认知护栏# cognition/impulse_validator.pydef check(self, thought: RawThought) - List[str]:检测念头是否过于模糊/过大/纯情绪warnings []content thought.content.lower()# 绝对化词汇 → 目标过大for word in [彻底, 完全, 永远, 必须, 一定要]:if word in content:warnings.append(f⚠️ 检测到「{word}」——绝对化目标容易让人还没开始就放弃。试试把目标缩小到一周能完成的范围。)break# 高强度 模糊 → 冲动型念头if thought.emotional_intensity 4 and len(content) 10:warnings.append(⚠️ 情绪很强但内容很模糊——这是「冲动型念头」的典型特征。建议等 24 小时后再决定是否投入资源。)return warnings设计意图不是否定念头而是给一道减速带。让你在投入资源前多看一眼。5️⃣ 价值澄清器动机诊断# cognition/value_clarifier.pydef clarify(self, text: str) - List[str]:区分「我想要」vs「别人觉得我应该想要」results []# 内在价值检测values self.detect_values(text) # 自主/成长/创造/连接/健康/意义if values:results.append(f 这个念头反映了你对 {, .join(values)} 的渴望——这是内在驱动力。)# 外在压力检测if self.detect_extrinsic_pressure(text):results.append(⚠️ 这个念头里有「别人觉得应该怎样」的声音。问一下自己如果没人知道我在做这件事我还想做吗)return results6️⃣ 入口层依赖注入# main.pyclass Application:def __init__(self):# 4 个 Storeself.thought_store JSONStore(DATA_DIR/thoughts.json, ...)self.refined_store JSONStore(DATA_DIR/refined.json, ...)self.plan_store JSONStore(DATA_DIR/plans.json, ...)self.log_store JSONStore(DATA_DIR/logs.json, ...)# 认知层3 个组件self.classifier ThoughtClassifier()self.validator ImpulseValidator()self.value_clarifier ValueClarifier()# 业务层5 个 Serviceself.capture_svc CaptureService(self.thought_store)self.refine_svc RefineService(self.refined_store, self.thought_store)self.plan_svc PlanService(self.plan_store, self.refined_store)self.track_svc TrackService(self.log_store, self.plan_store)self.review_svc ReviewService(...)项目统计指标 数值Python 文件 27 个总代码量 ~1946 行架构层数 6 层外部依赖 0仅标准库念头分类 7 大类计划模板 4 种创作/学习/习惯/通用数据持久化 本地 JSON 自动备份五、README 文件完整 README.md 已包含在项目中核心内容# SparkPlan把我也想…变成周一做这件事花 30 分钟。## 安装python 3.8仅标准库## 快速开始python demo.py # 看演示python main.py # 正式使用## 核心流程 捕捉30秒→ 分类检验 → 细化8要素→ 每周计划 → ✅ 追踪 → 复盘## 设计原则- 捕捉零门槛- 细化有结构- 计划有弹性- 不评判失败- 本地优先## 推荐节奏随时捕捉 → 每晚细化1个 → 每周一生成计划 → 每日执行 → 每周日复盘六、使用说明USAGE.md 节选三个核心概念概念 是什么 例子念头 最原始的想改变冲动 我想学吉他细化想法 8 要素拆解后的具体想法 what: 每天练 15 分钟基础和弦每周计划 7 天可执行任务表 周一-周五练 C/G 和弦周六学一首简单歌8 要素填写示例要素 填写what 每天早上 6:30-7:00 写 500 字小说why 一直想写故事早上有整块时间first_step 今晚睡前打开文档写标题和第一句常见误区❌ 念头太多每个都要细化 → 选情绪最强的 1-2 个❌ 计划完不成是不是没用 → 完不成是信号说明任务太大❌ 每天都要打卡好累 → 允许空白日工具不评判七、核心知识点卡片CHEATSHEET.md# 理论 工具对应1 执行意图Gollwitzer when where first_step2 设计思维Stanford 捕捉→定义→构思→原型→测试3 MVP 最小可行产品Ries first_step 弹性任务4 WOOP 模型Oettingen what→why→constraint→plan5 习惯叠加Fogg first_step 锚定已有仪式6 自我决定论Deci Ryan 价值澄清器内在/外在驱动7 CBT 思维记录Beck 冲动检验器8 艾森豪威尔矩阵 工作日小步 周末大块9 反思实践Schön 每周复盘 月度导出10 趋近vs回避动机Higgins 能量方向分类八、总结SparkPlan 不是一个 productivity tool是一个「念头落地器」。技术上它展示了- 如何用 6 层架构 组织一个中等复杂度的 Python 项目- 如何用 dataclass 枚举 校验 保证数据质量- 如何用 关键词匹配 规则引擎 实现认知干预- 如何用 模板化 类型检测 自动生成差异化周计划- 如何用 纯 ASCII 实现终端可视化零依赖心理学上它坚持几个原则不评判——模糊的念头也是有效的输入。不催促——从想到做需要一座桥不是一鞭子。不说教——你应该坚持是最大的毒药。不替代专业帮助——严重情绪问题请找专业人士。最终这个工具想传达一件事你脑子里那些想改变的火花不是噪音。它们是你的创造力在敲门。别让它停在想的阶段。用一座桥把它接到做的世界里。利用AI解决实际问题如果你觉得这个工具好用欢迎关注长安牧笛