lssa/completions
2026-02-27 15:26:57 +11:00
..
2026-02-27 15:23:03 +11:00
2026-02-27 15:26:57 +11:00
2026-02-27 15:23:03 +11:00

Wallet CLI Completion

Completion scripts for the LSSA wallet command.

ZSH

Works with both vanilla zsh and oh-my-zsh.

Features

  • Full completion for all wallet subcommands
  • Contextual option completion for each command
  • Dynamic account ID completion via wallet account list
  • Descriptions for all commands and options

Note that only accounts created by the user auto-complete. Preconfigured accounts and accounts only with / (no number) are not completed.

e.g.:

▶ wallet account list 
Preconfigured Public/Gj1mJy5W7J5pfmLRujmQaLfLMWidNxQ6uwnhb666ZwHw,
Preconfigured Public/BLgCRDXYdQPMMWVHYRFGQZbgeHx9frkipa8GtpG2Syqy,
Preconfigured Private/3oCG8gqdKLMegw4rRfyaMQvuPHpcASt7xwttsmnZLSkw,
Preconfigured Private/AKTcXgJ1xoynta1Ec7y6Jso1z1JQtHqd7aPQ1h9er6xX,
/ Public/8DstRgMQrB2N9a7ymv98RDDbt8nctrP9ZzaNRSpKDZSu,
/0 Public/2gJJjtG9UivBGEhA1Jz6waZQx1cwfYupC5yvKEweHaeH,
/ Private/Bcv15B36bs1VqvQAdY6ZGFM1KioByNQQsB92KTNAx6u2

Only Public/2gJJjtG9UivBGEhA1Jz6waZQx1cwfYupC5yvKEweHaeH is used for completion.

Supported Commands

Command Description
wallet auth-transfer Authenticated transfer (init, send)
wallet chain-info Chain info queries (current-block-id, block, transaction)
wallet account Account management (get, list, new, sync-private)
wallet pinata Piñata faucet (claim)
wallet token Token operations (new, send)
wallet amm AMM operations (new, swap, add-liquidity, remove-liquidity)
wallet check-health Health check

Installation

Vanilla Zsh

  1. Create a completions directory:

    mkdir -p ~/.zsh/completions
    
  2. Copy the completion file:

    cp ./zsh/_wallet ~/.zsh/completions/
    
  3. Add to your ~/.zshrc (before any compinit call, or add these lines if you don't have one):

    fpath=(~/.zsh/completions $fpath)
    autoload -Uz compinit && compinit
    
  4. Reload your shell:

    exec zsh
    

Oh-My-Zsh

  1. Create the plugin directory and copy the file:

    mkdir -p ~/.oh-my-zsh/custom/plugins/wallet
    cp _wallet ~/.oh-my-zsh/custom/plugins/wallet/
    
  2. Add wallet to your plugins array in ~/.zshrc:

    plugins=(... wallet)
    
  3. Reload your shell:

    exec zsh
    

Requirements

The completion script calls wallet account list to dynamically fetch account IDs. Ensure the wallet command is in your $PATH.

Usage

# Main commands
wallet <TAB>

# Account subcommands
wallet account <TAB>

# Options for auth-transfer send
wallet auth-transfer send --<TAB>

# Account types when creating
wallet account new <TAB>
# Shows: public  private

# Account IDs (fetched dynamically)
wallet account get --account-id <TAB>
# Shows: Public/...  Private/...

Bash

Works with bash 4+. The bash-completion package is required for auto-sourcing from /etc/bash_completion.d/; without it, source the file directly from ~/.bashrc instead.

Features

  • Full completion for all wallet subcommands
  • Contextual option completion for each command
  • Dynamic account ID completion via wallet account list
  • Falls back to Public/ / Private/ prefixes when no accounts are available

Note that only accounts created by the user auto-complete (same filtering as zsh — see above).

Installation

Option A — source directly from ~/.bashrc (works everywhere)

echo "source $(pwd)/completions/bash/wallet" >> ~/.bashrc
exec bash

Option B — system-wide via bash-completion

  1. Copy the file:

    cp ./bash/wallet /etc/bash_completion.d/wallet
    
  2. Ensure bash-completion is initialised in every interactive shell. On many Linux distributions (e.g. Fedora) it is only sourced for login shells via /etc/profile.d/bash_completion.sh. For non-login shells (e.g. a bash session started inside zsh), add this to ~/.bashrc:

    [[ -f /usr/share/bash-completion/bash_completion ]] && source /usr/share/bash-completion/bash_completion
    
  3. Reload your shell:

    exec bash
    

Requirements

The completion script calls wallet account list to dynamically fetch account IDs. Ensure the wallet command is in your $PATH.

Usage

# Main commands
wallet <TAB>

# Account subcommands
wallet account <TAB>

# Options for auth-transfer send
wallet auth-transfer send --<TAB>

# Account types when creating
wallet account new <TAB>
# Shows: public  private

# Account IDs (fetched dynamically)
wallet account get --account-id <TAB>
# Shows: Public/...  Private/...

Troubleshooting

Zsh completions not appearing

  1. Check that compinit is called in your .zshrc

  2. Rebuild the completion cache:

    rm -f ~/.zcompdump*
    exec zsh
    

Account IDs not completing

Ensure wallet account list works from your command line.