{"record":{"id":"eac7d3cb9b9481d9","repo":"jdx/mise","slug":"task-not-found-use-mise-tasks-ls-all-hid","errorCode":null,"errorMessage":"Task not found: {}, use `mise tasks ls --all --hidden` to list all tasks","messagePattern":"Task not found: (.+?), use `mise tasks ls --all --hidden` to list all tasks","errorType":"exception","errorClass":"eyre::Report","httpStatus":null,"severity":"error","filePath":"src/cli/tasks/info.rs","lineNumber":64,"sourceCode":"        let task = matching.and_then(|m| m.first().cloned().cloned());\n\n        if let Some(task) = task {\n            // Resolve remote task files before displaying task info\n            let mut tasks = vec![task.clone()];\n            // always pass no_cache=false as the command doesn't take no-cache argument\n            // MISE_TASK_REMOTE_NO_CACHE env var is still respected if set\n            TaskFetcher::new(false)\n                .fetch_tasks(&config, &mut tasks)\n                .await?;\n            let task = &tasks[0];\n\n            if self.json {\n                self.display_json(&config, task).await?;\n            } else {\n                self.display(&config, task).await?;\n            }\n        } else {\n            bail!(\n                \"Task not found: {}, use `mise tasks ls --all --hidden` to list all tasks\",\n                self.task\n            );\n        }\n\n        Ok(())\n    }\n\n    async fn display(&self, config: &Arc<Config>, task: &Task) -> Result<()> {\n        info::inline_section(\"Task\", &task.display_name)?;\n        if !task.aliases.is_empty() {\n            info::inline_section(\"Aliases\", task.aliases.join(\", \"))?;\n        }\n        info::inline_section(\"Description\", &task.description)?;\n        info::inline_section(\n            \"Source\",\n            task.config_sources().iter().map(display_path).join(\", \"),\n        )?;","sourceCodeStart":46,"sourceCodeEnd":82,"githubUrl":"https://github.com/jdx/mise/blob/9dcfcaa0dc8747a2577d3270b69bb9d8313b2807/src/cli/tasks/info.rs#L46-L82","documentation":"`mise tasks info <name>` found no task with that name: it was not in any loaded mise.toml/task file, and the fallback remote task fetcher (TaskFetcher, used for `owner/repo` style names) also returned nothing, so the code falls through to the bail in src/cli/tasks/info.rs:64. The message points you at `mise tasks ls --all --hidden` because hidden tasks and tasks from other config layers are invisible by default.","triggerScenarios":"`mise tasks info buld` (typo), a task defined in a subdirectory or different config layer not loaded from cwd, a hidden task (name starting with _), or `mise tasks info owner/repo:task` where the remote task does not exist or cannot be fetched.","commonSituations":"Running mise from a subdirectory instead of the project root; task renamed between branches; typo'd task name in a script; expecting a task from a nested package's mise.toml that isn't in the config chain.","solutions":["List what actually exists: `mise tasks ls --all --hidden` and copy the exact name (note leading underscore for hidden tasks)","Run `mise tasks info <name>` from the directory whose mise.toml defines the task (usually the project root)","Check the tasks section of mise.toml / tasks/*.toml for the definition and its aliases"],"exampleFix":"# before\n$ mise tasks info buld\n# error: Task not found: buld\n\n# after\n$ mise tasks ls --all --hidden   # find exact name \"build\"\n$ mise tasks info build","handlingStrategy":"validation","validationCode":"task=\"build\"\nif mise tasks ls --all --hidden 2>/dev/null | awk '{print $1}' | grep -qx \"${task#*:}\"; then\n  mise tasks info \"$task\"\nelse\n  echo \"task '$task' not defined here\" >&2; exit 1\nfi","typeGuard":null,"tryCatchPattern":"mise tasks info \"$task\" || { echo \"unknown task: $task — run `mise tasks ls --all --hidden`\" >&2; exit 1; }","preventionTips":["Run `mise tasks ls --all --hidden` when onboarding to learn exact (and hidden, underscore-prefixed) names","Pin scripts to the project root (the dir with mise.toml) before resolving tasks","Prefer exact task names from mise.lock/docs over typed-from-memory names"],"tags":["mise","tasks","task-info","config-discovery","cli"],"backgroundTag":"task-not-found","analyzedSha":"9dcfcaa0dc8747a2577d3270b69bb9d8313b2807","analyzedAt":"2026-08-17T14:28:50.624Z","schemaVersion":2},"datasetVersion":"2026-08-21T13:17:26.733Z"}