{"record":{"id":"5f2d3fd5c3f66379","repo":"HKUDS/nanobot","slug":"this-cli-app-uses-an-unsupported-install-strategy","errorCode":null,"errorMessage":"this CLI app uses an unsupported install strategy","messagePattern":"this CLI app uses an unsupported install strategy","errorType":"exception","errorClass":"CliAppError","httpStatus":null,"severity":"error","filePath":"nanobot/apps/cli/service.py","lineNumber":991,"sourceCode":"    ) -> list[str] | None:\n        strategy = self._strategy(app)\n        if strategy == \"pip\":\n            if action == \"install\":\n                return self._pip_install_argv(app)\n            if action == \"update\":\n                return self._pip_install_argv(app, update=True)\n            return self._pip_uninstall_argv(app, installed_entry=installed_entry)\n        if strategy == \"npm\":\n            return self._npm_argv(app, action)\n        if strategy == \"brew\":\n            key = {\"install\": \"install_cmd\", \"update\": \"update_cmd\", \"uninstall\": \"uninstall_cmd\"}[action]\n            return self._split_safe_command(app, key, \"brew\")\n        if strategy == \"uv\":\n            key = {\"install\": \"install_cmd\", \"update\": \"update_cmd\", \"uninstall\": \"uninstall_cmd\"}[action]\n            return self._split_safe_command(app, key, \"uv\")\n        if strategy == \"bundled\":\n            return None\n        raise CliAppError(\"this CLI app uses an unsupported install strategy\")\n\n    def _subprocess_env(self) -> dict[str, str]:\n        \"\"\"Minimal env for CLI app subprocesses — no API keys or secrets.\n\n        Mirrors the shell tool's allowlist so installed apps cannot read\n        provider credentials from the parent process environment.\n        \"\"\"\n        if sys.platform == \"win32\":\n            sr = os.environ.get(\"SYSTEMROOT\", r\"C:\\Windows\")\n            env = {\n                \"SYSTEMROOT\": sr,\n                \"COMSPEC\": os.environ.get(\"COMSPEC\", f\"{sr}\\\\system32\\\\cmd.exe\"),\n                \"USERPROFILE\": os.environ.get(\"USERPROFILE\", \"\"),\n                \"HOMEDRIVE\": os.environ.get(\"HOMEDRIVE\", \"C:\"),\n                \"HOMEPATH\": os.environ.get(\"HOMEPATH\", \"\\\\\"),\n                \"TEMP\": os.environ.get(\"TEMP\", f\"{sr}\\\\Temp\"),\n                \"TMP\": os.environ.get(\"TMP\", f\"{sr}\\\\Temp\"),\n                \"PATHEXT\": os.environ.get(\"PATHEXT\", \".COM;.EXE;.BAT;.CMD\"),","sourceCodeStart":973,"sourceCodeEnd":1009,"githubUrl":"https://github.com/HKUDS/nanobot/blob/42f37dc4c0e409eac7818a82d165c5f2757bc075/nanobot/apps/cli/service.py#L973-L1009","documentation":"Error \"this CLI app uses an unsupported install strategy\" thrown in HKUDS/nanobot.","triggerScenarios":"Thrown at nanobot/apps/cli/service.py:991 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"42f37dc4c0e409eac7818a82d165c5f2757bc075","analyzedAt":"2026-08-26T00:18:52.276Z","schemaVersion":2},"datasetVersion":"2026-08-26T04:18:47.238Z"}