@redplanethq/corebrain 2.3.6 → 2.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/commands/browser/close.d.ts +4 -4
- package/dist/commands/browser/close.d.ts.map +1 -1
- package/dist/commands/browser/close.js +15 -17
- package/dist/commands/browser/close.js.map +1 -1
- package/dist/commands/browser/command.d.ts +5 -3
- package/dist/commands/browser/command.d.ts.map +1 -1
- package/dist/commands/browser/command.js +14 -14
- package/dist/commands/browser/command.js.map +1 -1
- package/dist/commands/browser/open-head.d.ts +8 -0
- package/dist/commands/browser/open-head.d.ts.map +1 -0
- package/dist/commands/browser/open-head.js +62 -0
- package/dist/commands/browser/open-head.js.map +1 -0
- package/dist/commands/browser/open.d.ts +2 -2
- package/dist/commands/browser/open.d.ts.map +1 -1
- package/dist/commands/browser/open.js +9 -18
- package/dist/commands/browser/open.js.map +1 -1
- package/dist/commands/browser/status.d.ts.map +1 -1
- package/dist/commands/browser/status.js +8 -7
- package/dist/commands/browser/status.js.map +1 -1
- package/dist/commands/gateway/config.js +1 -1
- package/dist/commands/gateway/config.js.map +1 -1
- package/dist/commands/gateway/restart.js +1 -1
- package/dist/commands/gateway/restart.js.map +1 -1
- package/dist/commands/gateway/start.d.ts +8 -0
- package/dist/commands/gateway/start.d.ts.map +1 -0
- package/dist/commands/gateway/start.js +106 -0
- package/dist/commands/gateway/start.js.map +1 -0
- package/dist/commands/gateway/status.js +2 -2
- package/dist/commands/gateway/status.js.map +1 -1
- package/dist/commands/gateway/stop.d.ts +8 -0
- package/dist/commands/gateway/stop.d.ts.map +1 -0
- package/dist/commands/gateway/stop.js +67 -0
- package/dist/commands/gateway/stop.js.map +1 -0
- package/dist/server/gateway-client.d.ts.map +1 -1
- package/dist/server/gateway-client.js.map +1 -1
- package/dist/server/tools/browser-tools.d.ts +2 -4
- package/dist/server/tools/browser-tools.d.ts.map +1 -1
- package/dist/server/tools/browser-tools.js +26 -46
- package/dist/server/tools/browser-tools.js.map +1 -1
- package/dist/utils/agent-browser.d.ts +8 -26
- package/dist/utils/agent-browser.d.ts.map +1 -1
- package/dist/utils/agent-browser.js +28 -127
- package/dist/utils/agent-browser.js.map +1 -1
- package/dist/utils/coding-runner.d.ts.map +1 -1
- package/dist/utils/coding-runner.js +0 -1
- package/dist/utils/coding-runner.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { useApp } from 'ink';
|
|
3
|
+
import * as p from '@clack/prompts';
|
|
4
|
+
import chalk from 'chalk';
|
|
5
|
+
import zod from 'zod';
|
|
6
|
+
import { getConfig } from '../../config/index.js';
|
|
7
|
+
import { getPreferences, updatePreferences } from '../../config/preferences.js';
|
|
8
|
+
import { getConfigPath } from '../../config/paths.js';
|
|
9
|
+
import { homedir } from 'node:os';
|
|
10
|
+
import { join, dirname } from 'node:path';
|
|
11
|
+
import { fileURLToPath } from 'node:url';
|
|
12
|
+
import { installService, getServiceStatus, startService, getServiceName, getServiceType, getServicePid, } from '../../utils/service-manager/index.js';
|
|
13
|
+
export const options = zod.object({});
|
|
14
|
+
function getGatewayEntryPath() {
|
|
15
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
16
|
+
const __dirname = dirname(__filename);
|
|
17
|
+
return join(__dirname, '..', '..', 'server', 'gateway-entry.js');
|
|
18
|
+
}
|
|
19
|
+
async function runGatewayStart() {
|
|
20
|
+
const spinner = p.spinner();
|
|
21
|
+
// Check platform support
|
|
22
|
+
const serviceType = getServiceType();
|
|
23
|
+
if (serviceType === 'none') {
|
|
24
|
+
p.log.error('Service management not supported on this platform. Only macOS (launchd) and Linux (systemd) are supported.');
|
|
25
|
+
process.exitCode = 1;
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
// Check if authenticated
|
|
29
|
+
spinner.start('Checking configuration...');
|
|
30
|
+
const config = getConfig();
|
|
31
|
+
if (!config.auth?.apiKey || !config.auth?.url) {
|
|
32
|
+
spinner.stop(chalk.red('Not authenticated'));
|
|
33
|
+
p.log.error('Not authenticated. Run `corebrain login` first.');
|
|
34
|
+
process.exitCode = 1;
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
// Check if gateway is configured
|
|
38
|
+
const prefs = getPreferences();
|
|
39
|
+
if (!prefs.gateway?.id || !prefs.gateway?.name) {
|
|
40
|
+
spinner.stop(chalk.red('Not configured'));
|
|
41
|
+
p.log.error('Gateway not configured. Run `corebrain gateway config` first.');
|
|
42
|
+
process.exitCode = 1;
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
const serviceName = getServiceName();
|
|
46
|
+
// Check if already running
|
|
47
|
+
const currentStatus = await getServiceStatus(serviceName);
|
|
48
|
+
if (currentStatus === 'running') {
|
|
49
|
+
spinner.stop(chalk.green('Gateway is already running'));
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
// Install/update the service
|
|
53
|
+
spinner.message('Installing gateway service...');
|
|
54
|
+
const gatewayEntryPath = getGatewayEntryPath();
|
|
55
|
+
const logDir = join(getConfigPath(), 'logs');
|
|
56
|
+
const serviceConfig = {
|
|
57
|
+
name: serviceName,
|
|
58
|
+
displayName: 'CoreBrain Gateway',
|
|
59
|
+
command: process.execPath,
|
|
60
|
+
args: [gatewayEntryPath],
|
|
61
|
+
port: 0,
|
|
62
|
+
workingDirectory: homedir(),
|
|
63
|
+
logPath: join(logDir, 'gateway-stdout.log'),
|
|
64
|
+
errorLogPath: join(logDir, 'gateway-stderr.log'),
|
|
65
|
+
};
|
|
66
|
+
await installService(serviceConfig);
|
|
67
|
+
// Start the service
|
|
68
|
+
spinner.message('Starting gateway service...');
|
|
69
|
+
await startService(serviceName);
|
|
70
|
+
// Wait a moment for the service to start and get the PID
|
|
71
|
+
await new Promise(resolve => setTimeout(resolve, 500));
|
|
72
|
+
const pid = getServicePid(serviceName);
|
|
73
|
+
// Update preferences with actual PID
|
|
74
|
+
updatePreferences({
|
|
75
|
+
gateway: {
|
|
76
|
+
...getPreferences().gateway,
|
|
77
|
+
port: 0,
|
|
78
|
+
pid: pid ?? 0,
|
|
79
|
+
startedAt: Date.now(),
|
|
80
|
+
serviceInstalled: true,
|
|
81
|
+
serviceType: serviceType,
|
|
82
|
+
serviceName: serviceName,
|
|
83
|
+
},
|
|
84
|
+
});
|
|
85
|
+
spinner.stop(chalk.green('Gateway started'));
|
|
86
|
+
p.note([
|
|
87
|
+
'The gateway is now running in the background.',
|
|
88
|
+
"Use 'corebrain gateway status' to check status.",
|
|
89
|
+
"Use 'corebrain gateway stop' to stop and remove.",
|
|
90
|
+
].join('\n'), 'Gateway Started');
|
|
91
|
+
}
|
|
92
|
+
export default function GatewayStart(_props) {
|
|
93
|
+
const { exit } = useApp();
|
|
94
|
+
useEffect(() => {
|
|
95
|
+
runGatewayStart()
|
|
96
|
+
.catch((err) => {
|
|
97
|
+
p.log.error(`Gateway error: ${err instanceof Error ? err.message : 'Unknown error'}`);
|
|
98
|
+
process.exitCode = 1;
|
|
99
|
+
})
|
|
100
|
+
.finally(() => {
|
|
101
|
+
setTimeout(() => exit(), 100);
|
|
102
|
+
});
|
|
103
|
+
}, [exit]);
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=start.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/commands/gateway/start.tsx"],"names":[],"mappings":"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"}
|
|
@@ -41,7 +41,7 @@ async function runGatewayStatus() {
|
|
|
41
41
|
if (!installed) {
|
|
42
42
|
spinner.stop(chalk.yellow('Not installed'));
|
|
43
43
|
p.log.warning('Gateway not installed.');
|
|
44
|
-
p.log.info("Start with: corebrain gateway
|
|
44
|
+
p.log.info("Start with: corebrain gateway start");
|
|
45
45
|
return;
|
|
46
46
|
}
|
|
47
47
|
const status = await getServiceStatus(serviceName);
|
|
@@ -49,7 +49,7 @@ async function runGatewayStatus() {
|
|
|
49
49
|
if (!running) {
|
|
50
50
|
spinner.stop(chalk.yellow('Stopped'));
|
|
51
51
|
p.log.warning('Gateway installed but stopped.');
|
|
52
|
-
p.log.info("Start with: corebrain gateway
|
|
52
|
+
p.log.info("Start with: corebrain gateway start");
|
|
53
53
|
return;
|
|
54
54
|
}
|
|
55
55
|
// Get PID from service manager, fallback to preferences
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/gateway/status.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EACN,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,GACb,MAAM,+BAA+B,CAAC;AAEvC,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAMtC,SAAS,YAAY,CAAC,SAAiB;IACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IAEpC,IAAI,IAAI,GAAG,CAAC;QAAE,OAAO,GAAG,IAAI,KAAK,KAAK,GAAG,EAAE,GAAG,CAAC;IAC/C,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,GAAG,KAAK,KAAK,OAAO,GAAG,EAAE,GAAG,CAAC;IACnD,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,GAAG,OAAO,KAAK,OAAO,GAAG,EAAE,GAAG,CAAC;IACvD,OAAO,GAAG,OAAO,GAAG,CAAC;AACtB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACxC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,iBAAiB,CAAC;IACjD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,iBAAiB,CAAC;IACjD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5B,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAE5C,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;QAC5B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAClE,OAAO;IACR,CAAC;IAED,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAExD,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACxC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/gateway/status.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stop.d.ts","sourceRoot":"","sources":["../../../src/commands/gateway/stop.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAWtB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AA6DF,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,MAAM,EAAE,KAAK,QAchD"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { useApp } from 'ink';
|
|
3
|
+
import * as p from '@clack/prompts';
|
|
4
|
+
import chalk from 'chalk';
|
|
5
|
+
import zod from 'zod';
|
|
6
|
+
import { getPreferences, updatePreferences } from '../../config/preferences.js';
|
|
7
|
+
import { getServiceType, getServiceName, uninstallService, isServiceInstalled, stopService, getServiceStatus, } from '../../utils/service-manager/index.js';
|
|
8
|
+
export const options = zod.object({});
|
|
9
|
+
async function runGatewayStop() {
|
|
10
|
+
const spinner = p.spinner();
|
|
11
|
+
const serviceType = getServiceType();
|
|
12
|
+
if (serviceType === 'none') {
|
|
13
|
+
p.log.error('Service management not supported on this platform.');
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
spinner.start('Checking gateway status...');
|
|
17
|
+
const serviceName = getServiceName();
|
|
18
|
+
const installed = await isServiceInstalled(serviceName);
|
|
19
|
+
if (!installed) {
|
|
20
|
+
// Clean up preferences if needed
|
|
21
|
+
const prefs = getPreferences();
|
|
22
|
+
if (prefs.gateway?.serviceInstalled) {
|
|
23
|
+
const { gateway, ...rest } = prefs;
|
|
24
|
+
updatePreferences(rest);
|
|
25
|
+
}
|
|
26
|
+
spinner.stop(chalk.yellow('Gateway is not running'));
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
// Stop if running
|
|
30
|
+
const serviceStatus = await getServiceStatus(serviceName);
|
|
31
|
+
if (serviceStatus === 'running') {
|
|
32
|
+
spinner.message('Stopping gateway...');
|
|
33
|
+
try {
|
|
34
|
+
await stopService(serviceName);
|
|
35
|
+
await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
// Continue anyway
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
// Uninstall the service
|
|
42
|
+
spinner.message('Removing service...');
|
|
43
|
+
await uninstallService(serviceName);
|
|
44
|
+
// Clean up preferences
|
|
45
|
+
const prefs = getPreferences();
|
|
46
|
+
const { gateway, ...rest } = prefs;
|
|
47
|
+
updatePreferences(rest);
|
|
48
|
+
spinner.stop(chalk.green('Gateway stopped'));
|
|
49
|
+
p.note([
|
|
50
|
+
'The gateway has been stopped and removed.',
|
|
51
|
+
'To start again: corebrain gateway start',
|
|
52
|
+
].join('\n'), 'Gateway Stopped');
|
|
53
|
+
}
|
|
54
|
+
export default function GatewayStop(_props) {
|
|
55
|
+
const { exit } = useApp();
|
|
56
|
+
useEffect(() => {
|
|
57
|
+
runGatewayStop()
|
|
58
|
+
.catch((err) => {
|
|
59
|
+
p.log.error(`Failed to stop gateway: ${err instanceof Error ? err.message : 'Unknown error'}`);
|
|
60
|
+
})
|
|
61
|
+
.finally(() => {
|
|
62
|
+
setTimeout(() => exit(), 100);
|
|
63
|
+
});
|
|
64
|
+
}, [exit]);
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=stop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stop.js","sourceRoot":"","sources":["../../../src/commands/gateway/stop.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-client.d.ts","sourceRoot":"","sources":["../../src/server/gateway-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gateway-client.d.ts","sourceRoot":"","sources":["../../src/server/gateway-client.ts"],"names":[],"mappings":"AAiBA,UAAU,mBAAmB;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AA+BD,MAAM,MAAM,kBAAkB,GAC3B,cAAc,GACd,YAAY,GACZ,WAAW,GACX,OAAO,CAAC;AAEX,qBAAa,aAAa;IACzB,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,KAAK,CAAsC;IACnD,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,oBAAoB,CAAM;IAClC,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,YAAY,CAA+B;gBAEvC,MAAM,EAAE,mBAAmB;IAIvC;;OAEG;IACH,OAAO,CAAC,GAAG;IAQX;;OAEG;IACH,OAAO,CAAC,eAAe;IAoBvB;;OAEG;IACH,OAAO,CAAC,UAAU;IAoBlB;;OAEG;IACH,OAAO,IAAI,IAAI;IAsDf;;OAEG;YACW,aAAa;IAqG3B;;OAEG;YACW,gBAAgB;IA0C9B;;OAEG;IACH,OAAO,CAAC,IAAI;IAMZ;;OAEG;IACH,OAAO,CAAC,iBAAiB;IASzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAOxB;;OAEG;IACH,UAAU,IAAI,IAAI;IAmBlB;;OAEG;IACH,QAAQ,IAAI,kBAAkB;IAI9B;;OAEG;IACH,YAAY,IAAI,MAAM,GAAG,IAAI;IAI7B;;OAEG;IACH,OAAO,IAAI,OAAO;CAGlB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAClC,MAAM,EAAE,mBAAmB,GACzB,aAAa,CAIf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-client.js","sourceRoot":"","sources":["../../src/server/gateway-client.ts"],"names":[],"mappings":"AAAA,OAAO,SAAyB,MAAM,IAAI,CAAC;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AACjC,OAAO,EAAC,YAAY,EAAE,kBAAkB,EAAC,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAC,WAAW,EAAE,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAC,SAAS,EAAE,eAAe,EAAC,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"gateway-client.js","sourceRoot":"","sources":["../../src/server/gateway-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
import zod from 'zod';
|
|
2
2
|
export declare const BrowserOpenSchema: zod.ZodObject<{
|
|
3
|
-
session_name: zod.ZodString;
|
|
4
3
|
url: zod.ZodString;
|
|
5
4
|
profile: zod.ZodDefault<zod.ZodOptional<zod.ZodString>>;
|
|
6
5
|
}, zod.core.$strip>;
|
|
7
6
|
export declare const BrowserCloseSchema: zod.ZodObject<{
|
|
8
|
-
|
|
7
|
+
profile: zod.ZodString;
|
|
9
8
|
}, zod.core.$strip>;
|
|
10
9
|
export declare const BrowserCommandSchema: zod.ZodObject<{
|
|
11
|
-
|
|
10
|
+
profile: zod.ZodString;
|
|
12
11
|
command: zod.ZodString;
|
|
13
12
|
args: zod.ZodDefault<zod.ZodOptional<zod.ZodArray<zod.ZodString>>>;
|
|
14
13
|
}, zod.core.$strip>;
|
|
15
|
-
export declare const BrowserListSessionsSchema: zod.ZodObject<{}, zod.core.$strip>;
|
|
16
14
|
export declare const BrowserGetProfilesSchema: zod.ZodObject<{}, zod.core.$strip>;
|
|
17
15
|
export interface GatewayTool {
|
|
18
16
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-tools.d.ts","sourceRoot":"","sources":["../../../src/server/tools/browser-tools.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAYtB,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"browser-tools.d.ts","sourceRoot":"","sources":["../../../src/server/tools/browser-tools.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAYtB,eAAO,MAAM,iBAAiB;;;mBAG5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;mBAE7B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;mBAI/B,CAAC;AAEH,eAAO,MAAM,wBAAwB,oCAAiB,CAAC;AAIvD,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AA8CD,eAAO,MAAM,YAAY,EAAE,WAAW,EAqBrC,CAAC;AAIF,wBAAsB,kBAAkB,CACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAmF/D"}
|
|
@@ -1,43 +1,40 @@
|
|
|
1
1
|
import zod from 'zod';
|
|
2
|
-
import { browserOpen, browserClose, browserCommand,
|
|
2
|
+
import { browserOpen, browserClose, browserCommand, browserGetProfiles, isBlockedCommand, profileExists, } from '../../utils/agent-browser.js';
|
|
3
3
|
// ============ Zod Schemas ============
|
|
4
4
|
export const BrowserOpenSchema = zod.object({
|
|
5
|
-
session_name: zod.string().describe('Unique session name'),
|
|
6
5
|
url: zod.string().describe('URL to open'),
|
|
7
|
-
profile: zod.string().optional().default('
|
|
6
|
+
profile: zod.string().optional().default('default').describe('Browser profile to use (default: default)'),
|
|
8
7
|
});
|
|
9
8
|
export const BrowserCloseSchema = zod.object({
|
|
10
|
-
|
|
9
|
+
profile: zod.string().describe('Profile to close'),
|
|
11
10
|
});
|
|
12
11
|
export const BrowserCommandSchema = zod.object({
|
|
13
|
-
|
|
12
|
+
profile: zod.string().describe('Profile to run command on'),
|
|
14
13
|
command: zod.string().describe('Command to run (e.g., click, fill, type, screenshot, etc.)'),
|
|
15
14
|
args: zod.array(zod.string()).optional().default([]).describe('Command arguments'),
|
|
16
15
|
});
|
|
17
|
-
export const BrowserListSessionsSchema = zod.object({});
|
|
18
16
|
export const BrowserGetProfilesSchema = zod.object({});
|
|
19
17
|
// ============ JSON Schemas ============
|
|
20
18
|
const jsonSchemas = {
|
|
21
19
|
browser_open: {
|
|
22
20
|
type: 'object',
|
|
23
21
|
properties: {
|
|
24
|
-
session_name: { type: 'string', description: 'Unique session name' },
|
|
25
22
|
url: { type: 'string', description: 'URL to open' },
|
|
26
|
-
profile: { type: 'string', description: 'Browser profile to use (default:
|
|
23
|
+
profile: { type: 'string', description: 'Browser profile to use (default: default)' },
|
|
27
24
|
},
|
|
28
|
-
required: ['
|
|
25
|
+
required: ['url'],
|
|
29
26
|
},
|
|
30
27
|
browser_close: {
|
|
31
28
|
type: 'object',
|
|
32
29
|
properties: {
|
|
33
|
-
|
|
30
|
+
profile: { type: 'string', description: 'Profile to close' },
|
|
34
31
|
},
|
|
35
|
-
required: ['
|
|
32
|
+
required: ['profile'],
|
|
36
33
|
},
|
|
37
34
|
browser_command: {
|
|
38
35
|
type: 'object',
|
|
39
36
|
properties: {
|
|
40
|
-
|
|
37
|
+
profile: { type: 'string', description: 'Profile to run command on' },
|
|
41
38
|
command: {
|
|
42
39
|
type: 'string',
|
|
43
40
|
description: 'Command to run. Available: click, dblclick, fill, type, press, hover, select, check, uncheck, scroll, screenshot, snapshot, eval, get, is, find, wait, mouse, set, tab, frame, back, forward, reload. Blocked: open, close, cookies, storage, network, trace, highlight, console, errors, state, download',
|
|
@@ -48,13 +45,7 @@ const jsonSchemas = {
|
|
|
48
45
|
description: 'Command arguments (selector, text, etc.)',
|
|
49
46
|
},
|
|
50
47
|
},
|
|
51
|
-
required: ['
|
|
52
|
-
},
|
|
53
|
-
browser_list_sessions: {
|
|
54
|
-
type: 'object',
|
|
55
|
-
properties: {},
|
|
56
|
-
required: [],
|
|
57
|
-
description: 'List all active browser sessions (max 3)',
|
|
48
|
+
required: ['profile', 'command'],
|
|
58
49
|
},
|
|
59
50
|
browser_get_profiles: {
|
|
60
51
|
type: 'object',
|
|
@@ -67,24 +58,19 @@ const jsonSchemas = {
|
|
|
67
58
|
export const browserTools = [
|
|
68
59
|
{
|
|
69
60
|
name: 'browser_open',
|
|
70
|
-
description: 'Open a browser
|
|
61
|
+
description: 'Open a browser with a URL using the specified profile. Creates profile if it doesn\'t exist.',
|
|
71
62
|
inputSchema: jsonSchemas.browser_open,
|
|
72
63
|
},
|
|
73
64
|
{
|
|
74
65
|
name: 'browser_close',
|
|
75
|
-
description: 'Close a browser
|
|
66
|
+
description: 'Close a browser for the specified profile',
|
|
76
67
|
inputSchema: jsonSchemas.browser_close,
|
|
77
68
|
},
|
|
78
69
|
{
|
|
79
70
|
name: 'browser_command',
|
|
80
|
-
description: 'Run a browser command on a
|
|
71
|
+
description: 'Run a browser command on a profile. Commands: click, dblclick, fill, type, press, hover, select, check, uncheck, scroll, screenshot, snapshot, eval, get, is, find, wait, mouse, set, tab, frame, back, forward, reload',
|
|
81
72
|
inputSchema: jsonSchemas.browser_command,
|
|
82
73
|
},
|
|
83
|
-
{
|
|
84
|
-
name: 'browser_list_sessions',
|
|
85
|
-
description: 'List all active browser sessions',
|
|
86
|
-
inputSchema: jsonSchemas.browser_list_sessions,
|
|
87
|
-
},
|
|
88
74
|
{
|
|
89
75
|
name: 'browser_get_profiles',
|
|
90
76
|
description: 'List all available browser profiles',
|
|
@@ -97,28 +83,27 @@ export async function executeBrowserTool(toolName, params) {
|
|
|
97
83
|
switch (toolName) {
|
|
98
84
|
case 'browser_open': {
|
|
99
85
|
const p = BrowserOpenSchema.parse(params);
|
|
100
|
-
const r = await browserOpen(p.
|
|
86
|
+
const r = await browserOpen(p.url, p.profile);
|
|
101
87
|
if (r.code !== 0) {
|
|
102
88
|
return { success: false, error: r.stderr || 'Failed to open browser' };
|
|
103
89
|
}
|
|
104
90
|
return {
|
|
105
91
|
success: true,
|
|
106
92
|
result: {
|
|
107
|
-
message: `Opened ${p.url}
|
|
108
|
-
session_name: p.session_name,
|
|
93
|
+
message: `Opened ${p.url} with profile "${p.profile}"`,
|
|
109
94
|
profile: p.profile,
|
|
110
95
|
},
|
|
111
96
|
};
|
|
112
97
|
}
|
|
113
98
|
case 'browser_close': {
|
|
114
99
|
const p = BrowserCloseSchema.parse(params);
|
|
115
|
-
const r = await browserClose(p.
|
|
100
|
+
const r = await browserClose(p.profile);
|
|
116
101
|
if (r.code !== 0) {
|
|
117
102
|
return { success: false, error: r.stderr || 'Failed to close browser' };
|
|
118
103
|
}
|
|
119
104
|
return {
|
|
120
105
|
success: true,
|
|
121
|
-
result: { message: `Closed
|
|
106
|
+
result: { message: `Closed browser for profile "${p.profile}"` },
|
|
122
107
|
};
|
|
123
108
|
}
|
|
124
109
|
case 'browser_command': {
|
|
@@ -130,30 +115,25 @@ export async function executeBrowserTool(toolName, params) {
|
|
|
130
115
|
error: `Command "${p.command}" is blocked. Use browser_open or browser_close instead for open/close, other blocked commands are not available.`,
|
|
131
116
|
};
|
|
132
117
|
}
|
|
133
|
-
|
|
118
|
+
// Check if profile exists
|
|
119
|
+
if (!profileExists(p.profile)) {
|
|
120
|
+
return {
|
|
121
|
+
success: false,
|
|
122
|
+
error: `Profile "${p.profile}" not found. Use browser_open to create a profile first.`,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
const r = await browserCommand(p.profile, p.command, p.args);
|
|
134
126
|
if (r.code !== 0) {
|
|
135
127
|
return { success: false, error: r.stderr || `Failed to run "${p.command}"` };
|
|
136
128
|
}
|
|
137
129
|
return {
|
|
138
130
|
success: true,
|
|
139
131
|
result: {
|
|
140
|
-
message: `Executed "${p.command}" on
|
|
132
|
+
message: `Executed "${p.command}" on profile "${p.profile}"`,
|
|
141
133
|
output: r.stdout,
|
|
142
134
|
},
|
|
143
135
|
};
|
|
144
136
|
}
|
|
145
|
-
case 'browser_list_sessions': {
|
|
146
|
-
BrowserListSessionsSchema.parse(params);
|
|
147
|
-
const sessions = browserListSessions();
|
|
148
|
-
return {
|
|
149
|
-
success: true,
|
|
150
|
-
result: {
|
|
151
|
-
sessions,
|
|
152
|
-
count: sessions.length,
|
|
153
|
-
max_sessions: 3,
|
|
154
|
-
},
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
137
|
case 'browser_get_profiles': {
|
|
158
138
|
BrowserGetProfilesSchema.parse(params);
|
|
159
139
|
const profiles = browserGetProfiles();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-tools.js","sourceRoot":"","sources":["../../../src/server/tools/browser-tools.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EACN,WAAW,EACX,YAAY,EACZ,cAAc,EACd,
|
|
1
|
+
{"version":3,"file":"browser-tools.js","sourceRoot":"","sources":["../../../src/server/tools/browser-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,18 +3,6 @@ export interface CommandResult {
|
|
|
3
3
|
stderr: string;
|
|
4
4
|
code: number;
|
|
5
5
|
}
|
|
6
|
-
export interface BrowserSession {
|
|
7
|
-
sessionName: string;
|
|
8
|
-
profile: string;
|
|
9
|
-
url: string;
|
|
10
|
-
startedAt: string;
|
|
11
|
-
}
|
|
12
|
-
export declare function getActiveSessions(): BrowserSession[];
|
|
13
|
-
export declare function getSession(sessionName: string): BrowserSession | undefined;
|
|
14
|
-
export declare function canCreateSession(): {
|
|
15
|
-
allowed: boolean;
|
|
16
|
-
count: number;
|
|
17
|
-
};
|
|
18
6
|
export declare function clearBinaryPathCache(): void;
|
|
19
7
|
export declare function isAgentBrowserInstalled(): Promise<boolean>;
|
|
20
8
|
export declare function installAgentBrowser(): Promise<CommandResult>;
|
|
@@ -29,36 +17,30 @@ export declare function deleteProfile(name: string): {
|
|
|
29
17
|
};
|
|
30
18
|
export declare function listProfiles(): string[];
|
|
31
19
|
export declare function getProfilesDir(): string;
|
|
20
|
+
export declare function profileExists(name: string): boolean;
|
|
32
21
|
/**
|
|
33
|
-
* Open a browser
|
|
34
|
-
* Creates the corebrain profile if it doesn't exist
|
|
35
|
-
* Enforces max 3 concurrent sessions
|
|
22
|
+
* Open a browser with URL using the specified profile
|
|
36
23
|
*/
|
|
37
|
-
export declare function browserOpen(
|
|
24
|
+
export declare function browserOpen(url: string, profile?: string): Promise<CommandResult>;
|
|
38
25
|
/**
|
|
39
|
-
* Close a browser
|
|
26
|
+
* Close a browser for the specified profile
|
|
40
27
|
*/
|
|
41
|
-
export declare function browserClose(
|
|
28
|
+
export declare function browserClose(profile: string): Promise<CommandResult>;
|
|
42
29
|
/**
|
|
43
30
|
* Check if a command is blocked
|
|
44
31
|
*/
|
|
45
32
|
export declare function isBlockedCommand(command: string): boolean;
|
|
46
33
|
/**
|
|
47
|
-
* Execute a generic browser command
|
|
34
|
+
* Execute a generic browser command on a profile
|
|
48
35
|
* Blocks: open, close, cookies, storage, network, trace, highlight, console, errors, state, download
|
|
49
36
|
*/
|
|
50
|
-
export declare function browserCommand(
|
|
51
|
-
/**
|
|
52
|
-
* List all active browser sessions
|
|
53
|
-
*/
|
|
54
|
-
export declare function browserListSessions(): BrowserSession[];
|
|
37
|
+
export declare function browserCommand(profile: string, command: string, args?: string[]): Promise<CommandResult>;
|
|
55
38
|
/**
|
|
56
39
|
* Get all available profiles
|
|
57
40
|
*/
|
|
58
41
|
export declare function browserGetProfiles(): string[];
|
|
59
42
|
/**
|
|
60
|
-
* Close
|
|
43
|
+
* Close a browser for the specified profile
|
|
61
44
|
*/
|
|
62
45
|
export declare function browserCloseAll(): Promise<void>;
|
|
63
|
-
export declare function getSessionStatus(sessionName: string): Promise<'running' | 'stopped' | 'unknown'>;
|
|
64
46
|
//# sourceMappingURL=agent-browser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-browser.d.ts","sourceRoot":"","sources":["../../src/utils/agent-browser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-browser.d.ts","sourceRoot":"","sources":["../../src/utils/agent-browser.ts"],"names":[],"mappings":"AAwBA,MAAM,WAAW,aAAa;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb;AAgCD,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEhE;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,aAAa,CAAC,CAKlE;AAyFD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAqBA;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAgBA;AAED,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAYvC;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGnD;AAID;;GAEG;AACH,wBAAsB,WAAW,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,MAAkB,GACzB,OAAO,CAAC,aAAa,CAAC,CAGxB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAE1E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGzD;AAED;;;GAGG;AACH,wBAAsB,cAAc,CACnC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,MAAM,EAAO,GACjB,OAAO,CAAC,aAAa,CAAC,CAaxB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAE7C;AAED;;GAEG;AACH,wBAAsB,eAAe,kBAKpC"}
|