<!-- Canonical page: https://docs.radforge.dev/troubleshooting/ -->

# Troubleshooting

## The command is not found

Confirm the extracted `rad` binary is executable and its directory is on `PATH`. Run the absolute path once, then `rad --version`.

## No supported project is detected

Run `rad doctor --json`. Confirm that the required lockfile, project manifest, and test runner exist in the workspace Radforge should analyze. Use `--language typescript` or `--language python` when the repository contains both.

## Changed analysis selects nothing

Verify the comparison ref exists locally and includes the expected diff. Try `git diff --name-only <ref>...HEAD`. Review repeated `--exclude` flags and `.muttignore`.

## Authentication fails

Confirm `RADFORGE_API_TOKEN` is set in the same process environment and has no surrounding whitespace. Do not print the value. Check `RADFORGE_REMOTE_URL`, then run `rad remote doctor`.

## A remote plan is rejected

Regenerate the plan with the current CLI. Confirm that every source file is tracked by Git with `git ls-files --error-unmatch <path>`. Run `rad remote doctor` to see the languages and upload limits supported by the server.

## A run is stuck or fails

Capture `rad --version`, `rad doctor --json`, `rad remote doctor --json`, and `rad remote status --run <id> --json`. Remove secrets and private paths that support does not need. Include the run ID. Do not attach source archives unless support provides a secure upload method and asks for specific files.
