Features
Arka does not ship full gateway adapters (Telegram, Discord, etc.). Use webhook ingress and channel bridges, then attach channel sessions on top.
Message sessions
Per-channel conversation turns stored under~/.config/arka/message-sessions/:
channel:chat_id (e.g. webhook:slack, cli:default, telegram:987654321).
CLI continuity
WhenMESSAGE_SESSIONS=1 (default), arka ask and the chat engine automatically read and write the cli:default session (override with MESSAGE_SESSION_CHANNEL and MESSAGE_SESSION_CHAT_ID). Start a thread in the terminal, continue via webhook with the same channel and chat ID, or vice versa.
Webhook continuity
WhenWEBHOOK_ENABLED=1, inbound POST bodies can include:
chat_id in the response.
Silence tokens
Explicit silence tokens let group chats and automations store a turn without sending outbound text:[SILENT]SILENTNO_REPLYNO REPLY
"silent": true and an empty output field. The turn is still stored in the session transcript.
External MCP clients can check the same tokens with arka_sessions action silence_check (returns { "silent": true|false, "tokens": [...] }).
Environment variables
Legacy
HERMES_SESSIONS* variables remain supported as aliases.
Inbound turns are sanitized — injection patterns and unsafe content are blocked before storage.
Sub-agent delegation
Spawn isolated background agents for parallel workstreams:agent fallback). Task records live under ~/.cache/fish-agent/subagents/.
Security gates
Set
SUBAGENT_SYNC=1 to run synchronously (used in tests).
Environment variables
Legacy
HERMES_SUBAGENT* variables remain supported as aliases.
Sub-agents can attach to a message session via --session-channel and --session-chat-id.
Background process status
Usearka background processes when you want one place to see what Arka currently has active:
arka mcp serve. The legacy command arka background agent tasks still works as an alias.
This command is read-only. It does not stop or restart agents, routines, or servers.
Skill manifest gates
Plugin gates usemetadata.openclaw, metadata.arka, or metadata.hermes — all merged the same way. See OpenClaw-inspired gates for details.
Heartbeat integration
heartbeat status reports channel session and sub-agent counts:
Related features
- Context layers — how memory, session notes, and channel turns fit together
- Session memory — long-term markdown notes (
MEMORY.md) - Webhooks — verified external ingress
- Security — global
SECURITY,SECURITY_LLM, andSECURITY_ACTIONSflags