Create a new heartbeat (proactive agent scheduled with a decision prompt) for EvoNexus. Guides the user through picking an agent, setting interval, wake triggers, and the decision prompt that governs when the agent acts. Writes to config/heartbeats.yaml with pydantic validation.
SkillScore86Maintained
Automatic
◆AI Engineer pack
Last verified 8/19/2026
What it changes
Passed 17 of 20 test cases with the skill, and 7 of 20 without it.
Without skill36%
With skill86%
Checks it passed that the model alone missed
Restarts the dashboard
Sets timeout_seconds to 600
Sets interval_seconds to 7200
and 11 more in the full report
11 fixed8 passed either way3 still failing0 broke
Pass-rate lift
+50 pp
Tokens
-2%
Agent turns
0%
Response time
-63%
Model gemini-3.6-flashMeasured 8/19/2026v119 of 22 cases passed with skill · 20 comparable
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 10 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 10
Prompt
After testing a heartbeat manually and verifying decision quality, what two actions complete enabling it?
What was checked, without and with the skill
Checked
Without skill
With skill
Flips enabled to true in config/heartbeats.yaml
Missed
Passed
Restarts the dashboard
Missed
Passed
case-21 · gemini-3.6-flash · 8/19/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md93 linessingle file
Create Heartbeat
Auth note: For any API calls use from dashboard.backend.sdk_client import evo — auto-handles URL + auth, no Bearer token needed in code.
Create a new heartbeat — a proactive agent that wakes on a schedule, runs the 9-step protocol, and decides whether to act.
When to use
Use heartbeats when:
The agent should check state and conditionally act (e.g., Atlas checks Linear for blockers)
You want no work when state is calm (vs routines which always run)
The same topic is picked from an inbox of tickets (heartbeats query tickets in step 3)
Don't use heartbeats for:
Deterministic scheduled jobs (use a routine)
One-off actions (use a skill or ticket)
Step 1: Understand the trigger
Ask the user:
Which agent? List agents from .claude/agents/*.md. Suggest by domain:
atlas-project — project tracking (Linear, GitHub)
flux-finance — payments, billing
zara-cs — support queue
pulse-community — community sentiment
pixel-social-media — scheduled posting
How often? Interval in minutes / hours. Min 60s. Typical: 2h, 4h, 6h.
What state to check? This becomes the decision_prompt.
Link to a goal? Optional goal_id for context injection. Skip if no goal fits.
Step 2: Compose the decision prompt
The decision_prompt is injected into the agent's context and asks the agent:
"Given the current state of [X], should you act? If yes, do the work and report. If no, explain briefly and skip."
Good decision prompts are specific:
✅ "Check Linear for issues in In Progress assigned to an unresponsive person (> 48h inactive) or blocked > 24h. If any, create action items and notify Davidson. Otherwise skip."