Update Context
Update Context はワークフロー内の変数を更新するプロセッサーです。
基本的な使い方
Update Context は設定に従って変数を追加または変更し、その変数は後続のプロセッサーで利用できます。プログラミング言語の変数への代入とよく似た働きをします。
設定項目
ノードのプロパティパネルです。

Name
キャンバス上に表示される名前です。ワークフロー内でこのプロセッサーを識別するために使います。
Description
このプロセッサーの用途を補足し、ワークフローの読みやすさを高めます。
Properties
(+) をクリックして項目を追加します。
各項目は 2 つの部分からなります。
- 変数名: 最初の入力欄で context 変数の名前を設定します
- 値の与え方: 値をどう割り当てるかを選びます
選べる値の種類:
- Literal: 固定値を直接入力します
- Expression: JavaScript の式で値を計算します
- Template: テンプレート構文で値を計算します
Workflow CRD を直接書くと対応関係はより素直です。config の name がそのまま変数名で、余分な入れ子はありません。
- name: proc-init
type: update-context
labels:
display_name: 初期化
configs:
- name: helpCenterUrl
expression: |-
(() => {
return "https://help.buy123.com.tw/zh-TW/";
})()
- name: storefrontUrl
expression: |-
(() => {
return "https://www.buy123.com.tw/";
})()
後続のプロセッサーは prompt template の中でこれらのキーを裸の名前で読みます(たとえば {{helpCenterUrl}})。外部 URL、コードの対応表、環境依存の定数といった固定値をワークフローの冒頭にまとめるのはよくある形で、値が一箇所にしか現れないため、変更のたびに各 prompt を見て回らずに済みます。
configs は空の配列でも構いません。Flow Agent の既定ワークフローの先頭にある Init というノードがまさに configs: [] で、変数を設定せず、ワークフローの起点として存在しています。
接続関係
Success
指定されたすべての context 項目の更新が完了すると、この接続点から次のプロセッサーへ進みます。動的に設定した各項目の名前が、そのまま新しい変数名になります。
使用例
1. 単純な変数の代入
変数の宣言も更新も操作は同じです。以下は historyStart に代入する例です。
1-1. Literal
計算が要らない単一の変数なら、これが一番簡単です。入力欄に値をそのまま書きます。
1-2. Expression
計算が必要な場合は Expression モードにします。固定値を返すだけなら次のようになります。
(() => {
return 0;
})()
2. オブジェクト型の変数の代入
オブジェクトは構造を持つため Literal では代入できず、Expression モードが必要です。
2-1. オブジェクトの初期化
オブジェクトはまず初期化が必要です。存在しない変数を操作するとエラーになります。
(() => {
return {
name: "Test",
status: "idle",
sessionStart: null,
};
})()
2-2. オブジェクトの更新
當物件已經初始化後,可以只更新特定的屬性值,其他屬性不會被覆蓋。以下示範更新 context 物件的 status 和 sessionStart 值:
(() => {
// 更新 status 值
context.status = "pending";
// 更新為目前的時間戳記
const currentTime = Date.now();
context.sessionStart = currentTime;
// 回傳更新後的 context 物件
return context;
})()
title: Update Context Last Updated: 2026-09-09 description: '設定或更新流程裡的變數,是最常用來初始化的節點。' slug: /developer-reference/processor/update-context
Update Context 是用於更新工作流程中變數內容的 processor。
注意事項
- 同名の変数がすでにある場合、新しい値で上書きされます。
- ここで設定した変数は、上書きされるまでフローの以降すべてで読めます。
- オブジェクト型はフィールドを更新する前に初期化が必要です。存在しないオブジェクトのフィールドに書き込むとエラーになります。