chengyongru fe2af64e04 refactor(heartbeat): migrate heartbeat service to cron-based auto-registration
Remove standalone nanobot/heartbeat/ service and replace it with an
auto-registered system cron job on gateway startup. Key behaviors preserved:

- HeartbeatConfig (enabled, interval_s, keep_recent_messages) remains in
  GatewayConfig for backward compatibility.
- On startup, if enabled, a system cron job "heartbeat" is registered with
  schedule derived from interval_s.
- HEARTBEAT.md is checked on each tick; empty/template-identical files skip
  to avoid wasting LLM calls.
- Post-run evaluate_response and session history truncation
  (keep_recent_messages) are retained.
- Delivery target selection, deliverable filtering, and preamble guidance
  are preserved.

Files removed:
- nanobot/heartbeat/__init__.py
- nanobot/heartbeat/service.py
- tests/heartbeat/*
- tests/agent/test_heartbeat_service.py

Templates and docs updated to reflect cron-based usage.
2026-05-28 20:20:28 +08:00
..

nanobot Docs

For the latest documentation, visit nanobot.wiki.

The pages in this directory track the current repository and may move faster than the published website.

Core Docs

Start here for setup, everyday usage, and deployment.

Topic Repo docs What it covers
Install and quick start quick-start.md Installation, onboarding, and first-run setup
Chat apps chat-apps.md Connect nanobot to Telegram, Discord, WeChat, and more
Agent social network agent-social-network.md Join external agent communities from nanobot
Configuration configuration.md Providers, tools, channels, MCP, and runtime settings
Image generation image-generation.md Configure image providers, WebUI image mode, and generated artifacts
WebUI ../webui/README.md Open the bundled browser UI; LAN access; Vite dev server for contributors
Multiple instances multiple-instances.md Run isolated bots with separate configs and workspaces
CLI reference cli-reference.md Core CLI commands and common entrypoints
In-chat commands chat-commands.md Slash commands and periodic task behavior
OpenAI-compatible API openai-api.md Local API endpoints, request format, and file uploads
Deployment deployment.md Docker, Linux service, and macOS LaunchAgent setup

Advanced Docs

Use these when you want deeper customization, integration, or extension details.

Topic Repo docs What it covers
Memory memory.md How nanobot stores, consolidates, and restores memory
Python SDK python-sdk.md Use nanobot programmatically from Python
Channel plugin guide channel-plugin-guide.md Build and test custom chat channel plugins
WebSocket channel websocket.md Real-time WebSocket access and protocol details
Custom tools my-tool.md Inspect and tune runtime state with the my tool