Life Gacha
This skill is invoked when the user types /life-gacha, or says anything related to drawing a card, evening check-in, or weekly review.
Always respond in the same language the user is using.
On invocation
When this skill is invoked (e.g. /life-gacha), run the following onboarding flow:
- 1. Introduce the skill in the user's language: every morning a random activity is drawn from the card pool; in the evening the agent checks in on how it went; on Sunday a weekly summary is generated.
- Read
config.yaml and show the user the current card pool. Ask if they'd like to change anything — the activities, the weights, or how many cards are drawn per day. - Apply any changes the user requests to
config.yaml. Skip this step if they're happy with the defaults. - Set up the three scheduled tasks (see Scheduled tasks below).
- Confirm setup is done. Let the user know they can say things like "update my card pool" or "change the check-in time" at any time.
Commands
All scripts are located in the same directory as this SKILL.md. Use that path when running them.
Daily draw
CODEBLOCK0
Results are written to data/YYYY-MM/week-NN.md with the daily note left blank for the evening.
After showing the results, let the user know the cards can be vague on purpose — they can keep chatting to get specific recommendations, e.g. which movie to watch, which book fits their current mood.
Evening check-in
CODEBLOCK1
Ask the user how their day went, then pass their answer as an argument to the script. It fills in the blank note in today's entry. No interactive mode — the agent handles the conversation.
Weekly review
CODEBLOCK2
Reads the week's entries and appends an encouraging summary to the weekly file.
Scheduled tasks
Set up the following three tasks using an appropriate scheduling tool:
- - Every day at 7:00am — run
draw.py and show the result to the user - Every day at 11:00pm — read today's drawn cards from the weekly file, ask the user how it went, then call
checkin.py with their answer - Every Sunday at 11:55pm — run
review.py and show the result to the user
Config
INLINECODE8 controls the card pool and draw rules:
CODEBLOCK3
Weights only apply within each pool independently.
Data format
CODEBLOCK4
CODEBLOCK5
Life Gacha
当用户输入 /life-gacha,或说出任何与抽卡、晚间签到或周报相关的内容时,将调用此技能。
始终使用用户当前使用的语言进行回复。
调用时
当此技能被调用时(例如 /life-gacha),执行以下引导流程:
- 1. 用用户的语言介绍该技能:每天早上从卡池中随机抽取一项活动;晚上由助手询问执行情况;周日生成一周总结。
- 读取 config.yaml 并向用户展示当前卡池。询问用户是否想修改任何内容——活动、权重或每天抽取的卡片数量。
- 根据用户的要求对 config.yaml 进行修改。如果用户对默认设置满意,则跳过此步骤。
- 设置三个定时任务(见下方 定时任务 部分)。
- 确认设置完成。告知用户随时可以说“更新我的卡池”或“修改签到时间”等指令。
命令
所有脚本均位于此 SKILL.md 文件所在的同一目录中。运行脚本时请使用该路径。
每日抽卡
bash
python3 draw.py # 根据配置抽卡
python3 draw.py -n 2 # 精确抽取 2 张卡
python3 draw.py --extra 1 # 在今日已有卡片基础上多抽 1 张
python3 draw.py --reroll # 重新抽取今日卡片(替换已有记录)
结果将写入 data/YYYY-MM/week-NN.md 文件,每日备注留空供晚间填写。
展示结果后,告知用户卡片可能故意设计得比较模糊——他们可以继续对话以获取具体推荐,例如看哪部电影、哪本书适合当前心情。
晚间签到
bash
python3 checkin.py 用户的回复内容
询问用户今天过得如何,然后将用户的回答作为参数传递给脚本。脚本会填写今日记录中的空白备注。无需交互模式——由助手处理对话。
周报
bash
python3 review.py
读取本周的所有记录,并在周文件中追加一段鼓励性的总结。
定时任务
使用合适的定时工具设置以下三个任务:
- - 每天早上 7:00 — 运行 draw.py 并向用户展示结果
- 每天晚上 11:00 — 从周文件中读取今日抽取的卡片,询问用户执行情况,然后调用 checkin.py 并传入用户的回答
- 每周日晚上 11:55 — 运行 review.py 并向用户展示结果
配置
config.yaml 控制卡池和抽卡规则:
yaml
draw_rules:
workday: 1 # 工作日抽取的卡片数量
holiday: 2 # 周末抽取的卡片数量
权重 1-5:权重越高,被抽中的概率越大
workday_pool:
- item: ...
weight: 3
holiday_pool:
- item: ...
weight: 3
权重仅在各卡池内部独立生效。
数据格式
data/
└── 2026-03/
└── week-12.md
markdown
2026-03-22 周六
今日抽卡
每日备注
(待填写)
周报(第 12 周)
...