家庭事务协调员。整合Google日历,提供每日早间简报(天气、日程、儿童餐点、学校零食),关注学校Gmail。
家庭基地 6 : 一个统一的家庭助理, 以 OpenClaw 技能运作是一项面向实际任务的技能,主要用于为家庭建造;需要一个地方来做日历、 餐饮计划、杂货单、 学校收件箱和早上。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
一款统一的家庭助手,以 OpenClaw 技能形式运行。专为希望将日历、餐食计划、购物清单、学校收件箱和晨间流程集中管理的家庭而设计——无需为每个家庭编写任何代码。
config.json 中启用 club_studio.enabled)— 每 15 分钟轮询 Gmail,识别 Club Studio Fitness 的课程预约/取消/候补邮件,向已配置的 WhatsApp 群组广播通知,并同步更新本地日历条目。另有一个独立的推荐/爬虫组件(features/club_studio/scraper.py)使用 Playwright 浏览器自动化访问 clubstudiofitness.com 的公开课程表页面以推荐课程——该站点为真实第三方网站,不在下方所述 Google/Open-Meteo 范围内;详见“密钥处理”章节。Python 工具仅返回 数据。OpenClaw agent(模型无关——Claude、Gemma、GPT、Llama 或任意 OpenClaw 当前配置的模型)负责组合并投递所有面向用户的响应消息。Python 本身从不发送 WhatsApp 消息,也绝不调用任何 LLM。所有 Python 状态文件均采用原子写入方式(通过 tempfile + fsync + rename),确保写入中途崩溃不会遗留损坏的 JSON 文件。Cron 入口点均包裹顶层 try/except,使任何崩溃均会输出可解析的状态对象,而非静默吞没执行过程。
本技能需依赖 Google OAuth 凭据(GOOGLE_CLIENT_ID、GOOGLE_CLIENT_SECRET、GOOGLE_REFRESH_TOKEN)读取您的 Google 日历与学校 Gmail。除此之外,无需其他 API 密钥、LLM 密钥或第三方令牌。
凭据从环境变量读取。在 macOS 上,您可选择通过 migrate_to_keychain.py 将其迁移至系统 Keychain,并随后从 .env 中移除。本技能仅通过 google-auth-oauthlib 将凭据发送至 Google 官方 OAuth 端点,绝不会传输至任何其他位置。
本技能发起的出站网络请求包括:
*.googleapis.com):用于日历同步、学校邮件监控、Club Studio Gmail 监控及凭据刷新api.open-meteo.com):为晨间简报与行程检测器提供天气预报——无需 API 密钥、无需注册账户、不发送任何 PII 信息clubstudiofitness.com — 仅当 club_studio.enabled 为 true 时启用。推荐器(features/club_studio/scraper.py)使用 Playwright 加载其公开课程表页面。其自身 docstring 明确说明此操作“旨在绕过机器人防护”——这是明确披露的能力,非隐藏行为:即在独立的系统级 Python 解释器下,对第三方网站执行浏览器自动化操作。若您不希望启用该功能,请保持 club_studio.enabled: false(默认值)。本技能不含任何遥测、分析、第三方追踪功能,亦不向上述三个域名以外的任何其他域名发起请求。
Shell / 子进程调用:features/briefing/briefing_preflight.py 调用 osascript 发送本地 macOS 通知(尽力而为,失败被静默忽略)。setup_check.py 和 migrate_to_keychain.py 是您手动运行的一次性设置脚本。get_cron_health_digest(位于 tools.py)读取 ~/.openclaw/cron/runs/*.jsonl —— 此为 OpenClaw 自身的 cron 日志目录,仅用于汇总 本技能自身 的任务结果,生成每日所有者简报;它仅读取该共享主机级目录中已可见的文件名,不访问其他技能的数据。
全部家庭状态(日历缓存、餐食历史、健康日志、儿童档案、餐厅评分、购物清单、简报可靠性追踪器)均以本地 JSON 文件形式存储于 household/ 和 calendar_data/ 目录中。无任何数据离开您的设备。
文件权限:.env 文件应设为 chmod 600(所附 setup_check.py 会校验此项)。household/ 与 calendar_data/ 下的 JSON 文件继承您的用户 umask —— 它们归属于运行 OpenClaw 的用户,在默认 macOS 或 Linux 配置下对其他本地用户不可访问。若您处于多用户系统,请审计这些路径。
本仓库中的 com.openclaw.daemon.plist 是 OpenClaw 网关守护进程的模板,而非 Homebase 代码的启动配置。该 plist 执行 /usr/local/bin/openclaw start --foreground,以确保 WhatsApp 桥接服务在用户登录会话之间持续存活。它 并不直接运行任何 Homebase Python 代码。
该配置为可选。仅当您希望 WhatsApp 投递能力在登出或重启后仍保持有效时才需要它。若不启用,OpenClaw 仅在其终端会话活跃期间运行。如启用,该 plist 将存放于 ~/Library/LaunchAgents/com.openclaw.daemon.plist,您可随时通过 launchctl unload 卸载。
club_studio.enabled: true 时需要)——用于 Club Studio 课程表爬虫的浏览器自动化依赖,运行于独立的系统级 Python 解释器下cp config.example.json config.json,并填写您家庭的相关配置。GOOGLE_CLIENT_ID / GOOGLE_CLIENT_SECRET / GOOGLE_REFRESH_TOKEN,或通过 python migrate_to_keychain.py 迁移至 macOS Keychain。pip install -e .(依据 pyproject.toml)。python -m pytest 应报告全部测试通过。python setup_check.py 执行配置与认证的合理性检查。household/briefing_reliability.json 中的可靠性追踪器将当日标记为 degraded。python core/reauth_google.py 重新生成 refresh token。学校邮件监控器将在发生此事时,通过 WhatsApp 向您精确发送一次通知,此后将静默等待问题修复。MIT
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.3万人学习
共49课时 | 82.7万人学习
最新文章