Summary
The trio of closed issues #2610 / #2706 / #2713 all describe the same problem: `wheels packages install ` is a silent no-op (intercepted by LuCLI's extension installer), the working verb is `add`, and `wheels packages --help` advertises `install` despite it not working.
All three are marked CLOSED with state "COMPLETED." But the behavior is still present in CLI 4.0.1 as of 2026-05-21.
Repro on 4.0.1
```bash
$ wheels --version
Wheels CLI 4.0.1
$ wheels packages --help | grep -E '^\s+(install|add)'
install [@] Install (latest compat or pinned)
Note: 'add' is NOT shown in --help (matching #2713 description)
$ wheels packages install wheels-basecoat
Reading lucee.json...
Resolving dependencies...
ℹ️ No git or extension dependencies to install
$ echo $?
0
$ ls vendor/wheels-basecoat 2>&1
ls: vendor/wheels-basecoat: No such file or directory
install reported success, installed nothing
$ wheels packages add wheels-basecoat
… this works — installs wheels-basecoat@3.0.0 to vendor/
$ ls vendor/wheels-basecoat
Basecoat.cfc README.md box.json …
```
Source code in 4.0.1 still documents the trap
`/opt/homebrew/Cellar/wheels/4.0.1/share/wheels/module/services/packages/PackagesMainCli.cfc` lines 13-19:
"`add` (not `install`!) is the install verb because LuCLI's built-in extension installer intercepts the literal subcommand `install` across all modules — same trap that bit `wheels browser install` (renamed to `wheels browser setup` in #2345). User input `wheels packages install ` never reaches Module.cfc; LuCLI runs its own dependency installer against `lucee.json` instead and prints "No git or extension dependencies to install"."
So the comment in the source explains why `install` doesn't work, but the actual user-facing `--help` text still advertises `install` as the install verb. The fix that closed #2610/#2706/#2713 either:
- Didn't actually ship in 4.0.1 (maybe it's in a later snapshot that isn't tagged?), or
- Was a docs-only fix elsewhere (https://guides.wheels.dev / https://packages.wheels.dev) that didn't update the CLI's built-in help text, or
- Regressed between closure and 4.0.1 release.
In all three cases the result is the same: the user-facing problem documented in those three issues is still present for anyone on the current Homebrew-released CLI.
Impact
Surfaced AGAIN during dogfooding (DataPAI portal Phase 0 on Titan, 2026-05-21). The implementer subagent followed `wheels packages --help`, hit the no-op, then dug into the CLI source to find `add`. Lost ~10 minutes of execution time and required filing the workaround in project memory.
This is the second time the same problem has been surfaced from real usage AFTER three closed issues. The closed issues did not actually resolve the user-facing behavior.
Suggested fix
The simplest path is to alias `install` to `add` in the CLI's command dispatch — let LuCLI's intercept happen, then either re-dispatch or wrap. The trap that the source code comment describes is a known LuCLI behavior; the Wheels CLI just needs to either rename its own subcommand or work around the intercept.
Failing that, remove `install` from `wheels packages --help` and replace with `add`. The CLI help is the authoritative quick-reference; if it says `install` works and it doesn't, the broken behavior is shipping daily to every new user.
Related closed issues (re-surfacing)
cc @bpamiri
🤖 Found while dogfooding the DataPAI portal Phase 0 plan via Claude Code
Summary
The trio of closed issues #2610 / #2706 / #2713 all describe the same problem: `wheels packages install ` is a silent no-op (intercepted by LuCLI's extension installer), the working verb is `add`, and `wheels packages --help` advertises `install` despite it not working.
All three are marked CLOSED with state "COMPLETED." But the behavior is still present in CLI 4.0.1 as of 2026-05-21.
Repro on 4.0.1
```bash
$ wheels --version
Wheels CLI 4.0.1
$ wheels packages --help | grep -E '^\s+(install|add)'
install [@] Install (latest compat or pinned)
Note: 'add' is NOT shown in --help (matching #2713 description)
$ wheels packages install wheels-basecoat
Reading lucee.json...
Resolving dependencies...
ℹ️ No git or extension dependencies to install
$ echo $?
0
$ ls vendor/wheels-basecoat 2>&1
ls: vendor/wheels-basecoat: No such file or directory
install reported success, installed nothing
$ wheels packages add wheels-basecoat
… this works — installs wheels-basecoat@3.0.0 to vendor/
$ ls vendor/wheels-basecoat
Basecoat.cfc README.md box.json …
```
Source code in 4.0.1 still documents the trap
`/opt/homebrew/Cellar/wheels/4.0.1/share/wheels/module/services/packages/PackagesMainCli.cfc` lines 13-19:
So the comment in the source explains why `install` doesn't work, but the actual user-facing `--help` text still advertises `install` as the install verb. The fix that closed #2610/#2706/#2713 either:
In all three cases the result is the same: the user-facing problem documented in those three issues is still present for anyone on the current Homebrew-released CLI.
Impact
Surfaced AGAIN during dogfooding (DataPAI portal Phase 0 on Titan, 2026-05-21). The implementer subagent followed `wheels packages --help`, hit the no-op, then dug into the CLI source to find `add`. Lost ~10 minutes of execution time and required filing the workaround in project memory.
This is the second time the same problem has been surfaced from real usage AFTER three closed issues. The closed issues did not actually resolve the user-facing behavior.
Suggested fix
The simplest path is to alias `install` to `add` in the CLI's command dispatch — let LuCLI's intercept happen, then either re-dispatch or wrap. The trap that the source code comment describes is a known LuCLI behavior; the Wheels CLI just needs to either rename its own subcommand or work around the intercept.
Failing that, remove `install` from `wheels packages --help` and replace with `add`. The CLI help is the authoritative quick-reference; if it says `install` works and it doesn't, the broken behavior is shipping daily to every new user.
Related closed issues (re-surfacing)
wheels packages installcommand does not install packages and conflicts with documentation #2610 (CLOSED 2026-05-12) — `wheels packages install` does not installcc @bpamiri
🤖 Found while dogfooding the DataPAI portal Phase 0 plan via Claude Code