heartbeat — community heartbeat, ai-secretary, community, ide skills, Claude Code, Cursor, Windsurf

v1.0.0

About this Skill

Perfect for Task Management Agents needing automated workflow integration with Gmail, Google Tasks, and Google Calendar. 30分ごとに秘書モードで Yamato/Gmail/Tasks/Calendar を巡回し、(1) yamato-check で明日の受取時間整合をチェック、(2) メール確認、(3) メール由来のタスク追加・更新の提案、(4) 必要な予定のカレンダー追加の提案、(5) 未完了タスクのリマインドを行う。書き込み操作は必ずユーザーの承認を得る。Google Drive と Contacts は対象外

yuiseki yuiseki
[0]
[0]
Updated: 3/11/2026

Killer-Skills Review

Decision support comes first. Repository text comes second.

Reference-Only Page Review Score: 7/11

This page remains useful for operators, but Killer-Skills treats it as reference material instead of a primary organic landing page.

Original recommendation layer Concrete use-case guidance Explicit limitations and caution
Review Score
7/11
Quality Score
36
Canonical Locale
ja
Detected Body Locale
ja

Perfect for Task Management Agents needing automated workflow integration with Gmail, Google Tasks, and Google Calendar. 30分ごとに秘書モードで Yamato/Gmail/Tasks/Calendar を巡回し、(1) yamato-check で明日の受取時間整合をチェック、(2) メール確認、(3) メール由来のタスク追加・更新の提案、(4) 必要な予定のカレンダー追加の提案、(5) 未完了タスクのリマインドを行う。書き込み操作は必ずユーザーの承認を得る。Google Drive と Contacts は対象外

Core Value

Empowers agents to streamline workflows by integrating with Google's suite of productivity tools, utilizing protocols such as Gmail API and Google Calendar API, and managing tasks through Google Tasks, all while automating task management processes.

Ideal Agent Persona

Perfect for Task Management Agents needing automated workflow integration with Gmail, Google Tasks, and Google Calendar.

Capabilities Granted for heartbeat

Automating task assignments from Gmail
Synchronizing Google Calendar events with task deadlines
Generating task reports from Google Tasks

! Prerequisites & Limits

  • Requires Gmail, Google Tasks, and Google Calendar integration
  • Excludes Google Drive and Contacts/People integration

Why this page is reference-only

  • - Current locale does not satisfy the locale-governance contract.
  • - The underlying skill quality score is below the review floor.

Source Boundary

The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.

After The Review

Decide The Next Action Before You Keep Reading Repository Material

Killer-Skills should not stop at opening repository instructions. It should help you decide whether to install this skill, when to cross-check against trusted collections, and when to move into workflow rollout.

Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is heartbeat?

Perfect for Task Management Agents needing automated workflow integration with Gmail, Google Tasks, and Google Calendar. 30分ごとに秘書モードで Yamato/Gmail/Tasks/Calendar を巡回し、(1) yamato-check で明日の受取時間整合をチェック、(2) メール確認、(3) メール由来のタスク追加・更新の提案、(4) 必要な予定のカレンダー追加の提案、(5) 未完了タスクのリマインドを行う。書き込み操作は必ずユーザーの承認を得る。Google Drive と Contacts は対象外

How do I install heartbeat?

Run the command: npx killer-skills add yuiseki/ai-secretary/heartbeat. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for heartbeat?

Key use cases include: Automating task assignments from Gmail, Synchronizing Google Calendar events with task deadlines, Generating task reports from Google Tasks.

Which IDEs are compatible with heartbeat?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for heartbeat?

Requires Gmail, Google Tasks, and Google Calendar integration. Excludes Google Drive and Contacts/People integration.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add yuiseki/ai-secretary/heartbeat. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use heartbeat immediately in the current project.

! Reference-Only Mode

This page remains useful for installation and reference, but Killer-Skills no longer treats it as a primary indexable landing page. Read the review above before relying on the upstream repository instructions.

Upstream Repository Material

The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.

Upstream Source

heartbeat

Install heartbeat, an AI agent skill for AI agent workflows and automation. Works with Claude Code, Cursor, and Windsurf with one-command setup.

SKILL.md
Readonly
Upstream Repository Material
The section below is imported from the upstream repository and should be treated as secondary evidence. Use the Killer-Skills review above as the primary layer for fit, risk, and installation decisions.
Supporting Evidence

Heartbeat Assistant Runbook

対象と非対象

  • 対象:
    • Gmail
    • Google Tasks
    • Google Calendar
  • 非対象:
    • Google Drive
    • Contacts/People

実行順序(固定)

  1. .codex/skills/weather/SKILL.md で天気を取得
  2. .codex/skills/news/SKILL.md でニュースを取得
  3. .codex/skills/gog-gmail/SKILL.md および .codex/skills/gog-calendar/SKILL.md で情報を取得
  4. .codex/skills/hatebu/SKILL.md (hatebu ls --json) でブックマークを取得
  5. .codex/skills/gyazo/SKILL.md (gyazo ls --limit 20 --json) でキャプチャを取得
  6. .codex/skills/gh-check-notification/SKILL.md および .codex/skills/gh-check-activity/SKILL.md で GitHub 状況を取得
  7. 取得した全情報を /home/yuiseki/Workspaces/.ai-secretary/heartbeat/cache/ に保存する
  8. メール内容からタスク追加・更新、予定追加の「提案リスト」を作成
  9. ユーザーに提案リストを提示し、承認を得る
  10. 承認された項目のみ、タスク・カレンダーに反映
  11. 未完了タスクをリマインド
  12. .codex/skills/yamato-check/SKILL.md で明日のヤマト受取時間を確認・必要なら変更を提案

前提

  • 実行バイナリは /home/yuiseki/bin/gog を使う。
  • API 操作は --account <email> を必ず付与する。
  • keyring backend が file のため、非 TTY では失敗することがある。
  • TTY でパスフレーズプロンプトが混ざる場合、JSON パース前に sed -n '/^{/,$p' を通す。
  • 必ず .env に書かれた GOG_KEYRING_PASSWORD を export する。
  • heartbeat の作業ディレクトリは /home/yuiseki/Workspaces/.ai-secretary/heartbeat を使う。
  • 取得した情報のキャッシュは /home/yuiseki/Workspaces/.ai-secretary/heartbeat/cache/ を使う。
  • 初回実行時に以下を作成する。
bash
1mkdir -p /home/yuiseki/Workspaces/.ai-secretary/heartbeat/cache 2mkdir -p /home/yuiseki/Workspaces/.ai-secretary/heartbeat/logs

状態ファイル(重複防止)

/home/yuiseki/Workspaces/.ai-secretary/heartbeat/state.json を使う。存在しない場合は初期化する。

json
1{ 2 "last_run_at": "", 3 "last_mail_scan_at": "", 4 "processed_thread_ids": [] 5}
  • processed_thread_ids は最新 200 件のみ保持する。
  • 同一スレッドを再処理しないことを最優先にする。
  • 実行ログは /home/yuiseki/Workspaces/.ai-secretary/heartbeat/logs/ に保存する。

Personalization Rules

  • ルールディレクトリ: /home/yuiseki/Workspaces/.ai-secretary/heartbeat/personalization-rules/
  • 各ルールは <rule-name>/RULE.md 形式で置く。
  • heartbeat 実行時はメール分類の前にルールを読み込む。
  • 競合時は「無視ルール(ignore)」を優先する。

読み込み確認例:

bash
1find /home/yuiseki/Workspaces/.ai-secretary/heartbeat/personalization-rules -name RULE.md -maxdepth 3 -type f

既知ルール例:

  • ignore-yamato: ヤマト運輸の「お荷物お届けのお知らせ」を無視する。
    • 判定目安: frommail@kuronekoyamato.co.jp かつ subjectお荷物お届けのお知らせ を含む。
    • 動作: 一般メール分類(タスク/予定化)では無視する。processed_thread_ids には記録して再判定を防ぐ。
    • 例外: yamato-check ステップでは必ず判定対象にする。
  • ignore-vercel: Vercel の Failed preview deployment 通知を無視する。
    • 判定目安: fromnotifications@vercel.com かつ subjectFailed preview deployment を含む。
    • 動作: タスク/カレンダー化しない。

30分ごとの実行手順

  1. 現在時刻と認証状態を確認する。
bash
1/home/yuiseki/bin/gog auth status 2/home/yuiseki/bin/gog time now --json
  1. 情報を順番に取得し、/home/yuiseki/Workspaces/.ai-secretary/heartbeat/cache/ に JSON 形式で保存する。
  • Weather: 現在地の天気を取得
    bash
    1weathercli --json > /home/yuiseki/Workspaces/.ai-secretary/heartbeat/cache/weather.json
  • News: 最新ニュースを取得
    bash
    1newscli --json > /home/yuiseki/Workspaces/.ai-secretary/heartbeat/cache/news.json
  • Gmail: newer_than:1d で最近のメールを取得
    bash
    1/home/yuiseki/bin/gog --account <email> gmail search 'newer_than:1d' --json | sed -n '/^{/,$p' > cache/gmail.json
  • Calendar: 今日の予定を取得
    bash
    1/home/yuiseki/bin/gog --account <email> calendar list --json | sed -n '/^{/,$p' > cache/calendar.json
  • Hatebu: 今日のブックマークを取得
    bash
    1hatebu ls --json > cache/hatebu.json
  • Gyazo: 直近の画像を取得
    bash
    1gyazo ls --limit 20 --json > cache/gyazo.json
  • GitHub: 通知と活動状況を取得
    bash
    1gh api notifications > cache/gh_notifications.json 2gh search prs --author "@me" --sort updated --limit 5 --json title,state,repository,updatedAt > cache/gh_prs.json 3gh search issues --author "@me" --sort updated --limit 5 --json title,state,repository,updatedAt > cache/gh_issues.json
  1. 取得した全情報を /home/yuiseki/Workspaces/.ai-secretary/heartbeat/cache/YYYY-MM-DD-HHMM.json としてアーカイブ保存する。

  2. Gmail の未処理スレッドを抽出し、Personalization Rules を適用して「反映案(提案リスト)」を作成する。

  • タスク化提案条件:
    • 返信・提出・確認・対応などの行動が必要
    • 期限や依頼が含まれる
  • カレンダー化提案条件:
    • 明確な日時(開始・終了、または日付)を含む予定
  1. ユーザーに提案リスト(タスク追加/更新、予定追加)および各ソース(Hatebu, Gyazo, GitHub)のサマリーを提示し、実行の是非を確認する。

  2. 承認された項目を反映する(重複防止付き)。

  • タスク反映: notes 末尾に必ず heartbeat-thread:<threadId> 等を残す。
  • カレンダー反映: calendar searchheartbeat-thread:<threadId> を検索し、重複を確認する。
  1. 未完了タスクをリマインドする。
  • tasks listneedsAction を列挙し、上位 5 件を通知する。
  • 未完了のToDoは .ai-secretary/heartbeat/todos/yyyy/mm/dd/todo.md にチェックボックス形式で書き溜める。
  1. yamato-check を実行する。
  • 明日以降のヤマト通知を確認する。
  • .codex/skills/gog-calendar/SKILL.md で明日の予定を確認する。
  • 既に受取日時を変更済みの場合はスキップする。
  • 受取時間にズレがあれば、変更案をユーザーに提示し、承認を得てから .codex/skills/yamato-change/SKILL.md を実行する。
  • 変更を行った場合は yuiseki@gmail.com に完了通知を送る。

実用コマンド例

タスクリスト ID(マイタスク)取得:

bash
1/home/yuiseki/bin/gog --account <email> tasks lists list --json \ 2| sed -n '/^{/,$p' \ 3| jq -r '.tasklists[] | select(.title=="マイタスク") | .id'

未完了タスク一覧:

bash
1/home/yuiseki/bin/gog --account <email> tasks list <tasklistId> --all --json \ 2| sed -n '/^{/,$p' \ 3| jq -r '.tasks // [] | map(select(.status=="needsAction"))'

カレンダー重複確認(thread ID をキーに照合):

bash
1/home/yuiseki/bin/gog --account <email> calendar search 'heartbeat-thread:<threadId>' --calendar primary --max 1 --json \ 2| sed -n '/^{/,$p'

出力フォーマット

各回の終了時に必ず次を報告する。

  • 実行時刻
  • yamato-check 確認対象件数
  • yamato-change 提案件数
  • Weather 現在の天候と気温
  • News 主要な見出し数点
  • 走査メール件数(提案・承認結果を含む)
  • Hatebu 今日取得した件数
  • Gyazo 直近のキャプチャ数
  • GitHub 未読通知件数および活動更新
  • 未完了タスクの要約(最大 5 件)
  • キャッシュ保存先 (cache/YYYY-MM-DD-HHMM.json)

運用ルール

  • ユーザーへの報告や提案、対話は、常に日本語(Japanese)で行うこと。
  • 全ての書き込み系操作(追加・更新・削除・設定変更)は、実行前に必ずユーザーに詳細を提示し、明示的な承認を得ること。
  • 曖昧なメールは勝手にカレンダー案に入れず、まずタスク案として提示する。
  • ヤマトの受取日時変更時、既に変更済みであれば何もしない。また、変更先に予定が競合する場合は必ずその情報を添えてユーザーに確認する。
  • ToDoの管理は Google Tasks と同期しつつ、.ai-secretary/heartbeat/todos/ 下の markdown ファイルにも記録・更新する。
  • 失敗時は処理を止めず、失敗した対象とエラーを報告して次へ進む。

Related Skills

Looking for an alternative to heartbeat or another community skill for your workflow? Explore these related open-source skills.

View All

openclaw-release-maintainer

Logo of openclaw
openclaw

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

333.8k
0
AI

widget-generator

Logo of f
f

Generate customizable widget plugins for the prompts.chat feed system

149.6k
0
AI

flags

Logo of vercel
vercel

The React Framework

138.4k
0
Browser

pr-review

Logo of pytorch
pytorch

Tensors and Dynamic neural networks in Python with strong GPU acceleration

98.6k
0
Developer