skills/analyzer/SKILL.md
Analyze a single email thread, call transcript, or conversation for resonance, adherence to messaging, and competitive differentiation. Use when user says "analyze this call", "how did the email land", "score this thread", "conversation analysis", or pastes conversation content to evaluate. Do NOT use for aggregate trends across many conversations — use /octave:insights instead.
npx skillsauth add octavehq/lfgtm analyzerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Analyze email threads, call transcripts, and sales conversations against your Octave library. Evaluates messaging resonance, Motion ICP narrative adherence, and competitive differentiation. Provides actionable insights, suggested improvements, and draft follow-ups.
/octave:analyzer [--type email|call|chat]
/octave:analyzer # Interactive - paste content
/octave:analyzer --type email # Analyze email thread
/octave:analyzer --type call # Analyze call transcript
When the user runs /octave:analyzer:
What would you like me to analyze?
1. Paste an email thread
2. Paste a call transcript
3. Paste a chat/message thread
4. Provide a file path
(Paste content below or tell me the file path)
Accept pasted content or read from file. Content can be:
For Email: Extract:
For Call Transcript: Extract:
For Chat: Extract:
Use MCP tools to gather context:
Research external participants:
# Get external participant info
find_person({
searchMode: "specific_person",
email: "<external email>", # or
firstName: "<name>",
companyName: "<company>"
})
# Get company info
find_company({
domain: "<domain from email>" # or inferred from signature
})
# Match to persona
qualify_person({
person: { email: "<email>", jobTitle: "<title>" },
additionalContext: "Identify which persona this person matches"
})
Get library context:
# Find the right Motion + Motion ICP cell for this conversation
list_motions()
list_motion_icps({ motionOId: "<motion_oId>" })
find_motion_icp({ motionIcpOId: "<motion_icp_oId>", includeLearnings: true })
Run three analysis dimensions:
Did our messaging land? What signals indicate engagement or disengagement?
Use MCP to get persona details:
# Search for messaging we used
search_knowledge_base({
query: "<key phrases from our messages>",
entityTypes: ["persona", "use_case"]
})
# Compare to persona pain points
get_entity({ oId: "<matched_persona_oId>" })
Evaluate:
Did we follow the Motion ICP narrative? What did we miss?
Use MCP to get the Motion ICP cell narrative:
# Get the matched Motion ICP cell (persona × segment)
find_motion_icp({ motionIcpOId: "<matched_motion_icp_oId>", includeLearnings: true })
Compare conversation to the Motion ICP narrative:
Did we position against competitors effectively?
Use MCP to get competitor details:
# Check for competitor mentions
search_knowledge_base({
query: "<competitor names or hints from conversation>",
entityTypes: ["competitor"]
})
# Get competitor details
get_entity({ oId: "<competitor_oId>" })
Evaluate:
See conversation-output-template.md for the Conversation Analysis output template.
What would you like to do next?
1. Deep dive on a specific analysis area
2. Get more suggestions for [resonance / adherence / differentiation]
3. Refine the follow-up message
4. Generate content to address gaps
5. Compare to another conversation
6. Save insights to deal notes
7. Done
Your choice:
| Score | Meaning | Signals | |-------|---------|---------| | 9-10 | Strong engagement | Multiple questions, shared details, expressed urgency | | 7-8 | Good engagement | Engaged responses, some interest signals | | 5-6 | Neutral | Polite but non-committal | | 3-4 | Weak | Short responses, delayed replies | | 1-2 | Disengaged | Objections, pushback, ghosting |
| Score | Meaning | Signals | |-------|---------|---------| | 9-10 | Full adherence | All Motion ICP narrative elements used appropriately | | 7-8 | Good adherence | Most elements used, minor gaps | | 5-6 | Partial adherence | Some elements used, key gaps | | 3-4 | Weak adherence | Few elements used, off-narrative | | 1-2 | Non-adherent | Didn't follow the Motion ICP narrative |
| Score | Meaning | Signals | |-------|---------|---------| | 9-10 | Strong positioning | Clear differentiation, competitive landmines set | | 7-8 | Good positioning | Some differentiation, mostly positioned | | 5-6 | Neutral | Didn't address competition directly | | 3-4 | Weak positioning | Competitor strengths uncountered | | 1-2 | Poor positioning | Lost competitive ground |
find_person - Identify external participantsfind_company - Get company contextqualify_person - Match to personalist_motions - List all Motions in the workspacelist_motion_icps - List Motion ICP cells for a Motionfind_motion_icp - Get full Motion ICP cell narrative (Strategic narrative, Pains and consequences, Benefits and impacts, Methodology, References) for adherence analysisget_entity - Get persona, competitor detailssearch_knowledge_base - Find relevant messaging, proof pointsgenerate_content - Draft follow-up messagesgenerate_email - Generate email responsesFrom: [email protected]
To: [email protected]
Subject: Re: Quick question about your platform
[Message content]
---
On Jan 15, [email protected] wrote:
> [Previous message]
[00:00] Sales Rep: Thanks for joining...
[00:15] Prospect: Happy to be here...
or
Sales Rep: Thanks for joining...
John (Acme): Happy to be here...
Me: Hey John, following up on our conversation
John: Thanks for reaching out
Me: Did you have a chance to review the proposal?
No Content Provided:
Please paste the content you'd like me to analyze, or provide a file path.
I can analyze:
- Email threads
- Call transcripts
- Chat messages
- Meeting notes
Cannot Identify Participants:
I couldn't identify the external participant.
Can you tell me:
- Who is the prospect? (name, company, title)
- What stage is this deal in?
This helps me match to the right Motion ICP cell.
No Matching Motion ICP:
I couldn't find a Motion ICP cell that matches this conversation.
I'll analyze against general best practices, but for better insights:
- Tell me which Motion (offering + motion type) this falls under
- Or create a Motion for this offering if one doesn't exist yet
/octave:research - Deep research on participants/octave:generate - Generate follow-up content/octave:pmm - Create collateral to address gaps/octave:audit - Ensure Motion ICP cells have complete narratives/octave:pipeline - Deal coaching based on conversation analysis/octave:insights - Aggregate patterns across many conversationsdevelopment
Turn one or more Octave GTM Explorer / Beats reports into a branded, shareable digest with selectable insight scope, evidence depth, and output format. Use when the user asks for a report digest, weekly or monthly insight recap, executive intelligence brief, magazine-style insight story, report deck, or a recurring published summary of Octave insights.
content-media
Product and feature launch planning with full content kit generation across channels and audiences. Use when user says "launch plan", "product launch", "feature announcement", "GTM plan for launch", "launch content kit", or mentions launching something new.
development
A dense internal deal room a rep hands to a champion so they can run the buying-committee sell without you in the room. Quantified business case, stakeholder map with per-seat ammo, objection handling, and a path to yes, rendered as self-contained HTML. Use when user says "champion deal room", "arm my champion", "help my champion sell internally", "internal business case for [deal]", or wants a champion enablement doc. For a customer-facing top-of-funnel page use /octave:microsite; for the formal closing proposal use /octave:proposal.
data-ai
Analyze email threads, call transcripts, and conversations for resonance, adherence to messaging, and competitive differentiation. Use when user says "analyze this call", "how did the email land", "score this thread", "conversation analysis", or pastes conversation content to evaluate.