@redplanethq/corebrain 2.7.2 → 2.8.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 (99) hide show
  1. package/dist/commands/browser/close-session.d.ts +10 -0
  2. package/dist/commands/browser/close-session.d.ts.map +1 -0
  3. package/dist/commands/browser/close-session.js +34 -0
  4. package/dist/commands/browser/close-session.js.map +1 -0
  5. package/dist/commands/browser/close.d.ts +2 -5
  6. package/dist/commands/browser/close.d.ts.map +1 -1
  7. package/dist/commands/browser/close.js +11 -38
  8. package/dist/commands/browser/close.js.map +1 -1
  9. package/dist/commands/browser/command.d.ts +3 -3
  10. package/dist/commands/browser/command.d.ts.map +1 -1
  11. package/dist/commands/browser/command.js +23 -26
  12. package/dist/commands/browser/command.js.map +1 -1
  13. package/dist/commands/browser/create-profile.d.ts +10 -0
  14. package/dist/commands/browser/create-profile.d.ts.map +1 -0
  15. package/dist/commands/browser/create-profile.js +37 -0
  16. package/dist/commands/browser/create-profile.js.map +1 -0
  17. package/dist/commands/browser/create-session.d.ts +4 -2
  18. package/dist/commands/browser/create-session.d.ts.map +1 -1
  19. package/dist/commands/browser/create-session.js +20 -10
  20. package/dist/commands/browser/create-session.js.map +1 -1
  21. package/dist/commands/browser/delete-profile.d.ts +10 -0
  22. package/dist/commands/browser/delete-profile.d.ts.map +1 -0
  23. package/dist/commands/browser/delete-profile.js +44 -0
  24. package/dist/commands/browser/delete-profile.js.map +1 -0
  25. package/dist/commands/browser/delete-session.d.ts.map +1 -1
  26. package/dist/commands/browser/delete-session.js +5 -13
  27. package/dist/commands/browser/delete-session.js.map +1 -1
  28. package/dist/commands/browser/install.d.ts.map +1 -1
  29. package/dist/commands/browser/install.js +18 -29
  30. package/dist/commands/browser/install.js.map +1 -1
  31. package/dist/commands/browser/list-sessions.d.ts.map +1 -1
  32. package/dist/commands/browser/list-sessions.js +8 -5
  33. package/dist/commands/browser/list-sessions.js.map +1 -1
  34. package/dist/commands/browser/open-head.d.ts.map +1 -1
  35. package/dist/commands/browser/open-head.js +21 -23
  36. package/dist/commands/browser/open-head.js.map +1 -1
  37. package/dist/commands/browser/open.d.ts +2 -2
  38. package/dist/commands/browser/open.d.ts.map +1 -1
  39. package/dist/commands/browser/open.js +27 -23
  40. package/dist/commands/browser/open.js.map +1 -1
  41. package/dist/commands/browser/set-browser.js +1 -1
  42. package/dist/commands/browser/set-browser.js.map +1 -1
  43. package/dist/commands/browser/status.d.ts.map +1 -1
  44. package/dist/commands/browser/status.js +23 -20
  45. package/dist/commands/browser/status.js.map +1 -1
  46. package/dist/commands/gateway/config.js +6 -6
  47. package/dist/commands/gateway/config.js.map +1 -1
  48. package/dist/commands/gateway/start.js +2 -2
  49. package/dist/commands/gateway/start.js.map +1 -1
  50. package/dist/server/gateway-client.js +2 -2
  51. package/dist/server/gateway-client.js.map +1 -1
  52. package/dist/server/tools/browser-tools.d.ts +0 -16
  53. package/dist/server/tools/browser-tools.d.ts.map +1 -1
  54. package/dist/server/tools/browser-tools.js +363 -127
  55. package/dist/server/tools/browser-tools.js.map +1 -1
  56. package/dist/server/tools/coding-tools.d.ts.map +1 -1
  57. package/dist/server/tools/coding-tools.js +4 -3
  58. package/dist/server/tools/coding-tools.js.map +1 -1
  59. package/dist/tui/chat.d.ts.map +1 -1
  60. package/dist/tui/chat.js +6 -4
  61. package/dist/tui/chat.js.map +1 -1
  62. package/dist/tui/hooks/use-conversation.d.ts.map +1 -1
  63. package/dist/tui/hooks/use-conversation.js +1 -0
  64. package/dist/tui/hooks/use-conversation.js.map +1 -1
  65. package/dist/types/config.d.ts +6 -1
  66. package/dist/types/config.d.ts.map +1 -1
  67. package/dist/utils/browser-config.d.ts +51 -0
  68. package/dist/utils/browser-config.d.ts.map +1 -0
  69. package/dist/utils/browser-config.js +293 -0
  70. package/dist/utils/browser-config.js.map +1 -0
  71. package/dist/utils/browser-manager.d.ts +27 -0
  72. package/dist/utils/browser-manager.d.ts.map +1 -0
  73. package/dist/utils/browser-manager.js +131 -0
  74. package/dist/utils/browser-manager.js.map +1 -0
  75. package/dist/utils/coding-agents/claude-code.d.ts +0 -1
  76. package/dist/utils/coding-agents/claude-code.d.ts.map +1 -1
  77. package/dist/utils/coding-agents/claude-code.js +0 -4
  78. package/dist/utils/coding-agents/claude-code.js.map +1 -1
  79. package/dist/utils/coding-agents/codex.d.ts +0 -1
  80. package/dist/utils/coding-agents/codex.d.ts.map +1 -1
  81. package/dist/utils/coding-agents/codex.js +0 -3
  82. package/dist/utils/coding-agents/codex.js.map +1 -1
  83. package/dist/utils/coding-agents/index.d.ts +0 -1
  84. package/dist/utils/coding-agents/index.d.ts.map +1 -1
  85. package/dist/utils/coding-agents/index.js +0 -3
  86. package/dist/utils/coding-agents/index.js.map +1 -1
  87. package/dist/utils/coding-agents/types.d.ts +0 -1
  88. package/dist/utils/coding-agents/types.d.ts.map +1 -1
  89. package/dist/utils/coding-agents/types.js +0 -1
  90. package/dist/utils/coding-agents/types.js.map +1 -1
  91. package/dist/utils/coding-runner.d.ts +2 -4
  92. package/dist/utils/coding-runner.d.ts.map +1 -1
  93. package/dist/utils/coding-runner.js +4 -7
  94. package/dist/utils/coding-runner.js.map +1 -1
  95. package/package.json +2 -1
  96. package/dist/utils/agent-browser.d.ts +0 -135
  97. package/dist/utils/agent-browser.d.ts.map +0 -1
  98. package/dist/utils/agent-browser.js +0 -561
  99. package/dist/utils/agent-browser.js.map +0 -1
@@ -3,18 +3,17 @@ import { useApp } from 'ink';
3
3
  import * as p from '@clack/prompts';
4
4
  import chalk from 'chalk';
5
5
  import zod from 'zod';
6
- import { isAgentBrowserInstalled, installAgentBrowser, runAgentBrowserDoctor, browserGetSessions, getMaxSessions, } from '../../utils/agent-browser.js';
6
+ import { isPlaywrightReady, installPlaywrightChromium, getPlaywrightVersion, getConfiguredProfiles, getMaxProfiles, } from '../../utils/browser-config.js';
7
7
  export const options = zod.object({});
8
8
  async function runBrowserInstall() {
9
9
  const spinner = p.spinner();
10
- spinner.start('Checking if agent-browser is installed...');
11
- const installed = await isAgentBrowserInstalled();
12
- if (installed) {
13
- spinner.stop(chalk.green('agent-browser is already installed'));
14
- // Check version
10
+ spinner.start('Checking if Playwright Chromium is installed...');
11
+ const ready = await isPlaywrightReady();
12
+ if (ready) {
13
+ spinner.stop(chalk.green('Playwright Chromium is already installed'));
15
14
  const versionSpinner = p.spinner();
16
15
  versionSpinner.start('Checking version...');
17
- const versionResult = await runAgentBrowserDoctor();
16
+ const versionResult = await getPlaywrightVersion();
18
17
  if (versionResult.code === 0) {
19
18
  versionSpinner.stop(chalk.green('Installation validated'));
20
19
  if (versionResult.stdout) {
@@ -24,44 +23,34 @@ async function runBrowserInstall() {
24
23
  else {
25
24
  versionSpinner.stop(chalk.yellow('Could not verify version'));
26
25
  }
27
- // Show configured sessions
28
- const sessions = browserGetSessions();
29
- const maxSessions = getMaxSessions();
30
- if (sessions.length > 0) {
31
- p.log.info(`Configured sessions (${sessions.length}/${maxSessions}): ${sessions.join(', ')}`);
26
+ const profiles = getConfiguredProfiles();
27
+ const maxProfiles = getMaxProfiles();
28
+ if (profiles.length > 0) {
29
+ p.log.info(`Configured profiles (${profiles.length}/${maxProfiles}): ${profiles.join(', ')}`);
32
30
  }
33
31
  else {
34
- p.log.info('No sessions configured. Run `corebrain browser create-session <name>` to create one.');
32
+ p.log.info('No profiles. Run `corebrain browser create-profile <name>` to create one.');
35
33
  }
36
- // Recommend Brave
37
- p.log.info('');
38
- p.log.info(chalk.bold('Recommended browser: Brave'));
39
- p.log.info('Install: brew install --cask brave-browser');
40
34
  return;
41
35
  }
42
- spinner.message('Installing agent-browser via npm...');
43
- const result = await installAgentBrowser();
36
+ spinner.message('Installing Playwright Chromium...');
37
+ const result = await installPlaywrightChromium();
44
38
  if (result.code !== 0) {
45
39
  spinner.stop(chalk.red('Installation failed'));
46
40
  p.log.error(result.stderr || 'Installation failed');
47
41
  return;
48
42
  }
49
- spinner.stop(chalk.green('agent-browser installed successfully'));
50
- // Show default sessions created
51
- const sessions = browserGetSessions();
52
- const maxSessions = getMaxSessions();
53
- p.log.info(`Default sessions created (${sessions.length}/${maxSessions}): ${sessions.join(', ')}`);
54
- // Recommend Brave
55
- p.log.info('');
56
- p.log.info(chalk.bold('Recommended browser: Brave'));
57
- p.log.info('Install: brew install --cask brave-browser');
43
+ spinner.stop(chalk.green('Playwright Chromium installed successfully'));
44
+ const profiles = getConfiguredProfiles();
45
+ const maxProfiles = getMaxProfiles();
46
+ p.log.info(`Default profiles created (${profiles.length}/${maxProfiles}): ${profiles.join(', ')}`);
58
47
  }
59
48
  export default function BrowserInstall(_props) {
60
49
  const { exit } = useApp();
61
50
  useEffect(() => {
62
51
  runBrowserInstall()
63
52
  .catch(err => {
64
- p.log.error(`Failed to install agent-browser: ${err instanceof Error ? err.message : 'Unknown error'}`);
53
+ p.log.error(`Failed to install Playwright: ${err instanceof Error ? err.message : 'Unknown error'}`);
65
54
  })
66
55
  .finally(() => {
67
56
  setTimeout(() => exit(), 100);
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/browser/install.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAChC,OAAO,EAAC,MAAM,EAAC,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EACN,uBAAuB,EACvB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,GACd,MAAM,uBAAuB,CAAC;AAE/B,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAMtC,KAAK,UAAU,iBAAiB;IAC/B,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5B,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAE3D,MAAM,SAAS,GAAG,MAAM,uBAAuB,EAAE,CAAC;IAElD,IAAI,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAEhE,gBAAgB;QAChB,MAAM,cAAc,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;QACnC,cAAc,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC5C,MAAM,aAAa,GAAG,MAAM,qBAAqB,EAAE,CAAC;QAEpD,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC9B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAC3D,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1C,CAAC;QACF,CAAC;aAAM,CAAC;YACP,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,2BAA2B;QAC3B,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;QACrC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,QAAQ,CAAC,MAAM,IAAI,WAAW,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/F,CAAC;aAAM,CAAC;YACP,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,sFAAsF,CAAC,CAAC;QACpG,CAAC;QAED,kBAAkB;QAClB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACrD,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QAEzD,OAAO;IACR,CAAC;IAED,OAAO,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;IAEvD,MAAM,MAAM,GAAG,MAAM,mBAAmB,EAAE,CAAC;IAE3C,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,qBAAqB,CAAC,CAAC;QACpD,OAAO;IACR,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC,CAAC;IAElE,gCAAgC;IAChC,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,6BAA6B,QAAQ,CAAC,MAAM,IAAI,WAAW,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEnG,kBAAkB;IAClB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,MAAa;IACnD,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,EAAE,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACd,iBAAiB,EAAE;aACjB,KAAK,CAAC,GAAG,CAAC,EAAE;YACZ,CAAC,CAAC,GAAG,CAAC,KAAK,CACV,oCACC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eACtC,EAAE,CACF,CAAC;QACH,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACb,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO,IAAI,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/browser/install.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"list-sessions.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/list-sessions.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAGtB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAwBF,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,MAAM,EAAE,KAAK,QAcxD"}
1
+ {"version":3,"file":"list-sessions.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/list-sessions.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAItB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AA8BF,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,MAAM,EAAE,KAAK,QAcxD"}
@@ -3,22 +3,25 @@ import { useApp } from 'ink';
3
3
  import * as p from '@clack/prompts';
4
4
  import chalk from 'chalk';
5
5
  import zod from 'zod';
6
- import { browserGetSessions, getMaxSessions } from '../../utils/agent-browser.js';
6
+ import { getConfiguredSessions, getMaxSessions } from '../../utils/browser-config.js';
7
+ import { getLiveSessions } from '../../utils/browser-manager.js';
7
8
  export const options = zod.object({});
8
9
  async function runListSessions() {
9
- const sessions = browserGetSessions();
10
+ const sessions = getConfiguredSessions();
10
11
  const maxSessions = getMaxSessions();
12
+ const live = getLiveSessions();
11
13
  if (sessions.length === 0) {
12
14
  p.log.info('No sessions configured.');
13
- p.log.info('Run `corebrain browser create-session <name>` to create a session.');
15
+ p.log.info('Run: corebrain browser create-session <name> --profile <profile>');
14
16
  return;
15
17
  }
16
18
  const lines = [
17
- `${chalk.bold('Configured Sessions:')} ${chalk.green(`${sessions.length}/${maxSessions}`)}`,
19
+ `${chalk.bold('Sessions:')} ${chalk.green(`${sessions.length}/${maxSessions}`)}`,
18
20
  '',
19
21
  ];
20
22
  for (const session of sessions) {
21
- lines.push(` ${chalk.dim('•')} ${chalk.cyan(session)}`);
23
+ const isLive = live.includes(session.name);
24
+ lines.push(` ${chalk.dim('•')} ${chalk.cyan(session.name)} ${chalk.dim(`profile: ${session.profile}`)}${isLive ? chalk.green(' [live]') : ''}`);
22
25
  }
23
26
  p.note(lines.join('\n'), 'Browser Sessions');
24
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"list-sessions.js","sourceRoot":"","sources":["../../../src/commands/browser/list-sessions.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAChC,OAAO,EAAC,MAAM,EAAC,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,kBAAkB,EAAE,cAAc,EAAC,MAAM,uBAAuB,CAAC;AAEzE,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAMtC,KAAK,UAAU,eAAe;IAC7B,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACtC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;QACjF,OAAO;IACR,CAAC;IAED,MAAM,KAAK,GAAa;QACvB,GAAG,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,WAAW,EAAE,CAAC,EAAE;QAC3F,EAAE;KACF,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,MAAa;IACxD,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,EAAE,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACd,eAAe,EAAE;aACf,KAAK,CAAC,GAAG,CAAC,EAAE;YACZ,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACnE,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACb,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO,IAAI,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"list-sessions.js","sourceRoot":"","sources":["../../../src/commands/browser/list-sessions.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAChC,OAAO,EAAC,MAAM,EAAC,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,qBAAqB,EAAE,cAAc,EAAC,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AAExD,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAMtC,KAAK,UAAU,eAAe;IAC7B,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IACzC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAE/B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACtC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAC/E,OAAO;IACR,CAAC;IAED,MAAM,KAAK,GAAa;QACvB,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,WAAW,EAAE,CAAC,EAAE;QAChF,EAAE;KACF,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,KAAK,CAAC,IAAI,CACT,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,OAAO,EAAE,CAAC,GAC1F,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EACnC,EAAE,CACF,CAAC;IACH,CAAC;IAED,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,MAAa;IACxD,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,EAAE,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACd,eAAe,EAAE;aACf,KAAK,CAAC,GAAG,CAAC,EAAE;YACZ,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACnE,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACb,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"open-head.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/open-head.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAStB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AA4DF,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,MAAM,EAAE,KAAK,QAgBpD"}
1
+ {"version":3,"file":"open-head.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/open-head.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAItB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAoDF,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,MAAM,EAAE,KAAK,QAcpD"}
@@ -3,48 +3,46 @@ import { useApp } from 'ink';
3
3
  import * as p from '@clack/prompts';
4
4
  import chalk from 'chalk';
5
5
  import zod from 'zod';
6
- import { isAgentBrowserInstalled, browserOpen, browserGetSessions, } from '../../utils/agent-browser.js';
7
- const DEFAULT_URL = 'https://app.getcore.me';
6
+ import { isPlaywrightReady, getConfiguredSessions } from '../../utils/browser-config.js';
7
+ import { launchSession } from '../../utils/browser-manager.js';
8
8
  export const options = zod.object({});
9
9
  async function runOpenHead() {
10
10
  const spinner = p.spinner();
11
- spinner.start('Checking agent-browser...');
12
- const installed = await isAgentBrowserInstalled();
13
- if (!installed) {
11
+ spinner.start('Checking Playwright...');
12
+ const ready = await isPlaywrightReady();
13
+ if (!ready) {
14
14
  spinner.stop(chalk.red('Not installed'));
15
- p.log.error('agent-browser is not installed. Run `corebrain browser install` first.');
15
+ p.log.error('Playwright Chromium is not installed. Run `corebrain browser install` first.');
16
16
  return;
17
17
  }
18
18
  spinner.stop(chalk.green('Ready'));
19
- // Get configured sessions
20
- const sessions = browserGetSessions();
19
+ const sessions = getConfiguredSessions();
21
20
  if (sessions.length === 0) {
22
21
  p.log.error('No sessions configured.');
23
- p.log.info('Run `corebrain browser create-session <name>` to create a session first.');
22
+ p.log.info('Run: corebrain browser create-session <name> --profile <profile>');
24
23
  return;
25
24
  }
26
- // Show session selector
27
- const selectedSession = await p.select({
28
- message: 'Select a session to use:',
29
- options: sessions.map(session => ({
30
- value: session,
31
- label: session,
25
+ const selected = await p.select({
26
+ message: 'Select a session to open (headed):',
27
+ options: sessions.map(s => ({
28
+ value: s.name,
29
+ label: `${s.name}`,
30
+ hint: `profile: ${s.profile}`,
32
31
  })),
33
32
  });
34
- if (p.isCancel(selectedSession)) {
33
+ if (p.isCancel(selected)) {
35
34
  p.log.info('Cancelled');
36
35
  return;
37
36
  }
38
37
  const openSpinner = p.spinner();
39
- openSpinner.start(`Opening ${DEFAULT_URL} with session "${selectedSession}" (headed)...`);
40
- // Open in headed mode
41
- const result = await browserOpen(DEFAULT_URL, selectedSession, true);
42
- if (result.code !== 0) {
43
- openSpinner.stop(chalk.red('Failed to open browser'));
44
- p.log.error(result.stderr || 'Failed to open browser');
38
+ openSpinner.start(`Launching session "${selected}" in headed mode...`);
39
+ const { session, error } = await launchSession(selected, true);
40
+ if (error) {
41
+ openSpinner.stop(chalk.red('Failed to launch'));
42
+ p.log.error(error);
45
43
  return;
46
44
  }
47
- openSpinner.stop(chalk.green(`Opened ${DEFAULT_URL} (session: ${selectedSession}, headed)`));
45
+ openSpinner.stop(chalk.green(`Session "${selected}" open (profile: ${session.profile}, headed)`));
48
46
  }
49
47
  export default function BrowserOpenHead(_props) {
50
48
  const { exit } = useApp();
@@ -1 +1 @@
1
- {"version":3,"file":"open-head.js","sourceRoot":"","sources":["../../../src/commands/browser/open-head.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open-head.js","sourceRoot":"","sources":["../../../src/commands/browser/open-head.tsx"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import zod from 'zod';
2
2
  export declare const args: zod.ZodTuple<[zod.ZodString], null>;
3
3
  export declare const options: zod.ZodObject<{
4
- sessionName: zod.ZodDefault<zod.ZodOptional<zod.ZodString>>;
4
+ url: zod.ZodOptional<zod.ZodString>;
5
5
  headed: zod.ZodDefault<zod.ZodOptional<zod.ZodBoolean>>;
6
6
  }, zod.core.$strip>;
7
7
  type Props = {
8
8
  args: zod.infer<typeof args>;
9
9
  options: zod.infer<typeof options>;
10
10
  };
11
- export default function BrowserOpen({ args: [url], options }: Props): null;
11
+ export default function BrowserOpen({ args: [sessionName], options }: Props): null;
12
12
  export {};
13
13
  //# sourceMappingURL=open.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/open.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAGtB,eAAO,MAAM,IAAI,qCAAoD,CAAC;AAEtE,eAAO,MAAM,OAAO;;;mBAOlB,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;AAiCF,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAC,EAAE,KAAK,QAkBhE"}
1
+ {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/open.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAItB,eAAO,MAAM,IAAI,qCAA6D,CAAC;AAE/E,eAAO,MAAM,OAAO;;;mBAGlB,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;AAoCF,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAC,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAC,EAAE,KAAK,QAgBxE"}
@@ -3,45 +3,49 @@ import { useApp } from 'ink';
3
3
  import * as p from '@clack/prompts';
4
4
  import chalk from 'chalk';
5
5
  import zod from 'zod';
6
- import { isAgentBrowserInstalled, browserOpen } from '../../utils/agent-browser.js';
7
- export const args = zod.tuple([zod.string().describe('URL to open')]);
6
+ import { isPlaywrightReady } from '../../utils/browser-config.js';
7
+ import { launchSession } from '../../utils/browser-manager.js';
8
+ export const args = zod.tuple([zod.string().describe('Session name to open')]);
8
9
  export const options = zod.object({
9
- sessionName: zod
10
- .string()
11
- .optional()
12
- .default('default')
13
- .describe('Session name for persistence (default: default)'),
14
- headed: zod.boolean().optional().default(false).describe('Headed session'),
10
+ url: zod.string().optional().describe('URL to navigate to after launch'),
11
+ headed: zod.boolean().optional().default(false).describe('Run in headed (visible) mode'),
15
12
  });
16
- async function runBrowserOpen(url, sessionName, headed) {
13
+ async function runBrowserOpen(sessionName, url, headed) {
17
14
  const spinner = p.spinner();
18
- spinner.start('Checking agent-browser...');
19
- const installed = await isAgentBrowserInstalled();
20
- if (!installed) {
15
+ spinner.start('Checking Playwright...');
16
+ const ready = await isPlaywrightReady();
17
+ if (!ready) {
21
18
  spinner.stop(chalk.red('Not installed'));
22
- p.log.error('agent-browser is not installed. Run `corebrain browser install` first.');
19
+ p.log.error('Playwright Chromium is not installed. Run `corebrain browser install` first.');
23
20
  return;
24
21
  }
25
- spinner.message(`Opening ${url} with session "${sessionName}"...`);
26
- const result = await browserOpen(url, sessionName, headed);
27
- if (result.code !== 0) {
28
- spinner.stop(chalk.red('Failed to open URL'));
29
- p.log.error(result.stderr || 'Failed to open URL');
22
+ spinner.message(`Launching session "${sessionName}"${headed ? ' (headed)' : ''}...`);
23
+ const { session, error } = await launchSession(sessionName, headed);
24
+ if (error) {
25
+ spinner.stop(chalk.red('Failed to launch'));
26
+ p.log.error(error);
30
27
  return;
31
28
  }
32
- spinner.stop(chalk.green(`Opened ${url} (session: ${sessionName})`));
29
+ if (url) {
30
+ await session.page.goto(url);
31
+ const title = await session.page.title();
32
+ spinner.stop(chalk.green(`Session "${sessionName}" open — ${url} (${title})`));
33
+ }
34
+ else {
35
+ spinner.stop(chalk.green(`Session "${sessionName}" open (profile: ${session.profile})`));
36
+ }
33
37
  }
34
- export default function BrowserOpen({ args: [url], options }) {
38
+ export default function BrowserOpen({ args: [sessionName], options }) {
35
39
  const { exit } = useApp();
36
40
  useEffect(() => {
37
- runBrowserOpen(url, options.sessionName, options.headed)
41
+ runBrowserOpen(sessionName, options.url, options.headed)
38
42
  .catch(err => {
39
- p.log.error(`Failed to open URL: ${err instanceof Error ? err.message : 'Unknown error'}`);
43
+ p.log.error(`Failed to open session: ${err instanceof Error ? err.message : 'Unknown error'}`);
40
44
  })
41
45
  .finally(() => {
42
46
  setTimeout(() => exit(), 100);
43
47
  });
44
- }, [url, options.sessionName, exit]);
48
+ }, [sessionName, options.url, options.headed, exit]);
45
49
  return null;
46
50
  }
47
51
  //# sourceMappingURL=open.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/commands/browser/open.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/commands/browser/open.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAChC,OAAO,EAAC,MAAM,EAAC,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAC,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAEtD,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC;IACjC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACxE,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CACxF,CAAC,CAAC;AAOH,KAAK,UAAU,cAAc,CAC5B,WAAmB,EACnB,GAAuB,EACvB,MAAe;IAEf,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IAC5B,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAExC,MAAM,KAAK,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACxC,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;QAC5F,OAAO;IACR,CAAC;IAED,OAAO,CAAC,OAAO,CAAC,sBAAsB,WAAW,IAAI,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAErF,MAAM,EAAC,OAAO,EAAE,KAAK,EAAC,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAElE,IAAI,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO;IACR,CAAC;IAED,IAAI,GAAG,EAAE,CAAC;QACT,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,WAAW,YAAY,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC;IAChF,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,WAAW,oBAAoB,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IAC1F,CAAC;AACF,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAC,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAQ;IACxE,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,EAAE,CAAC;IAExB,SAAS,CAAC,GAAG,EAAE;QACd,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC;aACtD,KAAK,CAAC,GAAG,CAAC,EAAE;YACZ,CAAC,CAAC,GAAG,CAAC,KAAK,CACV,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CACjF,CAAC;QACH,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACb,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAErD,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -3,7 +3,7 @@ import { useApp } from 'ink';
3
3
  import * as p from '@clack/prompts';
4
4
  import chalk from 'chalk';
5
5
  import zod from 'zod';
6
- import { setBrowserExecutable, getBrowserExecutable, detectAvailableBrowsers, detectBravePath, detectChromePath, } from '../../utils/agent-browser.js';
6
+ import { setBrowserExecutable, getBrowserExecutable, detectAvailableBrowsers, detectBravePath, detectChromePath, } from '../../utils/browser-config.js';
7
7
  export const args = zod
8
8
  .tuple([
9
9
  zod.enum(['default', 'brave', 'chrome', 'custom']).describe('Browser type'),
@@ -1 +1 @@
1
- {"version":3,"file":"set-browser.js","sourceRoot":"","sources":["../../../src/commands/browser/set-browser.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"set-browser.js","sourceRoot":"","sources":["../../../src/commands/browser/set-browser.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/status.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAQtB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AAuDF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAM,EAAE,KAAK,QAclD"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/commands/browser/status.tsx"],"names":[],"mappings":"AAIA,OAAO,GAAG,MAAM,KAAK,CAAC;AAUtB,eAAO,MAAM,OAAO,oCAAiB,CAAC;AAEtC,KAAK,KAAK,GAAG;IACZ,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CACnC,CAAC;AA8CF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAM,EAAE,KAAK,QAclD"}
@@ -3,37 +3,40 @@ import { useApp } from 'ink';
3
3
  import * as p from '@clack/prompts';
4
4
  import chalk from 'chalk';
5
5
  import zod from 'zod';
6
- import { isAgentBrowserInstalled, browserGetSessions, getServerStatus, getMaxSessions, } from '../../utils/agent-browser.js';
6
+ import { isPlaywrightReady, getConfiguredProfiles, getConfiguredSessions, getMaxProfiles, getMaxSessions, } from '../../utils/browser-config.js';
7
+ import { getLiveSessions } from '../../utils/browser-manager.js';
7
8
  export const options = zod.object({});
8
9
  async function runBrowserStatus() {
9
10
  const spinner = p.spinner();
10
11
  spinner.start('Checking browser status...');
11
- const installed = await isAgentBrowserInstalled();
12
- const sessions = browserGetSessions();
13
- const serverStatus = installed ? await getServerStatus() : null;
14
- const maxSessions = getMaxSessions();
12
+ const ready = await isPlaywrightReady();
13
+ const profiles = getConfiguredProfiles();
14
+ const sessions = getConfiguredSessions();
15
+ const live = getLiveSessions();
15
16
  spinner.stop(chalk.green('Status retrieved'));
16
17
  const lines = [
17
- `${chalk.bold('agent-browser:')} ${installed ? chalk.green('installed') : chalk.red('not installed')}`,
18
+ `${chalk.bold('Playwright Chromium:')} ${ready ? chalk.green('installed') : chalk.red('not installed')}`,
19
+ '',
20
+ `${chalk.bold('Profiles:')} ${profiles.length}/${getMaxProfiles()}`,
18
21
  ];
19
- if (installed && serverStatus) {
20
- const serverRunning = serverStatus.code === 0;
21
- lines.push(`${chalk.bold('Server:')} ${serverRunning ? chalk.green('running') : chalk.dim('stopped')}`);
22
+ for (const profile of profiles) {
23
+ lines.push(` ${chalk.dim('•')} ${chalk.cyan(profile)}`);
22
24
  }
23
- lines.push(`${chalk.bold('Sessions:')} ${sessions.length > 0
24
- ? chalk.green(`${sessions.length}/${maxSessions} configured`)
25
- : chalk.dim(`0/${maxSessions}`)}`);
26
- if (sessions.length > 0) {
27
- for (const session of sessions) {
28
- lines.push(` ${chalk.dim('•')} ${chalk.cyan(session)}`);
29
- }
25
+ lines.push('');
26
+ lines.push(`${chalk.bold('Sessions:')} ${sessions.length}/${getMaxSessions()}`);
27
+ for (const session of sessions) {
28
+ const isLive = live.includes(session.name);
29
+ lines.push(` ${chalk.dim('•')} ${chalk.cyan(session.name)} ${chalk.dim(`→ ${session.profile}`)}${isLive ? chalk.green(' [live]') : ''}`);
30
30
  }
31
31
  p.note(lines.join('\n'), 'Browser Status');
32
- if (!installed) {
33
- p.log.info('Run `corebrain browser install` to install agent-browser');
32
+ if (!ready) {
33
+ p.log.info('Run `corebrain browser install` to install Playwright Chromium');
34
34
  }
35
- if (sessions.length === 0 && installed) {
36
- p.log.info('Run `corebrain browser create-session <name>` to create a session');
35
+ else if (profiles.length === 0) {
36
+ p.log.info('Run `corebrain browser create-profile personal` to get started');
37
+ }
38
+ else if (sessions.length === 0) {
39
+ p.log.info('Run `corebrain browser create-session <name> --profile personal` to create a session');
37
40
  }
38
41
  }
39
42
  export default function BrowserStatus(_props) {
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/browser/status.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/browser/status.tsx"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ import { getConfigPath } from '../../config/paths.js';
15
15
  import { join, dirname } from 'node:path';
16
16
  import { fileURLToPath } from 'node:url';
17
17
  import { homedir } from 'node:os';
18
- import { isAgentBrowserInstalled, installAgentBrowser, } from '../../utils/agent-browser.js';
18
+ import { isPlaywrightReady, installPlaywrightChromium, } from '../../utils/browser-config.js';
19
19
  import { createAppBundle, openFullDiskAccessSettings, testMessagesAccess, isAppBundleInstalled, getAppExecutablePath, getAppBundlePath, } from '../../utils/app-bundle.js';
20
20
  const execAsync = promisify(exec);
21
21
  const DEFAULT_APP_URL = 'https://app.getcore.me';
@@ -351,7 +351,7 @@ async function runInteractiveConfig() {
351
351
  checkSpinner.start('Checking available tools...');
352
352
  const [claudeResult, browserInstalled, imessageResult] = await Promise.all([
353
353
  isClaudeCodeInstalled(),
354
- isAgentBrowserInstalled(),
354
+ isPlaywrightReady(),
355
355
  isIMessageAvailable(),
356
356
  ]);
357
357
  checkSpinner.stop('Tools checked');
@@ -420,7 +420,7 @@ async function runInteractiveConfig() {
420
420
  case 'browser': {
421
421
  if (!browserInstalled) {
422
422
  const installBrowser = await p.confirm({
423
- message: 'Browser tools require agent-browser. Install now?',
423
+ message: 'Browser tools require Playwright Chromium. Install now?',
424
424
  initialValue: true,
425
425
  });
426
426
  if (p.isCancel(installBrowser)) {
@@ -429,11 +429,11 @@ async function runInteractiveConfig() {
429
429
  }
430
430
  if (installBrowser) {
431
431
  const installSpinner = p.spinner();
432
- installSpinner.start('Installing agent-browser...');
432
+ installSpinner.start('Installing Playwright Chromium...');
433
433
  try {
434
- const result = await installAgentBrowser();
434
+ const result = await installPlaywrightChromium();
435
435
  if (result.code === 0) {
436
- installSpinner.stop(chalk.green('agent-browser installed'));
436
+ installSpinner.stop(chalk.green('Playwright Chromium installed'));
437
437
  browserEnabled = true;
438
438
  }
439
439
  else {