Support subfolder organization for slash commands
Problem
As the number of custom commands grows, the flat .claude/commands/ directory becomes hard to navigate. There's no way to logically group related commands.
For example, a team might have 15+ commands spanning development workflows, platform operations, and business processes. A flat list makes it harder to discover and manage them.
Proposed solution
Allow organizing commands into subdirectories inside .claude/commands/, with the folder name acting as a namespace prefix:
.claude/commands/
dev/
review-pr.md
research-agents.md
fix-e2e-tests.md
platform/
api-auth.md
create-test.md
create-issue.md
ops/
postmortem.md
daily-summary.md
generate-changelog.md
These would be invocable as /dev:review-pr, /platform:create-issue, /ops:postmortem, etc. The colon syntax is already used for skill namespacing (e.g., slack:summarize-channel), so this would be consistent.
Tab completion should also respect the grouping (typing /dev: would show only commands in that folder).
Current workaround
Prefix-based naming (dev-review-pr.md, platform-create-issue.md) partially solves discoverability but clutters filenames and doesn't provide real namespacing.
Prior art
- #2422 was closed as not planned, but the need has grown as command libraries get larger.
- Skills already support colon-namespaced invocation when provided by MCP servers.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗