mcpField
S
service-concierge-portal-generate

service-concierge-portal-generate

github.com/forcedotcomクラウド・DevOps1.1k1.2k 回インストール1 日前に更新
リポジトリ

service-concierge-portal-generate について

新規または既存の LWR Experience Cloud サイトに Agentforce Concierge を展開するスキルです。Agent の作成ではなく、既存の有効な Agent をポータルに接続します。

主な機能

  1. 01LWR Experience Cloud への展開
  2. 02既存の有効な Agent との接続
  3. 03ポータルのブランドとコンポーネント設定
  4. 04ゲストアクセスと CORS/CSP の設定
  5. 05メッセージチャネルと埋め込みサービスの委任設定

活用シーン

  1. 01顧客向け Concierge ポータルの展開
  2. 02既存 Agent のポータルへの接続
  3. 03ポータルのメッセージングと埋め込みサービスの構成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/forcedotcom/sf-skills --skill service-concierge-portal-generate

インストール後、Claude Code で/service-concierge-portal-generateを入力して読み込まれたか確認します。

同梱ファイルreferences/portal-deploy-runbook.md

詳細

service-concierge-portal-generate:Agentforce Concierge ポータルのデプロイ

LWR Experience Cloud サイトに Agentforce Concierge エクスペリエンスをデプロイします。ウェルカムメッセージ、プロンプトバー、提案チクレット、チャット画面全体を備えた、エージェントを中心とするランディングページです。このスキルはチャネル設定用であり、既存のエージェントを新規または既存のポータルサイトに接続します。エージェントの作成は行いません。

このスキルが必要な理由

Concierge ポータルの設定は、順序に関する厳密な要件(バンドルの構造、ルーティングの接続、ゲストアクセスフラグ、CORS/CSP レコード)を伴う20ステップのワークフローです。独立したスキルにすることで、service-helpagent-coordinate(チェックポイント3 → ヘルプポータル分岐)から呼び出すことも、ユーザーがすでにエージェントを持っており、ポータルだけが必要な場合に直接呼び出すこともできます。

スキル一覧の事前確認(何よりも先に必須)

ユーザーに質問する前に、このスキルが処理を委任するすべてのスキルがインストールされていることを確認してください。

for skill in service-digital-engagement-channel-configure service-digital-engagement-deployment-configure service-agentforce-channel-configure; do
  [ -d ".claude/skills/$skill" ] && echo "OK: $skill" || echo "MISSING: $skill"
done

不足しているスキルがある場合は、直ちに停止し、存在しないスキルの正確なディレクトリ名をユーザーに伝えてください。不足しているスキルがインストールされるまで先に進まないでください。

必須の入力

入力解決方法
対象組織のエイリアス($ORG)現在の会話ターンで指定されていない場合は、AskUserQuestion で質問します
エージェント($BOT_ID、$BOT_DEV_NAME)必ず組織に問い合わせます。以前の会話の内容から推測してはいけません
MessagingChannel($MESSAGING_CHANNEL_DEV_NAME、$MESSAGING_CHANNEL_ID)任意 — すでに作成済みの場合は呼び出し元のスキルから受け取ります。そうでない場合は、ランブックのステップ E で service-digital-engagement-channel-configure に処理を委任します
EmbeddedServiceConfig($ESC_ID、$ESC_DEV_NAME)任意 — すでに作成済みの場合は呼び出し元のスキルから受け取ります。そうでない場合は、ランブックのステップ F.3 で service-digital-engagement-deployment-configure に処理を委任します

MESSAGING_CHANNEL_DEV_NAME と ESC_ID が指定されていない場合、このスキルは適切なスキルに作成を委任します(ランブックの §E と §F.3 を参照)。ポータルサイト自体(DEB バンドル、ブランディング、コンポーネント、ゲストアクセス、CORS/CSP)は、常にこのスキルがプロビジョニングします。

ワークフロー

references/portal-deploy-runbook.md を読み、最初から最後まで手順に従ってください。ランブックは各手順を示す正式なガイドです。この SKILL.md は、ルーティングとコンテキストの提供のみを担います。

エントリーポイント
  1. 組織のエイリアスを尋ねます:

    AskUserQuestion:
      question: "Which org should I deploy the Concierge portal to?"
      header: "Org alias"
      options:
        - label: "Enter alias"
          description: "Type the org alias (e.g. help-portal-dev, trailsignup)"
    
  2. 有効なエージェントを検索します(有効化の状態は BotDefinition ではなく BotVersion.Status = 'Active' にあります。フィルターなしの SELECT ... FROM BotDefinition では、ランブックで接続できない廃止済み/非アクティブなボットが返されるため、必ず有効な BotVersion を明示的にフィルターしてください):

    sf data query --target-org $ORG --json \
      --query "SELECT Id, DeveloperName, MasterLabel FROM BotDefinition WHERE Id IN (SELECT BotDefinitionId FROM BotVersion WHERE Status='Active') ORDER BY MasterLabel"
    
    • 行が0件(ボットが存在しない場合も、非アクティブ/廃止済みのボットしかない場合も、接続に関してはどちらも0件として扱います)→ 同じターン内に必ず処理を停止します。ランブックを読み込まず、service-digital-engagement-channel-configure や service-digital-engagement-deployment-configure に委任せず、BOT_ID を捏造せず、「まず新しいエージェントを作成してください」という AskUserQuestion も提示しないでください。ポータルの接続には有効なエージェントが必要であることをユーザーに伝え、先に agentforce-generate または service-helpagent-coordinate を使ってエージェントを作成してから、このスキルを再度呼び出すよう案内してください。
    • 有効なエージェントが1件以上 → 返されたエージェントをすべて選択肢として提示し、さらに 「まず新しいエージェントを作成」 という選択肢も AskUserQuestion で提示します。ユーザーが唯一のエージェントまたは最初のエージェントを選ぶとは決めつけず、必ず明示的に尋ねてください。

    ユーザーが 「まず新しいエージェントを作成」 を選択した場合は、直ちに次のメッセージを表示して停止します:

    新しいエージェントの作成は、このスキルの対象外です。エージェントを作成するには、agentforce-generate スキル(または Help Agent のセットアップ全体を行う場合は service-helpagent-coordinate)を実行してから、Concierge ポータルスキルを再度呼び出してください。

    ユーザーが既存のエージェントを選択した場合は、BOT_ID と BOT_DEV_NAME を取得して続行します。

    長いリストのルール: エージェントが6件を超える場合はページ分けし、一度に6件ずつ表示して、「さらに表示」オプションを提示してください。

  3. references/portal-deploy-runbook.md を読み込み、§0を上から順に実行します。

戻り値(呼び出し元のスキル向け)

成功した場合は、次の情報を提示します:

変数値
NETWORK_IDプロビジョニングされたポータルの18文字の Network Id
PUBLISHED_PORTAL_URL公開中の顧客向けURL(Incognito での確認用)
MESSAGING_CHANNEL_DEV_NAMEエージェントに接続された EmbeddedMessaging チャネル
ESC_IDEmbeddedServiceConfig Id(認証パス)
最終報告の形式

完了時に、デプロイした内容を要約し、ユーザー(または呼び出し元のスキル)が対応できるよう、上記4つの戻り値を明確なラベル付きのブロックで提示します。有効なエージェントの検索結果が0件の場合は、ステップ2の処理停止メッセージを直ちに表示し、戻り値の報告は省略します。

ルール/制約

ルール理由
ユーザーとやり取りする前に、スキルの一覧を確認する事前チェックを実行する存在しないスキルへの委任はデプロイ途中で失敗し、ポータルが部分的な状態のまま残ります
開始前に、エージェントが存在し、有効な状態でなければなりません非アクティブなエージェントを接続すると、ポータルは読み込まれても応答しません
§Aの質問を開始する前に、references/portal-deploy-runbook.md を最後まで読んでください各ステップを実行する際に、ランブックの§0のステージ表を把握している必要があります
MessagingChannel または EmbeddedServiceConfig をその場で作成してはいけません。必ず委任してくださいこれらのオブジェクトは service-digital-engagement-channel-configure と service-digital-engagement-deployment-configure が管理しています。その場で作成すると、キューの解決、エスカレーションの接続、ESDの検証が省略されます
§L.0のゲストアクセスフラグを省略してはいけませんOptionsGuestChatterEnabled と OptionsGuestMemberVisibility のデフォルト値は False です。これらを設定しないと、Incognito ではポータルが空に見えます
DEBフラグを変更するたびに再公開してくださいisRelaxedCSPLevel、authenticationType、headMarkup は公開後にのみ反映されます
オペレーターが一時停止するのは1回のみです:§F.4のAgentforce Orchestratorトグルそれ以外のすべてのステップはヘッドレスで実行します。ヘッドレスの経路で回復不能なエラーが発生した場合を除き、UI操作のために一時停止してはいけません

参照ファイル一覧

ファイル読み込むタイミング
references/portal-deploy-runbook.md常に — デプロイ手順を定める正式な20ステップのランブック

コメント