CLI
Use the SalesTouch CLI for deterministic scripts and AI-first terminal workflows.
CLI
The CLI is the thinnest public surface on top of the shared SalesTouch runtime. It is ideal for scripts, shell automation and agent loops that prefer plain commands over HTTP calls.
The npm package is not published yet, so run the examples below from the repository root with pnpm salestouch ....
For agent setup, the recommended bootstrap is:
pnpm salestouch setup --claude --loginThat installs CLI + skills by default. Add --mcp only when you want MCP instead.
If you run pnpm salestouch setup with no setup flags in an interactive terminal, SalesTouch opens a small multi-step setup wizard.
Execute a public SalesTouch command from the terminal.
pnpm salestouch commands run lead.search --input-json '{"query":"vp sales"}' --json
Useful pairings
- Use
salestouch commands listto discover commands. - Use
salestouch commands schema <command_id>before generating payloads or reviewing the public run output contract. - Runtime responses default to
full. - Use
salestouch commands run ... --compactonly when token savings matter more than prospecting quality. Compact mode can noticeably reduce the quality of lead selection, personalization, and next-step decisions.
Find leads already known by SalesTouch with filters designed for prospecting workflows.
When to use
Use this before enrichment, messaging, or CRM updates when the agent needs to identify the right lead record.
Output notes
- Responses default to `full` mode through the public API and CLI.
- Use `compact` only when token savings matter more than prospecting quality. It can noticeably reduce prospecting quality.
Output schema
{
"type": "object",
"properties": {
"leads": {
"type": "array",
"items": {
"type": "object",
"properties": {
"lead_id": {
"type": "string"
},
"avatar_url": {
"type": "string"
},
"name": {
"type": "string"
},
"headline": {
"type": "string"
},
"company": {
"type": "string"
},
"job_title": {
"type": "string"
},
"score": {
"type": "number"
},
"linkedin_url": {
"type": "string"
}
},
"required": [
"lead_id",
"avatar_url",
"name",
"headline",
"company",
"job_title",
"score",
"linkedin_url"
],
"additionalProperties": false
}
},
"count": {
"type": "integer"
}
},
"required": [
"leads",
"count"
],
"additionalProperties": false
}
CLI
salestouch commands run lead.search --input-json '{"query":"<string>","first_name":"<string>","last_name":"<string>"}' --json
Payload
{
"query": "<string>",
"first_name": "<string>",
"last_name": "<string>"
}