Install
openclaw skills install private-assistantPersonal bookkeeping, memo/journal, reminder, and spending-insight assistant for Hermes. Use when the user wants to record income or expenses, save notes or reflections, query summaries, review spending patterns, correlate spending with memos, or manage explicit reminders backed by local JSONL files and cron.
openclaw skills install private-assistant消息平台优先的私人助手 skill,覆盖三条子链路:
references/data-model.md:字段和存储约定references/interaction-rules.md:输入解析与输出模板references/insight-rules.md:洞察信号、低打扰策略、关联边界references/insight-templates.md:周摘要、月复盘、异常观察、联动复盘模板python SKILL_DIR/scripts/records.py ...python SKILL_DIR/scripts/reminders.py ...python SKILL_DIR/scripts/insights.py ...SKILL_DIR 是当前 skill 根目录。数据固定写入 HERMES_HOME/data/private-assistant/,按当前 profile 自动隔离。
| 和短标签组织。memory 只用于稳定偏好,例如“默认币种改成 USD”。CNY,时间未写明时按当前本地时间处理。[SILENT],就不要向用户发送额外说明。如果一句话同时包含“记一下”和明确金额,优先按记账处理;如果是情绪、感受、复盘、状态,优先按感悟处理。
新增账目:
python SKILL_DIR/scripts/records.py transaction-add --type expense --amount 32 --category 餐饮 --note "午饭"
python SKILL_DIR/scripts/records.py transaction-add --type income --amount 8000 --category 工资 --note "四月工资"
查询和汇总:
python SKILL_DIR/scripts/records.py transaction-list --range today --limit 5
python SKILL_DIR/scripts/records.py transaction-list --range week --category 餐饮
python SKILL_DIR/scripts/records.py transaction-summary --range month
修改和删除:
python SKILL_DIR/scripts/records.py transaction-update --last --amount 28
python SKILL_DIR/scripts/records.py transaction-delete --last
处理规则:
type 和 amountcategory 未提供时,可依赖脚本自动补默认分类counterparty 用于商家、来源、对方名称81+13,默认先换算总额并只记 一笔,即 94;只有用户明确要求拆分时才分多笔写入新增记录:
python SKILL_DIR/scripts/records.py memo-add --content "明天联系房东" --kind note
python SKILL_DIR/scripts/records.py memo-add --content "我最近总熬夜,有点焦虑" --kind reflection
查询:
python SKILL_DIR/scripts/records.py memo-list --range 7d --limit 5
python SKILL_DIR/scripts/records.py memo-list --keyword 焦虑 --kind reflection
修改和删除:
python SKILL_DIR/scripts/records.py memo-update --last --content "明天联系房东并确认租金"
python SKILL_DIR/scripts/records.py memo-delete --last
处理规则:
reflectionnote创建提醒时,先确保对应 memo 已存在,再创建 cron 任务。
创建流程:
records.py memo-add 新建或确认目标 memoDo not mentally convert relative or natural-language reminder times into timestamps.
Pass the raw user time phrase directly to reminders.py create-payload --reminder-at ....
python SKILL_DIR/scripts/reminders.py create-payload --last --reminder-at "明早8点"
python SKILL_DIR/scripts/reminders.py create-payload --last --reminder-at "1分钟后提醒我回消息"
cronjob 工具:cronjob(
action="create",
schedule=payload["schedule"],
prompt=payload["prompt"],
name=payload["name"],
)
python SKILL_DIR/scripts/reminders.py link --last --cron-job-id "<job_id>" --reminder-at "<payload['reminder_at']>"
查看提醒:
python SKILL_DIR/scripts/reminders.py list
取消提醒:
python SKILL_DIR/scripts/reminders.py get --last
cronjob(action="remove", job_id=record["cron_job_id"])
python SKILL_DIR/scripts/reminders.py unlink --last
提醒用的 cron prompt 必须自包含,不能依赖短期上下文。
手动洞察优先用 insights.py digest:
python SKILL_DIR/scripts/insights.py digest --period week --mode manual --view summary
python SKILL_DIR/scripts/insights.py digest --period month --mode manual --view summary
python SKILL_DIR/scripts/insights.py digest --period 7d --mode manual --view anomaly
python SKILL_DIR/scripts/insights.py digest --period 7d --mode manual --view combined
映射规则固定为:
本周消费总结 → --period week --view summary本月花销复盘 → --period month --view summary最近消费有什么异常 → --period 7d --view anomaly最近消费和备忘一起看一下 → --period 7d --view combined订阅开启时:
python SKILL_DIR/scripts/insights.py create-payload --period week
python SKILL_DIR/scripts/insights.py create-payload --period month
cronjob 创建任务,并把 skills=payload["skills"] 一并传入。cron_job_id 写回设置:python SKILL_DIR/scripts/insights.py prefs-update --weekly-enabled true --weekly-cron-job-id "<job_id>"
python SKILL_DIR/scripts/insights.py prefs-update --monthly-enabled true --monthly-cron-job-id "<job_id>"
关闭订阅时:
python SKILL_DIR/scripts/insights.py prefs-update --weekly-enabled false --weekly-cron-job-id ""
python SKILL_DIR/scripts/insights.py prefs-update --monthly-enabled false --monthly-cron-job-id ""
洞察规则:
[SILENT],不要补发解释reminders.py / insights.py 的 payload 脚本处理;不要用模型心算或临时手推。cronjob(action=\"create\", ...) 成功后,才能回写本地 cron_job_id;删除时也要先删 cron job,再解绑本地记录,避免状态不一致。deliver 默认留空以回投当前会话;只有用户明确要求发到其他会话、群组或线程时,才显式指定投递目标。[SILENT] 就直接静默,不补发“本次无内容”等解释性消息。始终优先单条、结构化、极简回复。默认模板:
已记录|支出 32 元|分类:餐饮|时间:今天 12:30|备注:午饭已保存备忘|类型:感悟|时间:今天 22:10|内容:我最近总熬夜,有点焦虑查询结果|范围:本月|支出:320 元|收入:8000 元|净额:7680 元|最近记录:午饭 32 元已设置提醒|时间:明晚 20:00|事项:交水电费本周消费简报|支出:268 元|较上周:+22%|Top1:餐饮 132 元|高峰日:周三 68 元|同期记录:周三提到“熬夜、状态差”|建议:下周先只盯餐饮支出。不要输出: