← 返回
未分类 Key

Period Care Assistant

Track menstrual cycle history, answer current cycle status questions, record new period start dates from natural-language messages such as "月经来了", predict th...
Track menstrual cycle history, answer current cycle status questions, record new period start dates from natural-language messages such as "月经来了", predict th...
wangjian124 wangjian124 来源
未分类 clawhub v0.1.0 1 版本 100000 Key: 需要
★ 0
Stars
📥 398
下载
💾 0
安装
1
版本
#latest

概述

Period Care Assistant

Overview

Use the helper script at {baseDir}/scripts/period_tracker.mjs for all reads and writes so period history, forecasts, and reminder plans stay deterministic. Keep all cycle data local, encrypted, and scoped by a stable per-user key such as dingtalk: or telegram:.

Handle User Identity

Build a stable userKey before touching storage.

  • Prefer the channel's immutable sender identifier.
  • Prefix it with the transport, for example telegram:123456, slack:U123, or dingtalk:manager123.
  • Do not use display names as the primary key unless there is no stable id.
  • If the user is in a shared chat, keep records per person and confirm who the record belongs to before writing.

Record A New Period Start

When the user says anything equivalent to "月经来了", "今天来例假了", "帮我记一下今天来姨妈", or "记一下 2026-03-18 来月经":

  1. Infer the start date from the message. If no date is given, use the user's local date and say which date was recorded.
  2. Run:
node "{baseDir}/scripts/period_tracker.mjs" record --user "<userKey>" --date "<YYYY-MM-DD>" --json
  1. Read the returned JSON and reply with:
    • the recorded start date,
    • the predicted next start date,
    • the reminder date,
    • a short caring sentence.
  2. If the user also gives reminder preference, timezone, route, or period length, include:
node "{baseDir}/scripts/period_tracker.mjs" record --user "<userKey>" --date "<YYYY-MM-DD>" --reminder-days 4 --timezone "Asia/Shanghai" --delivery-mode webhook --delivery-webhook "https://example.invalid/reminder" --json

Answer Status Queries

When the user asks "我现在是什么周期", "帮我查一下月经周期", "下次大概什么时候来", or similar:

node "{baseDir}/scripts/period_tracker.mjs" status --user "<userKey>" --json

Explain the result in natural language:

  • current phase,
  • days since last recorded start,
  • predicted next start date,
  • reminder status,
  • confidence level and uncertainty when history is sparse or irregular.

Do not state medical certainty. Say the estimate is data-based, not a diagnosis.

Configure Reminder Delivery

The helper script stores reminder preferences and generates a one-shot cron plan.

Use:

node "{baseDir}/scripts/period_tracker.mjs" configure --user "<userKey>" --timezone "Asia/Shanghai" --reminder-days 4 --delivery-mode announce --delivery-channel "telegram" --delivery-to "user:123456" --json

Supported delivery modes in the helper:

  • announce: for native OpenClaw chat delivery routes.
  • webhook: for an external bridge or webhook endpoint.
  • none: keep the prediction but do not arm a delivery route yet.

If reminder delivery is configured, fetch the plan:

node "{baseDir}/scripts/period_tracker.mjs" reminder-plan --user "<userKey>" --json

Then create or refresh a one-shot cron job. Prefer a deterministic job name from the JSON output. Use schedule.kind = "at" and the generated ISO timestamp. For isolated delivery jobs, use the generated prompt text as the agentTurn.message. See {baseDir}/references/deployment.md for a complete cron JSON example.

Natural-Language Interaction Style

Keep the interaction short, warm, and explicit.

  • Accept colloquial Chinese such as "姨妈来了", "例假来了", "下次大概啥时候".
  • After recording, confirm the exact date that was saved.
  • If fewer than two historical records exist, explain that the next prediction is a provisional baseline.
  • If the forecast confidence is low or the estimated error exceeds two days, say that clearly instead of overstating accuracy.
  • If the user says the cycle is highly irregular, severe pain is present, or bleeding is unusual, suggest professional medical advice.

Privacy And Safety Rules

  • Never print or quote the encryption key.
  • Keep raw history in the encrypted store only.
  • Avoid putting full menstrual history into logs, commit messages, or public summaries.
  • Share only the minimum needed in chat responses unless the user explicitly asks for the detailed history.
  • If this skill is published to ClawHub, remember ClawHub is public. Publish code and instructions only, never real user data or secrets.

Read More Only When Needed

  • Read {baseDir}/references/deployment.md when you need OpenClaw cron, ClawHub publish, or DingTalk transport notes.
  • Read {baseDir}/references/model-and-privacy.md when you need the forecasting method, storage layout, or accuracy caveats.

版本历史

共 1 个版本

  • v0.1.0 当前
    2026-03-31 03:22 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

life-service

Weather

steipete
获取当前天气和预报(无需API密钥)
★ 460 📥 230,073
life-service

Caldav Calendar

asleep123
使用 vdirsyncer + khal 同步并查询 CalDAV 日历(iCloud、Google、Fastmail、Nextcloud 等)。适用于 Linux。
★ 244 📥 30,880
life-service

healthcheck

stellarhold170nt
使用 JSON 文件存储追踪饮水和睡眠
★ 11 📥 30,431