Skip to content

argument-hint YAML values in 273 command files use bare brackets — Copilot CLI ≥1.0.65 silently rejects them (same fix as #147) #708

Description

@thejesh23

Summary

273 command files in this repo declare argument-hint using YAML flow-sequence (bare-bracket) syntax:

---
argument-hint: [feature-name] | --template | --interactive
---

YAML parses that value as an array (["feature-name"]), not a string. Downstream slash-command loaders that validate argument-hint as a string (notably GitHub Copilot CLI ≥ 1.0.65) silently reject the whole SKILL, so the slash command disappears from the CLI menu — the exact class of bug you fixed for documentation/create-architecture-documentation.md in #147.

The maintainer already accepted this fix pattern in #147; this Issue documents the remaining 272 files with the same shape.

Evidence

Reproduction is one grep in a fresh checkout:

$ rg -l '^argument-hint:\s*\[' | wc -l
273

$ rg -l '^argument-hint:\s*\[' | awk -F/ '{
    for (i = 1; i <= NF; i++) if ($i == "commands" && i < NF) { print $(i + 1); break }
  }' | sort | uniq -c | sort -rn
 107 google-workspace
  18 project-management
  14 testing
  14 team
  14 sync
  14 setup
  11 deployment
  10 simulation
  10 nextjs-vercel
   9 documentation
   8 performance
   8 database
   6 security
   5 game-development
   4 git-workflow
   4 automation
   3 utilities
   1 svelte
   1 git

(Plus 12 non-command markdown files, including cli-tool/docs_to_claude/COMMANDS_GUIDE.md which has 11 example snippets illustrating the vulnerable shape.)

None of the 273 use the more severe colon-inside-brackets variant (argument-hint: [foo: bar]) — that one parses as [{foo: "bar"}] and triggers the analogous Ink/React #31 hang in Claude Code TUI, tracked separately at anthropics/claude-code#22161. All 273 here are the bare-bracket form: parses as an array of strings, Claude Code renders it (concatenated), Copilot CLI ≥ 1.0.65 silently drops the skill.

Fix

Same one-character transform as your PR #147, applied to every remaining file:

- argument-hint: [feature-name] | --template | --interactive
+ argument-hint: "[feature-name] | --template | --interactive"

No value contains a " or \, so simple double-quote wrapping is safe (verified with rg '^argument-hint:\s*\[.*"' — zero hits).

Sources

Impact

Users installing any of these 273 commands via npx claude-code-templates@latest --command <path> on Copilot CLI 1.0.65+ get the command silently dropped from their menu. On Claude Code the bare-bracket form currently renders (as concatenated strings) but is documented as "incorrectly typed" and would break if Claude Code adds the same string-validation as Copilot CLI did.

Happy to open the PR alongside this Issue — one commit, 273 files, purely mechanical single-line quote wrapping.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions