zilmate 1.3.4 → 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.
Files changed (122) hide show
  1. package/dist/agents/automation-planner.agent.d.ts +108 -0
  2. package/dist/agents/automation-planner.agent.d.ts.map +1 -1
  3. package/dist/agents/automation-planner.agent.js +13 -4
  4. package/dist/agents/automation-planner.agent.js.map +1 -1
  5. package/dist/agents/manager.d.ts +304 -0
  6. package/dist/agents/manager.d.ts.map +1 -1
  7. package/dist/agents/manager.js +45 -3
  8. package/dist/agents/manager.js.map +1 -1
  9. package/dist/agents/security.agent.d.ts +340 -0
  10. package/dist/agents/security.agent.d.ts.map +1 -0
  11. package/dist/agents/security.agent.js +76 -0
  12. package/dist/agents/security.agent.js.map +1 -0
  13. package/dist/cli/confirm.d.ts.map +1 -1
  14. package/dist/cli/confirm.js +8 -14
  15. package/dist/cli/confirm.js.map +1 -1
  16. package/dist/cli/format.js +1 -1
  17. package/dist/cli/interactive.d.ts.map +1 -1
  18. package/dist/cli/interactive.js +2 -0
  19. package/dist/cli/interactive.js.map +1 -1
  20. package/dist/cli/triggers.d.ts.map +1 -1
  21. package/dist/cli/triggers.js +12 -4
  22. package/dist/cli/triggers.js.map +1 -1
  23. package/dist/cli/voice.d.ts.map +1 -1
  24. package/dist/cli/voice.js +2 -0
  25. package/dist/cli/voice.js.map +1 -1
  26. package/dist/config/env.d.ts +4 -0
  27. package/dist/config/env.d.ts.map +1 -1
  28. package/dist/config/env.js +4 -0
  29. package/dist/config/env.js.map +1 -1
  30. package/dist/index.js +1 -1
  31. package/dist/jobs/trigger-orchestrator.d.ts +26 -0
  32. package/dist/jobs/trigger-orchestrator.d.ts.map +1 -0
  33. package/dist/jobs/trigger-orchestrator.js +252 -0
  34. package/dist/jobs/trigger-orchestrator.js.map +1 -0
  35. package/dist/jobs/trigger-policies.d.ts +36 -0
  36. package/dist/jobs/trigger-policies.d.ts.map +1 -0
  37. package/dist/jobs/trigger-policies.js +68 -0
  38. package/dist/jobs/trigger-policies.js.map +1 -0
  39. package/dist/jobs/trigger-router.d.ts +14 -0
  40. package/dist/jobs/trigger-router.d.ts.map +1 -0
  41. package/dist/jobs/trigger-router.js +114 -0
  42. package/dist/jobs/trigger-router.js.map +1 -0
  43. package/dist/jobs/workflows.d.ts +4 -1
  44. package/dist/jobs/workflows.d.ts.map +1 -1
  45. package/dist/jobs/workflows.js +18 -42
  46. package/dist/jobs/workflows.js.map +1 -1
  47. package/dist/memory/personal-context.d.ts +45 -0
  48. package/dist/memory/personal-context.d.ts.map +1 -0
  49. package/dist/memory/personal-context.js +103 -0
  50. package/dist/memory/personal-context.js.map +1 -0
  51. package/dist/runtime/confirm.d.ts +3 -0
  52. package/dist/runtime/confirm.d.ts.map +1 -1
  53. package/dist/runtime/confirm.js +38 -12
  54. package/dist/runtime/confirm.js.map +1 -1
  55. package/dist/runtime/progress.d.ts.map +1 -1
  56. package/dist/runtime/progress.js +3 -0
  57. package/dist/runtime/progress.js.map +1 -1
  58. package/dist/server.d.ts +2 -0
  59. package/dist/server.d.ts.map +1 -1
  60. package/dist/server.js +2 -0
  61. package/dist/server.js.map +1 -1
  62. package/dist/skills/loader.d.ts +14 -0
  63. package/dist/skills/loader.d.ts.map +1 -0
  64. package/dist/skills/loader.js +105 -0
  65. package/dist/skills/loader.js.map +1 -0
  66. package/dist/tools/cli-runner.d.ts +13 -0
  67. package/dist/tools/cli-runner.d.ts.map +1 -0
  68. package/dist/tools/cli-runner.js +75 -0
  69. package/dist/tools/cli-runner.js.map +1 -0
  70. package/dist/tools/computer-use.tool.d.ts +159 -0
  71. package/dist/tools/computer-use.tool.d.ts.map +1 -0
  72. package/dist/tools/computer-use.tool.js +356 -0
  73. package/dist/tools/computer-use.tool.js.map +1 -0
  74. package/dist/tools/desktop.tool.d.ts +70 -0
  75. package/dist/tools/desktop.tool.d.ts.map +1 -1
  76. package/dist/tools/desktop.tool.js +188 -0
  77. package/dist/tools/desktop.tool.js.map +1 -1
  78. package/dist/tools/filesystem.tool.d.ts +49 -0
  79. package/dist/tools/filesystem.tool.d.ts.map +1 -1
  80. package/dist/tools/filesystem.tool.js +97 -0
  81. package/dist/tools/filesystem.tool.js.map +1 -1
  82. package/dist/tools/orchestration.tool.d.ts +83 -0
  83. package/dist/tools/orchestration.tool.d.ts.map +1 -0
  84. package/dist/tools/orchestration.tool.js +154 -0
  85. package/dist/tools/orchestration.tool.js.map +1 -0
  86. package/dist/tools/osint-install.tool.d.ts +35 -0
  87. package/dist/tools/osint-install.tool.d.ts.map +1 -0
  88. package/dist/tools/osint-install.tool.js +334 -0
  89. package/dist/tools/osint-install.tool.js.map +1 -0
  90. package/dist/tools/osint.tool.d.ts +445 -0
  91. package/dist/tools/osint.tool.d.ts.map +1 -0
  92. package/dist/tools/osint.tool.js +630 -0
  93. package/dist/tools/osint.tool.js.map +1 -0
  94. package/dist/tools/pentest-install.tool.d.ts +32 -0
  95. package/dist/tools/pentest-install.tool.d.ts.map +1 -0
  96. package/dist/tools/pentest-install.tool.js +201 -0
  97. package/dist/tools/pentest-install.tool.js.map +1 -0
  98. package/dist/tools/pentest.tool.d.ts +595 -0
  99. package/dist/tools/pentest.tool.d.ts.map +1 -0
  100. package/dist/tools/pentest.tool.js +841 -0
  101. package/dist/tools/pentest.tool.js.map +1 -0
  102. package/dist/tools/personal-context.tool.d.ts +32 -0
  103. package/dist/tools/personal-context.tool.d.ts.map +1 -0
  104. package/dist/tools/personal-context.tool.js +76 -0
  105. package/dist/tools/personal-context.tool.js.map +1 -0
  106. package/dist/tools/shell.tool.d.ts +91 -0
  107. package/dist/tools/shell.tool.d.ts.map +1 -0
  108. package/dist/tools/shell.tool.js +332 -0
  109. package/dist/tools/shell.tool.js.map +1 -0
  110. package/dist/tools/skills.tool.d.ts +17 -0
  111. package/dist/tools/skills.tool.d.ts.map +1 -0
  112. package/dist/tools/skills.tool.js +44 -0
  113. package/dist/tools/skills.tool.js.map +1 -0
  114. package/dist/voice/cascade.d.ts.map +1 -1
  115. package/dist/voice/cascade.js +71 -24
  116. package/dist/voice/cascade.js.map +1 -1
  117. package/dist/voice/deepgram.d.ts.map +1 -1
  118. package/dist/voice/deepgram.js +8 -1
  119. package/dist/voice/deepgram.js.map +1 -1
  120. package/dist/voice/types.d.ts +4 -0
  121. package/dist/voice/types.d.ts.map +1 -1
  122. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pentest.tool.js","sourceRoot":"","sources":["../../src/tools/pentest.tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ export declare const personalContextTools: {
2
+ getPersonalContext: import("ai").Tool<Record<string, never>, {
3
+ context: import("../memory/personal-context.js").PersonalContext;
4
+ summary: string;
5
+ }>;
6
+ updatePersonalContext: import("ai").Tool<{
7
+ ownerName?: string | undefined;
8
+ businessName?: string | undefined;
9
+ urgencyRule?: string | undefined;
10
+ workflow?: string | undefined;
11
+ contact?: {
12
+ name: string;
13
+ vip: boolean;
14
+ id?: string | undefined;
15
+ email?: string | undefined;
16
+ handle?: string | undefined;
17
+ role?: string | undefined;
18
+ notes?: string | undefined;
19
+ } | undefined;
20
+ project?: {
21
+ name: string;
22
+ status: "done" | "active" | "paused";
23
+ tags: string[];
24
+ id?: string | undefined;
25
+ description?: string | undefined;
26
+ } | undefined;
27
+ }, {
28
+ updated: boolean;
29
+ summary: string;
30
+ }>;
31
+ };
32
+ //# sourceMappingURL=personal-context.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"personal-context.tool.d.ts","sourceRoot":"","sources":["../../src/tools/personal-context.tool.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoEhC,CAAC"}
@@ -0,0 +1,76 @@
1
+ import { tool } from 'ai';
2
+ import { z } from 'zod';
3
+ import { addUrgencyRule, addWorkflow, formatPersonalContextForPrompt, loadPersonalContext, savePersonalContext, upsertContact, upsertProject, } from '../memory/personal-context.js';
4
+ export const personalContextTools = {
5
+ getPersonalContext: tool({
6
+ description: 'Load the user\'s personal/business context: VIP contacts, active projects, urgency rules, and workflow notes. Use for routing, prioritization, and personalized assistance.',
7
+ inputSchema: z.object({}),
8
+ execute: async () => {
9
+ const context = await loadPersonalContext();
10
+ return {
11
+ context,
12
+ summary: formatPersonalContextForPrompt(context),
13
+ };
14
+ },
15
+ }),
16
+ updatePersonalContext: tool({
17
+ description: 'Update personal context the agent should know about the user\'s life and business. Use when the user defines what "urgent" means, names VIP contacts, or describes workflows.',
18
+ inputSchema: z.object({
19
+ ownerName: z.string().optional(),
20
+ businessName: z.string().optional(),
21
+ urgencyRule: z.string().optional().describe('Add one urgency rule, e.g. "Emails from alice@co.com are always urgent"'),
22
+ workflow: z.string().optional().describe('Add one workflow note, e.g. "Invoice approvals happen in Stripe then Slack #finance"'),
23
+ contact: z.object({
24
+ id: z.string().optional(),
25
+ name: z.string().min(1),
26
+ email: z.string().optional(),
27
+ handle: z.string().optional(),
28
+ role: z.string().optional(),
29
+ vip: z.boolean().optional().default(false),
30
+ notes: z.string().optional(),
31
+ }).optional(),
32
+ project: z.object({
33
+ id: z.string().optional(),
34
+ name: z.string().min(1),
35
+ status: z.enum(['active', 'paused', 'done']).optional().default('active'),
36
+ description: z.string().optional(),
37
+ tags: z.array(z.string()).optional().default([]),
38
+ }).optional(),
39
+ }),
40
+ execute: async (input) => {
41
+ const context = await loadPersonalContext();
42
+ if (input.ownerName)
43
+ context.ownerName = input.ownerName;
44
+ if (input.businessName)
45
+ context.businessName = input.businessName;
46
+ await savePersonalContext(context);
47
+ if (input.urgencyRule)
48
+ await addUrgencyRule(input.urgencyRule);
49
+ if (input.workflow)
50
+ await addWorkflow(input.workflow);
51
+ if (input.contact) {
52
+ await upsertContact({
53
+ name: input.contact.name,
54
+ vip: input.contact.vip ?? false,
55
+ ...(input.contact.id ? { id: input.contact.id } : {}),
56
+ ...(input.contact.email ? { email: input.contact.email } : {}),
57
+ ...(input.contact.handle ? { handle: input.contact.handle } : {}),
58
+ ...(input.contact.role ? { role: input.contact.role } : {}),
59
+ ...(input.contact.notes ? { notes: input.contact.notes } : {}),
60
+ });
61
+ }
62
+ if (input.project) {
63
+ await upsertProject({
64
+ name: input.project.name,
65
+ status: input.project.status ?? 'active',
66
+ tags: input.project.tags ?? [],
67
+ ...(input.project.id ? { id: input.project.id } : {}),
68
+ ...(input.project.description ? { description: input.project.description } : {}),
69
+ });
70
+ }
71
+ const updated = await loadPersonalContext();
72
+ return { updated: true, summary: formatPersonalContextForPrompt(updated) };
73
+ },
74
+ }),
75
+ };
76
+ //# sourceMappingURL=personal-context.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"personal-context.tool.js","sourceRoot":"","sources":["../../src/tools/personal-context.tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ export declare const shellTools: {
2
+ executeCommand: import("ai").Tool<{
3
+ command: string;
4
+ cwd?: string | undefined;
5
+ timeout?: number | undefined;
6
+ env?: Record<string, string> | undefined;
7
+ }, {
8
+ success: boolean;
9
+ exit: any;
10
+ stdout: any;
11
+ stderr: any;
12
+ command: string;
13
+ }>;
14
+ installDependencies: import("ai").Tool<{
15
+ command: string;
16
+ manager?: "npm" | "pnpm" | "yarn" | undefined;
17
+ cwd?: string | undefined;
18
+ timeout?: number | undefined;
19
+ }, {
20
+ success: boolean;
21
+ exit: any;
22
+ manager: string;
23
+ stdout: any;
24
+ stderr: any;
25
+ }>;
26
+ runPipeline: import("ai").Tool<{
27
+ commands: string[];
28
+ cwd?: string | undefined;
29
+ timeout?: number | undefined;
30
+ }, {
31
+ success: boolean;
32
+ exit: any;
33
+ stdout: any;
34
+ stderr: any;
35
+ pipeline: string;
36
+ }>;
37
+ pythonScript: import("ai").Tool<{
38
+ code: string;
39
+ cwd?: string | undefined;
40
+ timeout?: number | undefined;
41
+ }, {
42
+ success: boolean;
43
+ exit: any;
44
+ stdout: any;
45
+ stderr: any;
46
+ }>;
47
+ getSystemInfo: import("ai").Tool<Record<string, never>, {
48
+ platform: NodeJS.Platform;
49
+ arch: NodeJS.Architecture;
50
+ release: string;
51
+ cpuCores: number;
52
+ totalMemoryGB: string;
53
+ freeMemoryGB: string;
54
+ nodeVersion: string;
55
+ currentUser: string;
56
+ uptime: string;
57
+ homeDir: string;
58
+ } | {
59
+ platform: NodeJS.Platform;
60
+ arch: NodeJS.Architecture;
61
+ error: any;
62
+ }>;
63
+ listProcesses: import("ai").Tool<{
64
+ filter?: string | undefined;
65
+ limit?: number | undefined;
66
+ }, {
67
+ processes: string[];
68
+ count: number;
69
+ filtered: boolean;
70
+ error?: never;
71
+ } | {
72
+ error: any;
73
+ processes: never[];
74
+ count: number;
75
+ filtered?: never;
76
+ }>;
77
+ findInPath: import("ai").Tool<{
78
+ command: string;
79
+ }, {
80
+ found: boolean;
81
+ command: string;
82
+ path: string;
83
+ suggestion?: never;
84
+ } | {
85
+ found: boolean;
86
+ command: string;
87
+ suggestion: string;
88
+ path?: never;
89
+ }>;
90
+ };
91
+ //# sourceMappingURL=shell.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.tool.d.ts","sourceRoot":"","sources":["../../src/tools/shell.tool.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwWtB,CAAC"}
@@ -0,0 +1,332 @@
1
+ import { tool } from 'ai';
2
+ import { z } from 'zod';
3
+ import { execFile, exec } from 'node:child_process';
4
+ import { promisify } from 'node:util';
5
+ import { emitProgress } from '../runtime/progress.js';
6
+ import { cpus, totalmem, freemem, platform, arch, release } from 'node:os';
7
+ const execFileAsync = promisify(execFile);
8
+ const execAsync = promisify(exec);
9
+ export const shellTools = {
10
+ executeCommand: tool({
11
+ description: 'Execute any shell/PowerShell command. Handles npm, pnpm, yarn, pip, node, python, builds, tests, and any CLI tool. Cross-platform (Windows PowerShell/Unix sh).',
12
+ inputSchema: z.object({
13
+ command: z.string().min(1).describe('Command to run (e.g., "npm install", "python test_suite.py", "pnpm build", "dir", "ls -la")'),
14
+ cwd: z.string().optional().describe('Working directory. Default: current directory'),
15
+ timeout: z.number().int().min(1000).max(1800000).optional().describe('Timeout milliseconds (default: 300000 = 5 min, max: 30 min)'),
16
+ env: z.record(z.string(), z.string()).optional().describe('Environment variables to set (e.g., {DEBUG: "true", NODE_ENV: "production"})'),
17
+ }),
18
+ execute: async ({ command, cwd, timeout, env }) => {
19
+ emitProgress({ type: 'tool:start', label: 'Executing command', detail: command });
20
+ try {
21
+ const shell = process.platform === 'win32' ? 'powershell.exe' : '/bin/sh';
22
+ const args = process.platform === 'win32'
23
+ ? ['-NoProfile', '-Command', command]
24
+ : ['-c', command];
25
+ const mergedEnv = env ? { ...process.env, ...env } : process.env;
26
+ const { stdout, stderr } = await execFileAsync(shell, args, {
27
+ cwd: cwd || process.cwd(),
28
+ timeout: timeout ?? 300000,
29
+ maxBuffer: 50 * 1024 * 1024, // 50MB buffer for large outputs
30
+ windowsHide: true,
31
+ env: mergedEnv,
32
+ });
33
+ emitProgress({ type: 'tool:end', label: 'Command executed', detail: command });
34
+ return {
35
+ success: true,
36
+ exit: 0,
37
+ stdout: stdout.trim(),
38
+ stderr: stderr.trim(),
39
+ command,
40
+ };
41
+ }
42
+ catch (error) {
43
+ const stdout = error.stdout?.toString().trim() ?? '';
44
+ const stderr = error.stderr?.toString().trim() ?? '';
45
+ const exit = error.code ?? 1;
46
+ emitProgress({
47
+ type: 'tool:error',
48
+ label: 'Command failed',
49
+ detail: `Exit ${exit}: ${stderr || 'No error message'}`
50
+ });
51
+ return {
52
+ success: false,
53
+ exit,
54
+ stdout,
55
+ stderr,
56
+ command,
57
+ };
58
+ }
59
+ },
60
+ }),
61
+ installDependencies: tool({
62
+ description: 'Install dependencies using npm, pnpm, or yarn. Auto-detects package manager. Great for "npm install", "pnpm add react", "yarn add --dev typescript".',
63
+ inputSchema: z.object({
64
+ command: z.string().min(1).describe('Install command (e.g., "install", "add react", "add -D typescript")'),
65
+ manager: z.enum(['npm', 'pnpm', 'yarn']).optional().describe('Package manager to use. Auto-detect: pnpm if pnpm-lock.yaml exists, yarn if yarn.lock exists, else npm.'),
66
+ cwd: z.string().optional().describe('Project directory. Default: current directory'),
67
+ timeout: z.number().int().min(5000).max(1800000).optional().describe('Timeout in milliseconds. Default: 600000 (10 minutes)'),
68
+ }),
69
+ execute: async ({ command, manager, cwd, timeout }) => {
70
+ emitProgress({ type: 'tool:start', label: 'Installing dependencies', detail: `${manager || 'auto-detect'} ${command}` });
71
+ try {
72
+ let pm = manager;
73
+ if (!pm) {
74
+ // Auto-detect based on lock files
75
+ const fs = await import('node:fs/promises');
76
+ const path = await import('node:path');
77
+ const workDir = cwd || process.cwd();
78
+ try {
79
+ await fs.access(path.join(workDir, 'pnpm-lock.yaml'));
80
+ pm = 'pnpm';
81
+ }
82
+ catch {
83
+ try {
84
+ await fs.access(path.join(workDir, 'yarn.lock'));
85
+ pm = 'yarn';
86
+ }
87
+ catch {
88
+ pm = 'npm';
89
+ }
90
+ }
91
+ }
92
+ const fullCommand = `${pm} ${command}`;
93
+ const shell = process.platform === 'win32' ? 'powershell.exe' : '/bin/sh';
94
+ const args = process.platform === 'win32'
95
+ ? ['-NoProfile', '-Command', fullCommand]
96
+ : ['-c', fullCommand];
97
+ const { stdout, stderr } = await execFileAsync(shell, args, {
98
+ cwd: cwd || process.cwd(),
99
+ timeout: timeout ?? 600000,
100
+ maxBuffer: 50 * 1024 * 1024,
101
+ windowsHide: true,
102
+ });
103
+ emitProgress({ type: 'tool:end', label: 'Dependencies installed', detail: `${pm} ${command}` });
104
+ return {
105
+ success: true,
106
+ exit: 0,
107
+ manager: pm,
108
+ stdout: stdout.trim(),
109
+ stderr: stderr.trim(),
110
+ };
111
+ }
112
+ catch (error) {
113
+ const stdout = error.stdout?.toString().trim() ?? '';
114
+ const stderr = error.stderr?.toString().trim() ?? '';
115
+ const exit = error.code ?? 1;
116
+ emitProgress({
117
+ type: 'tool:error',
118
+ label: 'Install failed',
119
+ detail: `Exit ${exit}`
120
+ });
121
+ return {
122
+ success: false,
123
+ exit,
124
+ manager: manager || 'auto',
125
+ stdout,
126
+ stderr,
127
+ };
128
+ }
129
+ },
130
+ }),
131
+ runPipeline: tool({
132
+ description: 'Run piped/chained commands (cmd1 | cmd2 | cmd3). Execute command pipelines, filters, and chains for complex CLI operations.',
133
+ inputSchema: z.object({
134
+ commands: z.array(z.string()).min(2).describe('Array of commands to pipe together (e.g., ["find . -type f", "grep test", "wc -l"])'),
135
+ cwd: z.string().optional().describe('Working directory'),
136
+ timeout: z.number().int().min(1000).max(600000).optional().describe('Timeout in milliseconds (default: 300000)'),
137
+ }),
138
+ execute: async ({ commands, cwd, timeout }) => {
139
+ const pipelineStr = commands.join(' | ');
140
+ emitProgress({ type: 'tool:start', label: 'Running pipeline', detail: pipelineStr });
141
+ try {
142
+ const shell = process.platform === 'win32' ? 'powershell.exe' : '/bin/sh';
143
+ const args = process.platform === 'win32'
144
+ ? ['-NoProfile', '-Command', pipelineStr]
145
+ : ['-c', pipelineStr];
146
+ const { stdout, stderr } = await execFileAsync(shell, args, {
147
+ cwd: cwd || process.cwd(),
148
+ timeout: timeout ?? 300000,
149
+ maxBuffer: 50 * 1024 * 1024,
150
+ windowsHide: true,
151
+ });
152
+ emitProgress({ type: 'tool:end', label: 'Pipeline completed' });
153
+ return {
154
+ success: true,
155
+ exit: 0,
156
+ stdout: stdout.trim(),
157
+ stderr: stderr.trim(),
158
+ pipeline: pipelineStr,
159
+ };
160
+ }
161
+ catch (error) {
162
+ const stdout = error.stdout?.toString().trim() ?? '';
163
+ const stderr = error.stderr?.toString().trim() ?? '';
164
+ const exit = error.code ?? 1;
165
+ emitProgress({
166
+ type: 'tool:error',
167
+ label: 'Pipeline failed',
168
+ detail: `Exit ${exit}`
169
+ });
170
+ return {
171
+ success: false,
172
+ exit,
173
+ stdout,
174
+ stderr,
175
+ pipeline: pipelineStr,
176
+ };
177
+ }
178
+ },
179
+ }),
180
+ pythonScript: tool({
181
+ description: 'Execute Python code or scripts. Perfect for testing, data processing, running test suites, or any Python automation.',
182
+ inputSchema: z.object({
183
+ code: z.string().min(1).describe('Python code (e.g., "print(\'hello\')" or multi-line script)'),
184
+ cwd: z.string().optional().describe('Working directory'),
185
+ timeout: z.number().int().min(1000).max(600000).optional().describe('Timeout in milliseconds (default: 300000)'),
186
+ }),
187
+ execute: async ({ code, cwd, timeout }) => {
188
+ emitProgress({ type: 'tool:start', label: 'Running Python', detail: code.slice(0, 50) });
189
+ try {
190
+ const { stdout, stderr } = await execFileAsync('python', ['-c', code], {
191
+ cwd: cwd || process.cwd(),
192
+ timeout: timeout ?? 300000,
193
+ maxBuffer: 50 * 1024 * 1024,
194
+ windowsHide: true,
195
+ });
196
+ emitProgress({ type: 'tool:end', label: 'Python executed successfully' });
197
+ return {
198
+ success: true,
199
+ exit: 0,
200
+ stdout: stdout.trim(),
201
+ stderr: stderr.trim(),
202
+ };
203
+ }
204
+ catch (error) {
205
+ const stdout = error.stdout?.toString().trim() ?? '';
206
+ const stderr = error.stderr?.toString().trim() ?? '';
207
+ const exit = error.code ?? 1;
208
+ emitProgress({
209
+ type: 'tool:error',
210
+ label: 'Python failed',
211
+ detail: stderr || 'Execution error'
212
+ });
213
+ return {
214
+ success: false,
215
+ exit,
216
+ stdout,
217
+ stderr,
218
+ };
219
+ }
220
+ },
221
+ }),
222
+ getSystemInfo: tool({
223
+ description: 'Get detailed system information: CPU cores, memory, OS, architecture, node version, current user, uptime.',
224
+ inputSchema: z.object({}),
225
+ execute: async () => {
226
+ emitProgress({ type: 'tool:start', label: 'Fetching system info' });
227
+ try {
228
+ const os = await import('node:os');
229
+ const { execSync } = await import('node:child_process');
230
+ let currentUser = 'unknown';
231
+ try {
232
+ currentUser = process.platform === 'win32'
233
+ ? (execSync('whoami', { encoding: 'utf-8', windowsHide: true }).trim().split('\\').pop() || 'unknown')
234
+ : (execSync('whoami', { encoding: 'utf-8' }).trim());
235
+ }
236
+ catch {
237
+ // Fallback
238
+ }
239
+ const systemInfo = {
240
+ platform: platform(),
241
+ arch: arch(),
242
+ release: release(),
243
+ cpuCores: cpus().length,
244
+ totalMemoryGB: (totalmem() / (1024 ** 3)).toFixed(2),
245
+ freeMemoryGB: (freemem() / (1024 ** 3)).toFixed(2),
246
+ nodeVersion: process.version,
247
+ currentUser,
248
+ uptime: `${Math.floor(os.uptime() / 3600)} hours`,
249
+ homeDir: os.homedir(),
250
+ };
251
+ emitProgress({ type: 'tool:end', label: 'System info retrieved' });
252
+ return systemInfo;
253
+ }
254
+ catch (error) {
255
+ return {
256
+ platform: platform(),
257
+ arch: arch(),
258
+ error: error.message,
259
+ };
260
+ }
261
+ },
262
+ }),
263
+ listProcesses: tool({
264
+ description: 'List running processes (Windows: tasklist, Unix: ps aux). Filter by name if needed.',
265
+ inputSchema: z.object({
266
+ filter: z.string().optional().describe('Filter processes by name (partial match, case-insensitive)'),
267
+ limit: z.number().int().min(1).max(500).optional().describe('Max processes to return (default: 100)'),
268
+ }),
269
+ execute: async ({ filter, limit }) => {
270
+ emitProgress({ type: 'tool:start', label: 'Listing processes' });
271
+ try {
272
+ let command = process.platform === 'win32'
273
+ ? 'tasklist /FO CSV /V'
274
+ : 'ps aux';
275
+ const { stdout } = await execFileAsync(process.platform === 'win32' ? 'tasklist' : 'ps', process.platform === 'win32' ? ['/FO', 'CSV', '/V'] : ['aux'], { timeout: 10000, maxBuffer: 10 * 1024 * 1024 });
276
+ const lines = stdout.trim().split('\n');
277
+ const maxResults = limit ?? 100;
278
+ let processes = lines.slice(0, maxResults);
279
+ if (filter) {
280
+ const lowerFilter = filter.toLowerCase();
281
+ processes = processes.filter(line => line.toLowerCase().includes(lowerFilter));
282
+ }
283
+ emitProgress({ type: 'tool:end', label: `Found ${processes.length} processes` });
284
+ return {
285
+ processes: processes.slice(0, maxResults),
286
+ count: processes.length,
287
+ filtered: !!filter,
288
+ };
289
+ }
290
+ catch (error) {
291
+ emitProgress({ type: 'tool:error', label: 'Failed to list processes', detail: error.message });
292
+ return {
293
+ error: error.message,
294
+ processes: [],
295
+ count: 0,
296
+ };
297
+ }
298
+ },
299
+ }),
300
+ findInPath: tool({
301
+ description: 'Find or check if a command/executable exists in system PATH. Useful to verify if node, python, npm, pnpm, etc. are installed.',
302
+ inputSchema: z.object({
303
+ command: z.string().min(1).describe('Command name to find (e.g., "python", "npm", "git", "node")'),
304
+ }),
305
+ execute: async ({ command }) => {
306
+ emitProgress({ type: 'tool:start', label: 'Searching PATH', detail: command });
307
+ try {
308
+ const probe = process.platform === 'win32' ? 'where.exe' : 'which';
309
+ const { stdout } = await execFileAsync(probe, [command], {
310
+ windowsHide: true,
311
+ timeout: 5000
312
+ });
313
+ const foundPath = stdout.trim().split('\n')[0] || '';
314
+ emitProgress({ type: 'tool:end', label: 'Found in PATH', detail: foundPath || command });
315
+ return {
316
+ found: true,
317
+ command,
318
+ path: foundPath,
319
+ };
320
+ }
321
+ catch (error) {
322
+ emitProgress({ type: 'tool:error', label: 'Command not found', detail: command });
323
+ return {
324
+ found: false,
325
+ command,
326
+ suggestion: `Install ${command} or add it to PATH`,
327
+ };
328
+ }
329
+ },
330
+ }),
331
+ };
332
+ //# sourceMappingURL=shell.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.tool.js","sourceRoot":"","sources":["../../src/tools/shell.tool.ts"],"names":[],"mappings":"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"}