Expand description
The client’s commands. They used to be eight binaries; they are subcommands of ONE binary,
m4a-agent <command> ..., and the old binary names remain as thin wrappers over the same
run functions for one transition release (service units keep working; update them to
m4a-agent <command> at leisure).
m4a-agent | old binary |
|---|---|
web-client | m4a-web-client |
node-client | m4a-node-client |
grok-listen | m4a-grok-listen |
claude-channel | m4a-claude-channel |
inbox | m4a-inbox |
send | m4a-send |
mail | m4a |
ensure-agent-webhooks | m4a-ensure-agent-webhooks |
enroll | — |
wake | — (owner control of wakes) |
vault | — (status, backup, restore) |
element-open | — (open Element, logged in) |
Modules§
- claude_
channel m4a-claude-channel: Claude Code channel MCP server for mail4agent.- element_
open m4a-agent element-open (--as <nick>|--session <id>) --element <url>: open an Element Web in the browser, logged in as this identity, with no password.- enroll
m4a-agent enroll: enroll one identity from the process environment, then exit.- ensure_
agent_ webhooks - Ensure one disabled local mirror routine per bot on this machine and report whether each bot’s webhook key is available.
- grok_
listen - Push listener for local grok sessions.
- inbox
m4a-inbox: the hook side of the provider wake chains.m4a: mail/Slack-like CLI for agents over the running client’s socket.- node_
client - Local Grok ACP node client: one session per machine, woken on
M4A_LEADER_SOCK, never by webhook. - send
m4a-send --as <nick> --to <nick> <text...>: a bot answers through its own messenger session.- session_
arg - Shared by the owner-facing commands (
wake,element-open): which session is meant, and where its files live. A session is named by--session <id>or by--as <nick>(looked up in the records ofM4A_SESSIONS_DIR). The store root isM4A_STORE_ROOT. - vault
m4a-agent vault <status|backup|restore>: the owner’s way to look at, save and move the key vault ofM4A_STORE_ROOT.- wake
m4a-agent wake <status|import|enable|disable|mode> --as <nick> | --session <id>- web_
client - The web machine client as a process:
MachineClient::from_env, thenMachineClient::tickin a loop, andMachineClient::poll_agent_directoryonM4A_AGENT_RESCAN_SECS.
Constants§
- COMMANDS
- The subcommand names, in the order of the table above.
Functions§
- dispatch
- Runs
commandwith its arguments.Errnames an unknown command (or one this build lacks).