Agent Skills by ALSEL
Anthropic Claudeデータ・分析⭐ リポ 0品質スコア 50/100

sf-industry-commoncore-omniscript

OmniStudio OmniScriptの作成・検証を120点満点のスコアリングで支援するスキルです。Integration ProcedureやData Mapperを組み合わせたガイド付きデジタル体験、複数ステップのフォーム、インタラクティブなプロセスを構築する際に使用してください。OmniScriptの新規作成・ステップフローの設計・要素タイプの設定・既存設定のレビュー時にトリガーされますが、FlexCardの構築(sf-industry-commoncore-flexcard)、Integration Procedureの直接作成(sf-industry-commoncore-integration-procedure)、依存関係の分析(sf-industry-commoncore-omnistudio-analyze)には対応する専用スキルを使用してください。

description の原文を見る

> OmniStudio OmniScript creation and validation with 120-point scoring. Use when building guided digital experiences, multi-step forms, or interactive processes that orchestrate Integration Procedures and Data Mappers. TRIGGER when: user creates OmniScripts, designs step flows, configures element types, or reviews existing OmniScript configurations. DO NOT TRIGGER when: building FlexCards (use sf-industry-commoncore-flexcard), creating Integration Procedures directly (use sf-industry-commoncore-integration-procedure), or analyzing dependencies (use sf-industry-commoncore-omnistudio-analyze).

SKILL.md 本文

sf-industry-commoncore-omniscript: OmniStudio OmniScript の作成と検証

宣言的なステップベースのガイド付きデジタル体験を実現する OmniStudio OmniScript ビルダーのエキスパート。OmniScript は OmniStudio の Screen Flow に相当するもので、マルチステップでインタラクティブなプロセスです。入力を収集し、サーバーサイドロジック (Integration Procedures、DataRaptors) を調整し、結果をユーザーに提示します。すべてコード不要です。

クイックリファレンス

採点: 6つのカテゴリで120ポイント。閾値: ✅ 90+ (デプロイ) | ⚠️ 67-89 (レビュー) | ❌ <67 (ブロック - 修正必須)


主な責務

  1. OmniScript 生成: 要件から適切な構成の OmniScript を作成し、各ステップに適切な要素タイプを選択する
  2. 要素設計: 各要素の PropertySetConfig JSON を設定し、データバインディング、検証、条件付きロジックを正しく構成する
  3. 依存関係分析: デプロイ前に Integration Procedures、DataRaptors、組み込み OmniScript への全ての参照をマップする
  4. データフロー分析: OmniScript JSON 構造を通じてデータを追跡する (プリフィルから user input、最終的な save actions まで)

重要: オーケストレーション順序

sf-industry-commoncore-omnistudio-analyze → sf-industry-commoncore-datamapper → sf-industry-commoncore-integration-procedure → sf-industry-commoncore-omniscript → sf-industry-commoncore-flexcard (あなたはここです: sf-industry-commoncore-omniscript)

OmniScript は Integration Procedures と DataRaptors を使用します。まず FIRST にそれらを構築してください。FlexCard は OmniScript を起動する可能性があります。FlexCard は AFTER に構築してください。全ての依存関係ツリーをマップするには sf-industry-commoncore-omnistudio-analyze を使用します。


主要なインサイト

インサイト詳細
Type/SubType/Language tripletOmniScript を一意に識別します。3つの値すべてが必須で、複合キーを形成します。例: Type=ServiceRequest, SubType=NewCase, Language=English
PropertySetConfigすべての要素構成を含む JSON blob (レイアウト、データバインディング、検証ルール、条件付き表示)。実際のロジックはここにあります
Core namespaceIsIntegrationProcedure = false の OmniProcess (同等: OmniProcessType='OmniScript')。要素は子 OmniProcessElement レコードです
要素階層要素は Level/Order フィールドを使用してツリー構造を形成します。Level 0 = ステップ、Level 1+ = ステップ内の要素。Order は同じレベル内での順序を決定します
バージョン管理複数のバージョンが存在できますが、Type/SubType/Language triplet ごとに 1 つのみアクティブにできます。IsActive フィールドでアクティベートします
Data JSONOmniScript は 1 つの JSON データ構造をすべてのステップを通じて渡します。要素はマージフィールド構文を使用してこの共有 JSON から読み取り、書き込みします

ワークフロー設計 (5フェーズパターン)

フェーズ 1: 要件収集

構築する前に代替案を評価してください: OmniScript は複雑なマルチステップのガイド付きプロセスに最適です。単純なシングルスクリーンのデータエントリの場合は Screen Flow を検討してください。相互作用のないデータ表示の場合は FlexCard を検討してください。

ユーザーに以下を問い合わせて 情報を収集します:

  • Type: プロセスカテゴリ (例: ServiceRequest, Enrollment, ClaimSubmission)
  • SubType: 特定のバリエーション (例: NewCase, UpdateAddress, FileAppeal)
  • Language: 通常は English (多言語対応が必要でない限り)
  • Purpose: この OmniScript がユーザーをガイドするビジネスプロセス
  • Target org: デプロイ用の Org alias
  • Data sources: クエリまたは更新が必要なオブジェクト/API

その後: 既存の OmniScript をチェックして重複を回避し、再利用可能な Integration Procedures または DataRaptors を特定し、依存関係チェーンをマップします。

フェーズ 2: 設計と要素選択

各ステップを設計し、相互作用パターンに適した要素タイプを選択します。

コンテナ要素

要素タイプ目的キー設定
StepUI 要素グループの最上位コンテナ。各ステップはウィザード内の 1 ページですchartLabel, knowledgeOptions, show (条件付き表示)
Conditional Block条件に基づいて要素グループを表示/非表示conditionType, show expression
Loop Blockデータリストを反復処理し、各アイテムの要素をレンダリングloopData (配列への JSON パス)
Edit Block表形式データのインラインエディティングコンテナeditFields, dataSource

入力要素

要素タイプ目的キー設定
Text単一行テキスト入力label, placeholder, pattern (正規表現検証)
Text Area複数行テキスト入力label, maxLength, rows
Numberオプションのフォーマット付き数値入力label, min, max, step, format
Date日付ピッカーlabel, dateFormat, minDate, maxDate
Date/Time日付と時刻のピッカーlabel, dateFormat, timeFormat
Checkboxブール値トグルlabel, defaultValue
Radio単一選択用のラジオボタングループlabel, options (静的またはデータドリブン)
Selectドロップダウン選択label, options, optionSource (静的/データ)
Multi-select複数アイテム選択label, options, maxSelections
Type Ahead検索/オートコンプリート入力label, dataSource, searchField, minCharacters
Signature署名キャプチャパッドlabel, penColor, backgroundColor
Fileファイルアップロードlabel, maxFileSize, allowedExtensions
Currencyロケールフォーマット付き通貨入力label, currencyCode, min, max
Emailフォーマット検証付きメール入力label, placeholder
Telephoneマスキング付き電話番号入力label, mask, placeholder
URLフォーマット検証付き URL 入力label, placeholder
Passwordマスクされたテキスト入力label, minLength
Rangeスライダー入力label, min, max, step
Time時刻ピッカーlabel, timeFormat

表示要素

要素タイプ目的キー設定
Text Block静的なコンテンツ表示 (HTML サポート)textContent, HTMLTemplateId
Headlineセクション見出しtext, level (h1-h6)
Aggregate計算された集計表示aggregateExpression, format
Disclosure展開/折りたたみ可能なコンテンツlabel, defaultExpanded
Image画像表示imageURL, altText
Chartデータ可視化chartType, dataSource

アクション要素

要素タイプ目的キー設定
DataRaptor Extract ActionSalesforce からデータを取得bundle, inputMap, outputMap
DataRaptor Load ActionSalesforce にデータをプッシュbundle, inputMap
Integration Procedure Actionサーバーサイド Integration Procedure を呼び出しipMethod (Type_SubType), inputMap, outputMap, remoteOptions
Remote ActionApex @RemoteAction または REST を呼び出しremoteClass, remoteMethod, inputMap
Navigate ActionページナビゲーションまたはリダイレクトtargetType, targetId, URL
DocuSign Envelope ActionDocuSign エンベロープをトリガーtemplateId, recipientMap
Email Actionメール送信emailTemplateId, recipientMap

ロジック要素

要素タイプ目的キー設定
Set Values変数割り当てとデータ変換elementValueMap (キー値ペア)
Validationカスタムメッセージ付き入力検証ルールvalidationFormula, errorMessage
Formulaフォーミュラ式を使用した値計算expression, dataType
Submit Action収集したデータの最終送信postMessage, preTransformBundle, postTransformBundle

フェーズ 3: 生成と検証

# 重複する Type/SubType/Language が存在しないことを確認
sf data query -q "SELECT Id,Name,Type,SubType,Language,IsActive,VersionNumber FROM OmniProcess WHERE Type='<Type>' AND SubType='<SubType>' AND Language='<Language>' AND OmniProcessType='OmniScript'" -o <org>

OmniScript を構築:

  1. Type、SubType、Language、および OmniProcessType='OmniScript' で OmniProcess レコードを作成
  2. 各ステップ用の OmniProcessElement 子レコードを作成 (Level=0)
  3. ステップ内の各要素用の OmniProcessElement 子レコードを作成 (Level=1+、Order フィールドで順序付け)
  4. 各要素の PropertySetConfig JSON を設定
  5. アクション要素を Integration Procedures / DataRaptors にワイア

検証 (STRICT MODE):

  • BLOCK: Type/SubType/Language が欠落、循環 OmniScript 埋め込み、破損した IP/DataRaptor 参照、PropertySetConfig の必須フィールドが欠落
  • WARN: 要素のないステップ、検証のない入力要素、アクションの欠落したエラーハンドリング、未使用のデータパス、深くネストされた要素 (>4 レベル)

検証レポートフォーマット (6カテゴリ採点 0-120):

Score: 102/120 ---- Very Good
-- Design & Structure: 22/25 (88%)
-- Data Integration: 18/20 (90%)
-- Error Handling: 17/20 (85%)
-- Performance: 18/20 (90%)
-- User Experience: 17/20 (85%)
-- Security: 10/15 (67%)

フェーズ 4: デプロイ

  1. まず全ての依存関係をデプロイ: DataRaptors、Integration Procedures、参照される OmniScript
  2. OmniScript メタデータを取得またはデプロイ:
    sf project retrieve start -m OmniScript:<Name> -o <org>
    sf project deploy start -m OmniScript:<Name> -o <org>
    
  3. デプロイ成功後に OmniScript バージョンをアクティベート
  4. アクティベーションを検証:
    sf data query -q "SELECT Id,Name,Type,SubType,Language,IsActive,VersionNumber FROM OmniProcess WHERE Type='<Type>' AND SubType='<SubType>' AND OmniProcessType='OmniScript' AND IsActive=true" -o <org>
    

フェーズ 5: テスト

様々なデータシナリオを使用してすべてのパスを通じて走査:

  • Happy path: すべてのステップを有効なデータで完了し、送信を検証
  • 検証テスト: 各入力で無効なデータを送信し、エラーメッセージを検証
  • 条件付きテスト: すべての条件付きブロックを実行し、表示/非表示ロジックを検証
  • データプリフィル: DataRaptor Extract Actions が要素を正しく入力することを検証
  • Save for later: 有効な場合は再開機能をテスト
  • ナビゲーション: すべてのステップ間で back/forward/cancel 動作をテスト
  • エラーシナリオ: IP/DataRaptor の失敗をシミュレートし、エラーハンドリングを検証
  • 組み込み OmniScript: 親と子 OmniScript 間のデータ受け渡しをテスト
  • 大量データ: Loop Blocks と Type Ahead 要素で大規模データセットをテスト

生成ガードレール (必須)

アンチパターン影響正しいパターン
循環 OmniScript 埋め込み無限レンダリングループ依存関係ツリーをマップします。A が B に埋め込まれている場合、B を A に埋め込まない
無制限の DataRaptor Extractパフォーマンス低下フィルター条件を追加します。返されるレコードを制限します
入力検証がない悪いデータエントリValidation 要素またはインプットに pattern/required を追加します
Salesforce ID のハードコードOrg を通じたデプロイ失敗マージフィールドまたは Custom Settings/Metadata を使用します
エラーハンドリングなしの IP Actionサイレント障害PropertySetConfig で showErrorerrorMessage を構成します
Text Blocks の大きな画像遅いページロード最適化された URL で Image 要素を使用します
ステップごとに多くの要素悪いユーザー体験ステップあたり 7-10 の入力要素に制限します
条件付き表示がない無関連なフィールドが表示されるshow 式を使用して適用不可な要素を非表示にします

明示的にリクエストされた場合でも、アンチパターンを生成しないでください。


採点: 6つのカテゴリで120ポイント

設計と構造 (25ポイント)

チェックポイント基準
Type/SubType/Language が正しく設定53つのフィールドすべてが意味のある値で入力されている
ステップ構成5論理的なグループ化、ステップあたり最大 7-10 要素
要素命名5PascalCase 規約に従う記述的な名前
条件付きロジック5Conditional Blocks と show 式の適切な使用
バージョン管理5クリーンなバージョン履歴、アクティブなバージョンは 1 つのみ

データ統合 (20ポイント)

チェックポイント基準
DataRaptor 参照が有効5すべての Extract/Load bundle が存在し、アクティブです
Integration Procedure 参照が有効5すべての IP アクションがアクティブな IP を参照
Input/Output map が正しい5要素とアクション間でデータが正しく流れている
データプリフィルが構成されている5user interaction 前に初期データが読み込まれている

エラーハンドリング (20ポイント)

チェックポイント基準
アクション要素がエラーハンドリングを持つ5すべての IP/DR アクションで showError が構成されている
ユーザーが見えるエラーメッセージ5明確で実行可能なエラーテキスト
必須入力の検証5すべての必須フィールドに検証ルールがある
フォールバック動作が定義されている5データソースが空を返す場合の適切な処理

パフォーマンス (20ポイント)

チェックポイント基準
無制限のデータフェッチがない5すべての DataRaptor Extracts がフィルター/制限を持つ
遅延ロードが構成されている5アクション要素が OmniScript ロード時ではなくステップエントリで発火
ステップごとの要素数が合理的5>15 要素のステップなし
条件付きレンダリングが使用されている5非表示ではなく、適用不可の要素が隠されている

ユーザー体験 (20ポイント)

チェックポイント基準
論理的なステップフロー5ステップが自然なタスク進行に従う
入力ラベルとヘルプテキスト5すべての入力に明確なラベルと文脈に応じたヘルプがある
ナビゲーション制御5Back、Next、Cancel、Save for Later が適切に構成されている
レスポンシブレイアウト5要素がモバイルとデスクトップブレークポイント用に構成されている

セキュリティ (15ポイント)

チェックポイント基準
クライアント側 JSON に機密データがない5パスワード、SSN、トークンはサーバーサイドに保持
IP アクションがサーバーサイド処理を使用5機密ロジックが OmniScript クライアント ではなく Integration Procedures にある
フィールドレベルアクセスが尊重されている5データアクセスがユーザープロファイル/permission set と一致している

CLI コマンド

# アクティブな OmniScript をリスト表示
sf data query -q "SELECT Id,Name,Type,SubType,Language,IsActive,VersionNumber FROM OmniProcess WHERE IsActive=true AND OmniProcessType='OmniScript'" -o <org>

# 特定の OmniScript の要素をクエリ
sf data query -q "SELECT Id,Name,ElementType,PropertySetConfig,Level,Order FROM OmniProcessElement WHERE OmniProcessId='<id>' ORDER BY Level,Order" -o <org>

# OmniScript メタデータを取得
sf project retrieve start -m OmniScript:<Name> -o <org>

# OmniScript メタデータをデプロイ
sf project deploy start -m OmniScript:<Name> -o <org>

# OmniScript バージョンをチェック
sf data query -q "SELECT Id,VersionNumber,IsActive,LastModifiedDate FROM OmniProcess WHERE Type='<Type>' AND SubType='<SubType>' AND OmniProcessType='OmniScript' ORDER BY VersionNumber DESC" -o <org>

クロススキル統合

スキルからsf-industry-commoncore-omniscript へタイミング
sf-industry-commoncore-omnistudio-analyze-> sf-industry-commoncore-omniscript"OmniScript を構築する前に依存関係を分析"
sf-industry-commoncore-datamapper-> sf-industry-commoncore-omniscript"DataRaptor の準備ができたら、これを使用する OmniScript を構築"
sf-industry-commoncore-integration-procedure-> sf-industry-commoncore-omniscript"IP の準備ができたら、OmniScript アクションにワイア"
sf-industry-commoncore-omniscript からスキルへタイミング
sf-industry-commoncore-omniscript-> sf-industry-commoncore-flexcard"この OmniScript を起動する FlexCard を構築"
sf-industry-commoncore-omniscript-> sf-deploy"OmniScript をターゲット org にデプロイ"
sf-industry-commoncore-omniscript-> sf-industry-commoncore-omnistudio-analyze"デプロイ前に全ての依存関係ツリーをマップ"
sf-industry-commoncore-omniscript-> sf-industry-commoncore-integration-procedure"この OmniScript アクション用に新しい IP が必要"
sf-industry-commoncore-omniscript-> sf-industry-commoncore-datamapper"データプリフィル用に DataRaptor が必要"

エッジケース

シナリオソリューション
多言語 OmniScript同じ Type/SubType を持つ Language ごとに個別のバージョンを作成。ラベル用に translation workbench を使用
組み込み OmniScript データ受け渡し親データ JSON キーを prefillJSON を介して子 OmniScript input にマップ。データラウンドトリップをテスト
大規模 Loop Block データセットDataRaptor 結果をページネートまたは制限。IP でのサーバーサイドフィルタリングを検討
FlexCard flyout の OmniScriptFlexCard が必要なコンテキストデータを渡すことを確認。flyout サイジングをテスト
Community/Experience Cloud デプロイメントOmniScript コンポーネントが Experience Builder で利用可能であることを確認。guest user permission をチェック
Save & Resume (Save for Later)saveNameTemplatesaveExpireInDays を構成。部分データで再開をテスト
バージョン管理競合新しいバージョンをアクティベートする前に古いバージョンを非アクティベート。同じ triplet に対して 2 つのアクティブなバージョンを持たない
OmniScript のカスタム Lightning Web ComponentsLWC を OmniScript 互換として登録。omniscript-lwc namespace 規約に従う

デバッグ: OmniScript がレンダリングされない -> アクティベーションステータス + 要素階層をチェック | データがプリフィルされていない -> DataRaptor Extract 出力マッピング + JSON パスを検証 | IP アクションが失敗 -> まず IP を独立して確認 + input map を検証 | ステップが表示されない -> 条件付き表示式をレビュー


注記

依存関係 (必須): sf-industry-commoncore-datamapper, sf-industry-commoncore-integration-procedure | 依存関係 (オプション): sf-deploy, sf-industry-commoncore-flexcard, sf-industry-commoncore-omnistudio-analyze | API: 66.0 | モード: Strict (警告がブロック) | 採点: スコア < 67 でデプロイをブロック | 参考ドキュメント: 要素タイプと best practices については references/ を参照してください

OmniScript をプログラムで作成: REST API を使用 (sf api request rest --method POST --body @file.json)。必須フィールド: Name, Type, SubType, Language, VersionNumber。OmniScript はデフォルトで IsIntegrationProcedure=false です (OmniProcessType を設定しないでください。これは計算されます)。sf data create record --values フラグは PropertySetConfig のような JSON textarea フィールドを処理できません。各ステップと要素用に REST API で子 OmniProcessElement レコードを作成します。


ライセンス

MIT License. Copyright (c) 2026 David Ryan (weytani)

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
jaganpro
リポジトリ
jaganpro/sf-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/jaganpro/sf-skills / ライセンス: MIT

関連スキル

OpenAIデータ・分析⭐ リポ 1,451

hugging-face-trackio

Trackioを使用してMLトレーニング実験を追跡・可視化できます。トレーニング中のメトリクスログ記録(Python API)、トレーニング診断のアラート発火、ログされたメトリクスの取得・分析(CLI)が必要な場合に活用してください。リアルタイムダッシュボード表示、Webhookを使用したアラート、HF Space同期、自動化向けのJSON出力に対応しています。

by gradio-app
汎用データ・分析⭐ リポ 855

btc-bottom-model

ビットコインのサイクルタイミングモデルで、加重スコアリングシステムを搭載しています。日次パルス(4指標、32ポイント)とウィークリー構造(9指標、68ポイント)の2カテゴリーにわたる13の指標を追跡し、0~100のマーケットヒートスコアを算出します。ETFフロー、ファンディングレート、ロング/ショート比率、恐怖・貪欲指数、LTH-MVRV、NUPL、SOPR(LTH+STH)、LTH供給率、移動平均倍率(365日MA、200週MA)、週次RSI、出来高トレンドに対応します。市場サイクル全体を通じて買いと売りの両方の推奨を提供します。ビットコインの底値拾い、BTCサイクルポジション、買い時・売り時、オンチェーン指標、MVRV、NUPL、SOPR、LTH動向、ETFの流出入、ファンディングレート、恐怖指数、ビットコインが過熱状態か、マイナーコスト、暗号資産市場のセンチメント、BTCのポジションサイジング、「今ビットコインを買うべきか」「BTCが天井をつけているか」「オンチェーン指標は何を示しているか」といった質問の際にこのスキルを活用します。

by star23
Anthropic Claudeデータ・分析⭐ リポ 380

protein_solubility_optimization

タンパク質の溶解性最適化 - タンパク質の溶解性を最適化します。タンパク質の特性を計算し、溶解性と親水性を予測し、有効な変異を提案します。タンパク質配列の特性計算、タンパク質機能の予測、親水性計算、ゼロショット配列予測を含むタンパク質エンジニアリング業務に使用できます。3つのSCPサーバーから4つのツールを統合しています。

by SpectrAI-Initiative
Anthropic Claudeデータ・分析⭐ リポ 1,743

research-lookup

Parallel Chat APIまたはPerplexity sonar-pro-searchを使用して、最新の研究情報を検索できます。学術論文の検索にも対応しています。クエリは自動的に最適なバックエンドにルーティングされるため、論文の検索、研究データの収集、科学情報の検証に活用できます。

by K-Dense-AI
Anthropic Claudeデータ・分析⭐ リポ 299

tree-formatting

ggtree(R)またはiTOL(ウェブ)を使用して、系統樹の可視化とフォーマットを行います。系統樹を図として描画する際、ツリーレイアウトの選択、分類学に基づく枝やラベルの色付け、クレードの折りたたみ、サポート値の表示、またはツリーへのオーバーレイ追加が必要な場合に使用してください。系統推定(protein-phylogenyスキルを使用)やドメイン注釈(今後の独立したスキル)には使用しないでください。

by majiayu000
汎用データ・分析⭐ リポ 145

querying-indonesian-gov-data

インドネシア政府の50以上のAPIとデータソースに接続できます。BPJPH(ハラール認証)、BOM(食品安全)、OJK(金融適正性)、BPS(統計)、BMKG(気象・地震)、インドネシア中央銀行(為替レート)、IDX(株式)、CKAN公開データポータル、pasal.id(第三者法MCP)に対応しています。インドネシア政府データを活用したアプリ開発、.go.idウェブサイトのスクレイピング、ハラール認証の確認、企業の法的適正性の検証、金融機関ステータスの照会、またはインドネシアMCPサーバーへの接続時に使用できます。CSRF処理、CKAN API使用方法、IP制限回避など、すぐに実行可能なPythonパターンを含んでいます。

by suryast
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: jaganpro · jaganpro/sf-skills · ライセンス: MIT