@newheap/platform-ai-chat 0.15.0 → 0.17.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.
package/i18n/en.json CHANGED
@@ -72,7 +72,9 @@
72
72
  "elapsed": "{{seconds}}s",
73
73
  "participant": "Participant",
74
74
  "trigger": "Event",
75
- "rule": "Automatic rule"
75
+ "rule": "Automatic rule",
76
+ "files": "Attached files",
77
+ "file-meta": "{{type}}, {{size}}"
76
78
  },
77
79
  "composer": {
78
80
  "label": "Message",
@@ -87,6 +89,18 @@
87
89
  "waiting-for-approval": "Waiting for approval",
88
90
  "running-by": "{{name}} is working with the assistant…",
89
91
  "waiting-for-approval-by": "Waiting for {{name}} to decide…"
92
+ },
93
+ "attach": "Attach files",
94
+ "attach-hint": "{{types}}, up to {{max}} each, at most {{count}} files per message",
95
+ "attachments": "Attached files",
96
+ "remove-attachment": "Remove {{name}}",
97
+ "uploading": "Uploading {{name}}",
98
+ "uploading-hint": "The message can be sent once the files are uploaded",
99
+ "attachment-errors": {
100
+ "assistant-file-type-not-accepted": "This type of file cannot be attached. Attach {{types}}.",
101
+ "assistant-file-too-large": "The file is larger than {{max}}.",
102
+ "assistant-file-count-limit": "A message can carry at most {{count}} files.",
103
+ "assistant-file-upload-invalid": "The file is empty or its name cannot be used."
90
104
  }
91
105
  },
92
106
  "queue": {
@@ -104,7 +118,8 @@
104
118
  "preparing": "Preparing…",
105
119
  "sending": "Sending…",
106
120
  "failed": "Not sent; resume to retry"
107
- }
121
+ },
122
+ "files": "Files ({{count}}): {{names}}"
108
123
  },
109
124
  "tool-call": {
110
125
  "label": "Tool call: {{name}}",
@@ -240,7 +255,8 @@
240
255
  "assistant-proposal-already-open": "Not proposed again: the same proposal already waits.",
241
256
  "assistant-proposal-recently-rejected": "Not proposed again: people rejected it recently.",
242
257
  "assistant-proposal-placed": "Proposed at its object; waits for that object's approvers",
243
- "assistant-proposal-not-placed": "Not proposed: the object it concerns does not accept it."
258
+ "assistant-proposal-not-placed": "Not proposed: the object it concerns does not accept it.",
259
+ "assistant-proposal-not-needed": "Not proposed: the work is already done or no longer applies."
244
260
  },
245
261
  "errors": {
246
262
  "generic": "Something went wrong. Please try again.",
@@ -294,6 +310,19 @@
294
310
  "assistant-message-invalid": "The message is empty or not valid. Write a question and send it again.",
295
311
  "assistant-message-too-long": "The message is too long. Shorten it and send it again.",
296
312
  "assistant-model-unavailable": "The language model is temporarily unavailable. Try again in a moment.",
313
+ "assistant-classification-not-permitted": "The model this agent uses may not receive data of the agent's classification. Ask an administrator to choose a model profile that permits it.",
314
+ "assistant-files-unavailable": "This application gives the assistant no files.",
315
+ "assistant-files-not-accepted": "This agent does not accept files. An administrator can switch files on for it.",
316
+ "assistant-file-reference-invalid": "A file could not be read because its reference is not valid.",
317
+ "assistant-file-not-found": "The file was not found. It may have been removed.",
318
+ "assistant-file-forbidden": "You may not read this file, so the assistant did not read it either.",
319
+ "assistant-file-unavailable": "The file could not be opened right now. Try again in a moment.",
320
+ "assistant-file-reader-failed": "The reading tool for this type of file could not turn it into text.",
321
+ "assistant-file-too-large": "The file is larger than the assistant may read. Share a smaller file.",
322
+ "assistant-file-too-many-pages": "The file has more pages than the assistant may read. Share a shorter document.",
323
+ "assistant-file-count-limit": "The assistant may read no more files in this answer. Ask about fewer files at a time.",
324
+ "assistant-file-token-limit": "The files are too long for one answer. Ask about fewer or shorter files at a time.",
325
+ "assistant-file-type-not-supported": "The model of this agent cannot read files of this type.",
297
326
  "assistant-proposal-hash-mismatch": "The proposed change was modified in the meantime, so nothing was changed. Reload the conversation and decide again.",
298
327
  "assistant-title-invalid": "The conversation title is not valid. Use a shorter title.",
299
328
  "assistant-tool-call-limit-reached": "The assistant reached the maximum number of steps for one answer. Ask a narrower question.",
@@ -324,6 +353,8 @@
324
353
  "assistant-run-token-limit": "This run stopped because it reached its token budget. What it did so far stays; an approver can resume it.",
325
354
  "assistant-skill-stopped": "This skill of the agent has been stopped.",
326
355
  "assistant-skill-paused": "This skill of the agent is paused; its events wait until it resumes.",
356
+ "assistant-agent-off": "This agent is switched off; it takes no work from other agents until it is switched on.",
357
+ "assistant-skill-off": "This skill of the agent is switched off.",
327
358
  "assistant-skill-not-found": "The agent has no such skill.",
328
359
  "assistant-skill-not-available": "That skill is not available now.",
329
360
  "assistant-skill-switch-limit": "The run already switched skills as often as allowed.",
@@ -382,6 +413,7 @@
382
413
  "assistant-service-account-not-found": "No account that may sign in exists with this id.",
383
414
  "assistant-skill-in-code": "This skill is part of the code and cannot change here.",
384
415
  "assistant-trigger-in-code": "This trigger is part of the code and cannot change here.",
416
+ "assistant-trigger-filter-not-found": "The event has no filter with this name. Choose from the filters the event offers.",
385
417
  "assistant-skill-in-use": "A trigger still starts this skill. Change or remove the trigger first.",
386
418
  "assistant-configuration-limit": "This agent already has as many skills or triggers as allowed.",
387
419
  "assistant-run-settings-in-code": "This agent is part of the code; its runs are configured there.",
@@ -407,11 +439,19 @@
407
439
  "assistant-mcp-authorization-cancelled": "The authorization window was closed before it finished.",
408
440
  "assistant-mcp-popup-blocked": "The browser blocked the authorization window. Allow pop-ups for this site and try again.",
409
441
  "assistant-proposal-placed": "The proposal waits at the object it concerns, for that object's approvers.",
410
- "assistant-proposal-not-placed": "The proposal was not placed at the object it concerns."
442
+ "assistant-proposal-not-placed": "The proposal was not placed at the object it concerns.",
443
+ "assistant-proposal-not-needed": "Not proposed: the work is already done or no longer applies.",
444
+ "assistant-file-upload-invalid": "The file could not be uploaded. Choose one file and try again.",
445
+ "assistant-file-type-not-accepted": "This type of file cannot be attached.",
446
+ "assistant-file-upload-refused": "The application refused this file.",
447
+ "assistant-file-upload-failed": "The file could not be stored right now. Try again in a moment.",
448
+ "assistant-file-scan-refused": "The file did not pass the scan for harmful content and was not stored."
411
449
  },
412
450
  "notices": {
413
451
  "no-answer": "The assistant finished without an answer. Try again or rephrase your question.",
414
- "conversation-removed": "This conversation is no longer available to you."
452
+ "conversation-removed": "This conversation is no longer available to you.",
453
+ "message-queued": "The agent is working in this conversation. Your message waits for its next run, which adds it here.",
454
+ "message-queued-with-files": "The agent is working in this conversation. Your message and its files wait for its next run, which adds them here."
415
455
  },
416
456
  "preferences": {
417
457
  "title": "Your preferences",
@@ -557,22 +597,31 @@
557
597
  "stopped": "Stopped",
558
598
  "configured-off": "Off in configuration",
559
599
  "configured-off-hint": "Disabled in the application's code until the next deployment; it cannot be resumed here.",
600
+ "off": "Off",
601
+ "off-hint": "Events, schedules and other triggers are ignored until it is switched on, and nothing waits for it. People can still chat with it and start it by hand.",
602
+ "starts-off": "It started off, as its code says.",
560
603
  "changed": "Changed by {{user}} on {{date}}.",
561
604
  "reason": "Note: {{reason}}",
562
605
  "waiting": "{{count}} events wait for the resume.",
563
606
  "action": {
564
607
  "active": "Resume",
565
608
  "paused": "Pause",
609
+ "off": "Switch off",
610
+ "switch-on": "Switch on",
566
611
  "stopped": "Stop"
567
612
  },
568
613
  "explain": {
569
614
  "active": "The agent works again. Every subject with waiting events gets one run.",
570
615
  "paused": "No new runs start. Events wait and run after the resume; running work finishes and approved proposals execute.",
616
+ "off": "Events, schedules, webhooks, hand-offs and follow-ups are ignored and nothing waits; switching on later starts nothing for them. Running work finishes, open proposals can still be decided and people can still chat with the agent and start it by hand.",
617
+ "switch-on": "The agent takes its events, schedules and other triggers again. Nothing that happened while it was off runs.",
571
618
  "stopped": "Active runs are cancelled, their open proposals withdrawn and waiting events dropped. Approved proposals wait until the agent works again."
572
619
  },
573
620
  "confirm": {
574
621
  "active": "Confirm resume",
575
622
  "paused": "Confirm pause",
623
+ "off": "Confirm switch off",
624
+ "switch-on": "Confirm switch on",
576
625
  "stopped": "Confirm stop"
577
626
  },
578
627
  "note-label": "Note for other administrators (optional)",
@@ -585,6 +634,8 @@
585
634
  "explain": {
586
635
  "active": "The skill {{skill}} works again. Every subject with events waiting for it gets one run.",
587
636
  "paused": "The skill {{skill}} starts no new runs: its events wait, triage no longer chooses it and running work finishes. The other skills keep working.",
637
+ "off": "Triggers of the skill {{skill}} are ignored and rules and triage no longer route work to it; nothing waits for it. Running work finishes. The other skills keep working.",
638
+ "switch-on": "The skill {{skill}} takes work again. Nothing that happened while it was off runs.",
588
639
  "stopped": "The runs of the skill {{skill}} are cancelled and its waiting events dropped; its triggers are refused. The other skills keep working."
589
640
  }
590
641
  },
@@ -661,7 +712,10 @@
661
712
  "view-policy": "Results for the whole application seen by: {{policy}}."
662
713
  },
663
714
  "groups": "Groups: {{groups}}",
664
- "catalog-failed": "The building blocks of agent runs could not be read. Until they are, agents cannot be run now here and what an agent works on and its groups stay as they are."
715
+ "catalog-failed": "The building blocks of agent runs could not be read. Until they are, agents cannot be run now here and what an agent works on and its groups stay as they are.",
716
+ "warnings": {
717
+ "classification-not-permitted": "Neither the agent's model profile nor the profile's fallbacks permit its data classification. The agent is saved, but its model calls are refused until a profile permits the classification."
718
+ }
665
719
  },
666
720
  "agent-editor": {
667
721
  "new-title": "New agent",
@@ -676,7 +730,14 @@
676
730
  "autonomy-hint": "Only Execute allows changes, and every change still needs approval.",
677
731
  "required-policy": "Required policy",
678
732
  "required-policy-hint": "Optional. Only users who pass this policy see the agent.",
733
+ "profile": "Model profile",
734
+ "profile-default": "The application's chat profile",
735
+ "profile-hint": "The model the agent works with, from the profiles the application offers for agents created here.",
736
+ "classification": "Data classification",
737
+ "classification-hint": "How sensitive the data is that the agent's model calls carry, in chats with it and in its runs. Its model profile or one of the profile's fallbacks must permit it; a skill may set its own.",
679
738
  "state-hint": "Pause, stop and resume the agent from the agent list. Saving never changes its state.",
739
+ "switch-on-now": "Switch on now",
740
+ "switch-on-now-hint": "Otherwise the agent starts off: its events, schedules and other triggers are ignored until you switch it on in the agent list. People can still chat with it and start it by hand.",
680
741
  "tool-selectors": "Tool selectors",
681
742
  "tool-selectors-hint": "Choose tools from the catalog or add a pattern such as sample-api.project.*. MCP tools come from the assigned servers.",
682
743
  "add-selector": "Add pattern",
@@ -891,7 +952,33 @@
891
952
  "client-secret-reference": "Client secret reference",
892
953
  "organization-account-label": "Connected account",
893
954
  "organization-account-label-hint": "Which account the organization connects, for example \"Planning service account\". Everyone using the server sees it.",
894
- "organization-account-label-required": "Name the account that will be connected."
955
+ "organization-account-label-required": "Name the account that will be connected.",
956
+ "reader": {
957
+ "title": "Reading documents",
958
+ "hint": "Models that cannot read a file type themselves can get the file as text from a reader of this server. The assistant calls the reader's tool with the file name, media type and base64 content of the file, after the application's own readers.",
959
+ "empty": "This server reads no files.",
960
+ "item": "Reader {{number}}",
961
+ "add": "Add reader",
962
+ "add-hint": "Each reader is one of the server's synced tools; a server has at most {{max}}.",
963
+ "limit": "This server has the most readers it can have ({{max}}).",
964
+ "remove": "Remove",
965
+ "remove-label": "Remove reader {{number}}",
966
+ "media-types": "Media types",
967
+ "media-types-hint": "Comma-separated, at most 16, such as application/vnd.openxmlformats-officedocument.wordprocessingml.document.",
968
+ "media-types-invalid": "Enter 1 to 16 media types of the form type/subtype, separated by commas.",
969
+ "tool": "Reading tool",
970
+ "tool-choose": "Choose a tool",
971
+ "tool-hint": "A tool synced from this server that turns a file into text. It does not have to be enabled for agents.",
972
+ "tool-duplicate": "Another reader of this server already uses this tool.",
973
+ "tool-sync": "Sync the server's tools first, then add a reader.",
974
+ "priority": "Priority",
975
+ "priority-hint": "Readers with a higher priority are asked first, after the application's own readers; with the same priority, by server and tool name.",
976
+ "priority-invalid": "Enter a whole number from {{min}} to {{max}}.",
977
+ "max-classification": "Highest classification",
978
+ "max-classification-choose": "Choose a classification",
979
+ "max-classification-hint": "A file that is more sensitive is never sent to this server.",
980
+ "leaves-application": "A file sent to this server leaves the application. Choose a classification the server may receive; for personal connections the person's consent to background use still applies."
981
+ }
895
982
  },
896
983
  "tools": {
897
984
  "title": "Tools of {{name}}",
@@ -1039,6 +1126,19 @@
1039
1126
  "replay-progress": "{{replayed}} of at most {{max}} runs replayed, {{skipped}} skipped"
1040
1127
  },
1041
1128
  "run-config": {
1129
+ "files": {
1130
+ "label": "Accepts files",
1131
+ "agent-hint": "People's messages and the agent's tools may give it documents, such as PDFs, within the application's limits. A new agent accepts none until you switch this on.",
1132
+ "skill-hint": "Runs in this skill may read documents when the agent accepts them too. A new skill accepts none until you switch this on.",
1133
+ "limits-title": "Lower file limits",
1134
+ "agent-limits-hint": "Leave a field empty to keep the application's limit. A value can only lower it.",
1135
+ "skill-limits-hint": "Leave a field empty to keep the agent's limit. A value can only lower the application's.",
1136
+ "max-file-megabytes": "Largest file (MB)",
1137
+ "max-file-pages": "Most pages per file",
1138
+ "max-files-per-turn": "Most files per turn",
1139
+ "max-file-tokens-per-turn": "Most file tokens per turn",
1140
+ "application-limit": "The application allows at most {{value}}."
1141
+ },
1042
1142
  "back": "Back to agents",
1043
1143
  "title": "Run configuration of {{name}}",
1044
1144
  "description": "Skills and triggers that the administration adds without a deploy, made of the building blocks the application registers. New skills and triggers start in shadow, where nobody is notified and nothing executes.",
@@ -1058,6 +1158,7 @@
1058
1158
  "unknown-policy": "the approval policy no longer exists.",
1059
1159
  "unknown-rule-handler": "the rules no longer exist.",
1060
1160
  "unknown-event": "the event no longer exists.",
1161
+ "unknown-filter": "a filter of the event no longer exists, so the trigger starts nothing until you remove it.",
1061
1162
  "unknown-subject-set": "the set of subjects no longer exists.",
1062
1163
  "unknown-skill": "the skill no longer exists.",
1063
1164
  "invalid-schedule": "the schedule or its time zone is not valid.",
@@ -1077,7 +1178,9 @@
1077
1178
  "taken": "This id is already in use.",
1078
1179
  "name-letters": "Use at least one letter in the name.",
1079
1180
  "instructions-for-model": "Without fixed rules the model works from these instructions; describe what it should do.",
1080
- "application-not-worked-on": "The agent does not work on the whole application. Choose a set of objects, or let the agent work on the whole application first."
1181
+ "application-not-worked-on": "The agent does not work on the whole application. Choose a set of objects, or let the agent work on the whole application first.",
1182
+ "megabytes-up-to": "Enter a size above 0 and at most {{max}} MB.",
1183
+ "megabytes-positive": "Enter a size above 0 MB."
1081
1184
  },
1082
1185
  "settings": {
1083
1186
  "title": "Run settings",
@@ -1178,6 +1281,8 @@
1178
1281
  "apply-shadow": "Evaluate in shadow next to the live version first",
1179
1282
  "apply-live": "Put live at once",
1180
1283
  "starts-in-shadow": "A new skill starts in shadow.",
1284
+ "switch-on-now": "Switch on now",
1285
+ "switch-on-now-hint": "Otherwise the skill starts off: triggers that name it are ignored and rules and triage do not route to it until you switch it on in the agent list.",
1181
1286
  "versions": "Versions",
1182
1287
  "remove-explain": "Its versions stay as history. A trigger that starts it must go first.",
1183
1288
  "what": {
@@ -1189,6 +1294,22 @@
1189
1294
  "rules-hint": "The rules decide without a model; a doubtful case goes to the model with the instructions below.",
1190
1295
  "model-hint": "The model decides with the instructions below and the chosen tools.",
1191
1296
  "profile-hint": "The model profile it uses; by default the agent's.",
1297
+ "classification": {
1298
+ "label": "Data classification",
1299
+ "agent": "The agent's classification",
1300
+ "hint": "How sensitive the data is that the skill sends to its model. Its model profile must permit it; otherwise its model calls are refused.",
1301
+ "public": "Public",
1302
+ "public-hint": "Data anyone may see.",
1303
+ "internal": "Internal",
1304
+ "internal-hint": "Data of the organization; the default.",
1305
+ "confidential": "Confidential",
1306
+ "confidential-hint": "Data only some people may see, such as personal or financial data.",
1307
+ "restricted": "Restricted",
1308
+ "restricted-hint": "The most sensitive data, for which only specially approved models may be used."
1309
+ },
1310
+ "warnings": {
1311
+ "classification-not-permitted": "Neither the skill's model profile nor the profile's fallbacks permit its data classification. The skill is saved, but its model calls are refused until a profile permits the classification."
1312
+ },
1192
1313
  "apply-shadow-hint": "The new version runs next to the live one; compare them, then promote or discard it.",
1193
1314
  "apply-live-hint": "For a small correction: the new version replaces the live one at once.",
1194
1315
  "tools-pattern": "All tools that match: {{count}} now.",
@@ -1270,6 +1391,13 @@
1270
1391
  "source-schedule-hint": "At fixed times, for every subject in a set.",
1271
1392
  "source-schedule-application-hint": "At fixed times, for the whole application or for every object in a set.",
1272
1393
  "debounce-hint": "Waits this long for more events about the same subject and handles them in one run.",
1394
+ "filters": {
1395
+ "title": "Filters",
1396
+ "hint": "Skip events this trigger should not start the agent on, such as changes the agent made itself. Every filter you select must let an event through.",
1397
+ "empty": "This event offers no filters.",
1398
+ "missing": "The event no longer offers this filter, so the trigger starts nothing. Clear it to save.",
1399
+ "applied": "Filters: {{filters}}"
1400
+ },
1273
1401
  "subject-set-hint": "The projects or customers the schedule handles each time.",
1274
1402
  "message-hint": "What the agent reads as its task each time.",
1275
1403
  "examples": "Examples",
@@ -1660,7 +1788,18 @@
1660
1788
  "previous": "Previous",
1661
1789
  "next": "Next",
1662
1790
  "page": "Page {{page}} of {{pages}}",
1663
- "pages": "Pages"
1791
+ "pages": "Pages",
1792
+ "new": "New",
1793
+ "new-label": "New since your last visit",
1794
+ "last-visit": "You last looked here on {{date}}. What came since is marked new.",
1795
+ "first-visit": "Everything here is new for you.",
1796
+ "group-loaded": "{{loaded}} of {{total}} shown",
1797
+ "select-group": "Select the {{count}} shown",
1798
+ "select-group-label": "Select the {{count}} proposals of {{name}} shown on this page",
1799
+ "group-continued": "Continued from the previous page.",
1800
+ "group-continues": "More proposals of this group are on the next page.",
1801
+ "run": "One run of {{agent}}, {{date}}",
1802
+ "no-run": "Proposed in a conversation"
1664
1803
  },
1665
1804
  "proposal": {
1666
1805
  "approve": "Approve",