| name | update-completions |
| description | Update the Fish and Zsh completion implementations to match the current Copilot CLI interface. Use when asked to update, refresh, or sync completions, or when CLI options, commands, models, or help topics change. |
| compatibility | Requires copilot CLI, fish, and zsh |
Update Completions
Update _copilot, completions/copilot.fish, and any affected dynamic Fish
helpers from the same live CLI help capture.
Gather the current CLI surface
Capture these commands:
copilot --help
copilot help
copilot help config
copilot help commands
copilot help environment
copilot help logging
copilot help monitoring
copilot help permissions
copilot help providers
copilot app --help
copilot completion --help
copilot init --help
copilot login --help
copilot mcp --help
copilot mcp add --help
copilot mcp get --help
copilot mcp list --help
copilot mcp remove --help
copilot plugin --help
copilot plugin install --help
copilot plugin list --help
copilot plugin marketplace --help
copilot plugin marketplace add --help
copilot plugin marketplace browse --help
copilot plugin marketplace list --help
copilot plugin marketplace remove --help
copilot plugin marketplace update --help
copilot plugin uninstall --help
copilot plugin update --help
copilot plugins --help
copilot skill --help
copilot update --help
copilot version --help
Run help for every subcommand advertised by copilot plugins --help and
copilot skill --help. Run copilot help <topic> for any help topics not
listed above. Treat the live output as authoritative.
Update both implementations
Compare the captured interface against:
_copilot
completions/copilot.fish
functions/__fish_copilot_*.fish
Keep options, aliases, commands, help topics, models, log levels, reasoning
efforts, stream modes, plugin commands, login modes, and dynamic argument
helpers aligned.
For Zsh:
- Use
_arguments specifications.
- Prefix repeatable options with
*.
- Use exclusion groups for aliases or mutually exclusive options.
- Preserve dynamic model, plugin, and marketplace helpers.
- Keep the completion-context guard at the bottom of
_copilot.
For Fish:
- Use
-x for exclusive arguments, -r for required arguments, and -f when
file completion is inappropriate.
- Give every completion a
-d description.
- Keep private dynamic helpers under
functions/__fish_copilot_*.fish.
- Update fallback models in
functions/__fish_copilot_models.fish.
Do not introduce a shared completion schema or generator. Each shell should
remain idiomatic.
Verify
zsh -n _copilot copilot.plugin.zsh
fish -n completions/copilot.fish
fish -n functions/*.fish
fish -c 'source completions/copilot.fish
complete -C"copilot --mo"
complete -C"copilot help "
complete -C"copilot mcp "
complete -C"copilot plugin marketplace "'
Read back every modified file and confirm both shells represent the same live
CLI surface.