Skip to content
Marketing
Skill

/customer-language

Mine your CRM's call notes, meeting notes, support tickets and lost-deal reasons (HubSpot, Pipedrive or Upsales), support chats (Crisp), community threads (Discord) and YouTube comments for the exact words customers use to describe their problems — clustered, counted by distinct

BOOST
From plugin
claude-code-marketing-skills
10662 skills
Install
$ npx -y skills add cognyai/claude-code-marketing-skills --skill customer-language --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/customer-language

Context preview

The summary Claude sees to decide when to auto-load this skill.

Mine your CRM's call notes, meeting notes, support tickets and lost-deal reasons (HubSpot, Pipedrive or Upsales), support chats (Crisp), community threads (Discord) and YouTube comments for the exact words customers use to describe their problems — clustered, counted by distinct

SKILL.md

customer-language.SKILL.md
name: customer-language
description: Mine your CRM's call notes, meeting notes, support tickets and lost-deal reasons (HubSpot, Pipedrive or Upsales), support chats (Crisp), community threads (Discord) and YouTube comments for the exact words customers use to describe their problems — clustered, counted by distinct company (CRM) or distinct person (community), with labelled quotes — and write a weekly customer-language report every other marketing agent builds from
version: "1.2.3"
author: Cogny AI
requires: cogny-mcp
platforms: [hubspot, pipedrive, upsales, crisp, discord, youtube, x-organic, cogny]
user-invocable: true
argument-hint: "[days=7|30|all] [--segment <industry or tier>] [--source crm|support|community|youtube|files]"
allowed-tools:
  - Bash
  - mcp__cogny__list_integrations
  - mcp__cogny__refresh_mcp_discovery
  - mcp__cogny__mcp__HubSpot__get_user_details
  - mcp__cogny__mcp__HubSpot__search_crm_objects
  - mcp__cogny__mcp__HubSpot__get_crm_objects
  - mcp__cogny__mcp__HubSpot__get_properties
  - mcp__cogny__mcp__HubSpot__search_properties
  - mcp__cogny__mcp__Pipedrive__list_users
  - mcp__cogny__mcp__Pipedrive__list_activities
  - mcp__cogny__mcp__Pipedrive__list_deals
  - mcp__cogny__mcp__Pipedrive__get_deal
  - mcp__cogny__mcp__Pipedrive__list_organizations
  - mcp__cogny__mcp__Upsales__list_users
  - mcp__cogny__mcp__Upsales__list_activities
  - mcp__cogny__mcp__Upsales__list_appointments
  - mcp__cogny__mcp__Upsales__list_orders
  - mcp__cogny__mcp__Upsales__list_accounts
  - mcp__cogny__mcp__Upsales__get_metadata
  - mcp__cogny__mcp__Crisp__list_conversations
  - mcp__cogny__mcp__Crisp__get_conversation_messages
  - mcp__cogny__mcp__Discord__get_current_user
  - mcp__cogny__mcp__Discord__list_guilds
  - mcp__cogny__mcp__Discord__get_guild
  - mcp__cogny__mcp__Discord__list_guild_channels
  - mcp__cogny__mcp__Discord__get_channel
  - mcp__cogny__mcp__Discord__list_guild_members
  - mcp__cogny__mcp__Discord__get_channel_messages
  - mcp__cogny__mcp__YouTube__get_channel
  - mcp__cogny__mcp__YouTube__list_channel_videos
  - mcp__cogny__mcp__YouTube__list_comment_threads
  - mcp__cogny__mcp__X_Organic__tool_get_me
  - mcp__cogny__mcp__X_Organic__tool_get_mentions
  - mcp__cogny__read_context_node
  - mcp__cogny__write_context_node
  - mcp__cogny__search_context
  - mcp__cogny__create_ticket
  - mcp__cogny__create_finding
  - Read
  - Glob
  - Write
  - Edit

Customer Language

The first agent to build, because every other agent builds from what it finds. Its job is to pull out the **exact words** customers use for their problems. People buy the situation, not the feature. "I'm tired of taking calls during dinner" beats "automated scheduling" every time.

**Requires:** Cogny ($9/mo) with at least one source connected:

| Source | Integration | What it gives | |--------|-------------|---------------| | CRM calls, meetings, notes | HubSpot, Pipedrive or Upsales | Pre-purchase pain, objections, triggers (rep paraphrase) | | Support chats | Crisp | Post-purchase pain **in the customer's own typed words** | | Community | Discord | Questions and complaints in their own words | | Video comments | YouTube | What viewers ask and push back on | | Mentions | X Organic | Public complaints and questions aimed at the brand | | Transcripts | local files | The best quotes; export 20–50 calls from Gong, the Fathom call recorder, or Zoom into `./brain/evidence/calls/*.txt|md` |

The `Fathom_Analytics` integration in Cogny is Fathom **web analytics**, not the Fathom call recorder, so transcripts still come from local exports or a HubSpot transcript property. Use every source that's connected and report them separately, then cluster across them. Never use `runcloser` as a source, even when it's connected.

**No CRM connected?** Fall back in this order and say which CRM would have added pre-purchase pain: Crisp (support, verbatim) → Discord (community, verbatim) → YouTube comments → X mentions → local transcripts in `./brain/evidence/calls/`. If Cogny is connected but none of these is available, print "Connect a CRM (HubSpot, Pipedrive or Upsales), Crisp or Discord in Cogny, or export call transcripts to `./brain/evidence/calls/`", and stop without writing a report.

**No Cogny at all** (no `mcp__cogny__*` tools: no `list_integrations`, no `cogny_status`): print this. If `./brain/evidence/calls/` has transcripts (Glob `./brain/evidence/calls/*.{txt,md}`), continue in local mode (below); otherwise stop without writing a report.

Customer Language needs your marketing data through Cogny's MCP gateway.

1. Sign up at https://cogny.com and connect a CRM (HubSpot, Pipedrive or Upsales), Crisp, Discord, YouTube or X Organic.
2. Add Cogny to .mcp.json in your project:
   {"mcpServers": {"cogny": {"type": "http", "url": "https://app.cogny.com/mcp"}}}
3. Restart Claude Code; it opens a browser for the OAuth login on first use.

Without Cogny you can still: run it on call transcripts exported to ./brain/evidence/calls/*.txt|md
(local mode; the report is written under ./brain/).

Local mode (transcripts only, no Cogny)

The brain is plain files at `./brain/<node path>.md` (same paths as the context tree, see `/marketing-brain`).

  • **Transcript header.** Each file should start with:
  Company: <name>
  Kind: sales|onboarding|support|vendor|partner|internal
  Date: YYYY-MM-DD

If a field is missing, infer it from the content (date from the filename or the text, else the file's modified time) and label it `(inferred)` in the report's source list. Exclude vendor, partner and internal as usual; count distinct `Company:` values.

  • **Window.** `days=7|30` filters on the header `Date` (inferred dates included, labelled); `all` takes every file.
  • **Context (step 1):** Read `./brain/START-HERE.md`, `./brain/company/customer-fit.md`,

`./brain/decisions/agent-corrections.md` and `./brain/evidence/customer-language/latest.md` if they exist.

  • **Report (step 6):** Write `./br
Read more
Ships withclaude-code-marketing-skills

AI marketing skills for Claude Code, Cursor, Windsurf, and other AI coding tools. Audit SEO, analyze ads, research competitors, qualify leads — all from your terminal. Free skills need no account. Premium skills connect your real data for $9/mo.

Get the whole plugin
Stats
107
Stars
14
Forks
Active
Maintenance
HTML
Language
1d ago
Last commit
6mo ago
Created

Repo: cognyai/claude-code-marketing-skills