# Class BSV::Wallet::CLI::Commands::List <a id="class-BSV-Wallet-CLI-Commands-List"></a>

**Inherits:** `BSV::Wallet::CLI::Commands::Base`

+bin/wallet list <noun>+ — power-user query over wallet state.

    bin/wallet list outputs                              # all spendable, --limit=100
    bin/wallet list outputs --basket=<name> --limit=50
    bin/wallet list outputs --all                        # no limit (caveat: scale)
    bin/wallet --json list outputs                       # NDJSON (one row per line)
    bin/wallet list actions --label=<name>               # --label REQUIRED
    bin/wallet list actions --label=<n1> --label=<n2>    # match-any across labels

<code>--json</code> is a GLOBAL flag (parsed before the subcommand). The
NDJSON output mode fires when <code>--json</code> is set OR when stdout is not
a TTY.

+list actions+ is label-required because +Engine#list_actions+ has no
unfiltered primitive; <code>Engine::Action.list</code> returns an empty set
when no labels match. Unfiltered listing is a follow-up engine addition, out
of scope for Phase 1.

Defaults: +--limit=100+; <code>--all</code> is the explicit opt-out. Output is
ALWAYS NDJSON — one JSON object per line, never buffers the full set in
memory. This is intentional: keeps piping to `jq`/`grep` predictable
regardless of whether stdout is a TTY. The human-readable summary lines (noun,
filter, row count) go to stderr via `emit_human`.

## Constants
### `DEFAULT_LIMIT` <a id="constant-DEFAULT_LIMIT"></a> <a id="DEFAULT_LIMIT-constant"></a>
Not documented.

### `NOUNS` <a id="constant-NOUNS"></a> <a id="NOUNS-constant"></a>
Not documented.

## Public Instance Methods
### `build_parser()` <a id="method-i-build_parser"></a> <a id="build_parser-instance_method"></a>
Not documented.

### `call(args)` <a id="method-i-call"></a> <a id="call-instance_method"></a>
- **@raise** [UsageError]

### `name()` <a id="method-i-name"></a> <a id="name-instance_method"></a>
Not documented.
