This is the fast recovery page for the most common operational failures.
Auth issues
not logged in. Run salesprompter auth:login.
Cause:
- no local session file exists in the configured config directory
Fix:
node ./dist/cli.js auth:login
node ./dist/cli.js auth:whoami --verify
If you intentionally use a non-default config directory, verify SALESPROMPTER_CONFIG_DIR.
session expired. Run salesprompter auth:login.
Cause:
- the stored
expiresAtis now in the past
Fix:
node ./dist/cli.js auth:login
Device login is not configured on this Salesprompter app
Cause:
- the backend does not expose working device auth endpoints
Fix:
- issue a CLI token from the app
- run:
node ./dist/cli.js auth:login --token "<token-from-app>"
BigQuery issues
bq: command not found
Cause:
- the local BigQuery CLI is not installed or not on
PATH
Fix:
- install the Google Cloud SDK or otherwise make
bqavailable - confirm with:
bq version
Query works in one environment and fails in another
Cause:
- the project id resolved from environment variables changed
Fix:
- set
BQ_PROJECT_IDexplicitly - confirm the active value before running warehouse-backed commands
Lead normalization fails on BigQuery output
Common causes:
- missing
firstNameandlastName - missing required
companyName,domain,industry,title, oremail - unexpected warehouse field mapping
Fix:
- inspect the raw output written with
--out - adjust field mappings on
leads:lookup:bq - rerun with
--sql-outso the exact SQL is inspectable
Instantly issues
Instantly campaign id is required
Fix:
- pass
--campaign-id - or set
INSTANTLY_CAMPAIGN_ID
Instantly API key is required
Fix:
- set
INSTANTLY_API_KEY
A dry run succeeded but no leads were created
Cause:
- dry run is the default behavior
Fix:
- rerun with
--applyonly after reviewing the target campaign and payload
Fewer leads synced than expected
Likely cause:
- dedupe skipped emails already present in the campaign
Fix:
- inspect the reported
skippedcount - use
--allow-duplicatesonly if duplicates are intentional
Domain-finder issues
Too few companies make it to writeback
Check:
domainfinder:backlog:bqdomainfinder:candidates:bqdomainfinder:audit
This usually indicates an upstream backlog, blacklisted domains, or poor candidate quality rather than a writeback bug.
The new selector disagrees with historical behavior
Use:
node ./dist/cli.js domainfinder:compare-pipedream --in ./data/domain-candidates.json --out ./data/domain-comparison.json
That report tells you whether the difference is due to LinkedIn-preferred selection or Hunter-count ordering.
Docs issues
mint or mintlify command is missing
Fix:
npm install
npm run docs:dev
The repository pins Mint as a local dev dependency, so you should not need a global install.
Docs page exists but is not in navigation
Cause:
- the page was created without adding it to
docs.json
Fix:
- update
docs.json - rerun:
npm run docs:broken-links
Escalation rule
When the issue affects:
- auth contract shape
- JSON output shape
- BigQuery SQL semantics
- domain-finder writeback rules
treat it as a product contract issue, not just a local bug.