usestrix/strix · error · SystemExit
No run named '{requested}' under ./{RUNS_DIR_NAME}.
Error message
No run named '{requested}' under ./{RUNS_DIR_NAME}. What it means
Raised by the `run_view` viewer CLI (via SystemExit(1)) when the run name requested on the command line does not exist under ./strix_runs. The viewer enumerates run directories before opening; a mismatch between the requested name and the discovered directories aborts startup. It first prints the available run names (up to 20) to help correct the invocation.
Source
Thrown at strix/interface/viewer/cli.py:139
available = (
sorted(
(child.name for child in base.iterdir() if run_record_path(child).is_file()),
reverse=True,
)
if base.is_dir()
else []
)
if requested:
console.print(f"[bold red]No run named '{requested}' under ./{RUNS_DIR_NAME}.[/]")
else:
console.print(f"[bold red]No runs found under ./{RUNS_DIR_NAME}.[/]")
if available:
console.print("Available runs:")
for name in available[:20]:
console.print(f" [cyan]{name}[/]")
raise SystemExit(1)
__all__ = ["run_view"]
View on GitHub (pinned to 8551339130)
Solutions
- Re-run the viewer without arguments (or check the printed 'Available runs' list) and use one of the listed names exactly.
- Verify you are in the working directory that contains the strix_runs directory holding your run (RUNS_DIR_NAME is 'strix_runs', see strix/core/paths.py).
- If the run directory was moved or renamed, move it back under ./strix_runs with the expected name.
- If no runs exist at all, first complete a scan so a run directory is created.
Example fix
# before strix view myrun-typo # No run named 'myrun-typo' under ./strix_runs. # after strix view # list mode / pick from 'Available runs' strix view myrun # exact name as shown by the listing
Defensive patterns
Strategy: validation
Validate before calling
from pathlib import Path
from strix.core.paths import RUNS_DIR_NAME
def run_exists(cwd: Path, name: str) -> bool:
return (cwd / RUNS_DIR_NAME / name).is_dir()
available = sorted(p.name for p in (Path.cwd() / RUNS_DIR_NAME).glob("*") if p.is_dir())
assert run_exists(Path.cwd(), requested), f"unknown run; available: {available[:20]}" Try / catch
# SystemExit(1) with a rendered message — catch at CLI boundary only:
try:
run_view(...)
except SystemExit as e:
print(f"viewer aborted with code {e.code}"); raise Prevention
- Always invoke the viewer from the scan's original working directory so ./strix_runs resolves to the same folder.
- Run the viewer with no name first to list available runs, then script against the exact printed names.
- Treat run directory names as immutable identifiers; never rename after a scan.
When it happens
Trigger: Running `strix view <name>` (or the equivalent viewer CLI) with a run name that has no matching directory under ./strix_runs — e.g. a typo, a renamed directory, or running the command from a working directory that contains a different (or empty) strix_runs folder.
Common situations: Typo in the run name; running the viewer from the wrong cwd so ./strix_runs resolves elsewhere; the run directory was deleted, moved, or archived; CI copied artifacts to a different path than where the viewer is invoked.
Related errors
- Viewer UI is not built.\nBuild it with: cd strix/interface/v
- strix_image is not configured. Set it in ~/.strix/cli-config
- Invalid target '{target}': {e}
- Unsupported scope mode: {scope_mode}
- Target must be a non-empty string
AI-assisted analysis of usestrix/strix@8551339130 (2026-08-15).
Data as JSON: /api/errors/613840bee42e1952.
Report an issue: GitHub.