Skip to content

fix(claude): quote argument-hint so it parses as string, not YAML array#3

Open
thejesh23 wants to merge 1 commit into
lttr:masterfrom
thejesh23:fix/copilot-cli-1.0.65-argument-hint-string
Open

fix(claude): quote argument-hint so it parses as string, not YAML array#3
thejesh23 wants to merge 1 commit into
lttr:masterfrom
thejesh23:fix/copilot-cli-1.0.65-argument-hint-string

Conversation

@thejesh23

@thejesh23 thejesh23 commented Jul 3, 2026

Copy link
Copy Markdown

Summary

Quote every argument-hint: frontmatter value in claude/commands/ and claude/skills/ so it parses as a YAML string rather than a flow-style array or an invalid tag.

The bug

The command/skill spec requires argument-hint to be a string. YAML parses argument-hint: [X] as a flow sequence (a list with one element X), and argument-hint: <X> as a node tag / parse error. Both are silently tolerated by Claude Code today, but GitHub Copilot CLI 1.0.65 enforces the string type and refuses to load any command whose argument-hint is not a scalar string.

YAML rule at play:

argument-hint: [foo]      # -> ["foo"]  (array)
argument-hint: "[foo]"    # -> "[foo]"  (string, correct)
argument-hint: <foo>      # -> parse error / tag
argument-hint: "<foo>"    # -> "<foo>"  (string, correct)

Same class of latent bug as anthropics/claude-code#22161.

Files fixed (17)

Commands:

  • claude/commands/assess/generic.md
  • claude/commands/attribution.md
  • claude/commands/commit.md
  • claude/commands/my-code-review.md
  • claude/commands/pick.md
  • claude/commands/recall.md

Skills:

  • claude/skills/deep-plan/SKILL.md
  • claude/skills/implement-next/SKILL.md
  • claude/skills/implement-with-notes/SKILL.md
  • claude/skills/lavish/SKILL.md
  • claude/skills/memory-promote/SKILL.md
  • claude/skills/next-steps/SKILL.md
  • claude/skills/nuxt-baseline/SKILL.md
  • claude/skills/plan-next/SKILL.md
  • claude/skills/skills-map/SKILL.md
  • claude/skills/transcribe/SKILL.md
  • claude/skills/youtube-transcript/SKILL.md

Files where argument-hint: is empty (null) were left alone — a null value is valid and does not trigger the bug.

Test plan

  • Grep argument-hint: across the tree; every non-empty value is now a double-quoted string
  • Parse every frontmatter block with PyYAML; all touched files now yield argument-hint as str (no arrays, no tag errors)
  • Diff limited to the frontmatter line of each file (17 files, 17 insertions, 17 deletions)
  • Load the affected commands/skills in Copilot CLI 1.0.65 and confirm they now load without frontmatter errors
  • Sanity-check in Claude Code that the hint string still renders correctly in the /help-style command list

Copilot CLI 1.0.65 requires the `argument-hint` frontmatter field to be a
string, but unquoted `[X]` is parsed by YAML as a flow-style array (and
unquoted `<X>` as a tag/error), which breaks command loading. Wrap all such
values in double quotes so they parse as scalars.

Fixes 17 command/skill files across `claude/commands/` and `claude/skills/`.
Same class of bug as anthropics/claude-code#22161 (latent in Claude Code,
overt in Copilot CLI).
@thejesh23

Copy link
Copy Markdown
Author

Tracking issue: #4 — captures the bug diagnosis and reproducer separately for anyone searching the repo who lands there before this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant