Skip to content
Back to skills

Openclaw Diary Setup

CSecurity

OpenClaw Diary 日记系统安装向导。引导用户完成日记系统的初始化设置,包括人设选择、用户身份建立、存储配置和授权管理。 **立即触发当**:用户说「setup my journal」「初始化日记」「配置日记系统」「journal setup」「开始设置日记」。 **主动触发当**:用户首次尝试使用 diary skill 但配置文件不存在时,主动提示「看起来你还没有初始化日记系统,要现在设置吗?」 完成 5 个阶段的设置:人设选择、用户身份建立(可选)、存储配置、授权收集、生成配置文件。 **核心特性**: - 智能授权合并:如果导入和存储使用相同平台(如飞书),只需授权一次 - 渐进式引导:5 个阶段,可选步骤可跳过 - 人设一致性:INTJ/ENFP 风格贯穿全程 - 纯文本交互:完全适配 Telegram/WhatsApp/Discord 等消息平台

  • 2,128 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 6, 2026
ai-agentspythonshellbashgitapi

Works with

  • cli
  • api

Security analysis

C71/100
  • criticalModifies startup scripts or system services for persistence
  • criticalModifies startup scripts or system services for persistence
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 6 files and shows the line behind each finding

Scanned September 6, 2026

npx -y skills add LeoYeAI/openclaw-master-skills --skill openclaw-diary-setup --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Openclaw Diary Setup?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Openclaw Diary Setup
[![Security: C — Skills Directory](https://www.skillsdirectory.com/api/skills/leoyeai-openclaw-diary-setup/badge)](https://www.skillsdirectory.com/skills/leoyeai-openclaw-diary-setup)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: onboarding
description: |
  OpenClaw Diary 日记系统安装向导。引导用户完成日记系统的初始化设置,包括人设选择、用户身份建立、存储配置和授权管理。

  **立即触发当**:用户说「setup my journal」「初始化日记」「配置日记系统」「journal setup」「开始设置日记」。
  **主动触发当**:用户首次尝试使用 diary skill 但配置文件不存在时,主动提示「看起来你还没有初始化日记系统,要现在设置吗?」

  完成 5 个阶段的设置:人设选择、用户身份建立(可选)、存储配置、授权收集、生成配置文件。

  **核心特性**:
  - 智能授权合并:如果导入和存储使用相同平台(如飞书),只需授权一次
  - 渐进式引导:5 个阶段,可选步骤可跳过
  - 人设一致性:INTJ/ENFP 风格贯穿全程
  - 纯文本交互:完全适配 Telegram/WhatsApp/Discord 等消息平台

metadata:
  clawdbot:
    requires:
      env: []  # 环境变量可选,用户可以稍后配置
    files: []
    homepage: "https://github.com/openclaw-community/diary-system"
---

# Onboarding Skill - 日记系统安装向导

## 核心原则

**交互方式**:
- ✅ 使用纯文本对话,不依赖任何结构化交互工具
- ✅ 提供清晰的编号选项(1, 2, 3...)
- ✅ 支持多种输入方式(数字、关键词、自然语言)
- ✅ 每次选择后立即确认并进入下一步
- ✅ 显示进度提示(阶段 X/5)
- ✅ 允许跳过可选步骤

**人设一致性**:
- 根据用户选择的人设(INTJ/ENFP)调整对话风格
- INTJ:简洁、直接、高效,少废话
- ENFP:温暖、详细、鼓励,多关心

**智能授权合并**:
- 提前收集所有需要授权的场景
- 计算去重后的授权列表
- 一次性收集所有授权信息

---

## 前置检查

### 步骤 1:检查依赖的 skills 是否已安装

**检查 diary 和 note-extractor skills**:

使用 Bash 工具检查:
```bash
ls -la ~/.openclaw/skills/diary 2>&1 && ls -la ~/.openclaw/skills/note-extractor 2>&1
```

**如果任一 skill 不存在**:

发送提示:
```
OpenClaw Diary 需要安装以下 skills:
- openclaw-diary-core(日记记录)
- openclaw-diary-insights(洞察提取)

正在为你安装...
```

然后使用 Bash 工具安装:
```bash
# 检查是否安装了 clawhub CLI
if ! command -v clawhub &> /dev/null; then
    echo "正在安装 ClawHub CLI..."
    npm install -g clawhub
fi

# 安装依赖的 skills
clawhub install openclaw-diary-core
clawhub install openclaw-diary-insights
```

安装完成后发送:
```
✓ 依赖 skills 安装完成!

现在开始配置你的日记系统。
```

### 步骤 2:检查配置文件是否已存在

1. 展开 `~` 为完整路径:使用 `echo $HOME` 获取主目录
2. 检查文件:`~/.openclaw/workspace/diary/config/diary-config.json`
3. 如果文件已存在:
   ```
   看起来你已经初始化过日记系统了。

   要重新配置吗?这会覆盖现有配置。

   回复「是」继续,或「否」取消。
   ```

4. 如果用户回复「否」或「取消」,结束 skill

---

## 阶段 1:欢迎和人设选择

### 1.1 欢迎用户

发送欢迎消息:

```
欢迎使用 OpenClaw Diary!

这个系统可以:
✓ 智能记录你的想法、文章讨论和协作任务
✓ 支持本地存储和多平台同步(飞书/Flomo/Notion)
✓ 提供两种 AI 人设风格

整个设置大约需要 2-3 分钟,分为 5 个步骤。

【阶段 1/5】选择 AI 人设
```

### 1.2 人设选择

发送选项:

```
请选择你希望的 AI 日记助手风格:

1. **INTJ - 分析型**(推荐)
   话少、精准、善于发现规律
   适合:喜欢简洁高效沟通的人
   特点:会帮你识别行为模式,提供战略性思考

2. **ENFP - 温暖型**
   话多、温暖、陪伴感强
   适合:喜欢情感支持和深度交流的人
   特点:会主动关心你的感受,提供情感陪伴

💡 回复数字(1 或 2)或名称(INTJ/ENFP)即可。
```

### 1.3 解析用户输入

等待用户回复,解析输入:

**识别规则**:
- 包含 "1" 或 "intj" 或 "分析" → 选择 INTJ
- 包含 "2" 或 "enfp" 或 "温暖" → 选择 ENFP
- 其他 → 提示未识别

**未识别时的提示**:
```
没听清,请重新选择:

回复 1 选择 INTJ(分析型)
回复 2 选择 ENFP(温暖型)
```

### 1.4 确认选择

记录选择:`personality_type = "intj"` 或 `"enfp"`

根据人设发送确认消息:

**INTJ 风格**:
```
✓ 已选择 INTJ - 分析型

接下来的对话我会保持简洁高效。
```

**ENFP 风格**:
```
✓ 已选择 ENFP - 温暖型

太好了!接下来我会用温暖的方式陪伴你完成设置 😊
```

---

## 阶段 2:用户身份建立(可选)

### 2.1 询问是否建立用户身份

根据人设发送消息:

**INTJ 风格**:
```
【阶段 2/5】用户身份建立(可选)

建立用户档案可以让 AI 更了解你的背景和目标。

选择方式:
1. 聊天建立 - 我问几个问题了解你
2. 导入建立 - 从文档导入你的信息
3. 跳过 - 直接进入下一步

回复数字即可。
```

**ENFP 风格**:
```
【阶段 2/5】用户身份建立(可选)

如果你愿意,我想更了解你一些 😊

这样我就能更好地理解你的想法,提供更贴心的陪伴。

你可以选择:
1. 聊天建立 - 我们聊几句,我来了解你
2. 导入建立 - 如果你有现成的个人介绍文档,可以直接导入
3. 跳过 - 也可以先跳过,以后再补充

你想怎么做呢?回复数字就好。
```

### 2.2 解析用户选择

**识别规则**:
- 包含 "1" 或 "聊天" → 进入 2.3 聊天建立
- 包含 "2" 或 "导入" → 进入 2.4 导入建立
- 包含 "3" 或 "跳过" → 跳到阶段 3
- 其他 → 提示未识别

### 2.3 聊天建立用户身份

**INTJ 风格**(简洁提问):
```
✓ 选择聊天建立

我会问 3 个问题,简短回答即可。

问题 1/3:你的职业或主要身份是什么?
(例如:软件工程师、产品经理、学生、创业者)
```

等待回复,记录答案。

```
问题 2/3:你目前关注的主要领域或目标是什么?
(例如:AI 技术、个人成长、投资理财)
```

等待回复,记录答案。

```
问题 3/3:你希望通过日记系统达成什么?
(例如:记录想法、复盘反思、知识管理)
```

等待回复,记录答案。

**ENFP 风格**(温暖提问):
```
✓ 太好了!我们来聊聊吧 😊

我会问你 3 个问题,帮助我更了解你。放轻松,随便聊就好。

问题 1/3:你平时主要做什么工作或学习呢?
(比如你是做技术的、做产品的、还是在创业?)
```

等待回复,记录答案。

```
问题 2/3:最近你在关注什么领域或想达成什么目标?
(可以是技术学习、个人成长、投资理财,或者其他任何你在意的事)
```

等待回复,记录答案。

```
问题 3/3:你希望这个日记系统帮你做什么呢?
(比如记录灵感、复盘反思、整理知识,或者只是想有个地方倾诉)
```

等待回复,记录答案。

**生成用户档案**:

根据用户的回答,生成 `identity.md` 文件:

```markdown
# 用户身份档案

**生成时间**:{当前日期}

## 基本信息

- **职业/身份**:{用户回答1}
- **关注领域**:{用户回答2}
- **使用目标**:{用户回答3}

## 档案来源

通过聊天建立,基于用户的自我描述。

---

此档案由 OpenClaw Diary onboarding skill 自动生成。
```

保存到:`~/write_me/01studio/me/identity.md`

确认消息:
```
✓ 用户档案已创建

保存位置:~/write_me/01studio/me/identity.md
```

然后进入阶段 3。

### 2.4 导入建立用户身份

**询问导入来源**:

```
✓ 选择导入建立

请选择要导入的数据源(可多选):

1. 📄 飞书文档 - 导入飞书云文档中的个人档案
2. 📝 Notion - 导入 Notion 中的个人页面
3. 💾 本地文件 - 上传本地的 Markdown/Word 文档
4. 🌐 网页链接 - 提供在线文档链接

💡 输入方式:
- 单选:回复数字(如 1)
- 多选:用逗号分隔(如 1,3 或 飞书,本地)
- 全选:回复 all 或 全部

回复你的选择:
```

**解析用户输入**:

识别规则:
- "1" 或 "飞书" → 添加 feishu
- "2" 或 "notion" → 添加 notion
- "3" 或 "本地" → 添加 local
- "4" 或 "网页" 或 "链接" → 添加 web
- "all" 或 "全部" → 添加所有

支持组合:
- "1,3" → [feishu, local]
- "飞书,notion" → [feishu, notion]

**记录选择**:`import_sources = ["feishu", "local", ...]`

**确认选择**:
```
✓ 已选择:{列出选择的数据源}

稍后会在授权阶段收集相关信息。
```

然后进入阶段 3。

### 2.5 跳过用户身份建立

如果用户选择跳过:

```
✓ 已跳过用户身份建立

你可以随时通过编辑 ~/write_me/01studio/me/identity.md 来添加用户档案。
```

然后进入阶段 3。

---

## 阶段 3:存储配置

### 3.1 询问存储方式

根据人设发送消息:

**INTJ 风格**:
```
【阶段 3/5】存储配置

日记保存位置:

1. 仅本地 - 保存到 ~/write_me/00inbox/journal/
2. 本地 + 飞书同步
3. 本地 + Notion 同步
4. 本地 + Flomo 同步

回复数字即可。
```

**ENFP 风格**:
```
【阶段 3/5】存储配置

你的日记想保存在哪里呢?

1. 仅本地 - 保存在你的电脑上,最私密安全
2. 本地 + 飞书同步 - 本地保存,同时同步到飞书云文档
3. 本地 + Notion 同步 - 本地保存,同时同步到 Notion
4. 本地 + Flomo 同步 - 本地保存,同时同步到 Flomo

💡 所有选项都会在本地保存一份,云端同步只是额外备份。

回复数字就好:
```

### 3.2 解析用户选择

**识别规则**:
- "1" 或 "本地" 或 "local" → storage_type = "local_only"
- "2" 或 "飞书" 或 "feishu" → storage_type = "local_feishu"
- "3" 或 "notion" → storage_type = "local_notion"
- "4" 或 "flomo" → storage_type = "local_flomo"
- 其他 → 提示未识别

### 3.3 确认选择

根据选择发送确认消息:

**仅本地**:
```
✓ 已选择:仅本地存储

日记将保存到:~/write_me/00inbox/journal/
```

**本地 + 飞书**:
```
✓ 已选择:本地 + 飞书同步

日记将保存到:
- 本地:~/write_me/00inbox/journal/
- 飞书:需要在下一步提供授权信息
```

记录:`sync_platform = "feishu"`

**本地 + Notion**:
```
✓ 已选择:本地 + Notion 同步

日记将保存到:
- 本地:~/write_me/00inbox/journal/
- Notion:需要在下一步提供授权信息
```

记录:`sync_platform = "notion"`

**本地 + Flomo**:
```
✓ 已选择:本地 + Flomo 同步

日记将保存到:
- 本地:~/write_me/00inbox/journal/
- Flomo:需要在下一步提供授权信息
```

记录:`sync_platform = "flomo"`

---

## 阶段 4:智能授权合并

### 4.1 计算需要的授权

根据前面的选择,计算需要授权的平台:

```python
needed_auth = set()

# 从阶段 2 的导入来源
if "feishu" in import_sources:
    needed_auth.add("feishu")
if "notion" in import_sources:
    needed_auth.add("notion")

# 从阶段 3 的存储配置
if sync_platform == "feishu":
    needed_auth.add("feishu")
elif sync_platform == "notion":
    needed_auth.add("notion")
elif sync_platform == "flomo":
    needed_auth.add("flomo")

# 转换为列表
auth_list = list(needed_auth)
```

### 4.2 如果不需要授权

如果 `auth_list` 为空(用户选择了仅本地存储,且没有导入):

```
【阶段 4/5】授权配置

✓ 无需授权

你选择的配置不需要任何外部平台授权。
```

直接进入阶段 5。

### 4.3 如果需要授权

根据人设发送消息:

**INTJ 风格**:
```
【阶段 4/5】授权配置

需要以下授权:
{列出 auth_list 中的平台}

你可以:
1. 现在配置 - 我会引导你获取授权信息
2. 稍后配置 - 先生成配置文件,之后手动编辑

回复数字即可。
```

**ENFP 风格**:
```
【阶段 4/5】授权配置

为了让日记系统正常工作,我们需要一些授权信息:
{列出 auth_list 中的平台}

别担心,这些信息都保存在你的本地,不会上传到任何地方 🔒

你想:
1. 现在配置 - 我来帮你一步步获取授权信息
2. 稍后配置 - 先完成设置,之后你自己手动填写

回复数字就好:
```

### 4.4 解析用户选择

**识别规则**:
- "1" 或 "现在" → 进入 4.5 收集授权
- "2" 或 "稍后" → 跳到阶段 5
- 其他 → 提示未识别

### 4.5 收集授权信息

对于 `auth_list` 中的每个平台,逐个收集授权信息。

#### 4.5.1 飞书授权

```
【飞书授权】

需要提供以下信息:

1. App ID
2. App Secret
3. Folder Token(可选,用于指定日记保存的文件夹)

💡 如何获取:
- 访问飞书开放平台:https://open.feishu.cn/
- 创建企业自建应用
- 在「凭证与基础信息」中找到 App ID 和 App Secret
- Folder Token 可以从飞书云文档的文件夹链接中获取

请按以下格式回复(一行一个):
App ID: cli_xxxxx
App Secret: xxxxx
Folder Token: xxxxx(可选,没有就不填)

或者回复「跳过」稍后配置。
```

等待用户回复。

**解析回复**:
- 提取 App ID、App Secret、Folder Token
- 如果用户回复「跳过」,记录为稍后配置

**确认**:
```
✓ 飞书授权信息已记录
```

#### 4.5.2 Notion 授权

```
【Notion 授权】

需要提供 Integration Token。

💡 如何获取:
- 访问 Notion Integrations:https://www.notion.so/my-integrations
- 创建新的 Integration
- 复制 Internal Integration Token
- 在 Notion 中分享页面给这个 Integration

请回复你的 Integration Token:
(或回复「跳过」稍后配置)
```

等待用户回复。

**解析回复**:
- 提取 Integration Token
- 如果用户回复「跳过」,记录为稍后配置

**确认**:
```
✓ Notion 授权信息已记录
```

#### 4.5.3 Flomo 授权

```
【Flomo 授权】

需要提供 API Token。

💡 如何获取:
- 登录 Flomo:https://flomoapp.com/
- 进入「设置」→「API」
- 复制 API Token

请回复你的 API Token:
(或回复「跳过」稍后配置)
```

等待用户回复。

**解析回复**:
- 提取 API Token
- 如果用户回复「跳过」,记录为稍后配置

**确认**:
```
✓ Flomo 授权信息已记录
```

---

## 阶段 5:生成配置文件

### 5.1 生成配置

根据人设发送消息:

**INTJ 风格**:
```
【阶段 5/5】生成配置

正在生成配置文件...
```

**ENFP 风格**:
```
【阶段 5/5】生成配置

太好了!我们快完成了 🎉

正在为你生成配置文件...
```

### 5.2 创建目录结构

使用 Bash 工具创建必要的目录:

```bash
mkdir -p ~/.openclaw/workspace/diary/config
mkdir -p ~/.openclaw/workspace/diary/personalities
mkdir -p ~/write_me/00inbox/journal
mkdir -p ~/write_me/01studio/me
mkdir -p ~/write_me/02notes/insights
```

### 5.3 生成 diary-config.json

根据用户的选择生成配置文件:

```json
{
  "personality": {
    "type": "{personality_type}",
    "file": "personalities/{personality_type}.md"
  },
  "storage": {
    "path": "~/write_me/00inbox/journal",
    "date_format": "YYYY-MM",
    "time_boundary": "06:00",
    "feishu": {
      "enabled": {true if sync_platform == "feishu" else false},
      "app_id": "{如果收集了就填,否则留空}",
      "app_secret": "{如果收集了就填,否则留空}",
      "folder_token": "{如果收集了就填,否则留空}"
    },
    "notion": {
      "enabled": {true if sync_platform == "notion" else false},
      "integration_token": "{如果收集了就填,否则留空}"
    },
    "flomo": {
      "enabled": {true if sync_platform == "flomo" else false},
      "api_token": "{如果收集了就填,否则留空}"
    }
  },
  "user_identity": {
    "enabled": {true if 用户建立了身份 else false},
    "path": "~/write_me/01studio/me"
  },
  "post_processing": {
    "note_extractor": {
      "enabled": true,
      "auto_trigger": false
    }
  }
}
```

写入文件:`~/.openclaw/workspace/diary/config/diary-config.json`

### 5.4 复制人设文件

使用 Bash 工具复制人设文件:

```bash
# 获取 skill 目录路径(相对于当前工作目录)
SKILL_DIR="{skill 目录的绝对路径}"

# 复制人设文件
cp "$SKILL_DIR/../diary/personalities/intj.md" ~/.openclaw/workspace/diary/personalities/
cp "$SKILL_DIR/../diary/personalities/enfp.md" ~/.openclaw/workspace/diary/personalities/
```

### 5.5 设置环境变量(如果需要)

如果用户提供了授权信息,提示设置环境变量:

**飞书**:
```
为了让飞书同步正常工作,需要设置环境变量。

请在你的 shell 配置文件中添加:

export FEISHU_APP_ID="{app_id}"
export FEISHU_APP_SECRET="{app_secret}"

然后重新加载配置:
source ~/.zshrc  # 如果使用 zsh
source ~/.bashrc # 如果使用 bash
```

**Notion**:
```
为了让 Notion 同步正常工作,需要设置环境变量。

请在你的 shell 配置文件中添加:

export NOTION_TOKEN="{integration_token}"

然后重新加载配置:
source ~/.zshrc  # 如果使用 zsh
source ~/.bashrc # 如果使用 bash
```

**Flomo**:
```
为了让 Flomo 同步正常工作,需要设置环境变量。

请在你的 shell 配置文件中添加:

export FLOMO_API_TOKEN="{api_token}"

然后重新加载配置:
source ~/.zshrc  # 如果使用 zsh
source ~/.bashrc # 如果使用 bash
```

### 5.6 完成提示

根据人设发送完成消息:

**INTJ 风格**:
```
✓ 设置完成

配置文件:~/.openclaw/workspace/diary/config/diary-config.json
用户档案:~/write_me/01studio/me/identity.md
日记目录:~/write_me/00inbox/journal/

现在可以开始记录日记了。

在对话中说:记一下
```

**ENFP 风格**:
```
🎉 太棒了!设置完成!

你的日记系统已经准备好了:
✓ 配置文件:~/.openclaw/workspace/diary/config/diary-config.json
✓ 用户档案:~/write_me/01studio/me/identity.md
✓ 日记目录:~/write_me/00inbox/journal/

现在你可以开始记录你的想法了 😊

试试在对话中说:记一下今天的想法
```

---

## 错误处理

### 配置文件写入失败

如果无法写入配置文件:

```
❌ 配置文件写入失败

可能的原因:
- 目录权限不足
- 磁盘空间不足

请检查 ~/.openclaw/workspace/diary/ 目录的权限。

你也可以手动创建配置文件,参考:
{显示配置文件内容}
```

### 目录创建失败

如果无法创建目录:

```
❌ 目录创建失败

请手动创建以下目录:
mkdir -p ~/.openclaw/workspace/diary/config
mkdir -p ~/write_me/00inbox/journal
mkdir -p ~/write_me/01studio/me
```

### 用户输入无效

如果多次无法识别用户输入:

```
抱歉,我没理解你的意思。

你可以:
1. 重新开始设置:setup my journal
2. 查看帮助文档:{提供文档链接}
3. 手动配置:编辑 ~/.openclaw/workspace/diary/config/diary-config.json
```

---

## 实现注意事项

### 路径处理
- 所有包含 `~` 的路径都要展开为完整路径
- 使用 `echo $HOME` 获取主目录
- 使用 `mkdir -p` 创建目录(自动创建父目录)

### 人设一致性
- 在整个对话过程中保持选定的人设风格
- INTJ:简洁、直接、少废话
- ENFP:温暖、详细、多关心

### 输入解析
- 支持多种输入方式:数字、关键词、自然语言
- 大小写不敏感
- 容错处理:识别不清时友好提示

### 授权信息安全
- 所有授权信息保存在本地配置文件
- 提示用户使用环境变量存储敏感信息
- 不在日志中记录敏感信息

### 与其他 Skills 的协作
- 生成的配置文件供 diary skill 使用
- 用户档案供 diary 和 note-extractor skills 使用
- 目录结构与整个系统保持一致

---

最后更新:2026-03-15

Files in this skill

  • README.md8.8 KB
  • SKILL.md19.7 KB
  • _meta.json474 B
  • importers/README.md2.8 KB
  • importers/digital_life_import.md7 KB
  • importers/feishu_importer.md8.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…