Claude Media
Claude CodeのAgentforce ADLCプラグインで.agentを作りデプロイする

Claude CodeのAgentforce ADLCプラグインで.agentを作りデプロイする

Agentforce ADLCプラグインは、.agentファイルの作成からOrgへのデプロイ、テスト、本番トレースの改善までをスキル3つで回します。導入手順と前提条件、各スキルに渡す指示の書き方を示します。

Agentforce ADLC(Agent Development Life Cycle)は、Salesforce AI Researchが公開しているClaude Codeプラグインです。Agentforceエージェントの定義ファイルである.agentを、Claudeが直接書き、Orgへのデプロイ、テスト、本番セッションの分析までを同じ道具で進めます。

スキルは3つだけです。作ってデプロイするのが/agentforce-generate、試すのが/agentforce-test、本番データから直すのが/agentforce-observeです。

Agentforce ADLCプラグインとは何か

提供元の説明では、Agent Scriptという記述言語でAgentforceエージェントを作り、デプロイし、テストし、最適化するためのClaude Codeスキル集です。特徴として次の点が挙げられています。

特徴

ADLCプラグインの設計上の柱

  • 直接オーサリング

    markdownから変換するのではなく、コーディングエージェントが.agentファイルを直接生成します。

  • 決定論的なエージェント

    Agent Script DSLが条件分岐・ガード・遷移をコードレベルで固定します。

  • 安全レビューの組み込み

    作成・デプロイ・テスト・最適化の各段階で、LLMによる安全レビューが入ります。

  • トレース分析

    Data CloudからSTDM(セッショントレース)を取り出し、データに基づいて改善します。

各スキルは単独で呼べます。既存のエージェントに/agentforce-testだけを当てることも、本番のセッションデータに/agentforce-observeだけを当てることもできます。

使う前に揃えるもの

前提は4つです。Agentforceが有効なSalesforce Orgも前提条件に含まれます。

前提内容
Python内容3.9以上(python3 --versionで確認)
Salesforce CLI内容sf v2.x
コーディングエージェント内容Claude Code、Codex、Cursorのいずれか
Salesforce Org内容Agentforceが有効なもの

提供元の例では、プロンプトに「my-org」のようなOrg名を添えてデプロイ先を指定しています。

プラグインを入れる手順

導入経路は2つあり、提供元はプラグインとしての導入を推奨しています。

手順

マーケットプレイス経由で入れる

  1. 1

    マーケットプレイスを追加する

    提供元のリポジトリをマーケットプレイスとして登録します。

  2. 2

    プラグインをインストールする

    <プラグイン名>@<マーケットプレイス名>の形で指定します。

  3. 3

    動作を確かめる

    claude plugin listで一覧に出ているかを見ます。

claude plugin marketplace add SalesforceAIResearch/agentforce-adlc
claude plugin install agentforce-adlc@agentforce-adlc
claude plugin list

リポジトリをcloneして試すだけなら、claude --plugin-dir ./agentforce-adlcでそのまま読み込めます。開発用の読み込み方です。

チームで使うなら、インストール先のスコープを決めます。Claude Codeのclaude plugin installは--scope projectを受け付け、有効化の記録はコミットする.claude/settings.jsonに入ります。ただしこの記録は協力者のマシンにプラグインを配るわけではなく、各自が一度インストールを実行する必要があります。

claude plugin install agentforce-adlc@agentforce-adlc --scope project

claude.comのプラグインページにはClaude Code用のインストールボタンがあります。ボタンを使う場合は、表示されたコマンドをそのまま使います。

ファイルコピー型のインストーラー

プラグイン機構を使わない経路もあります。curlでインストーラーを流し込む方法と、cloneしたリポジトリからtools/install.pyを実行する方法です。

python3 tools/install.py --target claude

この方式はスキルを~/.claude/配下に置き、エージェント定義とフック用スクリプトも同じ場所へコピーします。プラグイン方式は自己完結で、~/.claude/にはファイルを置きません。後から消すなら、プラグイン方式はclaude plugin uninstall、ファイルコピー方式は~/.claude/adlc-install.py --uninstallです。

名前空間付きで呼び出す

プラグインとして入れたスキルは名前空間が付き、/agentforce-adlc:agentforce-generateのように呼びます。本記事の以降では短い形で書きますが、補完候補に出る名前を優先してください。

/agentforce-generateでエージェントを作ってデプロイする

最初に使うのは/agentforce-generateです。1つのスキルが、オーサリング、ターゲットの探索、スタブの生成、デプロイまでを担当します。

提供元の例では、スキルを呼んだあとに自然文で要件を渡します。

/agentforce-generate
 
Build a service agent that helps customers check order status,
request returns, and track shipments. It should verify identity
before showing order details. Deploy to my-org.

スキルが進める工程は4つです。

あゆみ

/agentforce-generateの4工程

  1. 1. Author.agentファイルを書く

    トピック、アクション、変数、決定論的なロジックを含む.agentを生成します。

  2. 2. DiscoverOrg内のターゲットを調べる

    Flow、Apex、Retrieverのうち、アクションが呼ぶ先がOrgにあるかを確認します。

  3. 3. Scaffold足りないものの雛形を作る

    見つからなかったターゲットに、Flow XML、Apexクラス、テストクラス、PermSetのスタブを生成します。

  4. 4. Deploy検証・公開・有効化

    検証し、オーサリングバンドルを公開し、エージェントを有効化します。

工程は個別にも起動できます。たとえば「OrderService.agentのターゲットだけ探索して」と頼めば、探索のみが走ります。

要件の渡し方

提供元の例を見ると、良い指示は「何をするエージェントか」「守るべき条件」「デプロイ先」の3点を含んでいます。上の例なら、順に注文照会・返品・配送追跡、本人確認の前に注文情報を見せないこと、my-orgです。

条件の部分は、後で.agentの中のガードや遷移として固定されます。曖昧な文章のままにせず、「本人確認が済むまでは注文詳細のトピックに遷移しない」のように、遷移の条件として書くと決定論的なロジックに落ちやすくなります。この書き方は提供元の例に沿った運用上の工夫です。

Agent Scriptの規約

提供元は、生成される.agentについていくつかの規約を挙げています。差分を読むときの目安になります。

  • インデントは1段階につき半角スペース4つ。タブとスペースは混ぜない
  • 真偽値はTrue / False(先頭大文字)
  • 変数は、読み書きできるmutableと、外部ソースに結び付くlinkedの2種類
  • アクションは、トピック内の定義と、推論部での呼び出しの2段構え
  • developer_nameは、aiAuthoringBundles/配下のフォルダー名と一致させる
  • 命令文は、静的なテキストなら|、条件付きのロジックなら->

developer_nameとフォルダー名の不一致は、手で.agentを直したときに起きやすい食い違いです。直したあとはスキルに検証を頼んでからデプロイに進みます。

/agentforce-testで動かして確かめる

デプロイしたら/agentforce-testです。提供元の例では、対象エージェント、Org、試す発話を並べて渡します。

/agentforce-test
 
Smoke test OrderService against my-org with these utterances:
- "Where is my order #12345?"
- "I want to return my recent purchase"
- "What's the shipping status?"

プレビューセッションを走らせ、トレースを解析し、トピックのルーティング精度とアクションの成功率を報告します。対応しているのは次の4種類です。

モード内容
プレビュー内容発話を送ってトレースを見る
バッチテスト内容Testing Centerを使う
アクション実行内容アクションを単体で動かす
セキュリティスイート内容OWASP LLM Top 10に沿った試験(Mode C)。結果はA〜Fの評価

セキュリティのモードは、エージェント自身のスクリプトと業務ドメインからテストケースを作る方式です。テスト実行のたびに、攻撃的な発話(安全プローブ)も自動で生成されます。

/agentforce-observeで本番の挙動から直す

本番運用後は/agentforce-observeです。Data CloudからSTDMのセッショントレースを取り出し、パターンを見つけ、ライブのプレビューで再現し、.agentファイルを直接修正します。

/agentforce-observe
 
Analyze the last 50 sessions for OrderService on my-org.
Find routing failures and suggest improvements.

見つける対象として挙げられているのは、誤ったトピックへの振り分け、足りないアクション、根拠のない応答です。安全面では、プロンプトの漏えいやインジェクションへの追従も、トレースから検出する対象に入っています。

安全レビューは何を見るか

このプラグインは、安全レビューを段階ごとに差し込みます。

段階差し込み位置
作成差し込み位置オーサリング前の安全ゲート。後段の採点(100点中15点が安全分)
デプロイ差し込み位置公開前の安全ゲート
テスト差し込み位置敵対的な発話を毎回自動生成
最適化差し込み位置トレースから危険な挙動を検出
.agentの書き込み差し込み位置PostToolUseフックが安全レビューを促す

審査の観点は、なりすまし、利用者の安全、個人情報の扱い、有害コンテンツ、公平性、欺瞞と操作、範囲と境界を含む7分類です。

提供元がLLMによる判断を選んだ理由は、正規表現では意図を拾えないからです。例として、診断や処方をするエージェントの記述、生年月日と社会保障番号の下4桁を聞き出す記述、郵便番号で顧客を絞る記述(間接的な差別)、「24時間以内に停止」と偽って急がせる記述などが挙がっています。いずれもキーワードを避けて書けるため、意図を読む審査が必要という説明です。

Claude Code側では、.agentへの書き込みのたびにフックが安全レビューを促します。

つまずきやすい点

落とし穴

旧スキル名のスラッシュコマンドは動かない

/developing-agentforceや/adlc-deployのような旧名は、自然文のリクエストを正しいスキルに振り分けるための別名として残っているだけです。スラッシュコマンドとしては登録されておらず、/agentforce-secureのような退役したコマンドを直接打っても解決されません。セキュリティ検査は/agentforce-testのMode Cで行います。

  • スキルが見えないとき: インストール後にスキルが発見されない場合は、コーディングエージェントを再起動します
  • プラグイン内のスキル名: 名前空間付き(/agentforce-adlc:...)で呼ぶ必要があります
  • Salesforce側の準備: sfコマンドが使えること、OrgでAgentforceが有効なことの2つが前提条件に挙がっています

周辺のプラグインと使い分ける

クラウドへのデプロイまでをスキルで通す点では、Deploy on AWSプラグインやAzureプラグインと同じ型です。ADLCプラグインの対象はAgentforceのエージェントに限られ、.agentファイルとSalesforce Orgが中心になります。

Salesforceのデータそのものを会話で扱いたいだけなら、Hosted MCPで接続するClaudeとSalesforceの連携の方が手前の選択肢です。プラグインを自分の環境用に配布する側の話は、プラグインのキャッシュとファイル解決にあります。

構成ファイルと更新・削除

リポジトリの構成を知っておくと、何が自分の環境に入るのかが分かります。

  • .claude-plugin/: plugin.jsonと、自己ホストのマーケットプレイス定義
  • agents/: オーケストレーター、オーサリング、エンジニア、QAの4つのエージェント定義
  • skills/: 3つのスキル本体
  • hooks/hooks.json: PreToolUse / PostToolUseのフック設定
  • settings.json: プラグインの既定設定(既定エージェント)

更新と削除は、プラグイン方式なら次のコマンドです。

claude plugin update agentforce-adlc@agentforce-adlc
claude plugin uninstall agentforce-adlc@agentforce-adlc

まとめ

ADLCプラグインは、Agentforceエージェントを「書く、置く、試す、直す」の4動詞に分け、3つのスキルへ割り当てた構成です。最初の1本を作るときは、要件に守る条件とデプロイ先のOrgを書き込み、デプロイ後すぐに同じ発話で/agentforce-testを回すと、振り分けの誤りを早い段階で拾えます。本番に出したあとは/agentforce-observeで、トレースから直す流れに移ります。

この記事を共有:XはてブLinkedIn