pbakaus/impeccable · error

Pass one explicitly, e.g. --providers=.claude,.cursor

Error message

Pass one explicitly, e.g. --providers=.claude,.cursor

What it means

This is the companion hint message printed alongside the 'Could not determine a target harness folder' error during install. It is emitted to stderr as the actionable guidance line when target auto-detection fails, telling the user to pass --providers explicitly.

Source

Thrown at crates/skills/src/commands.rs:673

            }
            Ok(())
        })();
        if let Some(dir) = &bundle_dir {
            util::rm_rf(dir);
        }
        return match outcome {
            Ok(()) => Err(Flow::Exit(0)),
            Err(e) if e == EXIT_1 => Err(Flow::Exit(1)),
            Err(e) => {
                err(io, &format!("Install check failed: {e}"));
                Err(Flow::Exit(1))
            }
        };
    }

    if targets.is_empty() {
        err(io, "Could not determine a target harness folder.");
        err(io, "Pass one explicitly, e.g. --providers=.claude,.cursor");
        return Err(Flow::Exit(1));
    }

    let want_hooks = install_hooks && decide_hook_install(&mut prompt, io, &hook_root, &targets, yes)?;

    out(io, "\nDownloading impeccable skills...");
    let bundle_dir = match bundle::download_and_extract_bundle(&sys) {
        Ok(d) => d,
        Err(e) => {
            err(io, &format!("Download failed: {e}"));
            return Err(Flow::Exit(1));
        }
    };

    sys.migrate_unprefix_impeccable(&install_root, scope_opt);

    let outcome: Result<(Vec<String>, Vec<bundle::AgentResult>, Vec<&'static str>), String> = (|| {
        let written = bundle::copy_provider_skills(&sys, &bundle_dir, &install_root, &targets, scope_opt)?;

View on GitHub (pinned to 2bc2879276)

Solutions

  1. Rerun with `--providers=.claude,.cursor` (comma-separated list of target folders).
  2. Create or move into a directory containing a recognized harness folder before installing.

Example fix

// before
impeccable install   # aborts: no target detected
// after
impeccable install --providers=.claude
Defensive patterns

Strategy: validation

Validate before calling

PROVIDERS=""
[ -d .claude ] && PROVIDERS=".claude"
[ -d .cursor ] && PROVIDERS="$PROVIDERS,.cursor"
[ -n "$PROVIDERS" ] || PROVIDERS=".claude"
impeccable install --providers="$PROVIDERS"

Try / catch

impeccable install --providers="${PROVIDERS:-.claude}" || exit 1

Prevention

When it happens

Trigger: Always co-emitted with error 170: `install` invoked with zero detected targets, i.e. no harness folder found and no --providers flag given.

Common situations: Same as the missing-target scenario: fresh projects without a harness folder, running in the wrong directory, or users unaware --providers exists.

Understand the failure class

Background: "--flag is required" and "must specify" CLI errors: how missing-required-flag validation works and how to fix it — this error's family across 20 libraries.

Related errors


AI-assisted analysis of pbakaus/impeccable@2bc2879276 (2026-09-08). Data as JSON: /api/errors/dffaa0bd750a6681. Report an issue: GitHub.