mvanhorn/last30days-skill · error

engine: last30days.py not found in cache %s: %w

Error message

engine: last30days.py not found in cache %s: %w

What it means

Error "engine: last30days.py not found in cache %s: %w" thrown in mvanhorn/last30days-skill.

Source

Thrown at mcp/internal/engine/run.go:79

// receives the parent environment (so MCPB user_config env-injection
// reaches the engine) plus ExtraEnv and a PYTHONPATH that points at the
// cache so the engine's `from lib import ...` statements resolve.
//
// A missing interpreter, a non-zero exit, and a timeout each surface as
// distinct errors so the tool handler can map them to user-facing
// messages without re-parsing stderr.
func Run(ctx context.Context, opts RunOptions) (*RunResult, error) {
	if opts.CacheDir == "" {
		return nil, errors.New("engine: CacheDir is required")
	}
	pythonPath, err := resolvePython(opts.PythonPath)
	if err != nil {
		return nil, err
	}

	scriptPath := filepath.Join(opts.CacheDir, "last30days.py")
	if _, err := os.Stat(scriptPath); err != nil {
		return nil, fmt.Errorf("engine: last30days.py not found in cache %s: %w", opts.CacheDir, err)
	}

	timeout := resolveTimeout(opts.Timeout)
	subCtx, cancel := context.WithTimeout(ctx, timeout)
	defer cancel()

	args := append([]string{scriptPath}, opts.Args...)
	cmd := exec.CommandContext(subCtx, pythonPath, args...)
	cmd.Env = buildEnv(opts.CacheDir, opts.ExtraEnv)

	var stdout, stderr bytes.Buffer
	cmd.Stdout = &stdout
	cmd.Stderr = &stderr

	err = cmd.Run()
	res := &RunResult{
		Stdout:   stdout.Bytes(),
		Stderr:   stderr.Bytes(),

View on GitHub (pinned to c7460f6114)

Solutions

  1. Delete the cache directory so the engine re-extracts a fresh copy on the next run.
  2. Set LAST30DAYS_CACHE_DIR to a clean writable directory to force re-extraction.

When it happens

Trigger: Fires when the extracted cache directory does not contain last30days.py at the expected path, indicating a partial or corrupted extraction, a version mismatch, or manual tampering with the cache.

Common situations: See trigger scenarios.


AI-assisted analysis of mvanhorn/last30days-skill@c7460f6114 (2026-08-15). Data as JSON: /api/errors/63d417307f3e885c. Report an issue: GitHub.