<!-- @generated by usage-cli from usage spec -->

# `usage generate completion-init`

- **Usage**: `usage generate completion-init [--usage-bin <USAGE_BIN>] <SHELL>`
- **Aliases**: `ci`
- **Effect**: read-only
- **Source code**: [`cli/src/cli/generate/completion_init.rs`](https://github.com/jdx/usage/blob/main/cli/src/cli/generate/completion_init.rs)

Generate a shell init script that auto-completes any usage shebang script on $PATH

Source the output once from your shell rc (e.g. ~/.bashrc) to enable tab-completion for any executable whose first line is a `usage` shebang — no per-script `usage g completion` step required.

## Arguments

### `<SHELL>`

Shell to generate the init script for

**Choices:**

- `bash`
- `fish`
- `zsh`

## Flags

### `--usage-bin <USAGE_BIN>`

Override the bin used for calling back to usage-cli

You may need to set this if you have a different bin named "usage"

**Default:** `usage`

**Environment Variable:** `JDX_USAGE_BIN`
