Crm integration
Skill LeadMagic/gtm-skills/skills/automation/crm-integration
Configure CRM systems for GTM — lifecycle stages, deal stages, field ownership, enrichment sync, dedupe, required fields, and reporting. Use when setting up HubSpot, Salesforce, Attio, or any CRM integration for sales and marketing teams.From its SKILL.md
npx -y skills add LeadMagic/gtm-skills --skill crm-integrationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.5 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it
CRM Integration
Overview
Most CRM problems are process problems disguised as software problems. Teams add fields, automations, and sync rules before deciding what the CRM is supposed to be the source of truth for.
This skill designs a CRM integration that supports GTM execution without turning into rep admin theater: clear lifecycle stages, field ownership, enrichment sync, dedupe, and stage-gate rules.
When to Use
Use this skill when the user asks to "set up our CRM for sales", "configure HubSpot", "configure Salesforce", "set up Attio", "design deal stages", "integrate enrichment with CRM", "clean up CRM data", "define lifecycle stages", or "build CRM reporting".
Use crm-toolkit for platform selection, contacts-vs-leads architecture, and
blueprints — then platform setup skills (hubspot-setup, salesforce-setup,
attio-setup) for rollout.
Authoritative Foundations
Winning by Design — Bowtie Model
CRM design should cover the full bowtie: acquisition, conversion, retention, expansion, and advocacy. Most teams only model pipeline and ignore post-sale stages.
HubSpot — Lifecycle Stage Model
HubSpot's lifecycle model is useful for SMB and mid-market teams because it connects marketing, sales, and CS handoffs with clear stage definitions.
Salesforce — Opportunity and Object Architecture
Salesforce works best when object relationships, required fields, and automation rules are designed before admins start customizing pages.
Attio — Programmable CRM Model
Attio's flexible object model works well for teams that need relationship intelligence, custom objects, and lightweight GTM workflows without Salesforce overhead.
Prerequisites
- Defined GTM motion: PLG, sales-led, founder-led, or hybrid
- ICP tiers and segments
- Sales stages and exit criteria
- CRM owner/admin
- Enrichment sources
- Sequencer and marketing automation tools
- Reporting requirements
Step-by-Step Process
Phase 1: Define Source-of-Truth Rules
| Data Type | Source of Truth | Write Access |
|---|---|---|
| Contact identity | CRM | CRM + enrichment upsert |
| Lifecycle stage | CRM | Automation + owner override |
| Deal stage | CRM | Deal owner |
| Enrichment fields | Enrichment pipeline | Enrichment system only |
| Suppression/opt-out | CRM/compliance | Compliance automation only |
| Activity history | CRM | Integrated tools |
No integration should write fields it does not own.
Phase 2: Build Lifecycle Stages
Recommended stages: subscriber/raw lead, lead, MQL, SQL, opportunity, customer, expansion candidate, evangelist/referral source. Each stage needs entry criteria and exit criteria.
Phase 3: Design Deal Stages
| Stage | Required Exit Criteria |
|---|---|
| Discovery | Pain, persona, account fit captured |
| Qualified | Need, authority, timeline, next step confirmed |
| Demo / Evaluation | Success criteria and stakeholders documented |
| Proposal | Scope, pricing, decision process known |
| Negotiation | Procurement/legal path identified |
| Closed Won/Lost | Reason code and next action captured |
Enterprise motions can add MEDDICC fields. SMB motions should keep required fields lighter.
Phase 4: Integrate Enrichment
Enrichment writes only enrichment-owned fields, never overwrites manually corrected CRM fields without confirmation, uses source + timestamp columns, and exposes failed enrichment as a visible status.
Phase 5: Reporting and Governance
Minimum dashboards: funnel conversion by lifecycle stage, pipeline by stage and owner, stage aging, source-to-revenue attribution, data completeness, enrichment coverage and freshness.
Output Format
# CRM Integration Blueprint
## Source-of-Truth Rules
| Field Group | Source | Allowed Writers | Overwrite Rule |
|---|---|---|---|
## Lifecycle Stages
| Stage | Entry Criteria | Exit Criteria | Owner |
|---|---|---|---|
## Deal Pipeline
| Stage | Required Fields | Exit Criteria | Automation |
|---|---|---|---|
## Integration Map
| Tool | Reads From CRM | Writes To CRM | Risk |
|---|---|---|---|
Quality Check
Before delivering, verify:
- Every stage has entry and exit criteria
- Field ownership is defined
- Enrichment cannot overwrite human-owned fields silently
- Required fields are minimal enough reps will use them
- CRM supports marketing, sales, and CS handoffs
- Dashboards cover funnel, pipeline, stage aging, and data quality
Common Pitfalls
- Two-way sync everywhere. Creates conflicts and loops. Fix: define read/write ownership per tool.
- Too many required fields. Reps stop updating CRM. Fix: require only fields needed for the next stage.
- No stage exit criteria. Pipeline becomes subjective. Fix: write objective exit rules.
- CRM as the process. Tools do not create process. Fix: define process first, configure second.
- No data freshness. Old enriched fields linger forever. Fix: source and timestamp every enrichment field.
- No lost reason taxonomy. Closed-lost learning disappears. Fix: standardized lost reasons with notes.
Execution Artifacts
references/framework-notes.md— named frameworks, citation anchors, and operating assumptionstemplates/output-template.md— copy-paste deliverable structure for the userscripts/check-output.py— local checklist validator for required sections This skill includes lightweight artifacts the agent can load on demand: Use the artifacts when the user asks for an implementation-ready deliverable, a repeatable workflow, or a quality check rather than generic advice.
Related Skills
hubspot-setup— HubSpot-specific implementationsalesforce-setup— Salesforce-specific implementationattio-setup— Attio-specific implementationgtm-operations— governance and operating cadence
What ships with it: 3 files
2.2 KB alongside SKILL.md, 1 of them executable
references/
- framework-notes.md794 B
scripts/
- check-output.pyruns656 B
templates/
- output-template.md779 B
Gives 0 of the 12 instructions most sales audience skills give in ~1.3k tokens
Counted across 401 of the 401 authors here whose files we hold, read 2026-08-07
- Read product marketing context before asking questionsin 21 of 401, across 11 files
- Acknowledge competitor strengths honestlyin 18 of 401, across 7 files
- Start every page with a summaryin 15 of 401, across 4 files
- Use a single, low-friction call to actionin 15 of 401, across 7 files
- Create a single source of truth for each competitorin 14 of 401, across 3 files
- Make each follow-up email add new valuein 11 of 401, across 5 files
- Cut any sentence that does not drive a replyin 10 of 401, across 4 files
- Tie personalization directly to the problemin 10 of 401, across 4 files
- Write paragraph comparisons for each dimensionin 9 of 401, across 3 files
- Link between related competitor pagesin 9 of 401, across 3 files
- Keep subject lines short and lowercasein 9 of 401, across 3 files
- Define ideal customer profile from top customersin 9 of 401, across 3 files
Said here and by no other author read
- define source-of-truth rules per data type
- restrict write access to field owners
- build lifecycle stages with entry and exit criteria
- design deal stages with objective exit criteria
- limit required fields to only those needed for next stage
- integrate enrichment to write enrichment-owned fields only
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.