mcpField
B
breakthrough-whatsapp-live

breakthrough-whatsapp-live

github.com/breakthrough-edu生产力220 次安装5 天前更新
代码仓库

关于 breakthrough-whatsapp-live

面向常开 Mac 的 WhatsApp Live 安装、运维与排障技能,会根据 WhatsApp Desktop 本地数据库分析消息并生成草稿,供用户审核。它不发送消息,也不提供自动回复或托管服务。

主要功能

  1. 01读取 WhatsApp Desktop 本地数据库
  2. 02规则门控后分析消息并生成草稿
  3. 03本机看板展示消息与草稿
  4. 04保存人物笔记并提出修改建议
  5. 05提供安装、更新与故障诊断流程

适用场景

  1. 01审阅个人 WhatsApp 收到的消息
  2. 02在看板中查看语音转录与回复草稿
  3. 03管理安装、暂停运行或排查问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/breakthrough-edu/breakthrough-whatsapp-live --skill breakthrough-whatsapp-live

安装后在 Claude Code 中输入/breakthrough-whatsapp-live确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

daemon/
board.html
wa_backfill.py
wa_backup.py
wa_calendar.py
wa_common.py
wa_digest.py
wa_facts.py
wa_intake.py
wa_live.py
wa_second_source.py
wa_setup.py
wa_voice.py
daemon/adapters/
__init__.py
calendar_ics.py
calendar_lark.py
facts_csv.py
facts_lark.py
second_source_lark.py
daemon/templates/
backfill-prompt.md
brain-prompt.md
CHANGELOG.md
claude-settings.json
config.example.json
daemon.plist
intake-evening.mjs
intake-evening.plist
run.mjs
second-source-prompt.md
topic-map.example.json
install/
00-start-here.md

详细介绍

breakthrough-whatsapp-live

每次都要先阅读此文件。它负责路由,也规定了禁止事项。具体流程写在它所指向的文件中;如果其中某个文件与此文件冲突,以具体文件为准,并在同一会话中修正此文件。

所有者最终会得到:每条发到其本人 WhatsApp 号码的入站消息,都会唤醒其常开 Mac 上的守护进程。一个规则门控(不调用模型)会判断这批消息是否值得运行。一次无头 claude -p 运行会读取对话、进行判断(属于哪个世界、处于哪个阶段、紧急程度如何、轮到谁采取行动),并撰写草稿。一个通过 127.0.0.1 提供服务、并借助 tailscale serve 放到所有者 tailnet 上的看板,会显示文本、照片、视频、语音转录、三个标签和草稿,并带有一个可打开 WhatsApp、且已填入内容的按钮。围绕这个核心:所有者第二大脑知识库中的联系人笔记,以及所有者在 C5 站点选择的可选模块。

规则

这些规则适用于所有模式。违反任何一条都是错误,而不是需要酌情判断的情况。

  1. 绝不会发送任何内容。 这套工具没有发送途径,也不会为任何人的要求添加发送途径。看板会打开 WhatsApp,并预填草稿(一对一聊天);对于群组,则会复制草稿。由所有者按下发送。Claude 绝不会发送 WhatsApp 消息,也绝不会操控 WhatsApp 应用。
  2. 只使用官方应用自己的数据库。 守护进程只读取 WhatsApp Desktop 保存在 Mac 上的数据库,不会写入。⛔ 绝不使用非官方 WhatsApp 库,绝不使用浏览器自动化,绝不为个人号码使用 Business 或 Cloud API,也绝不在之后将其中任何一种作为高级选项提供。
  3. 绝不触碰其他安装的标签或端口。 此安装拥有一个 launchd.label、一个 launchd.intake_label 和一个 board.port,记录在 <home>/INSTALL-PROGRESS.md 的文件头中。选择前先确认它们未被占用(C0 站点,第 2 步),并始终使用该文件头中的此安装专属值运行每条命令,绝不使用默认值。绝不对不属于此安装的 LaunchAgent 执行 bootout、disable、kickstart 或覆盖操作,也绝不使用其他程序正在监听的端口提供服务。
  4. 绝不覆盖所有者的副本或保管库笔记。 提示词、主题映射和操作手册一经复制便归所有者所有:只有所有者同意后,更新才会逐节合并(install/update.md)。所有保管库变更都必须先作为提案交由所有者决定(references/vault-proposals.md),并使用 Write 或 Edit 工具写入。人物笔记只能通过 dossier_core.place_note 放置;该工具拒绝替换并非以其创建的笔记为基础的内容。
  5. 一次只处理一个站点;验证通过后,站点才算完成。 在本会话中运行每项探测,并亲自阅读其输出。所有者或子 Agent 说“成功了”不算证据。探测失败或尚未运行时,绝不开启下一个站点。
  6. 随时记录到 <home>/INSTALL-PROGRESS.md:记录每个回答、每项探测及其打印的值,以及每次跳过及其原因。新会话必须从该文件恢复进度,绝不能依赖记忆。
  7. Windows 上没有可行路径。 Windows 版 WhatsApp Desktop 使用与该机器绑定的密钥加密数据库,只有取证工具才能打开。清楚说明这一点一次,然后停止。此工具套件仅在 macOS 上运行。
  8. macOS 要求用户操作时,由所有者操作。 由所有者在“系统设置”中开启“完全磁盘访问权限”。由所有者运行 tailscale serve。只有所有者同意后,才安装软件(Homebrew formulas、约 1.5 GB 的模型下载)。请求前说明每项变更的作用。
  9. 他人的言论原样留在原处。 只要求所有者粘贴 wa_setup.py doctor 和 measure 的输出内容(数量、时间、路径、群组名称)。绝不在聊天中索要消息文本、机器人令牌或密钥。哪些内容会离开 Mac,以及发送给谁,参见 references/privacy.md。
  10. 本技能为所有者撰写的内容都遵守统一风格: 不使用 em dash、en dash、双连字符,也不使用带空格的连字符作为分隔符。使用逗号、冒号、句号和括号。命令和路径保持原样。

路由

先找到安装位置。除非所有者移动过,否则 <home> 为 ~/WhatsApp-Live;如果找不到 ~/WhatsApp-Live/INSTALL-PROGRESS.md,而所有者说已经安装,请询问安装位置(ls -d ~/WhatsApp-Live* 会有所帮助)。一台 Mac 可以有多个安装,每个安装都有自己的主目录、标签和端口:如果找到多个进度文件,请先询问所有者指的是哪个安装,再运行任何操作,并从该安装的标头中获取所有值。然后根据所有者的请求选择对应模式,每个请求只加载一个模式文件:

所有者说模式阅读
“设置 whatsapp live”、“安装 whatsapp live”、“继续安装”,或没有进度文件设置install/00-start-here.md
“更新 whatsapp live”,或刚运行了 npx skills update更新install/update.md
“我的 whatsapp live 正在运行吗”、暂停或恢复、重启、日志、命令文件、更改设置操作references/operating.md
“为什么这条消息没有显示在我的看板上”、某次运行失败、看板为空或无法打开、语音消息没有转录文本诊断references/troubleshooting.md,然后阅读它在 references/pitfalls.md 中指出的问题
“卸载 whatsapp live”、“移除 whatsapp live”卸载install/uninstall.md

设置状态会影响两件事:

  • 进度文件中仍有核心站点(C0 到 C5)未勾选:仍然可以回答操作和诊断问题(安装未完成的机器仍然可以分析),但只主动提出一次继续设置,并且绝不启动可选站点。
  • 更新和卸载适用于任何安装,无论是否已完成。

仅当模式文件要求时,才阅读以下内容:references/config-reference.md(每个配置项、其默认值和所属站点)、references/interfaces.md(五个接口约定及随附的实现)、references/defaults-and-why.md(每项默认值、原因以及所有者重新设定的位置)、references/feature-checklist.md(每项功能及其检查方法)、references/privacy.md、references/vault-proposals.md、references/pitfalls.md。

所有者 Mac 上的文件位置

使用默认值(~/WhatsApp-Live,标签为 local.whatsapp-live);第二个安装有自己的主目录和标签。

~/.claude/skills/breakthrough-whatsapp-live/     this payload; npx skills update replaces it whole, so it never holds owner data
~/.claude/skills/breakthrough-whatsapp-read      link into the payload (station C1)
~/.claude/skills/breakthrough-person-dossier     link into the payload (station C4)
~/WhatsApp-Live/                                 paths.home (0700)
    INSTALL-PROGRESS.md                          the wizard's record (0600)
    config.json                                  reader config, generated by wa_setup.py sync-reader-config; never hand edited
    runs-work/  prewarm/  sweeps/                reader working copies and reading packs
    transcripts-cache/                           voice transcripts, shared by the reader and the board
    brain-cwd/                                   empty working folder of every headless run
    launchd/run.mjs  launchd/<label>.plist       rendered by wa_setup.py render-launchd
    live/                                        paths.live_dir
        config.json  telegram.json  claude-settings.json  seeds.json      (all 0600)
        prompts/brain-prompt.md  prompts/second-source-prompt.md  prompts/backfill-prompt.md   owner copies
        topic-map.json                                                                     owner copy
        adapters/                                     the owner's own interface implementations, kept through updates
        state.sqlite  summaries.md  facts.json  voice-pairs.jsonl  backup-last.json  second-source-last.json
        digest/  runs/  commands/  dossier-backups/  variants/  calendar/  wa_live.log  stderr.log
~/Library/LaunchAgents/<launchd.label>.plist     default local.whatsapp-live; <launchd.intake_label>.plist only with the evening push
~/.cache/whisper-models/<model>/                 the whisper model copy, outside Documents on purpose
<vault>/                                         People room, playbook folders, intake buffer, Decisions, registry entries,
                                                 every one of them through references/vault-proposals.md

守护进程会从此载荷导入读取器和档案脚本(paths.reader_dir、paths.dossier_dir),无论这两个链接是否存在。这些链接供所有者在自己的会话中使用:breakthrough-whatsapp-read 会读取 WhatsApp 以回答问题;breakthrough-person-dossier 可手动编写或更新某个人的笔记。

此 skill 并非

  • 不是自动回复机器人,不用于群发消息,也不能用来读取他人的号码或监视团队。
  • 不是 WhatsApp Business API 或 Cloud API,也不是非官方库:唯一的访问入口是所有者自己 Mac 上的 WhatsApp Desktop 数据库。
  • 不是 breakthrough-whatsapp-triage,后者可根据导出的历史记录随时在任意电脑上生成单页看板。此工具则全天候在一台始终开机的 Mac 上运行。
  • 不是托管服务。它不会部署到任何地方,而且看板没有登录功能,因此所有者的 tailnet 是唯一的保护措施。

评论

支持 Markdown