teamshare-bridge 0.28.0 → 0.28.3

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 (36) hide show
  1. package/dist/bridge/daemon.js +44 -5
  2. package/dist/bridge/daemon.js.map +1 -1
  3. package/dist/bridge/wake-outbox.d.ts +28 -0
  4. package/dist/bridge/wake-outbox.js +45 -1
  5. package/dist/bridge/wake-outbox.js.map +1 -1
  6. package/dist/cli/commands/research.js +3 -3
  7. package/dist/cli/commands/research.js.map +1 -1
  8. package/dist/lib/browser/browse-harness.js +31 -6
  9. package/dist/lib/browser/browse-harness.js.map +1 -1
  10. package/dist/lib/chat/chat-reply.js +16 -0
  11. package/dist/lib/chat/chat-reply.js.map +1 -1
  12. package/dist/lib/chat/doc-reply.js +31 -16
  13. package/dist/lib/chat/doc-reply.js.map +1 -1
  14. package/dist/lib/harness/harness-adapter.js +27 -1
  15. package/dist/lib/harness/harness-adapter.js.map +1 -1
  16. package/dist/lib/harness/prompt-file.d.ts +56 -0
  17. package/dist/lib/harness/prompt-file.js +120 -13
  18. package/dist/lib/harness/prompt-file.js.map +1 -1
  19. package/dist/lib/harness/relay-key.d.ts +14 -8
  20. package/dist/lib/harness/relay-key.js +19 -13
  21. package/dist/lib/harness/relay-key.js.map +1 -1
  22. package/dist/lib/harness/run-scope.d.ts +16 -0
  23. package/dist/lib/harness/run-scope.js +154 -19
  24. package/dist/lib/harness/run-scope.js.map +1 -1
  25. package/dist/lib/harness/session-store.d.ts +10 -0
  26. package/dist/lib/harness/session-store.js +17 -0
  27. package/dist/lib/harness/session-store.js.map +1 -1
  28. package/dist/lib/harness/spawn.js +266 -69
  29. package/dist/lib/harness/spawn.js.map +1 -1
  30. package/dist/lib/harness/turn-watch.d.ts +149 -0
  31. package/dist/lib/harness/turn-watch.js +265 -0
  32. package/dist/lib/harness/turn-watch.js.map +1 -0
  33. package/dist/lib/workspace/state-root.d.ts +8 -0
  34. package/dist/lib/workspace/state-root.js +11 -0
  35. package/dist/lib/workspace/state-root.js.map +1 -1
  36. package/package.json +1 -1
@@ -162,6 +162,27 @@ function writeMcpJsonConfig(configPath, agentKey, apiBaseUrl, sessionMode, sessi
162
162
  function opencodeMcpWriter(agentKey, apiBaseUrl, sessionMode, opts, relayUrl, sessionToken) {
163
163
  return writeMcpJsonConfig('opencode.json', agentKey, apiBaseUrl, sessionMode, opts?.sessionId, relayUrl, sessionToken);
164
164
  }
165
+ /**
166
+ * Refuse to write THROUGH a link (2026-11).
167
+ *
168
+ * A run scope links the project's top-level directories. If one of them is a
169
+ * harness config directory (`.opencode`, `.cursor`, `.cline`, `.openhands`),
170
+ * a write "inside the run" would land in the HUMAN's own file: concurrent runs
171
+ * then merge their `mcp.teamshare` entries over each other and each cleanup
172
+ * restores/deletes the file under the other, leaving the loser on the GLOBAL
173
+ * config - the human's identity. A link here is always a stale scope leftover,
174
+ * never something to write through: replace it with a real directory (the link
175
+ * target is untouched).
176
+ */
177
+ function ensureRealConfigDir(dir) {
178
+ try {
179
+ if ((0, node_fs_1.lstatSync)(dir).isSymbolicLink())
180
+ (0, node_fs_1.unlinkSync)(dir);
181
+ }
182
+ catch {
183
+ /* ENOENT is the normal case - the caller creates the directory */
184
+ }
185
+ }
165
186
  /**
166
187
  * Generic workspace-scoped JSON MCP writer: merge a `teamshare` server entry
167
188
  * into `rootKey` inside `<cwd>/<configPath>` and restore the original on
@@ -182,6 +203,8 @@ function workspaceMcpWriter(agentKey, apiBaseUrl, sessionMode, opts, configPath,
182
203
  headers['X-TeamShare-Session-Id'] = opts.sessionId;
183
204
  const server = entry(`${base}/mcp`, headers);
184
205
  const file = (0, node_path_1.join)(opts.cwd, configPath);
206
+ // Never write through a link into the human's own config (2026-11).
207
+ ensureRealConfigDir((0, node_path_1.dirname)(file));
185
208
  let originalRaw = null;
186
209
  let servers = {};
187
210
  try {
@@ -243,7 +266,10 @@ function workspaceMcpWriter(agentKey, apiBaseUrl, sessionMode, opts, configPath,
243
266
  function writeOpencodeWorkspaceMcp(cwd, entry, options) {
244
267
  if (!cwd)
245
268
  return null;
246
- const file = (0, node_path_1.join)(cwd, '.opencode', 'opencode.json');
269
+ const dir = (0, node_path_1.join)(cwd, '.opencode');
270
+ const file = (0, node_path_1.join)(dir, 'opencode.json');
271
+ // NEVER WRITE THROUGH A LINK (2026-11) - see `ensureRealConfigDir`.
272
+ ensureRealConfigDir(dir);
247
273
  let originalRaw = null;
248
274
  let existing = {};
249
275
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"harness-adapter.js","sourceRoot":"","sources":["../../../src/lib/harness/harness-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness-adapter.js","sourceRoot":"","sources":["../../../src/lib/harness/harness-adapter.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,31 @@
1
+ /**
2
+ * Maximum prompt length before we switch to temp-file delivery.
3
+ * Windows argv limit is 32,767 chars; we leave headroom for binary path,
4
+ * MCP config, and other flags.
5
+ */
6
+ export declare const PROMPT_FILE_THRESHOLD = 28000;
7
+ /**
8
+ * Ceiling for the WHOLE command line (binary + every argument).
9
+ *
10
+ * The prompt threshold alone is not enough: flags, the session id, a model
11
+ * spec and the resolved binary path are all part of the same buffer. Windows
12
+ * refuses anything above ~32k, so we act at 30k; POSIX systems are far more
13
+ * generous, but a prompt that big is better read from a file anyway.
14
+ */
15
+ export declare const ARGV_SAFE_LIMIT: number;
16
+ /** The adapter fields this module needs (structural - no import cycle). */
17
+ export interface PromptFileAdapter {
18
+ name: string;
19
+ supportsPromptFile?: boolean;
20
+ promptFileFlag?: string;
21
+ }
22
+ /**
23
+ * Where prompt files live. `~/.teamshare/workspace/prompts` is created on
24
+ * demand; when it cannot be created (read-only install, locked state dir) the
25
+ * OS temp dir is the fallback - an unreadable-by-policy file is better than no
26
+ * file at all, and the caller is told which path it got.
27
+ */
28
+ export declare function promptFileDir(): string;
1
29
  /**
2
30
  * Write a prompt to a temp file and return the path.
3
31
  * Also sweeps stale files from previous crashed sessions.
@@ -5,3 +33,31 @@
5
33
  export declare function writePromptFile(prompt: string): string;
6
34
  /** Delete a prompt temp file (best-effort). */
7
35
  export declare function cleanupPromptFile(path: string): void;
36
+ /**
37
+ * Total characters the OS will see for this command line.
38
+ *
39
+ * Deliberately approximate: each part is escaped/quoted when Windows builds the
40
+ * command line, so a few characters are added per argument. Being a little over
41
+ * is correct here - the limit is a hard failure, and the fix (a prompt file) is
42
+ * cheap.
43
+ */
44
+ export declare function argvChars(parts: Array<string | undefined | null>): number;
45
+ /**
46
+ * Should this prompt travel as a FILE instead of on argv?
47
+ *
48
+ * TRUE when the prompt alone is past the threshold OR the assembled command
49
+ * line would be past the OS ceiling. A harness without prompt-file support is
50
+ * never redirected - it gets the old behaviour (and a clear failure, rather
51
+ * than a silently mangled prompt).
52
+ */
53
+ export declare function shouldUsePromptFile(adapter: PromptFileAdapter, promptChars: number, commandLineChars: number): boolean;
54
+ /** The user message that points the harness at its instructions file. */
55
+ export declare function promptFileInstruction(file: string): string;
56
+ /**
57
+ * Build the argv for a harness that must read its instructions from `file`.
58
+ *
59
+ * `argsWithoutPrompt` is the adapter's argv built with `excludePrompt: true`,
60
+ * so the full prompt NEVER reaches the command line by accident - that is the
61
+ * whole point of this path.
62
+ */
63
+ export declare function promptFileArgs(adapter: PromptFileAdapter, argsWithoutPrompt: string[], file: string): string[];
@@ -1,33 +1,94 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ARGV_SAFE_LIMIT = exports.PROMPT_FILE_THRESHOLD = void 0;
4
+ exports.promptFileDir = promptFileDir;
3
5
  exports.writePromptFile = writePromptFile;
4
6
  exports.cleanupPromptFile = cleanupPromptFile;
7
+ exports.argvChars = argvChars;
8
+ exports.shouldUsePromptFile = shouldUsePromptFile;
9
+ exports.promptFileInstruction = promptFileInstruction;
10
+ exports.promptFileArgs = promptFileArgs;
5
11
  /**
6
- * Temp file management for long prompts.
12
+ * Prompt delivery for argv-hostile prompts.
7
13
  *
8
- * When a prompt exceeds the OS argv limit (~32K on Windows), we write it to a
9
- * temp file and pass the file path to the harness instead. This module handles
10
- * creation, lifecycle, and cleanup of those files.
14
+ * A harness CLI takes its instructions on the command line, and the command
15
+ * line has an OS ceiling: Windows fails `spawn` with `ENAMETOOLONG`
16
+ * (`ERROR_FILENAME_EXCED_RANGE`) above 32,767 characters. A task brief with
17
+ * project context, attachments and the tool recipe routinely runs past that,
18
+ * so a long prompt is written to a FILE and the harness is handed the path.
11
19
  *
12
- * Cleanup strategy:
13
- * - Per-session: files are deleted in spawnHarness's finally block
14
- * - Stale sweep: any files older than 1 hour are cleaned on every new write
15
- * (handles crashed sessions that never cleaned up)
20
+ * Two rules this module exists to keep in one place:
21
+ *
22
+ * 1. The decision uses the prompt ACTUALLY being sent (a continuation prompt is
23
+ * a short follow-up) and the WHOLE command line, not just the prompt - a
24
+ * 25k prompt plus model/resume/MCP flags can still cross the limit.
25
+ * 2. The file lives under `~/.teamshare/workspace/prompts/`, never the OS temp
26
+ * dir. Every opencode run config DENIES `~/.teamshare/**`, and a no-shell QA
27
+ * run also denies every external directory - instructions in %TEMP% could
28
+ * not be read by the very agent that needed them. `~/.teamshare/workspace/**`
29
+ * is the one machine tree every run is allowed to read.
30
+ *
31
+ * Lifecycle:
32
+ * - `cleanupPromptFile` on every exit path (spawnHarness/spawnThroughPty/browse)
33
+ * - stale sweep: files older than 1 hour are removed on every new write, so a
34
+ * crashed run cannot accumulate full task briefs in the state dir.
16
35
  */
17
36
  const node_fs_1 = require("node:fs");
18
37
  const node_path_1 = require("node:path");
19
38
  const node_os_1 = require("node:os");
20
39
  const node_crypto_1 = require("node:crypto");
40
+ const state_root_1 = require("../workspace/state-root");
21
41
  const PREFIX = 'teamshare-prompt-';
22
- const DIR = (0, node_os_1.tmpdir)();
23
42
  const STALE_AGE_MS = 60 * 60 * 1000; // 1 hour
43
+ /**
44
+ * Maximum prompt length before we switch to temp-file delivery.
45
+ * Windows argv limit is 32,767 chars; we leave headroom for binary path,
46
+ * MCP config, and other flags.
47
+ */
48
+ exports.PROMPT_FILE_THRESHOLD = 28_000;
49
+ /**
50
+ * Ceiling for the WHOLE command line (binary + every argument).
51
+ *
52
+ * The prompt threshold alone is not enough: flags, the session id, a model
53
+ * spec and the resolved binary path are all part of the same buffer. Windows
54
+ * refuses anything above ~32k, so we act at 30k; POSIX systems are far more
55
+ * generous, but a prompt that big is better read from a file anyway.
56
+ */
57
+ exports.ARGV_SAFE_LIMIT = process.platform === 'win32' ? 30_000 : 200_000;
58
+ /**
59
+ * Harnesses that take their instruction BEFORE the other flags (`-p "<text>"`).
60
+ * Everything else receives it as a trailing positional argument.
61
+ */
62
+ const PROMPT_FIRST_HARNESSES = new Set([
63
+ 'claude',
64
+ 'gemini',
65
+ 'antigravity',
66
+ 'copilot',
67
+ 'cursor',
68
+ ]);
69
+ /**
70
+ * Where prompt files live. `~/.teamshare/workspace/prompts` is created on
71
+ * demand; when it cannot be created (read-only install, locked state dir) the
72
+ * OS temp dir is the fallback - an unreadable-by-policy file is better than no
73
+ * file at all, and the caller is told which path it got.
74
+ */
75
+ function promptFileDir() {
76
+ try {
77
+ const dir = (0, node_path_1.join)((0, state_root_1.workspaceBaseDir)(), 'prompts');
78
+ (0, node_fs_1.mkdirSync)(dir, { recursive: true });
79
+ return dir;
80
+ }
81
+ catch {
82
+ return (0, node_os_1.tmpdir)();
83
+ }
84
+ }
24
85
  /**
25
86
  * Write a prompt to a temp file and return the path.
26
87
  * Also sweeps stale files from previous crashed sessions.
27
88
  */
28
89
  function writePromptFile(prompt) {
29
90
  sweepStaleFiles();
30
- const path = (0, node_path_1.join)(DIR, `${PREFIX}${(0, node_crypto_1.randomUUID)()}.txt`);
91
+ const path = (0, node_path_1.join)(promptFileDir(), `${PREFIX}${(0, node_crypto_1.randomUUID)()}.txt`);
31
92
  (0, node_fs_1.writeFileSync)(path, prompt, 'utf8');
32
93
  return path;
33
94
  }
@@ -41,16 +102,62 @@ function cleanupPromptFile(path) {
41
102
  }
42
103
  }
43
104
  /**
44
- * Sweep temp files older than STALE_AGE_MS.
105
+ * Total characters the OS will see for this command line.
106
+ *
107
+ * Deliberately approximate: each part is escaped/quoted when Windows builds the
108
+ * command line, so a few characters are added per argument. Being a little over
109
+ * is correct here - the limit is a hard failure, and the fix (a prompt file) is
110
+ * cheap.
111
+ */
112
+ function argvChars(parts) {
113
+ return parts.reduce((total, part) => total + (part?.length ?? 0) + 3, 0);
114
+ }
115
+ /**
116
+ * Should this prompt travel as a FILE instead of on argv?
117
+ *
118
+ * TRUE when the prompt alone is past the threshold OR the assembled command
119
+ * line would be past the OS ceiling. A harness without prompt-file support is
120
+ * never redirected - it gets the old behaviour (and a clear failure, rather
121
+ * than a silently mangled prompt).
122
+ */
123
+ function shouldUsePromptFile(adapter, promptChars, commandLineChars) {
124
+ if (!adapter.supportsPromptFile)
125
+ return false;
126
+ return (promptChars > exports.PROMPT_FILE_THRESHOLD || commandLineChars > exports.ARGV_SAFE_LIMIT);
127
+ }
128
+ /** The user message that points the harness at its instructions file. */
129
+ function promptFileInstruction(file) {
130
+ return (`Read the file "${file}" and follow its instructions exactly. ` +
131
+ 'Do not respond until you have read the file. ' +
132
+ 'The file contains your complete instructions including project context, tools, and the user message.');
133
+ }
134
+ /**
135
+ * Build the argv for a harness that must read its instructions from `file`.
136
+ *
137
+ * `argsWithoutPrompt` is the adapter's argv built with `excludePrompt: true`,
138
+ * so the full prompt NEVER reaches the command line by accident - that is the
139
+ * whole point of this path.
140
+ */
141
+ function promptFileArgs(adapter, argsWithoutPrompt, file) {
142
+ if (adapter.promptFileFlag) {
143
+ return [...argsWithoutPrompt, adapter.promptFileFlag, file];
144
+ }
145
+ const instruction = promptFileInstruction(file);
146
+ return PROMPT_FIRST_HARNESSES.has(adapter.name)
147
+ ? ['-p', instruction, ...argsWithoutPrompt]
148
+ : [...argsWithoutPrompt, instruction];
149
+ }
150
+ /**
151
+ * Sweep prompt files older than STALE_AGE_MS.
45
152
  * Called on every writePromptFile() to clean up after crashed sessions.
46
153
  */
47
154
  function sweepStaleFiles() {
48
155
  try {
49
156
  const now = Date.now();
50
- for (const name of (0, node_fs_1.readdirSync)(DIR)) {
157
+ for (const name of (0, node_fs_1.readdirSync)(promptFileDir())) {
51
158
  if (!name.startsWith(PREFIX) || !name.endsWith('.txt'))
52
159
  continue;
53
- const full = (0, node_path_1.join)(DIR, name);
160
+ const full = (0, node_path_1.join)(promptFileDir(), name);
54
161
  try {
55
162
  const stat = (0, node_fs_1.statSync)(full);
56
163
  if (now - stat.mtimeMs > STALE_AGE_MS) {
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-file.js","sourceRoot":"","sources":["../../../src/lib/harness/prompt-file.ts"],"names":[],"mappings":";;AAyBA,0CAKC;AAGD,8CAMC;AAvCD;;;;;;;;;;;GAWG;AACH,qCAA2E;AAC3E,yCAAiC;AACjC,qCAAiC;AACjC,6CAAyC;AAEzC,MAAM,MAAM,GAAG,mBAAmB,CAAC;AACnC,MAAM,GAAG,GAAG,IAAA,gBAAM,GAAE,CAAC;AACrB,MAAM,YAAY,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;AAE9C;;;GAGG;AACH,SAAgB,eAAe,CAAC,MAAc;IAC5C,eAAe,EAAE,CAAC;IAClB,MAAM,IAAI,GAAG,IAAA,gBAAI,EAAC,GAAG,EAAE,GAAG,MAAM,GAAG,IAAA,wBAAU,GAAE,MAAM,CAAC,CAAC;IACvD,IAAA,uBAAa,EAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+CAA+C;AAC/C,SAAgB,iBAAiB,CAAC,IAAY;IAC5C,IAAI,CAAC;QACH,IAAA,oBAAU,EAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;IACjD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,IAAA,qBAAW,EAAC,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,SAAS;YACjE,MAAM,IAAI,GAAG,IAAA,gBAAI,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC;gBAC5B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,YAAY,EAAE,CAAC;oBACtC,IAAA,oBAAU,EAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,qCAAqC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iCAAiC;IACnC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"prompt-file.js","sourceRoot":"","sources":["../../../src/lib/harness/prompt-file.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Stable identity of a RUN for the MCP relay (2026-10-25).
2
+ * Stable identity of a RUN for the MCP relay (2026-10-25, agent-scoped 2026-11).
3
3
  *
4
4
  * WHY THIS EXISTS
5
5
  * ---------------
@@ -11,13 +11,19 @@
11
11
  * with the OLD one - and a revoked/expired old token is a permanent 401 that
12
12
  * takes every TeamShare tool away mid-run (the QA run that lost its report).
13
13
  *
14
- * The relay must be keyed by something that survives a new process: the task
15
- * and the mode (`<taskId>:<mode>`), which is exactly what the machine-local
16
- * harness session store uses. `fallback` keeps modes that have no task store
17
- * (chat / plain doc replies) working - they get the bridge session id, which is
18
- * stable for the life of that session.
14
+ * THE AGENT IS PART OF THE KEY (2026-11)
15
+ * --------------------------------------
16
+ * A chat run's store key is the CONVERSATION (`chat-<projectId>-<channelId>`),
17
+ * which two agents answering in the same channel share. Without the agent in
18
+ * the run key both spawned with the SAME key, and `registerSessionToken`
19
+ * correctly refuses to hand one identity another's token: it DROPPED the first
20
+ * agent's token and minted the second's. The first agent's live MCP connection
21
+ * then 401'd on every call, and its retry dropped the second's - a ping-pong
22
+ * that only showed up "when multiple agents were working". Two agents are two
23
+ * runs and must never share a token.
19
24
  *
20
25
  * Both sides MUST derive this the same way: `spawnHarness` (mint) and the
21
- * daemon's stop path (revoke). It is pure and unit-tested for that reason.
26
+ * daemon's stop path / `cmdResearch` (revoke). It is pure and unit-tested for
27
+ * that reason.
22
28
  */
23
- export declare function relayKeyFor(taskId?: string | null, mode?: string | null, fallbackSessionId?: string | null): string | undefined;
29
+ export declare function relayKeyFor(taskId?: string | null, mode?: string | null, fallbackSessionId?: string | null, agentId?: string | null): string | undefined;
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.relayKeyFor = relayKeyFor;
4
4
  /**
5
- * Stable identity of a RUN for the MCP relay (2026-10-25).
5
+ * Stable identity of a RUN for the MCP relay (2026-10-25, agent-scoped 2026-11).
6
6
  *
7
7
  * WHY THIS EXISTS
8
8
  * ---------------
@@ -14,23 +14,29 @@ exports.relayKeyFor = relayKeyFor;
14
14
  * with the OLD one - and a revoked/expired old token is a permanent 401 that
15
15
  * takes every TeamShare tool away mid-run (the QA run that lost its report).
16
16
  *
17
- * The relay must be keyed by something that survives a new process: the task
18
- * and the mode (`<taskId>:<mode>`), which is exactly what the machine-local
19
- * harness session store uses. `fallback` keeps modes that have no task store
20
- * (chat / plain doc replies) working - they get the bridge session id, which is
21
- * stable for the life of that session.
17
+ * THE AGENT IS PART OF THE KEY (2026-11)
18
+ * --------------------------------------
19
+ * A chat run's store key is the CONVERSATION (`chat-<projectId>-<channelId>`),
20
+ * which two agents answering in the same channel share. Without the agent in
21
+ * the run key both spawned with the SAME key, and `registerSessionToken`
22
+ * correctly refuses to hand one identity another's token: it DROPPED the first
23
+ * agent's token and minted the second's. The first agent's live MCP connection
24
+ * then 401'd on every call, and its retry dropped the second's - a ping-pong
25
+ * that only showed up "when multiple agents were working". Two agents are two
26
+ * runs and must never share a token.
22
27
  *
23
28
  * Both sides MUST derive this the same way: `spawnHarness` (mint) and the
24
- * daemon's stop path (revoke). It is pure and unit-tested for that reason.
29
+ * daemon's stop path / `cmdResearch` (revoke). It is pure and unit-tested for
30
+ * that reason.
25
31
  */
26
- function relayKeyFor(taskId, mode, fallbackSessionId) {
32
+ function relayKeyFor(taskId, mode, fallbackSessionId, agentId) {
27
33
  const task = typeof taskId === 'string' ? taskId.trim() : '';
28
34
  const sessionMode = typeof mode === 'string' ? mode.trim() : '';
29
- if (task && sessionMode)
30
- return `${task}:${sessionMode}`;
31
- if (task)
32
- return task;
33
35
  const fallback = typeof fallbackSessionId === 'string' ? fallbackSessionId.trim() : '';
34
- return fallback || undefined;
36
+ const scope = task && sessionMode ? `${task}:${sessionMode}` : task || fallback;
37
+ if (!scope)
38
+ return undefined;
39
+ const agent = typeof agentId === 'string' ? agentId.trim() : '';
40
+ return agent ? `${agent}:${scope}` : scope;
35
41
  }
36
42
  //# sourceMappingURL=relay-key.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"relay-key.js","sourceRoot":"","sources":["../../../src/lib/harness/relay-key.ts"],"names":[],"mappings":";;AAsBA,kCAYC;AAlCD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,WAAW,CACzB,MAAsB,EACtB,IAAoB,EACpB,iBAAiC;IAEjC,MAAM,IAAI,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,MAAM,WAAW,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,IAAI,IAAI,IAAI,WAAW;QAAE,OAAO,GAAG,IAAI,IAAI,WAAW,EAAE,CAAC;IACzD,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,QAAQ,GACZ,OAAO,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,OAAO,QAAQ,IAAI,SAAS,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"relay-key.js","sourceRoot":"","sources":["../../../src/lib/harness/relay-key.ts"],"names":[],"mappings":";;AA4BA,kCAeC;AA3CD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,WAAW,CACzB,MAAsB,EACtB,IAAoB,EACpB,iBAAiC,EACjC,OAAuB;IAEvB,MAAM,IAAI,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,MAAM,WAAW,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,QAAQ,GACZ,OAAO,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,MAAM,KAAK,GACT,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC;IACpE,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,KAAK,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7C,CAAC"}
@@ -1,5 +1,21 @@
1
1
  /** The scope folder inside the project root. */
2
2
  export declare const RUN_SCOPE_DIR_NAME = ".teamshare-runs";
3
+ /**
4
+ * The opencode project directory. NEVER linked into a scope: it holds the
5
+ * run's `opencode.json` (its MCP identity), and a link would make every run of
6
+ * the project share - and fight over - the HUMAN's own config file.
7
+ */
8
+ export declare const OPENCODE_DIR_NAME = ".opencode";
9
+ /**
10
+ * Every harness config directory a RUN writes its MCP identity into.
11
+ *
12
+ * These are mirrored into the scope as PRIVATE directories (real dir, contents
13
+ * linked/copied) instead of being linked whole. A link would put the run's
14
+ * identity into the human's file, and two concurrent runs would overwrite and
15
+ * then restore/delete it under each other - the loser falls back to the global
16
+ * config, i.e. the human's own key. See the module comment.
17
+ */
18
+ export declare const PRIVATE_CONFIG_DIRS: readonly string[];
3
19
  export interface RunScope {
4
20
  /** The scope directory - the harness runs HERE (its own opencode project). */
5
21
  dir: string;