windmill-labs/windmill · error · Error
--from '${opts.from}' matched no script in f/${f}.
Error message
--from '${opts.from}' matched no script in f/${f}. What it means
No-match guard for --from in the pipeline run command: the token resolved to nothing and the fallback basename scan across script runnables in folder f found zero matches. The input at fault is the --from value — mistyped name, wrong folder scope, or a script that isn't in the loaded pipeline graph at all.
Source
Thrown at cli/src/commands/pipeline/pipeline.ts:740
// pipeline in topological order rather than forcing a single start, the way
// `dbt run` (no `--select`) runs the entire project. `--to` still needs an
// explicit `--from` since bounding is relative to one start.
let runAll = false;
let start: string | undefined;
if (opts.from) {
const resolved = resolveToken(graph, opts.from);
if (!resolved) {
// Distinguish "no match" from "ambiguous short name" (resolveToken
// returns undefined for both) so the hint is actionable.
const matches = graph.runnables.filter(
(r) => r.usage_kind === "script" && (r.path.split("/").pop() ?? r.path) === opts.from,
);
if (matches.length > 1) {
throw new Error(
`--from '${opts.from}' matches multiple scripts (${matches.map((r) => r.path).sort().join(", ")}) — pass the full path.`,
);
}
throw new Error(`--from '${opts.from}' matched no script in f/${f}.`);
}
if (macroLibPaths.has(scriptPathOf(resolved))) {
throw new Error(
`--from '${opts.from}' is a \`// macros\` library — definition-only, injected into consuming scripts at run time, never a runnable step.`,
);
}
// A `--local` display-only node (a non-`// pipeline` DuckDB script surfaced
// only because it calls a macro) has no previewable content — reject it
// clearly rather than admitting it and silently producing an empty plan.
if (notRunnablePaths.has(scriptPathOf(resolved))) {
throw new Error(
`--from '${opts.from}' isn't a \`// pipeline\` script — it appears in the local graph only as a macro consumer (lineage). Mark it \`// pipeline\` to run it.`,
);
}
if (!resolved.startsWith("script:")) {
throw new Error(
`--from '${opts.from}' is an asset, not a runnable — start a run from a script (assets are produced, not run).`,
);View on GitHub (pinned to e474e8803c)
Solutions
- Verify the script path (wmill flow ls or the UI) and pass the full path to --from
- Check you're running against the intended folder — the graph is scoped to f/{f}
- If the script should be runnable, mark it // pipeline so it enters the graph as a runnable
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at cli/src/commands/pipeline/pipeline.ts:740 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of windmill-labs/windmill@e474e8803c (2026-09-03).
Data as JSON: /api/errors/066d4bc2da7e55d9.
Report an issue: GitHub.