Install
openclaw skills install personal-worklist-via-feishu飞书多维表格个人工作台账。通过自然语言对话完成任务录入、定时提醒、状态更新和进度复盘,所有数据存储在飞书多维表格中。 【触发词】 "创建个人工作台账"/"create worklist" | "记一下工作"+内容/"add task"+内容 | "完成了"/"cancelled"/"推迟"/"defer" | "复盘"/"review" | "诊断"/"diagnose" 【每次触发必验5条】 1.语言未设置→先问用户(中文/英文/c/e),禁止跳过 2.APP_TOKEN/TABLE_ID未配置→引导用户提供飞书多维表格链接,禁止跳过 3.三项必填逐一确认(任务名称/优先级①~④/截止日期),未提供则追问,禁止自行编造 4.来源分类自动归类(未提及→临时任务[U],协作→协作任务[C],周期→例行任务[R],计划内→计划任务[P]),无需追问 5.openclaw cron add/delete已授权,无需确认直接执行 【关键约束】 - init_table.js必须带--open-id(用户open_id),否则用户无法访问表格 - config.js中APP_TOKEN/TABLE_ID为空时,必须引导用户配置后才能操作表格 - 禁止语言未确认前执行任何脚本 【字段速查】 优先级:①紧急且重要/②重要不紧急/③紧急不重要/④不紧急不重要 状态:待办/进行中/已完成/取消 来源:计划任务[P]/临时任务[U]/例行任务[R]/协作任务[C]
openclaw skills install personal-worklist-via-feishu【首次安装引导流程 - 必须执行】
新用户首次使用本 skill 时,AI 必须按以下顺序执行引导:
"您好!我是飞书工作台账助手。在开始之前,请确认您的运行环境:
- 输入
中文或c→ 使用中文提示词和多维表格字段- 输入
英文或e→ 使用英文提示词和多维表格字段"
用户确认语言后,询问用户的飞书多维表格链接:
"好的!接下来请提供您的飞书多维表格链接,格式如:
https://xxx.feishu.cn/base/APP_TOKEN?table=TABLE_ID或者直接告诉我 APP_TOKEN 和 TABLE_ID 的值,或者发“创建个人工作台账”,由我来帮你创建"
从链接中提取方式:
/base/ 后到第一个 ? 前的字符就是 APP_TOKENtable= 后到下一个 & 或字符串结尾的字符就是 TABLE_ID提取后调用 node scripts/set_config.js --app-token "VALUE" --table-id "VALUE" 保存配置。
node scripts/init_table.js --open-id USER_OPEN_ID 创建台账配置完成后,立即引导用户设置每日定时提醒:
"✅ 台账配置完成!现在建议设置每日定时提醒,每天自动推送工作清单:
- 🌅 早晨 08:28 — 当日工作重点
- 🌤️ 下午 14:00 — 下午工作安排
- 🌆 下班前 17:30 — PMBOK 进度复盘 是否现在设置?"
| 层级 | 内容 | 读取时机 |
|---|---|---|
| Frontmatter(每次) | 引导流程+5条必验规则+字段速查+触发词 | 每次 skill 触发时 |
| Body 本节 | 分场景操作约束+禁止行为 | 遇到具体场景时 |
【分场景操作约束】按需读取 body 对应章节:
【禁止行为】每次必验:
用户说"创建个人工作台账"(中文)或 "create worklist"(英文)时,执行引导流程。
检查 feishu-api-bitable 技能是否已安装:
如果技能未安装:
从用户提供的飞书多维表格 URL 中提取 APP_TOKEN 和 TABLE_ID,然后:
node scripts/set_config.js --app-token "APP_TOKEN" --table-id "TABLE_ID"
选项 A:新用户新建表格
node scripts/init_table.js --open-id "USER_OPEN_ID" --lang zh|en选项 B:用户提供已有表格
node scripts/init_table.js --open-id "USER_OPEN_ID" --lang zh|en确认设置后,执行:
node scripts/setup_reminders.js --open-id=USER_OPEN_ID --lang zh|en
验证推送: 创建完成后执行 cron run <jobId> 触发一次即时推送,验证飞书是否收到。
强触发 - 直接录入: 用户说"记一下这个工作" + 任务内容 → 立即进入录入流程,询问补全必填字段。
弱触发 - 询问确认: 用户发送了工作相关内容但没有明确触发词 → 主动询问"是否要录入工作台账?"
三项必填字段必须在录入前与用户逐一确认:
| 字段 | 确认方式 | 如用户未提供 |
|---|---|---|
| 任务名称 | 请用户确认 | 必须追问 |
| 优先级 | 请用户选择(①~④) | 必须追问 |
| 截止日期 | 请用户确认 | 必须追问 |
确认话术示例:
"好的,我来帮您录入。确认一下:
- 任务名称:[提取的内容]
- 优先级:①紧急且重要 / ②重要不紧急 / ③紧急不重要 / ④不紧急不重要?
- 截止日期:哪一天?"
用户说"今天"、"明天"、"后天"、"本周五"等,必须转换为具体年月日并回显。
三步验证法:
工作日判断(强制):
http://api.jiejiariapi.com/v1/holidays/2026 查询全年节假日数据isOffDay 字段:
isOffDay == false → 执行发送isOffDay == true → 静默跳过用户说"完成了" → 立即调用 node scripts/update_task.js --record-id ID --status "已完成"
禁止只做口头回复而不操作表格。
| 日期 | 场景 | 规则 |
|---|---|---|
| 2026-04-23 | 日期转换跳步 | 相对日期必须三步验证,防止思维跳格 |
| 2026-04-23 | 日期回显 | 更新后必须写具体日期+星期,让用户确认 |
| 2026-04-24 | 三项必填确认 | 任务名称/优先级/截止日期必须逐一与用户确认,禁止自行推断 |
| 2026-04-24 | 禁止过度推断 | 可选字段用户未提则留空,禁止凭想象填写 |
| 2026-05-08 | cron任务状态筛选 | 状态筛选必须叠加 status !== "已完成" && status !== "取消" |
| 2026-05-09 | 调休判断必须调用API | 必须调用节假日 API,不得凭"周几"跳过 |
| 2026-05-12 | 定时任务 Prompt 精简 | payload 精简为核心指令,减少 30% 推理耗时 |
| 脚本 | 用途 | 关键参数 |
|---|---|---|
setup_reminders.js | 定时提醒设置 | `--lang zh |
check_permissions.js | 检查飞书 API 连通性 | 无参数 |
init_table.js | 初始化表格 | --open-id, --lang |
health_check.js | 健康诊断(5项) | 无参数 |
set_config.js | 更新飞书凭证 | --app-token, --table-id, --list |
add_task.js | 添加任务 | --task, --priority, --deadline, --lang |
update_task.js | 更新任务 | --record-id, --status, --lang |
list_tasks.js | 读取任务列表 | 无参数 |
request.js | 统一请求层 | 内部使用 |
preferences.js | 用户偏好读写 | getLanguage(), setLanguage() |
i18n.js | 国际化文本 | getTemplates(lang) |