Files
Memoh/getting-started/heartbeat.html
T
2026-03-14 09:31:34 +00:00

26 lines
27 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Bot Heartbeat | Memoh Documentation</title>
<meta name="description" content="Multi-Member, Structured Long-Memory, Containerized AI Agent System.">
<meta name="generator" content="VitePress v1.6.4">
<link rel="preload stylesheet" href="/assets/style.B5ESegsT.css" as="style">
<link rel="preload stylesheet" href="/vp-icons.css" as="style">
<script type="module" src="/assets/app.vRX7s8uv.js"></script>
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/assets/chunks/theme.CWUcoPue.js">
<link rel="modulepreload" href="/assets/chunks/framework.BZohXCq9.js">
<link rel="modulepreload" href="/assets/getting-started_heartbeat.md.B-SMiJUD.lean.js">
<link rel="icon" href="/logo.png">
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-a7fd87cd><!--[--><!--]--><!--[--><span tabindex="-1" data-v-30be8b8e></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-30be8b8e>Skip to content</a><!--]--><!----><header class="VPNav" data-v-a7fd87cd data-v-5deba549><div class="VPNavBar" data-v-5deba549 data-v-c354117b><div class="wrapper" data-v-c354117b><div class="container" data-v-c354117b><div class="title" data-v-c354117b><div class="VPNavBarTitle has-sidebar" data-v-c354117b data-v-18435660><a class="title" href="/" data-v-18435660><!--[--><!--]--><!--[--><img class="VPImage logo" src="/logo.png" alt="Memoh" data-v-352814ec><!--]--><span data-v-18435660>Memoh</span><!--[--><!--]--></a></div></div><div class="content" data-v-c354117b><div class="content-body" data-v-c354117b><!--[--><!--]--><div class="VPNavBarSearch search" data-v-c354117b><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-c354117b data-v-dd886324><span id="main-nav-aria-label" class="visually-hidden" data-v-dd886324> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/" tabindex="0" data-v-dd886324 data-v-e7ad9d5b><!--[--><span data-v-e7ad9d5b>Guides</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/blogs/" tabindex="0" data-v-dd886324 data-v-e7ad9d5b><!--[--><span data-v-e7ad9d5b>Blogs</span><!--]--></a><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-c354117b data-v-916d5f13 data-v-93f94330><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-93f94330><span class="text" data-v-93f94330><span class="vpi-languages option-icon" data-v-93f94330></span><!----><span class="vpi-chevron-down text-icon" data-v-93f94330></span></span></button><div class="menu" data-v-93f94330><div class="VPMenu" data-v-93f94330 data-v-e75fc4a8><!----><!--[--><!--[--><div class="items" data-v-916d5f13><p class="title" data-v-916d5f13>English</p><!--[--><div class="VPMenuLink" data-v-916d5f13 data-v-f20f02ed><a class="VPLink link" href="/zh/getting-started/heartbeat.html" data-v-f20f02ed><!--[--><span data-v-f20f02ed>简体中文</span><!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-c354117b data-v-94cd6187><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-94cd6187 data-v-6dee01f2 data-v-6d4c42ba><span class="check" data-v-6d4c42ba><span class="icon" data-v-6d4c42ba><!--[--><span class="vpi-sun sun" data-v-6dee01f2></span><span class="vpi-moon moon" data-v-6dee01f2></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-c354117b data-v-cd484525 data-v-bbf2a784><!--[--><a class="VPSocialLink no-icon" href="https://github.com/memohai/Memoh" aria-label="github" target="_blank" rel="noopener" data-v-bbf2a784 data-v-a094361f><span class="vpi-social-github"></span></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-c354117b data-v-7a542967 data-v-93f94330><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-93f94330><span class="vpi-more-horizontal icon" data-v-93f94330></span></button><div class="menu" data-v-93f94330><div class="VPMenu" data-v-93f94330 data-v-e75fc4a8><!----><!--[--><!--[--><div class="group translations" data-v-7a542967><p class="trans-title" data-v-7a542967>English</p><!--[--><div class="VPMenuLink" data-v-7a542967 data-v-f20f02ed><a class="VPLink link" href="/zh/getting-started/heartbeat.html" data-v-f20f02ed><!--[--><span data-v-f20f02ed>简体中文</span><!--]--></a></div><!--]--></div><div class="group" data-v-7a542967><div class="item appearance" data-v-7a542967><p class="label" data-v-7a542967>Appearance</p><div class="appearance-action" data-v-7a542967><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-7a542967 data-v-6dee01f2 data-v-6d4c42ba><span class="check" data-v-6d4c42ba><span class="icon" data-v-6d4c42ba><!--[--><span class="vpi-sun sun" data-v-6dee01f2></span><span class="vpi-moon moon" data-v-6dee01f2></span><!--]--></span></span></button></div></div></div><div class="group" data-v-7a542967><div class="item social-links" data-v-7a542967><div class="VPSocialLinks social-links-list" data-v-7a542967 data-v-bbf2a784><!--[--><a class="VPSocialLink no-icon" href="https://github.com/memohai/Memoh" aria-label="github" target="_blank" rel="noopener" data-v-bbf2a784 data-v-a094361f><span class="vpi-social-github"></span></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-c354117b data-v-7aa6377b><span class="container" data-v-7aa6377b><span class="top" data-v-7aa6377b></span><span class="middle" data-v-7aa6377b></span><span class="bottom" data-v-7aa6377b></span></span></button></div></div></div></div><div class="divider" data-v-c354117b><div class="divider-line" data-v-c354117b></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-a7fd87cd data-v-20ac656e><div class="container" data-v-20ac656e><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-20ac656e><span class="vpi-align-left menu-icon" data-v-20ac656e></span><span class="menu-text" data-v-20ac656e>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-20ac656e data-v-d5f98606><button data-v-d5f98606>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-a7fd87cd data-v-feb7a153><div class="curtain" data-v-feb7a153></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-feb7a153><span class="visually-hidden" id="sidebar-aria-label" data-v-feb7a153> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-93f78773><section class="VPSidebarItem level-0" data-v-93f78773 data-v-904fc2f6><!----><div class="items" data-v-904fc2f6><!--[--><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/index.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/about.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>About Memoh</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-93f78773><section class="VPSidebarItem level-0" data-v-93f78773 data-v-904fc2f6><div class="item" role="button" tabindex="0" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><h2 class="text" data-v-904fc2f6>Installation</h2><!----></div><div class="items" data-v-904fc2f6><!--[--><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/installation/docker.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Docker</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-93f78773><section class="VPSidebarItem level-0 has-active" data-v-93f78773 data-v-904fc2f6><div class="item" role="button" tabindex="0" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><h2 class="text" data-v-904fc2f6>Getting Started</h2><!----></div><div class="items" data-v-904fc2f6><!--[--><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/provider-and-model.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>LLM Provider and Model</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/bot.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Bot Management</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/container.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Container Management</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/files.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Files Management</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/skills.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Bot Skills</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/mcp.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>MCP Connections</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/channels.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Bot Channels</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/browser.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Browser Contexts</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/memory.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Memory Management</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/subagents.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Subagents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/heartbeat.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Heartbeat</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/schedule.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Scheduled Tasks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/search-provider.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Search Providers</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/getting-started/email.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Email Providers</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-93f78773><section class="VPSidebarItem level-0" data-v-93f78773 data-v-904fc2f6><div class="item" role="button" tabindex="0" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><h2 class="text" data-v-904fc2f6>Memory Providers</h2><!----></div><div class="items" data-v-904fc2f6><!--[--><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/memory-providers/index.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/memory-providers/builtin.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Built-in</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-93f78773><section class="VPSidebarItem level-0" data-v-93f78773 data-v-904fc2f6><div class="item" role="button" tabindex="0" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><h2 class="text" data-v-904fc2f6>Channels</h2><!----></div><div class="items" data-v-904fc2f6><!--[--><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/channels/index.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/channels/telegram.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Telegram</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/channels/feishu.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Feishu (Lark)</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/channels/discord.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>Discord</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-904fc2f6 data-v-904fc2f6><div class="item" data-v-904fc2f6><div class="indicator" data-v-904fc2f6></div><a class="VPLink link link" href="/channels/qq.html" data-v-904fc2f6><!--[--><p class="text" data-v-904fc2f6>QQ</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-a7fd87cd data-v-6a539cd2><div class="VPDoc has-sidebar has-aside" data-v-6a539cd2 data-v-db8bf443><!--[--><!--]--><div class="container" data-v-db8bf443><div class="aside" data-v-db8bf443><div class="aside-curtain" data-v-db8bf443></div><div class="aside-container" data-v-db8bf443><div class="aside-content" data-v-db8bf443><div class="VPDocAside" data-v-db8bf443 data-v-f268a203><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-f268a203 data-v-b67a6837><div class="content" data-v-b67a6837><div class="outline-marker" data-v-b67a6837></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-b67a6837>On this page</div><ul class="VPDocOutlineItem root" data-v-b67a6837 data-v-b4af7dc9><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-f268a203></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-db8bf443><div class="content-container" data-v-db8bf443><!--[--><!--]--><main class="main" data-v-db8bf443><div style="position:relative;" class="vp-doc _getting-started_heartbeat" data-v-db8bf443><div><h1 id="bot-heartbeat" tabindex="-1">Bot Heartbeat <a class="header-anchor" href="#bot-heartbeat" aria-label="Permalink to &quot;Bot Heartbeat&quot;"></a></h1><p>The <strong>Heartbeat</strong> feature allows you to schedule periodic tasks for your Bot, enabling it to perform autonomous actions even when you aren&#39;t chatting with it.</p><h2 id="concept-scheduled-autonomy" tabindex="-1">Concept: Scheduled Autonomy <a class="header-anchor" href="#concept-scheduled-autonomy" aria-label="Permalink to &quot;Concept: Scheduled Autonomy&quot;"></a></h2><p>A <strong>Heartbeat</strong> is a recurring trigger that prompts the bot to &quot;think&quot; and execute its skills or tools at a set interval. This is useful for:</p><ul><li>Periodic status checks</li><li>Automatic data collection</li><li>Cleaning up the filesystem</li><li>Sending scheduled notifications</li></ul><hr><h2 id="configuration" tabindex="-1">Configuration <a class="header-anchor" href="#configuration" aria-label="Permalink to &quot;Configuration&quot;"></a></h2><p>Configure the heartbeat from the <strong>Heartbeat</strong> tab in the Bot Detail page.</p><table tabindex="0"><thead><tr><th>Field</th><th>Description</th></tr></thead><tbody><tr><td><strong>Enabled</strong></td><td>Toggle the heartbeat on or off.</td></tr><tr><td><strong>Interval</strong></td><td>How often (in minutes) the heartbeat should trigger. The default is <strong>30 minutes</strong>.</td></tr><tr><td><strong>Model</strong></td><td>The LLM used to execute the heartbeat task. This can be different from the main chat model.</td></tr></tbody></table><hr><h2 id="logs-and-monitoring" tabindex="-1">Logs and Monitoring <a class="header-anchor" href="#logs-and-monitoring" aria-label="Permalink to &quot;Logs and Monitoring&quot;"></a></h2><p>The Heartbeat tab provides a detailed audit log of every execution:</p><ul><li><strong>Status</strong>: Whether the heartbeat completed successfully (<code>ok</code>), encountered an issue (<code>alert</code>), or failed (<code>error</code>).</li><li><strong>Time</strong>: When the heartbeat was triggered.</li><li><strong>Duration</strong>: How long the bot took to process the task.</li><li><strong>Result</strong>: A summary of the bot&#39;s action or response during that heartbeat.</li></ul><h3 id="managing-logs" tabindex="-1">Managing Logs <a class="header-anchor" href="#managing-logs" aria-label="Permalink to &quot;Managing Logs&quot;"></a></h3><ul><li><strong>Filter by Status</strong>: Quickly find errors or alerts.</li><li><strong>Refresh</strong>: Load the latest log entries.</li><li><strong>Clear Logs</strong>: Remove old heartbeat records to keep the interface clean.</li><li><strong>Load More</strong>: View older history.</li></ul><hr><h2 id="bot-interaction" tabindex="-1">Bot Interaction <a class="header-anchor" href="#bot-interaction" aria-label="Permalink to &quot;Bot Interaction&quot;"></a></h2><ul><li>During a heartbeat, the bot receives a special system prompt that it should perform its &quot;routine&quot; tasks.</li><li>The bot can use any of its assigned <strong>Skills</strong> or <strong>MCP tools</strong> during a heartbeat.</li><li>Heartbeat logs provide the &quot;memory&quot; of the bot&#39;s autonomous activities.</li></ul></div></div></main><footer class="VPDocFooter" data-v-db8bf443 data-v-d067bba9><!--[--><!--]--><div class="edit-info" data-v-d067bba9><div class="edit-link" data-v-d067bba9><a class="VPLink link vp-external-link-icon no-icon edit-link-button" href="https://github.com/memohai/Memoh/edit/main/docs/docs/getting-started/heartbeat.md" target="_blank" rel="noreferrer" data-v-d067bba9><!--[--><span class="vpi-square-pen edit-link-icon" data-v-d067bba9></span> Edit on GitHub<!--]--></a></div><div class="last-updated" data-v-d067bba9><p class="VPLastUpdated" data-v-d067bba9 data-v-5d56f43a>Last Updated: <time datetime="2026-03-01T10:01:03.000Z" data-v-5d56f43a></time></p></div></div><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-d067bba9><span class="visually-hidden" id="doc-footer-aria-label" data-v-d067bba9>Pager</span><div class="pager" data-v-d067bba9><a class="VPLink link pager-link prev" href="/getting-started/subagents.html" data-v-d067bba9><!--[--><span class="desc" data-v-d067bba9>Previous page</span><span class="title" data-v-d067bba9>Subagents</span><!--]--></a></div><div class="pager" data-v-d067bba9><a class="VPLink link pager-link next" href="/getting-started/schedule.html" data-v-d067bba9><!--[--><span class="desc" data-v-d067bba9>Next page</span><span class="title" data-v-d067bba9>Scheduled Tasks</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-a7fd87cd data-v-a4a6e223><div class="container" data-v-a4a6e223><p class="message" data-v-a4a6e223>Published under AGPLv3</p><p class="copyright" data-v-a4a6e223>Copyright © 2024 Memoh</p></div></footer><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"about.md\":\"Dtv0dtOs\",\"blogs_2026-02-16.md\":\"cjgZmunL\",\"blogs_index.md\":\"B2P01evP\",\"channels_discord.md\":\"WNpdGj29\",\"channels_feishu.md\":\"BBJ8KQPd\",\"channels_index.md\":\"T_VHXXZf\",\"channels_qq.md\":\"B_4bodh-\",\"channels_telegram.md\":\"B9i-uoiX\",\"getting-started_bot.md\":\"AR4RHnpe\",\"getting-started_browser.md\":\"B8YEEooM\",\"getting-started_channels.md\":\"C0YPWL-y\",\"getting-started_container.md\":\"D49M0dHe\",\"getting-started_email.md\":\"BRkUZLh2\",\"getting-started_files.md\":\"CczR71or\",\"getting-started_heartbeat.md\":\"B-SMiJUD\",\"getting-started_mcp.md\":\"Bb2toM2o\",\"getting-started_memory.md\":\"Dt7Ez9Lk\",\"getting-started_provider-and-model.md\":\"BquaPnJe\",\"getting-started_schedule.md\":\"CNDu3SiN\",\"getting-started_search-provider.md\":\"R9B5DkBj\",\"getting-started_skills.md\":\"DzSZ-qiC\",\"getting-started_subagents.md\":\"6oBLlW8a\",\"index.md\":\"D1yGsPie\",\"installation_docker.md\":\"CO5FeqPE\",\"memory-providers_builtin.md\":\"BDxazTz6\",\"memory-providers_index.md\":\"DNPBOVmb\",\"zh_concepts_identity-and-binding.md\":\"7e9GdoK6\",\"zh_concepts_index.md\":\"Brd21jcS\",\"zh_index.md\":\"CZQRt_rQ\",\"zh_style_terminology.md\":\"DLv5QofI\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Memoh Documentation\",\"description\":\"Multi-Member, Structured Long-Memory, Containerized AI Agent System.\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"siteTitle\":\"Memoh\",\"sidebar\":{\"/blogs/\":[{\"text\":\"Blogs\",\"link\":\"/blogs/index.md\",\"items\":[{\"text\":\"Introduction (Feb 2026)\",\"link\":\"/blogs/2026-02-16.md\"}]}],\"/\":[{\"text\":\"Overview\",\"link\":\"/index.md\"},{\"text\":\"About Memoh\",\"link\":\"/about.md\"},{\"text\":\"Installation\",\"items\":[{\"text\":\"Docker\",\"link\":\"/installation/docker.md\"}]},{\"text\":\"Getting Started\",\"items\":[{\"text\":\"LLM Provider and Model\",\"link\":\"/getting-started/provider-and-model.md\"},{\"text\":\"Bot Management\",\"link\":\"/getting-started/bot.md\"},{\"text\":\"Container Management\",\"link\":\"/getting-started/container.md\"},{\"text\":\"Files Management\",\"link\":\"/getting-started/files.md\"},{\"text\":\"Bot Skills\",\"link\":\"/getting-started/skills.md\"},{\"text\":\"MCP Connections\",\"link\":\"/getting-started/mcp.md\"},{\"text\":\"Bot Channels\",\"link\":\"/getting-started/channels.md\"},{\"text\":\"Browser Contexts\",\"link\":\"/getting-started/browser.md\"},{\"text\":\"Memory Management\",\"link\":\"/getting-started/memory.md\"},{\"text\":\"Subagents\",\"link\":\"/getting-started/subagents.md\"},{\"text\":\"Heartbeat\",\"link\":\"/getting-started/heartbeat.md\"},{\"text\":\"Scheduled Tasks\",\"link\":\"/getting-started/schedule.md\"},{\"text\":\"Search Providers\",\"link\":\"/getting-started/search-provider.md\"},{\"text\":\"Email Providers\",\"link\":\"/getting-started/email.md\"}]},{\"text\":\"Memory Providers\",\"items\":[{\"text\":\"Overview\",\"link\":\"/memory-providers/index.md\"},{\"text\":\"Built-in\",\"link\":\"/memory-providers/builtin.md\"}]},{\"text\":\"Channels\",\"items\":[{\"text\":\"Overview\",\"link\":\"/channels/index.md\"},{\"text\":\"Telegram\",\"link\":\"/channels/telegram.md\"},{\"text\":\"Feishu (Lark)\",\"link\":\"/channels/feishu.md\"},{\"text\":\"Discord\",\"link\":\"/channels/discord.md\"},{\"text\":\"QQ\",\"link\":\"/channels/qq.md\"}]}],\"/zh/\":[{\"text\":\"文档总览\",\"link\":\"/zh/index.md\"}]},\"nav\":[{\"text\":\"Guides\",\"link\":\"/\"},{\"text\":\"Blogs\",\"link\":\"/blogs/\"}],\"logo\":{\"src\":\"/logo.png\",\"alt\":\"Memoh\"},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/memohai/Memoh\"}],\"footer\":{\"message\":\"Published under AGPLv3\",\"copyright\":\"Copyright © 2024 Memoh\"},\"search\":{\"provider\":\"local\"},\"editLink\":{\"pattern\":\"https://github.com/memohai/Memoh/edit/main/docs/docs/:path\",\"text\":\"Edit on GitHub\"},\"lastUpdated\":{\"text\":\"Last Updated\",\"formatOptions\":{\"dateStyle\":\"short\",\"timeStyle\":\"medium\"}}},\"locales\":{\"root\":{\"label\":\"English\",\"lang\":\"en\"},\"zh\":{\"label\":\"简体中文\",\"lang\":\"zh\"}},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
</body>
</html>