<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="rss.xsl"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>ActonOS Documentation Blog</title>
        <link>https://actonos.github.io/docs/blog</link>
        <description>ActonOS Documentation Blog</description>
        <lastBuildDate>Sun, 23 Aug 2026 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <item>
            <title><![CDATA[Announcing ActonOS v0.1: The AI-Native Operating System]]></title>
            <link>https://actonos.github.io/docs/blog/announcing-actonos-v0-1</link>
            <guid>https://actonos.github.io/docs/blog/announcing-actonos-v0-1</guid>
            <pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[We are thrilled to announce the official release of ActonOS v0.1 — the open-source, AI-native operating system designed to run autonomous multi-agent swarms 24/7 on dedicated MiniPC hardware and containerized Docker hosts.]]></description>
            <content:encoded><![CDATA[<p>We are thrilled to announce the official release of <strong>ActonOS v0.1</strong> — the open-source, AI-native operating system designed to run autonomous multi-agent swarms 24/7 on dedicated MiniPC hardware and containerized Docker hosts.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="why-an-ai-native-operating-system">Why an AI-Native Operating System?<a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#why-an-ai-native-operating-system" class="hash-link" aria-label="Direct link to Why an AI-Native Operating System?" title="Direct link to Why an AI-Native Operating System?" translate="no">​</a></h2>
<p>Current AI agent frameworks typically operate as Python CLI wrappers or desktop applications that execute untrusted scripts directly in user environments. While convenient for quick experimentation, this paradigm suffers from critical limitations when running autonomous systems long-term:</p>
<ol>
<li class=""><strong>Lack of Isolation</strong>: Scripts running directly on host machines can accidentally delete files or exhaust CPU/RAM resources.</li>
<li class=""><strong>Plaintext Secrets</strong>: API keys and OAuth tokens are frequently stored unencrypted in <code>.env</code> files or JSON configs.</li>
<li class=""><strong>Fragile State &amp; Restarts</strong>: Crashes or power cuts erase running tasks without durable checkpoint recovery.</li>
<li class=""><strong>Complex Network Setup</strong>: Exposing agents across private home networks often requires insecure port forwarding.</li>
</ol>
<p><strong>ActonOS rethinks this from the ground up</strong> by placing agents, sandboxed tooling runtimes, hybrid semantic memory, and hardware-bound encryption directly into the core operating system layer.</p>
<!-- -->
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="key-highlights-of-actonos-v01">Key Highlights of ActonOS v0.1<a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#key-highlights-of-actonos-v01" class="hash-link" aria-label="Direct link to Key Highlights of ActonOS v0.1" title="Direct link to Key Highlights of ActonOS v0.1" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-dual-runtime-hardware-abstraction-layer-hal">1. Dual-Runtime Hardware Abstraction Layer (HAL)<a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#1-dual-runtime-hardware-abstraction-layer-hal" class="hash-link" aria-label="Direct link to 1. Dual-Runtime Hardware Abstraction Layer (HAL)" title="Direct link to 1. Dual-Runtime Hardware Abstraction Layer (HAL)" translate="no">​</a></h3>
<p>ActonOS compiles into a single static Go daemon (<code>actond</code>, <code>CGO_ENABLED=0</code>) that automatically detects whether it is running on <strong>Bare-Metal MiniPC hardware</strong> or inside a <strong>Docker Container</strong>:</p>
<ul>
<li class="">On Bare-Metal MiniPCs, it interfaces with Linux D-Bus, manages Wi-Fi Captive Portal hotspots (<code>ActonOS-XXXX</code>), enforces Bubblewrap namespaces, and governs CPU/RAM limits via Cgroups v2.</li>
<li class="">In Docker, it provides a pre-configured, batteries-included agent runtime with Python, Node.js, Chromium, and Ripgrep.</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-multi-agent-swarm--delegation">2. Multi-Agent Swarm &amp; Delegation<a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#2-multi-agent-swarm--delegation" class="hash-link" aria-label="Direct link to 2. Multi-Agent Swarm &amp; Delegation" title="Direct link to 2. Multi-Agent Swarm &amp; Delegation" translate="no">​</a></h3>
<p>Create unlimited AI agents with custom personas, LLM cascade routers (OpenAI, Claude, Gemini, DeepSeek, Ollama), and tool scopes. Agents can delegate tasks to specialized child agents concurrently via Go Goroutines, with structured approval ledgers for high-risk mutations.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-dynamic-tooling-hub-mcp-wasm--skills">3. Dynamic Tooling Hub (MCP, WASM &amp; Skills)<a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#3-dynamic-tooling-hub-mcp-wasm--skills" class="hash-link" aria-label="Direct link to 3. Dynamic Tooling Hub (MCP, WASM &amp; Skills)" title="Direct link to 3. Dynamic Tooling Hub (MCP, WASM &amp; Skills)" translate="no">​</a></h3>
<p>Hot-load external capabilities at runtime without restarting the daemon:</p>
<ul>
<li class=""><strong>Model Context Protocol (MCP)</strong>: Native stdio and HTTP/SSE JSON-RPC client.</li>
<li class=""><strong>WebAssembly Plugins</strong>: Pure-Go WASI runtime powered by <code>wazero</code>.</li>
<li class=""><strong>Skill-as-a-Folder</strong>: Auto-reloading directory scripts (<code>skill.json</code> + <code>run.sh</code>/<code>run.py</code>) with <code>fsnotify</code>.</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-hybrid-semantic-memory-rag">4. Hybrid Semantic Memory (RAG)<a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#4-hybrid-semantic-memory-rag" class="hash-link" aria-label="Direct link to 4. Hybrid Semantic Memory (RAG)" title="Direct link to 4. Hybrid Semantic Memory (RAG)" translate="no">​</a></h3>
<p>Combines SQLite FTS5 lexical keyword matching with Chromem-go local vector embeddings generated by the pinned <code>multilingual-e5-small</code> ONNX model. Incorporates a 1-minute durable debounce queue and Ebbinghaus forgetting curve decay.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="5-hardware-bound-vault--cryptographic-audit-trail">5. Hardware-Bound Vault &amp; Cryptographic Audit Trail<a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#5-hardware-bound-vault--cryptographic-audit-trail" class="hash-link" aria-label="Direct link to 5. Hardware-Bound Vault &amp; Cryptographic Audit Trail" title="Direct link to 5. Hardware-Bound Vault &amp; Cryptographic Audit Trail" translate="no">​</a></h3>
<p>API keys and OAuth 2.1 PKCE tokens are encrypted with AES-256-GCM keys derived from physical system hardware identifiers (DMI UUID + CPU serial) via Argon2id. Every security event is chained in an immutable SHA-256 ledger (<code>audit.jsonl</code>).</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="6-zero-config-remote-access-via-tailscale-tsnet">6. Zero-Config Remote Access via Tailscale <code>tsnet</code><a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#6-zero-config-remote-access-via-tailscale-tsnet" class="hash-link" aria-label="Direct link to 6-zero-config-remote-access-via-tailscale-tsnet" title="Direct link to 6-zero-config-remote-access-via-tailscale-tsnet" translate="no">​</a></h3>
<p>The core daemon embeds Tailscale's pure-Go <code>tsnet</code> client directly, providing an encrypted WireGuard mesh connection and automatic HTTPS domain (<code>https://acton.&lt;tailnet&gt;.ts.net</code>) without opening inbound router firewall ports.</p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="getting-started">Getting Started<a href="https://actonos.github.io/docs/blog/announcing-actonos-v0-1#getting-started" class="hash-link" aria-label="Direct link to Getting Started" title="Direct link to Getting Started" translate="no">​</a></h2>
<p>You can deploy ActonOS in under a minute with Docker:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token function" style="color:#d73a49">docker</span><span class="token plain"> run </span><span class="token parameter variable" style="color:#36acaa">-d</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">--name</span><span class="token plain"> actonos </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">-p</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">8080</span><span class="token plain">:8080 </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">-v</span><span class="token plain"> acton-data:/data </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">-e</span><span class="token plain"> </span><span class="token assign-left variable" style="color:#36acaa">RUNTIME_MODE</span><span class="token operator" style="color:#393A34">=</span><span class="token plain">docker </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">--restart</span><span class="token plain"> unless-stopped </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  ghcr.io/actonos/actonos:latest</span><br></div></code></pre></div></div>
<p>Or flash the bootable <strong><code>ActonOS-v0.1.iso</code></strong> onto a USB drive to turn any Intel N100 or AMD Ryzen MiniPC into a dedicated AI appliance.</p>
<ul>
<li class="">📖 <strong>Read the Documentation</strong>: <a class="" href="https://actonos.github.io/docs/getting-started/overview">Getting Started Guide</a></li>
<li class="">🐙 <strong>Explore the Codebase</strong>: <a href="https://github.com/actonos/actonos" target="_blank" rel="noopener noreferrer" class="">GitHub Repository</a></li>
<li class="">💬 <strong>Join the Community</strong>: <a href="https://discord.gg/actonos" target="_blank" rel="noopener noreferrer" class="">Discord Server</a></li>
</ul>]]></content:encoded>
            <category>Release Notes</category>
            <category>System Architecture</category>
            <category>Multi-Agent Swarms</category>
        </item>
        <item>
            <title><![CDATA[Deep Dive: Building a Dual-Runtime HAL with Linux Namespaces and Cgroups v2]]></title>
            <link>https://actonos.github.io/docs/blog/deep-dive-dual-runtime-hal</link>
            <guid>https://actonos.github.io/docs/blog/deep-dive-dual-runtime-hal</guid>
            <pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[How does ActonOS run seamlessly on both bare-metal MiniPC hardware and inside nested Docker containers while maintaining zero-trust execution boundaries? In this engineering deep dive, we explore the architecture of the Hardware Abstraction Layer (HAL).]]></description>
            <content:encoded><![CDATA[<p>How does ActonOS run seamlessly on both bare-metal MiniPC hardware and inside nested Docker containers while maintaining zero-trust execution boundaries? In this engineering deep dive, we explore the architecture of the <strong>Hardware Abstraction Layer (HAL)</strong>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-challenge-of-dual-deployments">The Challenge of Dual Deployments<a href="https://actonos.github.io/docs/blog/deep-dive-dual-runtime-hal#the-challenge-of-dual-deployments" class="hash-link" aria-label="Direct link to The Challenge of Dual Deployments" title="Direct link to The Challenge of Dual Deployments" translate="no">​</a></h2>
<p>When designing an autonomous AI operating system, two competing developer requirements emerge:</p>
<ol>
<li class=""><strong>Appliance Experience</strong>: Users want to buy a $150 Intel N100 MiniPC, flash an ISO, and have a turnkey, dedicated server that self-heals over OTA and configures via Wi-Fi captive portal.</li>
<li class=""><strong>Infrastructure Flexibility</strong>: Cloud operators, NAS users, and home-lab tinkerers want to run ActonOS inside existing Docker Compose or Kubernetes stacks without privileged root access.</li>
</ol>
<p>Attempting to force container mechanics onto bare metal (or vice versa) results in brittle scripts. Instead, ActonOS implements a clean <strong>Dual-Runtime HAL interface</strong> in Go:</p>
<div class="language-go codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-go codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">type</span><span class="token plain"> HardwareAbstractionLayer </span><span class="token keyword" style="color:#00009f">interface</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token function" style="color:#d73a49">GetRuntimeMode</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> RuntimeMode</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token function" style="color:#d73a49">GetSystemTelemetry</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">TelemetrySnapshot</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token builtin">error</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token function" style="color:#d73a49">SpawnSandbox</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">ctx context</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Context</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> cmd Spec</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">ProcessHandle</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token builtin">error</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token function" style="color:#d73a49">ConfigureNetwork</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">cfg NetworkConfig</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token builtin">error</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token function" style="color:#d73a49">ApplyOTAUpdate</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">releaseVersion </span><span class="token builtin">string</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token builtin">error</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><br></div></code></pre></div></div>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="bare-metal-mode-kernel-namespaces--cgroups-v2">Bare-Metal Mode: Kernel Namespaces &amp; Cgroups v2<a href="https://actonos.github.io/docs/blog/deep-dive-dual-runtime-hal#bare-metal-mode-kernel-namespaces--cgroups-v2" class="hash-link" aria-label="Direct link to Bare-Metal Mode: Kernel Namespaces &amp; Cgroups v2" title="Direct link to Bare-Metal Mode: Kernel Namespaces &amp; Cgroups v2" translate="no">​</a></h2>
<p>On physical hardware, the HAL activates the <strong>Bare-Metal Driver</strong>:</p>
<ul>
<li class=""><strong>Bubblewrap (<code>bwrap</code>) Sandboxing</strong>: Rather than running scripts as root or a generic user, tool calls spawn an unprivileged Bubblewrap namespace. The root filesystem is mounted strictly read-only, <code>/etc</code> and <code>/data/config</code> are unmounted, and only <code>/data/workspace</code> is writable.</li>
<li class=""><strong>Cgroups v2 Resource Governance</strong>: Each sandboxed execution is assigned to a dynamic Cgroups v2 slice with hard caps:<!-- -->
<ul>
<li class=""><code>memory.max</code>: <strong>512 MB</strong> (Kernel OOM terminates only the rogue process).</li>
<li class=""><code>cpu.max</code>: <strong>50000 100000</strong> (Max 50% single-core quota).</li>
<li class=""><code>pids.max</code>: <strong>30</strong> (Guarantees protection against fork-bombs).</li>
</ul>
</li>
<li class=""><strong>D-Bus Integration</strong>: Direct communication with Linux <code>NetworkManager</code> for captive portal hotspot creation (<code>192.168.4.1</code>) and thermal sensors.</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="docker-mode-jailed-subshell--container-telemetry">Docker Mode: Jailed Subshell &amp; Container Telemetry<a href="https://actonos.github.io/docs/blog/deep-dive-dual-runtime-hal#docker-mode-jailed-subshell--container-telemetry" class="hash-link" aria-label="Direct link to Docker Mode: Jailed Subshell &amp; Container Telemetry" title="Direct link to Docker Mode: Jailed Subshell &amp; Container Telemetry" translate="no">​</a></h2>
<p>When running inside a container (detected via <code>/.dockerenv</code> or <code>RUNTIME_MODE=docker</code>):</p>
<ul>
<li class=""><strong>Non-Root Execution</strong>: The daemon runs under the unprivileged <code>acton</code> user (UID 1000).</li>
<li class=""><strong>Subshell Jailing</strong>: Commands are executed within a constrained subshell environment with strict path scoping and environment sanitization.</li>
<li class=""><strong>Container Telemetry</strong>: Real-time CPU and memory metrics are read dynamically from <code>/sys/fs/cgroup/</code> to reflect accurate container resource utilization rather than misleading host totals.</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="summary">Summary<a href="https://actonos.github.io/docs/blog/deep-dive-dual-runtime-hal#summary" class="hash-link" aria-label="Direct link to Summary" title="Direct link to Summary" translate="no">​</a></h2>
<p>By decoupling hardware management from higher-level agent reasoning, ActonOS delivers identical tool and multi-agent capabilities across both home MiniPCs and enterprise cloud servers.</p>
<p>Read more in our <a class="" href="https://actonos.github.io/docs/advanced-architecture/dual-runtime-hal">Advanced Architecture Guide</a>.</p>]]></content:encoded>
            <category>System Architecture</category>
            <category>Security &amp; Sandboxing</category>
        </item>
        <item>
            <title><![CDATA[Aligning with OpenClaw: Zero-Waste Heartbeat and Autonomous Execution]]></title>
            <link>https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment</link>
            <guid>https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment</guid>
            <pubDate>Sun, 16 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[We have officially updated the ActonOS Heartbeat daemon to align with the OpenClaw Heartbeat Gateway Contract. In this post, we explain how this update eliminates token waste during idle periods and hardens autonomous multi-agent execution.]]></description>
            <content:encoded><![CDATA[<p>We have officially updated the ActonOS Heartbeat daemon to align with the <a href="https://docs.openclaw.ai/vi/gateway/heartbeat" target="_blank" rel="noopener noreferrer" class="">OpenClaw Heartbeat Gateway Contract</a>. In this post, we explain how this update eliminates token waste during idle periods and hardens autonomous multi-agent execution.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-problem-token-bleed-during-idle-pulses">The Problem: Token Bleed During Idle Pulses<a href="https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment#the-problem-token-bleed-during-idle-pulses" class="hash-link" aria-label="Direct link to The Problem: Token Bleed During Idle Pulses" title="Direct link to The Problem: Token Bleed During Idle Pulses" translate="no">​</a></h2>
<p>In traditional AI automation systems, background polling jobs repeatedly invoke LLMs on a timer to ask: <em>"Is there any work to do?"</em>.</p>
<p>When no tasks are pending, weaker or faster models frequently respond with generic conversational chatter (e.g., <em>"Hello! I am ready to help you today"</em>), burning API tokens 24 hours a day and generating unwanted notification spam.</p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-solution-the-openclaw-zero-waste-contract">The Solution: The OpenClaw Zero-Waste Contract<a href="https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment#the-solution-the-openclaw-zero-waste-contract" class="hash-link" aria-label="Direct link to The Solution: The OpenClaw Zero-Waste Contract" title="Direct link to The Solution: The OpenClaw Zero-Waste Contract" translate="no">​</a></h2>
<p>ActonOS v0.1 implements three key safeguards:</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-zero-model-idle-pulse">1. Zero-Model Idle Pulse<a href="https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment#1-zero-model-idle-pulse" class="hash-link" aria-label="Direct link to 1. Zero-Model Idle Pulse" title="Direct link to 1. Zero-Model Idle Pulse" translate="no">​</a></h3>
<p>If the task backlog is empty and there is no actionable directive in <code>HEARTBEAT.md</code>, the Heartbeat engine does <strong>not</strong> invoke the LLM at all. It returns an instantaneous, cost-free internal <code>HEARTBEAT_OK</code> acknowledgement.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-autonomous-headless-system-prompt-rules">2. Autonomous Headless System Prompt Rules<a href="https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment#2-autonomous-headless-system-prompt-rules" class="hash-link" aria-label="Direct link to 2. Autonomous Headless System Prompt Rules" title="Direct link to 2. Autonomous Headless System Prompt Rules" translate="no">​</a></h3>
<p>When an actionable task is present, the routine cycle injects an explicit rule block into the model's system prompt:</p>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">[AUTONOMOUS HEADLESS EXECUTION MODE]</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">There is no human in the loop for this turn. Do not greet or ask how you can help.</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">If the directive is satisfied or no action is required, output ONLY: HEARTBEAT_OK</span><br></div></code></pre></div></div>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-idle-chatter-safety-filter-lookslikeidlechatter">3. Idle Chatter Safety Filter (<code>looksLikeIdleChatter</code>)<a href="https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment#3-idle-chatter-safety-filter-lookslikeidlechatter" class="hash-link" aria-label="Direct link to 3-idle-chatter-safety-filter-lookslikeidlechatter" title="Direct link to 3-idle-chatter-safety-filter-lookslikeidlechatter" translate="no">​</a></h3>
<p>If a model disregards the directive and outputs conversational small talk without calling any tools, ActonOS intercepts the response, classifies it as nominal, and suppresses the notification.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="4-active-hours--trigger-cooldown">4. Active Hours &amp; Trigger Cooldown<a href="https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment#4-active-hours--trigger-cooldown" class="hash-link" aria-label="Direct link to 4. Active Hours &amp; Trigger Cooldown" title="Direct link to 4. Active Hours &amp; Trigger Cooldown" translate="no">​</a></h3>
<p>Operators can define active operating windows (e.g., <code>08:00</code> to <code>22:00</code>), ensuring background agents do not trigger pulses during sleeping hours. A 15-second trigger cooldown prevents trigger storms from generating duplicate notification bursts.</p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="conclusion">Conclusion<a href="https://actonos.github.io/docs/blog/openclaw-heartbeat-alignment#conclusion" class="hash-link" aria-label="Direct link to Conclusion" title="Direct link to Conclusion" translate="no">​</a></h2>
<p>By adopting the OpenClaw Heartbeat contract, ActonOS allows agents to remain vigilant 24/7 with zero idle token consumption.</p>
<p>Explore the <a class="" href="https://actonos.github.io/docs/user-guide/automations-heartbeat">Automations &amp; Heartbeat Guide</a> for complete configuration instructions.</p>]]></content:encoded>
            <category>OpenClaw Standards</category>
            <category>Multi-Agent Swarms</category>
            <category>System Architecture</category>
        </item>
    </channel>
</rss>