@namzu/sdk 52.2.0 → 52.4.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 (143) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/bridge/a2a/mapper.d.ts.map +1 -1
  3. package/dist/bridge/a2a/mapper.js +3 -0
  4. package/dist/bridge/a2a/mapper.js.map +1 -1
  5. package/dist/bridge/sse/mapper.d.ts.map +1 -1
  6. package/dist/bridge/sse/mapper.js +18 -0
  7. package/dist/bridge/sse/mapper.js.map +1 -1
  8. package/dist/connector/web/guarded-fetch.d.ts.map +1 -1
  9. package/dist/connector/web/guarded-fetch.js +44 -0
  10. package/dist/connector/web/guarded-fetch.js.map +1 -1
  11. package/dist/contracts/session/api.d.ts +1 -1
  12. package/dist/contracts/session/api.d.ts.map +1 -1
  13. package/dist/index.d.ts +4 -2
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +2 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/pals/channels/routing.d.ts +1 -1
  18. package/dist/pals/channels/schema.d.ts +7 -7
  19. package/dist/pals/communication/ingress-schema.d.ts +32 -32
  20. package/dist/process/kill-tree.d.ts +3 -2
  21. package/dist/process/kill-tree.d.ts.map +1 -1
  22. package/dist/process/kill-tree.js.map +1 -1
  23. package/dist/public-runtime.d.ts +2 -2
  24. package/dist/public-runtime.d.ts.map +1 -1
  25. package/dist/public-runtime.js +1 -1
  26. package/dist/public-runtime.js.map +1 -1
  27. package/dist/public-tools.d.ts +3 -1
  28. package/dist/public-tools.d.ts.map +1 -1
  29. package/dist/public-tools.js +6 -1
  30. package/dist/public-tools.js.map +1 -1
  31. package/dist/runtime/jobs/awaited-jobs.d.ts +59 -2
  32. package/dist/runtime/jobs/awaited-jobs.d.ts.map +1 -1
  33. package/dist/runtime/jobs/awaited-jobs.js +108 -5
  34. package/dist/runtime/jobs/awaited-jobs.js.map +1 -1
  35. package/dist/runtime/jobs/monitor-stream.d.ts +96 -0
  36. package/dist/runtime/jobs/monitor-stream.d.ts.map +1 -0
  37. package/dist/runtime/jobs/monitor-stream.js +221 -0
  38. package/dist/runtime/jobs/monitor-stream.js.map +1 -0
  39. package/dist/runtime/jobs/registry.d.ts +175 -1
  40. package/dist/runtime/jobs/registry.d.ts.map +1 -1
  41. package/dist/runtime/jobs/registry.js +267 -19
  42. package/dist/runtime/jobs/registry.js.map +1 -1
  43. package/dist/runtime/jobs/websocket-source.d.ts +120 -0
  44. package/dist/runtime/jobs/websocket-source.d.ts.map +1 -0
  45. package/dist/runtime/jobs/websocket-source.js +379 -0
  46. package/dist/runtime/jobs/websocket-source.js.map +1 -0
  47. package/dist/runtime/query/executor.d.ts +9 -0
  48. package/dist/runtime/query/executor.d.ts.map +1 -1
  49. package/dist/runtime/query/executor.js +6 -0
  50. package/dist/runtime/query/executor.js.map +1 -1
  51. package/dist/runtime/query/index.d.ts +16 -0
  52. package/dist/runtime/query/index.d.ts.map +1 -1
  53. package/dist/runtime/query/index.js +93 -3
  54. package/dist/runtime/query/index.js.map +1 -1
  55. package/dist/runtime/query/iteration/outstanding-work.d.ts +14 -0
  56. package/dist/runtime/query/iteration/outstanding-work.d.ts.map +1 -1
  57. package/dist/runtime/query/iteration/outstanding-work.js +64 -3
  58. package/dist/runtime/query/iteration/outstanding-work.js.map +1 -1
  59. package/dist/runtime/query/iteration/phases/context.d.ts +9 -0
  60. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  61. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  62. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  63. package/dist/runtime/query/iteration/phases/tool-review.js +11 -2
  64. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  65. package/dist/runtime/query/release-turn.d.ts.map +1 -1
  66. package/dist/runtime/query/release-turn.js +35 -0
  67. package/dist/runtime/query/release-turn.js.map +1 -1
  68. package/dist/runtime/query/steering.d.ts +35 -0
  69. package/dist/runtime/query/steering.d.ts.map +1 -1
  70. package/dist/runtime/query/steering.js +134 -0
  71. package/dist/runtime/query/steering.js.map +1 -1
  72. package/dist/runtime/query/tooling.d.ts +4 -0
  73. package/dist/runtime/query/tooling.d.ts.map +1 -1
  74. package/dist/runtime/query/tooling.js +4 -0
  75. package/dist/runtime/query/tooling.js.map +1 -1
  76. package/dist/runtime/system-events.d.ts +9 -0
  77. package/dist/runtime/system-events.d.ts.map +1 -1
  78. package/dist/runtime/system-events.js +12 -0
  79. package/dist/runtime/system-events.js.map +1 -1
  80. package/dist/tools/builtins/bash.d.ts +3 -0
  81. package/dist/tools/builtins/bash.d.ts.map +1 -1
  82. package/dist/tools/builtins/bash.js +3 -2
  83. package/dist/tools/builtins/bash.js.map +1 -1
  84. package/dist/tools/builtins/index.d.ts +1 -0
  85. package/dist/tools/builtins/index.d.ts.map +1 -1
  86. package/dist/tools/builtins/index.js +1 -0
  87. package/dist/tools/builtins/index.js.map +1 -1
  88. package/dist/tools/builtins/job.d.ts.map +1 -1
  89. package/dist/tools/builtins/job.js +6 -2
  90. package/dist/tools/builtins/job.js.map +1 -1
  91. package/dist/tools/builtins/monitor.d.ts +58 -0
  92. package/dist/tools/builtins/monitor.d.ts.map +1 -0
  93. package/dist/tools/builtins/monitor.js +306 -0
  94. package/dist/tools/builtins/monitor.js.map +1 -0
  95. package/dist/tools/builtins/wait-for-job.d.ts +1 -1
  96. package/dist/turn/reporter.d.ts.map +1 -1
  97. package/dist/turn/reporter.js +8 -0
  98. package/dist/turn/reporter.js.map +1 -1
  99. package/dist/types/sandbox/index.d.ts +10 -0
  100. package/dist/types/sandbox/index.d.ts.map +1 -1
  101. package/dist/types/sandbox/index.js.map +1 -1
  102. package/dist/types/session/events.d.ts +30 -4
  103. package/dist/types/session/events.d.ts.map +1 -1
  104. package/dist/types/session/events.js +6 -1
  105. package/dist/types/session/events.js.map +1 -1
  106. package/dist/types/session/records.d.ts +2 -2
  107. package/dist/types/session/records.d.ts.map +1 -1
  108. package/dist/types/session/records.js +3 -2
  109. package/dist/types/session/records.js.map +1 -1
  110. package/dist/types/tool/index.d.ts +60 -0
  111. package/dist/types/tool/index.d.ts.map +1 -1
  112. package/dist/types/tool/index.js.map +1 -1
  113. package/package.json +4 -2
  114. package/src/bridge/a2a/mapper.ts +3 -0
  115. package/src/bridge/sse/mapper.ts +18 -0
  116. package/src/connector/web/guarded-fetch.ts +41 -0
  117. package/src/contracts/session/api.ts +1 -0
  118. package/src/index.ts +23 -0
  119. package/src/process/kill-tree.ts +4 -2
  120. package/src/public-runtime.ts +4 -1
  121. package/src/public-tools.ts +14 -0
  122. package/src/runtime/jobs/awaited-jobs.ts +127 -5
  123. package/src/runtime/jobs/monitor-stream.ts +269 -0
  124. package/src/runtime/jobs/registry.ts +437 -23
  125. package/src/runtime/jobs/websocket-source.ts +438 -0
  126. package/src/runtime/query/executor.ts +15 -0
  127. package/src/runtime/query/index.ts +116 -3
  128. package/src/runtime/query/iteration/outstanding-work.ts +64 -3
  129. package/src/runtime/query/iteration/phases/context.ts +9 -0
  130. package/src/runtime/query/iteration/phases/tool-review.ts +21 -9
  131. package/src/runtime/query/release-turn.ts +33 -0
  132. package/src/runtime/query/steering.ts +170 -0
  133. package/src/runtime/query/tooling.ts +8 -0
  134. package/src/runtime/system-events.ts +17 -0
  135. package/src/tools/builtins/bash.ts +3 -2
  136. package/src/tools/builtins/index.ts +6 -0
  137. package/src/tools/builtins/job.ts +11 -2
  138. package/src/tools/builtins/monitor.ts +376 -0
  139. package/src/turn/reporter.ts +8 -0
  140. package/src/types/sandbox/index.ts +10 -0
  141. package/src/types/session/events.ts +31 -4
  142. package/src/types/session/records.ts +3 -2
  143. package/src/types/tool/index.ts +51 -1
@@ -47,7 +47,7 @@ const MAX_BASH_TIMEOUT_MS = readPositiveIntEnv('NAMZU_BASH_MAX_TIMEOUT_MS', 10 *
47
47
  * `run_in_background` is refused. Read at each call so a host can flip it.
48
48
  */
49
49
  export const DISABLE_BACKGROUND_TASKS_ENV = 'NAMZU_DISABLE_BACKGROUND_TASKS';
50
- function backgroundTasksDisabled() {
50
+ export function backgroundTasksDisabled() {
51
51
  const value = process.env[DISABLE_BACKGROUND_TASKS_ENV]?.trim().toLowerCase();
52
52
  return value !== undefined && value !== '' && value !== '0' && value !== 'false';
53
53
  }
@@ -362,7 +362,8 @@ export function execHostShell(command, options) {
362
362
  }
363
363
  });
364
364
  }
365
- function isDangerousCommand(command) {
365
+ /** The dangerous-pattern check `bash` applies, shared so the `monitor` tool refuses the same lines. */
366
+ export function isDangerousCommand(command) {
366
367
  return DANGEROUS_PATTERNS.some((pattern) => pattern.test(command));
367
368
  }
368
369
  /** The refusal when a sandbox cannot host a detached process; exported so the test states the same words. */
@@ -1 +1 @@
1
- {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../src/tools/builtins/bash.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../src/tools/builtins/bash.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ export { CODE_ANALYSIS_TOOL_NAME, CodeAnalysisTool, getCodeAnalysisTools, } from
7
7
  export { LSP_TOOL_NAME, LspTool, getCodeNavigationTools } from './lsp.js';
8
8
  export { GrepTool } from './grep.js';
9
9
  export { JobTool } from './job.js';
10
+ export { MONITOR_CANNOT_DETACH, MONITOR_TOOL_NAME, MonitorTool, getMonitorTools, } from './monitor.js';
10
11
  export { WaitForJobTool } from './wait-for-job.js';
11
12
  export { SKILL_TOOL_NAME, SkillTool, createSkillTool, parseAllowedTools } from './skill.js';
12
13
  export type { SkillDirectoryContext, SkillDirectoryRequest, SkillDirectoryResolver, SkillToolOptions, } from './skill.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EACN,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,GACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC3F,YAAY,EACX,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,GAChB,MAAM,YAAY,CAAA;AACnB,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,aAAa,GACb,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AACzF,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACpE,YAAY,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAEjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAsB/D,wBAAgB,eAAe,IAAI,cAAc,EAAE,CAsBlD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EACN,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,GACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EACN,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,EACX,eAAe,GACf,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC3F,YAAY,EACX,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,GAChB,MAAM,YAAY,CAAA;AACnB,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,aAAa,GACb,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AACzF,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACpE,YAAY,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAEjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAsB/D,wBAAgB,eAAe,IAAI,cAAc,EAAE,CAsBlD"}
@@ -7,6 +7,7 @@ export { CODE_ANALYSIS_TOOL_NAME, CodeAnalysisTool, getCodeAnalysisTools, } from
7
7
  export { LSP_TOOL_NAME, LspTool, getCodeNavigationTools } from './lsp.js';
8
8
  export { GrepTool } from './grep.js';
9
9
  export { JobTool } from './job.js';
10
+ export { MONITOR_CANNOT_DETACH, MONITOR_TOOL_NAME, MonitorTool, getMonitorTools, } from './monitor.js';
10
11
  export { WaitForJobTool } from './wait-for-job.js';
11
12
  export { SKILL_TOOL_NAME, SkillTool, createSkillTool, parseAllowedTools } from './skill.js';
12
13
  export { WEB_FETCH_TOOL_NAME, WEB_SEARCH_TOOL_NAME, WebFetchTool, WebSearchTool, } from './web.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EACN,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,GACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAO3F,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,aAAa,GACb,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AACzF,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAEpE,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAGjF,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,wEAAwE;AACxE,sEAAsE;AACtE,EAAE;AACF,2EAA2E;AAC3E,2EAA2E;AAC3E,0EAA0E;AAC1E,2EAA2E;AAC3E,qEAAqE;AACrE,sEAAsE;AACtE,yBAAyB;AACzB,0EAA0E;AAE1E,MAAM,UAAU,eAAe;IAC9B,yEAAyE;IACzE,wEAAwE;IACxE,uEAAuE;IACvE,oEAAoE;IACpE,wEAAwE;IACxE,8DAA8D;IAC9D,EAAE;IACF,mEAAmE;IACnE,sEAAsE;IACtE,OAAO;IACP,OAAO;QACN,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,YAAY;QACZ,iBAAiB;QACjB,cAAc;QACd,aAAa;KACb,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EACN,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,GACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EACN,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,EACX,eAAe,GACf,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAO3F,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,aAAa,GACb,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AACzF,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAEpE,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAA;AAC/F,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAGjF,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,wEAAwE;AACxE,sEAAsE;AACtE,EAAE;AACF,2EAA2E;AAC3E,2EAA2E;AAC3E,0EAA0E;AAC1E,2EAA2E;AAC3E,qEAAqE;AACrE,sEAAsE;AACtE,yBAAyB;AACzB,0EAA0E;AAE1E,MAAM,UAAU,eAAe;IAC9B,yEAAyE;IACzE,wEAAwE;IACxE,uEAAuE;IACvE,oEAAoE;IACpE,wEAAwE;IACxE,8DAA8D;IAC9D,EAAE;IACF,mEAAmE;IACnE,sEAAsE;IACtE,OAAO;IACP,OAAO;QACN,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,YAAY;QACZ,iBAAiB;QACjB,cAAc;QACd,aAAa;KACb,CAAA;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"job.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/job.ts"],"names":[],"mappings":"AA2CA,eAAO,MAAM,OAAO;;;;EAuGlB,CAAA"}
1
+ {"version":3,"file":"job.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/job.ts"],"names":[],"mappings":"AA2CA,eAAO,MAAM,OAAO;;;;EAgHlB,CAAA"}
@@ -31,7 +31,7 @@ const inputSchema = z.object({
31
31
  });
32
32
  export const JobTool = defineTool({
33
33
  name: 'job',
34
- description: 'Reads, lists and stops background jobs started by bash with run_in_background. Do NOT call action "read" in a loop to find out whether a job finished: use wait_for_job instead — it blocks until the job ends (or goes quiet, or runs long) and returns the output in one call, with no waiting turns spent checking. Use "read" to see output while a job keeps running, or to pick up after a wait_for_job call gave up, passing the previous call\'s next_offset to see only new output.',
34
+ description: 'Reads, lists and stops background jobs started by bash with run_in_background, and monitors started by monitor (whose stderr, which is not an event, is read here). Do NOT call action "read" in a loop to find out whether a job finished: use wait_for_job instead — it blocks until the job ends (or goes quiet, or runs long) and returns the output in one call, with no waiting turns spent checking. Use "read" to see output while a job keeps running, or to pick up after a wait_for_job call gave up, passing the previous call\'s next_offset to see only new output.',
35
35
  inputSchema,
36
36
  category: 'shell',
37
37
  permissions: ['shell_execute'],
@@ -61,7 +61,11 @@ export const JobTool = defineTool({
61
61
  return { success: true, output: 'No background jobs.' };
62
62
  return {
63
63
  success: true,
64
- output: all.map((job) => `${job.id} ${job.status.padEnd(8)} ${job.command}`).join('\n'),
64
+ // A monitor is named by what it watches: its command is the means,
65
+ // and the description is what the model wrote to tell its watches apart.
66
+ output: all
67
+ .map((job) => `${job.id} ${job.status.padEnd(8)} ${job.kind === 'monitor' ? `monitor · ${job.description ?? job.command}` : job.command}`)
68
+ .join('\n'),
65
69
  data: { jobs: all },
66
70
  };
67
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/tools/builtins/job.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"job.js","sourceRoot":"","sources":["../../../src/tools/builtins/job.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import { type WebSocketVetOptions } from '../../runtime/jobs/websocket-source.js';
2
+ export declare const MONITOR_TOOL_NAME = "monitor";
3
+ /**
4
+ * What a sandbox without `spawnDetached` is told. The wording of `bash`'s own
5
+ * refusal names `run_in_background` and `timeout`, neither of which is this
6
+ * tool's, so it is restated here; the substance is the same and so is the
7
+ * rule: the watch is never run on the host to get around the sandbox.
8
+ */
9
+ export declare const MONITOR_CANNOT_DETACH = "monitor is unavailable: this sandbox cannot start a detached process, and the watch will not be run on the host to get around it. Run the command in the foreground with bash, with a timeout.";
10
+ /** What a host can tune about the WebSocket source; for tests only, see {@link WebSocketVetOptions}. */
11
+ export interface MonitorToolOptions {
12
+ readonly webSocket?: WebSocketVetOptions;
13
+ /**
14
+ * How to turn web access on, in the host's own words, appended to the
15
+ * refusal a WebSocket call gets while it is off. The SDK cannot name a
16
+ * switch it does not own (a CLI config key, a desktop setting), and a
17
+ * refusal that only says "off" leaves the operator guessing. One short
18
+ * sentence; it is shown to the model and the operator as written.
19
+ */
20
+ readonly webAccessHint?: string;
21
+ }
22
+ /** The text that says a WebSocket watch was refused because the host has web access off. */
23
+ export declare const MONITOR_WEBSOCKET_WEB_OFF = "WebSocket monitors follow the host's web access setting, and web access is switched off here, so no connection was opened. Watch the service with a command (for example curl or websocat through monitor) if the operator allows it.";
24
+ /**
25
+ * The tool, built once with defaults for a host and again by a test that needs
26
+ * to reach a server on this machine. The options belong to whoever builds the
27
+ * tool; nothing a model sends can set them.
28
+ */
29
+ export declare function createMonitorTool(options?: MonitorToolOptions): import("../../types/tool/index.js").ToolDefinition<{
30
+ description: string;
31
+ timeout_ms: number;
32
+ command?: string | undefined;
33
+ ws?: {
34
+ url: string;
35
+ protocols?: string[] | undefined;
36
+ } | undefined;
37
+ }>;
38
+ export declare const MonitorTool: import("../../types/tool/index.js").ToolDefinition<{
39
+ description: string;
40
+ timeout_ms: number;
41
+ command?: string | undefined;
42
+ ws?: {
43
+ url: string;
44
+ protocols?: string[] | undefined;
45
+ } | undefined;
46
+ }>;
47
+ /**
48
+ * The tool, for a host that opts in.
49
+ *
50
+ * Not in `getBuiltinTools()`: a watch needs a host that delivers events and
51
+ * wakes on them, and offering a tool that starts a job nobody will hear from
52
+ * is worse than not offering it. A function rather than a constant so a host
53
+ * can decide per turn, and so it reads like `getCodeAnalysisTools`, beside
54
+ * which a host mounts it deferred. Called with no options it returns the
55
+ * shared {@link MonitorTool}.
56
+ */
57
+ export declare function getMonitorTools(options?: MonitorToolOptions): (typeof MonitorTool)[];
58
+ //# sourceMappingURL=monitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/monitor.ts"],"names":[],"mappings":"AAQA,OAAO,EAGN,KAAK,mBAAmB,EAMxB,MAAM,wCAAwC,CAAA;AAgH/C,eAAO,MAAM,iBAAiB,YAAY,CAAA;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,mMAC+J,CAAA;AAMjM,wGAAwG;AACxG,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAA;IACxC;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED,4FAA4F;AAC5F,eAAO,MAAM,yBAAyB,0OACkM,CAAA;AAKxO;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB;;;;;;;;GA8LjE;AAED,eAAO,MAAM,WAAW;;;;;;;;EAAsB,CAAA;AAE9C;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,CAAC,OAAO,WAAW,CAAC,EAAE,CAEpF"}
@@ -0,0 +1,306 @@
1
+ import { z } from 'zod';
2
+ import { MONITOR_TIMEOUT_DEFAULT_MS, MONITOR_TIMEOUT_MAX_MS, MONITOR_TIMEOUT_MIN_MS, formatMonitorDuration, } from '../../runtime/jobs/monitor-stream.js';
3
+ import { WEBSOCKET_PROTOCOLS_MAX, WebSocketRefusedError, vetWebSocketTarget, webSocketHostname, webSocketProtocolsProblem, webSocketSandboxRefusal, webSocketUrlProblem, } from '../../runtime/jobs/websocket-source.js';
4
+ import { bashToolDialect, hostCommandShell, isWindowsBash, rewriteWindowsNullRedirect, } from '../command-shell.js';
5
+ import { defineTool } from '../defineTool.js';
6
+ import { DISABLE_BACKGROUND_TASKS_ENV, backgroundTasksDisabled, isDangerousCommand, } from './bash.js';
7
+ /**
8
+ * Watch a command's output while the model keeps working.
9
+ *
10
+ * `bash run_in_background` plus `wait_for_job` answers "tell me when this
11
+ * finishes", and nothing answered "tell me when something happens in it": a
12
+ * log line, a failed check, a changed status. The only alternative was a
13
+ * polling loop, which spends a full context resend per look and is silent
14
+ * between looks. This tool starts the command as a job the registry owns and
15
+ * turns each line it prints on stdout into an event the model reads on its
16
+ * next tool result (or wakes it, when it has stopped) — see
17
+ * `runtime/jobs/monitor-stream.ts` for how lines become batches and why a
18
+ * source that prints too much is stopped.
19
+ *
20
+ * It is a different tool from `bash`, and not a flag on it, for the same
21
+ * reason `wait_for_job` is: the model chooses by intent. The permission story
22
+ * is bash's, line for line — a monitor runs a shell command — so the rules
23
+ * read the command the way they read `bash`'s, and it is never read-only. It
24
+ * has no way out of the sandbox: a watch that outlives one approved call must
25
+ * not run outside the boundary that call was approved under.
26
+ *
27
+ * A source can also be a WebSocket (`ws`), for services that push their events
28
+ * and offer no command that prints them. That one is a different thing to
29
+ * approve: it is not a shell line, it opens a connection FROM THE HOST to an
30
+ * address the model chose, and it does so outside any sandbox. So it is read
31
+ * by no command rule, it is always reviewed, a sandbox that blocks the network
32
+ * refuses it, and the address is checked and pinned (see
33
+ * `runtime/jobs/websocket-source.ts`). Untrusted frames reach the model the way
34
+ * a command's lines do: through the monitor event path, in its untrusted frame.
35
+ */
36
+ const webSocketInput = z.object({
37
+ url: z
38
+ .string()
39
+ .superRefine((value, ctx) => {
40
+ const problem = webSocketUrlProblem(value);
41
+ if (problem !== undefined)
42
+ ctx.addIssue({ code: z.ZodIssueCode.custom, message: problem });
43
+ })
44
+ .describe('The ws:// or wss:// URL to connect to. A query string is kept; credentials in it are refused.'),
45
+ protocols: z
46
+ .array(z.string())
47
+ .max(WEBSOCKET_PROTOCOLS_MAX)
48
+ .superRefine((value, ctx) => {
49
+ const problem = webSocketProtocolsProblem(value);
50
+ if (problem !== undefined)
51
+ ctx.addIssue({ code: z.ZodIssueCode.custom, message: problem });
52
+ })
53
+ .optional()
54
+ .describe('Subprotocol names to offer, when the service asks for one.'),
55
+ });
56
+ const inputSchema = z
57
+ .object({
58
+ description: z
59
+ .string()
60
+ .min(1)
61
+ .max(200)
62
+ .describe('What you are watching, in a few specific words. It is shown with every event ("Monitor event: <description>"), so make it identify this watch among several: "errors in deploy log", not "monitor".'),
63
+ command: z
64
+ .string()
65
+ .min(1)
66
+ // Same rewrite as `bash`, for the same reason: the rules read the line a
67
+ // shell will run.
68
+ .transform((command) => isWindowsBash(hostCommandShell()) ? rewriteWindowsNullRedirect(command) : command)
69
+ .optional()
70
+ .describe('The shell command to watch. Each line it prints to stdout becomes an event. It runs until it ends or the timeout; it must not need stdin. Give this or ws, not both.'),
71
+ ws: webSocketInput
72
+ .optional()
73
+ .describe('Watch a WebSocket instead of a command: each line of each text frame the server sends becomes an event. Give this or command, not both.'),
74
+ timeout_ms: z
75
+ .preprocess((v) => (typeof v === 'string' ? Number(v) : v), z
76
+ .number()
77
+ .int()
78
+ .min(MONITOR_TIMEOUT_MIN_MS)
79
+ .max(MONITOR_TIMEOUT_MAX_MS)
80
+ .default(MONITOR_TIMEOUT_DEFAULT_MS))
81
+ .describe(`How long to watch, in milliseconds. Default ${MONITOR_TIMEOUT_DEFAULT_MS}. The host caps it (30 minutes by default; shorter in a single-shot run), and a larger value is lowered to that cap without an error; the result states the time actually granted.`),
82
+ })
83
+ .refine((input) => (input.command === undefined) !== (input.ws === undefined), {
84
+ message: 'Give exactly one of command and ws.',
85
+ });
86
+ export const MONITOR_TOOL_NAME = 'monitor';
87
+ /**
88
+ * What a sandbox without `spawnDetached` is told. The wording of `bash`'s own
89
+ * refusal names `run_in_background` and `timeout`, neither of which is this
90
+ * tool's, so it is restated here; the substance is the same and so is the
91
+ * rule: the watch is never run on the host to get around the sandbox.
92
+ */
93
+ export const MONITOR_CANNOT_DETACH = 'monitor is unavailable: this sandbox cannot start a detached process, and the watch will not be run on the host to get around it. Run the command in the foreground with bash, with a timeout.';
94
+ const MONITOR_DESCRIPTION = 'Starts a command and tells you about each line it prints to stdout, as it prints it, while you keep working. Lines that arrive within 200 ms come together as one event. Use it to watch a log, a test or deploy run, a status endpoint — anything where you must react to something happening INSIDE a long-running command. For ONE notification when something finishes, do not use this: run bash with run_in_background and wait_for_job. Every stage of a pipe must flush per line or events arrive late or never (grep --line-buffered, awk with fflush(), sed -u; `head` cannot). Make the filter match failure as well as success (crash, Traceback, Error, FAILED, Killed…): silence from a monitor is not success. Poll a remote API no faster than every 30 seconds. stderr is not an event; read it with job. A monitor that prints too much is stopped, so filter at the source. It expires after the timeout (default 5 minutes, at most 30) and you get one notice; start it again if you still need it. Stop one early with job {"action":"kill","id":"<id>"}. ' +
95
+ 'To watch a service that PUSHES events (a CI or log stream, a change feed) give ws instead of command: { "url": "wss://…", "protocols": [...] }. Each line of each text frame becomes an event, binary frames are only counted, and the watch ends when the server closes the connection. Use it for a push stream, not for request and response. It connects from this machine, so private and local addresses are refused, and you are asked before it connects.';
96
+ /** The text that says a WebSocket watch was refused because the host has web access off. */
97
+ export const MONITOR_WEBSOCKET_WEB_OFF = "WebSocket monitors follow the host's web access setting, and web access is switched off here, so no connection was opened. Watch the service with a command (for example curl or websocat through monitor) if the operator allows it.";
98
+ const MONITOR_WEBSOCKET_NOT_SUPPORTED = 'This host cannot start a WebSocket monitor, so no connection was opened. Watch the service with a command through monitor if the operator allows it.';
99
+ /**
100
+ * The tool, built once with defaults for a host and again by a test that needs
101
+ * to reach a server on this machine. The options belong to whoever builds the
102
+ * tool; nothing a model sends can set them.
103
+ */
104
+ export function createMonitorTool(options = {}) {
105
+ return defineTool({
106
+ name: MONITOR_TOOL_NAME,
107
+ description: MONITOR_DESCRIPTION,
108
+ inputSchema,
109
+ category: 'shell',
110
+ // Bash's, because it IS a shell command: the gate reads the line, splits
111
+ // chains, and applies the operator's rules to each part. A WebSocket call
112
+ // has no `command`, so a rule written for commands has nothing to match
113
+ // and cannot allow it; `requiresApproval` below is what asks.
114
+ commandArgument: 'command',
115
+ commandDialect: bashToolDialect,
116
+ // `network_access` too: a WebSocket call reaches the network. The gate
117
+ // reads a tool's `category`, not this list, to route a call, so declaring
118
+ // it changes no decision for a command; it says what the tool may do.
119
+ permissions: ['shell_execute', 'network_access'],
120
+ readOnly: false,
121
+ destructive: (input) => input.command !== undefined && isDangerousCommand(input.command),
122
+ // A WebSocket call is the one input-aware seam the gate offers that no
123
+ // allow rule or mode outranks: it connects from the host, outside any
124
+ // sandbox, to an address the model chose. `category: 'shell'` is what the
125
+ // sandboxed-shell preset auto-approves, and moving the whole tool to
126
+ // `network` would start asking about commands that were never a question;
127
+ // this asks only about the connection. It is stronger than "review where
128
+ // the mode reviews non-read-only calls": `auto` mode and an unattended
129
+ // turn are asked too (or refuse when nobody can be asked), which is the
130
+ // point for a connection that leaves the boundary those modes rely on.
131
+ requiresApproval: (input) => input.ws !== undefined,
132
+ // Starting a monitor registers a job against the owner's cap and its id
133
+ // is then named in later calls; two at once could race the cap, as they
134
+ // can for a background `bash`.
135
+ concurrencySafe: false,
136
+ presentCall(input) {
137
+ const label = typeof input.description === 'string' ? input.description : undefined;
138
+ if (input.ws !== undefined && typeof input.ws === 'object') {
139
+ const ws = input.ws;
140
+ if (typeof ws.url !== 'string')
141
+ return undefined;
142
+ const protocols = Array.isArray(ws.protocols) && ws.protocols.length > 0
143
+ ? ` (subprotocols: ${ws.protocols.join(', ')})`
144
+ : '';
145
+ // What will happen, said plainly, because this is what a person
146
+ // approves: no command line stands in for it.
147
+ return {
148
+ kind: 'generic',
149
+ label: `Monitor${label ? ` · ${label}` : ''} · WebSocket ${ws.url}${protocols}`,
150
+ };
151
+ }
152
+ if (typeof input.command !== 'string')
153
+ return undefined;
154
+ return {
155
+ kind: 'generic',
156
+ label: `Monitor · ${label ?? input.command}`,
157
+ facts: { kind: 'command', command: input.command, background: true },
158
+ };
159
+ },
160
+ async execute(input, context) {
161
+ if (input.command !== undefined && isDangerousCommand(input.command)) {
162
+ return {
163
+ success: false,
164
+ output: '',
165
+ error: `Dangerous command blocked: "${input.command}"`,
166
+ facts: { kind: 'failure', reason: 'blocked', subject: MONITOR_TOOL_NAME },
167
+ };
168
+ }
169
+ if (backgroundTasksDisabled()) {
170
+ return {
171
+ success: false,
172
+ output: '',
173
+ error: `Background jobs are switched off here (${DISABLE_BACKGROUND_TASKS_ENV}), and a monitor is one. Check in the foreground with bash instead.`,
174
+ };
175
+ }
176
+ // What is checked about a connection is checked before anything that
177
+ // speaks of commands, so a refusal names its own cause.
178
+ let webSocket;
179
+ if (input.ws !== undefined) {
180
+ // The operator's switch for reaching the web at all. A host that has
181
+ // not given this turn a web capability has not decided to let the
182
+ // model open connections, and a WebSocket is one.
183
+ if (context.web?.fetch === undefined) {
184
+ return {
185
+ success: false,
186
+ output: '',
187
+ error: options.webAccessHint
188
+ ? `${MONITOR_WEBSOCKET_WEB_OFF} ${options.webAccessHint}`
189
+ : MONITOR_WEBSOCKET_WEB_OFF,
190
+ };
191
+ }
192
+ const hostname = webSocketHostname(input.ws.url);
193
+ const sandboxRefusal = webSocketSandboxRefusal(context.sandbox, hostname);
194
+ if (sandboxRefusal !== undefined) {
195
+ return { success: false, output: '', error: sandboxRefusal };
196
+ }
197
+ try {
198
+ const addresses = await vetWebSocketTarget(input.ws.url, options.webSocket);
199
+ webSocket = {
200
+ url: input.ws.url,
201
+ ...(input.ws.protocols ? { protocols: input.ws.protocols } : {}),
202
+ addresses,
203
+ };
204
+ }
205
+ catch (err) {
206
+ if (err instanceof WebSocketRefusedError) {
207
+ return { success: false, output: '', error: err.message };
208
+ }
209
+ throw err;
210
+ }
211
+ }
212
+ else if (context.sandbox && context.sandbox.spawnDetached === undefined) {
213
+ // Same rule as background bash: the executor withholds the registry
214
+ // from a sandbox that cannot start a detached process, and this check
215
+ // is for the direct caller who hands both.
216
+ return { success: false, output: '', error: MONITOR_CANNOT_DETACH };
217
+ }
218
+ const jobs = context.backgroundJobs;
219
+ if (!jobs) {
220
+ return {
221
+ success: false,
222
+ output: '',
223
+ error: 'monitor was requested, but this host provides no background job registry. Run the command in the foreground with bash, with a timeout.',
224
+ };
225
+ }
226
+ if (webSocket !== undefined && !jobs.startWebSocketMonitor) {
227
+ return {
228
+ success: false,
229
+ output: '',
230
+ error: MONITOR_WEBSOCKET_NOT_SUPPORTED,
231
+ };
232
+ }
233
+ if (webSocket === undefined && !jobs.startMonitor) {
234
+ return {
235
+ success: false,
236
+ output: '',
237
+ error: 'This host cannot deliver monitor events, so no watch was started. Use bash with run_in_background and wait_for_job to be told when a command finishes.',
238
+ };
239
+ }
240
+ try {
241
+ const common = {
242
+ description: input.description,
243
+ timeoutMs: input.timeout_ms,
244
+ workingDirectory: context.workingDirectory,
245
+ };
246
+ const { job, timeoutMs } = webSocket !== undefined
247
+ ? jobs.startWebSocketMonitor({
248
+ ...common,
249
+ webSocket,
250
+ })
251
+ : jobs.startMonitor({
252
+ ...common,
253
+ command: input.command,
254
+ });
255
+ // `startMonitor` returns before the process exists, and a spawn that
256
+ // fails reports a tick later; wait for that one event so "started" is
257
+ // never said of a watch that could not start.
258
+ const startup = await jobs.awaitStarted?.(job.id);
259
+ if (startup?.error !== undefined) {
260
+ return {
261
+ success: false,
262
+ output: '',
263
+ error: `${startup.error} (monitor ${job.id} did not run).`,
264
+ data: { jobId: job.id, monitor: true, startFailed: true },
265
+ };
266
+ }
267
+ if (webSocket !== undefined) {
268
+ return {
269
+ success: true,
270
+ output: `WebSocket monitor started (job ${job.id}, expires in ${formatMonitorDuration(timeoutMs)} unless the server closes the connection first; you get one notice at expiry — start it again if you still need the watch). Each line of each text frame the server sends reaches you as an event while you keep working; binary frames are only counted. The connection opens in the background: if it fails you are told in an event. Do not poll or sleep. Stop it with job {"action":"kill","id":"${job.id}"}. An event may arrive while you are waiting for the user — it is not their reply.`,
271
+ data: { jobId: job.id, monitor: true, timeoutMs, transport: 'websocket' },
272
+ };
273
+ }
274
+ return {
275
+ success: true,
276
+ output: `Monitor started (job ${job.id}, expires in ${formatMonitorDuration(timeoutMs)} unless the command ends first; you get one notice at expiry — start it again if you still need the watch). Each line the command prints to stdout reaches you as an event while you keep working; do not poll or sleep. Stop it with job {"action":"kill","id":"${job.id}"}. An event may arrive while you are waiting for the user — it is not their reply.`,
277
+ data: { jobId: job.id, monitor: true, timeoutMs },
278
+ facts: { kind: 'command', command: input.command, background: true },
279
+ };
280
+ }
281
+ catch (err) {
282
+ // The per-owner cap, most likely; naming the limit is actionable.
283
+ return {
284
+ success: false,
285
+ output: '',
286
+ error: err instanceof Error ? err.message : String(err),
287
+ };
288
+ }
289
+ },
290
+ });
291
+ }
292
+ export const MonitorTool = createMonitorTool();
293
+ /**
294
+ * The tool, for a host that opts in.
295
+ *
296
+ * Not in `getBuiltinTools()`: a watch needs a host that delivers events and
297
+ * wakes on them, and offering a tool that starts a job nobody will hear from
298
+ * is worse than not offering it. A function rather than a constant so a host
299
+ * can decide per turn, and so it reads like `getCodeAnalysisTools`, beside
300
+ * which a host mounts it deferred. Called with no options it returns the
301
+ * shared {@link MonitorTool}.
302
+ */
303
+ export function getMonitorTools(options) {
304
+ return [options === undefined ? MonitorTool : createMonitorTool(options)];
305
+ }
306
+ //# sourceMappingURL=monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../src/tools/builtins/monitor.ts"],"names":[],"mappings":"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"}