{"id":"agent-heartbeats","repo":"panrafal/paseo-plugins","url":"https://github.com/panrafal/paseo-plugins/tree/main/agent-heartbeats","name":"agent-heartbeats","description":"Composer pill with the heartbeat count, plus a panel to list, create, edit, and delete that agent's heartbeats.","categories":["productivity"],"platforms":[],"caveats":["Changing a heartbeat prompt or max-run count creates a replacement and resets run history"],"images":["https://raw.githubusercontent.com/panrafal/paseo-plugins/004c6a80c6aa8e76bb563694c3eee5c2c0b0466f/agent-heartbeats/images/agent-heartbeats-panel.png","https://raw.githubusercontent.com/panrafal/paseo-plugins/004c6a80c6aa8e76bb563694c3eee5c2c0b0466f/agent-heartbeats/images/agent-heartbeats-pill.png"],"themes":[],"health":{"manifestValid":true,"hasReadme":true,"hasLicense":true,"hasTests":false,"hasTypecheckScript":true,"updatedRecently":true},"scannedAt":"2026-10-15T12:28:54.522Z","addedAt":"2026-09-10T11:29:03+03:00","path":"agent-heartbeats","version":"0.1.0","security":{"status":"failed","blockingFindings":1,"advisoryFindings":0,"scannedAt":"2026-10-15T12:14:24.405Z","commit":"004c6a80c6aa8e76bb563694c3eee5c2c0b0466f"},"author":"panrafal","license":"MIT","paseoVersionRequirement":">=0.7.2-0","descriptionNodes":[{"type":"text","text":"Composer pill with the heartbeat count, plus a panel to list, create, edit, and delete that agent's heartbeats."}],"caveatNodes":[[{"type":"text","text":"Changing a heartbeat prompt or max-run count creates a replacement and resets run history"}]],"manifest":{"id":"agent-heartbeats","requirements":{"paseo":">=0.7.2-0"}},"repoMeta":{"stars":6,"defaultBranch":"main","pushedAt":"2026-10-15T04:33:35Z"},"owner":{"login":"panrafal","avatarUrl":"https://avatars.githubusercontent.com/u/1268900?v=4"},"installNotesHtml":"<pre><code class=\"language-bash\">paseo plugin add panrafal/paseo-plugins:agent-heartbeats\n</code></pre>\n<p>From a checkout:</p>\n<pre><code class=\"language-bash\">npm install\nnpm run typecheck\npaseo plugin install /absolute/path/to/paseo-plugins/agent-heartbeats\npaseo plugin ls\n</code></pre>\n<p>After editing:</p>\n<pre><code class=\"language-bash\">npm run typecheck\npaseo plugin reload agent-heartbeats\npaseo plugin logs agent-heartbeats\n</code></pre>","limitationsNotesHtml":"<ul>\n<li>Completed heartbeats are not counted or listed.</li>\n<li>Changing a heartbeat prompt or maximum-run count creates a replacement and resets that\nheartbeat's run history. Cron-only edits keep history.</li>\n</ul>","readmeText":"# agent-heartbeats\n\nPaseo plugin that adds a compact heartbeat icon and count to every active agent's composer. Pressing\nthe pill opens an agent-scoped panel for reviewing and managing that agent's heartbeats.\n\n![Heartbeat pill](./images/agent-heartbeats-pill.png)\n![Heartbeats panel](./images/agent-heartbeats-panel.png)\n\n## Interface\n\n- The composer pill contains only a heartbeat icon and the number of currently scheduled\n  heartbeats.\n- The panel lists each prompt, human-readable cadence, raw cron expression, next run, completed run\n  count, and maximum run count.\n- Heartbeats can be edited or deleted. Cron-only edits preserve their run history. Paseo does not\n  expose prompt or maximum-run updates for heartbeats, so changing either creates a replacement and\n  resets the daemon's run history for that heartbeat.\n- The add form is always visible. Its schedule field accepts five-field cron, one-shot delays such as\n  `15m`, `15 minutes`, or `in one hour`, and recurring phrases such as `every 15 minutes`. Suggested\n  common schedules appear directly below the field.\n- One-shot delays are compiled to a UTC cron occurrence with a one-run limit. Recurring phrases are\n  accepted only when five-field cron can represent the interval exactly.\n\nThe count and panel refresh every 15 seconds and immediately after a mutation. Completed heartbeats\nare not counted or listed.\n\n## Runtime behavior\n\nThe plugin reads the daemon's atomic schedule records under `$PASEO_HOME/schedules` to list\nagent-target heartbeats, including heartbeats created outside this plugin. Mutations run Paseo's\nsupported `heartbeat create`, `heartbeat update`, and `heartbeat delete` commands without a shell,\nafter checking that the heartbeat belongs to the selected agent.\n\n## Limitations\n\n- Completed heartbeats are not counted or listed.\n- Changing a heartbeat prompt or maximum-run count creates a replacement and resets that\n  heartbeat's run history. Cron-only edits keep history.\n\n## Install\n\n```bash\npaseo plugin add panrafal/paseo-plugins:agent-heartbeats\n```\n\nFrom a checkout:\n\n```bash\nnpm install\nnpm run typecheck\npaseo plugin install /absolute/path/to/paseo-plugins/agent-heartbeats\npaseo plugin ls\n```\n\nAfter editing:\n\n```bash\nnpm run typecheck\npaseo plugin reload agent-heartbeats\npaseo plugin logs agent-heartbeats\n```\n"}