openclaw - 💡(How to fix) Fix Missing argsMenu for /verbose and /reasoning commands (no inline buttons) [2 pull requests]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Root Cause

In src/commands/commands-registry.data.ts, both commands define args with choices but omit argsMenu: "auto":

// Missing argsMenu — only shows plain text options
defineChatCommand({
    key: "verbose",
    ...
    args: [{
        name: "mode",
        type: "string",
        choices: ["on", "off", "full"]
    }]
    // argsMenu: "auto" is missing!
}),

Compare with /think, which correctly has argsMenu: "auto" and shows buttons.

Fix Action

Fixed

Code Example

Current verbose level: off
Options: on, off, full

---

// Missing argsMenu — only shows plain text options
defineChatCommand({
    key: "verbose",
    ...
    args: [{
        name: "mode",
        type: "string",
        choices: ["on", "off", "full"]
    }]
    // argsMenu: "auto" is missing!
}),

---

defineChatCommand({
    key: "verbose",
    ...
    args: [{...}],
    argsMenu: "auto"   // ← add this
}),

defineChatCommand({
    key: "reasoning",
    ...
    args: [{...}],
    argsMenu: "auto"   // ← add this
}),
RAW_BUFFERClick to expand / collapse

Bug Description

The /verbose and /reasoning chat commands are defined without argsMenu: "auto", which means their option choices (on/off/full, on/off/stream) are not rendered as inline buttons on Telegram and Feishu. Users must manually type the option instead of tapping a button.

Commands Affected

CommandargsMenuButtons Shown?
/think"auto"Yes
/status"auto"Yes
/verbosemissingNo — plain text only
/reasoningmissingNo — plain text only

Current Behavior

When a user sends /verbose, the response is plain text:

Current verbose level: off
Options: on, off, full

The user must manually type "on", "off", or "full" to change the setting.

Expected Behavior

/verbose and /reasoning should show inline buttons (like /think does), so users can tap to select.

Root Cause

In src/commands/commands-registry.data.ts, both commands define args with choices but omit argsMenu: "auto":

// Missing argsMenu — only shows plain text options
defineChatCommand({
    key: "verbose",
    ...
    args: [{
        name: "mode",
        type: "string",
        choices: ["on", "off", "full"]
    }]
    // argsMenu: "auto" is missing!
}),

Compare with /think, which correctly has argsMenu: "auto" and shows buttons.

Proposed Fix

Add argsMenu: "auto" to both command definitions:

defineChatCommand({
    key: "verbose",
    ...
    args: [{...}],
    argsMenu: "auto"   // ← add this
}),

defineChatCommand({
    key: "reasoning",
    ...
    args: [{...}],
    argsMenu: "auto"   // ← add this
}),

Related Issue

  • #55686 — Same symptom reported for Feishu specifically. This issue generalizes it: the root cause is the missing argsMenu in the command registry, affecting all channels that support inline buttons (Telegram, Feishu, etc.).

Impact

Low-risk, high-UX-impact fix. One line per command.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING