stella completions

Print a shell completion script for stella to stdout — bash, zsh, fish, PowerShell, or elvish. Works offline, writes nothing, needs no API key.

Print a shell completion script for stella to standard output. It writes nothing itself. Where the script ends up is up to you and your shell.

Works offline, and needs no API key.

Synopsis

stella completions <shell>
bash

Sourced from a completion directory, usually /etc/bash_completion.d/.

zsh

A _stella file on your $fpath.

fish

A .fish file under ~/.config/fish/completions/.

powershell

Evaluated from your profile.

elvish

Sourced from your rc.elv.

Installing it

Each shell expects the script in a different place:

# bash
stella completions bash > /etc/bash_completion.d/stella

# zsh — the first directory on your $fpath
stella completions zsh > "${fpath[1]}/_stella"

# fish
stella completions fish > ~/.config/fish/completions/stella.fish
# PowerShell — append to your profile
stella completions powershell | Out-String | Invoke-Expression

Open a new shell afterward, or re-load your profile.

What you get

Completion covers the whole command line: every subcommand, every flag, and the choices behind them. So stella inspect --format <TAB> offers text and json instead of nothing, and stella completions <TAB> offers the five shells above.

The global flags are registered with every subcommand, so they complete in either position, before the subcommand or after it.

The script is built from the same command definitions the program itself uses, so completions always match the flags that actually exist. Re-run the command after upgrading stella to pick up new subcommands.

Not sure it worked?

stella completions zsh | head -5    # confirm a script is actually produced

If the output looks right but completion still does nothing, the problem is likely where you put the file, not how it was generated. Check that the target directory is on your shell's completion path, and that you started a fresh shell.