CLI
Install and use the TalentSourcer AI CLI for terminal workflows and automation.
Use the CLI when you want a direct terminal interface or when an agent works in your local workspace.
Install the CLI:
npm install -g @talentsourcer/cliCreate a personal access token in TalentSourcer AI:
- Open Settings.
- Go to Personal Access Tokens.
- Create a token with the scopes your workflow needs.
- Copy the token once. Do not paste it into agent chat.
Authenticate locally:
talentsourcer auth token setVerify the connection:
talentsourcer auth status --jsonThe CLI defaults to the production TalentSourcer AI API. You normally do not need to configure a host.
Common examples
List projects:
talentsourcer projects list --jsonCreate a project:
talentsourcer projects create \
--title "Senior Backend Engineer" \
--company "Acme" \
--location "Berlin, Germany" \
--jsonList briefings for a project:
talentsourcer briefings list --project <projectId> --jsonUpdate briefing requirements from a JSON file:
talentsourcer briefings update-requirements <briefingId> \
--from-file ./requirements.json \
--jsonCreate a search:
talentsourcer searches create \
--project <projectId> \
--name "LinkedIn search" \
--description "Senior backend profiles from LinkedIn" \
--jsonCreate and fill a Research Canvas:
talentsourcer research-canvases create \
--project <projectId> \
--name "Berlin fintech market map" \
--json
talentsourcer research-canvases add-companies <researchCanvasId> \
--from-file ./research-companies.json \
--json
talentsourcer research-canvases add-terms <researchCanvasId> \
--from-file ./research-terms.json \
--json
talentsourcer research-canvases add-notes <researchCanvasId> \
--from-file ./research-notes.json \
--jsonList completed candidate checks:
talentsourcer candidate-checks list \
--project <projectId> \
--status Completed \
--limit 50 \
--jsonCreate a shortlist:
talentsourcer shortlists create \
--project <projectId> \
--name "Top candidates" \
--description "Candidates selected for recruiter review" \
--jsonMove candidates without email to another shortlist:
talentsourcer shortlists candidates <sourceShortlistId> \
--email-availability missing_email \
--json
talentsourcer shortlists move-candidates <sourceShortlistId> \
--target <targetShortlistId> \
--from-file ./shortlist-candidate-ids.json \
--jsonCreate a draft campaign from a JSON flow:
talentsourcer campaigns create \
--project <projectId> \
--name "Outbound v1" \
--from-file ./campaign-flow.json \
--jsonReview manual outreach tasks:
talentsourcer outreach-tasks list --scope my --limit 50 --jsonRemove campaign candidates from a specific company:
talentsourcer campaigns candidates <campaignId> \
--current-employer "Acme" \
--json
talentsourcer campaigns remove-candidates <campaignId> \
--from-file ./campaign-enrollment-ids.json \
--jsonTroubleshooting
If the CLI says you are not authenticated, run:
talentsourcer auth token set
talentsourcer auth status --jsonIf a command returns a permission error, create a new personal access token with the missing scope and authenticate the CLI again.
Research Canvas commands require research_canvases:read for list/get and research_canvases:write for create/update/add/remove actions.