teamshare-bridge 0.20.2 → 0.20.4

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 (39) hide show
  1. package/dist/bridge/daemon.js +25 -0
  2. package/dist/bridge/daemon.js.map +1 -1
  3. package/dist/bridge/local-server.d.ts +1 -1
  4. package/dist/bridge/spawn.d.ts +2 -0
  5. package/dist/bridge/spawn.js +27 -0
  6. package/dist/bridge/spawn.js.map +1 -1
  7. package/dist/cli/commands/browser.d.ts +1 -0
  8. package/dist/cli/commands/browser.js +58 -0
  9. package/dist/cli/commands/browser.js.map +1 -0
  10. package/dist/cli/commands/build.js +6 -1
  11. package/dist/cli/commands/build.js.map +1 -1
  12. package/dist/cli/commands/research.d.ts +3 -0
  13. package/dist/cli/commands/research.js +337 -0
  14. package/dist/cli/commands/research.js.map +1 -0
  15. package/dist/cli/commands/worker.js +36 -11
  16. package/dist/cli/commands/worker.js.map +1 -1
  17. package/dist/cli/index.js +9 -0
  18. package/dist/cli/index.js.map +1 -1
  19. package/dist/lib/api.d.ts +43 -1
  20. package/dist/lib/api.js +30 -0
  21. package/dist/lib/api.js.map +1 -1
  22. package/dist/lib/browser/cdp.d.ts +22 -0
  23. package/dist/lib/browser/cdp.js +72 -0
  24. package/dist/lib/browser/cdp.js.map +1 -1
  25. package/dist/lib/browser/session.d.ts +23 -12
  26. package/dist/lib/browser/session.js +54 -4
  27. package/dist/lib/browser/session.js.map +1 -1
  28. package/dist/lib/git/git-pipeline.d.ts +31 -3
  29. package/dist/lib/git/git-pipeline.js +163 -15
  30. package/dist/lib/git/git-pipeline.js.map +1 -1
  31. package/dist/lib/llm/llm.js +54 -5
  32. package/dist/lib/llm/llm.js.map +1 -1
  33. package/dist/lib/lock.d.ts +1 -1
  34. package/dist/lib/lock.js.map +1 -1
  35. package/dist/lib/orchestrator/handlers/browser.js +50 -1
  36. package/dist/lib/orchestrator/handlers/browser.js.map +1 -1
  37. package/dist/lib/tools/browser-tool.js +55 -1
  38. package/dist/lib/tools/browser-tool.js.map +1 -1
  39. package/package.json +1 -1
@@ -1,20 +1,37 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BrowserSession = void 0;
3
+ exports.BrowserSession = exports.DEFAULT_BROWSER_PROFILE_DIR = void 0;
4
+ /**
5
+ * BrowserSession: a stateful, reusable CDP browser connection.
6
+ *
7
+ * One session = one Chrome process (either user-launched with --remote-debugging-port
8
+ * or auto-launched headless). The session holds the WebSocket open across multiple
9
+ * MCP/tool calls — no reconnect per action.
10
+ *
11
+ * Sessions are created and destroyed by the BrowserManager.
12
+ */
13
+ const node_os_1 = require("node:os");
14
+ const node_path_1 = require("node:path");
4
15
  const cdp_1 = require("./cdp");
5
16
  const launch_1 = require("./launch");
17
+ /** Persistent Chrome profile for TeamShare-driven browsing (research reads). */
18
+ exports.DEFAULT_BROWSER_PROFILE_DIR = (0, node_path_1.join)((0, node_os_1.homedir)(), '.teamshare', 'chrome-profile');
6
19
  class BrowserSession {
7
20
  id;
8
21
  page = null;
9
22
  chrome = null;
10
23
  _port;
11
24
  _autoLaunch;
25
+ _headless;
26
+ _profileDir;
12
27
  _chromeArgs;
13
28
  _connected = false;
14
29
  constructor(id, opts) {
15
30
  this.id = id;
16
31
  this._port = opts?.port ?? 9222;
17
32
  this._autoLaunch = opts?.autoLaunch ?? false;
33
+ this._headless = opts?.headless ?? false;
34
+ this._profileDir = opts?.profileDir ?? exports.DEFAULT_BROWSER_PROFILE_DIR;
18
35
  this._chromeArgs = opts?.chromeArgs ?? [];
19
36
  }
20
37
  /** Whether the session has an active CDP connection. */
@@ -42,8 +59,14 @@ class BrowserSession {
42
59
  throw new Error(`Chrome not reachable on port ${this._port}. ` +
43
60
  `Start Chrome with --remote-debugging-port=${this._port}, or enable autoLaunch.`);
44
61
  }
45
- // Launch headless Chrome
46
- this.chrome = await (0, launch_1.launchChrome)({ port: this._port, args: this._chromeArgs });
62
+ // Launch Chrome with the persistent TeamShare profile (real cookies so
63
+ // blocked / logged-in sites work). Headless is opt-in only.
64
+ this.chrome = await (0, launch_1.launchChrome)({
65
+ port: this._port,
66
+ headless: this._headless,
67
+ userDataDir: this._profileDir,
68
+ args: this._chromeArgs,
69
+ });
47
70
  this._port = this.chrome.port;
48
71
  }
49
72
  this.page = await (0, cdp_1.connectToPage)(this._port);
@@ -100,10 +123,15 @@ class BrowserSession {
100
123
  await (0, cdp_1.clickAt)(this.page, x, y);
101
124
  }
102
125
  /**
103
- * Type text at the current cursor position.
126
+ * Type text at the current cursor position. Refuses to type into a password
127
+ * field: research tooling must never attempt logins / credential entry.
104
128
  */
105
129
  async type(text) {
106
130
  this.ensureConnected();
131
+ const isPassword = await this.evaluate("(() => { const a = document.activeElement; return !!(a && (a.type === 'password' || a.getAttribute('autocomplete') === 'current-password' || a.getAttribute('autocomplete') === 'new-password')); })()").catch(() => false);
132
+ if (isPassword) {
133
+ throw new Error('LOGIN_BLOCKED: refusing to type into a password/credential field. Use the persistent TeamShare browser profile for logged-in sites, or ask the human to sign in.');
134
+ }
107
135
  await (0, cdp_1.typeText)(this.page, text);
108
136
  }
109
137
  /**
@@ -120,6 +148,28 @@ class BrowserSession {
120
148
  this.ensureConnected();
121
149
  await (0, cdp_1.scrollPage)(this.page, delta);
122
150
  }
151
+ /**
152
+ * Read the current page's text (prefers article/main). Text-only: cheap
153
+ * token-wise, works on JS-heavy/blocked pages where web_fetch fails.
154
+ */
155
+ async getText(maxChars) {
156
+ this.ensureConnected();
157
+ return (0, cdp_1.getPageText)(this.page, maxChars ?? 40_000);
158
+ }
159
+ /** Extract links (href + text) - used to find downloadable document URLs. */
160
+ async getLinks() {
161
+ this.ensureConnected();
162
+ return (0, cdp_1.getPageLinks)(this.page);
163
+ }
164
+ /** Read title + url + text + links in one round trip (research default). */
165
+ async readPage(maxChars) {
166
+ this.ensureConnected();
167
+ const [text, links] = await Promise.all([
168
+ (0, cdp_1.getPageText)(this.page, maxChars ?? 40_000),
169
+ (0, cdp_1.getPageLinks)(this.page),
170
+ ]);
171
+ return { ...text, links };
172
+ }
123
173
  /**
124
174
  * Evaluate JavaScript in the page context.
125
175
  */
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/lib/browser/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/lib/browser/session.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,27 @@ export interface PrepareRunGitOptions {
19
19
  /** Readable branch naming: <projectSlug>/<taskSlug> (falls back to tasks/<id8>). */
20
20
  projectSlug?: string;
21
21
  taskTitle?: string;
22
+ /**
23
+ * Explicit branch name for the run (IMP-743). When set it wins over the
24
+ * branchForTask() derivation so the hub-assigned name (worktree OR shared
25
+ * folder) is used verbatim - this is what group chainMode relies on.
26
+ */
27
+ branchName?: string;
28
+ /**
29
+ * chainMode base branch: when creating a FRESH branch, start it here so the
30
+ * task builds on the previous group task's work. Existing task branches
31
+ * (retries) win over this. Ignored when the branch already exists.
32
+ */
33
+ baseBranch?: string | null;
34
+ /**
35
+ * Independent task (ungrouped / first-of-chain): when no chain
36
+ * `baseBranch` is given, start the fresh branch from the repository's
37
+ * default branch (freshly fetched) instead of whatever HEAD happens to be.
38
+ * This keeps sibling tasks in a shared folder from inheriting each other's
39
+ * commits - the shared-folder equivalent of a worktree cut from `main`.
40
+ * Ignored when `baseBranch` is set or the branch already exists.
41
+ */
42
+ independentBase?: boolean;
22
43
  /**
23
44
  * IMP-914 per-project git automation level. 'none' skips the whole
24
45
  * pipeline (no branch, no commit); other values branch normally and are
@@ -121,6 +142,12 @@ export interface FinalizeRunGitOptions {
121
142
  projectId?: string | null;
122
143
  /** Readable branch naming: <projectSlug>/<taskSlug>. Used by multi-repo finalize to create branches lazily. */
123
144
  projectSlug?: string;
145
+ /** Explicit hub-assigned branch name (IMP-743); wins over branchForTask(). */
146
+ branchName?: string;
147
+ /** chainMode base branch: start a FRESH branch here (existing branch wins). */
148
+ baseBranch?: string | null;
149
+ /** Independent task (ungrouped / first-of-chain): start the fresh branch from the repo's default branch (see PrepareRunGitOptions). */
150
+ independentBase?: boolean;
124
151
  /** Open a pull request after a successful push (needs a token). */
125
152
  openPr: boolean;
126
153
  /** IMP-914 per-project git automation level (undefined = legacy flags). */
@@ -131,9 +158,10 @@ export interface FinalizeRunGitOptions {
131
158
  */
132
159
  allowMainBranchCommit?: boolean;
133
160
  /**
134
- * true = create task branches in finalize for multi-repo (run/build);
135
- * false = work on whatever branch is checked out (orchestrator workers).
136
- * Controls lazy branch creation in the multi-repo finalize path.
161
+ * true (default) = create the task branch in finalize for repos with
162
+ * changes (run/build/orchestrator shared folder); false = legacy, work on
163
+ * whatever branch is checked out (callers that own branch layout, e.g. a
164
+ * backend-managed worktree). Controls lazy branch creation.
137
165
  */
138
166
  createBranch?: boolean;
139
167
  log: GitLogFn;
@@ -85,6 +85,91 @@ function branchForTask(taskId, ctx) {
85
85
  }
86
86
  return `tasks/${taskId.replace(/-/g, '').slice(0, 8)}`;
87
87
  }
88
+ /**
89
+ * Branch this run should use: an explicit `branchName` (hub-assigned) when
90
+ * present, otherwise the readable `branchForTask()` derivation.
91
+ */
92
+ function desiredBranch(opts) {
93
+ return (opts.branchName ||
94
+ branchForTask(opts.taskId, {
95
+ projectSlug: opts.projectSlug,
96
+ taskTitle: opts.taskTitle,
97
+ }));
98
+ }
99
+ /**
100
+ * Choose the fresh-branch start point: the explicit chainMode base when it
101
+ * exists locally, else '' (branch from current HEAD).
102
+ */
103
+ function branchStartPoint(gitRoot, baseBranch) {
104
+ if (!baseBranch)
105
+ return '';
106
+ const exists = git(gitRoot, [
107
+ 'rev-parse',
108
+ '--verify',
109
+ '--quiet',
110
+ baseBranch,
111
+ ]);
112
+ return exists.ok ? baseBranch : '';
113
+ }
114
+ /**
115
+ * Per-repo default base ref for an INDEPENDENT task (ungrouped or
116
+ * first-of-chain). Refreshes `origin` best-effort so the base is current
117
+ * (Q3: fetch first), then prefers the remote default (`origin/HEAD` ->
118
+ * `origin/main` / `origin/master`) and finally the local `main` / `master`.
119
+ * Per repo so multi-repo folders with mixed defaults (A=main, B=master) work.
120
+ * Returns '' when nothing suitable exists - the caller then degrades to the
121
+ * current HEAD (never worse than before).
122
+ */
123
+ function resolveBaseRef(gitRoot, fetch) {
124
+ if (fetch) {
125
+ // Best-effort refresh; a local-only repo (no origin) fails harmlessly.
126
+ git(gitRoot, ['fetch', '--prune', 'origin'], GIT_SLOW_TIMEOUT_MS);
127
+ }
128
+ const symbolicRef = git(gitRoot, [
129
+ 'symbolic-ref',
130
+ '--short',
131
+ 'refs/remotes/origin/HEAD',
132
+ ]);
133
+ if (symbolicRef.ok && symbolicRef.out) {
134
+ const ref = symbolicRef.out.trim(); // e.g. "origin/main"
135
+ if (ref && git(gitRoot, ['rev-parse', '--verify', '--quiet', ref]).ok) {
136
+ return ref;
137
+ }
138
+ }
139
+ for (const candidate of ['origin/main', 'origin/master', 'main', 'master']) {
140
+ if (git(gitRoot, ['rev-parse', '--verify', '--quiet', candidate]).ok) {
141
+ return candidate;
142
+ }
143
+ }
144
+ return '';
145
+ }
146
+ /**
147
+ * Start point for an independent task branch in a repo: an explicit
148
+ * per-project `git.baseBranch` override wins, else the freshly-fetched repo
149
+ * default. Returns '' when neither resolves (caller keeps current HEAD).
150
+ */
151
+ function independentStartPoint(gitRoot, projectId, fetch) {
152
+ const configured = (0, config_1.projectGitOptions)(projectId).baseBranch;
153
+ if (configured) {
154
+ const point = branchStartPoint(gitRoot, configured);
155
+ if (point)
156
+ return point;
157
+ }
158
+ return branchStartPoint(gitRoot, resolveBaseRef(gitRoot, fetch));
159
+ }
160
+ /**
161
+ * Base ref a fresh task branch should start from, in priority order:
162
+ * explicit chain base > independent default base > '' (current HEAD).
163
+ * `fetch` is only honored on the independent path.
164
+ */
165
+ function startPointFor(gitRoot, opts, fetch) {
166
+ if (opts.baseBranch)
167
+ return branchStartPoint(gitRoot, opts.baseBranch);
168
+ if (opts.independentBase) {
169
+ return independentStartPoint(gitRoot, opts.projectId, fetch);
170
+ }
171
+ return '';
172
+ }
88
173
  /**
89
174
  * Walk up from `startDir` looking for a `.git` entry (file or directory).
90
175
  * Returns the directory containing `.git`, or null if none found within
@@ -271,6 +356,29 @@ function prepareRunGitUnlocked(cwd, opts) {
271
356
  repoResults.push({ gitRoot, active: true });
272
357
  continue;
273
358
  }
359
+ // chainMode: warm the tree on the previous group task's branch so the
360
+ // lazy branch created in finalize starts from accumulated work.
361
+ // Independent tasks: warm on the (freshly fetched) repo default so
362
+ // sibling tasks never inherit each other's commits in a shared folder.
363
+ const warmBase = startPointFor(gitRoot, opts, true);
364
+ if (warmBase) {
365
+ const isChain = Boolean(opts.baseBranch);
366
+ // Independent tasks create the branch up front so a stray commit in
367
+ // the session lands on it (never an orphaned detached HEAD); chain
368
+ // tasks keep the plain warm checkout (branch created in finalize).
369
+ const co = isChain
370
+ ? git(gitRoot, ['checkout', warmBase], GIT_SLOW_TIMEOUT_MS)
371
+ : git(gitRoot, ['checkout', '-B', desiredBranch(opts), warmBase], GIT_SLOW_TIMEOUT_MS);
372
+ if (co.ok) {
373
+ opts.log(`[git] [${repoName}] checked out ${isChain ? 'chain' : 'base'} ${warmBase}`);
374
+ }
375
+ else {
376
+ opts.log(`[git] [${repoName}] could not switch to base ${warmBase} (${co.out.slice(0, 120)}) - working on current branch`, 'stderr');
377
+ }
378
+ }
379
+ else if (opts.independentBase) {
380
+ opts.log(`[git] [${repoName}] no default/base branch found to branch from - staying on current HEAD`, 'stderr');
381
+ }
274
382
  const branchInfo = isOnDefaultBranch(gitRoot);
275
383
  if (branchInfo.onDefault) {
276
384
  anyOnDefault = true;
@@ -313,15 +421,19 @@ function prepareSingleRepo(gitRoot, opts) {
313
421
  opts.log('[git] fresh repository (no commits yet) - committing on the current branch');
314
422
  return { active: true, repos: [{ gitRoot, active: true }] };
315
423
  }
316
- const branch = branchForTask(opts.taskId, {
317
- projectSlug: opts.projectSlug,
318
- taskTitle: opts.taskTitle,
319
- });
424
+ const branch = desiredBranch(opts);
320
425
  const existing = git(gitRoot, ['rev-parse', '--verify', '--quiet', branch]);
321
426
  const baseSha = head.out.slice(0, 7);
427
+ // chain base wins; independent tasks start from the (fetched) repo default.
428
+ const startPoint = existing.ok ? '' : startPointFor(gitRoot, opts, true);
429
+ if (!existing.ok && !startPoint && opts.independentBase) {
430
+ opts.log('[git] no default/base branch found to branch from - staying on current HEAD', 'stderr');
431
+ }
322
432
  const co = existing.ok
323
433
  ? git(gitRoot, ['checkout', branch])
324
- : git(gitRoot, ['checkout', '-B', branch], GIT_SLOW_TIMEOUT_MS);
434
+ : startPoint
435
+ ? git(gitRoot, ['checkout', '-B', branch, startPoint], GIT_SLOW_TIMEOUT_MS)
436
+ : git(gitRoot, ['checkout', '-B', branch], GIT_SLOW_TIMEOUT_MS);
325
437
  if (!co.ok) {
326
438
  opts.log(`[git] could not switch to ${branch} (${co.out.slice(0, 120)}) - working on the current branch`, 'stderr');
327
439
  const branchInfo = isOnDefaultBranch(gitRoot);
@@ -331,8 +443,13 @@ function prepareSingleRepo(gitRoot, opts) {
331
443
  opts.log(`[git] continuing existing branch ${branch}`);
332
444
  return { active: true, branch, repos: [{ gitRoot, active: true, branch }] };
333
445
  }
334
- opts.log(`[git] branch ${branch} created from ${baseSha}`);
335
- return { active: true, branch, createdFrom: baseSha, repos: [{ gitRoot, active: true, branch, createdFrom: baseSha }] };
446
+ if (startPoint) {
447
+ opts.log(`[git] branch ${branch} created from ${startPoint}`);
448
+ }
449
+ else {
450
+ opts.log(`[git] branch ${branch} created from ${baseSha}`);
451
+ }
452
+ return { active: true, branch, createdFrom: startPoint || baseSha, repos: [{ gitRoot, active: true, branch, createdFrom: startPoint || baseSha }] };
336
453
  }
337
454
  /** How long the pipeline waits for a busy workspace before degrading. */
338
455
  const GIT_LOCK_WAIT_MS = 5 * 60_000;
@@ -415,25 +532,29 @@ async function finalizeRunGitUnlocked(cwd, prepared, opts) {
415
532
  // have changes BEFORE the default-branch check. This ensures repos
416
533
  // on master/main get a feature branch first, so the check below passes.
417
534
  // Single-repo repos already have the branch from prepare.
418
- // Only when opts.createBranch is true (run/build); workers (createBranch: false) skip.
535
+ // Only when opts.createBranch is true (run/build/orchestrator shared);
536
+ // callers that own the branch layout (worktrees) skip this.
419
537
  let activeBranch = prepared.branch || '';
420
538
  if (!activeBranch && opts.createBranch !== false) {
421
- const branch = branchForTask(opts.taskId, {
422
- projectSlug: opts.projectSlug,
423
- taskTitle: opts.taskTitle,
424
- });
539
+ const branch = desiredBranch(opts);
425
540
  const existing = git(gitRoot, ['rev-parse', '--verify', '--quiet', branch]);
426
541
  const head = git(gitRoot, ['rev-parse', '--verify', 'HEAD']);
427
542
  const baseSha = head.ok ? head.out.slice(0, 7) : '';
543
+ const startPoint = existing.ok ? '' : startPointFor(gitRoot, opts, false);
428
544
  const co = existing.ok
429
545
  ? git(gitRoot, ['checkout', branch])
430
- : git(gitRoot, ['checkout', '-B', branch], GIT_SLOW_TIMEOUT_MS);
546
+ : startPoint
547
+ ? git(gitRoot, ['checkout', '-B', branch, startPoint], GIT_SLOW_TIMEOUT_MS)
548
+ : git(gitRoot, ['checkout', '-B', branch], GIT_SLOW_TIMEOUT_MS);
431
549
  if (!co.ok) {
432
550
  opts.log(`[git] ${repoName}could not switch to ${branch} (${co.out.slice(0, 120)}) - working on current branch`, 'stderr');
433
551
  }
434
552
  else {
435
553
  activeBranch = branch;
436
- if (!existing.ok && baseSha) {
554
+ if (!existing.ok && startPoint) {
555
+ opts.log(`[git] ${repoName}branch ${branch} created from ${startPoint}`);
556
+ }
557
+ else if (!existing.ok && baseSha) {
437
558
  opts.log(`[git] ${repoName}branch ${branch} created from ${baseSha}`);
438
559
  }
439
560
  }
@@ -585,9 +706,36 @@ async function commitRemainingChanges(cwd, prepared, opts) {
585
706
  if (!status.ok || !status.out)
586
707
  continue;
587
708
  // Determine branch: use prepared branch if set, otherwise read current
588
- const branchName = prepared.branch
709
+ let branchName = prepared.branch
589
710
  || git(gitRoot, ['rev-parse', '--abbrev-ref', 'HEAD']).out
590
711
  || '';
712
+ // Lazy branch creation: put the work on the task branch before
713
+ // committing, so a crashed multi-repo run still saves its work instead
714
+ // of refusing on the default branch (and honors chainMode's base branch
715
+ // / an already-checked-out chain base, or the default base for
716
+ // independent tasks). Mirrors finalize. Existing branch wins on retries.
717
+ if (!prepared.branch && opts.createBranch !== false) {
718
+ const branch = desiredBranch(opts);
719
+ const current = git(gitRoot, ['rev-parse', '--abbrev-ref', 'HEAD']).out;
720
+ if (current === branch) {
721
+ branchName = branch;
722
+ }
723
+ else {
724
+ const existing = git(gitRoot, ['rev-parse', '--verify', '--quiet', branch]);
725
+ const startPoint = existing.ok
726
+ ? ''
727
+ : startPointFor(gitRoot, opts, false);
728
+ const co = existing.ok
729
+ ? git(gitRoot, ['checkout', branch])
730
+ : startPoint
731
+ ? git(gitRoot, ['checkout', '-B', branch, startPoint], GIT_SLOW_TIMEOUT_MS)
732
+ : git(gitRoot, ['checkout', '-B', branch], GIT_SLOW_TIMEOUT_MS);
733
+ if (co.ok) {
734
+ branchName = branch;
735
+ opts.log(`[git] ${repoName}safety commit on ${branch}`);
736
+ }
737
+ }
738
+ }
591
739
  // If we're on the default branch, don't commit — unsafe
592
740
  if (!opts.allowMainBranchCommit) {
593
741
  const branchInfo = isOnDefaultBranch(gitRoot);
@@ -1 +1 @@
1
- {"version":3,"file":"git-pipeline.js","sourceRoot":"","sources":["../../../src/lib/git/git-pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-pipeline.js","sourceRoot":"","sources":["../../../src/lib/git/git-pipeline.ts"],"names":[],"mappings":"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"}