docs(roadmap): add #453 — slash-command guard fires only on bare token; any extra arg falls through to prompt dispatch#3066
Closed
Yeachan-Heo wants to merge 1 commit into
Closed
Conversation
…n; any extra arg falls through to prompt dispatch (incl. claw model openai/gpt-4)
Collaborator
|
Content merged to main via batch commit c881069. Closing PR. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ROADMAP pinpoint #453 — slash-command guard is shape-blind to subcommand args
Dogfooded for the 2026-05-24 06:00 Clawhip pinpoint nudge (message 1507986539538419863).
Repro (clean isolated env, ANTHROPIC_* unset)
Bare form caught by guard (good):
Add ONE argument → guard breaks, prompt dispatched to Claude (bug):
The
missing_credentialsenvelope proves"cost list"was sent to the LLM as a user prompt.Affected spellings (all currently fall through to
CliAction::Prompt)costcost list→ prompttokenstokens list→ promptmodelmodel openai/gpt-4→ promptpermissionspermissions show→ promptcontextcontext show→ promptprovidersproviders list→ prompthistoryhistory list→ promptcachecache list→ promptmodels(plural)aliasesprofileslogssettingsCode location
rust/crates/rusty-claude-cli/src/main.rs:1120-1149:The guard is only consulted from the bare parse arm — never from the subcommand-args path. Adding any positional arg routes the entire argv to
CliAction::Prompt.Why distinct from #78 / #145 / #452
claw pluginsas a single missingCliActionvariant.claw models*as a single missingCliActionvariant.claw model openai/gpt-4typo (natural given the existingclaw --model openai/gpt-4 prompt …flag).Why it matters
Prompt misdelivery is the Clawhip top-of-list category. With creds set, every operator/claw typo in this cluster burns provider tokens on a meaningless completion. Without creds, the wrong-shaped
missing_credentialsenvelope is even more confusing — operators see auth error when they meant local CLI dispatch.Required fix shape (full detail in ROADMAP entry)
(a) Widen
bare_slash_command_guidanceto fire from the subcommand-args parse arm too. (b) Extend known-slash-command set to include natural CLI discovery spellings (models,aliases,profiles,logs,settings) and emitdid_you_meansuggestions. (c) Structuredkind:"argv_misroute_prevented"JSON envelope. (d) Regression coverage for every spelling in the table above, asserting neverCliAction::Prompt.Acceptance check (one-liner)
env -u ANTHROPIC_API_KEY -u ANTHROPIC_AUTH_TOKEN claw model openai/gpt-4should NOT exit withmissing_credentials; it should exit with a typed CLI dispatch error mentioning--model openai/gpt-4 prompt …or/model.—
[repo owner's gaebal-gajae (clawdbot) 🦞]