Pendo分析(ユーザーの利用状況や満足度を可視化するツール)から、顧客との関わり度、満足度、フィードバックなどの情報を集めて整理し、顧客面談に備えます。 次のような場合に使用: - 顧客アカウントの健全性について知りたい - 顧客面談の準備をしたい - アカウント健全性レポートが必要 - 特定の顧客の利用状況や関わり度を調べたい - アカウントの状態をまとめた概要が欲しい - QBR(四半期ビジネスレビュー:定期的な顧客との振り返り会議)の準備をしたい - 顧客の状況を確認したい - 会議前にアカウント情報を確認したい 「アカウント健全性」という言葉が明確に出ていなくても、顧客面談や定期的なレビュー準備の文脈で使用できます。
Prepare for a customer call by synthesizing engagement, sentiment, and feedback from Pendo analytics. Use this skill whenever someone asks about account health, wants to prepare for a customer call, needs an account health report, asks about engagement or usage for a specific customer, or wants a summary of how an account is doing. Also trigger when users mention preparing for a QBR, checking on a customer, or reviewing an account before a meeting — even if they don't say "account health" explicitly.
顧客とのやり取りに向けて、利用状況、機能の使用パターン、フィードバック、NPS(顧客満足度指標)データを総合的に分析し準備するスキルです。
このステップが最も重要です。ユーザーは企業名を不完全に指定することが多く、同じ名前のアカウントが複数存在する場合があります。推測でアカウントを選ばず、曖昧性がある場合は必ずユーザーに確認してください。
searchEntitiesを使用してitemType: ["Account"]とユーザーの検索キーワードを指定し、該当するアカウントを探します。
検索結果がちょうど1件の場合、ユーザーに確認します:アカウント名とIDのほか、主要なメタデータ(説明情報)をいくつか表示し、「このアカウントで間違いありませんか?」と尋ねます。
検索結果が複数件の場合、区別テーブル(判別表)を提示し、ユーザーが正しいアカウントを選べるようにします。各結果についてaccountQueryを使ってメタデータを取得し、違いを明確にします。
まずaccountMetadataSchemaを呼び出して、利用可能なメタデータを確認します。その後、入手可能なデータの中から最も役立つフィールドを選択し、以下のカテゴリを優先します:
常に利用可能(Pendo基本機能):
metadata.auto.lastvisit(最後のアクティビティ日時)metadata.auto.firstvisit(初めてのアクティビティ日時)エージェント(接続システム)メタデータ(通常利用可能):
metadata.agent.is_paying(有料ステータス)metadata.agent.industry(業界)metadata.agent.plannameまたはmetadata.agent.planlevel(プラン情報)metadata.agent.name(アカウント表示名)カスタムメタデータ(顧客によって異なる):
metadata.custom.arr(年間経常収益)metadata.custom.da_visitors30(過去30日間の訪問者数)metadata.custom.csmassigned(担当のカスタマーサクセスマネージャー)metadata.custom.da_subscriptiontype(購読タイプ)Salesforceメタデータ(Salesforce連携が有効な場合のみ):
metadata.salesforce.account_name__c(Salesforceのアカウント名)metadata.salesforce.arr__c(SalesforceのARR)metadata.salesforce.industry(業界)metadata.salesforce.account_segment__c(セグメント)metadata.salesforce.csm_assigned__c(担当CSM)目標は、どの連携システムが有効かに関わらず、アカウントごとに3~5個の有意義なフィールドを表示することです。Salesforceのフィールドが空欄または利用不可の場合は、エージェントとカスタムメタデータで補完します。そこにはほぼ常に、アカウントを区別するのに十分な情報があります。区別に重要な指標は:有料ステータス、訪問者アクティビティ、最近のアクティビティ日時、プラン/段階情報、企業名またはドメインです。
最もふさわしいアカウントに⭐おすすめタグを付け、その理由を簡潔に説明します。以下の信号を参考に推奨を判定します(優先順は目安):
metadata.agent.is_payingまたはmetadata.custom.ispayingを確認します。metadata.custom.da_visitors30などを確認します。metadata.auto.lastvisitを使用します。複数の信号が一致している場合(例:有料+訪問者が多い+最近のアクティビティがある+メタデータが充実)、推奨の信頼度が高くなります。信号が対立する場合は、トレードオフを説明してユーザーが判断できるようにします。
例(Salesforce連携がある場合):
「Acme」に一致するアカウントが複数見つかりました。どれを探していますか?
1. ⭐ **Acme_Corp_Production** (ID: Acme_Corp_Production) — おすすめ
- SF名: Acme Corporation | 有料: はい | CSM: Jane Smith
- 最後のアクティビティ: 2026年2月 | 訪問者(30日間): 1,200
→ *おすすめ理由:有料アカウントで、アクティブユーザー数が圧倒的に多い*
2. **Acme_Corp_Staging** (ID: Acme_Corp_Staging)
- SF名: Acme Corporation | 有料: はい | CSM: Jane Smith
- 最後のアクティビティ: 2026年2月 | 訪問者(30日間): 16
3. **Acme_Corp** (ID: Acme_Corp)
- 有料: いいえ | Salesforceデータなし
- 最後のアクティビティ: 2026年1月 | 訪問者(30日間): 0
例(Salesforce連携なし――エージェント/カスタムメタデータを使用):
「Acme」に一致するアカウントが複数見つかりました。どれを探していますか?
1. ⭐ **Acme_Corp_Production** (ID: Acme_Corp_Production) — おすすめ
- 有料: はい | プラン: エンタープライズ | 業界: テクノロジー
- 最後のアクティビティ: 2026年2月 | 訪問者(30日間): 1,200
→ *おすすめ理由:有料エンタープライズアカウントで、アクティブユーザー数が最も多い*
2. **Acme_Corp_Staging** (ID: Acme_Corp_Staging)
- 有料: はい | プラン: エンタープライズ
- 最後のアクティビティ: 2026年2月 | 訪問者(30日間): 16
3. **Acme_Corp** (ID: Acme_Corp)
- 有料: いいえ | プラン: フリー
- 最後のアクティビティ: 2026年1月 | 訪問者(30日間): 0
ユーザーは2つ以上のアカウントを分析したいことがあります。例えば、親会社とその子会社(「Acme_Corp_Production」と「Acme_Corp_Staging」など)のように。区別テーブルを提示するときは:
ユーザーが複数のアカウントを選択できることを知らせます(例:「1、2、4番」とリスト形式で指定)。
複数を選択した場合、1つのレポートを生成し、アカウントごとにセクションを分ける形式にします。各アカウントには完全な状態分析(利用状況、機能使用、フィードバックなど)を実施し、アカウント名とIDで明確にラベル付けします。
複数選択時はクロスアカウント要約をレポート冒頭に追加し、重要な違いを強調します(例:「Acme_Corp_ProductionはAcme_Corp_Stagingの75倍のアクティブ訪問者を有する」)。
実際に値が入っているメタデータフィールドだけを表示し、空欄やnullフィールドはスキップして見やすくします。目標は、ユーザーが圧倒される心配なく、正しいアカウント(群)を自信を持って選べる十分なコンテキストを提供することです。
アカウントが確認されたら、Pendoツールを使って利用データを集めます:
ツール: activityQuery、productEngagementScore
ツール: activityQuery、searchEntities
ツール: generate_feedback_topics、get_feedback_insights、get_feedback_items
NPSデータが利用可能な場合、センチメント(意識・感情)メトリクスを集めます:
ツール: activityQuery(ポール実体型で使用)
構造化されたアカウント状態レポートを生成します:
## アカウント状態要約:{アカウント名}
**アカウントID**: {account_id}
**期間**: {timeframe}
### 利用状況の概要
- **ユニーク訪問者数**: {count} 件(前期間:{previous_count} 件){↑/↓ %変化}
- **アクティブユーザー上位3名**:
1. {訪問者_1} — {アクティブ日数} 日間のアクティビティ
2. {訪問者_2} — {アクティブ日数} 日間のアクティビティ
3. {訪問者_3} — {アクティブ日数} 日間のアクティビティ
- **PESスコア**: {スコア}/100
### 機能・ページ利用状況
**訪問者数が多いページ上位**:
1. {ページ_1} — {訪問者数} 訪問者
2. {ページ_2} — {訪問者数} 訪問者
3. {ページ_3} — {訪問者数} 訪問者
**訪問者数が多い機能上位**:
1. {機能_1} — {訪問者数} 訪問者
2. {機能_2} — {訪問者数} 訪問者
3. {機能_3} — {訪問者数} 訪問者
### 顧客フィードバックのテーマ
{フィードバックテーマの要約}
### アラートとリスク
{フラグ付けされた項目}
Synthesize engagement metrics, feature usage, feedback, and NPS data to prepare for customer conversations.
This is the most important step. Users often provide partial or ambiguous account names, and there may be many accounts with similar names. Never silently pick an account — always confirm with the user when there's any ambiguity.
Use searchEntities with itemType: ["Account"] and the user's search term to find matching accounts.
If the search returns exactly one result, confirm with the user: show the account name and ID, plus a couple of key metadata fields, and ask "Is this the right account?"
If the search returns multiple results, present a disambiguation table so the user can pick the right one. For each result, fetch metadata using accountQuery to help the user tell them apart.
First, check what metadata is available by calling accountMetadataSchema for the subscription. Then select the most useful fields from whatever is available, prioritizing these categories:
Always available (Pendo core):
metadata.auto.lastvisit (last activity date)metadata.auto.firstvisit (first activity date)Agent metadata (usually available):
metadata.agent.is_paying (paying status)metadata.agent.industry (industry)metadata.agent.planname or metadata.agent.planlevel (plan info)metadata.agent.name (account display name)Custom metadata (varies by customer):
metadata.custom.arr (ARR)metadata.custom.da_visitors30 (visitors last 30 days)metadata.custom.csmassigned (CSM)metadata.custom.da_subscriptiontype (subscription type)Salesforce metadata (only if Salesforce integration is active):
metadata.salesforce.account_name__c (Salesforce account name)metadata.salesforce.arr__c (ARR from Salesforce)metadata.salesforce.industry (industry)metadata.salesforce.account_segment__c (segment)metadata.salesforce.csm_assigned__c (CSM)The goal is to show 3–5 meaningful fields per account regardless of which integrations are active. If Salesforce fields are empty or unavailable, lean on agent and custom metadata instead — there's almost always enough there to differentiate accounts. The key signals for disambiguation are: paying status, visitor activity, recency, plan/tier info, and any identifying name or domain.
Mark the most likely account with a ⭐ Recommended tag and include a brief explanation of why. Use these signals to determine the recommendation (in rough priority order):
metadata.agent.is_paying or metadata.custom.ispaying.metadata.custom.da_visitors30 or similar fields.metadata.auto.lastvisit.When multiple signals agree (e.g., paying + high visitors + recent activity + rich metadata), the recommendation is strong. When signals conflict, explain the tradeoff so the user can make the call.
Example (with Salesforce integration):
I found several accounts matching "Acme". Which one(s) are you looking for?
1. ⭐ **Acme_Corp_Production** (ID: Acme_Corp_Production) — Recommended
- SF Name: Acme Corporation | Paying: Yes | CSM: Jane Smith
- Last Active: Feb 2026 | Visitors (30d): 1,200
→ *Recommended: paying account with by far the most active users*
2. **Acme_Corp_Staging** (ID: Acme_Corp_Staging)
- SF Name: Acme Corporation | Paying: Yes | CSM: Jane Smith
- Last Active: Feb 2026 | Visitors (30d): 16
3. **Acme_Corp** (ID: Acme_Corp)
- Paying: No | No Salesforce data
- Last Active: Jan 2026 | Visitors (30d): 0
Example (without Salesforce — using agent/custom metadata):
I found several accounts matching "Acme". Which one(s) are you looking for?
1. ⭐ **Acme_Corp_Production** (ID: Acme_Corp_Production) — Recommended
- Paying: Yes | Plan: Enterprise | Industry: Technology
- Last Active: Feb 2026 | Visitors (30d): 1,200
→ *Recommended: paying enterprise account with the most active users*
2. **Acme_Corp_Staging** (ID: Acme_Corp_Staging)
- Paying: Yes | Plan: Enterprise
- Last Active: Feb 2026 | Visitors (30d): 16
3. **Acme_Corp** (ID: Acme_Corp)
- Paying: No | Plan: Free
- Last Active: Jan 2026 | Visitors (30d): 0
The user may want to analyze more than one account — for instance, a parent company with multiple sub-accounts (like "Acme_Corp_Production" and "Acme_Corp_Staging"). When presenting the disambiguation list:
Let the user know they can select multiple accounts by listing the numbers (e.g., "1, 2, and 4").
If they select multiple, generate a single report with separate sections per account. Each account gets its own full health analysis (engagement, usage, feedback, etc.), clearly labeled with the account name and ID.
Add a brief cross-account summary at the top if multiple accounts are selected, highlighting any notable differences (e.g., "Acme_Corp_Production has 75x more active visitors than Acme_Corp_Staging").
Only show metadata fields that actually have values — skip empty or null fields to keep it clean. The goal is to give the user enough context to confidently pick the right account(s) without overwhelming them.
Once the account is confirmed, use Pendo tools to gather engagement data:
Tools: activityQuery, productEngagementScore
Tools: activityQuery, searchEntities
Tools: generate_feedback_topics, get_feedback_insights, get_feedback_items
If NPS data is available, gather sentiment metrics:
Tools: activityQuery (with poll entity type)
Generate a structured account health report:
## Account Health Summary: {account_name}
**Account ID**: {account_id}
**Period**: {timeframe}
### Engagement Overview
- **Unique Visitors**: {count} (vs {previous_count} previous period) {↑/↓ % change}
- **Top Active Users**:
1. {visitor_1} — {days_active} days active
2. {visitor_2} — {days_active} days active
3. {visitor_3} — {days_active} days active
- **PES Score**: {score}/100
### Feature & Page Usage
**Top Pages**:
1. {page_1} — {visitor_count} visitors
2. {page_2} — {visitor_count} visitors
3. {page_3} — {visitor_count} visitors
**Top Features**:
1. {feature_1} — {visitor_count} visitors
2. {feature_2} — {visitor_count} visitors
3. {feature_3} — {visitor_count} visitors
### Customer Feedback Themes
{feedback_topics_summary}
### Alerts & Risks
{any_flagged_items}
### Recommendations for Customer Call
{synthesized_recommendations}
When the user selects multiple accounts, produce a single report with this structure:
## Combined Account Health Report
**Accounts analyzed**: {account_1}, {account_2}, ...
**Period**: {timeframe}
### Cross-Account Summary
{Brief comparison highlighting notable differences — e.g., relative visitor counts, which accounts are most/least active, any shared feedback themes or divergent trends. Keep this to 3-5 sentences.}
---
## {account_1_name} (ID: {account_1_id})
### Engagement Overview
{... same structure as single account ...}
### Feature & Page Usage
{...}
### Customer Feedback Themes
{...}
### Alerts & Risks
{...}
---
## {account_2_name} (ID: {account_2_id})
{... repeat for each account ...}
---
### Combined Recommendations for Customer Call
{Synthesize recommendations across all accounts. Note which are account-specific vs. common themes.}
The cross-account summary at the top is important — it gives the user a quick read before diving into details, and helps them spot patterns across sub-accounts that they might miss looking at each one individually.
account_id explicitly in all subsequent queries.原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。