@tutti-os/agent-gui 0.0.4 → 0.0.5

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 (50) hide show
  1. package/dist/agent-message-center/index.js +3 -2
  2. package/dist/agent-message-center/index.js.map +1 -1
  3. package/dist/app/renderer/agentactivity.css +7 -0
  4. package/dist/app/renderer/assets/icons/arrow-left-filled.svg +1 -0
  5. package/dist/{chunk-RORLLV27.js → chunk-3735XYFZ.js} +2 -40
  6. package/dist/chunk-3735XYFZ.js.map +1 -0
  7. package/dist/{chunk-IVPB4MLI.js → chunk-6AZ2KF6R.js} +1 -1
  8. package/dist/chunk-6AZ2KF6R.js.map +1 -0
  9. package/dist/{chunk-UKQIGNN3.js → chunk-7ICAFTA2.js} +2 -2
  10. package/dist/{chunk-HSR5DI6O.js → chunk-BHCCGKOP.js} +3 -1
  11. package/dist/chunk-BHCCGKOP.js.map +1 -0
  12. package/dist/{chunk-ZX5PDYAS.js → chunk-C63Z2JWT.js} +8 -10
  13. package/dist/chunk-C63Z2JWT.js.map +1 -0
  14. package/dist/chunk-F55LU7IJ.js +3470 -0
  15. package/dist/chunk-F55LU7IJ.js.map +1 -0
  16. package/dist/{chunk-ZP7P7DYO.js → chunk-GEXHKJK5.js} +6 -47
  17. package/dist/chunk-GEXHKJK5.js.map +1 -0
  18. package/dist/{chunk-UJWUGMWC.js → chunk-GYG57VTA.js} +17 -32
  19. package/dist/{chunk-UJWUGMWC.js.map → chunk-GYG57VTA.js.map} +1 -1
  20. package/dist/{chunk-BABBC24I.js → chunk-LUGELG5V.js} +4 -1
  21. package/dist/chunk-LUGELG5V.js.map +1 -0
  22. package/dist/chunk-ZU3FKYMG.js +47 -0
  23. package/dist/chunk-ZU3FKYMG.js.map +1 -0
  24. package/dist/i18n/index.d.ts +2 -0
  25. package/dist/i18n/index.js +1 -1
  26. package/dist/index.d.ts +2 -11
  27. package/dist/index.js +120 -28
  28. package/dist/index.js.map +1 -1
  29. package/dist/mention-file-presentation.d.ts +2 -1
  30. package/dist/mention-file-presentation.js +1 -1
  31. package/dist/workbench/contribution.js +6 -5
  32. package/dist/workbench/index.d.ts +1 -1
  33. package/dist/workbench/index.js +6 -5
  34. package/dist/workbench/launch.d.ts +1 -7
  35. package/dist/workbench/launch.js +2 -2
  36. package/dist/workbench/state.js +1 -1
  37. package/dist/workbench/types.d.ts +1 -12
  38. package/dist/workbench/types.js +1 -1
  39. package/dist/workspace-agent-generated-files.js +2 -2
  40. package/package.json +10 -10
  41. package/dist/chunk-5Q36BEUM.js +0 -3478
  42. package/dist/chunk-5Q36BEUM.js.map +0 -1
  43. package/dist/chunk-BABBC24I.js.map +0 -1
  44. package/dist/chunk-HSR5DI6O.js.map +0 -1
  45. package/dist/chunk-IVPB4MLI.js.map +0 -1
  46. package/dist/chunk-RORLLV27.js.map +0 -1
  47. package/dist/chunk-ZP7P7DYO.js.map +0 -1
  48. package/dist/chunk-ZX5PDYAS.js.map +0 -1
  49. package/dist/user-avatar-placeholder-WP2373TS.png +0 -0
  50. /package/dist/{chunk-UKQIGNN3.js.map → chunk-7ICAFTA2.js.map} +0 -0
@@ -2256,6 +2256,13 @@ aside.workspace-agents-status-panel
2256
2256
  -webkit-mask-image: url("./assets/icons/doc-filled.svg");
2257
2257
  }
2258
2258
 
2259
+ [data-agent-file-mention="true"][data-agent-mention-kind="file"][data-agent-file-visual-kind="back"]
2260
+ .agent-gui-node__mention-file-icon {
2261
+ background-color: var(--text-secondary);
2262
+ mask-image: url("./assets/icons/arrow-left-filled.svg");
2263
+ -webkit-mask-image: url("./assets/icons/arrow-left-filled.svg");
2264
+ }
2265
+
2259
2266
  .agent-gui-chrome__session-chrome {
2260
2267
  display: grid;
2261
2268
  justify-self: stretch;
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" viewBox="0 0 24 24"><path fill="#000" d="M14.293 5.293a3 3 0 0 1 0 4.243L10.414 12l3.879 3.464a3 3 0 1 1-4 4.464l-6-5.354a3 3 0 0 1 0-4.464l6-5.354a3 3 0 0 1 4 0"/></svg>
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-22L4VWUR.js";
5
5
  import {
6
6
  agentGuiWorkbenchOpenSessionActivationType
7
- } from "./chunk-IVPB4MLI.js";
7
+ } from "./chunk-6AZ2KF6R.js";
8
8
 
9
9
  // workbench/launch.ts
10
10
  var agentGuiWorkbenchTypeId = "agent-gui";
@@ -24,12 +24,6 @@ function createAgentGuiWorkbenchInstanceId(input) {
24
24
  agentSessionId
25
25
  )}`;
26
26
  }
27
- const handoffRequestId = input.pendingHandoff?.requestId?.trim();
28
- if (handoffRequestId) {
29
- return `${prefix}:handoff:${encodeAgentGuiWorkbenchInstanceSegment(
30
- handoffRequestId
31
- )}`;
32
- }
33
27
  agentGuiWorkbenchInstanceSequence += 1;
34
28
  return [
35
29
  prefix,
@@ -61,7 +55,6 @@ function createAgentGuiWorkbenchSessionLaunchRequest(input) {
61
55
  dockEntryId: agentGuiWorkbenchDockEntryId(provider),
62
56
  payload: {
63
57
  ...input.agentSessionId ? { agentSessionId: input.agentSessionId } : {},
64
- ...input.pendingHandoff ? { pendingHandoff: input.pendingHandoff } : {},
65
58
  provider
66
59
  },
67
60
  reason: "host",
@@ -71,10 +64,8 @@ function createAgentGuiWorkbenchSessionLaunchRequest(input) {
71
64
  function createAgentGuiWorkbenchLaunchDescriptor(request) {
72
65
  const provider = agentGuiWorkbenchProviderFromLaunchRequest(request);
73
66
  const targetAgentSessionId = agentSessionIdFromLaunchPayload(request.payload);
74
- const pendingHandoff = pendingHandoffFromLaunchPayload(request.payload);
75
67
  const instanceId = createAgentGuiWorkbenchInstanceId({
76
68
  agentSessionId: targetAgentSessionId,
77
- pendingHandoff,
78
69
  provider
79
70
  });
80
71
  return {
@@ -86,7 +77,6 @@ function createAgentGuiWorkbenchLaunchDescriptor(request) {
86
77
  } : null,
87
78
  dockEntryId: request.dockEntryId ?? agentGuiWorkbenchDockEntryId(provider),
88
79
  instanceId,
89
- pendingHandoff,
90
80
  provider,
91
81
  reuseDockEntryNode: Boolean(targetAgentSessionId),
92
82
  targetAgentSessionId
@@ -102,34 +92,6 @@ function agentSessionIdFromLaunchPayload(payload) {
102
92
  const agentSessionId = payload.agentSessionId;
103
93
  return typeof agentSessionId === "string" && agentSessionId.trim() ? agentSessionId.trim() : null;
104
94
  }
105
- function pendingHandoffFromLaunchPayload(payload) {
106
- if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
107
- return null;
108
- }
109
- const pendingHandoff = payload.pendingHandoff;
110
- if (!pendingHandoff || typeof pendingHandoff !== "object" || Array.isArray(pendingHandoff)) {
111
- return null;
112
- }
113
- const requestId = pendingHandoff.requestId;
114
- const prompt = pendingHandoff.prompt;
115
- const title = pendingHandoff.title;
116
- const taskTitle = pendingHandoff.taskTitle;
117
- if (typeof requestId !== "string" || typeof prompt !== "string" || typeof title !== "string" || typeof taskTitle !== "string") {
118
- return null;
119
- }
120
- const issueId = pendingHandoff.issueId;
121
- const issueTitle = pendingHandoff.issueTitle;
122
- const taskId = pendingHandoff.taskId;
123
- return {
124
- issueId: typeof issueId === "string" ? issueId : null,
125
- issueTitle: typeof issueTitle === "string" ? issueTitle : null,
126
- prompt,
127
- requestId,
128
- taskId: typeof taskId === "string" ? taskId : null,
129
- taskTitle,
130
- title
131
- };
132
- }
133
95
 
134
96
  export {
135
97
  agentGuiWorkbenchTypeId,
@@ -141,4 +103,4 @@ export {
141
103
  createAgentGuiWorkbenchSessionLaunchRequest,
142
104
  createAgentGuiWorkbenchLaunchDescriptor
143
105
  };
144
- //# sourceMappingURL=chunk-RORLLV27.js.map
106
+ //# sourceMappingURL=chunk-3735XYFZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../workbench/launch.ts"],"sourcesContent":["import type { WorkbenchHostLaunchRequest } from \"@tutti-os/workbench-surface\";\nimport {\n isAgentGuiWorkbenchProvider,\n normalizeAgentGuiWorkbenchProvider\n} from \"./providerCatalog.ts\";\nimport {\n agentGuiWorkbenchOpenSessionActivationType,\n type AgentGuiWorkbenchProvider\n} from \"./types.ts\";\n\ntype AgentGuiWorkbenchLaunchRequestInput = Pick<\n WorkbenchHostLaunchRequest,\n \"payload\" | \"typeId\"\n> & {\n dockEntryId?: string | null;\n};\n\nexport const agentGuiWorkbenchTypeId = \"agent-gui\";\n\nconst agentGuiWorkbenchDockEntryPrefix = \"agent-gui:\";\nlet agentGuiWorkbenchInstanceSequence = 0;\n\nexport function agentGuiWorkbenchDockEntryId(\n provider: AgentGuiWorkbenchProvider\n): string {\n return provider === \"codex\"\n ? agentGuiWorkbenchTypeId\n : `${agentGuiWorkbenchDockEntryPrefix}${provider}`;\n}\n\nexport function agentGuiWorkbenchInstanceId(\n provider: AgentGuiWorkbenchProvider\n): string {\n return `${agentGuiWorkbenchDockEntryPrefix}${provider}`;\n}\n\nexport function createAgentGuiWorkbenchInstanceId(input: {\n agentSessionId?: string | null;\n provider: AgentGuiWorkbenchProvider;\n}): string {\n const prefix = agentGuiWorkbenchInstanceId(input.provider);\n const agentSessionId = input.agentSessionId?.trim();\n if (agentSessionId) {\n return `${prefix}:session:${encodeAgentGuiWorkbenchInstanceSegment(\n agentSessionId\n )}`;\n }\n\n agentGuiWorkbenchInstanceSequence += 1;\n return [\n prefix,\n \"panel\",\n `${Date.now().toString(36)}-${agentGuiWorkbenchInstanceSequence.toString(36)}`\n ].join(\":\");\n}\n\nexport function agentGuiWorkbenchProviderFromIdentifier(\n value: string | null | undefined\n): AgentGuiWorkbenchProvider | null {\n const normalized = value?.trim();\n if (!normalized || normalized === agentGuiWorkbenchTypeId) {\n return normalized === agentGuiWorkbenchTypeId ? \"codex\" : null;\n }\n if (!normalized.startsWith(agentGuiWorkbenchDockEntryPrefix)) {\n return null;\n }\n const provider = normalized\n .slice(agentGuiWorkbenchDockEntryPrefix.length)\n .split(\":\", 1)[0];\n return isAgentGuiWorkbenchProvider(provider) ? provider : null;\n}\n\nexport function agentGuiWorkbenchProviderFromLaunchRequest(\n request: AgentGuiWorkbenchLaunchRequestInput\n): AgentGuiWorkbenchProvider {\n const payloadProvider =\n request.payload &&\n typeof request.payload === \"object\" &&\n !Array.isArray(request.payload)\n ? (request.payload as { provider?: unknown }).provider\n : null;\n if (isAgentGuiWorkbenchProvider(payloadProvider)) {\n return payloadProvider;\n }\n return (\n agentGuiWorkbenchProviderFromIdentifier(request.dockEntryId) ??\n agentGuiWorkbenchProviderFromIdentifier(request.typeId) ??\n \"codex\"\n );\n}\n\nexport function createAgentGuiWorkbenchSessionLaunchRequest(input: {\n agentSessionId?: string;\n provider: unknown;\n}) {\n const provider = normalizeAgentGuiWorkbenchProvider(input.provider);\n return {\n dockEntryId: agentGuiWorkbenchDockEntryId(provider),\n payload: {\n ...(input.agentSessionId ? { agentSessionId: input.agentSessionId } : {}),\n provider\n },\n reason: \"host\" as const,\n typeId: agentGuiWorkbenchTypeId\n };\n}\n\nexport interface AgentGuiWorkbenchLaunchDescriptor {\n activation: {\n payload: {\n agentSessionId: string;\n };\n type: typeof agentGuiWorkbenchOpenSessionActivationType;\n } | null;\n dockEntryId: string;\n instanceId: string;\n provider: AgentGuiWorkbenchProvider;\n reuseDockEntryNode: boolean;\n targetAgentSessionId: string | null;\n}\n\nexport function createAgentGuiWorkbenchLaunchDescriptor(\n request: AgentGuiWorkbenchLaunchRequestInput\n): AgentGuiWorkbenchLaunchDescriptor {\n const provider = agentGuiWorkbenchProviderFromLaunchRequest(request);\n const targetAgentSessionId = agentSessionIdFromLaunchPayload(request.payload);\n const instanceId = createAgentGuiWorkbenchInstanceId({\n agentSessionId: targetAgentSessionId,\n provider\n });\n\n return {\n activation: targetAgentSessionId\n ? {\n payload: {\n agentSessionId: targetAgentSessionId\n },\n type: agentGuiWorkbenchOpenSessionActivationType\n }\n : null,\n dockEntryId: request.dockEntryId ?? agentGuiWorkbenchDockEntryId(provider),\n instanceId,\n provider,\n reuseDockEntryNode: Boolean(targetAgentSessionId),\n targetAgentSessionId\n };\n}\n\nfunction encodeAgentGuiWorkbenchInstanceSegment(value: string): string {\n return encodeURIComponent(value.trim());\n}\n\nfunction agentSessionIdFromLaunchPayload(payload: unknown): string | null {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return null;\n }\n const agentSessionId = (payload as { agentSessionId?: unknown })\n .agentSessionId;\n return typeof agentSessionId === \"string\" && agentSessionId.trim()\n ? agentSessionId.trim()\n : null;\n}\n"],"mappings":";;;;;;;;;AAiBO,IAAM,0BAA0B;AAEvC,IAAM,mCAAmC;AACzC,IAAI,oCAAoC;AAEjC,SAAS,6BACd,UACQ;AACR,SAAO,aAAa,UAChB,0BACA,GAAG,gCAAgC,GAAG,QAAQ;AACpD;AAEO,SAAS,4BACd,UACQ;AACR,SAAO,GAAG,gCAAgC,GAAG,QAAQ;AACvD;AAEO,SAAS,kCAAkC,OAGvC;AACT,QAAM,SAAS,4BAA4B,MAAM,QAAQ;AACzD,QAAM,iBAAiB,MAAM,gBAAgB,KAAK;AAClD,MAAI,gBAAgB;AAClB,WAAO,GAAG,MAAM,YAAY;AAAA,MAC1B;AAAA,IACF,CAAC;AAAA,EACH;AAEA,uCAAqC;AACrC,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,GAAG,KAAK,IAAI,EAAE,SAAS,EAAE,CAAC,IAAI,kCAAkC,SAAS,EAAE,CAAC;AAAA,EAC9E,EAAE,KAAK,GAAG;AACZ;AAEO,SAAS,wCACd,OACkC;AAClC,QAAM,aAAa,OAAO,KAAK;AAC/B,MAAI,CAAC,cAAc,eAAe,yBAAyB;AACzD,WAAO,eAAe,0BAA0B,UAAU;AAAA,EAC5D;AACA,MAAI,CAAC,WAAW,WAAW,gCAAgC,GAAG;AAC5D,WAAO;AAAA,EACT;AACA,QAAM,WAAW,WACd,MAAM,iCAAiC,MAAM,EAC7C,MAAM,KAAK,CAAC,EAAE,CAAC;AAClB,SAAO,4BAA4B,QAAQ,IAAI,WAAW;AAC5D;AAEO,SAAS,2CACd,SAC2B;AAC3B,QAAM,kBACJ,QAAQ,WACR,OAAO,QAAQ,YAAY,YAC3B,CAAC,MAAM,QAAQ,QAAQ,OAAO,IACzB,QAAQ,QAAmC,WAC5C;AACN,MAAI,4BAA4B,eAAe,GAAG;AAChD,WAAO;AAAA,EACT;AACA,SACE,wCAAwC,QAAQ,WAAW,KAC3D,wCAAwC,QAAQ,MAAM,KACtD;AAEJ;AAEO,SAAS,4CAA4C,OAGzD;AACD,QAAM,WAAW,mCAAmC,MAAM,QAAQ;AAClE,SAAO;AAAA,IACL,aAAa,6BAA6B,QAAQ;AAAA,IAClD,SAAS;AAAA,MACP,GAAI,MAAM,iBAAiB,EAAE,gBAAgB,MAAM,eAAe,IAAI,CAAC;AAAA,MACvE;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,IACR,QAAQ;AAAA,EACV;AACF;AAgBO,SAAS,wCACd,SACmC;AACnC,QAAM,WAAW,2CAA2C,OAAO;AACnE,QAAM,uBAAuB,gCAAgC,QAAQ,OAAO;AAC5E,QAAM,aAAa,kCAAkC;AAAA,IACnD,gBAAgB;AAAA,IAChB;AAAA,EACF,CAAC;AAED,SAAO;AAAA,IACL,YAAY,uBACR;AAAA,MACE,SAAS;AAAA,QACP,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM;AAAA,IACR,IACA;AAAA,IACJ,aAAa,QAAQ,eAAe,6BAA6B,QAAQ;AAAA,IACzE;AAAA,IACA;AAAA,IACA,oBAAoB,QAAQ,oBAAoB;AAAA,IAChD;AAAA,EACF;AACF;AAEA,SAAS,uCAAuC,OAAuB;AACrE,SAAO,mBAAmB,MAAM,KAAK,CAAC;AACxC;AAEA,SAAS,gCAAgC,SAAiC;AACxE,MAAI,CAAC,WAAW,OAAO,YAAY,YAAY,MAAM,QAAQ,OAAO,GAAG;AACrE,WAAO;AAAA,EACT;AACA,QAAM,iBAAkB,QACrB;AACH,SAAO,OAAO,mBAAmB,YAAY,eAAe,KAAK,IAC7D,eAAe,KAAK,IACpB;AACN;","names":[]}
@@ -4,4 +4,4 @@ var agentGuiWorkbenchOpenSessionActivationType = "agent-gui:open-session";
4
4
  export {
5
5
  agentGuiWorkbenchOpenSessionActivationType
6
6
  };
7
- //# sourceMappingURL=chunk-IVPB4MLI.js.map
7
+ //# sourceMappingURL=chunk-6AZ2KF6R.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../workbench/types.ts"],"sourcesContent":["export type AgentGuiWorkbenchProvider =\n | \"claude-code\"\n | \"codex\"\n | \"nexight\"\n | \"gemini\"\n | \"hermes\"\n | \"openclaw\";\n\nexport const agentGuiWorkbenchOpenSessionActivationType =\n \"agent-gui:open-session\";\n\nexport interface AgentGuiWorkbenchComposerOverrides {\n model?: string | null;\n permissionModeId?: string | null;\n planMode?: boolean;\n reasoningEffort?: string | null;\n}\n\nexport type AgentGuiWorkbenchComposerOverridesByProvider = Partial<\n Record<AgentGuiWorkbenchProvider, AgentGuiWorkbenchComposerOverrides | null>\n>;\n\nexport interface AgentGuiWorkbenchNodeState {\n composerOverrides?: AgentGuiWorkbenchComposerOverrides | null;\n composerOverridesByProvider?: AgentGuiWorkbenchComposerOverridesByProvider | null;\n conversationCount?: number | null;\n conversationRailCollapsed?: boolean | null;\n conversationRailWidthPx?: number | null;\n lastActiveAgentSessionId: string | null;\n lastActiveConversationTitle?: string | null;\n provider: AgentGuiWorkbenchProvider;\n}\n\nexport interface AgentGuiWorkbenchState {\n composerOverrides?: AgentGuiWorkbenchComposerOverrides | null;\n composerOverridesByProvider?: AgentGuiWorkbenchComposerOverridesByProvider | null;\n conversationRailCollapsed?: boolean | null;\n conversationRailWidthPx?: number | null;\n lastActiveAgentSessionId: string | null;\n lastActiveConversationTitle?: string | null;\n}\n\nexport interface AgentGuiWorkbenchWorkspaceState {\n workspaceId: string;\n}\n"],"mappings":";AAQO,IAAM,6CACX;","names":[]}
@@ -8,7 +8,7 @@ import {
8
8
  import {
9
9
  translate,
10
10
  translateInUiLanguage
11
- } from "./chunk-HSR5DI6O.js";
11
+ } from "./chunk-BHCCGKOP.js";
12
12
 
13
13
  // shared/workspaceAgentStatusNormalizer.ts
14
14
  var FAILED_STATUS_TOKENS = /* @__PURE__ */ new Set(["failed", "error"]);
@@ -918,4 +918,4 @@ export {
918
918
  resolveWorkspaceAgentActivityStatus,
919
919
  resolveWorkspaceAgentActivityTitle
920
920
  };
921
- //# sourceMappingURL=chunk-UKQIGNN3.js.map
921
+ //# sourceMappingURL=chunk-7ICAFTA2.js.map
@@ -1583,6 +1583,7 @@ var en = {
1583
1583
  taskCompletedCount: "{{count}} completed",
1584
1584
  issueStatusNotStarted: "To run",
1585
1585
  issueStatusRunning: "Running",
1586
+ issueStatusInProgress: "Progress started",
1586
1587
  issueStatusPendingAcceptance: "Pending acceptance",
1587
1588
  issueStatusCompleted: "Completed",
1588
1589
  issueStatusFailed: "Failed",
@@ -3871,6 +3872,7 @@ var zhCN = {
3871
3872
  taskCompletedCount: "{{count}} \u4E2A\u5DF2\u5B8C\u6210",
3872
3873
  issueStatusNotStarted: "\u672A\u542F\u52A8",
3873
3874
  issueStatusRunning: "\u6267\u884C\u4E2D",
3875
+ issueStatusInProgress: "\u5DF2\u63A8\u8FDB",
3874
3876
  issueStatusPendingAcceptance: "\u5F85\u9A8C\u6536",
3875
3877
  issueStatusCompleted: "\u5DF2\u5B8C\u6210",
3876
3878
  issueStatusFailed: "\u5931\u8D25",
@@ -4692,4 +4694,4 @@ export {
4692
4694
  AgentGuiI18nProvider,
4693
4695
  useTranslation
4694
4696
  };
4695
- //# sourceMappingURL=chunk-HSR5DI6O.js.map
4697
+ //# sourceMappingURL=chunk-BHCCGKOP.js.map