From octave
Surfaces deals, patterns, and signals from recent data for a morning intelligence briefing. Useful for daily updates, focus areas, and identifying what changed since last check.
How this skill is triggered — by the user, by Claude, or both
Slash command
/octave:signalsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Your daily command center. Surfaces the deals that moved, objections trending up, competitors appearing, stakeholders going silent, and messaging themes gaining or losing traction — so you know exactly what to work on today.
Your daily command center. Surfaces the deals that moved, objections trending up, competitors appearing, stakeholders going silent, and messaging themes gaining or losing traction — so you know exactly what to work on today.
/octave:signals [--period <time-range>] [--focus <area>]
--period <range> - Lookback window (today, 3d, week, 2w — default: week)--focus <area> - Zoom into one section (deals, patterns, pipeline, content)--segment <name> - Filter by segment--motion <name> - Filter by Motion/octave:signals # Full morning briefing (last 7 days)
/octave:signals --period today # What happened since yesterday
/octave:signals --period 2w # Broader two-week view
/octave:signals --focus deals # Just the deals that need attention
/octave:signals --focus patterns # Just emerging patterns
When the user runs /octave:signals:
Run these queries in parallel to gather the full picture. Use the period option to set date ranges (default: last 7 days).
A. Recent Events (activity stream)
list_events({
eventTypes: ["CALL_TRANSCRIPT", "EMAIL_SENT", "EMAIL_REPLY_RECEIVED", "DEAL_WON", "DEAL_LOST", "DEAL_STAGE_CHANGE"],
dateRange: { start: "<period start>", end: "<today>" },
limit: 100
})
B. All Finding Types (signal extraction)
list_findings({
extractionTypes: [
"CALL_EXTERNAL_OBJECTIONS",
"CALL_EXTERNAL_BUSINESS_PROBLEMS",
"CALL_EXTERNAL_QUESTIONS_OR_CONFUSION_ABOUT_OFFERING",
"CALL_EXTERNAL_COMPETITORS_TO_OUR_OFFERING",
"CALL_INTERNAL_VALUE_PROP_PRESENTATIONS",
"CALL_INTERNAL_PROOF_POINTS",
"CALL_INTERNAL_USE_CASES_BROUGHT_UP",
"EMAIL_OBJECTION",
"EMAIL_COMPETITOR_MENTION",
"EMAIL_VALUE_PROP",
"EMAIL_PAIN_POINT"
],
dateRange: { start: "<period start>", end: "<today>" },
groupBy: "extractionType",
limit: 200
})
C. Previous Period Findings (for trend comparison)
list_findings({
extractionTypes: [
"CALL_EXTERNAL_OBJECTIONS",
"CALL_EXTERNAL_COMPETITORS_TO_OUR_OFFERING",
"CALL_INTERNAL_VALUE_PROP_PRESENTATIONS",
"CALL_INTERNAL_PROOF_POINTS"
],
dateRange: { start: "<two periods ago>", end: "<period start>" },
groupBy: "extractionType",
limit: 200
})
D. Library Context (for gap detection)
list_all_entities({})
Process the raw data into four signal categories. Prioritize by urgency — things that need action today come first.
Signal Priority Rules:
Use the --focus flag to show only the requested section, or show all four sections for the full briefing.
See briefing-output-template.md for the full morning briefing output template.
When --focus is specified, show only that section with expanded detail:
--focus deals: Show the Deals section with additional context per deal — include last 3 interactions, all stakeholders, full finding history.
--focus patterns: Show the Patterns section with full finding breakdowns — include specific quotes, event links, week-over-week trend charts.
--focus pipeline: Show Pipeline Health with deal-level detail — list every deal that moved, every deal at risk, every new deal.
--focus content: Show Content Performance with usage rankings across all proof points, value props, and Motion ICPs.
When user asks to dive deeper into any signal:
get_event_detail({
eventOId: "<event_oId>"
})
Present full context for the signal — the event, the finding, the deal history, and recommended actions.
When user wants to act on a detected gap:
Library Gap → Create/Update:
# If objection not in a Motion ICP cell, update that cell's narrative
update_motion_playbook({
motionPlaybookOId: "<motion_playbook_oId>",
instructions: "Add objection handling for: [detected objection] to the relevant Motion ICP narrative section"
})
# If competitor not tracked
search_knowledge_base({
query: "<competitor name>",
entityTypes: ["competitor"]
})
# If not found, suggest:
# /octave:library create competitor "[name]"
Deal Signal → Route to Skill: Suggest the appropriate follow-up skill based on signal type:
/octave:pipeline stalled <domain>/octave:battlecard --competitor "<name>"/octave:pipeline close <domain>/octave:pipeline multi-thread <domain>/octave:enablement objections --topic "<topic>"/octave:wins-losses --status won| Signal | Detection | Priority |
|---|---|---|
| Champion silent | No reply from primary contact in >2x their avg response time | CRITICAL |
| New competitor | Competitor extraction type appears for a deal where it wasn't before | CRITICAL |
| Deal moved backward | Deal stage change event where new stage is earlier than previous | CRITICAL |
| Deal advanced | Deal stage change event moving forward | HIGH |
| Stalled deal | Active deal with no events in 14+ days | HIGH |
| New deal | First event for a company domain | MEDIUM |
| Deal won | DEAL_WON event | INFO |
| Deal lost | DEAL_LOST event | INFO |
| Signal | Detection | Priority |
|---|---|---|
| Objection spike | >2x increase in extraction count vs previous period | HIGH |
| New objection | Objection theme appears that wasn't in previous period | HIGH |
| Competitor trending | Competitor mentions increased >50% vs previous period | HIGH |
| Hot proof point | Proof point cited in >3 conversations this period | MEDIUM |
| Cold proof point | Proof point with 0 citations for 30+ days | MEDIUM |
| Signal | Detection | Priority |
|---|---|---|
| Unaddressed objection | Objection finding with no matching Motion ICP narrative content | HIGH |
| Unknown competitor | Competitor mention with no competitor entity in library | HIGH |
| Missing persona | Person qualified to a persona type not in library | MEDIUM |
| Stale Motion ICP | Motion ICP cell with 0 event associations in 30+ days | MEDIUM |
list_events - Activity stream with date/type filterslist_findings - Finding aggregates with grouping and trend dataget_event_detail - Drill into specific eventslist_all_entities - Full library inventory for gap detectionlist_motions - List Motions in the workspacelist_motion_playbooks - List Motion Playbooks under a Motionlist_motion_icps - List Motion ICP cells under a Motionfind_motion_icp - Fetch Motion ICP narrative + Learning Loop learningssearch_knowledge_base - Match findings to library contentget_entity - Get entity details for contextupdate_entity - Apply detected gap fixescreate_entity - Create new entities for detected gapsupdate_motion_playbook - Edit Motion Playbook narrative sections (e.g., add objection handling to a Motion ICP)No Events in Period:
No activity found in the last [period].
This could mean:
- No calls/emails have been synced recently
- The period is too narrow — try
--period 2wor--period month- CRM/email integration may need reconnecting
Check your integrations in Octave, or try a wider window.
No Findings Extracted:
Events found but no findings extracted yet.
Recent events may still be processing. Check back in a few minutes. In the meantime, here's what happened (raw activity): [Show event summary without finding analysis]
Insufficient Data for Trends:
Not enough historical data to detect trends.
I'll show you what's happening now, but trend analysis needs at least 2 weeks of data. Keep using Octave and trends will appear in future briefings.
/octave:insights - Deep dive into specific finding types/octave:pipeline - Deal-level coaching for flagged deals/octave:wins-losses - Pattern analysis across deal outcomes/octave:battlecard - Competitive intelligence for new competitors/octave:enablement - Turn trending objections into team materials/octave:audit - Full library health check/octave:library - Create/update entities for detected gapsnpx claudepluginhub octavehq/lfgtm --plugin octaveSurfaces findings, trends, and patterns from sales conversations including objections, pain points, questions, and competitor mentions. Supports filtering by type, time range, segment, persona, or company.
Reads monday.com deals board, ranks deals by activity and stall age, and publishes a timestamped Morning Briefing update inside monday.com.
Persistent intelligence layer that accumulates deal knowledge, competitive intel, product context, and team patterns over time — making every other skill smarter with use. This skill should ALWAYS be checked at the start of any GTM-related task. It reads from and writes to a structured knowledge base so that insights from one conversation carry into the next. Use this skill on every interaction that involves sales, marketing, CS, partnerships, or RevOps context. Also trigger proactively when the user shares deal outcomes, competitive intel, product updates, rep feedback, or customer insights — capture it even if they didn't ask you to.