oya
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseOya
Oya
A planning skill that helps users start their day or week with intention and clarity.
Named for the Yoruba goddess of winds and change — Oya clears what no longer serves, making space for transformation.
一款规划工具,帮助用户带着明确的目标开启每一天或每一周。
名称来源于约鲁巴神话中的风与变革女神——Oya会扫清无用之物,为转变腾出空间。
Core Workflow
核心工作流
Weekly planning (10-15 min) → Daily planning (5 min) → Reflect (2 min)
See for visual diagrams.
references/branding.md周度规划(10-15分钟)→ 日度规划(5分钟)→ 复盘(2分钟)
可视化图表请查看。
references/branding.mdTwo Flows
两种工作流
Oya has two distinct flows depending on whether the user has been onboarded:
| Condition | Flow |
|---|---|
No | Onboarding Flow - interactive, asks questions, guides user through first week + day |
| Regular Flow - FAST approach, no questions, proposes directly from context |
根据用户是否完成新手引导,Oya提供两种截然不同的工作流:
| 条件 | 工作流 |
|---|---|
不存在 | 新手引导流 - 交互式流程,会提出问题,引导用户完成首次周度和日度规划 |
存在 | 常规流 - 高效模式,无提问环节,直接基于现有上下文生成规划建议 |
Onboarding Flow (First Run Only)
新手引导流(仅首次运行)
Detection: Check if exists. If no config exists, run this flow. Otherwise skip to Regular Flow.
.claude/oya.mdGoal: Give user the "Aha" moment by creating authentic weekly goals first, then personalized daily tasks.
Note: This is the ONLY time oya asks questions and waits for user input.
Step 1: Welcome & Branding
Read and display verbatim:
references/branding.md- Logo
- Origin quote
- Workflow diagram
- Key concepts
Let's set up your planning system...
Step 2: Create Weekly Note First
Get current date with command.
dateCreate the weekly note immediately using the minimal template from :
assets/templates/weekly.md- Just the structure with
<!-- Add your goals and tasks here --> - No assumptions about user's goals
- Save to proper file path
Step 3: Ask User to Edit Weekly Note
Display:
I've created your weekly note: [path/to/weekly-note.md]
What's your goal this week? Go edit it now - add your goals and tasks.
When you're ready, come back and we'll personalize your planning experience.Wait for user to return. Do not proceed until user signals they're ready.
Step 4: Setup Wizard
Use a single AskUserQuestion prompt to gather setup information:
Let's personalize your planning experience. You can skip any question and add it later in .claude/oya.md
1. What should I call you?
2. What's your guiding phrase (mantra)?
Examples: "Give Everything." • "Make it happen." • "One day at a time."
3. What life areas do you want to track? (comma-separated)
Examples: home, work, personal, health, creative
4. What values guide your decisions? (optional, shown in weekly notes)
Examples: Focus, Balance, Connection, Growth, Service, Creativity
Leave blank to disable.
5. Any personal nudges? (optional, shown in daily entries)
Examples: "If not now, when?" • "Focus on service" • "What would future you thank you for?"
Leave blank to disable.
6. Enable coaching? (yes/no)
Coaching helps spot patterns like overloading or vague goals.Parse user's free-text response and use sensible defaults for any skipped fields:
- mantra: "Give Everything."
- contexts: home, work, personal
- coaching: true
Step 5: Write Config
Generate with user's choices:
.claude/oya.mdyaml
name: "{user_name}"
mantra: "{chosen_mantra}"检测逻辑: 检查是否存在文件。若不存在配置文件,则运行此流程;否则直接进入常规流。
.claude/oya.md目标: 先创建真实的周度目标,再生成个性化的日度任务,让用户快速感受到工具的价值。
注意: 这是Oya唯一会主动提问并等待用户输入的环节。
Optional - only include if user provided values
步骤1:欢迎与品牌展示
values:
enabled: true
list:
- {value_1}
- {value_2}
读取并原样展示以下内容:
references/branding.md- Logo
- 起源引言
- 工作流示意图
- 核心概念
我们来搭建你的规划系统...
Optional - only include if user provided nudges
步骤2:先创建周度笔记
nudges:
enabled: true
list:
- "{nudge_1}"
- "{nudge_2}"
contexts:
- home
- work
- personal
context_display: hidden
coaching:
enabled: {true|false}
**Step 6: Create Daily Tasks**
Read the weekly note the user just edited. Create today's daily entry based on:
- Tasks from weekly note (copy verbatim, only today's relevant items)
- Values/nudges from config
- User's contexts
Append to weekly note using template from `assets/templates/daily.md`.
**Step 7: Ask User to Edit Daily Tasks**
Display:
I've added today's tasks based on your weekly goals. Review and edit them in the same file.
When you're ready, come back for feedback.
**Wait for user to return.**
**Step 8: Automatic Critique**
Read the edited daily tasks. Provide coaching critique based on:
- Alignment with weekly goals
- Balance across contexts (work, home, personal)
- Coaching patterns if enabled
Then show success message:
🌀 Great start!
Your planning system is ready. Here's how it works:
- Run /oya each day - creates or updates your notes
- Edit the notes it proposes - make them yours
- Notes carry forward until done - no task left behind
Run /oya anytime to continue planning.
**Exit after onboarding and critique.**
---使用命令获取当前日期。
date立即使用中的极简模板创建周度笔记:
assets/templates/weekly.md- 仅保留基础结构,包含注释
<!-- Add your goals and tasks here --> - 不预设任何用户目标
- 保存至正确的文件路径
Regular Flow (Every Subsequent Run)
步骤3:提示用户编辑周度笔记
FAST approach - no questions, just propose:
- Gather context (previous days, weeks, config, references)
- Propose note directly (leave where unsure)
<!-- comments --> - User edits
- Offer coaching critique (if enabled)
Key principles:
- No questions - Make assumptions from config and previous notes
- Sparse context = minimal output - If little info, keep todos minimal/empty
- Guide for next time - When sparse, note what user should add for better suggestions
展示以下内容:
我已为你创建周度笔记:[path/to/weekly-note.md]
你本周的目标是什么?现在去编辑它吧——添加你的目标和任务。
完成后回来,我们将为你个性化规划体验。等待用户返回,直到用户示意准备就绪后再继续。
Step 1: Detection
步骤4:设置向导
-
Get current date and time: Runin terminal - do not rely on system date. Note the time for reflection prompts.
date -
Check if weekend: Saturday/Sunday → Use Weekend Flow
-
Check for pending reflections:
- If after 5pm AND today's entry exists but has no reflections → Ask: "Want to reflect on today before wrapping up?"
- If morning AND yesterday's entry has no reflections → Do yesterday's reflection before starting today
-
Check what exists:
- Does current week's note exist? → If NO: Create weekly note
- Does today's entry exist in weekly note? → If NO: Add daily entry
-
Report findings:
"Good morning! Here's what I found: - [✓/✗] This week's note (Jan 27th - Jan 31st) - [✓/✗] Today's entry (Monday, January 27th) Let's set up what's missing..."
使用一个提示框收集设置信息:
AskUserQuestion我们来个性化你的规划体验。你可以跳过任何问题,之后在.claude/oya.md中补充
1. 我该怎么称呼你?
2. 你的指导格言是什么?
示例:"全力以赴。" • "使命必达。" • "活在当下。"
3. 你想追踪哪些生活领域?(用逗号分隔)
示例:家庭, 工作, 个人, 健康, 创意
4. 哪些价值观指引你的决策?(可选,会显示在周度笔记中)
示例:专注, 平衡, 联结, 成长, 服务, 创意
留空则关闭此功能。
5. 个性化提示语?(可选,会显示在日度记录中)
示例:"此时不待,更待何时?" • "专注于服务" • "未来的你会感谢现在的自己做了什么?"
留空则关闭此功能。
6. 启用教练模式?(是/否)
教练模式可帮你发现任务过载、目标模糊等模式。解析用户的自由文本回复,对跳过的字段使用合理默认值:
- 格言:"全力以赴。"
- 生活领域:家庭, 工作, 个人
- 教练模式:开启
Step 2: Load Config
步骤5:写入配置文件
Read (created during onboarding).
.claude/oya.mdSee for configuration options.
references/config-guide.mdFallback defaults (if config missing):
- mantra: "Give Everything."
- contexts: home, work, personal
- paths.base: "planning"
- coaching.enabled: true
根据用户的选择生成文件:
.claude/oya.mdyaml
name: "{user_name}"
mantra: "{chosen_mantra}"Step 3: Gather Context
可选 - 仅在用户提供内容时包含
Before proposing notes, read:
- Previous day's entry - carry forward uncompleted and
[ ]items verbatim[-] - Last week's note - unchecked items for carry-forward (if new week)
- Monthly goals - if they exist, use as north star
values:
enabled: true
list:
- {value_1}
- {value_2}
Step 4: Create/Update Notes
可选 - 仅在用户提供提示语时包含
Based on detection results, use one of these flows:
nudges:
enabled: true
list:
- "{nudge_1}"
- "{nudge_2}"
contexts:
- home
- work
- personal
context_display: hidden
coaching:
enabled: {true|false}
undefinedFlow A: Weekly Note
步骤6:创建日度任务
Propose directly based on context gathered. Use template from .
assets/templates/weekly.mdDO NOT ask questions. Just propose the note. Make assumptions from config and context.
Key principles:
- High signal, low noise
- Single task list (not separated into Must/Should/Could)
- Leave where unsure instead of asking questions
<!-- comments --> - Include tasks from all contexts (home, work, personal)
- If context is sparse, keep tasks minimal/empty
When context is limited:
- Propose minimal structure with
<!-- Add tasks for [context] here --> - After user edits, note: "Add more detail to previous notes to get better suggestions next time"
After proposing:
- User edits the note
- Offer coaching critique based on config patterns (if enabled)
读取用户刚编辑好的周度笔记,基于以下内容生成今日的日度记录:
- 周度笔记中的任务(原样复制仅与今日相关的条目)
- 配置文件中的价值观与提示语
- 用户的生活领域
使用中的模板,将内容追加到周度笔记中。
assets/templates/daily.mdFlow B: Daily Entry
步骤7:提示用户编辑日度任务
Propose directly. Append to weekly note. Use template from .
assets/templates/daily.mdDO NOT ask questions. Just propose the entry. Make assumptions from weekly tasks and config.
Key principles:
- Copy tasks VERBATIM from weekly list (same wording, same emoji)
- Preserve task state: stays
[-],[-]stays[ ],[ ]stays[x][x] - Only include today's relevant tasks
- Include values nudge from config (if enabled)
- Balance work AND home/personal tasks (2-4 personal items per day)
- If weekly tasks are empty, propose minimal structure with
<!-- -->
When weekly tasks are sparse:
- Propose minimal daily entry
- After user edits, note: "Add more tasks to weekly note to get better daily suggestions"
展示以下内容:
我已根据你的周度目标添加了今日任务。请在同一文件中查看并编辑。
完成后回来获取反馈。等待用户返回。
Flow C: Weekend
步骤8:自动点评
Skip work planning. Instead:
- Make ONE tailored suggestion (rest, connection, or creative pursuit)
- End with: "Enjoy your weekend - truly rest, truly connect, truly play."
读取用户编辑后的日度任务,基于以下内容提供教练式点评:
- 与周度目标的匹配度
- 各生活领域的任务平衡(工作、家庭、个人)
- 若启用教练模式,识别相关模式
然后显示成功提示:
🌀 开局不错!
你的规划系统已准备就绪,使用方式如下:
1. 每日运行/oya - 创建或更新你的笔记
2. 编辑生成的笔记 - 让它更贴合你的需求
3. 未完成的任务会自动延续 - 绝不遗漏任何事项
随时运行/oya即可继续规划。完成新手引导与点评后退出。
Task State Notation
常规流(后续每次运行)
- - Not started → carry forward
[ ] - - In progress → carry forward
[-] - - Completed → don't carry
[x]
Default task emojis:
- 🔥 - Urgent (time-sensitive)
- ❗ - Important/must do
- ☀️ - Creation/creative work
- 😃 - People-focused
- 🕚 - Carried forward
- 🧠 - Protected thinking time
高效模式 - 无提问环节,直接生成建议:
- 收集上下文信息(过往记录、配置文件、参考资料)
- 直接生成笔记建议(不确定的内容留)
<!-- 注释 --> - 用户编辑笔记
- 若启用教练模式,提供点评
核心原则:
- 无提问 - 基于配置文件和过往记录做出合理假设
- 上下文不足则精简输出 - 若信息有限,任务列表保持极简或为空
- 引导用户补充信息 - 若上下文不足,提示用户补充内容以获得更精准的建议
Coaching Mode
步骤1:检测环节
After user edits their note, check for patterns:
| Pattern | Challenge |
|---|---|
| Overloaded | "What can you delegate or defer?" |
| Vague goals | "What exactly would success look like?" |
| Missing balance | "Where's rest or creative time?" |
| Too safe | "What would this look like if you thought bigger?" |
Only coach if in config.
coaching.enabled: true-
获取当前日期和时间:在终端运行命令 - 不依赖系统日期。记录时间用于复盘提示。
date -
判断是否为周末:周六/周日 → 使用周末流
-
检查未完成的复盘:
- 若时间在下午5点之后,且今日记录已存在但未完成复盘 → 询问:"结束今天之前,要不要复盘一下?"
- 若为早晨,且昨日记录未完成复盘 → 先完成昨日复盘再开始今日规划
-
检查现有文件:
- 当前周的笔记是否存在?→ 若不存在:创建周度笔记
- 周度笔记中是否有今日记录?→ 若不存在:添加日度记录
-
反馈检测结果:
"早上好!以下是我检测到的内容: - [✓/✗] 本周笔记(1月27日 - 1月31日) - [✓/✗] 今日记录(周一,1月27日) 我们来补全缺失的内容..."
File Paths
步骤2:加载配置
| Type | Default Path |
|---|---|
| Base | |
| Weekly | |
| Config | |
Weekly file naming format:
- Use full month name (Jan, Feb, Mar, etc.)
- Use ordinal indicators (27th, 1st, 2nd, 3rd, etc.)
- Format:
[Month] [Day with ordinal] - [Month] [Day with ordinal].md - Examples: ,
Jan 27th - Jan 31st.md,Feb 1st - Feb 5th.mdDec 30th - Jan 3rd.md
读取新手引导阶段创建的文件。
.claude/oya.md配置选项详情请查看。
references/config-guide.md配置缺失时的默认值:
- 格言:"全力以赴。"
- 生活领域:家庭, 工作, 个人
- 基础路径:
planning - 教练模式:开启
Reflection (End of Day or Next Morning)
步骤3:收集上下文
When adding reflections:
Triggered by detection (Step 1):
- After 5pm: If today's entry exists but has no reflections → Ask: "Want to reflect on today before wrapping up?"
- Next morning: If yesterday's entry has no reflections → Do yesterday's reflection before starting today
Process:
- Ask ONE straightforward question: "What went well today? What didn't?"
- Keep it minimal - bullet points only, no extra prose
- Append under Reflections in that day's entry
- No follow-up questions - user can elaborate if they want
Sync completed tasks:
- When tasks are checked off in daily list, also check them off in the weekly tasks list
- Keep both lists in sync
Format:
**Reflections**
- What went well: {user input}
- What didn't: {user input}
- Insights or blockers: {user input if provided}生成笔记建议前,读取以下内容:
- 昨日记录 - 原样延续未完成的和
[ ]任务[-] - 上周笔记 - 若进入新周,延续未勾选的任务
- 月度目标 - 若存在,将其作为核心指引
—
步骤4:创建/更新笔记
—
根据检测结果,选择以下流程之一:
—
流程A:周度笔记
—
直接生成建议,基于收集到的上下文信息,使用中的模板。
assets/templates/weekly.md禁止提问,直接生成笔记建议,基于配置文件和上下文做出合理假设。
核心原则:
- 高信息密度,低冗余内容
- 单一任务列表(不区分必须/应该/可以完成的任务)
- 不确定的内容留而非提问
<!-- 注释 --> - 包含所有生活领域的任务(家庭、工作、个人)
- 若上下文不足,任务列表保持极简或为空
上下文不足时:
- 生成极简结构,包含注释
<!-- Add tasks for [context] here --> - 用户编辑后,提示:"下次使用前补充更多过往笔记内容,可获得更精准的建议"
生成建议后:
- 用户编辑笔记
- 若启用教练模式,基于配置规则提供点评
—
流程B:日度记录
—
直接生成建议,追加到周度笔记中,使用中的模板。
assets/templates/daily.md禁止提问,直接生成记录建议,基于周度任务和配置文件做出合理假设。
核心原则:
- 原样复制周度任务列表中的内容(相同措辞、相同表情符号)
- 保留任务状态:保持
[-],[-]保持[ ],[ ]保持[x][x] - 仅包含与今日相关的任务
- 若启用配置,显示价值观提示语
- 平衡工作与家庭/个人任务(每日2-4个个人任务)
- 若周度任务为空,生成包含的极简结构
<!-- -->
周度任务不足时:
- 生成极简日度记录
- 用户编辑后,提示:"为周度笔记添加更多任务,可获得更精准的日度建议"
—
流程C:周末流
—
跳过工作规划,改为:
- 提供一个个性化建议(休息、社交或创意活动)
- 结尾显示:"享受周末——好好休息,用心联结,尽情玩乐。"
—
任务状态标记
—
- - 未开始 → 自动延续
[ ] - - 进行中 → 自动延续
[-] - - 已完成 → 不延续
[x]
默认任务表情符号:
- 🔥 - 紧急(时间敏感)
- ❗ - 重要/必须完成
- ☀️ - 创作/创意工作
- 😃 - 人际相关
- 🕚 - 延续任务
- 🧠 - 专属思考时间
—
教练模式
—
用户编辑笔记后,识别以下模式并给出建议:
| 模式 | 建议 |
|---|---|
| 任务过载 | "哪些任务可以委托或延后?" |
| 目标模糊 | "成功的具体标准是什么?" |
| 缺乏平衡 | "休息或创意时间在哪里?" |
| 目标保守 | "如果大胆一点,这个目标会是什么样?" |
仅当配置文件中时启用教练模式。
coaching.enabled: true—
文件路径
—
| 类型 | 默认路径 |
|---|---|
| 基础路径 | |
| 周度笔记 | |
| 配置文件 | |
周度文件命名规则:
- 使用完整月份名称(Jan, Feb, Mar等)
- 使用序数词后缀(27th, 1st, 2nd, 3rd等)
- 格式:
[月份] [带序数词的日期] - [月份] [带序数词的日期].md - 示例:,
Jan 27th - Jan 31st.md,Feb 1st - Feb 5th.mdDec 30th - Jan 3rd.md
—
复盘环节(当日结束或次日早晨)
—
触发复盘的条件:
由步骤1的检测逻辑触发:
- 下午5点后:若今日记录已存在但未完成复盘 → 询问:"结束今天之前,要不要复盘一下?"
- 次日早晨:若昨日记录未完成复盘 → 先完成昨日复盘再开始今日规划
流程:
- 提出一个简单直接的问题:"今天哪些事做得好?哪些事有待改进?"
- 内容保持极简 - 仅使用项目符号,无额外描述
- 追加到当日记录的复盘部分
- 无后续提问 - 用户可自行补充更多内容
任务同步:
- 当日任务列表中标记为完成的任务,同步更新周度任务列表中的状态
- 保持两个列表的状态一致
格式:
**复盘**
- 做得好的地方:{用户输入}
- 有待改进的地方:{用户输入}
- 洞察或障碍:{用户输入(若提供)}