Status: experimental. This integration automates a personal Zalo account via zca-cli.
Warning: This is an unofficial integration and may result in account suspension/ban. Use at your own risk.
Zalo Personal ships as a plugin and is not bundled with the core install.
coderclaw plugins install @coderclaw/zalousercoderclaw plugins install ./extensions/zalouserThe Gateway machine must have the zca binary available in PATH.
zca --versionextensions/zalouser/README.md or the upstream zca-cli docs).coderclaw channels login --channel zalouser{
channels: {
zalouser: {
enabled: true,
dmPolicy: "pairing",
},
},
}
zca listen to receive inbound messages.zca msg ... to send replies (text/media/link).Channel id is zalouser to make it explicit this automates a personal Zalo user account (unofficial). We keep zalo reserved for a potential future official Zalo API integration.
Use the directory CLI to discover peers/groups and their IDs:
coderclaw directory self --channel zalouser
coderclaw directory peers list --channel zalouser --query "name"
coderclaw directory groups list --channel zalouser --query "work"
channels.zalouser.dmPolicy supports: pairing | allowlist | open | disabled (default: pairing).
channels.zalouser.allowFrom accepts user IDs or names. The wizard resolves names to IDs via zca friend find when available.
Approve via:
coderclaw pairing list zalousercoderclaw pairing approve zalouser <code>channels.zalouser.groupPolicy = "open" (groups allowed). Use channels.defaults.groupPolicy to override the default when unset.channels.zalouser.groupPolicy = "allowlist"channels.zalouser.groups (keys are group IDs or names)channels.zalouser.groupPolicy = "disabled".Example:
{
channels: {
zalouser: {
groupPolicy: "allowlist",
groups: {
"123456789": { allow: true },
"Work Chat": { allow: true },
},
},
},
}
Accounts map to zca profiles. Example:
{
channels: {
zalouser: {
enabled: true,
defaultAccount: "default",
accounts: {
work: { enabled: true, profile: "work" },
},
},
},
}
zca not found:
PATH for the Gateway process.Login doesn’t stick:
coderclaw channels status --probecoderclaw channels logout --channel zalouser && coderclaw channels login --channel zalouser