{"record":{"id":"ab4eab485b5b2774","repo":"jdx/mise","slug":"self-is-in-the-mise-tool-registry-but-none-of-it","errorCode":null,"errorMessage":"{self} is in the mise tool registry but none of its backends ({}) are supported in the current configuration","messagePattern":"(.+?) is in the mise tool registry but none of its backends \\((.+?)\\) are supported in the current configuration","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/cli/args/backend_arg.rs","lineNumber":348,"sourceCode":"                            \"vfox-backend plugin '{plugin_name}' exists but '{tool_name}' is not available or the plugin is not properly installed\"\n                        );\n                    }\n                    PluginType::Package => {\n                        bail!(\"package plugin '{plugin_name}' is not a tool backend\");\n                    }\n                }\n            } else {\n                // Plugin doesn't exist\n                bail!(\"{plugin_name} is not a valid plugin name\");\n            }\n        } else {\n            // Check if the tool is in the registry but has no available backends\n            if let Some(rt) = REGISTRY.get(self.short.as_str())\n                && rt.backends().is_empty()\n                && !rt.backends.is_empty()\n            {\n                let all_backends: Vec<&str> = rt.backends.iter().map(|rb| rb.full).collect();\n                bail!(\n                    \"{self} is in the mise tool registry but none of its backends ({}) are supported in the current configuration\",\n                    all_backends.join(\", \")\n                );\n            }\n\n            let registry_shorts: Vec<&str> = REGISTRY.keys().collect();\n            let mut suggestions: Vec<String> =\n                xx::suggest::similar_n_with_threshold(&self.short, &registry_shorts, 3, 0.8)\n                    .into_iter()\n                    .filter(|s| *s != self.short)\n                    .map(|s| s.to_string())\n                    .collect();\n\n            let mise_names: HashSet<String> = suggestions.iter().cloned().collect();\n            for aqua_id in crate::aqua::aqua_registry_wrapper::aqua_suggest(&self.short) {\n                // Skip aqua suggestions whose tool name matches an existing mise suggestion\n                let name = aqua_id\n                    .rsplit_once('/')","sourceCodeStart":330,"sourceCodeEnd":366,"githubUrl":"https://github.com/jdx/mise/blob/9dcfcaa0dc8747a2577d3270b69bb9d8313b2807/src/cli/args/backend_arg.rs#L330-L366","documentation":"Bailed from BackendArg::backend() (src/cli/args/backend_arg.rs:348) when the bare short name exists in the bundled REGISTRY with raw backends, but RegistryTool::backends() - which filters by settings.disable_backends, platform match, asdf-removal on Windows, and experimental mode - returns an empty list. The message prints every rejected backend so you can see exactly what was filtered out.","triggerScenarios":"Requesting a registry tool whose only backends are all excluded in the current configuration: an asdf-only tool on Windows (asdf is removed there), a backend listed in settings disable_backends, a platform/arch mismatch via backend_matches_platform, or an experimental-only backend while settings.experimental = false.","commonSituations":"Windows users hitting asdf-only tools; hardened setups that disable backends for policy reasons; experimental flag off for tools whose registry entries sit behind the flag; arm64 vs amd64 platform filters.","solutions":["Enable the filtered backend: remove it from disable_backends in ~/.config/mise/config.toml, or set experimental = true when the backend is experimental","Use the explicit full backend string shown in the message, e.g. 'mise use asdf:<plugin>' or the aqua id, which bypasses the filtered lookup","On Windows, prefer the aqua/github variant of the tool instead of its asdf plugin","Update mise: registry entries regularly gain platform-appropriate backends"],"exampleFix":"# before: config.toml has disable_backends = ['vfox'] and the tool only has a vfox backend\nmise use toolname\n# Error: toolname is in the mise tool registry but none of its backends (vfox:...) are supported in the current configuration\n\n# after: edit ~/.config/mise/config.toml and remove 'vfox' from disable_backends\nmise use toolname","handlingStrategy":"validation","validationCode":"# bash: confirm the tool resolves to at least one usable backend before depending on it\nif ! mise ls-remote \"$TOOL\" >/dev/null 2>&1; then\n  echo \"no usable backend for $TOOL (check disable_backends / platform / experimental)\" >&2\n  exit 1\nfi","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Keep settings.disable_backends minimal and document each removal","On Windows, avoid asdf-only tools; pick aqua/github-backed alternatives","Set settings.experimental = true when using experimental-backed registry entries"],"tags":["mise","registry","backends","settings","platform-support"],"backgroundTag":"no-supported-backend","analyzedSha":"9dcfcaa0dc8747a2577d3270b69bb9d8313b2807","analyzedAt":"2026-08-17T14:28:50.624Z","schemaVersion":2},"datasetVersion":"2026-08-21T13:17:26.733Z"}