{"slug":"cargo-quickstart","title":"cargo-quickstart","summary":"Guided first-run demo for Cargo — one persona question to 25 real leads with a cost receipt in under two minutes, ending by saving the pull as a recurring play. Triggers: \"show me what Cargo can do\", \"give me a demo\", \"take me on a tour\", \"quickstart\", \"getting started with Cargo","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-08-24T17:37:53.528577Z","repo":{"url":"https://github.com/getcargohq/cargo-skills","stars":19,"forks":3,"license":"MIT","updatedAt":"2026-09-26T20:22:27Z"},"bodyHtml":"<hr>\n<h2>name: cargo-quickstart\ndescription: \"Guided first-run demo for Cargo — one persona question to 25 real leads with a cost receipt in under two minutes, ending by saving the pull as a recurring play. Triggers: \"show me what Cargo can do\", \"give me a demo\", \"take me on a tour\", \"quickstart\", \"getting started with Cargo\", \"I just installed Cargo\", \"my workspace is empty\", \"does this actually work\". Skip when: the user has a real job to run (build a list, enrich a CSV, find emails) — use cargo-gtm; when they want CLI reference or routing — use the cargo router skill.\"\nversion: \"1.0.1\"\ncompatibility: Requires @cargo-ai/cli (npm). Sign in or create an account with <code>cargo-ai login --email</code> (emailed code, no browser), <code>--oauth</code>, or an API token\nhomepage: <a href=\"https://github.com/getcargohq/cargo-skills\">https://github.com/getcargohq/cargo-skills</a>\nmetadata:\nauthor: getcargo\nopenclaw:\nrequires:\nbins:\n- cargo-ai\ninstall:\n- kind: node\npackage: \"@cargo-ai/cli@latest\"\nbins:\n- cargo-ai\nhomepage: <a href=\"https://github.com/getcargohq/cargo-skills\">https://github.com/getcargohq/cargo-skills</a></h2>\n<h1>Cargo Quickstart — first value in two minutes</h1>\n<p>One guided demo: pull ~25 fresh leads matching a buyer persona the user picks, show the cost receipt, then save the pull as a recurring play. The point is not the list — it's that in minute 3 the user owns a running system, not a one-off result.</p>\n<p><strong>A new account starts with 100 free credits — no card.</strong> This demo spends about <strong>0.5</strong> of them. Say that out loud before the first paid call (\"this costs about half a credit of your 100 free ones\"): it converts the moment from <em>a purchase decision</em> into <em>a look around</em>, which is the whole job of a quickstart. Never let a new user think the demo is why they'd run out.</p>\n<h2>Bootstrap</h2>\n<p>Already signed in (<code>cargo-ai whoami</code> returns a workspace)? Skip to the next section.</p>\n<pre><code>npm install -g @cargo-ai/cli            # no global install? prefix every command with `npx @cargo-ai/cli`\ncargo-ai login --email you@company.com  # emailed code, no browser; creates the account on first use\n                                        # alternatives: --oauth (browser) · --token &lt;api-token&gt; (CI)\ncargo-ai whoami                         # confirm the active workspace before any write\n</code></pre>\n<p>Every command prints JSON to stdout; failures exit non-zero with <code>{\"errorMessage\": \"...\"}</code>. Anything that creates a run or a batch is async — pass <code>--wait-until-finished</code> or poll the matching <code>get</code>. When the full skill bundle is installed, <a href=\"../cargo/references/prerequisites.md\"><code>../cargo/references/prerequisites.md</code></a> adds the CLI version pin, token scopes, and the admin-only surface.</p>\n<h2>The one question</h2>\n<p>Ask exactly <strong>one</strong> question before doing anything:</p>\n<blockquote>\n<p><strong>\"Who do you sell to?\"</strong> (a persona in a few words — e.g. \"Heads of RevOps at mid-market SaaS\")</p>\n</blockquote>\n<p>Everything else — provider, filters, limits — you decide. Don't ask about output format, volume, or providers; defaults below.</p>\n<h2>Speed budget — HARD RULES</h2>\n<p>The demo has a two-minute budget from answer to deliverable. On the fast path:</p>\n<ul>\n<li><strong>No discovery detours.</strong> Do not run <code>cargo-ai --version</code>, <code>cargo-ai whoami</code>, <code>connection connector list</code>, or any exploratory command first. Auth problems will surface as errors on the first real call — handle them then.</li>\n<li><strong>One command block per step</strong>, no narration between commands.</li>\n<li><strong>Paid work is capped at ~1 credit total.</strong> The demo uses the cheapest sourcing action in the catalog (<code>salesNavigator.searchLeads</code>, 0.02/record → 25 records ≈ 0.5 credits). Nothing else paid runs without asking.</li>\n<li><strong>Never dead-end.</strong> Every step has a fallback (ladder below). If a rung fails, drop one rung silently and keep moving.</li>\n</ul>\n<h2>Fast path</h2>\n<p>Translate the persona into a <code>searchLeads</code> filter (quote the exact title phrase in <code>keywords</code>; a bare keyword matches loosely and pollutes the page) and run:</p>\n<pre><code># 1. Execute — returns a run object; note run.uuid and run.workflowUuid.\n#    searchLeads returns a 25-row page minimum (limit below 25 still bills 25 × 0.02 = 0.5 credits).\ncargo-ai orchestration action execute \\\n  --action '{\"kind\":\"connector\",\"integrationSlug\":\"salesNavigator\",\"actionSlug\":\"searchLeads\",\"config\":{}}' \\\n  --data '{\"keywords\": \"\\\"&lt;persona title phrase&gt;\\\"\", \"limit\": 25}' \\\n  --wait-until-finished &gt; /tmp/quickstart-run.json\n\n# 2. Fetch the output data (NOT in the execute stdout) — signed URL, then filter to THIS run\nRUN_UUID=$(jq -r '.run.uuid' /tmp/quickstart-run.json)\nWF_UUID=$(jq -r '.run.workflowUuid' /tmp/quickstart-run.json)\ncurl -s \"$(cargo-ai orchestration run download-outputs \\\n  --workflow-uuid \"$WF_UUID\" --output-node-slug action --format json | jq -r '.url')\" \\\n  &gt; /tmp/quickstart-outputs.json\n\n# 3. Show the table (the file holds ALL of the workflow's runs — filter by _uuid;\n#    each row's .output is the leads array directly, fields are snake_case)\njq -r --arg u \"$RUN_UUID\" \\\n  '[.[] | select(._uuid==$u)][0].output[] | [.full_name, .job_title, .company_name, (.recently_hired // false)] | @tsv' \\\n  /tmp/quickstart-outputs.json | head -25\n</code></pre>\n<p>Show the table (name · title · company · recently-hired), not the raw JSON. <code>recently_hired: true</code> rows are the demo's headline — lead with them (\"6 of these 25 just started the job — the exact moment to reach out\").</p>\n<h3>Fallback ladder (on auth/error, drop a rung — don't stop)</h3>\n<ol>\n<li><code>salesNavigator.searchLeads</code> (0.02/record) — primary.</li>\n<li><code>theirStack.searchJobs</code> (0.5) — reframe as \"companies hiring your persona right now\" (job postings for the persona's title). Same wow, different angle.</li>\n<li><code>waterfall.searchProspects</code> (3/record) — <strong>exceeds the ~1-credit demo cap, so this rung asks first</strong>: \"The two cheap sources aren't connected; I can pull 5 matches via waterfall for ~15 credits instead — run it, or connect Sales Navigator first (free)?\" Run only on an explicit yes, with <code>limit</code> capped at 5.</li>\n<li>Nothing connected at all → run the free path: <code>cargo-ai connection integration list | head</code>, show what <em>could</em> be wired, and offer to connect one (browser auth) — the demo resumes after.</li>\n</ol>\n<h2>The receipt (mandatory, verbatim discipline)</h2>\n<p>The demo is itself the pilot from <a href=\"../cargo-gtm/references/cost-discipline.md\"><code>../cargo-gtm/references/cost-discipline.md</code></a>. Close it with a receipt:</p>\n<ul>\n<li>Credits spent + balance remaining (<code>cargo-ai billing subscription get</code> — remaining = <code>subscriptionAvailableCreditsCount − subscriptionCreditsUsedCount</code>). For a brand-new account, frame it against the <strong>100 free starting credits</strong> rather than as a bare number — \"0.5 spent, 99.5 of your 100 free credits left\" lands very differently from \"99.5 credits remaining\".</li>\n<li>Hit-rate: \"25 of 25 returned\" (or what actually came back, and which rows look off).</li>\n</ul>\n<h2>Minute 3 — save it as a play</h2>\n<p>Immediately offer to make the pull recurring — this is the step that shows what Cargo <em>is</em>:</p>\n<blockquote>\n<p>\"Want this to run by itself? I can save this exact search as a play that runs weekly and writes new matches into a model — new <code>&lt;persona&gt;</code> leads land without you asking.\"</p>\n</blockquote>\n<p>On yes, follow <a href=\"../cargo-gtm/recipes/save-as-play.md\"><code>../cargo-gtm/recipes/save-as-play.md</code></a> with the demo's action + filter as the workflow body and a weekly cron.</p>\n<h2>After the demo — route onward</h2>\n<p>Propose 2–3 next steps grounded in the rows just pulled, per the next-step spec in <a href=\"../cargo-gtm/SKILL.md\"><code>../cargo-gtm/SKILL.md</code></a> (§4): e.g. \"enrich these 25 with firmographics (~0.5 cr each)\", \"find + verify emails for the best 10 (~1.4 cr each)\", or something else entirely. From here, real GTM work belongs to <a href=\"../cargo-gtm/SKILL.md\"><code>cargo-gtm</code></a> — read it before anything beyond the demo.</p>\n","files":[{"path":"SKILL.md","sizeBytes":7658,"isText":true},{"path":"skill-metadata.json","sizeBytes":449,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-09-03T09:49:37.393972Z","sha256":"01F5E15F20E6F161F2E1313EFA3BCC1815127645EF7970073036FA7632BE383D","sizeBytes":4117},"review":null,"source":{"repositoryUrl":"https://github.com/getcargohq/cargo-skills","path":"cargo-quickstart","license":"MIT","commit":"d5be190e5c54dab2205a22178c2c3674c7c5f892","subtreeSha":"DC0CC2D4E3BA9F0888EC3F50ADED7AA8067AE2C5219CFDFF0BEF54A08C56D1B4","lastSyncedAt":"2026-09-27T20:56:53.307476Z"},"reviewedAt":"2026-09-03T09:51:23.180426Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/getcargohq/cargo-skills/tree/main/cargo-quickstart"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install getcargohq-cargo-skills@llmmart"},{"target":"git","command":"git clone https://github.com/getcargohq/cargo-skills.git"}]}