# Explore Curiosity

> 补足用户画像中的轻量信息空白，一次只问一个自然问题。

- Skill: `kachofugetsu09/explore-curiosity` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add kachofugetsu09/explore-curiosity`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kachofugetsu09/explore-curiosity/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: kachofugetsu09 (https://skillmd.com/u/kachofugetsu09)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/kachofugetsu09/explore-curiosity

---


## 目标

在 Drift 空闲时间里，基于已注入的长期记忆和近期上下文，发现用户画像里还不清楚、但适合轻轻补一笔的信息空白。

这个 skill 只做轻量探索，不做审问，不做长问卷，不追问敏感隐私。

## 工作文件

- `skills/explore-curiosity/queue.md`：待提问队列。
- `skills/explore-curiosity/state.json`：Drift 系统运行状态。

## 读取顺序

```text
read SKILL.md
    |
    v
read queue.md
    |
    +-- has question --> send first question
    |
    +-- empty --------> generate queue, then send first question
```

## 工作流程

1. 调用 `read_file` 读取 `skills/explore-curiosity/queue.md`。
2. 只从 `## Queue` 下面读取待发送问题，不要把标题、说明或格式提示当成问题。
3. 如果 `## Queue` 下面没有问题：
   - 根据长期记忆和近期上下文，找出还没有明确答案的轻量生活信息。
   - 生成 3 到 5 个问题。
   - 调用 `write_file` 重写 `skills/explore-curiosity/queue.md`。
   - 写完后继续取第一条问题发送，不能只生成队列就结束。
4. 如果 `## Queue` 下面有问题：
   - 取第一条问题。
   - 调用 `message_push` 发送。
   - 发送后删除第一条，保留剩余问题。
   - 调用 `write_file` 写回 `queue.md`。
5. 最后必须调用 `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，如果仍有问题就发送第一条”。

