The zalouser plugin adds unofficial Zalo Personal support to Apus. It uses native zca-js to automate a normal Zalo user account. No external zca/openzca CLI binary is required.

Unofficial automation may lead to account suspension or ban. Use at your own risk.

Naming

Channel id is zalouser to make it explicit this automates a personal Zalo user account (unofficial). The separate zalo channel id is the official, bundled Zalo Bot/webhook integration - see Zalo.

Where it runs

This plugin runs inside the Gateway process. For a remote Gateway, install/configure it on that host. Installation applies to a running Gateway automatically; if it is offline, start it after configuration.

Install

From npm

apus plugins install @openclaw/zalouser

Use the bare package to follow the current official release tag; pin an exact version only when you need a reproducible install. Check the installation's application result; see Apply changes and inspect.

From a local folder (dev)

cd ./path/to/local/zalouser-plugin
pnpm install
apus plugins install --link .

After subsequent source or manifest edits, run apus plugins reload zalouser.

Config

Channel config lives under channels.zalouser (not plugins.entries.*):

{
  channels: {
    zalouser: {
      enabled: true,
      dmPolicy: "pairing",
    },
  },
}

See Zalo personal channel config for DM/group access control, multi-account setup, environment variables, and troubleshooting.

CLI

apus channels login --channel zalouser
apus channels login --channel zalouser --account <name>
apus channels logout --channel zalouser
apus channels status --probe
apus message send --channel zalouser --target <threadId> --message "Hello from Apus"
apus directory self --channel zalouser
apus directory peers list --channel zalouser --query "name"
apus directory groups list --channel zalouser --query "name"
apus directory groups members --channel zalouser --group-id <id>

Agent tool

Tool name: zalouser

Actions: send, image, link, friends, groups, me, status

Channel message actions (not the agent tool) also support react for message reactions.

Related