zilmate 1.3.5 → 1.4.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/dist/agents/automation-planner.agent.d.ts +108 -0
- package/dist/agents/automation-planner.agent.d.ts.map +1 -1
- package/dist/agents/automation-planner.agent.js +13 -4
- package/dist/agents/automation-planner.agent.js.map +1 -1
- package/dist/agents/manager.d.ts +117 -0
- package/dist/agents/manager.d.ts.map +1 -1
- package/dist/agents/manager.js +25 -1
- package/dist/agents/manager.js.map +1 -1
- package/dist/agents/security.agent.d.ts +340 -0
- package/dist/agents/security.agent.d.ts.map +1 -0
- package/dist/agents/security.agent.js +76 -0
- package/dist/agents/security.agent.js.map +1 -0
- package/dist/cli/confirm.d.ts.map +1 -1
- package/dist/cli/confirm.js +8 -14
- package/dist/cli/confirm.js.map +1 -1
- package/dist/cli/format.js +1 -1
- package/dist/cli/interactive.d.ts.map +1 -1
- package/dist/cli/interactive.js +2 -0
- package/dist/cli/interactive.js.map +1 -1
- package/dist/cli/triggers.d.ts.map +1 -1
- package/dist/cli/triggers.js +12 -4
- package/dist/cli/triggers.js.map +1 -1
- package/dist/cli/voice.d.ts.map +1 -1
- package/dist/cli/voice.js +2 -0
- package/dist/cli/voice.js.map +1 -1
- package/dist/config/env.d.ts +4 -0
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +4 -0
- package/dist/config/env.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/jobs/trigger-orchestrator.d.ts +26 -0
- package/dist/jobs/trigger-orchestrator.d.ts.map +1 -0
- package/dist/jobs/trigger-orchestrator.js +252 -0
- package/dist/jobs/trigger-orchestrator.js.map +1 -0
- package/dist/jobs/trigger-policies.d.ts +36 -0
- package/dist/jobs/trigger-policies.d.ts.map +1 -0
- package/dist/jobs/trigger-policies.js +68 -0
- package/dist/jobs/trigger-policies.js.map +1 -0
- package/dist/jobs/trigger-router.d.ts +14 -0
- package/dist/jobs/trigger-router.d.ts.map +1 -0
- package/dist/jobs/trigger-router.js +114 -0
- package/dist/jobs/trigger-router.js.map +1 -0
- package/dist/jobs/workflows.d.ts +4 -1
- package/dist/jobs/workflows.d.ts.map +1 -1
- package/dist/jobs/workflows.js +18 -42
- package/dist/jobs/workflows.js.map +1 -1
- package/dist/memory/personal-context.d.ts +45 -0
- package/dist/memory/personal-context.d.ts.map +1 -0
- package/dist/memory/personal-context.js +103 -0
- package/dist/memory/personal-context.js.map +1 -0
- package/dist/runtime/confirm.d.ts +3 -0
- package/dist/runtime/confirm.d.ts.map +1 -1
- package/dist/runtime/confirm.js +38 -12
- package/dist/runtime/confirm.js.map +1 -1
- package/dist/runtime/progress.d.ts.map +1 -1
- package/dist/runtime/progress.js +3 -0
- package/dist/runtime/progress.js.map +1 -1
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +2 -0
- package/dist/server.js.map +1 -1
- package/dist/skills/loader.d.ts +14 -0
- package/dist/skills/loader.d.ts.map +1 -0
- package/dist/skills/loader.js +105 -0
- package/dist/skills/loader.js.map +1 -0
- package/dist/tools/cli-runner.d.ts +13 -0
- package/dist/tools/cli-runner.d.ts.map +1 -0
- package/dist/tools/cli-runner.js +75 -0
- package/dist/tools/cli-runner.js.map +1 -0
- package/dist/tools/computer-use.tool.d.ts +159 -0
- package/dist/tools/computer-use.tool.d.ts.map +1 -0
- package/dist/tools/computer-use.tool.js +356 -0
- package/dist/tools/computer-use.tool.js.map +1 -0
- package/dist/tools/orchestration.tool.d.ts +83 -0
- package/dist/tools/orchestration.tool.d.ts.map +1 -0
- package/dist/tools/orchestration.tool.js +154 -0
- package/dist/tools/orchestration.tool.js.map +1 -0
- package/dist/tools/osint-install.tool.d.ts +35 -0
- package/dist/tools/osint-install.tool.d.ts.map +1 -0
- package/dist/tools/osint-install.tool.js +334 -0
- package/dist/tools/osint-install.tool.js.map +1 -0
- package/dist/tools/osint.tool.d.ts +445 -0
- package/dist/tools/osint.tool.d.ts.map +1 -0
- package/dist/tools/osint.tool.js +630 -0
- package/dist/tools/osint.tool.js.map +1 -0
- package/dist/tools/pentest-install.tool.d.ts +32 -0
- package/dist/tools/pentest-install.tool.d.ts.map +1 -0
- package/dist/tools/pentest-install.tool.js +201 -0
- package/dist/tools/pentest-install.tool.js.map +1 -0
- package/dist/tools/pentest.tool.d.ts +595 -0
- package/dist/tools/pentest.tool.d.ts.map +1 -0
- package/dist/tools/pentest.tool.js +841 -0
- package/dist/tools/pentest.tool.js.map +1 -0
- package/dist/tools/personal-context.tool.d.ts +32 -0
- package/dist/tools/personal-context.tool.d.ts.map +1 -0
- package/dist/tools/personal-context.tool.js +76 -0
- package/dist/tools/personal-context.tool.js.map +1 -0
- package/dist/tools/skills.tool.d.ts +17 -0
- package/dist/tools/skills.tool.d.ts.map +1 -0
- package/dist/tools/skills.tool.js +44 -0
- package/dist/tools/skills.tool.js.map +1 -0
- package/dist/voice/cascade.d.ts.map +1 -1
- package/dist/voice/cascade.js +71 -24
- package/dist/voice/cascade.js.map +1 -1
- package/dist/voice/deepgram.d.ts.map +1 -1
- package/dist/voice/deepgram.js +8 -1
- package/dist/voice/deepgram.js.map +1 -1
- package/dist/voice/types.d.ts +4 -0
- package/dist/voice/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -3,6 +3,114 @@ export declare function createAutomationPlannerAgent(): ToolLoopAgent<never, {
|
|
|
3
3
|
appKnowledge: import("ai").Tool<{
|
|
4
4
|
key: "agent-docs" | "readme";
|
|
5
5
|
}, string>;
|
|
6
|
+
getPersonalContext: import("ai").Tool<Record<string, never>, {
|
|
7
|
+
context: import("../memory/personal-context.js").PersonalContext;
|
|
8
|
+
summary: string;
|
|
9
|
+
}>;
|
|
10
|
+
updatePersonalContext: import("ai").Tool<{
|
|
11
|
+
ownerName?: string | undefined;
|
|
12
|
+
businessName?: string | undefined;
|
|
13
|
+
urgencyRule?: string | undefined;
|
|
14
|
+
workflow?: string | undefined;
|
|
15
|
+
contact?: {
|
|
16
|
+
name: string;
|
|
17
|
+
vip: boolean;
|
|
18
|
+
id?: string | undefined;
|
|
19
|
+
email?: string | undefined;
|
|
20
|
+
handle?: string | undefined;
|
|
21
|
+
role?: string | undefined;
|
|
22
|
+
notes?: string | undefined;
|
|
23
|
+
} | undefined;
|
|
24
|
+
project?: {
|
|
25
|
+
name: string;
|
|
26
|
+
status: "done" | "active" | "paused";
|
|
27
|
+
tags: string[];
|
|
28
|
+
id?: string | undefined;
|
|
29
|
+
description?: string | undefined;
|
|
30
|
+
} | undefined;
|
|
31
|
+
}, {
|
|
32
|
+
updated: boolean;
|
|
33
|
+
summary: string;
|
|
34
|
+
}>;
|
|
35
|
+
listTriggerPolicies: import("ai").Tool<Record<string, never>, import("../jobs/trigger-policies.js").TriggerRoutingPolicy[]>;
|
|
36
|
+
getTriggerPolicy: import("ai").Tool<Record<string, never>, import("../jobs/trigger-policies.js").TriggerRoutingPolicy>;
|
|
37
|
+
saveTriggerPolicy: import("ai").Tool<{
|
|
38
|
+
policy: {
|
|
39
|
+
name: string;
|
|
40
|
+
enabled: boolean;
|
|
41
|
+
vipSenders: string[];
|
|
42
|
+
urgentKeywords: string[];
|
|
43
|
+
lowPriorityKeywords: string[];
|
|
44
|
+
customInstructions: string;
|
|
45
|
+
id?: string | undefined;
|
|
46
|
+
};
|
|
47
|
+
}, {
|
|
48
|
+
updatedAt: string;
|
|
49
|
+
id: string;
|
|
50
|
+
name: string;
|
|
51
|
+
enabled: boolean;
|
|
52
|
+
vipSenders: string[];
|
|
53
|
+
urgentKeywords: string[];
|
|
54
|
+
lowPriorityKeywords: string[];
|
|
55
|
+
customInstructions: string;
|
|
56
|
+
routes: Partial<Record<import("../jobs/trigger-orchestrator.js").TriggerRoute, import("../jobs/trigger-policies.js").RoutePolicy>>;
|
|
57
|
+
createdAt: string;
|
|
58
|
+
}>;
|
|
59
|
+
proposeTriggerOrchestration: import("ai").Tool<{
|
|
60
|
+
triggerSlug: string;
|
|
61
|
+
toolkitSlug: string;
|
|
62
|
+
payload?: Record<string, unknown> | undefined;
|
|
63
|
+
}, {
|
|
64
|
+
proposal: string;
|
|
65
|
+
plan: {
|
|
66
|
+
chainId: string;
|
|
67
|
+
priority: import("../jobs/trigger-orchestrator.js").TriggerPriority;
|
|
68
|
+
route: import("../jobs/trigger-orchestrator.js").TriggerRoute;
|
|
69
|
+
category: string;
|
|
70
|
+
followUpCount: number;
|
|
71
|
+
followUps: import("../jobs/trigger-orchestrator.js").TriggerFollowUp[];
|
|
72
|
+
};
|
|
73
|
+
}>;
|
|
74
|
+
applyTriggerOrchestration: import("ai").Tool<{
|
|
75
|
+
triggerSlug: string;
|
|
76
|
+
toolkitSlug: string;
|
|
77
|
+
payload?: Record<string, unknown> | undefined;
|
|
78
|
+
triggerId?: string | undefined;
|
|
79
|
+
userId?: string | undefined;
|
|
80
|
+
dryRun?: boolean | undefined;
|
|
81
|
+
}, {
|
|
82
|
+
dryRun: boolean;
|
|
83
|
+
proposal: string;
|
|
84
|
+
plan: import("../jobs/trigger-orchestrator.js").TriggerOrchestrationPlan;
|
|
85
|
+
applied?: never;
|
|
86
|
+
blocked?: never;
|
|
87
|
+
message?: never;
|
|
88
|
+
jobs?: never;
|
|
89
|
+
report?: never;
|
|
90
|
+
} | {
|
|
91
|
+
applied: boolean;
|
|
92
|
+
blocked: boolean;
|
|
93
|
+
proposal: string;
|
|
94
|
+
message: string;
|
|
95
|
+
dryRun?: never;
|
|
96
|
+
plan?: never;
|
|
97
|
+
jobs?: never;
|
|
98
|
+
report?: never;
|
|
99
|
+
} | {
|
|
100
|
+
applied: boolean;
|
|
101
|
+
proposal: string;
|
|
102
|
+
jobs: {
|
|
103
|
+
id: string;
|
|
104
|
+
status: import("../server.js").JobStatus;
|
|
105
|
+
schedule: string | undefined;
|
|
106
|
+
role: unknown;
|
|
107
|
+
}[];
|
|
108
|
+
report: string;
|
|
109
|
+
dryRun?: never;
|
|
110
|
+
plan?: never;
|
|
111
|
+
blocked?: never;
|
|
112
|
+
message?: never;
|
|
113
|
+
}>;
|
|
6
114
|
listTriggerTypes: import("ai").Tool<{
|
|
7
115
|
toolkit?: string | undefined;
|
|
8
116
|
limit?: number | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automation-planner.agent.d.ts","sourceRoot":"","sources":["../../src/agents/automation-planner.agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,aAAa,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"automation-planner.agent.d.ts","sourceRoot":"","sources":["../../src/agents/automation-planner.agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,aAAa,EAAE,MAAM,IAAI,CAAC;AAUhD,wBAAgB,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA2BksyG,CAAC;wBAAsC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAAz2S,CAAC;uBAAqC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UADn9/F"}
|
|
@@ -4,22 +4,31 @@ import { appKnowledgeTool } from '../tools/app-knowledge.tool.js';
|
|
|
4
4
|
import { jobTools } from '../tools/jobs.tool.js';
|
|
5
5
|
import { timeTools } from '../tools/time.tool.js';
|
|
6
6
|
import { triggerTools } from '../tools/triggers.tool.js';
|
|
7
|
+
import { orchestrationTools } from '../tools/orchestration.tool.js';
|
|
8
|
+
import { personalContextTools } from '../tools/personal-context.tool.js';
|
|
7
9
|
import { limits } from '../safety/limits.js';
|
|
8
10
|
export function createAutomationPlannerAgent() {
|
|
9
11
|
return new ToolLoopAgent({
|
|
10
12
|
model: models.manager,
|
|
11
13
|
instructions: [
|
|
12
|
-
'You are ZilMate Automation Planner. Design practical automations, schedules, background jobs, trigger workflows, and follow-up
|
|
14
|
+
'You are ZilMate Automation Planner. Design practical automations, schedules, background jobs, trigger workflows, and follow-up chains.',
|
|
15
|
+
'Use getPersonalContext and updatePersonalContext so routing reflects the user\'s VIP contacts, projects, and urgency rules.',
|
|
16
|
+
'Use listTriggerPolicies, getTriggerPolicy, and saveTriggerPolicy to manage routing behavior.',
|
|
17
|
+
'Always use proposeTriggerOrchestration to preview what will happen before applyTriggerOrchestration creates jobs.',
|
|
18
|
+
'When applyTriggerOrchestration needs approval, tell the user exactly what primary and follow-up jobs will be created. The confirmation prompt handles yes/no.',
|
|
19
|
+
'After applying orchestration, report job ids, route, priority, and any skipped follow-ups waiting for approval.',
|
|
13
20
|
'Use time tools for current date/time and schedule-relative wording.',
|
|
14
|
-
'Use job tools to inspect existing jobs and logs. Create or cancel jobs only when the user clearly asks
|
|
15
|
-
'Use trigger tools to discover Composio trigger types
|
|
16
|
-
'Explain local worker limits
|
|
21
|
+
'Use job tools to inspect existing jobs and logs. Create or cancel jobs only when the user clearly asks.',
|
|
22
|
+
'Use trigger tools to discover Composio trigger types and inspect schemas. Prefer dry-run before real creation.',
|
|
23
|
+
'Explain local worker limits: local jobs need `zilmate jobs worker`; laptop-closed automation needs QStash plus a public job webhook.',
|
|
17
24
|
'Return concise plans with exact commands or setup steps when useful.',
|
|
18
25
|
].join(' '),
|
|
19
26
|
tools: {
|
|
20
27
|
...timeTools,
|
|
21
28
|
...jobTools,
|
|
22
29
|
...triggerTools,
|
|
30
|
+
...orchestrationTools,
|
|
31
|
+
...personalContextTools,
|
|
23
32
|
appKnowledge: appKnowledgeTool,
|
|
24
33
|
},
|
|
25
34
|
stopWhen: stepCountIs(limits.subagentSteps),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automation-planner.agent.js","sourceRoot":"","sources":["../../src/agents/automation-planner.agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,MAAM,UAAU,4BAA4B;IAC1C,OAAO,IAAI,aAAa,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC,OAAO;QACrB,YAAY,EAAE;YACZ,
|
|
1
|
+
{"version":3,"file":"automation-planner.agent.js","sourceRoot":"","sources":["../../src/agents/automation-planner.agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,MAAM,UAAU,4BAA4B;IAC1C,OAAO,IAAI,aAAa,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC,OAAO;QACrB,YAAY,EAAE;YACZ,wIAAwI;YACxI,6HAA6H;YAC7H,8FAA8F;YAC9F,mHAAmH;YACnH,+JAA+J;YAC/J,iHAAiH;YACjH,qEAAqE;YACrE,yGAAyG;YACzG,gHAAgH;YAChH,sIAAsI;YACtI,sEAAsE;SACvE,CAAC,IAAI,CAAC,GAAG,CAAC;QACX,KAAK,EAAE;YACL,GAAG,SAAS;YACZ,GAAG,QAAQ;YACX,GAAG,YAAY;YACf,GAAG,kBAAkB;YACrB,GAAG,oBAAoB;YACvB,YAAY,EAAE,gBAAgB;SAC/B;QACD,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC;KAC5C,CAAC,CAAC;AACL,CAAC"}
|
package/dist/agents/manager.d.ts
CHANGED
|
@@ -4,6 +4,49 @@ import { type ConfirmationHandler } from '../runtime/confirm.js';
|
|
|
4
4
|
export declare function createManagerAgent(runId?: string, options?: {
|
|
5
5
|
sessionId?: string;
|
|
6
6
|
}): Promise<ToolLoopAgent<never, {
|
|
7
|
+
getPersonalContext: import("ai").Tool<Record<string, never>, {
|
|
8
|
+
context: import("../memory/personal-context.js").PersonalContext;
|
|
9
|
+
summary: string;
|
|
10
|
+
}>;
|
|
11
|
+
updatePersonalContext: import("ai").Tool<{
|
|
12
|
+
ownerName?: string | undefined;
|
|
13
|
+
businessName?: string | undefined;
|
|
14
|
+
urgencyRule?: string | undefined;
|
|
15
|
+
workflow?: string | undefined;
|
|
16
|
+
contact?: {
|
|
17
|
+
name: string;
|
|
18
|
+
vip: boolean;
|
|
19
|
+
id?: string | undefined;
|
|
20
|
+
email?: string | undefined;
|
|
21
|
+
handle?: string | undefined;
|
|
22
|
+
role?: string | undefined;
|
|
23
|
+
notes?: string | undefined;
|
|
24
|
+
} | undefined;
|
|
25
|
+
project?: {
|
|
26
|
+
name: string;
|
|
27
|
+
status: "done" | "active" | "paused";
|
|
28
|
+
tags: string[];
|
|
29
|
+
id?: string | undefined;
|
|
30
|
+
description?: string | undefined;
|
|
31
|
+
} | undefined;
|
|
32
|
+
}, {
|
|
33
|
+
updated: boolean;
|
|
34
|
+
summary: string;
|
|
35
|
+
}>;
|
|
36
|
+
listSkills: import("ai").Tool<Record<string, never>, {
|
|
37
|
+
skills: import("../skills/loader.js").SkillSummary[];
|
|
38
|
+
searchPaths: string[];
|
|
39
|
+
}>;
|
|
40
|
+
searchSkills: import("ai").Tool<{
|
|
41
|
+
query: string;
|
|
42
|
+
limit?: number | undefined;
|
|
43
|
+
}, {
|
|
44
|
+
query: string;
|
|
45
|
+
skills: import("../skills/loader.js").SkillSummary[];
|
|
46
|
+
}>;
|
|
47
|
+
readSkill: import("ai").Tool<{
|
|
48
|
+
skillId: string;
|
|
49
|
+
}, import("../skills/loader.js").SkillContent>;
|
|
7
50
|
executeCommand: import("ai").Tool<{
|
|
8
51
|
command: string;
|
|
9
52
|
cwd?: string | undefined;
|
|
@@ -92,6 +135,77 @@ export declare function createManagerAgent(runId?: string, options?: {
|
|
|
92
135
|
suggestion: string;
|
|
93
136
|
path?: never;
|
|
94
137
|
}>;
|
|
138
|
+
dragAndDrop: import("ai").Tool<{
|
|
139
|
+
fromX: number;
|
|
140
|
+
fromY: number;
|
|
141
|
+
toX: number;
|
|
142
|
+
toY: number;
|
|
143
|
+
duration: number;
|
|
144
|
+
button: "left" | "right" | "middle";
|
|
145
|
+
}, {
|
|
146
|
+
fromX: number;
|
|
147
|
+
fromY: number;
|
|
148
|
+
toX: number;
|
|
149
|
+
toY: number;
|
|
150
|
+
result: string;
|
|
151
|
+
}>;
|
|
152
|
+
findOnScreen: import("ai").Tool<{
|
|
153
|
+
referenceImagePath: string;
|
|
154
|
+
confidence: number;
|
|
155
|
+
region?: {
|
|
156
|
+
x: number;
|
|
157
|
+
y: number;
|
|
158
|
+
width: number;
|
|
159
|
+
height: number;
|
|
160
|
+
} | undefined;
|
|
161
|
+
}, any>;
|
|
162
|
+
manageWindow: import("ai").Tool<{
|
|
163
|
+
action: "close" | "list" | "focus" | "resize" | "minimize" | "maximize";
|
|
164
|
+
title?: string | undefined;
|
|
165
|
+
x?: number | undefined;
|
|
166
|
+
y?: number | undefined;
|
|
167
|
+
width?: number | undefined;
|
|
168
|
+
height?: number | undefined;
|
|
169
|
+
}, any>;
|
|
170
|
+
readScreen: import("ai").Tool<{
|
|
171
|
+
region?: {
|
|
172
|
+
x: number;
|
|
173
|
+
y: number;
|
|
174
|
+
width: number;
|
|
175
|
+
height: number;
|
|
176
|
+
} | undefined;
|
|
177
|
+
}, {
|
|
178
|
+
filePath: string;
|
|
179
|
+
width: number | undefined;
|
|
180
|
+
height: number | undefined;
|
|
181
|
+
}>;
|
|
182
|
+
keyboardAction: import("ai").Tool<{
|
|
183
|
+
action: "type" | "press" | "hotkey";
|
|
184
|
+
interval: number;
|
|
185
|
+
text?: string | undefined;
|
|
186
|
+
key?: string | undefined;
|
|
187
|
+
hotkey?: string[] | undefined;
|
|
188
|
+
}, {
|
|
189
|
+
action: "type" | "press" | "hotkey";
|
|
190
|
+
result: string;
|
|
191
|
+
}>;
|
|
192
|
+
mouseAction: import("ai").Tool<{
|
|
193
|
+
action: "move" | "click" | "doubleClick" | "rightClick" | "scroll";
|
|
194
|
+
x: number;
|
|
195
|
+
y: number;
|
|
196
|
+
scrollAmount: number;
|
|
197
|
+
duration: number;
|
|
198
|
+
scrollDirection?: "up" | "down" | "left" | "right" | undefined;
|
|
199
|
+
}, {
|
|
200
|
+
action: "move" | "click" | "doubleClick" | "rightClick" | "scroll";
|
|
201
|
+
x: number;
|
|
202
|
+
y: number;
|
|
203
|
+
result: string;
|
|
204
|
+
}>;
|
|
205
|
+
installComputerUseDeps: import("ai").Tool<Record<string, never>, {
|
|
206
|
+
platform: NodeJS.Platform;
|
|
207
|
+
results: Record<string, string>;
|
|
208
|
+
}>;
|
|
95
209
|
readScratchpad: import("ai").Tool<Record<string, never>, string>;
|
|
96
210
|
appendScratchpad: import("ai").Tool<{
|
|
97
211
|
note: string;
|
|
@@ -486,6 +600,9 @@ export declare function createManagerAgent(runId?: string, options?: {
|
|
|
486
600
|
developerHelper: import("ai").Tool<{
|
|
487
601
|
prompt: string;
|
|
488
602
|
}, string>;
|
|
603
|
+
security: import("ai").Tool<{
|
|
604
|
+
prompt: string;
|
|
605
|
+
}, string>;
|
|
489
606
|
}, never>>;
|
|
490
607
|
export declare function runManager(prompt: string, options?: {
|
|
491
608
|
progress?: (event: ProgressEvent) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/agents/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,aAAa,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/agents/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,aAAa,EAAE,MAAM,IAAI,CAAC;AAatD,OAAO,EAAgB,KAAK,aAAa,EAAwB,MAAM,wBAAwB,CAAC;AAChG,OAAO,EAAE,KAAK,mBAAmB,EAA2B,MAAM,uBAAuB,CAAC;AAkH1F,wBAAsB,kBAAkB,CAAC,KAAK,GAAE,MAAqB,EAAE,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAgIm50F,CAAC;wBAAsC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAAz2S,CAAC;uBAAqC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA9BnuiF;AAOD,wBAAsB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,mBAAmB,CAAA;CAAO,mBAmB9K"}
|
package/dist/agents/manager.js
CHANGED
|
@@ -10,6 +10,7 @@ import { createDocsResearchAgent } from './docs-research.agent.js';
|
|
|
10
10
|
import { createAutomationPlannerAgent } from './automation-planner.agent.js';
|
|
11
11
|
import { createPersonalAssistantAgent } from './personal-assistant.agent.js';
|
|
12
12
|
import { createDeveloperHelperAgent } from './developer-helper.agent.js';
|
|
13
|
+
import { createSecurityAgent } from './security.agent.js';
|
|
13
14
|
import { limits } from '../safety/limits.js';
|
|
14
15
|
import { emitProgress, withProgressListener } from '../runtime/progress.js';
|
|
15
16
|
import { withConfirmationHandler } from '../runtime/confirm.js';
|
|
@@ -22,7 +23,10 @@ import { jobTools } from '../tools/jobs.tool.js';
|
|
|
22
23
|
import { timeTools } from '../tools/time.tool.js';
|
|
23
24
|
import { fileSystemTools } from '../tools/filesystem.tool.js';
|
|
24
25
|
import { desktopTools } from '../tools/desktop.tool.js';
|
|
26
|
+
import { computerUseTools } from '../tools/computer-use.tool.js';
|
|
25
27
|
import { shellTools } from '../tools/shell.tool.js';
|
|
28
|
+
import { skillTools } from '../tools/skills.tool.js';
|
|
29
|
+
import { personalContextTools } from '../tools/personal-context.tool.js';
|
|
26
30
|
function agentInput(prompt, abortSignal) {
|
|
27
31
|
return abortSignal ? { prompt, abortSignal } : { prompt };
|
|
28
32
|
}
|
|
@@ -36,6 +40,7 @@ function describeTool(name) {
|
|
|
36
40
|
automationPlanner: 'Using automation planner subagent',
|
|
37
41
|
personalAssistant: 'Using personal assistant subagent',
|
|
38
42
|
developerHelper: 'Using developer helper subagent',
|
|
43
|
+
security: 'Using security subagent',
|
|
39
44
|
readScratchpad: 'Reading scratchpad',
|
|
40
45
|
appendScratchpad: 'Updating scratchpad',
|
|
41
46
|
rememberMemory: 'Saving memory',
|
|
@@ -90,6 +95,13 @@ function describeTool(name) {
|
|
|
90
95
|
COMPOSIO_MULTI_EXECUTE_TOOL: 'Executing Composio tool',
|
|
91
96
|
COMPOSIO_REMOTE_WORKBENCH: 'Using Composio workbench',
|
|
92
97
|
COMPOSIO_REMOTE_BASH_TOOL: 'Using Composio bash tool',
|
|
98
|
+
installComputerUseDeps: 'Installing computer-use dependencies',
|
|
99
|
+
mouseAction: 'Controlling mouse',
|
|
100
|
+
keyboardAction: 'Simulating keyboard input',
|
|
101
|
+
readScreen: 'Reading screen contents',
|
|
102
|
+
manageWindow: 'Managing application windows',
|
|
103
|
+
findOnScreen: 'Finding UI element on screen',
|
|
104
|
+
dragAndDrop: 'Dragging and dropping',
|
|
93
105
|
};
|
|
94
106
|
return labels[name] || `Using ${name}`;
|
|
95
107
|
}
|
|
@@ -121,6 +133,7 @@ export async function createManagerAgent(runId = randomUUID(), options = {}) {
|
|
|
121
133
|
const automationPlanner = createAutomationPlannerAgent();
|
|
122
134
|
const personalAssistant = createPersonalAssistantAgent();
|
|
123
135
|
const developerHelper = createDeveloperHelperAgent(runId);
|
|
136
|
+
const security = createSecurityAgent(runId);
|
|
124
137
|
const scratchpadTools = createScratchpadTools(runId);
|
|
125
138
|
const composioTools = await createComposioTools(options.sessionId || 'default');
|
|
126
139
|
return new ToolLoopAgent({
|
|
@@ -135,13 +148,17 @@ export async function createManagerAgent(runId = randomUUID(), options = {}) {
|
|
|
135
148
|
'When COMPOSIO_MANAGE_CONNECTIONS returns an authorization or connect URL, print that URL plainly and tell the user to open it to connect their account before retrying the app action.',
|
|
136
149
|
'For app events, use trigger tools: listTriggerTypes to discover current trigger slugs, showTriggerType to inspect required config, listTriggers to inspect existing trigger instances, and createTrigger only after config is clear. Prefer dryRun first, then ask for confirmation before creating a real trigger.',
|
|
137
150
|
'Use job tools when the user wants ZilMate to keep working after chat, schedule a task, create a report later, monitor something, follow up, inspect job status, read job logs, or cancel background work.',
|
|
151
|
+
'Composio trigger workflows can chain jobs automatically: classify priority/route, queue a primary job, and spawn follow-up schedules such as deadline reminders or no-reply nudges. Use automationPlanner when users want custom trigger chains beyond the default orchestration.',
|
|
152
|
+
'When multiple tools need user permission, they are approved one at a time. Do not assume a batch approval covers later actions.',
|
|
138
153
|
'Explain that local jobs require `zilmate jobs worker` to be running, and hosted laptop-closed schedules require QStash plus a public job webhook.',
|
|
139
154
|
'Use getCurrentTime whenever the user asks about the current date, current time, today, tomorrow, yesterday, or any schedule-relative wording. Do not guess dates or times.',
|
|
140
155
|
'Use file-system tools for local file search, reading, writing, folder creation, moving/copying/renaming, document summaries, folder change checks, duplicate/large file audits, and file metadata. File operations are free and unrestricted. Use deleteFile and deleteFolder to remove files (requires confirm=true for safety).',
|
|
141
156
|
'Use shell tools to execute commands and Python scripts: executeCommand runs any shell/PowerShell command (node, python, npm, pnpm, yarn, pip, builds, tests, etc.), installDependencies auto-detects and installs packages, runPipeline chains commands with pipes (cmd1 | cmd2), getSystemInfo gets CPU/memory/OS details, listProcesses lists running apps, findInPath checks if a command exists. These tools make the agent truly powerful in the CLI—capable of running any automation, installing packages, running tests, and executing applications.',
|
|
142
157
|
'Use desktop tools for clipboard (read/write), screenshots (capture/analyze), camera, file/app launching (openFile, openApplication), system information (getSystemInfo), running app enumeration (listRunningApplications), and keyboard automation (simulateKeyboard for typing, hotkeys, Enter/Escape/etc). Desktop tools enable full system automation and UI control.',
|
|
143
158
|
'When returning tool slugs, trigger slugs, ids, env vars, or command names, wrap them in backticks so exact underscores and casing are preserved.',
|
|
144
|
-
'Use specialized subagents for focused chat, quick help, post copy, image assets, research, automation planning, personal-assistant planning,
|
|
159
|
+
'Use specialized subagents for focused chat, quick help, post copy, image assets, research, automation planning, personal-assistant planning, developer integration help, and security (OSINT investigations + penetration testing).',
|
|
160
|
+
'Before specialized work, use searchSkills and readSkill when a matching SKILL.md exists (like Claude Code skills). Follow loaded skill instructions for that task.',
|
|
161
|
+
'Use getPersonalContext and updatePersonalContext to learn and remember what is urgent for this user, their VIP contacts, active projects, and business workflows.',
|
|
145
162
|
'Use automationPlanner for background jobs, schedules, Composio trigger workflows, QStash, webhook planning, monitoring, and follow-up automations.',
|
|
146
163
|
'Use personalAssistant for daily planning, reminders, briefings, prioritization, follow-ups, summaries, and memory-aware personal organization.',
|
|
147
164
|
'Use developerHelper for SDK usage, Next.js routes, install issues, package publishing, Cloudflare tunnels, webhooks, QStash, Composio setup, and technical troubleshooting.',
|
|
@@ -184,6 +201,10 @@ export async function createManagerAgent(runId = randomUUID(), options = {}) {
|
|
|
184
201
|
const result = await developerHelper.generate(agentInput(prompt, abortSignal));
|
|
185
202
|
return result.text;
|
|
186
203
|
}),
|
|
204
|
+
security: subagentTool('security', 'OSINT investigations (username/email/phone/domain lookups) and penetration testing (subdomain discovery, port scanning, vulnerability scanning, SQL injection, web fuzzing). Requires user authorization for active scanning.', async (prompt, abortSignal) => {
|
|
205
|
+
const result = await security.generate(agentInput(prompt, abortSignal));
|
|
206
|
+
return result.text;
|
|
207
|
+
}),
|
|
187
208
|
...ziloDocsTools,
|
|
188
209
|
...memoryTools,
|
|
189
210
|
...timeTools,
|
|
@@ -193,7 +214,10 @@ export async function createManagerAgent(runId = randomUUID(), options = {}) {
|
|
|
193
214
|
...triggerTools,
|
|
194
215
|
...scratchpadTools,
|
|
195
216
|
...composioTools,
|
|
217
|
+
...computerUseTools,
|
|
196
218
|
...shellTools,
|
|
219
|
+
...skillTools,
|
|
220
|
+
...personalContextTools,
|
|
197
221
|
},
|
|
198
222
|
stopWhen: stepCountIs(limits.managerSteps),
|
|
199
223
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/agents/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAsB,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAChG,OAAO,EAA4B,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/agents/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAsB,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAChG,OAAO,EAA4B,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAEzE,SAAS,UAAU,CAAC,MAAc,EAAE,WAAyB;IAC3D,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;AAC5D,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,MAAM,GAA2B;QACrC,SAAS,EAAE,2BAA2B;QACtC,IAAI,EAAE,qBAAqB;QAC3B,IAAI,EAAE,6BAA6B;QACnC,KAAK,EAAE,iCAAiC;QACxC,QAAQ,EAAE,yBAAyB;QACnC,iBAAiB,EAAE,mCAAmC;QACtD,iBAAiB,EAAE,mCAAmC;QACtD,eAAe,EAAE,iCAAiC;QAClD,QAAQ,EAAE,yBAAyB;QACnC,cAAc,EAAE,oBAAoB;QACpC,gBAAgB,EAAE,qBAAqB;QACvC,cAAc,EAAE,eAAe;QAC/B,YAAY,EAAE,kBAAkB;QAChC,UAAU,EAAE,gBAAgB;QAC5B,YAAY,EAAE,mBAAmB;QACjC,YAAY,EAAE,mBAAmB;QACjC,WAAW,EAAE,kBAAkB;QAC/B,cAAc,EAAE,qBAAqB;QACrC,gBAAgB,EAAE,uBAAuB;QACzC,eAAe,EAAE,wBAAwB;QACzC,YAAY,EAAE,kBAAkB;QAChC,aAAa,EAAE,kBAAkB;QACjC,SAAS,EAAE,cAAc;QACzB,QAAQ,EAAE,cAAc;QACxB,OAAO,EAAE,aAAa;QACtB,WAAW,EAAE,kBAAkB;QAC/B,SAAS,EAAE,gBAAgB;QAC3B,cAAc,EAAE,eAAe;QAC/B,WAAW,EAAE,iBAAiB;QAC9B,QAAQ,EAAE,cAAc;QACxB,SAAS,EAAE,cAAc;QACzB,YAAY,EAAE,iBAAiB;QAC/B,cAAc,EAAE,8BAA8B;QAC9C,UAAU,EAAE,eAAe;QAC3B,YAAY,EAAE,iBAAiB;QAC/B,aAAa,EAAE,mBAAmB;QAClC,WAAW,EAAE,mBAAmB;QAChC,iBAAiB,EAAE,sBAAsB;QACzC,kBAAkB,EAAE,yBAAyB;QAC7C,uBAAuB,EAAE,+BAA+B;QACxD,aAAa,EAAE,mBAAmB;QAClC,cAAc,EAAE,mBAAmB;QACnC,cAAc,EAAE,mBAAmB;QACnC,iBAAiB,EAAE,sBAAsB;QACzC,eAAe,EAAE,qBAAqB;QACtC,kBAAkB,EAAE,wBAAwB;QAC5C,QAAQ,EAAE,cAAc;QACxB,eAAe,EAAE,qBAAqB;QACtC,aAAa,EAAE,qBAAqB;QACpC,uBAAuB,EAAE,sBAAsB;QAC/C,gBAAgB,EAAE,wBAAwB;QAC1C,cAAc,EAAE,mBAAmB;QACnC,mBAAmB,EAAE,yBAAyB;QAC9C,WAAW,EAAE,0BAA0B;QACvC,YAAY,EAAE,uBAAuB;QACrC,aAAa,EAAE,mBAAmB;QAClC,UAAU,EAAE,gBAAgB;QAC5B,qBAAqB,EAAE,0BAA0B;QACjD,yBAAyB,EAAE,+BAA+B;QAC1D,2BAA2B,EAAE,8BAA8B;QAC3D,2BAA2B,EAAE,yBAAyB;QACtD,yBAAyB,EAAE,0BAA0B;QACrD,yBAAyB,EAAE,0BAA0B;QACrD,sBAAsB,EAAE,sCAAsC;QAC9D,WAAW,EAAE,mBAAmB;QAChC,cAAc,EAAE,2BAA2B;QAC3C,UAAU,EAAE,yBAAyB;QACrC,YAAY,EAAE,8BAA8B;QAC5C,YAAY,EAAE,8BAA8B;QAC5C,WAAW,EAAE,uBAAuB;KACrC,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,SAAS,IAAI,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,WAAmB,EAAE,GAAmE;IAC1H,OAAO,IAAI,CAAC;QACV,WAAW;QACX,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;YAC7C,YAAY,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;gBAC9C,YAAY,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC5E,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,YAAY,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC5I,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QACD,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;KACzE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAAgB,UAAU,EAAE,EAAE,UAAkC,EAAE;IACzG,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;IACzC,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,iBAAiB,GAAG,4BAA4B,EAAE,CAAC;IACzD,MAAM,iBAAiB,GAAG,4BAA4B,EAAE,CAAC;IACzD,MAAM,eAAe,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC;IAEhF,OAAO,IAAI,aAAa,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC,OAAO;QACrB,YAAY,EAAE;YACZ,kFAAkF;YAClF,kcAAkc;YAClc,mVAAmV;YACnV,wIAAwI;YACxI,uPAAuP;YACvP,kTAAkT;YAClT,wLAAwL;YACxL,qTAAqT;YACrT,2MAA2M;YAC3M,mRAAmR;YACnR,iIAAiI;YACjI,mJAAmJ;YACnJ,4KAA4K;YAC5K,mUAAmU;YACnU,8hBAA8hB;YAC9hB,2WAA2W;YAC3W,kJAAkJ;YAClJ,qOAAqO;YACrO,oKAAoK;YACpK,mKAAmK;YACnK,oJAAoJ;YACpJ,gJAAgJ;YAChJ,6KAA6K;YAC7K,4EAA4E;YAC5E,0LAA0L;YAC1L,4PAA4P;YAC5P,+GAA+G;YAC/G,sHAAsH;SACvH,CAAC,IAAI,CAAC,GAAG,CAAC;QACX,KAAK,EAAE;YACL,SAAS,EAAE,YAAY,CAAC,WAAW,EAAE,0CAA0C,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBAC7G,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACzE,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,IAAI,EAAE,YAAY,CAAC,MAAM,EAAE,8DAA8D,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBACvH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACpE,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,IAAI,EAAE,YAAY,CAAC,MAAM,EAAE,kDAAkD,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBAC3G,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACpE,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,KAAK,EAAE,YAAY,CAAC,OAAO,EAAE,0DAA0D,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBACrH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACrE,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,QAAQ,EAAE,YAAY,CAAC,UAAU,EAAE,wEAAwE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBACzI,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACxE,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,iBAAiB,EAAE,YAAY,CAAC,mBAAmB,EAAE,8GAA8G,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBACjM,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACjF,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,iBAAiB,EAAE,YAAY,CAAC,mBAAmB,EAAE,+GAA+G,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBAClM,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACjF,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,eAAe,EAAE,YAAY,CAAC,iBAAiB,EAAE,oIAAoI,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBACnN,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBAC/E,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,QAAQ,EAAE,YAAY,CAAC,UAAU,EAAE,+NAA+N,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;gBAChS,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACxE,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC;YACF,GAAG,aAAa;YAChB,GAAG,WAAW;YACd,GAAG,SAAS;YACZ,GAAG,eAAe;YAClB,GAAG,YAAY;YACf,GAAG,QAAQ;YACX,GAAG,YAAY;YACf,GAAG,eAAe;YAClB,GAAG,aAAa;YAChB,GAAG,gBAAgB;YACnB,GAAG,UAAU;YACb,GAAG,UAAU;YACb,GAAG,oBAAoB;SACxB;QACD,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC;KAC3C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAa;IACtC,MAAM,SAAS,GAAI,IAAqD,CAAC,SAAS,IAAI,EAAE,CAAC;IACzF,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAChG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,UAA4H,EAAE;IAC7K,OAAO,oBAAoB,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QACvD,OAAO,uBAAuB,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,EAAE,CAAC;YAC5C,YAAY,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3G,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC;gBACpC,MAAM;gBACN,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;oBACrB,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBACtC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACrB,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,wBAAwB,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC9G,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;YACH,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACxD,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
|