HKUDS/nanobot · error · TuiUnavailableError

the native TUI is not available on Windows ARM64 because Bun

Error message

the native TUI is not available on Windows ARM64 because Bun FFI is disabled on that platform; use the classic prompt until the upstream runtime supports it

What it means

Error "the native TUI is not available on Windows ARM64 because Bun FFI is disabled on that platform; use the classic prompt until the upstream runtime supports it" thrown in HKUDS/nanobot.

Source

Thrown at nanobot/cli/tui_launcher.py:173

def _resolve_tui_command() -> list[str]:
    override = os.environ.get("NANOBOT_TUI_BIN", "").strip()
    if override:
        executable = Path(override).expanduser().resolve(strict=False)
        if not executable.is_file():
            raise TuiUnavailableError(f"NANOBOT_TUI_BIN does not exist: {executable}")
        return [str(executable)]

    suffix = ".exe" if os.name == "nt" else ""
    system = {"Windows": "win32", "Darwin": "darwin", "Linux": "linux"}.get(
        platform.system(),
        platform.system().lower(),
    )
    machine = {"x86_64": "x64", "AMD64": "x64", "aarch64": "arm64"}.get(
        platform.machine(),
        platform.machine().lower(),
    )
    if system == "win32" and machine == "arm64":
        raise TuiUnavailableError(
            "the native TUI is not available on Windows ARM64 because Bun FFI is disabled "
            "on that platform; use the classic prompt until the upstream runtime supports it"
        )
    asset = f"nanobot-tui-{system}-{machine}{suffix}"
    source_dir = _source_checkout_tui_dir()
    if source_dir is not None:
        bun = shutil.which("bun")
        if not bun:
            raise TuiUnavailableError(
                "this source checkout requires Bun to run its matching TUI; "
                "install Bun, then run `nanobot agent` again"
            )
        return _resolve_source_tui_command(source_dir, bun)

    packaged = Path(__file__).resolve().parents[1] / "tui" / "bin" / asset
    if packaged.is_file():
        return [str(packaged)]

View on GitHub (pinned to 42f37dc4c0)

When it happens

Trigger: Thrown at nanobot/cli/tui_launcher.py:173 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of HKUDS/nanobot@42f37dc4c0 (2026-08-26). Data as JSON: /api/errors/fe3c5b550b860f9c. Report an issue: GitHub.