メインコンテンツまでスキップ

REFERENCE

開発者リファレンス

認証、API、SDK、Flow Agent のプロセッサ、パラメータ解決のリファレンスです。

Asgard の組み込みヘルパー

Asgard は Handlebars のテンプレート機構向けに 8 つのヘルパーを提供しています。

📖 Handlebars の基礎
構文そのものについては、まず Handlebars 公式ガイドを読むとよいでしょう。

  1. 対話履歴​

    history​

    指定した索引の範囲で、チャネルの対話履歴を返します。

    {{{history 0 2}}}
    <!-- 索引 0、1、2 の 3 件を返します -->
    {{{history -3 -1}}}
    <!-- 末尾から 3 件を返します -->
    {{{history 0 -1}}}
    <!-- すべてを返します -->

    引数:

    • start: 開始位置。0 から始まり、負の値は末尾からの数え方です
    • end: 終了位置。その位置を含みます。負の値は末尾からの数え方です

    historySize​

    チャネルの対話履歴の件数を返します。

    {{{historySize}}} <!-- 出力: 5 -->
  2. データ処理​

    toJson​

    任意の値を JSON の文字列に変換します。

    {{{toJson user}}} <!-- user オブジェクトを JSON 文字列にします -->

    urlEncode​

    文字列を URL エンコードします。

    {{{urlEncode 'hello world'}}}
    <!-- 出力: hello%20world -->
    {{{urlEncode searchQuery}}}
    <!-- 変数を URL エンコードします -->

    xpathExtract​

    XPath で XML 文書から値を取り出します。

    {{{xpathExtract xmlData '/root/item'}}}

    引数:

    • xml: XML 文書
    • path: XPath のクエリ

    例:

    <!-- 入力の XML: <root><item>1</item><item>2</item></root> -->
    <!-- 出力: 1\n2 -->

    vecToStr​

    ベクトルの配列を文字列に変換します。

    {{{vecToStr vector '{' '}' ','}}} <!-- [1,2,3] → {1,2,3} -->

    引数:

    • vector: ベクトルの配列
    • prefix: 先頭の文字
    • suffix: 末尾の文字
    • delimiter: 区切り文字
  3. 日付と時刻​

    isoNow​

    指定したタイムゾーンの現在の日時を RFC3339 形式の文字列で返します。

    {{{isoNow 'Asia/Taipei'}}} <!-- 2025-05-27T01:08:44+08:00 -->

    isoToday​

    指定したタイムゾーンの現在の日付を RFC3339 形式の文字列で返します。

    {{{isoToday 'Asia/Taipei'}}} <!-- 2025-05-27 -->
  4. 実用例​

    システム状態のレポート​

    🤖 システム状態 -
    {{{isoNow 'Asia/Taipei'}}}

    📊 対話の件数: {{{historySize}}}
    件 📝 直近の対話:
    {{{history -3 -1}}}

    🔧 システム設定:
    {{{toJson systemConfig}}}

    API 照会の処理​

    🔍 照会: {{{urlEncode searchTerm}}}
    📄 XML の結果: {{{xpathExtract responseXml '//result/item'}}}
    🔢 ベクトル: {{{vecToStr embeddings '[' ']' ','}}}
    ⏰ 処理時刻: {{{isoNow 'Asia/Taipei'}}}
  5. 実践のポイント​

    1. 対話履歴: 文脈を踏まえた応答には history と historySize を使います
    2. 安全性: URL に入る値は必ず urlEncode を通します
    3. タイムゾーン: タイムゾーンは明示的に指定します
    4. JSON: 妥当な JSON を出力するために toJson を使います
    5. XML: XPath の構文が正しいことを確認します
    6. ベクトル: 受け取り側に合わせた区切り文字を選びます

    これらのヘルパーにより、Handlebars テンプレートの中で対話履歴、データ変換、整形を扱えます。

始める準備はできましたか?

Asgard をチームでどう活用できるか、お気軽にご相談ください。

お問い合わせ