Add system-level dynamic variables support in session management. Implement methods to generate and apply built-in variables for current session time, UTC time, and timezone. Update documentation to reflect new variables and enhance tests for dynamic variable handling in the UI components.

This commit is contained in:
Xin Wang
2026-02-27 12:08:18 +08:00
parent 71cbfa2b48
commit 6178cc05bb
5 changed files with 242 additions and 21 deletions

View File

@@ -152,6 +152,10 @@
- key 正则:`^[a-zA-Z_][a-zA-Z0-9_]{0,63}$`
- 最多 30 个变量,单个 value 最长 1000 字符。
- `systemPrompt` / `greeting` 中支持占位符语法:`{{variable_name}}`
- 内置系统变量(始终可用):`{{system__time}}``{{system_utc}}``{{system_timezone}}`
- `system__time`:会话开始时的本地时间(`YYYY-MM-DD HH:mm:ss`
- `system_utc`:会话开始时的 UTC 时间(`YYYY-MM-DD HH:mm:ss`
- `system_timezone`:会话开始时的本地时区
- 若模板引用了缺失变量,`session.start` 会被拒绝,错误码 `protocol.dynamic_variables_missing`
-`dynamicVariables` 结构/内容非法,`session.start` 会被拒绝,错误码 `protocol.dynamic_variables_invalid`