Skip to content

refactor(cli)!: remove shell completion - #493

Merged
emaarco merged 1 commit into
mainfrom
emaarco/refactor-remove-shell-completion-from-pulse-cli
Oct 28, 2026
Merged

emaarco merged 1 commit into
mainfrom
emaarco/refactor-remove-shell-completion-from-pulse-cli

Conversation

@emaarco

@emaarco emaarco commented Oct 28, 2026

Copy link
Copy Markdown
Member

Why

Shell completion cost about 640 lines of code and 750 lines of tests, and every new option had to work in three shells. Agents never press Tab, terminals like Warp complete on their own, and people mostly reach the engines through the VS Code extension or the chat widgets.

What

  • Remove pulse-cli completion <bash|zsh|fish> and the hidden pulse-cli __complete with their modules (completion-meta, completion-model, docs/completion, docs/completion-scripts) and tests.
  • Drop the completion metadata that had no other reader: setPositional / setOptionCompletion calls in the commands, the COMPLETIONS map and globalOptionObjects() in globals.ts, CompletableDoc/pathOf in options.ts, the profile value map in config.ts, the complete/suggest fields and CONDITIONS of the workflow option docs (WorkflowOptionDoc is now plain OptionDoc), and WORKFLOW_COMMANDS, which only completion read.
  • Update the tests that listed completion (root help, registration, help texts, command lines, workflow names, pack suite) and remove the completion cases in bearer.test.ts and project.test.ts.
  • The Homebrew formula no longer calls generate_completions_from_executable.
  • Docs: remove the "Shell completion" section from docs/cli/installation.md and the mentions in docs/cli/index.md, docs/cli/development.md, apps/cli/README.md and apps/cli/CLAUDE.md.
  • --help, describe and guide behave as before.

Verification

  • pnpm build && pnpm typecheck && pnpm test && pnpm lint green (knip flagged the orphaned WORKFLOW_COMMANDS, which is removed).
  • git grep -E "__complete|completion-(meta|model|scripts)|setPositional|setOptionCompletion|COMPLETION_SCRIPTS|generate_completions|shell completion" is empty.
  • Built CLI: pulse-cli completion bash and pulse-cli __complete proc exit 2 with Unknown command; pulse-cli --help and pulse-cli describe task complete print as before.
  • A separate review pass over the whole repository found no remaining references to shell completion.
  • Not run locally: test:engines and the pack suite (pack.it.test.ts, one case removed); CI runs them.

Breaking changes

pulse-cli completion is gone and the Homebrew formula no longer installs a completion script, so Tab completion stops working in a plain shell after upgrading. A completion script installed by hand earlier calls pulse-cli __complete, which now fails, so remove it from ~/.bashrc, ~/.zfunc or ~/.config/fish/completions. The commit carries a BREAKING CHANGE: footer for the release-please changelog.

Closes #490

Drop `pulse-cli completion bash|zsh|fish`, the hidden `pulse-cli __complete`,
the completion metadata on commands and options, their tests, the docs
section and the completion install of the Homebrew formula. `--help`,
`describe` and `guide` are unchanged.

BREAKING CHANGE: `pulse-cli completion` is gone and the Homebrew formula no
longer installs a completion script, so Tab completion stops working in a
plain shell after upgrading.
@netlify

netlify Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for spectacular-cobbler-f6c85b ready!

Name Link
🔨 Latest commit a61c882
🔍 Latest deploy log https://app.netlify.com/projects/spectacular-cobbler-f6c85b/deploys/6ae1a6604d04eae495bbdfde
😎 Deploy Preview https://deploy-preview-493--spectacular-cobbler-f6c85b.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@emaarco
emaarco marked this pull request as ready for review October 28, 2026 07:43
@emaarco
emaarco enabled auto-merge (squash) October 28, 2026 07:43
@emaarco
emaarco merged commit 29be7fa into main Oct 28, 2026
32 checks passed
@emaarco
emaarco deleted the emaarco/refactor-remove-shell-completion-from-pulse-cli branch October 28, 2026 07:46
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.

[Refactor]: Remove shell completion from pulse-cli

1 participant