@redplanethq/corebrain 1.0.0 → 2.1.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 (181) hide show
  1. package/dist/commands/browser/close.d.ts +10 -0
  2. package/dist/commands/browser/close.d.ts.map +1 -0
  3. package/dist/commands/browser/close.js +60 -0
  4. package/dist/commands/browser/close.js.map +1 -0
  5. package/dist/commands/browser/command.d.ts +10 -0
  6. package/dist/commands/browser/command.d.ts.map +1 -0
  7. package/dist/commands/browser/command.js +67 -0
  8. package/dist/commands/browser/command.js.map +1 -0
  9. package/dist/commands/browser/create-profile.d.ts +10 -0
  10. package/dist/commands/browser/create-profile.d.ts.map +1 -0
  11. package/dist/commands/browser/create-profile.js +29 -0
  12. package/dist/commands/browser/create-profile.js.map +1 -0
  13. package/dist/commands/browser/delete-profile.d.ts +10 -0
  14. package/dist/commands/browser/delete-profile.d.ts.map +1 -0
  15. package/dist/commands/browser/delete-profile.js +27 -0
  16. package/dist/commands/browser/delete-profile.js.map +1 -0
  17. package/dist/commands/browser/install.d.ts +8 -0
  18. package/dist/commands/browser/install.d.ts.map +1 -0
  19. package/dist/commands/browser/install.js +49 -0
  20. package/dist/commands/browser/install.js.map +1 -0
  21. package/dist/commands/browser/open.d.ts +12 -0
  22. package/dist/commands/browser/open.d.ts.map +1 -0
  23. package/dist/commands/browser/open.js +65 -0
  24. package/dist/commands/browser/open.js.map +1 -0
  25. package/dist/commands/browser/status.d.ts +8 -0
  26. package/dist/commands/browser/status.d.ts.map +1 -0
  27. package/dist/commands/browser/status.js +48 -0
  28. package/dist/commands/browser/status.js.map +1 -0
  29. package/dist/commands/coding/[agent]/config.d.ts +18 -0
  30. package/dist/commands/coding/[agent]/config.d.ts.map +1 -0
  31. package/dist/commands/coding/[agent]/config.js +91 -0
  32. package/dist/commands/coding/[agent]/config.js.map +1 -0
  33. package/dist/commands/coding/config.d.ts +23 -0
  34. package/dist/commands/coding/config.d.ts.map +1 -0
  35. package/dist/commands/coding/config.js +116 -0
  36. package/dist/commands/coding/config.js.map +1 -0
  37. package/dist/commands/coding/index.d.ts +8 -0
  38. package/dist/commands/coding/index.d.ts.map +1 -0
  39. package/dist/commands/coding/index.js +42 -0
  40. package/dist/commands/coding/index.js.map +1 -0
  41. package/dist/commands/coding/remove.d.ts +10 -0
  42. package/dist/commands/coding/remove.d.ts.map +1 -0
  43. package/dist/commands/coding/remove.js +37 -0
  44. package/dist/commands/coding/remove.js.map +1 -0
  45. package/dist/commands/coding/setup.d.ts +8 -0
  46. package/dist/commands/coding/setup.d.ts.map +1 -0
  47. package/dist/commands/coding/setup.js +114 -0
  48. package/dist/commands/coding/setup.js.map +1 -0
  49. package/dist/commands/exec/config.d.ts +14 -0
  50. package/dist/commands/exec/config.d.ts.map +1 -0
  51. package/dist/commands/exec/config.js +79 -0
  52. package/dist/commands/exec/config.js.map +1 -0
  53. package/dist/commands/gateway/config.d.ts +8 -0
  54. package/dist/commands/gateway/config.d.ts.map +1 -0
  55. package/dist/commands/gateway/config.js +192 -0
  56. package/dist/commands/gateway/config.js.map +1 -0
  57. package/dist/commands/gateway/index.d.ts +14 -0
  58. package/dist/commands/gateway/index.d.ts.map +1 -0
  59. package/dist/commands/gateway/index.js +10 -0
  60. package/dist/commands/gateway/index.js.map +1 -0
  61. package/dist/commands/gateway/off.d.ts +8 -0
  62. package/dist/commands/gateway/off.d.ts.map +1 -0
  63. package/dist/commands/gateway/off.js +70 -0
  64. package/dist/commands/gateway/off.js.map +1 -0
  65. package/dist/commands/gateway/on.d.ts +8 -0
  66. package/dist/commands/gateway/on.d.ts.map +1 -0
  67. package/dist/commands/gateway/on.js +135 -0
  68. package/dist/commands/gateway/on.js.map +1 -0
  69. package/dist/commands/gateway/restart.d.ts +8 -0
  70. package/dist/commands/gateway/restart.d.ts.map +1 -0
  71. package/dist/commands/gateway/restart.js +70 -0
  72. package/dist/commands/gateway/restart.js.map +1 -0
  73. package/dist/commands/gateway/status.d.ts +8 -0
  74. package/dist/commands/gateway/status.d.ts.map +1 -0
  75. package/dist/commands/gateway/status.js +98 -0
  76. package/dist/commands/gateway/status.js.map +1 -0
  77. package/dist/commands/gateway/uninstall.d.ts +8 -0
  78. package/dist/commands/gateway/uninstall.d.ts.map +1 -0
  79. package/dist/commands/gateway/uninstall.js +80 -0
  80. package/dist/commands/gateway/uninstall.js.map +1 -0
  81. package/dist/commands/index.d.ts +1 -5
  82. package/dist/commands/index.d.ts.map +1 -1
  83. package/dist/commands/login.d.ts +1 -1
  84. package/dist/commands/login.d.ts.map +1 -1
  85. package/dist/commands/logout.d.ts +1 -1
  86. package/dist/commands/logout.d.ts.map +1 -1
  87. package/dist/commands/me.d.ts +1 -1
  88. package/dist/commands/me.d.ts.map +1 -1
  89. package/dist/commands/server.d.ts +10 -0
  90. package/dist/commands/server.d.ts.map +1 -0
  91. package/dist/commands/server.js +60 -0
  92. package/dist/commands/server.js.map +1 -0
  93. package/dist/commands/token.d.ts +1 -1
  94. package/dist/commands/token.d.ts.map +1 -1
  95. package/dist/components/error-message.d.ts.map +1 -1
  96. package/dist/components/error-message.js +6 -1
  97. package/dist/components/error-message.js.map +1 -1
  98. package/dist/components/info-message.d.ts.map +1 -1
  99. package/dist/components/info-message.js +5 -1
  100. package/dist/components/info-message.js.map +1 -1
  101. package/dist/components/success-message.d.ts.map +1 -1
  102. package/dist/components/success-message.js +5 -1
  103. package/dist/components/success-message.js.map +1 -1
  104. package/dist/components/warning-message.d.ts +2 -3
  105. package/dist/components/warning-message.d.ts.map +1 -1
  106. package/dist/components/warning-message.js +10 -4
  107. package/dist/components/warning-message.js.map +1 -1
  108. package/dist/config/index.d.ts +4 -0
  109. package/dist/config/index.d.ts.map +1 -1
  110. package/dist/config/index.js +31 -30
  111. package/dist/config/index.js.map +1 -1
  112. package/dist/config/paths.d.ts.map +1 -1
  113. package/dist/config/paths.js +4 -36
  114. package/dist/config/paths.js.map +1 -1
  115. package/dist/config/preferences.d.ts +14 -0
  116. package/dist/config/preferences.d.ts.map +1 -0
  117. package/dist/config/preferences.js +82 -0
  118. package/dist/config/preferences.js.map +1 -0
  119. package/dist/config/themes.d.ts +5 -0
  120. package/dist/config/themes.d.ts.map +1 -1
  121. package/dist/config/themes.js +5 -0
  122. package/dist/config/themes.js.map +1 -1
  123. package/dist/server/gateway-client.d.ts +80 -0
  124. package/dist/server/gateway-client.d.ts.map +1 -0
  125. package/dist/server/gateway-client.js +280 -0
  126. package/dist/server/gateway-client.js.map +1 -0
  127. package/dist/server/gateway-entry.d.ts +7 -0
  128. package/dist/server/gateway-entry.d.ts.map +1 -0
  129. package/dist/server/gateway-entry.js +138 -0
  130. package/dist/server/gateway-entry.js.map +1 -0
  131. package/dist/server/gateway.d.ts +5 -0
  132. package/dist/server/gateway.d.ts.map +1 -0
  133. package/dist/server/gateway.js +136 -0
  134. package/dist/server/gateway.js.map +1 -0
  135. package/dist/server/tools/browser-tools.d.ts +28 -0
  136. package/dist/server/tools/browser-tools.d.ts.map +1 -0
  137. package/dist/server/tools/browser-tools.js +179 -0
  138. package/dist/server/tools/browser-tools.js.map +1 -0
  139. package/dist/server/tools/coding-tools.d.ts +27 -0
  140. package/dist/server/tools/coding-tools.d.ts.map +1 -0
  141. package/dist/server/tools/coding-tools.js +345 -0
  142. package/dist/server/tools/coding-tools.js.map +1 -0
  143. package/dist/server/tools/exec-tools.d.ts +14 -0
  144. package/dist/server/tools/exec-tools.d.ts.map +1 -0
  145. package/dist/server/tools/exec-tools.js +203 -0
  146. package/dist/server/tools/exec-tools.js.map +1 -0
  147. package/dist/types/config.d.ts +36 -0
  148. package/dist/types/config.d.ts.map +1 -1
  149. package/dist/utils/agent-browser.d.ts +63 -0
  150. package/dist/utils/agent-browser.d.ts.map +1 -0
  151. package/dist/utils/agent-browser.js +301 -0
  152. package/dist/utils/agent-browser.js.map +1 -0
  153. package/dist/utils/coding-runner.d.ts +60 -0
  154. package/dist/utils/coding-runner.d.ts.map +1 -0
  155. package/dist/utils/coding-runner.js +174 -0
  156. package/dist/utils/coding-runner.js.map +1 -0
  157. package/dist/utils/coding-sessions.d.ts +61 -0
  158. package/dist/utils/coding-sessions.d.ts.map +1 -0
  159. package/dist/utils/coding-sessions.js +112 -0
  160. package/dist/utils/coding-sessions.js.map +1 -0
  161. package/dist/utils/process.d.ts +22 -0
  162. package/dist/utils/process.d.ts.map +1 -0
  163. package/dist/utils/process.js +81 -0
  164. package/dist/utils/process.js.map +1 -0
  165. package/dist/utils/service-manager/index.d.ts +49 -0
  166. package/dist/utils/service-manager/index.d.ts.map +1 -0
  167. package/dist/utils/service-manager/index.js +137 -0
  168. package/dist/utils/service-manager/index.js.map +1 -0
  169. package/dist/utils/service-manager/launchd.d.ts +31 -0
  170. package/dist/utils/service-manager/launchd.d.ts.map +1 -0
  171. package/dist/utils/service-manager/launchd.js +208 -0
  172. package/dist/utils/service-manager/launchd.js.map +1 -0
  173. package/dist/utils/service-manager/systemd.d.ts +31 -0
  174. package/dist/utils/service-manager/systemd.d.ts.map +1 -0
  175. package/dist/utils/service-manager/systemd.js +187 -0
  176. package/dist/utils/service-manager/systemd.js.map +1 -0
  177. package/dist/utils/tmux.d.ts +37 -0
  178. package/dist/utils/tmux.d.ts.map +1 -0
  179. package/dist/utils/tmux.js +96 -0
  180. package/dist/utils/tmux.js.map +1 -0
  181. package/package.json +15 -12
@@ -0,0 +1,10 @@
1
+ import zod from 'zod';
2
+ export declare const args: zod.ZodTuple<[zod.ZodString], null>;
3
+ export declare const options: zod.ZodObject<{}, zod.core.$strip>;
4
+ type Props = {
5
+ args: zod.infer<typeof args>;
6
+ options: zod.infer<typeof options>;
7
+ };
8
+ export default function BrowserClose({ args: [sessionName] }: Props): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=close.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"close.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/close.tsx"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAOtB,eAAO,MAAM,IAAI,qCAEf,CAAC;AAEH,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC7B,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,2CAsElE"}
@@ -0,0 +1,60 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { Text } from 'ink';
4
+ import zod from 'zod';
5
+ import { ThemeContext } from '../../hooks/useTheme.js';
6
+ import { themeContextValue } from '../../config/themes.js';
7
+ import SuccessMessage from '../../components/success-message.js';
8
+ import ErrorMessage from '../../components/error-message.js';
9
+ import { isAgentBrowserInstalled, browserClose, getSession } from '../../utils/agent-browser.js';
10
+ export const args = zod.tuple([
11
+ zod.string().describe('Session name to close'),
12
+ ]);
13
+ export const options = zod.object({});
14
+ export default function BrowserClose({ args: [sessionName] }) {
15
+ const [status, setStatus] = useState('checking');
16
+ const [error, setError] = useState('');
17
+ useEffect(() => {
18
+ let cancelled = false;
19
+ (async () => {
20
+ try {
21
+ const installed = await isAgentBrowserInstalled();
22
+ if (!installed) {
23
+ if (!cancelled) {
24
+ setStatus('not-installed');
25
+ }
26
+ return;
27
+ }
28
+ // Check if session exists
29
+ const session = getSession(sessionName);
30
+ if (!session) {
31
+ if (!cancelled) {
32
+ setStatus('not-found');
33
+ }
34
+ return;
35
+ }
36
+ if (!cancelled) {
37
+ setStatus('closing');
38
+ }
39
+ const result = await browserClose(sessionName);
40
+ if (result.code !== 0) {
41
+ throw new Error(result.stderr || 'Failed to close browser');
42
+ }
43
+ if (!cancelled) {
44
+ setStatus('success');
45
+ }
46
+ }
47
+ catch (err) {
48
+ if (!cancelled) {
49
+ setError(err instanceof Error ? err.message : 'Unknown error');
50
+ setStatus('error');
51
+ }
52
+ }
53
+ })();
54
+ return () => {
55
+ cancelled = true;
56
+ };
57
+ }, [sessionName]);
58
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: status === 'checking' ? (_jsx(Text, { dimColor: true, children: "Checking agent-browser..." })) : status === 'not-installed' ? (_jsx(ErrorMessage, { message: "agent-browser is not installed. Run `corebrain browser install` first." })) : status === 'not-found' ? (_jsx(ErrorMessage, { message: `Session "${sessionName}" not found. Use \`corebrain browser status\` to see active sessions.` })) : status === 'closing' ? (_jsxs(Text, { dimColor: true, children: ["Closing session \"", sessionName, "\"..."] })) : status === 'success' ? (_jsx(SuccessMessage, { message: `Closed session "${sessionName}"`, hideTitle: true })) : status === 'error' ? (_jsx(ErrorMessage, { message: `Failed to close browser: ${error}` })) : null }));
59
+ }
60
+ //# sourceMappingURL=close.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"close.js","sourceRoot":"","sources":["../../../src/commands/browser/close.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import zod from 'zod';
2
+ export declare const args: zod.ZodTuple<[zod.ZodString, zod.ZodString], zod.ZodString>;
3
+ export declare const options: zod.ZodObject<{}, zod.core.$strip>;
4
+ type Props = {
5
+ args: zod.infer<typeof args>;
6
+ options: zod.infer<typeof options>;
7
+ };
8
+ export default function BrowserCommand({ args: [sessionName, command, ...commandArgs] }: Props): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/command.tsx"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAMtB,eAAO,MAAM,IAAI,6DAGkC,CAAC;AAEpD,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC7B,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC,EAAE,EAAE,KAAK,2CAmF7F"}
@@ -0,0 +1,67 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { Text, Box } from 'ink';
4
+ import zod from 'zod';
5
+ import { ThemeContext } from '../../hooks/useTheme.js';
6
+ import { themeContextValue } from '../../config/themes.js';
7
+ import ErrorMessage from '../../components/error-message.js';
8
+ import { isAgentBrowserInstalled, browserCommand, getSession, isBlockedCommand } from '../../utils/agent-browser.js';
9
+ export const args = zod.tuple([
10
+ zod.string().describe('Session name'),
11
+ zod.string().describe('Command to run'),
12
+ ]).rest(zod.string().describe('Command arguments'));
13
+ export const options = zod.object({});
14
+ export default function BrowserCommand({ args: [sessionName, command, ...commandArgs] }) {
15
+ const [status, setStatus] = useState('checking');
16
+ const [result, setResult] = useState(null);
17
+ const [error, setError] = useState('');
18
+ useEffect(() => {
19
+ let cancelled = false;
20
+ (async () => {
21
+ try {
22
+ const installed = await isAgentBrowserInstalled();
23
+ if (!installed) {
24
+ if (!cancelled) {
25
+ setStatus('not-installed');
26
+ }
27
+ return;
28
+ }
29
+ // Check if command is blocked
30
+ if (isBlockedCommand(command)) {
31
+ if (!cancelled) {
32
+ setError(`Command "${command}" is blocked. Use \`corebrain browser open\` or \`corebrain browser close\` for open/close operations.`);
33
+ setStatus('blocked');
34
+ }
35
+ return;
36
+ }
37
+ // Check if session exists
38
+ const session = getSession(sessionName);
39
+ if (!session) {
40
+ if (!cancelled) {
41
+ setStatus('not-found');
42
+ }
43
+ return;
44
+ }
45
+ if (!cancelled) {
46
+ setStatus('running');
47
+ }
48
+ const cmdResult = await browserCommand(sessionName, command, commandArgs);
49
+ if (!cancelled) {
50
+ setResult(cmdResult);
51
+ setStatus('done');
52
+ }
53
+ }
54
+ catch (err) {
55
+ if (!cancelled) {
56
+ setError(err instanceof Error ? err.message : 'Unknown error');
57
+ setStatus('error');
58
+ }
59
+ }
60
+ })();
61
+ return () => {
62
+ cancelled = true;
63
+ };
64
+ }, [sessionName, command, commandArgs]);
65
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: status === 'checking' ? (_jsx(Text, { dimColor: true, children: "Checking agent-browser..." })) : status === 'not-installed' ? (_jsx(ErrorMessage, { message: "agent-browser is not installed. Run `corebrain browser install` first." })) : status === 'not-found' ? (_jsx(ErrorMessage, { message: `Session "${sessionName}" not found. Use \`corebrain browser open\` to create a session first.` })) : status === 'blocked' ? (_jsx(ErrorMessage, { message: error })) : status === 'running' ? (_jsxs(Text, { dimColor: true, children: ["Running: ", command, " ", commandArgs.join(' '), " on session \"", sessionName, "\""] })) : status === 'done' && result ? (_jsxs(Box, { flexDirection: "column", children: [result.stdout && _jsx(Text, { children: result.stdout }), result.stderr && _jsx(Text, { color: "red", children: result.stderr }), result.code !== 0 && _jsxs(Text, { dimColor: true, children: ["Exit code: ", result.code] })] })) : status === 'error' ? (_jsx(ErrorMessage, { message: error })) : null }));
66
+ }
67
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/commands/browser/command.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import zod from 'zod';
2
+ export declare const args: zod.ZodTuple<[zod.ZodString], null>;
3
+ export declare const options: zod.ZodObject<{}, zod.core.$strip>;
4
+ type Props = {
5
+ args: zod.infer<typeof args>;
6
+ options: zod.infer<typeof options>;
7
+ };
8
+ export default function BrowserCreateProfile({ args: [name] }: Props): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=create-profile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-profile.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/create-profile.tsx"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAOtB,eAAO,MAAM,IAAI,qCAAqD,CAAC;AAEvE,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC7B,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,2CA4BnE"}
@@ -0,0 +1,29 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { Text } from 'ink';
4
+ import zod from 'zod';
5
+ import { ThemeContext } from '../../hooks/useTheme.js';
6
+ import { themeContextValue } from '../../config/themes.js';
7
+ import SuccessMessage from '../../components/success-message.js';
8
+ import ErrorMessage from '../../components/error-message.js';
9
+ import { createProfile } from '../../utils/agent-browser.js';
10
+ export const args = zod.tuple([zod.string().describe('Profile name')]);
11
+ export const options = zod.object({});
12
+ export default function BrowserCreateProfile({ args: [name] }) {
13
+ const [status, setStatus] = useState('creating');
14
+ const [profilePath, setProfilePath] = useState('');
15
+ const [error, setError] = useState('');
16
+ useEffect(() => {
17
+ const result = createProfile(name);
18
+ if (result.success) {
19
+ setProfilePath(result.path);
20
+ setStatus('success');
21
+ }
22
+ else {
23
+ setError(result.error || 'Unknown error');
24
+ setStatus('error');
25
+ }
26
+ }, [name]);
27
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: status === 'creating' ? (_jsxs(Text, { dimColor: true, children: ["Creating profile ", name, "..."] })) : status === 'success' ? (_jsx(SuccessMessage, { message: `Profile "${name}" created at ${profilePath}` })) : status === 'error' ? (_jsx(ErrorMessage, { message: `Failed to create profile: ${error}` })) : null }));
28
+ }
29
+ //# sourceMappingURL=create-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-profile.js","sourceRoot":"","sources":["../../../src/commands/browser/create-profile.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAOtC,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAS;IACnE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAmC,UAAU,CAAC,CAAC;IACnF,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEvC,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC5B,SAAS,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACP,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC;YAC1C,SAAS,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;IACF,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO,CACN,KAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,iBAAiB,YAC7C,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CACxB,MAAC,IAAI,IAAC,QAAQ,wCAAmB,IAAI,WAAW,CAChD,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAC1B,KAAC,cAAc,IAAC,OAAO,EAAE,YAAY,IAAI,gBAAgB,WAAW,EAAE,GAAI,CAC1E,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CACxB,KAAC,YAAY,IAAC,OAAO,EAAE,6BAA6B,KAAK,EAAE,GAAI,CAC/D,CAAC,CAAC,CAAC,IAAI,GACe,CACxB,CAAC;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ import zod from 'zod';
2
+ export declare const args: zod.ZodTuple<[zod.ZodString], null>;
3
+ export declare const options: zod.ZodObject<{}, zod.core.$strip>;
4
+ type Props = {
5
+ args: zod.infer<typeof args>;
6
+ options: zod.infer<typeof options>;
7
+ };
8
+ export default function BrowserDeleteProfile({ args: [name] }: Props): import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=delete-profile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-profile.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/delete-profile.tsx"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAOtB,eAAO,MAAM,IAAI,qCAAqD,CAAC;AAEvE,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC7B,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,2CA0BnE"}
@@ -0,0 +1,27 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { Text } from 'ink';
4
+ import zod from 'zod';
5
+ import { ThemeContext } from '../../hooks/useTheme.js';
6
+ import { themeContextValue } from '../../config/themes.js';
7
+ import SuccessMessage from '../../components/success-message.js';
8
+ import ErrorMessage from '../../components/error-message.js';
9
+ import { deleteProfile } from '../../utils/agent-browser.js';
10
+ export const args = zod.tuple([zod.string().describe('Profile name')]);
11
+ export const options = zod.object({});
12
+ export default function BrowserDeleteProfile({ args: [name] }) {
13
+ const [status, setStatus] = useState('deleting');
14
+ const [error, setError] = useState('');
15
+ useEffect(() => {
16
+ const result = deleteProfile(name);
17
+ if (result.success) {
18
+ setStatus('success');
19
+ }
20
+ else {
21
+ setError(result.error || 'Unknown error');
22
+ setStatus('error');
23
+ }
24
+ }, [name]);
25
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: status === 'deleting' ? (_jsxs(Text, { dimColor: true, children: ["Deleting profile ", name, "..."] })) : status === 'success' ? (_jsx(SuccessMessage, { message: `Profile "${name}" deleted` })) : status === 'error' ? (_jsx(ErrorMessage, { message: `Failed to delete profile: ${error}` })) : null }));
26
+ }
27
+ //# sourceMappingURL=delete-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-profile.js","sourceRoot":"","sources":["../../../src/commands/browser/delete-profile.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAOtC,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAS;IACnE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAmC,UAAU,CAAC,CAAC;IACnF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEvC,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,SAAS,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACP,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC;YAC1C,SAAS,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;IACF,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO,CACN,KAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,iBAAiB,YAC7C,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CACxB,MAAC,IAAI,IAAC,QAAQ,wCAAmB,IAAI,WAAW,CAChD,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAC1B,KAAC,cAAc,IAAC,OAAO,EAAE,YAAY,IAAI,WAAW,GAAI,CACxD,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CACxB,KAAC,YAAY,IAAC,OAAO,EAAE,6BAA6B,KAAK,EAAE,GAAI,CAC/D,CAAC,CAAC,CAAC,IAAI,GACe,CACxB,CAAC;AACH,CAAC"}
@@ -0,0 +1,8 @@
1
+ import zod from 'zod';
2
+ export declare const options: zod.ZodObject<{}, zod.core.$strip>;
3
+ type Props = {
4
+ options: zod.infer<typeof options>;
5
+ };
6
+ export default function BrowserInstall(_props: Props): import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/install.tsx"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAOtB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,MAAM,EAAE,KAAK,2CA2DnD"}
@@ -0,0 +1,49 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { Text } from 'ink';
4
+ import zod from 'zod';
5
+ import { ThemeContext } from '../../hooks/useTheme.js';
6
+ import { themeContextValue } from '../../config/themes.js';
7
+ import SuccessMessage from '../../components/success-message.js';
8
+ import ErrorMessage from '../../components/error-message.js';
9
+ import { isAgentBrowserInstalled, installAgentBrowser } from '../../utils/agent-browser.js';
10
+ export const options = zod.object({});
11
+ export default function BrowserInstall(_props) {
12
+ const [status, setStatus] = useState('checking');
13
+ const [error, setError] = useState('');
14
+ useEffect(() => {
15
+ let cancelled = false;
16
+ (async () => {
17
+ try {
18
+ const installed = await isAgentBrowserInstalled();
19
+ if (installed) {
20
+ if (!cancelled) {
21
+ setStatus('already-installed');
22
+ }
23
+ return;
24
+ }
25
+ if (!cancelled) {
26
+ setStatus('installing');
27
+ }
28
+ const result = await installAgentBrowser();
29
+ if (result.code !== 0) {
30
+ throw new Error(result.stderr || 'Installation failed');
31
+ }
32
+ if (!cancelled) {
33
+ setStatus('success');
34
+ }
35
+ }
36
+ catch (err) {
37
+ if (!cancelled) {
38
+ setError(err instanceof Error ? err.message : 'Unknown error');
39
+ setStatus('error');
40
+ }
41
+ }
42
+ })();
43
+ return () => {
44
+ cancelled = true;
45
+ };
46
+ }, []);
47
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: status === 'checking' ? (_jsx(Text, { dimColor: true, children: "Checking if agent-browser is installed..." })) : status === 'already-installed' ? (_jsx(SuccessMessage, { message: "agent-browser is already installed", hideTitle: true })) : status === 'installing' ? (_jsx(Text, { dimColor: true, children: "Installing agent-browser globally via npm..." })) : status === 'success' ? (_jsx(SuccessMessage, { message: "agent-browser installed successfully" })) : status === 'error' ? (_jsx(ErrorMessage, { message: `Failed to install agent-browser: ${error}` })) : null }));
48
+ }
49
+ //# sourceMappingURL=install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/browser/install.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import zod from 'zod';
2
+ export declare const args: zod.ZodTuple<[zod.ZodString, zod.ZodString], null>;
3
+ export declare const options: zod.ZodObject<{
4
+ profile: zod.ZodDefault<zod.ZodOptional<zod.ZodString>>;
5
+ }, zod.core.$strip>;
6
+ type Props = {
7
+ args: zod.infer<typeof args>;
8
+ options: zod.infer<typeof options>;
9
+ };
10
+ export default function BrowserOpen({ args: [sessionName, url], options }: Props): import("react/jsx-runtime").JSX.Element;
11
+ export {};
12
+ //# sourceMappingURL=open.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/open.tsx"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAOtB,eAAO,MAAM,IAAI,oDAGf,CAAC;AAEH,eAAO,MAAM,OAAO;;mBAElB,CAAC;AAEH,KAAK,KAAK,GAAG;IACZ,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC7B,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,KAAK,2CAuE/E"}
@@ -0,0 +1,65 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { Text } from 'ink';
4
+ import zod from 'zod';
5
+ import { ThemeContext } from '../../hooks/useTheme.js';
6
+ import { themeContextValue } from '../../config/themes.js';
7
+ import SuccessMessage from '../../components/success-message.js';
8
+ import ErrorMessage from '../../components/error-message.js';
9
+ import { isAgentBrowserInstalled, browserOpen, canCreateSession, getSession } from '../../utils/agent-browser.js';
10
+ export const args = zod.tuple([
11
+ zod.string().describe('Session name'),
12
+ zod.string().describe('URL to open'),
13
+ ]);
14
+ export const options = zod.object({
15
+ profile: zod.string().optional().default('corebrain').describe('Browser profile to use (default: corebrain)'),
16
+ });
17
+ export default function BrowserOpen({ args: [sessionName, url], options }) {
18
+ const [status, setStatus] = useState('checking');
19
+ const [error, setError] = useState('');
20
+ useEffect(() => {
21
+ let cancelled = false;
22
+ (async () => {
23
+ try {
24
+ const installed = await isAgentBrowserInstalled();
25
+ if (!installed) {
26
+ if (!cancelled) {
27
+ setStatus('not-installed');
28
+ }
29
+ return;
30
+ }
31
+ // Check session limit
32
+ const { allowed, count } = canCreateSession();
33
+ const existingSession = getSession(sessionName);
34
+ if (!existingSession && !allowed) {
35
+ if (!cancelled) {
36
+ setError(`Maximum 3 sessions allowed. Currently running: ${count}. Close a session first.`);
37
+ setStatus('error');
38
+ }
39
+ return;
40
+ }
41
+ if (!cancelled) {
42
+ setStatus('opening');
43
+ }
44
+ const result = await browserOpen(sessionName, url, options.profile);
45
+ if (result.code !== 0) {
46
+ throw new Error(result.stderr || 'Failed to open URL');
47
+ }
48
+ if (!cancelled) {
49
+ setStatus('success');
50
+ }
51
+ }
52
+ catch (err) {
53
+ if (!cancelled) {
54
+ setError(err instanceof Error ? err.message : 'Unknown error');
55
+ setStatus('error');
56
+ }
57
+ }
58
+ })();
59
+ return () => {
60
+ cancelled = true;
61
+ };
62
+ }, [sessionName, url, options.profile]);
63
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: status === 'checking' ? (_jsx(Text, { dimColor: true, children: "Checking agent-browser..." })) : status === 'not-installed' ? (_jsx(ErrorMessage, { message: "agent-browser is not installed. Run `corebrain browser install` first." })) : status === 'opening' ? (_jsxs(Text, { dimColor: true, children: ["Opening ", url, " in session \"", sessionName, "\"..."] })) : status === 'success' ? (_jsx(SuccessMessage, { message: `Opened ${url} in session "${sessionName}" (profile: ${options.profile})`, hideTitle: true })) : status === 'error' ? (_jsx(ErrorMessage, { message: `Failed to open URL: ${error}` })) : null }));
64
+ }
65
+ //# sourceMappingURL=open.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/commands/browser/open.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import zod from 'zod';
2
+ export declare const options: zod.ZodObject<{}, zod.core.$strip>;
3
+ type Props = {
4
+ options: zod.infer<typeof options>;
5
+ };
6
+ export default function BrowserStatus(_props: Props): import("react/jsx-runtime").JSX.Element | null;
7
+ export {};
8
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/status.tsx"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAMtB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAQF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAM,EAAE,KAAK,kDA2GlD"}
@@ -0,0 +1,48 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { Text, Box } from 'ink';
4
+ import zod from 'zod';
5
+ import { ThemeContext } from '../../hooks/useTheme.js';
6
+ import { themeContextValue } from '../../config/themes.js';
7
+ import ErrorMessage from '../../components/error-message.js';
8
+ import { isAgentBrowserInstalled, browserListSessions, browserGetProfiles } from '../../utils/agent-browser.js';
9
+ export const options = zod.object({});
10
+ export default function BrowserStatus(_props) {
11
+ const [status, setStatus] = useState('checking');
12
+ const [info, setInfo] = useState(null);
13
+ const [error, setError] = useState('');
14
+ useEffect(() => {
15
+ let cancelled = false;
16
+ (async () => {
17
+ try {
18
+ const installed = await isAgentBrowserInstalled();
19
+ const sessions = browserListSessions();
20
+ const profiles = browserGetProfiles();
21
+ if (!cancelled) {
22
+ setInfo({ installed, sessions, profiles });
23
+ setStatus('ready');
24
+ }
25
+ }
26
+ catch (err) {
27
+ if (!cancelled) {
28
+ setError(err instanceof Error ? err.message : 'Unknown error');
29
+ setStatus('error');
30
+ }
31
+ }
32
+ })();
33
+ return () => {
34
+ cancelled = true;
35
+ };
36
+ }, []);
37
+ if (status === 'checking') {
38
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: _jsx(Text, { dimColor: true, children: "Checking browser status..." }) }));
39
+ }
40
+ if (status === 'error') {
41
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: _jsx(ErrorMessage, { message: error }) }));
42
+ }
43
+ if (!info) {
44
+ return null;
45
+ }
46
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: _jsxs(Box, { flexDirection: "column", gap: 1, children: [_jsx(Box, { children: _jsx(Text, { bold: true, children: "Browser Status" }) }), _jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: "agent-browser: " }), info.installed ? (_jsx(Text, { color: "green", children: "installed" })) : (_jsx(Text, { color: "red", children: "not installed" }))] }), _jsxs(Box, { children: [_jsxs(Text, { dimColor: true, children: ["Sessions (", info.sessions.length, "/3): "] }), info.sessions.length > 0 ? (_jsxs(Text, { color: "green", children: [info.sessions.length, " active"] })) : (_jsx(Text, { color: "gray", children: "none" }))] }), info.sessions.length > 0 && (_jsx(Box, { flexDirection: "column", marginLeft: 2, children: info.sessions.map((session, i) => (_jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: "\u2022 " }), _jsx(Text, { color: "cyan", children: session.sessionName }), _jsxs(Text, { dimColor: true, children: [" \u2192 ", session.url, " (profile: ", session.profile, ")"] })] }, i))) })), _jsxs(Box, { children: [_jsx(Text, { dimColor: true, children: "Profiles: " }), info.profiles.length > 0 ? (_jsx(Text, { children: info.profiles.join(', ') })) : (_jsx(Text, { color: "gray", children: "none" }))] })] }), !info.installed && (_jsx(Box, { marginTop: 1, children: _jsx(Text, { dimColor: true, children: "Run `corebrain browser install` to install agent-browser" }) }))] }) }));
47
+ }
48
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/browser/status.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import zod from 'zod';
2
+ export declare const options: zod.ZodObject<{
3
+ command: zod.ZodOptional<zod.ZodString>;
4
+ sessionArg: zod.ZodOptional<zod.ZodString>;
5
+ dangerouslySkipPermissions: zod.ZodOptional<zod.ZodBoolean>;
6
+ allowedTools: zod.ZodOptional<zod.ZodString>;
7
+ disallowedTools: zod.ZodOptional<zod.ZodString>;
8
+ modelArg: zod.ZodOptional<zod.ZodString>;
9
+ show: zod.ZodOptional<zod.ZodBoolean>;
10
+ }, zod.core.$strip>;
11
+ export declare const positional: zod.ZodTuple<[zod.ZodString], null>;
12
+ type Props = {
13
+ options: zod.infer<typeof options>;
14
+ positional: zod.infer<typeof positional>;
15
+ };
16
+ export default function CodingAgentConfig({ options: opts, positional: pos }: Props): import("react/jsx-runtime").JSX.Element;
17
+ export {};
18
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/commands/coding/[agent]/config.tsx"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,KAAK,CAAC;AAStB,eAAO,MAAM,OAAO;;;;;;;;mBAQlB,CAAC;AAEH,eAAO,MAAM,UAAU,qCAA8C,CAAC;AAEtE,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;IACnC,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EAAC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAC,EAAE,KAAK,2CAgGhF"}