AgentStack
SKILL unreviewed MIT Self-run

Deepline Gtm

skill-getaero-io-deepline-plugins-deepline-gtm · by getaero-io

Use for GTM prospecting, enrichment, qualification, account/contact research, waterfalls, email/LinkedIn lookup, personalization, scoring, campaigns, CSVs, and Deepline plays/scripts. Source discovery: deepline-pre-research. Providers: adyntel, ai_ark, allegrow, apify, attio, aviato, bettercontact, bloomberry, bluesky, browserbase, builtwith, cloudflare, contactout, crustdata, crustdata-v2, crust…

No reviews yet
0 installs
0 views
view→install

Install

$ agentstack add skill-getaero-io-deepline-plugins-deepline-gtm

Open-source listing — not yet scanned by AgentStack. Follow the source repository for install instructions.

Security review

⚠ Flagged

1 finding(s); flagged for manual review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures
  • high Pipes remote content directly into a shell (remote code execution).

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Deepline Gtm? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

GTM Meta Skill

Quick Start

npm install -g deepline
# Fallback for secure sandboxes: mkdir -p "$HOME/.local" && npm config set prefix "$HOME/.local" && export PATH="$HOME/.local/bin:$PATH" && npm install -g deepline --registry https://code.deepline.com/api/v2/npm/
deepline auth register --wait auto
deepline auth wait --timeout 120 # completes Cowork/browser approval; no-op if already connected
deepline auth status
deepline -h

Use this skill for prospecting, account research, contact enrichment, verification, lead scoring, personalization, and campaign activation.

1) What this skill governs

  • Route GTM decisions, safety gates, and provider/quality defaults before execution.
  • Keep long command chains and tooling nuance in sub-docs; provider-specific implementation detail in provider-playbooks/*.md.
  • Provide clear entry points for both paid and non-paid workflows, including --rows 0:1 one-row pilots.

Process/goal

Customer is generally trying to go from "I have an ICP" to "Here's a list of prospects with email/linkedin and very personalized content or signals". They may be anywhere in this process, but guide them along.

Discovery order: companies first, then people. When the task requires finding contacts at companies matching criteria (portfolio, ICP, hiring signal), discover the company set first, then find people at each company. Do not start with broad people-search queries.

Documentation hierarchy

  • Level 1 (SKILL.md): decision model, guardrails, approval gates, links to sub-docs.
  • Level 2 (phase docs): [finding-companies-and-contacts.md](finding-companies-and-contacts.md), [enriching-and-researching.md](enriching-and-researching.md), [writing-outreach.md](writing-outreach.md), prompts.json.
  • Level 2.5 (recipes/*.md): step-by-step playbooks for specific tasks (email lookup, LinkedIn resolution, waterfall patterns, contact finding, actor contracts). Search like code with Grep.
  • Level 3 (provider-playbooks/*.md): provider-specific quirks, cost/quality notes, and fallback behavior.

No-loss rule: moved guidance remains fully documented at its canonical level and is linked from here.

CLI family fallback

If Deepline CLI V2 or SDK mode seems broken while running a GTM task, check deepline switch status. Use deepline switch sdk to move an installer-managed CLI to SDK mode, or deepline switch python to roll back to the Python CLI. Auth is host-scoped and should carry across both families.

2) Read behavior — MANDATORY before any execution

STOP. Do not call any provider, run any deepline tools execute, or write any search command until you have opened the correct sub-doc for your task.

These skill docs and sub-docs are not generic documentation — they are distilled from hundreds of real runs and encode exactly what works, what fails, and why. They contain validated parameter schemas, correct filter syntax, parallel execution patterns, tested sample payloads, and known pitfalls that took many iterations to discover. Think of them as shortcuts: reading a doc for 5 seconds saves you from 10 failed tool calls, wasted credits, and garbage output. Every time an agent skips reading the docs and tries to "figure it out" from first principles, it re-discovers the same failure modes that are already documented and solved.

SKILL.md is the routing layer — it tells you WHERE to go, not HOW to execute. The sub-docs and task-specific skills contain the HOW. Without them you will guess parameters, pick wrong providers, run searches sequentially instead of in parallel, and produce garbage results. This has happened repeatedly.

Open the right doc BEFORE executing

This is not optional. Read the matching doc. Do not skip this step. Do not "just try one provider real quick" or "just run one search to see." These docs exist because the correct approach was non-obvious and had to be learned through trial and error — they are shortcuts that let you skip straight to what works.

!important READING MULTIPLE DOCS IS A GREAT IDEA AND OFTEN SUPER ESSENTIAL. JUST READ MORE.

Routing rules — match your task to a doc and READ IT:

| When the task involves... | You MUST read this doc first | What it gives you (that SKILL.md doesn't) | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Finding companies, finding people, building lead lists, prospecting, portfolio/VC sourcing, contact finding at known companies, coverage completion at scale | [finding-companies-and-contacts.md](finding-companies-and-contacts.md) | Provider filter schemas, parallel execution patterns, provider mix tables, role-based search rules, subagent orchestration, at-scale coverage completion, portfolio/VC shortcuts, contact finding patterns. | | Researching companies or people, understanding what they build, figuring out use cases, personalizing based on mission/product/industry, enriching a CSV, adding data columns, waterfall enrichment, finding emails/phones/LinkedIn, coalescing data, custom signals, run_javascript / deeplineagent steps, Apify actors — any task that adds or transforms row-level data | [enriching-and-researching.md](enriching-and-researching.md) | deepline enrich syntax and all flags. Waterfall patterns with fallback chains. run_javascript / deeplineagent routing. Multi-pass pipeline patterns (research pass → generation pass). Coalescing patterns. Email/phone/LinkedIn waterfall orders. Custom signal buckets. Apify actor selection. GTM definitions and defaults. | | Creating custom Deepline plays/scripts that combine multiple tools and/or other plays, map over CSV rows, add fallback logic, joins/projections, durable datasets, custom run/export behavior, webhook/cron-style orchestration, or a reusable .play.ts scratchpad. This is for composition and control flow, not ordinary single-column enrichment. | [recipes/deepline-plays.md](recipes/deepline-plays.md) | Direct vs compose decision, play search/describe discipline, bootstrap/wrap/fork rules, durable authoring basics, webhook/cron replacement routing, run/export/repair routing, and exact SDK/API reference pointers. | | Writing cold emails, personalizing outreach, lead scoring, qualification, sequence design, campaign copy, inspecting CSVs in Playground. If the task also requires researching companies/people to inform the writing, read [enriching-and-researching.md](enriching-and-researching.md) too — it has the multi-pass pipeline pattern. | [writing-outreach.md](writing-outreach.md) | Prompt templates from prompts.json. Scoring rubrics. Email length/tone/structure rules. Personalization patterns. Qualification frameworks. Playground inspection commands. | | Deepline Monitors / Signal Radars — continuously capturing a provider's webhook events (email replies, new job postings, intent signals) into a Customer DB table, or deploying/listing/managing those upstream provider pipes. Event-driven streaming, NOT an on-demand enrich/sourcing run. Conditional gate: run deepline monitors status --json first. Read the recipe only when the command exits 0 with has_access: true. Exit 1 with has_access: false means rollout access is absent. For exit 3, fix auth/permission; for exit 5, diagnose configuration/server reachability. Do not reinterpret other failures as rollout denial. | [recipes/deepline-monitors.md](recipes/deepline-monitors.md) | What monitors/Signal Radars are, when to use them vs plays, the full deepline monitors command set (status, available, check, deploy, list, get, update, delete, reactivate), monitor definition shape, the provider-webhook → Customer DB → triggered-play data flow, and the access gating. |

If you are hand-authoring enrich columns instead of using a native play, jump straight to the "Handmade step shape quick reference" section in [enriching-and-researching.md](enriching-and-researching.md). That section spells out the exact runtime contract for run_javascript, extract_js, result, and persisted matched_result.

Recipes: step-by-step playbooks for specific tasks (check before executing)

The recipes/ directory contains battle-tested playbooks. Before you start executing, scan this list and read any recipe that matches your task.

When a recipe matches: follow it step-by-step as your execution plan. Recipes encode hard-won sequencing and provider choices — trust them over generic guidance or your own intuition. If the user's request doesn't perfectly fit, adapt the recipe using the phase docs above, but keep the recipe's structure and ordering as your baseline.

| Recipe | Use when... | | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | | account-orgchart.md | Building an org chart, account map, buying committee, stakeholder map, or multi-threading plan around a target person or company | | build-tam.md | Building a total addressable market list or large company list from ICP criteria | | clay-to-deepline.md | Converting a Clay table into local Deepline enrich scripts (extraction, mapping, parity validation) | | deepline-monitors.md | ACCESS-GATED. Deepline Monitors (dashboard: Signal Radars): continuously capturing a provider's webhook events into a Customer DB table and triggering plays. Run deepline monitors status --json first; only exit 1 with has_access: false is a clean rollout denial. Diagnose auth, configuration, and server failures by their actual exit code. | | deepline-plays.md | Creating custom .play.ts scripts that compose multiple tools/plays, durable datasets, fallback logic, joins/projections, webhook/cron-style orchestration, and custom run/export behavior | | find-qualified-titles.md | "Find all job titles at these companies" / "find the marketing-ops/RevOps/Salesforce buyers": pull each company's real title roster (free company_titles), LLM-filter to the ICP, then find contacts with tiered (LinkedIn, email, phone) reveal | | linkedin-url-lookup.md | Resolving a person's LinkedIn profile URL from their name and company with strict identity validation | | portfolio-prospecting.md | Finding companies backed by a specific investor or accelerator, then finding contacts and building personalized outbound | | small-business-prospecting.md | Finding local small businesses or storefront/service-area companies using Maps-style search. Doctors, services business, restaurants, etc. |

> Public/social source discovery, community-language pulls, pre-research source planning, or provider-coverage/cost comparison → use the standalone deepline-pre-research skill, not a recipe here. It owns X/Twitter, Reddit, Hacker News, Bluesky, and public-registry fanout plus the source-plan + Deepline-cost synthesis.

If none match, grep for more specific keywords: Grep pattern="" path="/recipes/" glob="*.md" output_mode="files_with_matches"

Data

  • When the user hands you a CSV, run deepline csv show --csv --summary first to understand its shape (row count, columns, sample values) before deciding how to process it.
  • NEVER read a large CSV into context with the Read tool. Reading CSV rows into the conversation window exhausts context and produces zero output. This is the single most common failure mode.
  • Use deepline enrich for any row-by-row processing (enrichment, rewriting, research, scoring).
  • To explore or understand CSV content without loading it, use deepline csv show --csv --rows 0:2 for a two-row sample, or spawn an Explore subagent to answer questions about the data.
  • For CSV enrichment, use deepline enrich --input --output --name task-slug --rows 0:1 ... for a one-row pilot, then rerun against the full file after inspecting output. If the installed surface is unclear, check deepline --help and deepline enrich --help before the first run rather than discovering the shape through a failed enrichment.

Tools

For signal-driven discovery (investor, funding, hiring, headcount, industry, geo, tech stack, compliance), start with deepline tools search. Do not guess fields.

Search 2-4 synonyms, execute in parallel:

deepline tools search investor
deepline tools search investor --prefix crustdata
deepline tools search --categories company_search --search_terms "structured filters,icp"
deepline tools search --categories people_search --search_terms "title filters,linkedin"

Tool search categories

Use category filters when tool type matters more than provider breadth. Common categories:

  • company_search: account/company discovery tools
  • people_search: people/contact discovery tools
  • company_enrich: company enrichment on known companies
  • people_enrich: person/contact enrichment on known people
  • email_verify: email verification / deliverability
  • email_finder: email lookup / discovery
  • phone_finder: phone lookup / discovery
  • research: company research, ad intel, job search, technographics, web research
  • automation: workflow-style tools, browser/actor runs, batch automation
  • outbound_tools: all Lemlist/Smartlead/Instantly/HeyReach style actions
  • autocomplete: canonical filter value discovery before search
  • admin: credits, monitoring, logs, schemas, local/dev utilities

Use --search_terms for extra ranking hints like structured filters, title filters, api native, autocomplete, or bulk.

Good:

  • `deepline tools

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.