mvanhorn/last30days-skill · error
engine: subprocess exited with code %d
Error message
engine: subprocess exited with code %d
What it means
Error "engine: subprocess exited with code %d" thrown in mvanhorn/last30days-skill.
Source
Thrown at mcp/internal/engine/run.go:111
err = cmd.Run()
res := &RunResult{
Stdout: stdout.Bytes(),
Stderr: stderr.Bytes(),
ExitCode: 0,
TimedOut: errors.Is(subCtx.Err(), context.DeadlineExceeded),
}
if err == nil {
return res, nil
}
var exitErr *exec.ExitError
if errors.As(err, &exitErr) {
res.ExitCode = exitErr.ExitCode()
if res.TimedOut {
return res, fmt.Errorf("engine: subprocess exceeded %s timeout", timeout)
}
return res, fmt.Errorf("engine: subprocess exited with code %d", res.ExitCode)
}
return res, fmt.Errorf("engine: subprocess failed to start: %w", err)
}
// resolvePython returns an absolute path to the interpreter or an error
// naming the install URL. If the caller supplied a path we trust it - tests
// rely on this to inject a stub. Otherwise we look up python3 on PATH.
func resolvePython(override string) (string, error) {
if override != "" {
return override, nil
}
path, err := exec.LookPath(DefaultPythonBinary)
if err == nil {
return path, nil
}
return "", fmt.Errorf(
"engine: %s not found on PATH (need Python %s+, install from %s; current GOOS=%s)",
DefaultPythonBinary, MinPythonVersion, PythonInstallURL, runtime.GOOS,View on GitHub (pinned to c7460f6114)
Solutions
- Read the subprocess stderr in the RunResult for the underlying Python error and fix that root cause.
- Run last30days.py directly with the same arguments to reproduce and debug the non-zero exit.
- Check that required API keys/config for the requested sources are present in the environment.
When it happens
Trigger: Fires when the last30days.py subprocess exits with a non-zero status. Inspect the captured stderr from the engine for the underlying Python error (missing keys, bad flags, source failures).
Common situations: See trigger scenarios.
AI-assisted analysis of mvanhorn/last30days-skill@c7460f6114 (2026-08-15).
Data as JSON: /api/errors/5674115b6fd8785b.
Report an issue: GitHub.