agents-bridge 0.3.10 → 0.3.11

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 (66) hide show
  1. package/dist/agents/cli-runner.d.ts.map +1 -1
  2. package/dist/agents/cli-runner.js +5 -29
  3. package/dist/agents/cli-runner.js.map +1 -1
  4. package/dist/agents/codex-app-server-runtime.d.ts.map +1 -1
  5. package/dist/agents/codex-app-server-runtime.js +4 -3
  6. package/dist/agents/codex-app-server-runtime.js.map +1 -1
  7. package/dist/agents/model-control-files.d.ts +1 -1
  8. package/dist/agents/model-control-files.d.ts.map +1 -1
  9. package/dist/agents/model-control-files.js +2 -2
  10. package/dist/agents/model-control-files.js.map +1 -1
  11. package/dist/agents/platform-spawn.d.ts +2 -0
  12. package/dist/agents/platform-spawn.d.ts.map +1 -0
  13. package/dist/agents/platform-spawn.js +4 -0
  14. package/dist/agents/platform-spawn.js.map +1 -0
  15. package/dist/agents/process-tree.d.ts +4 -0
  16. package/dist/agents/process-tree.d.ts.map +1 -0
  17. package/dist/agents/process-tree.js +46 -0
  18. package/dist/agents/process-tree.js.map +1 -0
  19. package/dist/agents/trusted-launcher.d.ts.map +1 -1
  20. package/dist/agents/trusted-launcher.js +7 -3
  21. package/dist/agents/trusted-launcher.js.map +1 -1
  22. package/dist/agents/windows-model-control-security.d.ts +2 -2
  23. package/dist/agents/windows-model-control-security.d.ts.map +1 -1
  24. package/dist/agents/windows-model-control-security.js +39 -9
  25. package/dist/agents/windows-model-control-security.js.map +1 -1
  26. package/dist/channels/botlink.d.ts.map +1 -1
  27. package/dist/channels/botlink.js +3 -1
  28. package/dist/channels/botlink.js.map +1 -1
  29. package/dist/cli/cmd-start.d.ts.map +1 -1
  30. package/dist/cli/cmd-start.js +12 -8
  31. package/dist/cli/cmd-start.js.map +1 -1
  32. package/dist/cli/cmd-stop.d.ts.map +1 -1
  33. package/dist/cli/cmd-stop.js +2 -1
  34. package/dist/cli/cmd-stop.js.map +1 -1
  35. package/dist/cli/cmd-update.d.ts +1 -0
  36. package/dist/cli/cmd-update.d.ts.map +1 -1
  37. package/dist/cli/cmd-update.js +3 -2
  38. package/dist/cli/cmd-update.js.map +1 -1
  39. package/dist/cli/temporary-files.d.ts +8 -0
  40. package/dist/cli/temporary-files.d.ts.map +1 -0
  41. package/dist/cli/temporary-files.js +43 -0
  42. package/dist/cli/temporary-files.js.map +1 -0
  43. package/dist/cli/update-check.d.ts.map +1 -1
  44. package/dist/cli/update-check.js +3 -2
  45. package/dist/cli/update-check.js.map +1 -1
  46. package/dist/cloud/main.js +2 -0
  47. package/dist/cloud/main.js.map +1 -1
  48. package/dist/config/attachment-handoff.d.ts.map +1 -1
  49. package/dist/config/attachment-handoff.js +12 -8
  50. package/dist/config/attachment-handoff.js.map +1 -1
  51. package/dist/config/paths.d.ts.map +1 -1
  52. package/dist/config/paths.js +2 -1
  53. package/dist/config/paths.js.map +1 -1
  54. package/dist/config/platform-paths.d.ts +6 -0
  55. package/dist/config/platform-paths.d.ts.map +1 -0
  56. package/dist/config/platform-paths.js +29 -0
  57. package/dist/config/platform-paths.js.map +1 -0
  58. package/dist/config/zod-schema.d.ts +2 -2
  59. package/dist/config/zod-schema.d.ts.map +1 -1
  60. package/dist/config/zod-schema.js +2 -1
  61. package/dist/config/zod-schema.js.map +1 -1
  62. package/dist/runtime-activity-snapshot.d.ts.map +1 -1
  63. package/dist/runtime-activity-snapshot.js +2 -0
  64. package/dist/runtime-activity-snapshot.js.map +1 -1
  65. package/package.json +7 -3
  66. package/scripts/windows-smoke.mjs +98 -0
@@ -0,0 +1,46 @@
1
+ import { execFile } from 'node:child_process';
2
+ import { win32 } from 'node:path';
3
+ export function terminateProcess(pid, signal = 'SIGTERM', platform = process.platform) {
4
+ if (!Number.isSafeInteger(pid) || pid <= 0)
5
+ return Promise.reject(new Error('Invalid owned process id'));
6
+ if (platform !== 'win32') {
7
+ try {
8
+ process.kill(pid, signal);
9
+ return Promise.resolve();
10
+ }
11
+ catch (error) {
12
+ return Promise.reject(error);
13
+ }
14
+ }
15
+ // Node kills only the cmd.exe shim on Windows; taskkill /T also stops the
16
+ // owned CLI descendant. Never pass a process name, wildcard, or a shell.
17
+ return new Promise((resolve, reject) => {
18
+ execFile(win32.join(process.env.SystemRoot || 'C:\\Windows', 'System32', 'taskkill.exe'), ['/PID', String(pid), '/T', '/F'], { windowsHide: true }, error => {
19
+ if (!error) {
20
+ resolve();
21
+ return;
22
+ }
23
+ try {
24
+ process.kill(pid, 0);
25
+ }
26
+ catch (gone) {
27
+ reject(gone);
28
+ return;
29
+ }
30
+ reject(error);
31
+ });
32
+ });
33
+ }
34
+ export function terminateChildProcess(child) {
35
+ if (child.exitCode !== null || child.signalCode !== null)
36
+ return;
37
+ if (process.platform !== 'win32' || !child.pid) {
38
+ child.kill();
39
+ return;
40
+ }
41
+ void terminateProcess(child.pid).catch(() => {
42
+ if (child.exitCode === null && child.signalCode === null)
43
+ child.kill();
44
+ });
45
+ }
46
+ //# sourceMappingURL=process-tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-tree.js","sourceRoot":"","sources":["../../src/agents/process-tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAqB,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AAEjC,MAAM,UAAU,gBAAgB,CAAC,GAAW,EAAE,SAAyB,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ;IAC3G,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAA;IACxG,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAAC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;QAAC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAAC,CAAC;IAC5G,CAAC;IACD,0EAA0E;IAC1E,yEAAyE;IACzE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,aAAa,EAAE,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,EAAE;YAC1J,IAAI,CAAC,KAAK,EAAE,CAAC;gBAAC,OAAO,EAAE,CAAC;gBAAC,OAAM;YAAC,CAAC;YACjC,IAAI,CAAC;gBAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;YAAC,CAAC;YAAC,OAAO,IAAI,EAAE,CAAC;gBAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAAC,OAAM;YAAC,CAAC;YAClE,MAAM,CAAC,KAAK,CAAC,CAAA;QACf,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAmB;IACvD,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI;QAAE,OAAM;IAChE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAAC,OAAM;IAAC,CAAC;IACxE,KAAK,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QAC1C,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI;YAAE,KAAK,CAAC,IAAI,EAAE,CAAA;IACxE,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"trusted-launcher.d.ts","sourceRoot":"","sources":["../../src/agents/trusted-launcher.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;IACtB,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CACxB,GAAG,YAAY,CAoBf"}
1
+ {"version":3,"file":"trusted-launcher.d.ts","sourceRoot":"","sources":["../../src/agents/trusted-launcher.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;IACtB,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CACxB,GAAG,YAAY,CAuBf"}
@@ -1,17 +1,21 @@
1
1
  import { createHash, randomUUID } from 'node:crypto';
2
- import { basename, relative, resolve } from 'node:path';
2
+ import { basename, relative, resolve, sep } from 'node:path';
3
3
  export function resolveTrustedSpawn(input) {
4
4
  const cwd = resolve(input.cwd ?? process.cwd());
5
5
  const launcherSocket = process.env.RUNTIME_LAUNCHER_SOCKET;
6
6
  if (!launcherSocket) {
7
- return { command: input.command, args: input.args, cwd, env: input.env ?? process.env, shell: process.platform === 'win32' };
7
+ // Consumers use cross-spawn for Windows npm shims. Enabling shell here
8
+ // would bypass its escaping and break paths/user arguments containing spaces.
9
+ return { command: input.command, args: input.args, cwd, env: input.env ?? process.env, shell: false };
8
10
  }
11
+ if (process.platform === 'win32')
12
+ throw new Error('TRUSTED_RUNTIME_LAUNCHER_REQUIRES_LINUX');
9
13
  const profile = profileForCommand(input.command);
10
14
  if (!profile)
11
15
  throw new Error('CLI executable is not authorized by the trusted launcher');
12
16
  const workspace = resolve(process.env.WORKSPACE_ROOT ?? '/workspace');
13
17
  const cwdRel = relative(workspace, cwd) || '.';
14
- if (cwdRel === '..' || cwdRel.startsWith(`..${process.platform === 'win32' ? '\\' : '/'}`)) {
18
+ if (cwdRel === '..' || cwdRel.startsWith(`..${sep}`)) {
15
19
  throw new Error('CLI working directory is outside the trusted workspace');
16
20
  }
17
21
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"trusted-launcher.js","sourceRoot":"","sources":["../../src/agents/trusted-launcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trusted-launcher.js","sourceRoot":"","sources":["../../src/agents/trusted-launcher.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  export declare function sameWindowsModelControlPath(left: string, right: string): boolean;
2
- export declare function validateWindowsModelControlAcl(value: unknown): void;
3
- export declare function ensureWindowsModelControlSecurity(path: string): Promise<void>;
2
+ export declare function validateWindowsModelControlAcl(value: unknown, kind?: 'directory' | 'file'): void;
3
+ export declare function ensureWindowsModelControlSecurity(path: string, kind?: 'directory' | 'file'): Promise<void>;
4
4
  //# sourceMappingURL=windows-model-control-security.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"windows-model-control-security.d.ts","sourceRoot":"","sources":["../../src/agents/windows-model-control-security.ts"],"names":[],"mappings":"AAiCA,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhF;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAuBnE;AAED,wBAAsB,iCAAiC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBnF"}
1
+ {"version":3,"file":"windows-model-control-security.d.ts","sourceRoot":"","sources":["../../src/agents/windows-model-control-security.ts"],"names":[],"mappings":"AAuDA,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAEhF;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,GAAE,WAAW,GAAG,MAAe,GAAG,IAAI,CA+BxG;AAED,wBAAsB,iCAAiC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,WAAW,GAAG,MAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBxH"}
@@ -14,6 +14,28 @@ while ($null -ne $cursor) {
14
14
  if ($cursor -is [IO.DirectoryInfo]) { $cursor = $cursor.Parent } else { $cursor = $cursor.Directory }
15
15
  }
16
16
  $acl = Get-Acl -LiteralPath $env:AGENTS_BRIDGE_ACL_TARGET
17
+ $current = [Security.Principal.WindowsIdentity]::GetCurrent().User.Value
18
+ $owner = $acl.GetOwner([Security.Principal.SecurityIdentifier]).Value
19
+ if ($env:AGENTS_BRIDGE_ACL_KIND -eq 'file') {
20
+ if ($item -isnot [IO.FileInfo] -or $owner -notin @($current, 'S-1-5-18', 'S-1-5-32-544')) { throw 'MODEL_CONTROL_UNTRUSTED_OWNER' }
21
+ # Only model-control files are privatized, before any secret bytes are read
22
+ # or written. Never change a parent directory or a user's workspace ACL.
23
+ $needsPrivacy = $false
24
+ foreach ($rule in @($acl.GetAccessRules($true, $true, [Security.Principal.SecurityIdentifier]))) {
25
+ if ($rule.AccessControlType -eq [Security.AccessControl.AccessControlType]::Allow -and $rule.IdentityReference.Value -notin @($current, 'S-1-5-18', 'S-1-5-32-544') -and [long]$rule.FileSystemRights -ne 0) { $needsPrivacy = $true }
26
+ }
27
+ if ($needsPrivacy) {
28
+ $acl.SetAccessRuleProtection($true, $false)
29
+ foreach ($rule in @($acl.GetAccessRules($true, $false, [Security.Principal.SecurityIdentifier]))) { [void]$acl.RemoveAccessRuleSpecific($rule) }
30
+ foreach ($sid in @($current, 'S-1-5-18', 'S-1-5-32-544')) {
31
+ $identity = [Security.Principal.SecurityIdentifier]::new($sid)
32
+ $rule = [Security.AccessControl.FileSystemAccessRule]::new($identity, [Security.AccessControl.FileSystemRights]::FullControl, [Security.AccessControl.AccessControlType]::Allow)
33
+ [void]$acl.AddAccessRule($rule)
34
+ }
35
+ Set-Acl -LiteralPath $env:AGENTS_BRIDGE_ACL_TARGET -AclObject $acl
36
+ $acl = Get-Acl -LiteralPath $env:AGENTS_BRIDGE_ACL_TARGET
37
+ }
38
+ }
17
39
  $rules = @($acl.GetAccessRules($true, $true, [Security.Principal.SecurityIdentifier]) | ForEach-Object {
18
40
  @{
19
41
  sid = $_.IdentityReference.Value
@@ -31,8 +53,8 @@ $rules = @($acl.GetAccessRules($true, $true, [Security.Principal.SecurityIdentif
31
53
  export function sameWindowsModelControlPath(left, right) {
32
54
  return win32.normalize(left).toLowerCase() === win32.normalize(right).toLowerCase();
33
55
  }
34
- export function validateWindowsModelControlAcl(value) {
35
- const invalid = () => new Error('INSECURE_MODEL_CONTROL_WINDOWS_ACL');
56
+ export function validateWindowsModelControlAcl(value, kind = 'file') {
57
+ const invalid = (detail = 'invalid ACL data') => new Error(`INSECURE_MODEL_CONTROL_WINDOWS_ACL: ${kind}: ${detail}`);
36
58
  if (!value || typeof value !== 'object')
37
59
  throw invalid();
38
60
  const acl = value;
@@ -41,7 +63,7 @@ export function validateWindowsModelControlAcl(value) {
41
63
  throw invalid();
42
64
  const trusted = new Set([acl.currentSid, ...TRUSTED_SYSTEM_SIDS]);
43
65
  if (!trusted.has(acl.ownerSid))
44
- throw invalid();
66
+ throw invalid(`untrusted owner ${acl.ownerSid}`);
45
67
  let effectiveAllow = false;
46
68
  for (const entry of acl.rules) {
47
69
  if (!entry || typeof entry !== 'object')
@@ -49,13 +71,21 @@ export function validateWindowsModelControlAcl(value) {
49
71
  const rule = entry;
50
72
  if (typeof rule.sid !== 'string' || typeof rule.allow !== 'boolean'
51
73
  || typeof rule.inheritOnly !== 'boolean' || typeof rule.rights !== 'number'
52
- || !Number.isSafeInteger(rule.rights) || rule.rights < 0)
74
+ || !Number.isSafeInteger(rule.rights) || rule.rights < -0x80000000 || rule.rights > 0xffffffff)
53
75
  throw invalid();
54
76
  if (!rule.allow || rule.rights === 0)
55
77
  continue;
56
78
  // Inherit-only grants still expose newly created state/temporary files.
57
- if (!trusted.has(rule.sid) && !(rule.sid === 'S-1-3-0' && rule.inheritOnly))
58
- throw invalid();
79
+ if (!trusted.has(rule.sid) && !(rule.sid === 'S-1-3-0' && rule.inheritOnly)) {
80
+ // Match the POSIX directory policy: listing/traversal is safe; creating,
81
+ // replacing, deleting or changing permissions is not. Inherited file
82
+ // grants are removed by the private-file policy before accessing bytes.
83
+ // ReadData/ReadEA/Execute/ReadAttributes/ReadControl/Synchronize plus
84
+ // GenericRead/GenericExecute. Reject unknown rights as well as writes.
85
+ const outsideReadRights = (rule.rights >>> 0) & ~0xa01200a9;
86
+ if (kind === 'file' || (!rule.inheritOnly && outsideReadRights !== 0))
87
+ throw invalid(`unsafe allow ${rule.sid} rights=${rule.rights}`);
88
+ }
59
89
  if (!rule.inheritOnly)
60
90
  effectiveAllow = true;
61
91
  }
@@ -64,14 +94,14 @@ export function validateWindowsModelControlAcl(value) {
64
94
  if (!effectiveAllow)
65
95
  throw invalid();
66
96
  }
67
- export async function ensureWindowsModelControlSecurity(path) {
97
+ export async function ensureWindowsModelControlSecurity(path, kind = 'file') {
68
98
  const executable = win32.join(process.env.SystemRoot || 'C:\\Windows', 'System32', 'WindowsPowerShell', 'v1.0', 'powershell.exe');
69
99
  let snapshot;
70
100
  try {
71
101
  const { stdout } = await execute(executable, [
72
102
  '-NoLogo', '-NoProfile', '-NonInteractive', '-EncodedCommand', Buffer.from(INSPECT_ACL, 'utf16le').toString('base64'),
73
103
  ], {
74
- env: { ...process.env, AGENTS_BRIDGE_ACL_TARGET: path },
104
+ env: { ...process.env, AGENTS_BRIDGE_ACL_TARGET: path, AGENTS_BRIDGE_ACL_KIND: kind },
75
105
  windowsHide: true, timeout: 10_000, maxBuffer: 128 * 1024,
76
106
  });
77
107
  snapshot = JSON.parse(stdout.replace(/^\uFEFF/, '').trim());
@@ -81,6 +111,6 @@ export async function ensureWindowsModelControlSecurity(path) {
81
111
  // Fail closed if PowerShell/ACL inspection is unavailable.
82
112
  throw new Error('MODEL_CONTROL_WINDOWS_ACL_UNAVAILABLE: Windows PowerShell ACL inspection failed');
83
113
  }
84
- validateWindowsModelControlAcl(snapshot);
114
+ validateWindowsModelControlAcl(snapshot, kind);
85
115
  }
86
116
  //# sourceMappingURL=windows-model-control-security.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"windows-model-control-security.js","sourceRoot":"","sources":["../../src/agents/windows-model-control-security.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"windows-model-control-security.js","sourceRoot":"","sources":["../../src/agents/windows-model-control-security.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"botlink.d.ts","sourceRoot":"","sources":["../../src/channels/botlink.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAmB,MAAM,mBAAmB,CAAA;AAgBvF,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAmDD,qBAAa,gBAAiB,SAAQ,KAAK;IAEvC,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM;gBADd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM;CAIjB;AAED,qBAAa,eAAgB,SAAQ,KAAK;IAEtC,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;gBAD7B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EACtC,MAAM,EAAE,MAAM;CAIjB;AAED,KAAK,aAAa,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAiBvE,qBAAa,cAAe,YAAW,aAAa;IAMtC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALjC,EAAE,SAAY;IAEd,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,GAAG,CAA8B;gBAEZ,IAAI,GAAE,aAAqB;IAElD,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB7D,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B9D,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAejB,YAAY;YAoCZ,cAAc;YAQd,aAAa;IAsB3B,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,qBAAqB;YAQf,WAAW;YAYX,QAAQ;IA2ItB,OAAO,CAAC,gBAAgB;YAwBV,kBAAkB;YAmBlB,cAAc;IAS5B,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,kBAAkB;YAqBZ,OAAO;YAmDP,iBAAiB;YAwEjB,mBAAmB;YAoCnB,YAAY;IA8B1B,OAAO,CAAC,mBAAmB;CAY5B;AAuCD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAY5F"}
1
+ {"version":3,"file":"botlink.d.ts","sourceRoot":"","sources":["../../src/channels/botlink.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAmB,MAAM,mBAAmB,CAAA;AAgBvF,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAmDD,qBAAa,gBAAiB,SAAQ,KAAK;IAEvC,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM;gBADd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM;CAIjB;AAED,qBAAa,eAAgB,SAAQ,KAAK;IAEtC,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;gBAD7B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EACtC,MAAM,EAAE,MAAM;CAIjB;AAED,KAAK,aAAa,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAiBvE,qBAAa,cAAe,YAAW,aAAa;IAMtC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALjC,EAAE,SAAY;IAEd,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,GAAG,CAA8B;gBAEZ,IAAI,GAAE,aAAqB;IAElD,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB7D,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B9D,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAejB,YAAY;YAoCZ,cAAc;YAQd,aAAa;IAsB3B,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,qBAAqB;YAQf,WAAW;YAYX,QAAQ;IA2ItB,OAAO,CAAC,gBAAgB;YAwBV,kBAAkB;YAmBlB,cAAc;IAS5B,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,kBAAkB;YAqBZ,OAAO;YAmDP,iBAAiB;YAwEjB,mBAAmB;YAoCnB,YAAY;IA+B1B,OAAO,CAAC,mBAAmB;CAY5B;AAuCD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAY5F"}
@@ -4,6 +4,7 @@ import { mkdirSync, renameSync, rmSync } from 'node:fs';
4
4
  import { randomUUID } from 'node:crypto';
5
5
  import { ManagedReceipts } from './managed-receipts.js';
6
6
  import { basename, join } from 'node:path';
7
+ import { assertAttachmentStorageId, safeAttachmentFileName } from '../config/platform-paths.js';
7
8
  import { createWriteStream } from 'node:fs';
8
9
  import { pipeline } from 'node:stream/promises';
9
10
  import { registerChannel } from './registry.js';
@@ -487,6 +488,7 @@ export class BotlinkChannel {
487
488
  return attachments;
488
489
  }
489
490
  async downloadFile(account, fileId, fileName, signal) {
491
+ assertAttachmentStorageId(String(fileId));
490
492
  const fileInfo = await this.request(account, 'getFile', { file_id: fileId }, signal);
491
493
  const baseUrl = account.config.gateway_url.replace(/\/+$/, '');
492
494
  const fileUrl = `${baseUrl}/file/bot${account.config.bot_token}/${fileInfo.file_path.replace(/^\/+/, '')}`;
@@ -560,7 +562,7 @@ export function resolveTelegramSenderName(user) {
560
562
  return username || undefined;
561
563
  }
562
564
  function sanitizeFileName(fileName) {
563
- return fileName.replace(/[^a-zA-Z0-9._-]/g, '_');
565
+ return safeAttachmentFileName(fileName);
564
566
  }
565
567
  function getNextOffset(update) {
566
568
  return Number.isInteger(update.update_id) ? Number(update.update_id) + 1 : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"botlink.js","sourceRoot":"","sources":["../../src/channels/botlink.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"botlink.js","sourceRoot":"","sources":["../../src/channels/botlink.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cmd-start.d.ts","sourceRoot":"","sources":["../../src/cli/cmd-start.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAQ5C,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,EAChB,MAAM,mBAAmB,CAAA;AAiB1B,OAAO,EACL,8BAA8B,EAC9B,KAAK,oBAAoB,EAC1B,MAAM,yBAAyB,CAAA;AAUhC,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAkBnF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAKzE;AAED,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,QAAQ,EAAE,eAAe,CAAA;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,aAAa,CAAA;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,SAAS,GAAG,cAAc,GAAG,SAAS,CAAA;IAC1E,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,uBAAuB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACpE,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACnE,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9C,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAuBlE;AAED,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,GAAG,MAAM,CAAC,CAAA;IAClD,sBAAsB,EAAE,OAAO,CAAA;IAC/B,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,GAAG,OAAO,CAAC,OAAO,CAAC,CASnB;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA6oB3D;AAyID,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAO5D;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAUnE;AAED,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAM1F;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAK/D;AAwED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,EAChC,OAAO,CAAC,EAAE;IACR,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC;;iBA6IoB,MAAM;wBAqBC,MAAM;mBAiCX,MAAM;EAe9B;AA8BD,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CASrE;AA0BD,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,CAAC,CAAC,EAC7D,QAAQ,EAAE,eAAe,GACxB,oBAAoB,CAetB"}
1
+ {"version":3,"file":"cmd-start.d.ts","sourceRoot":"","sources":["../../src/cli/cmd-start.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAU5C,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,EAChB,MAAM,mBAAmB,CAAA;AAiB1B,OAAO,EACL,8BAA8B,EAC9B,KAAK,oBAAoB,EAC1B,MAAM,yBAAyB,CAAA;AAUhC,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAkBnF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAKzE;AAED,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,QAAQ,EAAE,eAAe,CAAA;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,aAAa,CAAA;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,SAAS,GAAG,cAAc,GAAG,SAAS,CAAA;IAC1E,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,uBAAuB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACpE,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACnE,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9C,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAuBlE;AAED,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,GAAG,MAAM,CAAC,CAAA;IAClD,sBAAsB,EAAE,OAAO,CAAA;IAC/B,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,GAAG,OAAO,CAAC,OAAO,CAAC,CASnB;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkpB3D;AAyID,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAE5D;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAUnE;AAED,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAM1F;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAK/D;AAwED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,oBAAoB,EAC7B,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,EAChC,OAAO,CAAC,EAAE;IACR,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC;;iBA6IoB,MAAM;wBAqBC,MAAM;mBAiCX,MAAM;EAe9B;AA8BD,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CASrE;AA0BD,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,CAAC,CAAC,EAC7D,QAAQ,EAAE,eAAe,GACxB,oBAAoB,CAetB"}
@@ -7,6 +7,8 @@ import { ModelController } from '../agents/model-controller.js';
7
7
  import { watchFile, unwatchFile } from 'node:fs';
8
8
  import { readFile } from 'node:fs/promises';
9
9
  import path from 'node:path';
10
+ import { fileURLToPath } from 'node:url';
11
+ import { extractTemporaryFilePaths } from './temporary-files.js';
10
12
  import { loadConfig, resolveConfigPath } from '../config/config.js';
11
13
  import { ensureDataDirs, ensureAgentStateDirs } from '../config/agent-dirs.js';
12
14
  import { createLogger, resolveLogFilePath } from '../logger.js';
@@ -127,6 +129,8 @@ export async function cmdStart(args) {
127
129
  const onSigTerm = () => shutdownAndExit('SIGTERM');
128
130
  process.on('SIGINT', onSigInt);
129
131
  process.on('SIGTERM', onSigTerm);
132
+ if (process.platform === 'win32')
133
+ process.on('SIGBREAK', onSigInt);
130
134
  const preflightLock = await ensureNoRunningInstance({
131
135
  waitMs: 25_000,
132
136
  expectedCwd: process.cwd(),
@@ -194,7 +198,10 @@ export async function cmdStart(args) {
194
198
  }, 'Found persisted Codex sessions without thread ids; those conversations will resume with fresh turns until rebuilt');
195
199
  }
196
200
  if (!modelControllers.has(agentId)) {
197
- const binding = await automaticModelControl(activeConfig, agentId, agentSessionStorePath(agentId) + '.model-control.json', logger);
201
+ const binding = await automaticModelControl(activeConfig, agentId, agentSessionStorePath(agentId) + '.model-control.json', logger).catch(error => {
202
+ logger.error({ agentId }, 'Agent model-control initialization failed');
203
+ throw error;
204
+ });
198
205
  if (binding) {
199
206
  const ref = resolveAgentConfigs(activeConfig, logger).agents.get(agentId).model.primary;
200
207
  const provider = ref.split('/')[0];
@@ -628,6 +635,8 @@ export async function cmdStart(args) {
628
635
  if (!startupSettled) {
629
636
  process.off('SIGINT', onSigInt);
630
637
  process.off('SIGTERM', onSigTerm);
638
+ if (process.platform === 'win32')
639
+ process.off('SIGBREAK', onSigInt);
631
640
  }
632
641
  }
633
642
  }
@@ -710,7 +719,7 @@ async function resolveReplyMediaFiles(replyText, requestText) {
710
719
  for (const candidate of candidates) {
711
720
  try {
712
721
  const fileUrl = candidate.startsWith('file://') ? new URL(candidate) : null;
713
- const filePath = fileUrl ? decodeURIComponent(fileUrl.pathname) : candidate;
722
+ const filePath = fileUrl ? fileURLToPath(fileUrl) : candidate;
714
723
  const buffer = await readFile(filePath);
715
724
  if (buffer.length === 0)
716
725
  continue;
@@ -727,12 +736,7 @@ async function resolveReplyMediaFiles(replyText, requestText) {
727
736
  return dedupeMediaFiles(resolved);
728
737
  }
729
738
  export function extractLocalFilePaths(text) {
730
- const matches = text.match(/(?:file:\/\/\/|\/)[^\s"'`]+/g) ?? [];
731
- return matches
732
- .flatMap((entry) => entry.split(/[、,]/))
733
- .map((entry) => entry.replace(/[),.;:!?]+$/g, ''))
734
- .filter(Boolean)
735
- .filter((entry) => entry.startsWith('/tmp/') || entry.startsWith('file:///tmp/'));
739
+ return extractTemporaryFilePaths(text);
736
740
  }
737
741
  export function shouldAttachRequestedTmpFiles(text) {
738
742
  if (!text.trim()) {