@ykurilov/agent-chat-flows 0.0.0-stage → 0.55.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/CHANGELOG.md +252 -0
  2. package/LICENSE +21 -0
  3. package/README.md +124 -2
  4. package/agent-flow.schema.json +1020 -0
  5. package/dist/chunk-3PTJI2XY.js +100 -0
  6. package/dist/chunk-3PTJI2XY.js.map +1 -0
  7. package/dist/chunk-BNMQUNSI.js +9 -0
  8. package/dist/chunk-BNMQUNSI.js.map +1 -0
  9. package/dist/chunk-BOV6FJGU.js +1288 -0
  10. package/dist/chunk-BOV6FJGU.js.map +1 -0
  11. package/dist/chunk-CKY5KG7N.js +165 -0
  12. package/dist/chunk-CKY5KG7N.js.map +1 -0
  13. package/dist/chunk-DCTRMCGV.js +34 -0
  14. package/dist/chunk-DCTRMCGV.js.map +1 -0
  15. package/dist/format.js +147 -0
  16. package/dist/format.js.map +1 -0
  17. package/dist/index.js +3197 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/postgres.js +387 -0
  20. package/dist/postgres.js.map +1 -0
  21. package/dist/react.js +2650 -0
  22. package/dist/react.js.map +1 -0
  23. package/dist/sqlite.js +319 -0
  24. package/dist/sqlite.js.map +1 -0
  25. package/dist/types/check/app-checks.d.ts +16 -0
  26. package/dist/types/check/check-flow.d.ts +8 -0
  27. package/dist/types/check/index.d.ts +2 -0
  28. package/dist/types/engine/data-conditions.d.ts +10 -0
  29. package/dist/types/engine/day-frame.d.ts +17 -0
  30. package/dist/types/engine/first-messages.d.ts +21 -0
  31. package/dist/types/engine/flow-days.d.ts +39 -0
  32. package/dist/types/engine/flow-graph.d.ts +26 -0
  33. package/dist/types/engine/flow-run.d.ts +130 -0
  34. package/dist/types/engine/index.d.ts +14 -0
  35. package/dist/types/engine/migrate-run.d.ts +11 -0
  36. package/dist/types/engine/next-transition.d.ts +40 -0
  37. package/dist/types/engine/nudges.d.ts +78 -0
  38. package/dist/types/engine/run-updates.d.ts +37 -0
  39. package/dist/types/engine/side-questions.d.ts +26 -0
  40. package/dist/types/engine/side-tasks.d.ts +44 -0
  41. package/dist/types/engine/targets.d.ts +9 -0
  42. package/dist/types/engine/timers.d.ts +61 -0
  43. package/dist/types/engine/zoned-time.d.ts +27 -0
  44. package/dist/types/format/catalog-events.d.ts +5 -0
  45. package/dist/types/format/compact-flow.d.ts +8 -0
  46. package/dist/types/format/flow-format.d.ts +286 -0
  47. package/dist/types/format/flow-json-schema.d.ts +2 -0
  48. package/dist/types/format/flow-schema.d.ts +605 -0
  49. package/dist/types/format/index.d.ts +7 -0
  50. package/dist/types/format/migrate-flow.d.ts +4 -0
  51. package/dist/types/format/parse-flow.d.ts +6 -0
  52. package/dist/types/format.d.ts +3 -0
  53. package/dist/types/index.d.ts +4 -0
  54. package/dist/types/labels/client-card.d.ts +20 -0
  55. package/dist/types/labels/editor.d.ts +261 -0
  56. package/dist/types/labels/index.d.ts +14 -0
  57. package/dist/types/labels/migrate.d.ts +19 -0
  58. package/dist/types/labels/test-chat.d.ts +28 -0
  59. package/dist/types/not-yet.d.ts +2 -0
  60. package/dist/types/postgres.d.ts +10 -0
  61. package/dist/types/prompt/client-card-block.d.ts +16 -0
  62. package/dist/types/prompt/flow-rules.d.ts +9 -0
  63. package/dist/types/prompt/rules/after-end.d.ts +3 -0
  64. package/dist/types/prompt/rules/client-facts.d.ts +2 -0
  65. package/dist/types/prompt/rules/day-frame.d.ts +2 -0
  66. package/dist/types/prompt/rules/link-views.d.ts +4 -0
  67. package/dist/types/prompt/rules/rule-part.d.ts +3 -0
  68. package/dist/types/prompt/rules/side-tasks.d.ts +2 -0
  69. package/dist/types/prompt/rules/time-zone.d.ts +2 -0
  70. package/dist/types/prompt/state-card.d.ts +14 -0
  71. package/dist/types/react/client-card/client-card-panel.d.ts +8 -0
  72. package/dist/types/react/client-card/index.d.ts +2 -0
  73. package/dist/types/react/client-card/use-client-card.d.ts +19 -0
  74. package/dist/types/react/client-card-skin.d.ts +27 -0
  75. package/dist/types/react/editor/board-space.d.ts +51 -0
  76. package/dist/types/react/editor/board-styles.d.ts +1 -0
  77. package/dist/types/react/editor/editor-model.d.ts +60 -0
  78. package/dist/types/react/editor/exit-text.d.ts +11 -0
  79. package/dist/types/react/editor/flow-board.d.ts +11 -0
  80. package/dist/types/react/editor/flow-editor.d.ts +13 -0
  81. package/dist/types/react/editor/flow-simulation.d.ts +44 -0
  82. package/dist/types/react/editor/index.d.ts +6 -0
  83. package/dist/types/react/editor/schedule-model.d.ts +47 -0
  84. package/dist/types/react/editor/side-task-model.d.ts +18 -0
  85. package/dist/types/react/editor/use-flow-editor.d.ts +120 -0
  86. package/dist/types/react/flow-editor-skin.d.ts +453 -0
  87. package/dist/types/react/flow-labels.d.ts +8 -0
  88. package/dist/types/react/index.d.ts +6 -0
  89. package/dist/types/react/test-chat/flow-test-chat.d.ts +22 -0
  90. package/dist/types/react/test-chat/index.d.ts +2 -0
  91. package/dist/types/react/test-chat/use-flow-test-chat.d.ts +50 -0
  92. package/dist/types/react.d.ts +3 -0
  93. package/dist/types/runtime/admit.d.ts +15 -0
  94. package/dist/types/runtime/agent-flow.d.ts +20 -0
  95. package/dist/types/runtime/client-card.d.ts +9 -0
  96. package/dist/types/runtime/client-facts.d.ts +22 -0
  97. package/dist/types/runtime/close-day-tool.d.ts +3 -0
  98. package/dist/types/runtime/decisions-client.d.ts +33 -0
  99. package/dist/types/runtime/extra-tool.d.ts +16 -0
  100. package/dist/types/runtime/first-message-retry.d.ts +4 -0
  101. package/dist/types/runtime/first-message-rules.d.ts +55 -0
  102. package/dist/types/runtime/first-reasons-notice.d.ts +9 -0
  103. package/dist/types/runtime/flow-delivery.d.ts +53 -0
  104. package/dist/types/runtime/flow-events.d.ts +126 -0
  105. package/dist/types/runtime/flow-finish.d.ts +68 -0
  106. package/dist/types/runtime/flow-known-texts.d.ts +11 -0
  107. package/dist/types/runtime/flow-signals.d.ts +12 -0
  108. package/dist/types/runtime/flow-timers.d.ts +55 -0
  109. package/dist/types/runtime/flow-tools.d.ts +23 -0
  110. package/dist/types/runtime/flow-types.d.ts +547 -0
  111. package/dist/types/runtime/held-messages.d.ts +25 -0
  112. package/dist/types/runtime/index.d.ts +11 -0
  113. package/dist/types/runtime/judge-context.d.ts +36 -0
  114. package/dist/types/runtime/judge.d.ts +21 -0
  115. package/dist/types/runtime/migrate-chats.d.ts +20 -0
  116. package/dist/types/runtime/note-tools.d.ts +15 -0
  117. package/dist/types/runtime/pause.d.ts +21 -0
  118. package/dist/types/runtime/prepare-turn.d.ts +12 -0
  119. package/dist/types/runtime/side-task-tool.d.ts +5 -0
  120. package/dist/types/runtime/step-tail.d.ts +11 -0
  121. package/dist/types/runtime/tail/day-line.d.ts +2 -0
  122. package/dist/types/runtime/tail/frame-line.d.ts +2 -0
  123. package/dist/types/runtime/tail/side-tasks-line.d.ts +2 -0
  124. package/dist/types/runtime/tail/tail-part.d.ts +21 -0
  125. package/dist/types/runtime/test-clock.d.ts +26 -0
  126. package/dist/types/runtime/time-zone-tool.d.ts +3 -0
  127. package/dist/types/runtime/turn-gate.d.ts +8 -0
  128. package/dist/types/sqlite.d.ts +9 -0
  129. package/dist/types/store/flow-store-shared.d.ts +20 -0
  130. package/dist/types/store/flow-store.d.ts +240 -0
  131. package/dist/types/store/memory.d.ts +3 -0
  132. package/dist/types/store/migration-settings.d.ts +7 -0
  133. package/dist/types/store/postgres-schema.d.ts +775 -0
  134. package/dist/types/store/postgres.d.ts +15 -0
  135. package/dist/types/store/sqlite-schema.d.ts +824 -0
  136. package/dist/types/store/sqlite.d.ts +9 -0
  137. package/drizzle/postgres/0000_init.sql +45 -0
  138. package/drizzle/postgres/0001_days_pause_side_tasks.sql +21 -0
  139. package/drizzle/postgres/0002_chat_placement.sql +1 -0
  140. package/drizzle/postgres/meta/0000_snapshot.json +317 -0
  141. package/drizzle/postgres/meta/0001_snapshot.json +439 -0
  142. package/drizzle/postgres/meta/0002_snapshot.json +445 -0
  143. package/drizzle/postgres/meta/_journal.json +27 -0
  144. package/drizzle/sqlite/0000_init.sql +44 -0
  145. package/drizzle/sqlite/0001_days_pause_side_tasks.sql +21 -0
  146. package/drizzle/sqlite/0002_chat_placement.sql +1 -0
  147. package/drizzle/sqlite/meta/0000_snapshot.json +297 -0
  148. package/drizzle/sqlite/meta/0001_snapshot.json +427 -0
  149. package/drizzle/sqlite/meta/0002_snapshot.json +434 -0
  150. package/drizzle/sqlite/meta/_journal.json +27 -0
  151. package/package.json +98 -3
@@ -0,0 +1,1020 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "$schema": {
6
+ "type": "string"
7
+ },
8
+ "format": {
9
+ "type": "string",
10
+ "const": "agent-flow"
11
+ },
12
+ "version": {
13
+ "type": "number",
14
+ "const": 2
15
+ },
16
+ "id": {
17
+ "type": "string",
18
+ "minLength": 1
19
+ },
20
+ "name": {
21
+ "type": "string"
22
+ },
23
+ "start": {
24
+ "default": null,
25
+ "type": [
26
+ "string",
27
+ "null"
28
+ ]
29
+ },
30
+ "common": {
31
+ "default": "",
32
+ "type": "string"
33
+ },
34
+ "pace": {
35
+ "default": {
36
+ "sideQuestionEveryMessages": 5
37
+ },
38
+ "type": "object",
39
+ "properties": {
40
+ "sideQuestionEveryMessages": {
41
+ "default": 5,
42
+ "type": "integer",
43
+ "exclusiveMinimum": 0,
44
+ "maximum": 9007199254740991
45
+ }
46
+ },
47
+ "additionalProperties": false
48
+ },
49
+ "clientCard": {
50
+ "default": [],
51
+ "type": "array",
52
+ "items": {
53
+ "type": "object",
54
+ "properties": {
55
+ "id": {
56
+ "type": "string",
57
+ "minLength": 1
58
+ },
59
+ "name": {
60
+ "type": "string"
61
+ },
62
+ "about": {
63
+ "default": "",
64
+ "type": "string"
65
+ },
66
+ "type": {
67
+ "default": "text",
68
+ "type": "string",
69
+ "enum": [
70
+ "text",
71
+ "number",
72
+ "choice",
73
+ "boolean"
74
+ ]
75
+ },
76
+ "options": {
77
+ "default": [],
78
+ "type": "array",
79
+ "items": {
80
+ "type": "string"
81
+ }
82
+ },
83
+ "refreshAfterMonths": {
84
+ "default": null,
85
+ "anyOf": [
86
+ {
87
+ "type": "integer",
88
+ "exclusiveMinimum": 0,
89
+ "maximum": 9007199254740991
90
+ },
91
+ {
92
+ "type": "null"
93
+ }
94
+ ]
95
+ }
96
+ },
97
+ "required": [
98
+ "id",
99
+ "name"
100
+ ],
101
+ "additionalProperties": false
102
+ }
103
+ },
104
+ "chatNotes": {
105
+ "default": [],
106
+ "type": "array",
107
+ "items": {
108
+ "type": "object",
109
+ "properties": {
110
+ "id": {
111
+ "type": "string",
112
+ "minLength": 1
113
+ },
114
+ "name": {
115
+ "type": "string"
116
+ },
117
+ "about": {
118
+ "default": "",
119
+ "type": "string"
120
+ },
121
+ "type": {
122
+ "default": "text",
123
+ "type": "string",
124
+ "enum": [
125
+ "text",
126
+ "number",
127
+ "choice",
128
+ "boolean"
129
+ ]
130
+ },
131
+ "options": {
132
+ "default": [],
133
+ "type": "array",
134
+ "items": {
135
+ "type": "string"
136
+ }
137
+ }
138
+ },
139
+ "required": [
140
+ "id",
141
+ "name"
142
+ ],
143
+ "additionalProperties": false
144
+ }
145
+ },
146
+ "tools": {
147
+ "default": [],
148
+ "type": "array",
149
+ "items": {
150
+ "type": "string"
151
+ }
152
+ },
153
+ "anyState": {
154
+ "default": {
155
+ "except": [],
156
+ "exits": []
157
+ },
158
+ "type": "object",
159
+ "properties": {
160
+ "except": {
161
+ "default": [],
162
+ "type": "array",
163
+ "items": {
164
+ "type": "string"
165
+ }
166
+ },
167
+ "exits": {
168
+ "default": [],
169
+ "type": "array",
170
+ "items": {
171
+ "type": "object",
172
+ "properties": {
173
+ "id": {
174
+ "type": "string",
175
+ "minLength": 1
176
+ },
177
+ "when": {
178
+ "oneOf": [
179
+ {
180
+ "type": "object",
181
+ "properties": {
182
+ "type": {
183
+ "type": "string",
184
+ "const": "judge"
185
+ },
186
+ "text": {
187
+ "type": "string"
188
+ }
189
+ },
190
+ "required": [
191
+ "type",
192
+ "text"
193
+ ],
194
+ "additionalProperties": false
195
+ },
196
+ {
197
+ "type": "object",
198
+ "properties": {
199
+ "type": {
200
+ "type": "string",
201
+ "const": "data"
202
+ },
203
+ "field": {
204
+ "type": "string",
205
+ "minLength": 1
206
+ },
207
+ "op": {
208
+ "default": "filled",
209
+ "type": "string",
210
+ "enum": [
211
+ "filled",
212
+ "eq",
213
+ "ne",
214
+ "gt",
215
+ "lt",
216
+ "contains"
217
+ ]
218
+ },
219
+ "value": {
220
+ "type": [
221
+ "string",
222
+ "number",
223
+ "boolean"
224
+ ]
225
+ }
226
+ },
227
+ "required": [
228
+ "type",
229
+ "field"
230
+ ],
231
+ "additionalProperties": false
232
+ },
233
+ {
234
+ "type": "object",
235
+ "properties": {
236
+ "type": {
237
+ "type": "string",
238
+ "const": "event"
239
+ },
240
+ "event": {
241
+ "type": "string",
242
+ "enum": [
243
+ "message",
244
+ "button",
245
+ "tool",
246
+ "app"
247
+ ]
248
+ },
249
+ "name": {
250
+ "type": "string"
251
+ }
252
+ },
253
+ "required": [
254
+ "type",
255
+ "event"
256
+ ],
257
+ "additionalProperties": false
258
+ },
259
+ {
260
+ "oneOf": [
261
+ {
262
+ "type": "object",
263
+ "properties": {
264
+ "type": {
265
+ "type": "string",
266
+ "const": "timer"
267
+ },
268
+ "from": {
269
+ "type": "string",
270
+ "enum": [
271
+ "in_state",
272
+ "silence",
273
+ "since_start"
274
+ ]
275
+ },
276
+ "amount": {
277
+ "type": "number",
278
+ "exclusiveMinimum": 0
279
+ },
280
+ "unit": {
281
+ "type": "string",
282
+ "enum": [
283
+ "min",
284
+ "h",
285
+ "d"
286
+ ]
287
+ }
288
+ },
289
+ "required": [
290
+ "type",
291
+ "from",
292
+ "amount",
293
+ "unit"
294
+ ],
295
+ "additionalProperties": false
296
+ },
297
+ {
298
+ "type": "object",
299
+ "properties": {
300
+ "type": {
301
+ "type": "string",
302
+ "const": "timer"
303
+ },
304
+ "from": {
305
+ "type": "string",
306
+ "const": "time_of_day"
307
+ },
308
+ "at": {
309
+ "type": "string",
310
+ "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
311
+ }
312
+ },
313
+ "required": [
314
+ "type",
315
+ "from",
316
+ "at"
317
+ ],
318
+ "additionalProperties": false
319
+ },
320
+ {
321
+ "type": "object",
322
+ "properties": {
323
+ "type": {
324
+ "type": "string",
325
+ "const": "timer"
326
+ },
327
+ "from": {
328
+ "type": "string",
329
+ "const": "state_days"
330
+ },
331
+ "days": {
332
+ "type": "integer",
333
+ "minimum": -9007199254740991,
334
+ "maximum": 9007199254740991
335
+ }
336
+ },
337
+ "required": [
338
+ "type",
339
+ "from",
340
+ "days"
341
+ ],
342
+ "additionalProperties": false
343
+ },
344
+ {
345
+ "type": "object",
346
+ "properties": {
347
+ "type": {
348
+ "type": "string",
349
+ "const": "timer"
350
+ },
351
+ "from": {
352
+ "type": "string",
353
+ "const": "program_day"
354
+ },
355
+ "day": {
356
+ "type": "number"
357
+ }
358
+ },
359
+ "required": [
360
+ "type",
361
+ "from",
362
+ "day"
363
+ ],
364
+ "additionalProperties": false
365
+ }
366
+ ]
367
+ }
368
+ ]
369
+ },
370
+ "to": {
371
+ "default": null,
372
+ "type": [
373
+ "string",
374
+ "null"
375
+ ]
376
+ }
377
+ },
378
+ "required": [
379
+ "id",
380
+ "when"
381
+ ],
382
+ "additionalProperties": false
383
+ }
384
+ }
385
+ },
386
+ "additionalProperties": false
387
+ },
388
+ "states": {
389
+ "type": "array",
390
+ "items": {
391
+ "type": "object",
392
+ "properties": {
393
+ "id": {
394
+ "type": "string",
395
+ "minLength": 1
396
+ },
397
+ "kind": {
398
+ "default": "state",
399
+ "type": "string",
400
+ "const": "state"
401
+ },
402
+ "title": {
403
+ "default": "",
404
+ "type": "string"
405
+ },
406
+ "instructions": {
407
+ "default": "",
408
+ "type": "string"
409
+ },
410
+ "firstMessage": {
411
+ "default": null,
412
+ "type": [
413
+ "string",
414
+ "null"
415
+ ]
416
+ },
417
+ "learn": {
418
+ "default": [],
419
+ "type": "array",
420
+ "items": {
421
+ "type": "string"
422
+ }
423
+ },
424
+ "noSideQuestions": {
425
+ "default": false,
426
+ "type": "boolean"
427
+ },
428
+ "tools": {
429
+ "default": [],
430
+ "type": "array",
431
+ "items": {
432
+ "type": "string"
433
+ }
434
+ },
435
+ "tags": {
436
+ "default": [],
437
+ "type": "array",
438
+ "items": {
439
+ "type": "string"
440
+ }
441
+ },
442
+ "exits": {
443
+ "default": [],
444
+ "type": "array",
445
+ "items": {
446
+ "type": "object",
447
+ "properties": {
448
+ "id": {
449
+ "type": "string",
450
+ "minLength": 1
451
+ },
452
+ "when": {
453
+ "oneOf": [
454
+ {
455
+ "type": "object",
456
+ "properties": {
457
+ "type": {
458
+ "type": "string",
459
+ "const": "judge"
460
+ },
461
+ "text": {
462
+ "type": "string"
463
+ }
464
+ },
465
+ "required": [
466
+ "type",
467
+ "text"
468
+ ],
469
+ "additionalProperties": false
470
+ },
471
+ {
472
+ "type": "object",
473
+ "properties": {
474
+ "type": {
475
+ "type": "string",
476
+ "const": "data"
477
+ },
478
+ "field": {
479
+ "type": "string",
480
+ "minLength": 1
481
+ },
482
+ "op": {
483
+ "default": "filled",
484
+ "type": "string",
485
+ "enum": [
486
+ "filled",
487
+ "eq",
488
+ "ne",
489
+ "gt",
490
+ "lt",
491
+ "contains"
492
+ ]
493
+ },
494
+ "value": {
495
+ "type": [
496
+ "string",
497
+ "number",
498
+ "boolean"
499
+ ]
500
+ }
501
+ },
502
+ "required": [
503
+ "type",
504
+ "field"
505
+ ],
506
+ "additionalProperties": false
507
+ },
508
+ {
509
+ "type": "object",
510
+ "properties": {
511
+ "type": {
512
+ "type": "string",
513
+ "const": "event"
514
+ },
515
+ "event": {
516
+ "type": "string",
517
+ "enum": [
518
+ "message",
519
+ "button",
520
+ "tool",
521
+ "app"
522
+ ]
523
+ },
524
+ "name": {
525
+ "type": "string"
526
+ }
527
+ },
528
+ "required": [
529
+ "type",
530
+ "event"
531
+ ],
532
+ "additionalProperties": false
533
+ },
534
+ {
535
+ "oneOf": [
536
+ {
537
+ "type": "object",
538
+ "properties": {
539
+ "type": {
540
+ "type": "string",
541
+ "const": "timer"
542
+ },
543
+ "from": {
544
+ "type": "string",
545
+ "enum": [
546
+ "in_state",
547
+ "silence",
548
+ "since_start"
549
+ ]
550
+ },
551
+ "amount": {
552
+ "type": "number",
553
+ "exclusiveMinimum": 0
554
+ },
555
+ "unit": {
556
+ "type": "string",
557
+ "enum": [
558
+ "min",
559
+ "h",
560
+ "d"
561
+ ]
562
+ }
563
+ },
564
+ "required": [
565
+ "type",
566
+ "from",
567
+ "amount",
568
+ "unit"
569
+ ],
570
+ "additionalProperties": false
571
+ },
572
+ {
573
+ "type": "object",
574
+ "properties": {
575
+ "type": {
576
+ "type": "string",
577
+ "const": "timer"
578
+ },
579
+ "from": {
580
+ "type": "string",
581
+ "const": "time_of_day"
582
+ },
583
+ "at": {
584
+ "type": "string",
585
+ "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
586
+ }
587
+ },
588
+ "required": [
589
+ "type",
590
+ "from",
591
+ "at"
592
+ ],
593
+ "additionalProperties": false
594
+ },
595
+ {
596
+ "type": "object",
597
+ "properties": {
598
+ "type": {
599
+ "type": "string",
600
+ "const": "timer"
601
+ },
602
+ "from": {
603
+ "type": "string",
604
+ "const": "state_days"
605
+ },
606
+ "days": {
607
+ "type": "integer",
608
+ "minimum": -9007199254740991,
609
+ "maximum": 9007199254740991
610
+ }
611
+ },
612
+ "required": [
613
+ "type",
614
+ "from",
615
+ "days"
616
+ ],
617
+ "additionalProperties": false
618
+ },
619
+ {
620
+ "type": "object",
621
+ "properties": {
622
+ "type": {
623
+ "type": "string",
624
+ "const": "timer"
625
+ },
626
+ "from": {
627
+ "type": "string",
628
+ "const": "program_day"
629
+ },
630
+ "day": {
631
+ "type": "number"
632
+ }
633
+ },
634
+ "required": [
635
+ "type",
636
+ "from",
637
+ "day"
638
+ ],
639
+ "additionalProperties": false
640
+ }
641
+ ]
642
+ }
643
+ ]
644
+ },
645
+ "to": {
646
+ "default": null,
647
+ "type": [
648
+ "string",
649
+ "null"
650
+ ]
651
+ }
652
+ },
653
+ "required": [
654
+ "id",
655
+ "when"
656
+ ],
657
+ "additionalProperties": false
658
+ }
659
+ },
660
+ "nudges": {
661
+ "anyOf": [
662
+ {
663
+ "type": "object",
664
+ "properties": {
665
+ "afterSilence": {
666
+ "type": "array",
667
+ "items": {
668
+ "type": "object",
669
+ "properties": {
670
+ "amount": {
671
+ "type": "number",
672
+ "exclusiveMinimum": 0
673
+ },
674
+ "unit": {
675
+ "type": "string",
676
+ "enum": [
677
+ "min",
678
+ "h",
679
+ "d"
680
+ ]
681
+ }
682
+ },
683
+ "required": [
684
+ "amount",
685
+ "unit"
686
+ ],
687
+ "additionalProperties": false
688
+ }
689
+ },
690
+ "dailyAt": {
691
+ "type": "array",
692
+ "items": {
693
+ "type": "string",
694
+ "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
695
+ }
696
+ },
697
+ "giveUpAfter": {
698
+ "type": "object",
699
+ "properties": {
700
+ "amount": {
701
+ "type": "number",
702
+ "exclusiveMinimum": 0
703
+ },
704
+ "unit": {
705
+ "type": "string",
706
+ "enum": [
707
+ "min",
708
+ "h",
709
+ "d"
710
+ ]
711
+ }
712
+ },
713
+ "required": [
714
+ "amount",
715
+ "unit"
716
+ ],
717
+ "additionalProperties": false
718
+ },
719
+ "days": {
720
+ "type": "number"
721
+ }
722
+ },
723
+ "required": [
724
+ "afterSilence"
725
+ ],
726
+ "additionalProperties": false
727
+ },
728
+ {
729
+ "type": "string",
730
+ "const": "off"
731
+ }
732
+ ]
733
+ }
734
+ },
735
+ "required": [
736
+ "id"
737
+ ],
738
+ "additionalProperties": false
739
+ }
740
+ },
741
+ "layout": {
742
+ "default": {},
743
+ "type": "object",
744
+ "propertyNames": {
745
+ "type": "string"
746
+ },
747
+ "additionalProperties": {
748
+ "type": "object",
749
+ "properties": {
750
+ "x": {
751
+ "type": "number"
752
+ },
753
+ "y": {
754
+ "type": "number"
755
+ }
756
+ },
757
+ "required": [
758
+ "x",
759
+ "y"
760
+ ],
761
+ "additionalProperties": false
762
+ }
763
+ },
764
+ "schedule": {
765
+ "type": "object",
766
+ "properties": {
767
+ "dayStart": {
768
+ "type": "string",
769
+ "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
770
+ },
771
+ "nightFrom": {
772
+ "type": "string",
773
+ "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
774
+ },
775
+ "lateStartHours": {
776
+ "default": 3,
777
+ "type": "number",
778
+ "minimum": 0,
779
+ "maximum": 24
780
+ },
781
+ "lengthDays": {
782
+ "type": "integer",
783
+ "minimum": 1,
784
+ "maximum": 60
785
+ },
786
+ "deadlineState": {
787
+ "type": "string"
788
+ },
789
+ "farewellOnDeadline": {
790
+ "default": false,
791
+ "type": "boolean"
792
+ },
793
+ "farewellText": {
794
+ "type": "string"
795
+ },
796
+ "firstMessages": {
797
+ "type": "object",
798
+ "properties": {
799
+ "maxPerDay": {
800
+ "type": "integer",
801
+ "minimum": 0,
802
+ "maximum": 9007199254740991
803
+ },
804
+ "morning": {
805
+ "type": "boolean"
806
+ },
807
+ "skipMorningIfHumanWithinMin": {
808
+ "type": "integer",
809
+ "minimum": 0,
810
+ "maximum": 9007199254740991
811
+ }
812
+ },
813
+ "additionalProperties": false
814
+ },
815
+ "nudges": {
816
+ "type": "object",
817
+ "properties": {
818
+ "afterSilence": {
819
+ "type": "array",
820
+ "items": {
821
+ "type": "object",
822
+ "properties": {
823
+ "amount": {
824
+ "type": "number",
825
+ "exclusiveMinimum": 0
826
+ },
827
+ "unit": {
828
+ "type": "string",
829
+ "enum": [
830
+ "min",
831
+ "h",
832
+ "d"
833
+ ]
834
+ }
835
+ },
836
+ "required": [
837
+ "amount",
838
+ "unit"
839
+ ],
840
+ "additionalProperties": false
841
+ }
842
+ },
843
+ "dailyAt": {
844
+ "type": "array",
845
+ "items": {
846
+ "type": "string",
847
+ "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
848
+ }
849
+ },
850
+ "giveUpAfter": {
851
+ "type": "object",
852
+ "properties": {
853
+ "amount": {
854
+ "type": "number",
855
+ "exclusiveMinimum": 0
856
+ },
857
+ "unit": {
858
+ "type": "string",
859
+ "enum": [
860
+ "min",
861
+ "h",
862
+ "d"
863
+ ]
864
+ }
865
+ },
866
+ "required": [
867
+ "amount",
868
+ "unit"
869
+ ],
870
+ "additionalProperties": false
871
+ }
872
+ },
873
+ "required": [
874
+ "afterSilence"
875
+ ],
876
+ "additionalProperties": false
877
+ },
878
+ "dayFrame": {
879
+ "type": "object",
880
+ "properties": {
881
+ "softFrom": {
882
+ "type": "integer",
883
+ "exclusiveMinimum": 0,
884
+ "maximum": 9007199254740991
885
+ },
886
+ "hardAt": {
887
+ "type": "integer",
888
+ "exclusiveMinimum": 0,
889
+ "maximum": 9007199254740991
890
+ },
891
+ "hardText": {
892
+ "type": "string"
893
+ }
894
+ },
895
+ "additionalProperties": false
896
+ }
897
+ },
898
+ "required": [
899
+ "dayStart"
900
+ ],
901
+ "additionalProperties": false
902
+ },
903
+ "nudges": {
904
+ "type": "object",
905
+ "properties": {
906
+ "afterSilence": {
907
+ "type": "array",
908
+ "items": {
909
+ "type": "object",
910
+ "properties": {
911
+ "amount": {
912
+ "type": "number",
913
+ "exclusiveMinimum": 0
914
+ },
915
+ "unit": {
916
+ "type": "string",
917
+ "enum": [
918
+ "min",
919
+ "h",
920
+ "d"
921
+ ]
922
+ }
923
+ },
924
+ "required": [
925
+ "amount",
926
+ "unit"
927
+ ],
928
+ "additionalProperties": false
929
+ }
930
+ },
931
+ "dailyAt": {
932
+ "type": "array",
933
+ "items": {
934
+ "type": "string",
935
+ "pattern": "^([01]\\d|2[0-3]):[0-5]\\d$"
936
+ }
937
+ },
938
+ "giveUpAfter": {
939
+ "type": "object",
940
+ "properties": {
941
+ "amount": {
942
+ "type": "number",
943
+ "exclusiveMinimum": 0
944
+ },
945
+ "unit": {
946
+ "type": "string",
947
+ "enum": [
948
+ "min",
949
+ "h",
950
+ "d"
951
+ ]
952
+ }
953
+ },
954
+ "required": [
955
+ "amount",
956
+ "unit"
957
+ ],
958
+ "additionalProperties": false
959
+ }
960
+ },
961
+ "required": [
962
+ "afterSilence"
963
+ ],
964
+ "additionalProperties": false
965
+ },
966
+ "sideTasks": {
967
+ "type": "array",
968
+ "items": {
969
+ "type": "object",
970
+ "properties": {
971
+ "id": {
972
+ "type": "string",
973
+ "minLength": 1
974
+ },
975
+ "text": {
976
+ "type": "string"
977
+ },
978
+ "when": {
979
+ "type": "string"
980
+ },
981
+ "field": {
982
+ "type": "string"
983
+ },
984
+ "maxAttempts": {
985
+ "default": 2,
986
+ "type": "integer",
987
+ "exclusiveMinimum": 0,
988
+ "maximum": 9007199254740991
989
+ },
990
+ "perConversation": {
991
+ "default": false,
992
+ "type": "boolean"
993
+ }
994
+ },
995
+ "required": [
996
+ "id",
997
+ "text"
998
+ ],
999
+ "additionalProperties": false
1000
+ }
1001
+ },
1002
+ "afterEnd": {
1003
+ "type": "string",
1004
+ "enum": [
1005
+ "reply",
1006
+ "silent"
1007
+ ]
1008
+ }
1009
+ },
1010
+ "required": [
1011
+ "format",
1012
+ "version",
1013
+ "id",
1014
+ "name",
1015
+ "states"
1016
+ ],
1017
+ "additionalProperties": false,
1018
+ "$id": "https://github.com/ykurilov/agent-chat-sdk/packages/flows/agent-flow.schema.json",
1019
+ "title": "Сценарий поведения агента (agent-flow)"
1020
+ }