diff --git a/README.md b/README.md index e73ae45..59828d3 100644 --- a/README.md +++ b/README.md @@ -100,6 +100,20 @@ Then `openclaw gateway restart`. `members` (list the channel's member userIds) · `join` (this agent joins) · `leave` (this agent leaves). +## Slash-command catalog + +On `gateway_start` the plugin syncs OpenClaw's native-command catalog to +each guild (`command-sync.ts`: `listNativeCommandSpecsForConfig` + +`findCommandByNativeName`, dynamic arg `choices` snapshotted via +`resolveCommandArgChoices`) → `PUT /api/commands`. This is exactly the data +Discord registers as slash commands; Fabric's frontend uses it for `/` +autocomplete. Fabric deliberately does **not** advertise the +`nativeCommands` channel capability — it stays a text-command surface, so a +`/` message is delivered normally and OpenClaw's command system +executes it (text-command + command session + auth), reusing the standard +inbound path. Only `/no-reply` and `/force-proceed` stay +server-intercepted by the guild. + ## Install / build ```bash