Skip to main content

ユーザープロンプト変換用フック

userPromptTransformedフックは、ランタイムが送信されたプロンプトに生成されたコンテキストを追加した後、結果のコンテンツがセッション履歴に保持されるか、モデルに送信される前に実行されます。

この記事で

モデルに対する正確なプロンプトを検査または置き換える必要がある場合に使用します。 prompt入力には、userPromptSubmittedフックが実行された後のユーザー プロンプトが含まれますが、transformedPromptには、<current_datetime>などのランタイムで生成されたコンテキストも含まれます。

入力と出力

入力フィールドタイプDescription
sessionId文字列ランタイム セッション ID
timestamp日付/時刻フックが呼び出された時刻
cwd / workingDirectory文字列現在の作業ディレクトリ
prompt文字列
userPromptSubmittedフック後のプロンプト
transformedPrompt文字列ランタイム変換後のモデル向けプロンプト

変換されたプロンプトを変更せずに残す値を返しません。 セッション履歴に格納され、モデルに送信されるコンテンツを置き換える modifiedTransformedPrompt を返します。

Examples

コード言語 navigation

TypeScript
const session = await client.createSession({
  hooks: {
    onUserPromptTransformed: async (input) => ({
      modifiedTransformedPrompt: redact(input.transformedPrompt),
    }),
  },
});

置換はユーザー メッセージの内容として保持されるため、再開されたセッションでは変更されたコンテンツが変更されずに再生されます。