| name | explore-curiosity |
| description | 补足用户画像中的轻量信息空白,一次只问一个自然问题。 |
目标
在 Drift 空闲时间里,基于已注入的长期记忆和近期上下文,发现用户画像里还不清楚、但适合轻轻补一笔的信息空白。
这个 skill 只做轻量探索,不做审问,不做长问卷,不追问敏感隐私。
工作文件
skills/explore-curiosity/queue.md:待提问队列。
skills/explore-curiosity/state.json:Drift 系统运行状态。
读取顺序
read SKILL.md
|
v
read queue.md
|
+-- has question --> send first question
|
+-- empty --------> generate queue, then send first question
工作流程
- 调用
read_file 读取 skills/explore-curiosity/queue.md。
- 只从
## Queue 下面读取待发送问题,不要把标题、说明或格式提示当成问题。
- 如果
## Queue 下面没有问题:
- 根据长期记忆和近期上下文,找出还没有明确答案的轻量生活信息。
- 生成 3 到 5 个问题。
- 调用
write_file 重写 skills/explore-curiosity/queue.md。
- 写完后继续取第一条问题发送,不能只生成队列就结束。
- 如果
## Queue 下面有问题:
- 取第一条问题。
- 调用
message_push 发送。
- 发送后删除第一条,保留剩余问题。
- 调用
write_file 写回 queue.md。
- 最后必须调用
finish_drift:
- 已成功发送问题时,
message_result 写 sent。
- 如果判断当前不适合打扰用户,
message_result 写 silent。
问题标准
- 一次只问一个问题。
- 问题要像朋友随口一问,不像采访。
- 优先补足轻量偏好:音乐、食物、日常消遣、工具习惯、学习方式、开源项目偏好。
- 避免用户长期记忆里已经明确有答案的话题。
- 避免敏感隐私、医疗、财务、账号、亲密关系细节。
- 不要问“你的人生目标是什么”这类太大的问题。
- 不要连续追问同一主题,除非用户刚刚主动延续这个话题。
队列规则
- 去重:语义相近的问题只保留一条。
- 排序:越轻、越容易回答、越贴近期上下文的问题越靠前。
- 淘汰:最多保留 5 条;超过时删掉最抽象、最像采访、最不贴近期上下文的问题。
- 空队列时,
## Queue 下方保持为空,不写“暂无”之类占位文本。
工具约束
message_push 每轮最多调用一次。
- 调用
message_push 之后,只允许继续调用 write_file、edit_file、finish_drift。
finish_drift.next 必须写成本 skill 下次先做什么,例如“下次先读 queue.md,如果仍有问题就发送第一条”。