@tutti-os/agent-gui 0.0.198 → 0.0.200

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 (48) hide show
  1. package/README.md +23 -0
  2. package/dist/{AgentRichTextReadonly-2BWVTYD3.js → AgentRichTextReadonly-YU6STDUX.js} +5 -5
  3. package/dist/agent-conversation/index.js +7 -7
  4. package/dist/agent-gui.d.ts +1 -0
  5. package/dist/agent-gui.js +14 -14
  6. package/dist/agent-message-center/index.js +6 -6
  7. package/dist/app/renderer/agentactivity.css +66 -1
  8. package/dist/{chunk-JH6OERDW.js → chunk-3FA5JIDL.js} +2 -2
  9. package/dist/{chunk-D7WWGXPJ.js → chunk-5ZO3H4C5.js} +4 -4
  10. package/dist/{chunk-CTZPHYKU.js → chunk-7NUEEGAA.js} +3 -3
  11. package/dist/{chunk-NTY3JIYS.js → chunk-DAP74J63.js} +3695 -3612
  12. package/dist/chunk-DAP74J63.js.map +1 -0
  13. package/dist/{chunk-P4LUYDRL.js → chunk-EOGTJQID.js} +2 -2
  14. package/dist/{chunk-QCNCNAZT.js → chunk-F5ARZZES.js} +4 -4
  15. package/dist/{chunk-AEMVCADI.js → chunk-GWKXYGUN.js} +2 -2
  16. package/dist/{chunk-D5HAVQME.js → chunk-JXFOFJYI.js} +2 -2
  17. package/dist/{chunk-GIF2V624.js → chunk-MFQB4LR5.js} +4 -4
  18. package/dist/{chunk-GKKXAO7O.js → chunk-PWPVYNGO.js} +3 -3
  19. package/dist/{chunk-FFLXJ5RU.js → chunk-RJMCV7OR.js} +13 -7
  20. package/dist/chunk-RJMCV7OR.js.map +1 -0
  21. package/dist/{chunk-HU3Q2FQK.js → chunk-UEBPMWKS.js} +2 -2
  22. package/dist/{chunk-T3RMAGAE.js → chunk-XD5NTTFJ.js} +2 -2
  23. package/dist/{chunk-YC33LHRB.js → chunk-ZADHMOME.js} +51 -13
  24. package/dist/{chunk-YC33LHRB.js.map → chunk-ZADHMOME.js.map} +1 -1
  25. package/dist/context-mention-palette/index.js +7 -7
  26. package/dist/i18n/index.d.ts +12 -6
  27. package/dist/i18n/index.js +2 -2
  28. package/dist/index.d.ts +13 -6
  29. package/dist/index.js +14 -14
  30. package/dist/mention-search.js +5 -5
  31. package/dist/workbench/contribution.js +3 -3
  32. package/dist/workbench/index.js +3 -3
  33. package/dist/workbench/sessionTitle.js +2 -2
  34. package/package.json +16 -16
  35. package/dist/chunk-FFLXJ5RU.js.map +0 -1
  36. package/dist/chunk-NTY3JIYS.js.map +0 -1
  37. /package/dist/{AgentRichTextReadonly-2BWVTYD3.js.map → AgentRichTextReadonly-YU6STDUX.js.map} +0 -0
  38. /package/dist/{chunk-JH6OERDW.js.map → chunk-3FA5JIDL.js.map} +0 -0
  39. /package/dist/{chunk-D7WWGXPJ.js.map → chunk-5ZO3H4C5.js.map} +0 -0
  40. /package/dist/{chunk-CTZPHYKU.js.map → chunk-7NUEEGAA.js.map} +0 -0
  41. /package/dist/{chunk-P4LUYDRL.js.map → chunk-EOGTJQID.js.map} +0 -0
  42. /package/dist/{chunk-QCNCNAZT.js.map → chunk-F5ARZZES.js.map} +0 -0
  43. /package/dist/{chunk-AEMVCADI.js.map → chunk-GWKXYGUN.js.map} +0 -0
  44. /package/dist/{chunk-D5HAVQME.js.map → chunk-JXFOFJYI.js.map} +0 -0
  45. /package/dist/{chunk-GIF2V624.js.map → chunk-MFQB4LR5.js.map} +0 -0
  46. /package/dist/{chunk-GKKXAO7O.js.map → chunk-PWPVYNGO.js.map} +0 -0
  47. /package/dist/{chunk-HU3Q2FQK.js.map → chunk-UEBPMWKS.js.map} +0 -0
  48. /package/dist/{chunk-T3RMAGAE.js.map → chunk-XD5NTTFJ.js.map} +0 -0
package/README.md CHANGED
@@ -180,6 +180,29 @@ The supported stable IDs are `meet-tutti`, `task-breakdown`, `quality-review`,
180
180
  `agent-interaction`, and `import-session`. Omitting `disabled` (or passing an
181
181
  empty array) renders all five entries.
182
182
 
183
+ ## Tutti Mode capability
184
+
185
+ Tutti Mode UI (empty-hero toggle, composer badge activation, `/tutti`) is a
186
+ host-gated product capability under
187
+ `hostCapabilities.capabilityMenuState.tuttiMode.enabled`.
188
+
189
+ Hosts must set `enabled: true` to show those controls. Omitting `tuttiMode` or
190
+ setting `enabled: false` fails closed — the same rule as other unsupported host
191
+ capabilities. External hosts that share AgentGUI for Codex/Claude/VM sessions
192
+ should keep Tutti Mode disabled unless they intentionally productize it, and
193
+ should also hide Tutti branding home chips via `disabled` (for example
194
+ `meet-tutti`).
195
+
196
+ ```tsx
197
+ <AgentGUI
198
+ disabled={["meet-tutti", "import-session"]}
199
+ hostCapabilities={{
200
+ capabilityMenuState: { tuttiMode: { enabled: false } }
201
+ }}
202
+ {...props}
203
+ />
204
+ ```
205
+
183
206
  ## Agent Directory
184
207
 
185
208
  `AgentGUI` requires the host's `/agents` projection through its `agents` prop.
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  AgentRichTextReadonly
3
- } from "./chunk-T3RMAGAE.js";
4
- import "./chunk-D5HAVQME.js";
3
+ } from "./chunk-XD5NTTFJ.js";
4
+ import "./chunk-JXFOFJYI.js";
5
5
  import "./chunk-3V5OCA2M.js";
6
6
  import "./chunk-FGLQZ6I4.js";
7
7
  import "./chunk-ZVYUTXQJ.js";
8
8
  import "./chunk-M6HTOCQK.js";
9
- import "./chunk-P4LUYDRL.js";
9
+ import "./chunk-EOGTJQID.js";
10
10
  import "./chunk-5BJYO6X3.js";
11
11
  import "./chunk-AFUVWWQY.js";
12
- import "./chunk-FFLXJ5RU.js";
12
+ import "./chunk-RJMCV7OR.js";
13
13
  import "./chunk-D2JUDUYY.js";
14
14
  import "./chunk-QNE2ZPPV.js";
15
15
  import "./chunk-O433KXLK.js";
16
16
  export {
17
17
  AgentRichTextReadonly
18
18
  };
19
- //# sourceMappingURL=AgentRichTextReadonly-2BWVTYD3.js.map
19
+ //# sourceMappingURL=AgentRichTextReadonly-YU6STDUX.js.map
@@ -7,25 +7,25 @@ import {
7
7
  reconcileProjectedAgentConversationVM,
8
8
  serializeAgentConversationForClipboard,
9
9
  useProjectedAgentConversation
10
- } from "../chunk-YC33LHRB.js";
11
- import "../chunk-T3RMAGAE.js";
10
+ } from "../chunk-ZADHMOME.js";
11
+ import "../chunk-XD5NTTFJ.js";
12
12
  import "../chunk-CXC3ROXQ.js";
13
13
  import "../chunk-XJ34OIEQ.js";
14
14
  import "../chunk-JDVP33S5.js";
15
- import "../chunk-D5HAVQME.js";
15
+ import "../chunk-JXFOFJYI.js";
16
16
  import "../chunk-3V5OCA2M.js";
17
17
  import "../chunk-FGLQZ6I4.js";
18
- import "../chunk-GKKXAO7O.js";
18
+ import "../chunk-PWPVYNGO.js";
19
19
  import "../chunk-ZVYUTXQJ.js";
20
- import "../chunk-JH6OERDW.js";
20
+ import "../chunk-3FA5JIDL.js";
21
21
  import "../chunk-F5UR6EJG.js";
22
22
  import "../chunk-M6HTOCQK.js";
23
23
  import {
24
24
  translate
25
- } from "../chunk-P4LUYDRL.js";
25
+ } from "../chunk-EOGTJQID.js";
26
26
  import "../chunk-5BJYO6X3.js";
27
27
  import "../chunk-AFUVWWQY.js";
28
- import "../chunk-FFLXJ5RU.js";
28
+ import "../chunk-RJMCV7OR.js";
29
29
  import "../chunk-MIJXEELH.js";
30
30
  import "../chunk-D2JUDUYY.js";
31
31
  import "../chunk-QNE2ZPPV.js";
@@ -499,6 +499,7 @@ interface AgentGUIAccountMenuState {
499
499
  onLogin(): void;
500
500
  onLogout?(): void;
501
501
  onSettings?(): void;
502
+ onCopyUserId?(): void | Promise<void>;
502
503
  onOpenExternal(url: string): void;
503
504
  }
504
505
 
package/dist/agent-gui.js CHANGED
@@ -1,43 +1,43 @@
1
1
  import {
2
2
  AgentGUI
3
- } from "./chunk-NTY3JIYS.js";
3
+ } from "./chunk-DAP74J63.js";
4
4
  import "./chunk-LB4AGT7B.js";
5
5
  import "./chunk-A4WCTHWS.js";
6
- import "./chunk-CTZPHYKU.js";
6
+ import "./chunk-7NUEEGAA.js";
7
7
  import "./chunk-KDN6SLJM.js";
8
8
  import "./chunk-4CHBM3G3.js";
9
9
  import "./chunk-CBMWHQ7P.js";
10
10
  import "./chunk-MGSRWYRN.js";
11
- import "./chunk-AEMVCADI.js";
12
- import "./chunk-YC33LHRB.js";
13
- import "./chunk-T3RMAGAE.js";
11
+ import "./chunk-GWKXYGUN.js";
12
+ import "./chunk-ZADHMOME.js";
13
+ import "./chunk-XD5NTTFJ.js";
14
14
  import "./chunk-CXC3ROXQ.js";
15
15
  import "./chunk-UP3ZDYTN.js";
16
16
  import "./chunk-GUFEHWUX.js";
17
- import "./chunk-D7WWGXPJ.js";
17
+ import "./chunk-5ZO3H4C5.js";
18
18
  import "./chunk-CX6XXG6R.js";
19
19
  import "./chunk-G7DS23D4.js";
20
- import "./chunk-QCNCNAZT.js";
20
+ import "./chunk-F5ARZZES.js";
21
21
  import "./chunk-VMPA46ET.js";
22
22
  import "./chunk-XJ34OIEQ.js";
23
23
  import "./chunk-JDVP33S5.js";
24
- import "./chunk-D5HAVQME.js";
24
+ import "./chunk-JXFOFJYI.js";
25
25
  import "./chunk-3V5OCA2M.js";
26
26
  import "./chunk-RMQREVJY.js";
27
27
  import "./chunk-FGLQZ6I4.js";
28
- import "./chunk-GIF2V624.js";
28
+ import "./chunk-MFQB4LR5.js";
29
29
  import "./chunk-EVQ4JY3N.js";
30
- import "./chunk-GKKXAO7O.js";
30
+ import "./chunk-PWPVYNGO.js";
31
31
  import "./chunk-ZVYUTXQJ.js";
32
- import "./chunk-HU3Q2FQK.js";
32
+ import "./chunk-UEBPMWKS.js";
33
33
  import "./chunk-YMXYBG7U.js";
34
- import "./chunk-JH6OERDW.js";
34
+ import "./chunk-3FA5JIDL.js";
35
35
  import "./chunk-F5UR6EJG.js";
36
36
  import "./chunk-M6HTOCQK.js";
37
- import "./chunk-P4LUYDRL.js";
37
+ import "./chunk-EOGTJQID.js";
38
38
  import "./chunk-5BJYO6X3.js";
39
39
  import "./chunk-AFUVWWQY.js";
40
- import "./chunk-FFLXJ5RU.js";
40
+ import "./chunk-RJMCV7OR.js";
41
41
  import "./chunk-MIJXEELH.js";
42
42
  import "./chunk-D2JUDUYY.js";
43
43
  import "./chunk-QNE2ZPPV.js";
@@ -8,7 +8,7 @@ import {
8
8
  isPromptRequestIdTitle,
9
9
  latestPlanTurnId,
10
10
  planImplementationPromptFromPlanTurn
11
- } from "../chunk-GIF2V624.js";
11
+ } from "../chunk-MFQB4LR5.js";
12
12
  import {
13
13
  useEngineSelector
14
14
  } from "../chunk-EVQ4JY3N.js";
@@ -21,20 +21,20 @@ import {
21
21
  isExitPlanSwitchModeInput,
22
22
  normalizeAgentApprovalPurpose,
23
23
  normalizeAskUserQuestions
24
- } from "../chunk-GKKXAO7O.js";
24
+ } from "../chunk-PWPVYNGO.js";
25
25
  import {
26
26
  cn
27
27
  } from "../chunk-ZVYUTXQJ.js";
28
28
  import {
29
29
  userAvatarPlaceholderUrl,
30
30
  workspaceAgentActivityStatusLabel
31
- } from "../chunk-HU3Q2FQK.js";
31
+ } from "../chunk-UEBPMWKS.js";
32
32
  import {
33
33
  resolveWorkspaceAgentSessionSortTimeUnixMs
34
34
  } from "../chunk-YMXYBG7U.js";
35
35
  import {
36
36
  workspaceAgentProviderLabel
37
- } from "../chunk-JH6OERDW.js";
37
+ } from "../chunk-3FA5JIDL.js";
38
38
  import "../chunk-F5UR6EJG.js";
39
39
  import {
40
40
  managedAgentRoundedIconUrl
@@ -43,10 +43,10 @@ import {
43
43
  AgentGuiI18nProvider,
44
44
  getActiveUiLanguage,
45
45
  useTranslation
46
- } from "../chunk-P4LUYDRL.js";
46
+ } from "../chunk-EOGTJQID.js";
47
47
  import "../chunk-5BJYO6X3.js";
48
48
  import "../chunk-AFUVWWQY.js";
49
- import "../chunk-FFLXJ5RU.js";
49
+ import "../chunk-RJMCV7OR.js";
50
50
  import {
51
51
  normalizeAgentTitleText
52
52
  } from "../chunk-MIJXEELH.js";
@@ -3175,6 +3175,70 @@ aside.workspace-agents-status-panel
3175
3175
  color: var(--agent-gui-text-primary, var(--text-primary));
3176
3176
  }
3177
3177
 
3178
+ .agent-gui-chrome__composer-disclosure {
3179
+ display: grid;
3180
+ min-width: 0;
3181
+ }
3182
+
3183
+ .agent-gui-chrome__composer-disclosure-panel {
3184
+ box-sizing: border-box;
3185
+ max-height: min(52vh, 520px);
3186
+ overflow: auto;
3187
+ border: 1px solid var(--agent-gui-border-subtle, var(--line-2));
3188
+ border-bottom: 0;
3189
+ border-radius: 12px 12px 0 0;
3190
+ padding: 12px;
3191
+ background: var(--agent-gui-surface-strong, var(--background-panel));
3192
+ pointer-events: auto;
3193
+ }
3194
+
3195
+ .agent-gui-chrome__composer-disclosure[data-expanded="true"]
3196
+ .agent-gui-chrome__composer-disclosure-banner {
3197
+ border-top-left-radius: 0;
3198
+ border-top-right-radius: 0;
3199
+ }
3200
+
3201
+ .agent-gui-chrome__composer-disclosure-banner {
3202
+ grid-template-columns: minmax(0, 1fr) auto;
3203
+ gap: 4px;
3204
+ }
3205
+
3206
+ .agent-gui-chrome__composer-disclosure-trigger {
3207
+ display: flex;
3208
+ min-width: 0;
3209
+ align-items: center;
3210
+ gap: 8px;
3211
+ border: 0;
3212
+ padding: 0;
3213
+ background: transparent;
3214
+ color: var(--agent-gui-text-secondary, var(--text-secondary));
3215
+ text-align: left;
3216
+ cursor: pointer;
3217
+ }
3218
+
3219
+ .agent-gui-chrome__composer-disclosure-trigger:focus-visible {
3220
+ border-radius: 6px;
3221
+ outline: 2px solid color-mix(in srgb, var(--tutti-purple) 62%, transparent);
3222
+ outline-offset: 2px;
3223
+ }
3224
+
3225
+ .agent-gui-chrome__composer-disclosure-chevron {
3226
+ width: 14px;
3227
+ height: 14px;
3228
+ flex: 0 0 auto;
3229
+ transition: transform 160ms ease;
3230
+ }
3231
+
3232
+ .agent-gui-chrome__composer-disclosure-chevron--expanded {
3233
+ transform: rotate(180deg);
3234
+ }
3235
+
3236
+ @media (prefers-reduced-motion: reduce) {
3237
+ .agent-gui-chrome__composer-disclosure-chevron {
3238
+ transition: none;
3239
+ }
3240
+ }
3241
+
3178
3242
  .agent-gui-chrome__goal-edit-input {
3179
3243
  min-width: 0;
3180
3244
  flex: 1 1 auto;
@@ -7783,6 +7847,7 @@ button.agent-gui-node__conversation-section-toggle:hover
7783
7847
  max-height: var(--agent-gui-composer-input-max-height, 110px);
7784
7848
  align-items: end;
7785
7849
  align-self: end;
7850
+ contain: layout;
7786
7851
  overflow: hidden;
7787
7852
  padding: 0 12px;
7788
7853
  border: 1px solid var(--line-2);
@@ -8706,7 +8771,7 @@ html[data-theme="light"] [data-message-center-item-id].agent-gui-edge-glow {
8706
8771
  p:not(.agent-rich-text-placeholder-node):not(:empty) {
8707
8772
  position: relative;
8708
8773
  top: 0;
8709
- line-height: 20px;
8774
+ line-height: var(--agent-gui-composer-text-line-height);
8710
8775
  }
8711
8776
 
8712
8777
  .agent-gui-node__composer-textarea
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  translate
3
- } from "./chunk-P4LUYDRL.js";
3
+ } from "./chunk-EOGTJQID.js";
4
4
  import {
5
5
  agentGUIProviderIdentityDisplayName,
6
6
  resolveMigratedAgentGUIProviderIdentity
@@ -213,4 +213,4 @@ export {
213
213
  getOptionalAgentHostApi,
214
214
  workspaceAgentProviderLabel
215
215
  };
216
- //# sourceMappingURL=chunk-JH6OERDW.js.map
216
+ //# sourceMappingURL=chunk-3FA5JIDL.js.map
@@ -5,7 +5,7 @@ import {
5
5
  agentMentionFilterLabel,
6
6
  agentMentionGroupLabel,
7
7
  mentionGroupExpandCount
8
- } from "./chunk-QCNCNAZT.js";
8
+ } from "./chunk-F5ARZZES.js";
9
9
  import {
10
10
  resolveAgentMentionFileThumbnailUrl,
11
11
  resolveAgentMentionFileVisualKind
@@ -13,13 +13,13 @@ import {
13
13
  import {
14
14
  userAvatarPlaceholderUrl,
15
15
  workspaceAgentActivityStatusLabel
16
- } from "./chunk-HU3Q2FQK.js";
16
+ } from "./chunk-UEBPMWKS.js";
17
17
  import {
18
18
  managedAgentRoundedIconUrl
19
19
  } from "./chunk-M6HTOCQK.js";
20
20
  import {
21
21
  translate
22
- } from "./chunk-P4LUYDRL.js";
22
+ } from "./chunk-EOGTJQID.js";
23
23
 
24
24
  // agent-gui/agentGuiNode/AgentFileMentionPalette.tsx
25
25
  import {
@@ -517,4 +517,4 @@ export {
517
517
  AgentFileMentionPalette,
518
518
  AgentContextMentionPalette
519
519
  };
520
- //# sourceMappingURL=chunk-D7WWGXPJ.js.map
520
+ //# sourceMappingURL=chunk-5ZO3H4C5.js.map
@@ -20,7 +20,7 @@ import {
20
20
  resolveAgentGUIConversationTitleDisplayPrompt,
21
21
  resolveAgentGuiWorkbenchHeaderTitle,
22
22
  resolveAgentGuiWorkbenchSessionTitle
23
- } from "./chunk-AEMVCADI.js";
23
+ } from "./chunk-GWKXYGUN.js";
24
24
  import {
25
25
  normalizeAgentGUIAgents,
26
26
  projectAgentGUIAgentsToTargets
@@ -400,7 +400,7 @@ function stopPointerPropagation(event) {
400
400
 
401
401
  // workbench/header.ts
402
402
  var LazyAgentRichTextReadonly = lazy(
403
- () => import("./AgentRichTextReadonly-2BWVTYD3.js").then((module) => ({
403
+ () => import("./AgentRichTextReadonly-YU6STDUX.js").then((module) => ({
404
404
  default: module.AgentRichTextReadonly
405
405
  }))
406
406
  );
@@ -1665,4 +1665,4 @@ export {
1665
1665
  AGENT_GUI_WORKBENCH_OPEN_EXTERNAL_IMPORT_EVENT,
1666
1666
  createAgentGuiWorkbenchContribution
1667
1667
  };
1668
- //# sourceMappingURL=chunk-CTZPHYKU.js.map
1668
+ //# sourceMappingURL=chunk-7NUEEGAA.js.map