• Projects
  • Service
  • About
  • branding.bz
  • Podcast
  • Tips
  • FAQ
  • Recruit
  • Download
  • Contact
  • branding.bz(ブランド構築SaaS)
  • DESIGN NOW(デザインメディア)
  • X
  • LinkedIn
  • Spotify
  • Facebook

213-0011 神奈川県川崎市高津区久本3-6-7-303

© 2026 ID INC. All rights reserved

claude-skills/スキル
SKILLOfficialproductivity

account-health

プラグイン
pendo-analytics
ソース
GitHub で見る ↗
説明

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.

ユースケース
  • 顧客アカウントの健全性を確認したい
  • 顧客面談の準備をしたい
  • 顧客の利用状況や満足度を調べたい
  • QBR準備のため顧客情報をまとめたい
本文(日本語訳)

アカウント状態分析

顧客とのやり取りに向けて、利用状況、機能の使用パターン、フィードバック、NPS(顧客満足度指標)データを総合的に分析し準備するスキルです。

パラメータ

  • account_name_or_id: ユーザーが入力する値。企業名の一部、完全な企業名、または正確なアカウントIDの形式で指定できます。
  • timeframe: 分析の対象期間(デフォルト:過去90日間)

ステップ0:アカウントの検索と確認

このステップが最も重要です。ユーザーは企業名を不完全に指定することが多く、同じ名前のアカウントが複数存在する場合があります。推測でアカウントを選ばず、曖昧性がある場合は必ずユーザーに確認してください。

アカウントの検索方法

  1. searchEntitiesを使用してitemType: ["Account"]とユーザーの検索キーワードを指定し、該当するアカウントを探します。

  2. 検索結果がちょうど1件の場合、ユーザーに確認します:アカウント名とIDのほか、主要なメタデータ(説明情報)をいくつか表示し、「このアカウントで間違いありませんか?」と尋ねます。

  3. 検索結果が複数件の場合、区別テーブル(判別表)を提示し、ユーザーが正しいアカウントを選べるようにします。各結果について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を確認します。
  • 訪問者数(30日間): 最近のアクティビティが多いほど、テストやレガシー(旧型)の重複ではなく、実運用中のアカウントを示唆します。metadata.custom.da_visitors30などを確認します。
  • 最後のアクティビティ日時: 最近のアクティビティがあるほど良好です。数年前のアクティビティしかないアカウントは古い可能性があります。metadata.auto.lastvisitを使用します。
  • 充実したメタデータ: Salesforce、エージェント、カスタムソースなど、より多くのメタデータフィールドが入力されているアカウントは、孤立した重複ではなく「本物の」アカウントである可能性が高いです。

複数の信号が一致している場合(例:有料+訪問者が多い+最近のアクティビティがある+メタデータが充実)、推奨の信頼度が高くなります。信号が対立する場合は、トレードオフを説明してユーザーが判断できるようにします。

例(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フィールドはスキップして見やすくします。目標は、ユーザーが圧倒される心配なく、正しいアカウント(群)を自信を持って選べる十分なコンテキストを提供することです。

  1. 結果が見つからない場合、ユーザーに通知し、別の検索キーワードを提案するか、企業名の再確認を促します。
  2. ユーザーが分析対象のアカウント(群)を確認するまで、状態分析レポートには進まないでください。

区別のためのヒント

  • 最大10件までの結果を表示します。それ以上ある場合は、ユーザーに検索を絞り込むよう促します。
  • アカウントを区別するのに最も役立つフィールド:ARR、業界、セグメント、CSM名、最近のアクティビティ。有料ステータスも本番環境とテスト/デモアカウントの区別に役立ちます。
  • ユーザーが正確なアカウントID(長い数字の文字列など)のように見えるものを入力した場合、検索をスキップしてレポートに進むことができますが、アカウント名を確認用に表示してください。

ステップ1:利用状況メトリクスの収集

アカウントが確認されたら、Pendoツールを使って利用データを集めます:

ツール: activityQuery、productEngagementScore

  • 指定期間内のアカウントのユニーク訪問者数を取得
  • 前の同じ期間のユニーク訪問者数を取得(比較用)
  • このアカウントの訪問者の上位3名をアクティブ日数で特定
  • PES(プロダクト・エンゲージメント・スコア:製品利用度)を計算(利用可能な場合)

ステップ2:機能使用データの収集

ツール: activityQuery、searchEntities

  • このアカウントから訪問者数が最も多い上位3ページを取得
  • このアカウントから訪問者数が最も多い上位3機能を取得
  • 成長または減少傾向を特定

ステップ3:フィードバックデータの収集

ツール: generate_feedback_topics、get_feedback_insights、get_feedback_items

  • アカウントからのフィードバックをテーマごとにグループ化
  • 主要な洞察とテーマを抽出
  • アラート(解約リスク、高い不満、営業障害)を記録

ステップ4:NPSスコアの収集

NPSデータが利用可能な場合、センチメント(意識・感情)メトリクスを集めます:

ツール: activityQuery(ポール実体型で使用)

  • 指定期間内のアカウントのNPSスコアを取得
  • 前の期間と比較(利用可能な場合)

出力形式

単一アカウントのレポート

構造化されたアカウント状態レポートを生成します:

## アカウント状態要約:{アカウント名}
**アカウント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} — {訪問者数} 訪問者

### 顧客フィードバックのテーマ
{フィードバックテーマの要約}

### アラートとリスク
{フラグ付けされた項目}
原文(English)を表示

Account Health Analysis

Synthesize engagement metrics, feature usage, feedback, and NPS data to prepare for customer conversations.

Parameters

  • account_name_or_id: What the user provides — could be a partial name, full name, or exact account ID.
  • timeframe: The time period for analysis (default: last 90 days).

Step 0: Find and Confirm the Account

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.

How to find the account

  1. Use searchEntities with itemType: ["Account"] and the user's search term to find matching accounts.

  2. 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?"

  3. 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.

Recommending the best match

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):

  • Paying status: Paying accounts are almost always the ones users care about. Check metadata.agent.is_paying or metadata.custom.ispaying.
  • Visitor count (30d): Higher recent activity indicates this is a real, active production account — not a test or legacy duplicate. Check metadata.custom.da_visitors30 or similar fields.
  • Last active date: More recent activity is better. Accounts last active years ago are probably stale. Use metadata.auto.lastvisit.
  • Has rich metadata: Accounts with more populated metadata fields (whether from Salesforce, agent, or custom sources) are more likely to be the "real" account vs. orphaned duplicates.

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

Multi-account selection

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.

  1. If no results are found, let the user know and suggest alternative search terms or ask them to double-check the name.
  2. Do not proceed to the health report until the user has confirmed which account(s) to analyze.

Tips for disambiguation

  • Show at most 10 results. If there are more, ask the user to narrow their search.
  • Fields that are most useful for telling accounts apart: ARR, industry, segment, CSM name, and recent activity. Paying status also helps distinguish production accounts from test/demo ones.
  • If the user provides what looks like an exact account ID (a long numeric string), you can skip the search and go directly to the report — but still show the account name for confirmation.

Step 1: Collect Engagement Metrics

Once the account is confirmed, use Pendo tools to gather engagement data:

Tools: activityQuery, productEngagementScore

  • Get the count of unique visitors for the account in the timeframe
  • Get the count of unique visitors in the previous equivalent timeframe (for comparison)
  • Identify the top 3 visitors by days active from this account
  • Calculate PES (Product Engagement Score) if available

Step 2: Collect Feature Usage Data

Tools: activityQuery, searchEntities

  • Get top 3 pages by number of visitors from this account
  • Get top 3 features by number of visitors from this account
  • Identify any growth or decline trends

Step 3: Collect Feedback Data

Tools: generate_feedback_topics, get_feedback_insights, get_feedback_items

  • Group feedback from the account into topics
  • Extract key insights and themes
  • Note any alerts (Churn Risk, High Frustration, Blocker to Sale)

Step 4: Collect NPS Scores

If NPS data is available, gather sentiment metrics:

Tools: activityQuery (with poll entity type)

  • Get NPS score for the account in the timeframe
  • Compare with previous period if available

Output Format

Single account report

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}

Multi-account report

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.

Rules

  • Never skip account confirmation. If the user's search returns more than one result, always present the options with a ⭐ Recommended tag and wait for them to choose. This is the single most important rule.
  • Always explain the recommendation. Don't just star an account — briefly say why (e.g., "paying account with the most active users").
  • Support multi-account selection. Let the user pick multiple accounts. When they do, produce separate report sections per account with a cross-account summary at the top and combined recommendations at the bottom.
  • Always pass the confirmed account_id explicitly in all subsequent queries.
  • Execute steps 1–4 in parallel when possible to save time. When analyzing multiple accounts, run all accounts' data collection in parallel too.
  • Keep user-facing responses minimal outside the report — let the report speak for itself.
  • Default timeframe is 90 days if not specified.
  • If a data source returns no results (e.g., no feedback, no NPS), note it briefly in the report rather than leaving the section blank.

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。