[GH-ISSUE #4624] [Bug] CLI guide excludes Kuna from supported doctor providers on main #2405

Closed
opened 2026-10-17 21:04:14 +00:00 by bsakaguchi · 0 comments
Owner

Originally created by @coygeek on GitHub (Oct 17, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/4624

Before submitting

  • I searched the open and closed issues for a related report.
  • I removed credentials, tokens, private paths, and sensitive target data.

Area

Documentation

Observed behavior

docs/cli.md:157-160 lists Hopper, Ghidra, IDA and JADX for doctor --provider, then says other adapters are not accepted. This implies Kuna is excluded, although the main CLI accepts --provider kuna and returns Kuna readiness diagnostics. The dedicated Kuna guide documents that command.

Reproduction

  1. In the tested main checkout, read the provider-selection paragraph in docs/cli.md and the Configure example in docs/kuna-provider.md.
  2. Build the source CLI using npm ci and npm run build:cached, as documented in CONTRIBUTING.md. No Kuna installation or analysis target is needed.
  3. Run the following commands with an empty home and no inherited REA or client configuration overrides:
trial=$(mktemp -d)
env -i PATH="$PATH" HOME="$trial" TMPDIR="$trial" node scripts/rea.mjs doctor --provider kuna --json
env -i PATH="$PATH" HOME="$trial" TMPDIR="$trial" node scripts/rea.mjs doctor --provider not-a-provider --json
rm -rf "$trial"

The actual checks used a separate empty HOME and TMPDIR for each invocation, with only PATH, HOME and TMPDIR supplied. Each command ran once on each tested build.

Expected behavior

The CLI guide should describe Kuna as accepted by the provider-scoped doctor command on main, consistent with the dedicated guide and the intentional CLI support.

Impact and scope

Readers can overlook an available Kuna diagnostic. This is a wording and discoverability issue; no analysis failure or blocked core workflow was observed. It affects the checked main documentation. The published release does not support Kuna, so its matching four-provider wording is correct.

  • Impact level: P3
  • Assessment status: supported
  • Impact basis: Misleading diagnostic guidance with no consequential runtime failure demonstrated.
  • Workaround status: available
  • Workaround basis: Follow the dedicated Kuna guide; the main command returns the missing-configuration diagnostic and remediation.

REA version

Main source revision: 0c7b6d834a (package version 6.5.0). Also checked the published npm rea-agents@6.5.0 package and its rea-agents-6.5.0 source tag; these predate Kuna support and are unaffected.

Runtime and platform

Node v24.18.0; Darwin arm64. The main build used npm 11.16.0.

Target and artifact context

No target or external provider installation; isolated empty HOME, with configuration overrides absent.

Interface

CLI

Earliest failure stage

Unknown

Relevant output or evidence

  • Expected source: docs/kuna-provider.md:9-12 documents rea doctor --provider kuna; src/application/DoctorProviderIds.ts:2-8 includes Kuna on main.
  • Failure source: docs/cli.md:157-160 lists four engines and says other adapters are not accepted by doctor --provider.
  • Evidence provenance: observed
  • Local verification: reproduced
  • Reproduction completeness: complete

The restrictive passage reads:

For Hopper, Ghidra, IDA, and JADX, run
`rea doctor --provider ID --json` to diagnose the selected engine. Other adapters,
such as `pwntools-elf`, report their configuration requirements directly and are
not accepted by `doctor --provider`.

Relevant observed fields:

main: doctor --provider kuna --json
exit: 1
scope.mode: explicit
scope.providers: ["kuna"]
scope_checks: node (healthy), kuna-installation (missing_analysis_engine)
remediation begins: Set REA_KUNA_COMMAND to the absolute path of a caller-supplied kuna executable

main: doctor --provider not-a-provider --json
exit: 1
code: VALIDATION_ERROR
message begins: Invalid option: expected one of "hopper"|"ghidra"|"ida"|"jadx"|"kuna"

published release: doctor --provider kuna --json
exit: 1
code: VALIDATION_ERROR
message begins: Invalid option: expected one of "hopper"|"ghidra"|"ida"|"jadx"

Typed outcome or recovery expected

The guidance should agree with the accepted provider IDs. Kuna's exit 1 above indicates missing configuration, not option rejection. An unknown provider should continue to produce a validation error.

Analysis or suspected cause

Source-derived conclusion: the CLI guide's restrictive list is narrower than the main allowlist. The dedicated guide and runtime agree, supporting a documentation correction rather than removal of Kuna support.

Additional context

No configured Kuna execution or analysis was tested. The issue is confined to documentation of provider selection.

Originally created by @coygeek on GitHub (Oct 17, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/4624 ### Before submitting - [X] I searched the open and closed issues for a related report. - [X] I removed credentials, tokens, private paths, and sensitive target data. ### Area Documentation ### Observed behavior `docs/cli.md:157-160` lists Hopper, Ghidra, IDA and JADX for `doctor --provider`, then says other adapters are not accepted. This implies Kuna is excluded, although the main CLI accepts `--provider kuna` and returns Kuna readiness diagnostics. The dedicated Kuna guide documents that command. ### Reproduction 1. In the tested main checkout, read the provider-selection paragraph in `docs/cli.md` and the Configure example in `docs/kuna-provider.md`. 2. Build the source CLI using `npm ci` and `npm run build:cached`, as documented in CONTRIBUTING.md. No Kuna installation or analysis target is needed. 3. Run the following commands with an empty home and no inherited REA or client configuration overrides: ```sh trial=$(mktemp -d) env -i PATH="$PATH" HOME="$trial" TMPDIR="$trial" node scripts/rea.mjs doctor --provider kuna --json env -i PATH="$PATH" HOME="$trial" TMPDIR="$trial" node scripts/rea.mjs doctor --provider not-a-provider --json rm -rf "$trial" ``` The actual checks used a separate empty HOME and TMPDIR for each invocation, with only PATH, HOME and TMPDIR supplied. Each command ran once on each tested build. ### Expected behavior The CLI guide should describe Kuna as accepted by the provider-scoped doctor command on main, consistent with the dedicated guide and the intentional CLI support. ### Impact and scope Readers can overlook an available Kuna diagnostic. This is a wording and discoverability issue; no analysis failure or blocked core workflow was observed. It affects the checked main documentation. The published release does not support Kuna, so its matching four-provider wording is correct. - Impact level: P3 - Assessment status: supported - Impact basis: Misleading diagnostic guidance with no consequential runtime failure demonstrated. - Workaround status: available - Workaround basis: Follow the dedicated Kuna guide; the main command returns the missing-configuration diagnostic and remediation. ### REA version Main source revision: 0c7b6d834af2d044b23196e0e522cc2468327a1e (package version 6.5.0). Also checked the published npm rea-agents@6.5.0 package and its rea-agents-6.5.0 source tag; these predate Kuna support and are unaffected. ### Runtime and platform Node v24.18.0; Darwin arm64. The main build used npm 11.16.0. ### Target and artifact context No target or external provider installation; isolated empty HOME, with configuration overrides absent. ### Interface CLI ### Earliest failure stage Unknown ### Relevant output or evidence - Expected source: `docs/kuna-provider.md:9-12` documents `rea doctor --provider kuna`; `src/application/DoctorProviderIds.ts:2-8` includes Kuna on main. - Failure source: `docs/cli.md:157-160` lists four engines and says other adapters are not accepted by `doctor --provider`. - Evidence provenance: observed - Local verification: reproduced - Reproduction completeness: complete The restrictive passage reads: ```text For Hopper, Ghidra, IDA, and JADX, run `rea doctor --provider ID --json` to diagnose the selected engine. Other adapters, such as `pwntools-elf`, report their configuration requirements directly and are not accepted by `doctor --provider`. ``` Relevant observed fields: ```text main: doctor --provider kuna --json exit: 1 scope.mode: explicit scope.providers: ["kuna"] scope_checks: node (healthy), kuna-installation (missing_analysis_engine) remediation begins: Set REA_KUNA_COMMAND to the absolute path of a caller-supplied kuna executable main: doctor --provider not-a-provider --json exit: 1 code: VALIDATION_ERROR message begins: Invalid option: expected one of "hopper"|"ghidra"|"ida"|"jadx"|"kuna" published release: doctor --provider kuna --json exit: 1 code: VALIDATION_ERROR message begins: Invalid option: expected one of "hopper"|"ghidra"|"ida"|"jadx" ``` ### Typed outcome or recovery expected The guidance should agree with the accepted provider IDs. Kuna's exit 1 above indicates missing configuration, not option rejection. An unknown provider should continue to produce a validation error. ### Analysis or suspected cause Source-derived conclusion: the CLI guide's restrictive list is narrower than the main allowlist. The dedicated guide and runtime agree, supporting a documentation correction rather than removal of Kuna support. ### Additional context No configured Kuna execution or analysis was tested. The issue is confined to documentation of provider selection.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#2405
No description provided.