Access Octave's GTM knowledge base directly from Claude Code for positioning, research, content generation, and sales enablement.
Octave is a GTM intelligence platform that helps sales and marketing teams centralize positioning, messaging, and go-to-market knowledge. This Claude Code plugin brings Octave's capabilities directly into your development workflow.
- Claude Code CLI installed (install guide)
- Claude Code authenticated — a Claude subscription (Pro/Max/Team) or an Anthropic API key both work
- An Octave workspace account
- Add the Octave marketplace:
claude plugin marketplace add https://github.com/octavehq/lfgtm- Install the Octave plugin:
claude plugin install octave@lfgtm- Verify installation:
claude plugin listYou should see "octave" in your installed plugins.
This repo is the source of truth. On every push to main, the same skills are automatically built and mirrored into editor-specific plugin repos:
- OpenAI Codex → octavehq/lfgtm-codex
- Cursor → octavehq/lfgtm-cursor
Install from the matching repo (see its README). Don't edit those repos directly — they're generated and overwritten. File issues and PRs here.
Add the Octave MCP server (one connection per workspace):
claude mcp add octave-acme --transport http https://mcp.octavehq.com/mcp?ctx=<context>You can use any name that starts with octave- (e.g. octave-acme). Skills detect the Octave MCP server from your available tools.
Keep the
ctxvalue private. It is a workspace-scoped credential — treat it like an API key and never commit it to a repository or paste it into shared documents.
/octave:library list # Browse your library
/octave:research john@acme.com --for discovery # Prep for a call
If your team also has HubSpot, Salesforce, Gong, Granola, or Clay connected to Claude, set Claude Organization preferences so Claude routes GTM questions to Octave by default — reps won't need to prefix prompts with "Using Octave, …" to get the right output.
See docs/org-instructions/ for short and long recommended instructions, admin setup, and test prompts.
Quick test (wait up to 1 hour for propagation first): in a new Claude conversation, ask "What's the status of my deal with [company] and what should I be doing next?" — without mentioning Octave. If Claude reaches for get_deal_deep_dive or /octave:pipeline, the instructions are working.
| Skill | Description |
|---|---|
/octave:library |
Browse, search, create, and update library entities |
/octave:generate |
Quick content generation (emails, LinkedIn messages) |
| Skill | Description |
|---|---|
/octave:product-launch |
Product and feature launch planning with full content kit |
/octave:battlecard-doc |
Interactive HTML competitive battlecard — single competitor or full landscape, with trap questions and objection counters grounded in real conversation evidence |
/octave:ads |
Build platform-ready ad campaigns with audience targeting, creative variants, and negative keywords |
/octave:ads-resonance |
Analyze ad performance (MCP, BigQuery Data Transfer, direct API, or manual paste), score falsifiable prediction cards against real data, and feed learnings back into the library |
| Skill | Description |
|---|---|
/octave:research |
Context-aware prep for calls, demos, outreach, deal reviews |
/octave:prospector |
Find, enrich, and qualify ICP-fit prospects using your library |
/octave:abm |
Account-based planning with stakeholder mapping and outreach |
| Skill | Description |
|---|---|
/octave:pipeline |
Deal-level coaching — stalled deals, multi-threading, competitive |
/octave:call-analyzer |
Analyze conversations for resonance, adherence, differentiation |
/octave:train |
Practice selling — role-play simulations, quizzes, guided learning |
/octave:deal-coach |
Methodology-driven deal coaching — role-play, microsites, decks, and quizzes around Resonate/Elevate/Compel |
| Skill | Description |
|---|---|
/octave:insights |
Surface findings, trends, and patterns from calls and emails |
/octave:digest |
Turn completed GTM reports into a branded magazine, slide deck, interactive microsite, one pager, executive brief, Markdown digest, or recurring published digest with selectable evidence depth |
/octave:signals |
Morning intelligence briefing — deals, patterns, and signals demanding attention |
/octave:win-loss-report |
Visual win/loss analysis report as self-contained HTML with charts — patterns, competitor cuts, and deal deep dives |
/octave:icp-refine |
Refine ICP definitions using deal outcome analysis |
/octave:qual-doctor |
Diagnose and tune qualification agents — test against known-fit prospects, analyze per-question scoring patterns, and recommend specific changes to questions, weights, and entity descriptions. Handles both score-only and routing+scoring tuning modes. |
| Skill | Description |
|---|---|
/octave:get-brand-components |
Capture a company's brand (fonts, colors, logo, real imagery, components) from its website into a reusable kit — every Document Builder below can render on-brand with it; kits can be reused from and hosted to the asset store (asset-manager) |
/octave:meeting-prep |
Strategic meeting battle plan with coaching frameworks and talk tracks as HTML |
/octave:deck |
Build Octave-powered HTML slide decks with brand styling and export |
/octave:one-pager |
Personalized one-pager / leave-behind as self-contained HTML |
/octave:proposal |
Formal business case and proposal as customer-facing HTML |
/octave:microsite |
Personalized ABM microsite / landing page as HTML |
/octave:champion-deal-room |
Internal deal room a rep hands a champion to run the buying-committee sell — business case, stakeholder map, objection handling, path to yes |
/octave:positioning |
Complete visual Messaging & Positioning system (8 frameworks) as HTML |
| Skill | Description |
|---|---|
/octave:audit |
Library health check — find gaps, stale content, duplicates |
| Skill | Description |
|---|---|
/octave:asset-manager |
Publish and manage hosted assets — upload, privacy tiers (only_me/workspace/public), share links, asset registry; checks for existing assets before creating so work isn't duplicated |
Specialized agent personas for sustained, multi-turn work sessions.
| Agent | Description |
|---|---|
octave-assistant |
General GTM assistant with full Octave platform knowledge |
pmm-strategist |
Senior PMM focused on positioning, messaging, and launch strategy |
sdr-coach |
SDR manager focused on outreach quality, reply rates, and coaching |
revenue-strategist |
VP Revenue advisor for pipeline strategy and deal coaching |
asset-manager |
Publish and manage hosted assets: upload, privacy tiers, share links, persistent registry; cache-aware — reuses existing assets instead of duplicating them |
octave-editorial-reviewer |
Language + information quality reviewer spawned by the review gate after a skill generates a deliverable — audits reader-facing text against the editorial rules and information principles, fixes violations inline (not invoked directly) |
octave-presentation-reviewer |
Visual + structural reviewer spawned by the review gate — renders the generated HTML and inspects the pixels, audits against the presentation principles, format rules, and skill blueprints, fixes CSS/layout violations inline (not invoked directly) |
Complete visual Messaging & Positioning system as a scrollable HTML document:
- Message Framework (3-layer pyramid: market → product → value props by persona)
- Positioning Anchors (primary & secondary statements with keyword highlights)
- Positioning Strategy (tactical table: buyer, use case, problems, differentiators)
- Persona-Based Messaging (core message translated per buying committee role)
- Value Prop by Awareness Stage (4-column funnel: unaware → product-aware)
- Use Case Messaging Canvas (current way vs new way per use case)
- Use Case Lifecycle (customer journey phases with touchpoints)
- Homepage Messaging (website implementation: primary vs secondary messaging)
/octave:positioning # Full 8-section exercise
/octave:positioning message-framework # Just the message framework
/octave:positioning anchors # Positioning anchors only
/octave:positioning homepage # Homepage messaging template
/octave:positioning --product "Platform" # Focus on specific product
Product and feature launch planning with content kit:
- Positioning and messaging by persona
- Channel strategy and timeline
- Content kit: announcement emails, blog, social, one-pager, FAQ, competitive talking points
- Library updates for new capabilities
/octave:product-launch "AI Analytics Dashboard" --type feature
/octave:product-launch "Enterprise Tier" --type product
/octave:product-launch "APAC Expansion" --type expansion
Interactive HTML competitive battlecard grounded in real conversation evidence:
- Single-competitor deep dives with expandable sections and color-coded comparisons
- Full competitive landscape documents across every tracked competitor
- Trap questions to expose competitor weaknesses
- Objection counters ("they say X, we say Y") backed by verbatim call quotes, not paraphrases
- Displacement outreach offered as a follow-up
/octave:battlecard-doc --competitor "Acme"
/octave:battlecard-doc --competitor "all" # Full competitive landscape doc
Account-based planning:
- Deep account research and ICP scoring
- Stakeholder mapping with persona matching
- Per-stakeholder messaging strategy
- Engagement sequence recommendations
- Initial outreach generation
/octave:abm acme.com
/octave:abm acme.com --stakeholders 5 --motion "Enterprise Net New"
/octave:abm "Acme Corp" --depth quick
Deal-level coaching:
- Stalled deal diagnosis and re-engagement strategy
- Multi-threading recommendations (find and engage more stakeholders)
- Competitive threat response
- Executive engagement strategy
- Closing tactics and expansion planning
/octave:pipeline stalled acme.com
/octave:pipeline multi-thread acme.com
/octave:pipeline competitive acme.com --competitor "Acme"
/octave:pipeline close acme.com
ICP analysis and refinement:
- Compare defined ICP against actual deal outcomes
- Identify winning patterns and anti-patterns
- Persona and segment effectiveness analysis
- Value prop resonance from conversation data
- Recommended library updates with evidence
/octave:icp-refine --period 90
/octave:icp-refine --segment "Enterprise"
/octave:icp-refine --focus losses
Comprehensive library audit to identify:
- Missing or incomplete entities
- Orphaned personas / segments (not linked to any offering, so they don't appear in any Motion matrix)
- Missing Motions for active offerings
- Stale content (not updated recently)
- Duplicate or overlapping entities
- Broken references
- Legacy standalone playbook → Motions migration
/octave:audit # Full audit
/octave:audit --type personas # Focus on personas
/octave:audit --fix # Interactive fix mode
/octave:audit --migrate # Legacy playbook → Motions migration
Find and qualify companies and people matching your ICP:
- Searches using your library's segments and personas as criteria
- Enriches, qualifies, and scores each prospect
- Provides filter suggestions for Apollo, Clay, or LinkedIn Sales Nav
/octave:prospector --motion "Enterprise Sales"
/octave:prospector --similar-to stripe.com
/octave:prospector --company acme.com
Context-aware research and prep:
- Discovery call prep (questions, pain points, qualification)
- Demo prep (use cases, proof points, objections)
- Outreach prep (hooks, angles, personalization)
- Pipeline review (deal health, next moves, risks)
- Recent Signals backed by verbatim call quotes with recording links, not paraphrases
/octave:research john@acme.com --for discovery
/octave:research acme.com --for demo
/octave:research "Acme deal" --for pipeline-review
Conversation analysis against your library:
- Resonance: Did messaging land?
- Adherence: Did we follow the Motion ICP narrative?
- Differentiation: Did we position effectively?
/octave:call-analyzer # Paste content to analyze
/octave:call-analyzer --type call # Analyze call transcript
Surface intelligence from sales conversations:
- Top objections, pain points, and questions
- What's resonating vs not
- Trends over time
- Library update suggestions
- Drill into the verbatim quote behind any finding, with recording link and timestamp
/octave:insights --type objections
/octave:insights --persona "CTO"
Visual win/loss analysis as a self-contained HTML report with charts:
- Win/loss patterns and competitor analysis
- Period, segment, and competitor cuts
- Deal deep dives
- Verbatim objection and competitor quotes split by deal outcome, not paraphrases
/octave:win-loss-report
/octave:win-loss-report --competitor "Salesforce"
/octave:win-loss-report --period "2025" --segment "mid-market"
Practice selling with role-play simulations and knowledge quizzes:
/octave:train # Interactive - pick a mode
/octave:train roleplay --persona "CTO" # Role-play with a specific persona
/octave:train quiz --topic objections # Quiz on objection handling
/octave:train quiz --competitor "Acme" # Competitive knowledge check
Build platform-ready ad campaign plans grounded in your library intelligence:
- Ad sets structured by persona, segment, or ICP
- 8 creative variant types: pain-focused, outcome, social proof, competitive, question-based, data-driven, status quo, authority
- Source cards with full derivation chains from library data to headline
- Audience targeting with positive/negative keywords and exclusions
- Landing page recommendations from your resources
- Export as CSV for Google Ads, Meta, or LinkedIn bulk upload
- Visual campaign deck as self-contained HTML
/octave:ads # Interactive — full campaign builder
/octave:ads "compliance automation for VP Engineering" # Campaign with angle
/octave:ads "competitive displacement vs Acme" # Competitive campaign
/octave:ads "Q1 product launch" # Launch campaign
Analyze ad performance and feed learnings back into your GTM library:
- Pulls performance data from an ads MCP server, BigQuery Data Transfer, direct API, or manual paste — auto-detected in that order
- Confidence-tiered findings that scale with spend, from smoke-test mode to full resonance analysis
- Falsifiable prediction cards scored on every run, accumulating a calibration track record over time
- Library update recommendations and a sales intelligence brief — applied only with your approval
/octave:ads-resonance # Auto-detects the best available data source
Methodology-driven deal coaching built around Resonate → Elevate → Compel:
- Role play with stage-specific coaching agents and scored conversations
- Coaching microsites as self-contained HTML
- Coaching decks walking through the framework for a specific deal
- Interactive quizzes with deal-grounded scenarios
- Stage inference from CRM data, findings, and activity patterns
- Talking points grounded in the buyer's own verbatim words, pulled across every call with the account
/octave:deal-coach # Interactive — picks mode and stage
/octave:deal-coach acme.com # Ground coaching in a specific deal
/octave:deal-coach --mode roleplay # Jump to role play
/octave:deal-coach acme.com --mode microsite --stage compel # Specific mode + stage
/octave:deal-coach --mode quiz --stage resonate # Quiz on Resonate methodology
/octave:deal-coach acme.com --mode deck --stage elevate # Coaching deck for Elevate
Build Octave-powered HTML presentations with brand styling:
/octave:deck "pitch for Acme Corp" # Customer pitch
/octave:deck "Q1 QBR for enterprise segment" # QBR with real data
/octave:deck --for competitive "vs Gong" # Competitive deck
/octave:deck ~/Downloads/existing-deck.pptx # Convert PPTX to HTML
/octave:deck "demo day pitch" --style octave-brand # Specific style preset
Internal deal room a rep hands a champion so they can run the buying-committee sell:
- Quantified business case built from real deal data
- Stakeholder map with per-seat talking points
- Objection handling and a concrete path to yes
- Self-contained HTML — shareable inside the account
/octave:champion-deal-room acme.com
/octave:champion-deal-room acme.com --champion jane@acme.com
Publish and manage hosted assets on the Octave assets service:
- Cache-aware: lists existing assets before creating and offers matches (with links) so the same work isn't done twice
- Upload local HTML sites, docs, or file bundles (interactive identifier + privacy intake — only_me / workspace / public)
- Update published files or metadata; move assets up or down the privacy ladder
- Create share links for specific emails or whole domains (never expire by default); add/remove recipients, revoke
- Persistent per-project registry of everything published (URLs, share links, status)
/octave:asset-manager publish ./use-cases-site # Publish a folder
/octave:asset-manager share acme-use-cases # Create/manage share links
/octave:asset-manager update acme-use-cases # Replace files or metadata
/octave:asset-manager list # What have I published?
File uploads go through bundled curl scripts (skills/asset-manager/scripts/); metadata, shares, and tokens go through the asset_* MCP tools.
- Add the Octave MCP server (one connection per project):
claude mcp add octave-acme --transport http <url>- Skills detect the Octave MCP server from your available tools. No config file is required.
Authentication is handled via OAuth at the MCP server level. No API keys are stored in the plugin configuration.
The plugin uses the single Octave MCP server you configure (e.g. octave-acme). Call tools by name (e.g. verify_connection(), get_entity(...), list_entities(...)).
verify_connection- Verify workspace connection and authentication status
list_entities- List entities by type; slim rows by default,includeDetails: truefor full data, plussearch,all, and paginationget_entity- Full entity detailslist_revisions- List version history for library entitiesget_revision- Get a specific historical revision of an entitysearch_knowledge_base- Semantic searchask_octave- Natural-language questions over the typed knowledge graph (entities, events, findings, opportunities)
Octave-hosted skill folders (Anthropic Agent Skills structure: root SKILL.md + optional bundled files) that teach agents reusable methods. Distinct from this plugin's own Claude Code skills — these live in your Octave workspace and are retrieved by agents at generation time. Draft skills are invisible to agents until published. All members can read skills; create/update/delete require a workspace owner.
find_skill- Resolve a task to the best-fitting published skill (returns name + description + confidence; empty result = proceed without a skill)list_skills- List skills (name + description only — progressive disclosure L1)get_skill- A skill's SKILL.md instruction body + bundled-file listing (L2)get_skill_file- Fetch one bundled file's content on demand (L3)create_skill- Create a skill: authored (name/description/body), import (URL or text → drafted SKILL.md), or from_examples (example outputs → drafted SKILL.md); lands as a draftupdate_skill- Update frontmatter/body/publish state (publishing makes it agent-discoverable)delete_skill- Delete a skill and its stored folder
create_entity- Create new entity (AI-generated) - excludes legacy playbooksupdate_entity- Update entity (AI-refined) - excludes legacy playbooksdelete_entity- Delete any entity type (soft delete)link_entities_to_offering- Link or unlink library entities (personas, segments, competitors, proof points, references, etc.) to a specific offering. Drives which entities appear in each Motion's matrix.
list_motions- List all Motions in the workspaceget_motion- Full details for a Motioncreate_motion- Create a new Motion for an offering + motion type (NET_NEW,UPSELL,CROSS_SELL,CONVERT_FREE_TO_PAID,RENEW_AND_RETAIN,DISPLACE_INCUMBENT); auto-creates the Default Motion Playbookupdate_motion/delete_motionlist_motion_playbooks/get_motion_playbook- Browse Motion Playbooks (Default + Custom) under a Motioncreate_motion_playbook- Create a Custom Motion Playbook with narrative typeTHEMATIC,MILESTONE,ACCOUNT, orCOMPETITIVEupdate_motion_playbook/delete_motion_playbooklist_motion_icps- List Motion ICP cells (persona × segment) for a Motionfind_motion_icp- Full Motion ICP narrative (Target ICP overview, Operating landscape, Strategic narrative, Pains and consequences, Benefits and impacts, Methodology, References) plus optional Learning Loop learnings and Beats report context
Still available for workspaces operating on legacy standalone playbooks, but Motions and Motion Playbooks supersede them for new work. Use /octave:audit --migrate to translate.
get_playbook- Get a legacy playbook with linked personas, segments, and value propslist_value_props- List value props on a legacy playbookcreate_playbook/update_playbook- Manage legacy playbooks (avoid for new work)add_value_props/update_value_props- Manage value props on a legacy playbook
list_writing_styles- List all writing style configurations
Brand voices are retrieved via the generic entity tool:
list_entities({ entityType: "brand_voice" }).
list_resources- List global resources (documents, websites) with filteringget_resource- Get detailed resource information by oIdcreate_resource- Create a new resource (text, file, URL, or Google Drive)delete_resource- Delete one or more resourcessearch_resources- Semantic search across global resources
find_person/find_company- Search people/companiesfind_similar_people/find_similar_companies- Lookalike searchenrich_person/enrich_company- Detailed intelligencequalify_person/qualify_company- ICP scoringresolve_profile_from_email/resolve_email_from_profile- Resolve a profile from an email (and vice versa)scrape_website- Scrape and extract structured content from a URLdeep_web_research- Multi-source web research on a person, company, or topic
generate_email- Generate email sequencesgenerate_content- Generate various content typesgenerate_call_prep- Generate call preparation materials
list_events- Search calls, emails, dealslist_findings- Aggregate extracted insightsget_event_detail- Get detailed event info with transcript/contentsearch_call_transcripts- Semantic + keyword search over indexed call transcripts. Returns verbatim, speaker-attributed moments grouped per call, withrecordingUrl+startSectime anchors and live-hydrated linked CRM opportunities (current stage). Filterable by company, persona (attributedPersonaOIds, OR across the array), segment (attributedSegmentOIds, resolved live from company classifications), speaker side (customer vs. rep), deal outcome (WON/LOST/OPEN), sentiment, and date range.contentFilternarrows by exact phrase:momentPhrases(the quote itself must contain one),callPhrases(the call must mention one anywhere, e.g. "objections raised" +callPhrases: ["Loops"]= objections from calls that discussed Loops), andexcludeCallPhrases(drop calls mentioning one).list_findingsis the pipeline's paraphrased insight; this is the raw conversation it came from — requiresCAN_ANALYTICSand indexed transcripts (per-workspace backfill)get_entity_evidence- Best verbatim call quotes evidencing one library entity (persona, competitor, objection, use case, proof point). Prefers pipeline-linked moments, falls back to semantic search on the entity name — the entity-anchored composition oflist_findingsandsearch_call_transcripts
Narrative GTM analyses (GTM Explorer / Beats).
list_gtm_reports- List available GTM Explorer report groupsget_latest_gtm_report- Get the most recent report (digest across configs in a group)get_report_run- Get the full content of a specific report run (title, summary, sections)
Proposed library changes (add / edit / merge) from conversation findings, queued for human review.
list_suggestions- List entity suggestions (defaults to pending, last 14 days)get_suggestion- Preview a suggestion in full (proposed entity + current-vs-after diff)accept_suggestion/reject_suggestion- Apply or dismiss a pending suggestioncreate_suggestion- Queue a new pending suggestion (does NOT apply directly)update_suggestion- Revise a pending suggestion via natural-language instructions
The workspace's own company profile (singleton).
get_workspace_company- Get the workspace company (null if not yet bootstrapped)update_workspace_company- Update workspace company fields (description, positioning, etc.)
find_crm_records- Search for CRM records (accounts, contacts, leads, opportunities)find_crm_activities- Fetch activities (notes, tasks, calls, emails) for a CRM recordgenerate_crm_context- Generate synthesized CRM context summary for a person or companyget_crm_entity_schema- Introspect valid fields/properties on a CRM entity (discover field names before requesting them)
list_pipeline_overview- Deals grouped by stage with counts, total value, and per-deal detaillist_deal_health- Assess open deals for stalled stages, expired close dates, single-threading, regressionsget_deal_deep_dive- Full deal context: stage history, close-date changes, activity, benchmarks, competitive intelget_pipeline_metrics- Stage velocity, cycle time, win/loss conversion rates, deal counts
list_agents- List saved agentscreate_agent- Create a saved agentupdate_agent- Update a saved agentget_agent- Get a saved agent by oIddelete_agent- Delete a saved agentrun_email_agent- Run email sequence agentrun_content_agent- Run content agentrun_call_prep_agent- Run call prep agentrun_enrich_person_agent- Run person enrichment agentrun_enrich_company_agent- Run company enrichment agentrun_qualify_person_agent- Run person qualification agentrun_qualify_company_agent- Run company qualification agent
asset_generate_access_token- Mint the per-user access token used by the upload/download scripts (rotates the previous one)asset_refresh_access_token- Rotate the access token (e.g. after a 401)assets_list- List your assets and your workspace's assets, with status/privacy filtersasset_get_by_id- Get one asset by uuidasset_update- Update metadata: identifier, description, entry point, privacy (only_me/workspace/public), status, vanity slug (pretty/s/<handle>/<slug>/URL)asset_delete- Permanently delete an asset and its filesasset_share_create- Create a share link for a non-public asset (emails and/or domains; never expires unless set; the returned URL is shown only once)asset_shares_list- List an asset's share linksasset_share_revoke- Revoke a share link (cuts active sessions)asset_share_add_recipients/asset_share_remove_recipients- Manage a share's email allowlistasset_share_add_domains/asset_share_remove_domains- Manage a share's domain allowlistasset_versions_list- List an asset's immutable file versions (every file update mints one)asset_version_restore- Roll the served files back to a version (instant repoint; newer versions stay restorable)asset_version_delete- Delete an old version to free storage (the current version can't be deleted)asset_stats_get- Per-day unique visit and download counts for an asset (owner-only)asset_visitors_list- Identified viewers: verified share recipients and workspace members (anonymous public visits are counted, never named)asset_access_requests_list- Cross-asset access-request inbox (filter by status; pending = needs action)asset_access_request_grant- Grant a request by minting a single-recipient share (the returned URL is shown only once; no email is sent)asset_access_request_dismiss- Dismiss a request ("not now" - the requester can re-request)
.
├── .claude-plugin/
│ ├── plugin.json # Plugin metadata (this repo root IS the octave plugin)
│ └── marketplace.json # Marketplace config — publishes the root plugin as octave@lfgtm
├── .claude/
│ └── settings.json # Project settings
├── .github/
│ └── workflows/ # CI: sync-downstream (Codex/Cursor mirrors), claude-tag zip
├── docs/
│ └── org-instructions/ # Recommended Claude org preferences for Octave-first routing
├── agents/
│ ├── asset-manager.md # Hosted asset publishing/sharing agent
│ ├── octave-assistant.md # General GTM assistant agent
│ ├── octave-editorial-reviewer.md # Review-gate agent: language + information quality
│ ├── octave-presentation-reviewer.md # Review-gate agent: visual + structural quality
│ ├── pmm-strategist.md # Product marketing strategist agent
│ ├── sdr-coach.md # SDR coaching agent
│ └── revenue-strategist.md # Revenue strategy advisor agent
├── scripts/ # Runtime helpers (resolved via ${CLAUDE_PLUGIN_ROOT}) + repo CI tooling
│ ├── deploy.sh # Deploy a generated deck or page to Vercel
│ ├── export-pdf.sh # Export an HTML presentation to PDF
│ ├── extract-pptx.py # Extract content from .pptx for /octave:deck
│ ├── build-codex.sh # CI: generate the Codex plugin artifact
│ └── build-cursor.sh # CI: generate the Cursor plugin artifact
├── skills/ # Skill definitions (each: SKILL.md + optional references/)
│ ├── shared/ # Cross-skill reference layer (editorial & information rules, presentation principles, review protocol, entity model, style presets, formats/) — not a skill
│ ├── abm/ # Account-based planning
│ ├── ads/ # Ad campaign builder
│ ├── ads-resonance/ # Ad performance resonance loop + prediction cards
│ ├── asset-manager/ # Publish & manage hosted assets (bundled upload/download scripts)
│ ├── audit/ # Library health check
│ ├── battlecard-doc/ # Interactive HTML competitive battlecard
│ ├── call-analyzer/ # Conversation analysis
│ ├── champion-deal-room/ # Champion-facing internal deal room (HTML)
│ ├── deal-coach/ # Deal coaching (Resonate/Elevate/Compel)
│ ├── deck/ # Presentation builder (HTML)
│ ├── generate/ # Quick content generation
│ ├── get-brand-components/ # Brand kit capture for on-brand documents
│ ├── icp-refine/ # ICP refinement
│ ├── insights/ # Field intelligence
│ ├── library/ # Library CRUD
│ ├── meeting-prep/ # Meeting battle plan (HTML)
│ ├── microsite/ # ABM microsite (HTML)
│ ├── one-pager/ # One-pager / leave-behind (HTML)
│ ├── pipeline/ # Deal coaching
│ ├── positioning/ # Positioning system (HTML)
│ ├── product-launch/ # Launch planning
│ ├── proposal/ # Business case / proposal (HTML)
│ ├── prospector/ # Prospect discovery
│ ├── qual-doctor/ # Qualification agent tuning
│ ├── research/ # Research & prep
│ ├── signals/ # Morning intelligence briefing
│ ├── train/ # Sales training & role-play
│ └── win-loss-report/ # Visual win/loss analysis (HTML)
├── EXAMPLES.md # Detailed usage examples
├── .gitignore
├── LICENSE
└── README.md
MIT - See LICENSE