Back to skills
SKILL.md
Goal Heartbeat
ASecurity多目标轮转心跳引擎。当 cron 心跳触发、或 Agent 需要自主决定下一步行动时自动调用。提供:骰子随机模式选择、目标健康度追踪、防重复机制、接力棒续跑、产出质量红线。适用于任何需要在多个长期目标间智能轮转、持续产出的 AI Agent 系统。
- 14 stars
- 0 votes
- 0 copies
- 4 views
- Added September 7, 2026
Security analysis
100/100Pro scans all 5 files and shows the line behind each finding
npx -y skills add modbender/skill-library-mcp --skill goal-heartbeat --agent claude-codeAre you the author of Goal Heartbeat?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/modbender-goal-heartbeat)---
name: "goal-heartbeat-engine"
description: "多目标轮转心跳引擎。当 cron 心跳触发、或 Agent 需要自主决定下一步行动时自动调用。提供:骰子随机模式选择、目标健康度追踪、防重复机制、接力棒续跑、产出质量红线。适用于任何需要在多个长期目标间智能轮转、持续产出的 AI Agent 系统。"
author: "Wilsonsliu95 (https://github.com/WilsonLiu95)"
---
# Goal Heartbeat Engine
> **铁律:每次心跳 = 至少一个有形产出。"什么都不做"是不可达状态。**
---
## 概述
心跳引擎是一个**多目标轮转状态机**,让 AI Agent 在多个长期目标间智能分配注意力,确保每次执行都有实质性产出。
**运行时数据位置**(本 Skill 只定义算法,数据在 workspace 下):
- `workspace/memory/PULSE.md` — 状态机(轮转计数、接力棒、防重复记录)
- `workspace/memory/GOALS.md` — 目标看板(G1-G4 里程碑 + 子任务进度)
**核心机制**:
- 🎲 骰子随机 — 5 种模式等概率分配,避免路径依赖
- 📊 健康度追踪 — STARVED/COLD/OK/HOT 四级预警
- 🔄 防重复 — 硬性规则阻止重复劳动
- 🏃 接力棒 — 跨心跳任务续跑
**触发方式**:cron 自动触发(非人工调用)
---
## 心跳执行算法(六步状态机)
### Step 0: 读取状态(强制)
```
读 PULSE.md:
- 上次心跳做了什么?
- 哪个目标最饥饿?
- 接力棒是什么?等了几次?
- 近10次产出有没有重复模式?
读 GOALS.md:
- 有没有未勾选的子任务?
- 健康仪表盘哪个目标 STARVED?
检查紧急事项:
- 主人有未回复消息?→ 立即回复(≤30秒)
- 有任务失败/异常?→ 处理
```
### Step 1: 掷骰子,决定模式
```
执行: date +%s
取末两位数字作为 dice_roll (00-99)
模式决策表:
00-19 (20%): 🚀「大力出奇迹」— 做一件大胆的、可能改变轨迹的事
20-39 (20%): 🎲「随机深潜」— 从种子关键词表随机选,探索未知
40-59 (20%): 🏃「接力续跑」— 执行 PULSE.md 中的接力棒
60-79 (20%): 📈「补位推进」— 服务最饥饿(STARVED/COLD)的目标
80-99 (20%): 🎁「给主人惊喜」— 创造主人没想到但会喜欢的价值
⚠️ 覆盖规则(优先级高于骰子):
- 接力棒等了 > 3次心跳 → 强制「接力续跑」
- 某目标24h内0次服务 → 强制该目标
- 防重复规则触发 → 切换目标或类型
```
### Step 2: 选定行动
根据模式选择具体行动:
- **🚀 大力出奇迹** → 参见 `references/action-protocols.md` 大力出奇迹协议
- **🎲 随机深潜** → 参见 `references/seed-keywords.md`,用 dice_roll 选关键词
- **🏃 接力续跑** → 执行 PULSE.md 中记录的接力棒
- **📈 补位推进** → 找 GOALS.md 中最饥饿目标的第一个未勾选子任务
- **🎁 给主人惊喜** → 参见 `references/action-protocols.md` 惊喜协议
### Step 3: 立即执行(≥5分钟深度工作)
```
不是"计划做",是"已经做了"
不是搜一次就完,是搜透、读透、产出
最低标准:
- 搜索 5+ 次(中英双语)
- 精读 2+ 篇全文
- 产出可保存的文件
```
### Step 4: 交付产出(必须有!至少一个)
```
产出类型(每次至少一个):
📄 调研笔记 / 竞品分析 / 论文摘要
🔧 脚本 / 工具 / 自动化改进
💡 洞察文档 + 行动建议
📊 数据整理 / 对比表
🎨 创意方案 / 产品 idea
🛠️ 原型 / demo / PoC
文件命名:{主题}-{YYYY-MM-DD-HHMM}.md
```
### Step 5: 更新状态(闭环)
```
必须全部完成:
✏️ 更新 PULSE.md:
- 「上次心跳」区块
- 目标轮转计数器(+1)
- 最近10次记录(追加,超10删最早)
- 接力棒状态
✏️ 更新 GOALS.md: 勾选完成的子任务
✏️ 写入 memory(学到了什么)
📱 值得告诉主人?→ 通知 ≤3行
```
### Step 6: 自检
```
□ 我产出了什么具体的东西?
□ 产出保存到了哪个文件?
□ PULSE.md 已更新?
□ 接力棒已写入?
□ GOALS.md 更新了?
□ 有值得告诉主人的发现吗?
六个都打勾才算完成。少一个 = 没完成,补上再退出。
```
---
## 质量红线
### ✅ 合格的心跳产出
- 搜索 5+ 次(中英双语),精读 2+ 篇全文
- 产出可保存的文件
- 有新的 insight,不是重复已知信息
- 推进了某个目标的具体进度
- PULSE.md 已正确更新
### ❌ 不合格(必须重做)
- "检查了一下,没什么新的" ← **不存在**
- "计划下次做 XX" ← 计划不是产出
- 搜了 1-2 次就下结论 ← 不够深
- 和上次心跳做了一模一样的事 ← 没进步
- 没更新 PULSE.md ← 流程违规
---
## PULSE.md 模板
新用户初始化时,在 `workspace/memory/` 下创建 `PULSE.md`:
```markdown
# PULSE.md - 心跳状态机
_每次心跳第一步:读这个文件。最后一步:更新这个文件。_
---
## 上次心跳
- **时间**: (等待第一次心跳)
- **服务目标**: -
- **执行动作**: -
- **产出文件**: -
- **接力棒**: 系统初始化,任选一个目标开始
---
## 目标轮转计数器
| 目标 | 上次服务 | 7日服务次数 | 健康度 |
|------|---------|-----------|--------|
| (从 GOALS.md 读取目标列表填入) |
**健康度规则**:
- 🔴 STARVED (< 2次/7天) → 必须优先
- 🟡 COLD (2-3次) → 关注
- 🟢 OK (4-7次) → 正常轮转
- 🔵 HOT (8+次) → 让位
---
## 最近10次心跳记录
| # | 时间 | 目标 | 产出 | 类型 |
|---|------|------|------|------|
| (等待第一次心跳) |
---
## 防重复规则(硬性执行)
1. 连续3次同一目标 → 必须切换
2. 连续3次同类型产出 → 必须切换
3. 近10次中「调研」>5次 → 下次必须是脚本/工具/原型/创意
4. 接力棒等>3次心跳 → 强制「接力续跑」
---
## 接力棒状态
- **当前接力棒**: (初始化)
- **等待心跳数**: 0
- **来源**: 初始化
```
---
## 通知规则
- **有价值的发现** → 简短通知(≤3行)
- **日常推进** → 只记录,不打扰
- **重大发现** → 立即通知
- **安静时间 (23:00—08:00)** → 不发通知,早上汇总
---
## 永不空转保底
如果走完 Step 0-2 仍无法决定,执行紧急协议:
```
date +%s 取末位 (0-9):
0: 搜最新 AI 论文总结
1: 随机选一个竞品做深度调研
2: 分析今天最佳产品发布
3: 试用 GitHub trending 排名第一的 AI 仓库
4: 整理本地周末活动推荐
5: 写一个自动化脚本
6: 搜一条新技术洞察
7: 读 Hacker News 头条写分析
8: 试用一个没用过的已安装 Skill
9: 搜最新相关专利
```
**这是最后防线。必须选一个。"没事可做"不是选项。**
---
## 参考文档
- `references/action-protocols.md` — 大力出奇迹协议 + 惊喜协议
- `references/seed-keywords.md` — 随机深潜种子关键词表(用户自定义)
Files in this skill
- SKILL.md
- agents/openai.yaml
- references/action-protocols.md
- references/seed-keywords.md
- tests/test-heartbeat.mjs
Attribution
Comments
Loading comments…