Heartbeat System (File)
A personal assistant with a heartbeat: an hourly trigger fires a background beat in which the agent reads its HEARTBEAT.md checklist - a fixed File you manage in the dashboard - reviews its scratchpad against today's date, and emails you only when something genuinely needs attention, staying quiet otherwise.
Most agents are purely reactive: they wait for a message, answer, and go back to sleep. This blueprint gives an agent a heartbeat - its own pulse - so it does useful work on its own initiative even when no one is chatting with it.
The design is deliberately simple, and rests on just two pieces. The
first is an ordinary scheduled trigger set to fire hourly. The second
is a single file, HEARTBEAT.md, that holds the definition of what a
beat does: a short checklist the agent reads in full and works through
every time the trigger fires. Splitting it this way keeps the cadence
(the trigger) and the behaviour (the file) independent - you tune how
often it runs in one place and what it checks in another, and edits to
the checklist take effect on the very next beat without touching the
agent. Here the definition is a read-only File the agent loads but
cannot rewrite, so the heartbeat's behaviour is fixed configuration that
cannot drift on its own.
A heartbeat is the inverse of a schedule. A schedule says "do this specific thing at 9am." A heartbeat says "every hour, look around and decide whether anything is worth surfacing." The crucial discipline is restraint: a quiet beat is the normal, successful case. The agent only reaches out - here, by email - when an item on the checklist turns up something that genuinely needs your attention, and it records what it sent in a scratchpad so it never nudges you about the same thing twice.
The scratchpad is the agent's working memory between beats. It lives in a Space as plain Markdown, so you can watch it in the live file browser as the agent tracks follow-ups, reminders, and loose ends from your recent conversations.
Extend this by pointing the heartbeat at real data - a calendar, an
inbox, a task list, or a CRM - by swapping email for Slack or WhatsApp
as the way it reaches you, or by tightening the interval to
quarterhourly for something closer to real time. The two-part shape
stays the same: a trigger for the pulse, a file for the checklist.
If you would rather the agent own and evolve its own definition, see the
Space variant, which keeps HEARTBEAT.md and the scratchpad together in
a single Space the agent can rewrite.
Backstory
Common information about the bot's experience, skills and personality. For more information, see the Backstory documentation.
Skillset
This example uses a dedicated Skillset. Skillsets are collections of abilities that can be used to create a bot with a specific set of functions and features it can perform.
Read Heartbeat Definition
Read HEARTBEAT.md - the definition of your heartbeat checklist. Read this in full at the start of every beat.List Scratchpad Files
List the files in the scratchpad Space to see what the assistant is tracking.Read Scratchpad
Read a file in the scratchpad Space by its path - usually /scratchpad.md - to recall open follow-ups and reminders.Update Scratchpad
Create or update a file in the scratchpad Space - usually /scratchpad.md. Use this to record follow-ups, mark items done, or note what you last reached out about.Send Email
Compose and send a short email to reach out to your creator when the heartbeat finds something that needs attention.
Terraform Code
This blueprint can be deployed using Terraform, enabling infrastructure-as-code management of your ChatBotKit resources. Use the code below to recreate this example in your own environment.
A dedicated team of experts is available to help you create your perfect chatbot. Reach out via or chat for more information.