@tutti-os/agent-gui 0.0.132 → 0.0.134
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/README.md +21 -4
- package/dist/{AgentRichTextReadonly-PEKCMRPE.js → AgentRichTextReadonly-HCKTNAYO.js} +7 -6
- package/dist/agent-conversation/index.d.ts +4 -6
- package/dist/agent-conversation/index.js +10 -10
- package/dist/agent-env/index.d.ts +10 -27
- package/dist/agent-env/index.js +14 -290
- package/dist/agent-env/index.js.map +1 -1
- package/dist/agent-gui.d.ts +1118 -20
- package/dist/agent-gui.js +18 -18
- package/dist/agent-message-center/index.d.ts +42 -7
- package/dist/agent-message-center/index.js +7 -7
- package/dist/{agentConversationVM-BD0-gg6C.d.ts → agentConversationVM-DWEy7jzx.d.ts} +41 -2
- package/dist/{agentFileMentionContracts-CWAeuL7S.d.ts → agentFileMentionContracts-B0yQizXB.d.ts} +5 -0
- package/dist/{agentGuiNodeTypes-5TL1hyCN.d.ts → agentGuiNodeTypes-DV7KvZRe.d.ts} +10 -26
- package/dist/agents.d.ts +1 -1
- package/dist/agents.js +1 -1
- package/dist/app/renderer/agentactivity.css +7 -0
- package/dist/app/renderer/assets/icons/@-lined.svg +1 -8
- package/dist/{chunk-PQJXWXTS.js → chunk-25VMCMAQ.js} +4 -4
- package/dist/{chunk-T2NICA5D.js → chunk-5WOCGIXJ.js} +7 -1
- package/dist/chunk-5WOCGIXJ.js.map +1 -0
- package/dist/chunk-DLCZJKCA.js +1 -0
- package/dist/chunk-DLCZJKCA.js.map +1 -0
- package/dist/{chunk-QQRTUHCH.js → chunk-EU7DCT4F.js} +2 -2
- package/dist/chunk-FM42UN2J.js +462 -0
- package/dist/chunk-FM42UN2J.js.map +1 -0
- package/dist/{chunk-SZOTLVH6.js → chunk-GIYGO2PB.js} +2 -2
- package/dist/{chunk-GCQYN7BR.js → chunk-IN3HXYOO.js} +4 -4
- package/dist/{chunk-YWHGCKMT.js → chunk-IYZ4GOSN.js} +10 -10
- package/dist/chunk-IYZ4GOSN.js.map +1 -0
- package/dist/{chunk-JZS4SWFJ.js → chunk-JI5KND3K.js} +60 -56
- package/dist/chunk-JI5KND3K.js.map +1 -0
- package/dist/{chunk-J4TTEMRW.js → chunk-KWGMK4IZ.js} +4 -4
- package/dist/{chunk-NE6H7S5Z.js → chunk-OFJNIQWR.js} +2 -2
- package/dist/{chunk-NE6H7S5Z.js.map → chunk-OFJNIQWR.js.map} +1 -1
- package/dist/{chunk-UARZZJJB.js → chunk-OI6BYC7P.js} +4 -4
- package/dist/{chunk-OBWM2RFE.js → chunk-QPEO4OQS.js} +308 -8
- package/dist/chunk-QPEO4OQS.js.map +1 -0
- package/dist/{chunk-XNE2ROCP.js → chunk-UA75CGAG.js} +3 -3
- package/dist/{chunk-PVTAFUDS.js → chunk-VGS7S7YT.js} +2 -2
- package/dist/{chunk-OQR3HXPF.js → chunk-VUNVGEQG.js} +7 -1
- package/dist/chunk-VUNVGEQG.js.map +1 -0
- package/dist/{chunk-G75CPIVV.js → chunk-Y5HD6XHP.js} +1040 -797
- package/dist/chunk-Y5HD6XHP.js.map +1 -0
- package/dist/{chunk-KPMQGPYU.js → chunk-ZVYUTXQJ.js} +1 -1
- package/dist/chunk-ZVYUTXQJ.js.map +1 -0
- package/dist/context-mention-palette/index.d.ts +1 -1
- package/dist/context-mention-palette/index.js +8 -7
- package/dist/{contribution-yc4CGJmy.d.ts → contribution-CDdwTppn.d.ts} +54 -1
- package/dist/custom-mention.d.ts +4 -2
- package/dist/custom-mention.js +1 -0
- package/dist/i18n/index.d.ts +17 -6
- package/dist/i18n/index.js +2 -2
- package/dist/index.d.ts +8026 -33
- package/dist/index.js +21 -21
- package/dist/index.js.map +1 -1
- package/dist/mention-search.d.ts +1 -1
- package/dist/mention-search.js +6 -5
- package/dist/runtime-Dwf44VKc.d.ts +7 -0
- package/dist/{types-BicfRVrV.d.ts → types-ee3zJ6Cc.d.ts} +6 -5
- package/dist/workbench/browser-element-context/index.d.ts +37 -0
- package/dist/workbench/browser-element-context/index.js +750 -0
- package/dist/workbench/browser-element-context/index.js.map +1 -0
- package/dist/workbench/contribution.d.ts +1 -2
- package/dist/workbench/contribution.js +4 -4
- package/dist/workbench/index.d.ts +1 -2
- package/dist/workbench/index.js +4 -4
- package/dist/workbench/sessionTitle.js +2 -2
- package/dist/workbench/tool-sidebar/index.d.ts +189 -0
- package/dist/workbench/tool-sidebar/index.js +1492 -0
- package/dist/workbench/tool-sidebar/index.js.map +1 -0
- package/dist/workspace-agent-generated-files.d.ts +12 -1
- package/package.json +28 -13
- package/dist/AgentGUI-DxypmD7b.d.ts +0 -1080
- package/dist/agentPlanPromptDispatch-C7cCMjve.d.ts +0 -37
- package/dist/chunk-G75CPIVV.js.map +0 -1
- package/dist/chunk-JZS4SWFJ.js.map +0 -1
- package/dist/chunk-KPMQGPYU.js.map +0 -1
- package/dist/chunk-OBWM2RFE.js.map +0 -1
- package/dist/chunk-OQR3HXPF.js.map +0 -1
- package/dist/chunk-T2NICA5D.js.map +0 -1
- package/dist/chunk-VMQNG2KI.js +0 -178
- package/dist/chunk-VMQNG2KI.js.map +0 -1
- package/dist/chunk-YWHGCKMT.js.map +0 -1
- package/dist/pastedTextKinds-D-XuInaS.d.ts +0 -4
- package/dist/runtime-BBNdWgDU.d.ts +0 -10
- package/dist/workspaceAgentActivityListTypes-DZfS_HgG.d.ts +0 -48
- /package/dist/{AgentRichTextReadonly-PEKCMRPE.js.map → AgentRichTextReadonly-HCKTNAYO.js.map} +0 -0
- /package/dist/{chunk-PQJXWXTS.js.map → chunk-25VMCMAQ.js.map} +0 -0
- /package/dist/{chunk-QQRTUHCH.js.map → chunk-EU7DCT4F.js.map} +0 -0
- /package/dist/{chunk-SZOTLVH6.js.map → chunk-GIYGO2PB.js.map} +0 -0
- /package/dist/{chunk-GCQYN7BR.js.map → chunk-IN3HXYOO.js.map} +0 -0
- /package/dist/{chunk-J4TTEMRW.js.map → chunk-KWGMK4IZ.js.map} +0 -0
- /package/dist/{chunk-UARZZJJB.js.map → chunk-OI6BYC7P.js.map} +0 -0
- /package/dist/{chunk-XNE2ROCP.js.map → chunk-UA75CGAG.js.map} +0 -0
- /package/dist/{chunk-PVTAFUDS.js.map → chunk-VGS7S7YT.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../app/renderer/lib/utils.ts","../shared/AgentTargetPresentationContext.tsx"],"sourcesContent":["import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]): string {\n return twMerge(clsx(inputs));\n}\n","import { createContext, useContext, type JSX, type ReactNode } from \"react\";\n\nexport interface AgentMessageMarkdownAgentTarget {\n agentTargetId: string;\n iconUrl?: string | null;\n maskIconUrl?: string | null;\n name?: string | null;\n provider?: string | null;\n workspaceId?: string | null;\n}\n\nconst EMPTY_AGENT_TARGETS: readonly AgentMessageMarkdownAgentTarget[] =\n Object.freeze([]);\n\nconst AgentTargetPresentationContext =\n createContext<readonly AgentMessageMarkdownAgentTarget[]>(\n EMPTY_AGENT_TARGETS\n );\n\nexport function AgentTargetPresentationProvider({\n agentTargets,\n children\n}: {\n agentTargets: readonly AgentMessageMarkdownAgentTarget[];\n children: ReactNode;\n}): JSX.Element {\n return (\n <AgentTargetPresentationContext.Provider value={agentTargets}>\n {children}\n </AgentTargetPresentationContext.Provider>\n );\n}\n\nexport function useAgentTargetPresentations(): readonly AgentMessageMarkdownAgentTarget[] {\n return useContext(AgentTargetPresentationContext);\n}\n\nexport function resolveAgentTargetPresentation(input: {\n agentTargetId: string;\n agentTargets: readonly AgentMessageMarkdownAgentTarget[];\n workspaceId?: string | null;\n}): AgentMessageMarkdownAgentTarget | null {\n const agentTargetId = input.agentTargetId.trim();\n if (!agentTargetId) {\n return null;\n }\n const workspaceId = input.workspaceId?.trim() ?? \"\";\n return (\n input.agentTargets.find(\n (target) =>\n target.agentTargetId.trim() === agentTargetId &&\n (target.workspaceId?.trim() ?? \"\") === workspaceId\n ) ??\n input.agentTargets.find(\n (target) => target.agentTargetId.trim() === agentTargetId\n ) ??\n null\n );\n}\n"],"mappings":";AAAA,SAA0B,YAAY;AACtC,SAAS,eAAe;AAEjB,SAAS,MAAM,QAA8B;AAClD,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;;;ACLA,SAAS,eAAe,kBAA4C;AA2BhE;AAhBJ,IAAM,sBACJ,OAAO,OAAO,CAAC,CAAC;AAElB,IAAM,iCACJ;AAAA,EACE;AACF;AAEK,SAAS,gCAAgC;AAAA,EAC9C;AAAA,EACA;AACF,GAGgB;AACd,SACE,oBAAC,+BAA+B,UAA/B,EAAwC,OAAO,cAC7C,UACH;AAEJ;AAEO,SAAS,8BAA0E;AACxF,SAAO,WAAW,8BAA8B;AAClD;AAEO,SAAS,+BAA+B,OAIJ;AACzC,QAAM,gBAAgB,MAAM,cAAc,KAAK;AAC/C,MAAI,CAAC,eAAe;AAClB,WAAO;AAAA,EACT;AACA,QAAM,cAAc,MAAM,aAAa,KAAK,KAAK;AACjD,SACE,MAAM,aAAa;AAAA,IACjB,CAAC,WACC,OAAO,cAAc,KAAK,MAAM,kBAC/B,OAAO,aAAa,KAAK,KAAK,QAAQ;AAAA,EAC3C,KACA,MAAM,aAAa;AAAA,IACjB,CAAC,WAAW,OAAO,cAAc,KAAK,MAAM;AAAA,EAC9C,KACA;AAEJ;","names":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as AgentContextMentionItem } from '../agentFileMentionContracts-
|
|
1
|
+
import { A as AgentContextMentionItem } from '../agentFileMentionContracts-B0yQizXB.js';
|
|
2
2
|
import { AgentMentionSearchState, AgentMentionBrowseCategory, AgentMentionFilterId, AgentMentionGroupId } from '../mention-search.js';
|
|
3
3
|
export { AgentMentionGroup, AgentMentionSearchController } from '../mention-search.js';
|
|
4
4
|
import { ReactNode } from 'react';
|
|
@@ -3,27 +3,28 @@ import {
|
|
|
3
3
|
AgentFileMentionPalette,
|
|
4
4
|
flattenAgentMentionPaletteEntries,
|
|
5
5
|
groupStartKeys
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-OI6BYC7P.js";
|
|
7
7
|
import {
|
|
8
8
|
AgentMentionSearchController
|
|
9
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-KWGMK4IZ.js";
|
|
10
10
|
import "../chunk-USIFGHT3.js";
|
|
11
11
|
import "../chunk-XJ34OIEQ.js";
|
|
12
12
|
import "../chunk-R7AXDQCA.js";
|
|
13
|
-
import "../chunk-
|
|
13
|
+
import "../chunk-QPEO4OQS.js";
|
|
14
14
|
import "../chunk-5QPOMKMQ.js";
|
|
15
15
|
import {
|
|
16
16
|
AGENT_CONTEXT_MENTION_PROVIDER_IDS
|
|
17
17
|
} from "../chunk-RMQREVJY.js";
|
|
18
|
-
import "../chunk-
|
|
18
|
+
import "../chunk-FGLQZ6I4.js";
|
|
19
|
+
import "../chunk-EU7DCT4F.js";
|
|
19
20
|
import "../chunk-YMXYBG7U.js";
|
|
20
|
-
import "../chunk-
|
|
21
|
+
import "../chunk-OFJNIQWR.js";
|
|
21
22
|
import "../chunk-F5UR6EJG.js";
|
|
22
23
|
import "../chunk-EDNJMG5T.js";
|
|
23
|
-
import "../chunk-
|
|
24
|
+
import "../chunk-GIYGO2PB.js";
|
|
24
25
|
import "../chunk-PJP5BUU6.js";
|
|
25
26
|
import "../chunk-7KVZPJ3O.js";
|
|
26
|
-
import "../chunk-
|
|
27
|
+
import "../chunk-VUNVGEQG.js";
|
|
27
28
|
import "../chunk-MIJXEELH.js";
|
|
28
29
|
import "../chunk-D2JUDUYY.js";
|
|
29
30
|
import "../chunk-6CUELYIF.js";
|
|
@@ -1,9 +1,62 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { AgentSessionEngineState, AgentSessionEngine } from '@tutti-os/agent-activity-core';
|
|
3
3
|
import { WorkbenchFrame, WorkbenchHostDockEntry, WorkbenchHostLaunchRequest, WorkbenchHostNodeBodyContext, WorkbenchContribution } from '@tutti-os/workbench-surface';
|
|
4
|
-
import { A as AgentGUIAgent, d as AgentGUIAgentDirectoryPort } from './types-BicfRVrV.js';
|
|
5
4
|
import { AgentGuiWorkbenchProvider, AgentGuiWorkbenchState } from './workbench/types.js';
|
|
6
5
|
|
|
6
|
+
/**
|
|
7
|
+
* Open runtime metadata reported by an Agent Target.
|
|
8
|
+
*
|
|
9
|
+
* Built-in providers still use AgentProvider, while externally installed ACP
|
|
10
|
+
* extensions use namespaced values such as `acp:gemini`.
|
|
11
|
+
*/
|
|
12
|
+
type AgentGUIProvider = string;
|
|
13
|
+
type AgentGUIAgentAvailabilityStatus = "ready" | "checking" | "coming_soon" | "not_installed" | "auth_required" | "unavailable";
|
|
14
|
+
type AgentGUIAgentAvailabilityAction = "install" | "login" | "refresh";
|
|
15
|
+
interface AgentGUIAgentAvailability {
|
|
16
|
+
status: AgentGUIAgentAvailabilityStatus;
|
|
17
|
+
reason?: string | null;
|
|
18
|
+
pendingAction?: AgentGUIAgentAvailabilityAction | null;
|
|
19
|
+
}
|
|
20
|
+
interface AgentGUIAgentOwner {
|
|
21
|
+
name?: string | null;
|
|
22
|
+
avatarUrl?: string | null;
|
|
23
|
+
}
|
|
24
|
+
/** Host-authoritative ownership classification for Agent directory entries. */
|
|
25
|
+
type AgentGUIAgentOwnership = "self" | "shared";
|
|
26
|
+
/**
|
|
27
|
+
* Host-projected entry from the workspace `/agents` directory.
|
|
28
|
+
*
|
|
29
|
+
* `agentTargetId` is the only UI and launch identity. `provider` remains
|
|
30
|
+
* execution metadata for provider-native composer/runtime policy and must not
|
|
31
|
+
* be used to group, deduplicate, name, or select entries.
|
|
32
|
+
*/
|
|
33
|
+
interface AgentGUIAgent {
|
|
34
|
+
agentTargetId: string;
|
|
35
|
+
name: string;
|
|
36
|
+
iconUrl: string;
|
|
37
|
+
/** Single-color artwork rendered through the conversation rail CSS mask. */
|
|
38
|
+
maskIconUrl?: string | null;
|
|
39
|
+
sidebarIconUrl?: string | null;
|
|
40
|
+
heroImageUrl?: string | null;
|
|
41
|
+
description?: string | null;
|
|
42
|
+
owner?: AgentGUIAgentOwner | null;
|
|
43
|
+
ownership?: AgentGUIAgentOwnership | null;
|
|
44
|
+
availability: AgentGUIAgentAvailability;
|
|
45
|
+
provider: AgentGUIProvider;
|
|
46
|
+
setupKind?: "target_runtime" | null;
|
|
47
|
+
}
|
|
48
|
+
type AgentGUIAgentDirectoryStatus = "idle" | "loading" | "ready" | "error";
|
|
49
|
+
interface AgentGUIAgentDirectorySnapshot {
|
|
50
|
+
agents: readonly AgentGUIAgent[];
|
|
51
|
+
capturedAtUnixMs: number | null;
|
|
52
|
+
error: string | null;
|
|
53
|
+
status: AgentGUIAgentDirectoryStatus;
|
|
54
|
+
}
|
|
55
|
+
interface AgentGUIAgentDirectoryPort {
|
|
56
|
+
getSnapshot(): AgentGUIAgentDirectorySnapshot;
|
|
57
|
+
subscribe(listener: () => void): () => void;
|
|
58
|
+
}
|
|
59
|
+
|
|
7
60
|
interface AgentGuiWorkbenchConversationIdentity {
|
|
8
61
|
agentTitle?: string | null;
|
|
9
62
|
iconUrl?: string | null;
|
package/dist/custom-mention.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
export { A as AGENT_PASTED_TEXT_BLOCK_KIND, a as AGENT_PASTED_TEXT_MENTION_KIND } from './pastedTextKinds-D-XuInaS.js';
|
|
3
2
|
|
|
4
3
|
interface AgentCustomMentionIdentity {
|
|
5
4
|
entityId: string;
|
|
@@ -45,4 +44,7 @@ declare function registerAgentCustomMentionKind(definition: AgentCustomMentionKi
|
|
|
45
44
|
declare function getAgentCustomMentionKind(kind: string): AgentCustomMentionKindDefinition | undefined;
|
|
46
45
|
declare function resetAgentCustomMentionKindsForTests(): void;
|
|
47
46
|
|
|
48
|
-
|
|
47
|
+
declare const AGENT_PASTED_TEXT_BLOCK_KIND = "pasted-text";
|
|
48
|
+
declare const AGENT_PASTED_TEXT_MENTION_KIND = "pasted-text";
|
|
49
|
+
|
|
50
|
+
export { AGENT_PASTED_TEXT_BLOCK_KIND, AGENT_PASTED_TEXT_MENTION_KIND, type AgentCustomMentionChipContext, type AgentCustomMentionIdentity, type AgentCustomMentionKindDefinition, type AgentCustomMentionPresentation, getAgentCustomMentionKind, registerAgentCustomMentionKind, resetAgentCustomMentionKindsForTests };
|
package/dist/custom-mention.js
CHANGED
package/dist/i18n/index.d.ts
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import * as _tutti_os_ui_i18n_runtime from '@tutti-os/ui-i18n-runtime';
|
|
2
|
-
import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import { I18nParams, I18nRuntime } from '@tutti-os/ui-i18n-runtime';
|
|
3
|
+
import React, { ReactNode } from 'react';
|
|
4
|
+
|
|
5
|
+
type AgentGuiI18nLocale = "en" | "zh-CN";
|
|
6
|
+
type TranslateOptions = I18nParams;
|
|
7
|
+
type TranslateFn = (key: string, options?: TranslateOptions) => string;
|
|
8
|
+
declare function translate$1(key: string, options?: TranslateOptions): string;
|
|
9
|
+
declare function translateInUiLanguage$1(locale: AgentGuiI18nLocale, key: string, options?: TranslateOptions): string;
|
|
10
|
+
declare function getActiveUiLanguage$1(): AgentGuiI18nLocale;
|
|
6
11
|
|
|
7
12
|
declare const agentGuiI18nResources: {
|
|
8
13
|
readonly en: {
|
|
@@ -365,6 +370,9 @@ declare const agentGuiI18nResources: {
|
|
|
365
370
|
readonly fileMentionError: "Unable to search Files.";
|
|
366
371
|
readonly fileMentionTabHint: "Tab switch category | ←→ enter/leave folder | ↑↓ switch selection";
|
|
367
372
|
readonly fileDropHint: "Drop files to add them to the session";
|
|
373
|
+
readonly composerFileFolderUnsupported: "Folders cannot be attached here";
|
|
374
|
+
readonly composerFileTooLarge: "File is too large";
|
|
375
|
+
readonly composerFilePreparationFailed: "File preparation failed";
|
|
368
376
|
readonly mentionPalette: "Mention context";
|
|
369
377
|
readonly addReference: "Add reference";
|
|
370
378
|
readonly addContent: "Add files and more";
|
|
@@ -2949,6 +2957,9 @@ declare const agentGuiI18nResources: {
|
|
|
2949
2957
|
readonly fileMentionError: "无法搜索工作区文件。";
|
|
2950
2958
|
readonly fileMentionTabHint: "Tab 切换分类 | ←→ 进入/返回文件夹 | ↑↓ 切换选中";
|
|
2951
2959
|
readonly fileDropHint: "拖放文件以添加到会话";
|
|
2960
|
+
readonly composerFileFolderUnsupported: "暂不支持在这里附加文件夹";
|
|
2961
|
+
readonly composerFileTooLarge: "文件过大";
|
|
2962
|
+
readonly composerFilePreparationFailed: "文件处理失败";
|
|
2952
2963
|
readonly mentionPalette: "提及上下文";
|
|
2953
2964
|
readonly addReference: "添加引用";
|
|
2954
2965
|
readonly addContent: "添加文件等内容";
|
|
@@ -5183,11 +5194,11 @@ declare function AgentGuiI18nProvider({ children, locale, runtime }: {
|
|
|
5183
5194
|
children: ReactNode;
|
|
5184
5195
|
locale?: AgentGuiI18nLocale;
|
|
5185
5196
|
runtime?: I18nRuntime<string> | null;
|
|
5186
|
-
}):
|
|
5197
|
+
}): React.ReactElement;
|
|
5187
5198
|
declare function useTranslation(): {
|
|
5188
5199
|
i18n: I18nRuntime<string>;
|
|
5189
5200
|
locale: AgentGuiI18nLocale;
|
|
5190
5201
|
t: TranslateFn;
|
|
5191
5202
|
};
|
|
5192
5203
|
|
|
5193
|
-
export { AgentGuiI18nLocale, AgentGuiI18nProvider, TranslateFn, agentGuiI18nModule, agentGuiI18nResources, getActiveUiLanguage, translate, translateInUiLanguage, useTranslation };
|
|
5204
|
+
export { type AgentGuiI18nLocale, AgentGuiI18nProvider, type TranslateFn, type TranslateOptions, agentGuiI18nModule, agentGuiI18nResources, getActiveUiLanguage, translate, translateInUiLanguage, useTranslation };
|
package/dist/i18n/index.js
CHANGED