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

@@ -83,6 +83,10 @@ Rules:
- Max entries: 30
- Max value length: 1000 chars
- Placeholder format in `systemPrompt` and `greeting`: `{{variable_name}}`.
- Built-in system variables (always available): `{{system__time}}`, `{{system_utc}}`, `{{system_timezone}}`.
- `system__time`: current local time (`YYYY-MM-DD HH:mm:ss`)
- `system_utc`: current UTC time (`YYYY-MM-DD HH:mm:ss`)
- `system_timezone`: current local timezone
- Missing referenced placeholders reject `session.start` with `protocol.dynamic_variables_missing`.
- Invalid `dynamicVariables` payload rejects `session.start` with `protocol.dynamic_variables_invalid`.