Feature request: pluggable autocomplete providers for the interactive prompt (external daemon/command-sourced keywords)
Problem
The interactive prompt's completion is limited to built-ins: file paths and MCP resources via @, slash-command names via /. There is no way to supply CUSTOM completion candidates — no completion-provider hook, no settings.json completion config, and slash-command arguments don't complete dynamically either.
Use case
Our project tracks work items in an external governed ledger (a local service). Item slugs like lib-repair-ghost-tokens or res-phase3-density-s7 are referenced constantly in prompts to the agent ("close X", "what's the state of Y"). Today every slug is typed by hand from memory or copy-paste. The same shape applies to any team whose identifiers live outside the repo: Jira/Linear ticket keys, database table names, feature-flag names, internal service names.
Request
A pluggable completion-provider mechanism for the interactive prompt. Any of these shapes would resolve it:
- Command-sourced completions in settings.json: a configurable shell command (or long-lived daemon endpoint) invoked with the current word prefix, returning candidate strings — the same contract shells use for programmable completion.
- MCP-driven completion: let an MCP server declare a completion capability so its candidates participate in prompt completion (beyond
@-resource listing). MCP already has acompletion/completerequest in its spec for argument autocompletion — the prompt could consume it. - At minimum: dynamic argument completion for custom slash commands, sourced from a command the skill declares.
Prior art / related
- #44348 (custom autocomplete sources for @ mentions — closed as duplicate) is the closest prior request; this issue adds the external-daemon/command-sourced case and the MCP
completion/completeangle. - #40538, #4171 (slash-command argument completion).
- Community shell-level completers (claude-bash-completion, cc-completion) complete the
claudeCLI invocation itself, not the interactive prompt — they can't see mid-session context.
🤖 Generated with Claude Code
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗