@skt-ai-labs/trayambak-cli 0.6.3 → 0.6.5

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 (393) hide show
  1. package/dist/apps/cli/src/command-registry.js +1 -1
  2. package/dist/apps/cli/src/commands/agent.js +1 -1
  3. package/dist/apps/cli/src/commands/archive.js +1 -1
  4. package/dist/apps/cli/src/commands/checkpoint.js +1 -1
  5. package/dist/apps/cli/src/commands/command-dispatch.js +1 -1
  6. package/dist/apps/cli/src/commands/commit.js +1 -1
  7. package/dist/apps/cli/src/commands/compact.js +1 -1
  8. package/dist/apps/cli/src/commands/config.js +1 -1
  9. package/dist/apps/cli/src/commands/db.js +1 -1
  10. package/dist/apps/cli/src/commands/doctor.js +1 -1
  11. package/dist/apps/cli/src/commands/download.js +1 -1
  12. package/dist/apps/cli/src/commands/exec.js +1 -1
  13. package/dist/apps/cli/src/commands/index.js +1 -1
  14. package/dist/apps/cli/src/commands/login.js +1 -1
  15. package/dist/apps/cli/src/commands/manager.js +1 -1
  16. package/dist/apps/cli/src/commands/marketplace.js +1 -1
  17. package/dist/apps/cli/src/commands/mcp.js +1 -1
  18. package/dist/apps/cli/src/commands/mode.js +1 -1
  19. package/dist/apps/cli/src/commands/models.js +1 -1
  20. package/dist/apps/cli/src/commands/plan.js +1 -1
  21. package/dist/apps/cli/src/commands/pr.js +1 -1
  22. package/dist/apps/cli/src/commands/registry.js +1 -1
  23. package/dist/apps/cli/src/commands/run.js +1 -1
  24. package/dist/apps/cli/src/commands/sandbox.js +1 -1
  25. package/dist/apps/cli/src/commands/serve.js +1 -1
  26. package/dist/apps/cli/src/commands/session-export.js +1 -1
  27. package/dist/apps/cli/src/commands/session-resume.js +1 -1
  28. package/dist/apps/cli/src/commands/shortcuts.js +1 -1
  29. package/dist/apps/cli/src/commands/slash-command.js +1 -1
  30. package/dist/apps/cli/src/commands/stats.js +1 -1
  31. package/dist/apps/cli/src/commands/streaming-gate.js +1 -1
  32. package/dist/apps/cli/src/commands/task.js +1 -1
  33. package/dist/apps/cli/src/commands/todo.js +1 -1
  34. package/dist/apps/cli/src/commands/uninstall.js +1 -1
  35. package/dist/apps/cli/src/commands/upgrade.js +1 -1
  36. package/dist/apps/cli/src/commands/worktree.js +1 -1
  37. package/dist/apps/cli/src/flags.js +1 -1
  38. package/dist/apps/cli/src/index.js +1 -1
  39. package/dist/apps/cli/src/integration/board.js +1 -1
  40. package/dist/apps/cli/src/integration/git-refs.js +1 -1
  41. package/dist/apps/cli/src/integration/index.js +1 -1
  42. package/dist/apps/cli/src/integration/indexing.js +1 -1
  43. package/dist/apps/cli/src/integration/notebook.js +1 -1
  44. package/dist/apps/cli/src/integration/parent-watchdog.js +1 -1
  45. package/dist/apps/cli/src/integration/plan.js +1 -1
  46. package/dist/apps/cli/src/integration/presence.js +1 -1
  47. package/dist/apps/cli/src/integration/project-id.js +1 -1
  48. package/dist/apps/cli/src/integration/rules.js +1 -1
  49. package/dist/apps/cli/src/integration/sandbox.js +1 -1
  50. package/dist/apps/cli/src/integration/task-resume.js +1 -1
  51. package/dist/apps/cli/src/integration/text-stream.js +1 -1
  52. package/dist/apps/cli/src/integration/unique-id.js +1 -1
  53. package/dist/apps/cli/src/integration/watcher.js +1 -1
  54. package/dist/apps/cli/src/logger.js +1 -1
  55. package/dist/apps/cli/src/session/index.js +1 -1
  56. package/dist/apps/cli/src/session/session-compaction.js +1 -1
  57. package/dist/apps/cli/src/session/session-continuation.js +1 -1
  58. package/dist/apps/cli/src/session/session-control.js +1 -1
  59. package/dist/apps/cli/src/session/session-fork.js +1 -1
  60. package/dist/apps/cli/src/session/session-manager.js +1 -1
  61. package/dist/apps/cli/src/session/session-transcript.js +1 -1
  62. package/dist/apps/cli/src/tui/index.js +1 -1
  63. package/dist/apps/cli/src/tui/tui-features.js +1 -1
  64. package/dist/apps/cli/src/version.js +1 -1
  65. package/dist/apps/runtime/src/agent/agent-loop.js +1 -1
  66. package/dist/apps/runtime/src/agent/agent.js +1 -1
  67. package/dist/apps/runtime/src/agent/auto-pilot.js +1 -1
  68. package/dist/apps/runtime/src/agent/loop-test-harness.js +1 -1
  69. package/dist/apps/runtime/src/agent/review-init.js +1 -1
  70. package/dist/apps/runtime/src/agent/sota.js +1 -1
  71. package/dist/apps/runtime/src/agent/specialist-agents.js +1 -1
  72. package/dist/apps/runtime/src/artifacts/artifact-manager.js +1 -1
  73. package/dist/apps/runtime/src/checkpoints.js +1 -1
  74. package/dist/apps/runtime/src/compaction.js +1 -1
  75. package/dist/apps/runtime/src/config.js +1 -1
  76. package/dist/apps/runtime/src/controller/controller.js +1 -1
  77. package/dist/apps/runtime/src/controller/executor.js +1 -1
  78. package/dist/apps/runtime/src/controller/reviewer.js +1 -1
  79. package/dist/apps/runtime/src/controller/router.js +1 -1
  80. package/dist/apps/runtime/src/controller/state.js +1 -1
  81. package/dist/apps/runtime/src/developer-mode/bug-fix-auto.js +1 -1
  82. package/dist/apps/runtime/src/developer-mode/developer-mode.js +1 -1
  83. package/dist/apps/runtime/src/developer-mode/rag-cache.js +1 -1
  84. package/dist/apps/runtime/src/developer-mode/sota-mode.js +1 -1
  85. package/dist/apps/runtime/src/developer-mode/subagent-orchestrator.js +1 -1
  86. package/dist/apps/runtime/src/evidence/evidence-store.js +1 -1
  87. package/dist/apps/runtime/src/github-auth.js +1 -1
  88. package/dist/apps/runtime/src/goals.js +1 -1
  89. package/dist/apps/runtime/src/index.js +1 -1
  90. package/dist/apps/runtime/src/knowledge/knowledge-gate.js +1 -1
  91. package/dist/apps/runtime/src/license.js +1 -1
  92. package/dist/apps/runtime/src/llama-cpp-bin.js +1 -1
  93. package/dist/apps/runtime/src/mistakes/mistake-detector.js +1 -1
  94. package/dist/apps/runtime/src/notifications.js +1 -1
  95. package/dist/apps/runtime/src/planner/planner.js +1 -1
  96. package/dist/apps/runtime/src/prompt/auto-title.js +1 -1
  97. package/dist/apps/runtime/src/prompt/enhance-prompt.js +1 -1
  98. package/dist/apps/runtime/src/prompt/power-prompt.js +1 -1
  99. package/dist/apps/runtime/src/prompt/rules.js +1 -1
  100. package/dist/apps/runtime/src/repetition/repetition-detector.js +1 -1
  101. package/dist/apps/runtime/src/self-improvement.js +1 -1
  102. package/dist/apps/runtime/src/session/session.js +1 -1
  103. package/dist/apps/runtime/src/tools/artifacts/artifact.js +1 -1
  104. package/dist/apps/runtime/src/tools/checkpoint/checkpoint.js +1 -1
  105. package/dist/apps/runtime/src/tools/checkpoint/rewind.js +1 -1
  106. package/dist/apps/runtime/src/tools/code/codemode.js +1 -1
  107. package/dist/apps/runtime/src/tools/code/fim.js +1 -1
  108. package/dist/apps/runtime/src/tools/code/next-edit.js +1 -1
  109. package/dist/apps/runtime/src/tools/code-search/code-search.js +1 -1
  110. package/dist/apps/runtime/src/tools/code-search/semantic-search.js +1 -1
  111. package/dist/apps/runtime/src/tools/code-search/symbols.js +1 -1
  112. package/dist/apps/runtime/src/tools/command-exec/bash.js +1 -1
  113. package/dist/apps/runtime/src/tools/command-exec/terminal.js +1 -1
  114. package/dist/apps/runtime/src/tools/commands/commands.js +1 -1
  115. package/dist/apps/runtime/src/tools/custom/custom-tools.js +1 -1
  116. package/dist/apps/runtime/src/tools/diagnostics/diagnostics-tool.js +1 -1
  117. package/dist/apps/runtime/src/tools/diagnostics/tsc-diagnostics.js +1 -1
  118. package/dist/apps/runtime/src/tools/directory/list-dir.js +1 -1
  119. package/dist/apps/runtime/src/tools/file-edit/edit-file.js +1 -1
  120. package/dist/apps/runtime/src/tools/file-edit/fs-walk.js +1 -1
  121. package/dist/apps/runtime/src/tools/file-edit/fuzzy-match.js +1 -1
  122. package/dist/apps/runtime/src/tools/file-edit/read-file.js +1 -1
  123. package/dist/apps/runtime/src/tools/file-edit/write-file.js +1 -1
  124. package/dist/apps/runtime/src/tools/github/github.js +1 -1
  125. package/dist/apps/runtime/src/tools/globber/glob.js +1 -1
  126. package/dist/apps/runtime/src/tools/hook-exec.js +1 -1
  127. package/dist/apps/runtime/src/tools/index.js +1 -1
  128. package/dist/apps/runtime/src/tools/manifest/read-manifest.js +1 -1
  129. package/dist/apps/runtime/src/tools/marketplace/marketplace.js +1 -1
  130. package/dist/apps/runtime/src/tools/mcp/mcp-install.js +1 -1
  131. package/dist/apps/runtime/src/tools/mcp/mcp-runner-tool.js +1 -1
  132. package/dist/apps/runtime/src/tools/mcp/mcp.js +1 -1
  133. package/dist/apps/runtime/src/tools/mcp/registry.js +1 -1
  134. package/dist/apps/runtime/src/tools/mcp/tool-search.js +1 -1
  135. package/dist/apps/runtime/src/tools/memory/dream.js +1 -1
  136. package/dist/apps/runtime/src/tools/memory/memory.js +1 -1
  137. package/dist/apps/runtime/src/tools/mode/mode.js +1 -1
  138. package/dist/apps/runtime/src/tools/pentest/pentest-tools.js +1 -1
  139. package/dist/apps/runtime/src/tools/pentest/security-tool-registry.js +1 -1
  140. package/dist/apps/runtime/src/tools/planning/todo.js +1 -1
  141. package/dist/apps/runtime/src/tools/planning/todoread.js +1 -1
  142. package/dist/apps/runtime/src/tools/regex/grep.js +1 -1
  143. package/dist/apps/runtime/src/tools/search/ripgrep.js +1 -1
  144. package/dist/apps/runtime/src/tools/skills/skill-core.js +1 -1
  145. package/dist/apps/runtime/src/tools/skills/skill-loading.js +1 -1
  146. package/dist/apps/runtime/src/tools/skills/skill-model.js +1 -1
  147. package/dist/apps/runtime/src/tools/skills/skill-parser.js +1 -1
  148. package/dist/apps/runtime/src/tools/skills/skill-selection.js +1 -1
  149. package/dist/apps/runtime/src/tools/skills/skills.js +1 -1
  150. package/dist/apps/runtime/src/tools/text/csv.js +1 -1
  151. package/dist/apps/runtime/src/tools/text/diff-render.js +1 -1
  152. package/dist/apps/runtime/src/tools/text/diff.js +1 -1
  153. package/dist/apps/runtime/src/tools/text/summarize.js +1 -1
  154. package/dist/apps/runtime/src/tools/text/yaml.js +1 -1
  155. package/dist/apps/runtime/src/tools/trayambak/agent-catalog.js +1 -1
  156. package/dist/apps/runtime/src/tools/trayambak/agent-manager.js +1 -1
  157. package/dist/apps/runtime/src/tools/trayambak/agent.js +1 -1
  158. package/dist/apps/runtime/src/tools/trayambak/ask-question.js +1 -1
  159. package/dist/apps/runtime/src/tools/trayambak/cron.js +1 -1
  160. package/dist/apps/runtime/src/tools/trayambak/debate.js +1 -1
  161. package/dist/apps/runtime/src/tools/trayambak/fleet.js +1 -1
  162. package/dist/apps/runtime/src/tools/trayambak/generate-agent.js +1 -1
  163. package/dist/apps/runtime/src/tools/trayambak/monitor.js +1 -1
  164. package/dist/apps/runtime/src/tools/trayambak/notebook-edit.js +1 -1
  165. package/dist/apps/runtime/src/tools/trayambak/parallel-execute.js +1 -1
  166. package/dist/apps/runtime/src/tools/trayambak/parallel-review.js +1 -1
  167. package/dist/apps/runtime/src/tools/trayambak/rules.js +1 -1
  168. package/dist/apps/runtime/src/tools/trayambak/send-message.js +1 -1
  169. package/dist/apps/runtime/src/tools/trayambak/sota-solve.js +1 -1
  170. package/dist/apps/runtime/src/tools/trayambak/swarm.js +1 -1
  171. package/dist/apps/runtime/src/tools/trayambak/tasks.js +1 -1
  172. package/dist/apps/runtime/src/tools/trayambak/team.js +1 -1
  173. package/dist/apps/runtime/src/tools/trayambak/workflow.js +1 -1
  174. package/dist/apps/runtime/src/tools/trayambak/worktree.js +1 -1
  175. package/dist/apps/runtime/src/tools/types.js +1 -1
  176. package/dist/apps/runtime/src/tools/web/multi-search.js +1 -1
  177. package/dist/apps/runtime/src/tools/web/web-search.js +1 -1
  178. package/dist/apps/runtime/src/tools/web/webbrowse.js +1 -1
  179. package/dist/apps/runtime/src/tools/web/webfetch.js +1 -1
  180. package/dist/apps/runtime/src/update/auto-update.js +1 -1
  181. package/dist/packages/acp/src/index.js +1 -1
  182. package/dist/packages/approval/src/index.js +1 -1
  183. package/dist/packages/checkpoints/src/index.js +1 -1
  184. package/dist/packages/cli/src/commands/registry.js +1 -1
  185. package/dist/packages/client/src/index.js +1 -1
  186. package/dist/packages/coding-agent/src/index.js +1 -1
  187. package/dist/packages/core/src/agent_communication.js +1 -1
  188. package/dist/packages/core/src/agent_registry.js +1 -1
  189. package/dist/packages/core/src/agents_md.js +1 -1
  190. package/dist/packages/core/src/analytics.js +1 -1
  191. package/dist/packages/core/src/approval.js +1 -1
  192. package/dist/packages/core/src/auth.js +1 -1
  193. package/dist/packages/core/src/context/compactor.js +1 -1
  194. package/dist/packages/core/src/cron/scheduler.js +1 -1
  195. package/dist/packages/core/src/curator/librarian.js +1 -1
  196. package/dist/packages/core/src/env_filter.js +1 -1
  197. package/dist/packages/core/src/extension_api.js +1 -1
  198. package/dist/packages/core/src/feature_flags.js +1 -1
  199. package/dist/packages/core/src/hook_runtime.js +1 -1
  200. package/dist/packages/core/src/i18n.js +1 -1
  201. package/dist/packages/core/src/memory/manager.js +1 -1
  202. package/dist/packages/core/src/memory/provider.js +1 -1
  203. package/dist/packages/core/src/plan_mode.js +1 -1
  204. package/dist/packages/core/src/process.js +1 -1
  205. package/dist/packages/core/src/providers/manager.js +1 -1
  206. package/dist/packages/core/src/providers/registry.js +1 -1
  207. package/dist/packages/core/src/rollout_budget.js +1 -1
  208. package/dist/packages/core/src/secrets.js +1 -1
  209. package/dist/packages/core/src/session_store.js +1 -1
  210. package/dist/packages/core/src/state_db.js +1 -1
  211. package/dist/packages/core/src/subagents.js +1 -1
  212. package/dist/packages/core/src/token_budget.js +1 -1
  213. package/dist/packages/core/src/toolsets/arsenal.js +1 -1
  214. package/dist/packages/core/src/validate.js +1 -1
  215. package/dist/packages/execpolicy/src/policy.js +1 -1
  216. package/dist/packages/function/src/index.js +1 -1
  217. package/dist/packages/harness/src/index.js +1 -1
  218. package/dist/packages/mcp/src/index.js +1 -1
  219. package/dist/packages/mcp/src/oauth-callback.js +1 -1
  220. package/dist/packages/mcp/src/oauth.js +1 -1
  221. package/dist/packages/mcp/src/spawn-resolve.js +1 -1
  222. package/dist/packages/mcp-server/src/index.js +1 -1
  223. package/dist/packages/modes/src/index.js +1 -1
  224. package/dist/packages/protocol/src/events.js +1 -1
  225. package/dist/packages/protocol/src/messages.js +1 -1
  226. package/dist/packages/protocol/src/permission-rules.js +1 -1
  227. package/dist/packages/protocol/src/permissions.js +1 -1
  228. package/dist/packages/protocol/src/tools.js +1 -1
  229. package/dist/packages/protocol/src/toolsets.js +1 -1
  230. package/dist/packages/protocol/src/util/url.js +1 -1
  231. package/dist/packages/provider/src/anthropic.js +1 -1
  232. package/dist/packages/provider/src/catalog.js +1 -1
  233. package/dist/packages/provider/src/custom.js +1 -1
  234. package/dist/packages/provider/src/faux-stream.js +1 -1
  235. package/dist/packages/provider/src/google.js +1 -1
  236. package/dist/packages/provider/src/huggingface.js +1 -1
  237. package/dist/packages/provider/src/index.js +1 -1
  238. package/dist/packages/provider/src/llama-cpp.js +1 -1
  239. package/dist/packages/provider/src/nvidia.js +1 -1
  240. package/dist/packages/provider/src/ollama.js +1 -1
  241. package/dist/packages/provider/src/openai.js +1 -1
  242. package/dist/packages/provider/src/types.js +1 -1
  243. package/dist/packages/provider/src/xai.js +1 -1
  244. package/dist/packages/sandbox/src/gate.js +1 -1
  245. package/dist/packages/sandbox/src/index.js +1 -1
  246. package/dist/packages/sandbox/src/spawn.js +1 -1
  247. package/dist/packages/sandbox/src/types.js +1 -1
  248. package/dist/packages/sandbox/src/violation.js +1 -1
  249. package/dist/packages/schema/src/index.js +1 -1
  250. package/dist/packages/sdk/src/index.js +1 -1
  251. package/dist/packages/server/src/cors.js +1 -1
  252. package/dist/packages/server/src/daemon.js +1 -1
  253. package/dist/packages/server/src/github-app.js +1 -1
  254. package/dist/packages/server/src/github-autofix.js +1 -1
  255. package/dist/packages/server/src/github-jobs.js +1 -1
  256. package/dist/packages/server/src/github-oauth.js +1 -1
  257. package/dist/packages/server/src/index.js +1 -1
  258. package/dist/packages/server/src/install-ps1.js +1 -1
  259. package/dist/packages/server/src/license-store.js +1 -1
  260. package/dist/packages/session-backends/src/index.js +1 -1
  261. package/dist/packages/session-backends/src/transcript.js +1 -1
  262. package/dist/packages/telemetry/src/index.js +1 -1
  263. package/dist/packages/tui/src/app/app-state.js +1 -1
  264. package/dist/packages/tui/src/app/events.js +1 -1
  265. package/dist/packages/tui/src/approval-notification.js +1 -1
  266. package/dist/packages/tui/src/bottom_pane/composer.js +1 -1
  267. package/dist/packages/tui/src/bottom_pane/index.js +1 -1
  268. package/dist/packages/tui/src/chatwidget/chat-widget.js +1 -1
  269. package/dist/packages/tui/src/chatwidget/index.js +1 -1
  270. package/dist/packages/tui/src/dialogs.js +1 -1
  271. package/dist/packages/tui/src/index.js +1 -1
  272. package/dist/packages/tui/src/ink-app/glyphs.js +1 -1
  273. package/dist/packages/tui/src/ink-app/utils/stringWidth.js +1 -1
  274. package/dist/packages/tui/src/ink-app-esm/AgentPicker.js +1 -1
  275. package/dist/packages/tui/src/ink-app-esm/App.js +1 -1
  276. package/dist/packages/tui/src/ink-app-esm/CommandPalette.js +1 -1
  277. package/dist/packages/tui/src/ink-app-esm/ExecToolCallItem.js +1 -1
  278. package/dist/packages/tui/src/ink-app-esm/Footer.js +1 -1
  279. package/dist/packages/tui/src/ink-app-esm/GroupedToolUseContent.js +1 -1
  280. package/dist/packages/tui/src/ink-app-esm/MCPToolCallItem.js +1 -1
  281. package/dist/packages/tui/src/ink-app-esm/MessageList.js +1 -1
  282. package/dist/packages/tui/src/ink-app-esm/MessageResponse.js +1 -1
  283. package/dist/packages/tui/src/ink-app-esm/MessageRow.js +1 -1
  284. package/dist/packages/tui/src/ink-app-esm/ModelPicker.js +1 -1
  285. package/dist/packages/tui/src/ink-app-esm/PermissionOverlay.js +1 -1
  286. package/dist/packages/tui/src/ink-app-esm/PromptInput.js +1 -1
  287. package/dist/packages/tui/src/ink-app-esm/ProviderPicker.js +1 -1
  288. package/dist/packages/tui/src/ink-app-esm/SandboxSetup.js +1 -1
  289. package/dist/packages/tui/src/ink-app-esm/SessionPicker.js +1 -1
  290. package/dist/packages/tui/src/ink-app-esm/Sidebar.js +1 -1
  291. package/dist/packages/tui/src/ink-app-esm/Spinner.js +1 -1
  292. package/dist/packages/tui/src/ink-app-esm/SplashScreen.js +1 -1
  293. package/dist/packages/tui/src/ink-app-esm/SubagentPanel.js +1 -1
  294. package/dist/packages/tui/src/ink-app-esm/SubagentRow.js +1 -1
  295. package/dist/packages/tui/src/ink-app-esm/SwarmToolCallItem.js +1 -1
  296. package/dist/packages/tui/src/ink-app-esm/ThemePicker.js +1 -1
  297. package/dist/packages/tui/src/ink-app-esm/ToolCallItem.js +1 -1
  298. package/dist/packages/tui/src/ink-app-esm/ToolUseLoader.js +1 -1
  299. package/dist/packages/tui/src/ink-app-esm/TrayambakLogo.js +1 -1
  300. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolCanceledMessage.js +1 -1
  301. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolErrorMessage.js +1 -1
  302. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolRejectMessage.js +1 -1
  303. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolResultMessage.js +1 -1
  304. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolSuccessMessage.js +1 -1
  305. package/dist/packages/tui/src/ink-app-esm/WelcomeScreen.js +1 -1
  306. package/dist/packages/tui/src/ink-app-esm/WhichKey.js +1 -1
  307. package/dist/packages/tui/src/ink-app-esm/app-bootstrap.js +1 -1
  308. package/dist/packages/tui/src/ink-app-esm/clipboard.js +1 -1
  309. package/dist/packages/tui/src/ink-app-esm/command-palette.js +1 -1
  310. package/dist/packages/tui/src/ink-app-esm/file-mention.js +1 -1
  311. package/dist/packages/tui/src/ink-app-esm/footer-fit.js +1 -1
  312. package/dist/packages/tui/src/ink-app-esm/fuzzy.js +1 -1
  313. package/dist/packages/tui/src/ink-app-esm/glyphs.js +1 -1
  314. package/dist/packages/tui/src/ink-app-esm/index.js +1 -1
  315. package/dist/packages/tui/src/ink-app-esm/keys.js +1 -1
  316. package/dist/packages/tui/src/ink-app-esm/mode-stack.js +1 -1
  317. package/dist/packages/tui/src/ink-app-esm/model-picker.js +1 -1
  318. package/dist/packages/tui/src/ink-app-esm/mouse-input.js +1 -1
  319. package/dist/packages/tui/src/ink-app-esm/prompt-files.js +1 -1
  320. package/dist/packages/tui/src/ink-app-esm/provider-model-support.js +1 -1
  321. package/dist/packages/tui/src/ink-app-esm/resize-guard.js +1 -1
  322. package/dist/packages/tui/src/ink-app-esm/restore-messages.js +1 -1
  323. package/dist/packages/tui/src/ink-app-esm/scroll-math.js +1 -1
  324. package/dist/packages/tui/src/ink-app-esm/session-picker-actions.js +1 -1
  325. package/dist/packages/tui/src/ink-app-esm/sidebar-data.js +1 -1
  326. package/dist/packages/tui/src/ink-app-esm/skt-themes.js +1 -1
  327. package/dist/packages/tui/src/ink-app-esm/stdin-sanitizer.js +1 -1
  328. package/dist/packages/tui/src/ink-app-esm/subagent-view.js +1 -1
  329. package/dist/packages/tui/src/ink-app-esm/syntax-highlight.js +1 -1
  330. package/dist/packages/tui/src/ink-app-esm/terminal-notify.js +1 -1
  331. package/dist/packages/tui/src/ink-app-esm/text-format.js +1 -1
  332. package/dist/packages/tui/src/ink-app-esm/theme.js +1 -1
  333. package/dist/packages/tui/src/ink-app-esm/themeColors.js +1 -1
  334. package/dist/packages/tui/src/ink-app-esm/types.js +1 -1
  335. package/dist/packages/tui/src/ink-app-esm/use-border-pulse.js +1 -1
  336. package/dist/packages/tui/src/ink-app-esm/useAppInput.js +1 -1
  337. package/dist/packages/tui/src/ink-app-esm/utils/stringWidth.js +1 -1
  338. package/dist/packages/tui/src/keybindings.js +1 -1
  339. package/dist/packages/tui/src/keys.js +1 -1
  340. package/dist/packages/tui/src/notifications.js +1 -1
  341. package/dist/packages/tui/src/premium-ui.js +1 -1
  342. package/dist/packages/tui/src/stdin-buffer.js +1 -1
  343. package/dist/packages/tui/src/terminal-ui.js +1 -1
  344. package/dist/packages/tui/src/tui/terminal.js +1 -1
  345. package/dist/packages/tui/src/ui/border.js +1 -1
  346. package/dist/packages/tui/src/ui/box.js +1 -1
  347. package/dist/packages/tui/src/ui/dialog.js +1 -1
  348. package/dist/packages/tui/src/ui/footer-mode.js +1 -1
  349. package/dist/packages/tui/src/ui/footer.js +1 -1
  350. package/dist/packages/tui/src/ui/key-hint.js +1 -1
  351. package/dist/packages/tui/src/ui/skt-themes.js +1 -1
  352. package/dist/packages/tui/src/ui/spinner.js +1 -1
  353. package/dist/packages/tui/src/ui/theme.js +1 -1
  354. package/dist/packages/tui/src/ui/toast.js +1 -1
  355. package/dist/packages/tui/src/ui/tool-display.js +1 -1
  356. package/dist/packages/tui/src/ui/tool-palette.js +1 -1
  357. package/dist/skt/0-points/points.js +1 -1
  358. package/dist/skt/1-errors/mistake.js +1 -1
  359. package/dist/skt/1-errors/penalty.js +1 -1
  360. package/dist/skt/10-upload/upload.js +1 -1
  361. package/dist/skt/11-ui/components.js +1 -1
  362. package/dist/skt/12-control/content-control.js +1 -1
  363. package/dist/skt/12-control/hallucination.js +1 -1
  364. package/dist/skt/12-control/points.js +1 -1
  365. package/dist/skt/12-control/repetition.js +1 -1
  366. package/dist/skt/12-control/verification.js +1 -1
  367. package/dist/skt/13-healing/ast-validator.js +1 -1
  368. package/dist/skt/13-healing/healing-controller.js +1 -1
  369. package/dist/skt/13-healing/journal.js +1 -1
  370. package/dist/skt/13-healing/rollback.js +1 -1
  371. package/dist/skt/13-healing/scratchpad.js +1 -1
  372. package/dist/skt/13-healing/subprocess.js +1 -1
  373. package/dist/skt/13-healing/verify.js +1 -1
  374. package/dist/skt/14-hooks/codec.js +1 -1
  375. package/dist/skt/14-hooks/events.js +1 -1
  376. package/dist/skt/14-hooks/matcher.js +1 -1
  377. package/dist/skt/14-hooks/merge.js +1 -1
  378. package/dist/skt/14-hooks/runner.js +1 -1
  379. package/dist/skt/14-hooks/types.js +1 -1
  380. package/dist/skt/3-user/instructions.js +1 -1
  381. package/dist/skt/4-mem/memory.js +1 -1
  382. package/dist/skt/5-eval/cot-chain.js +1 -1
  383. package/dist/skt/5-eval/cot.js +1 -1
  384. package/dist/skt/5-eval/eval.js +1 -1
  385. package/dist/skt/6-u/improvements.js +1 -1
  386. package/dist/skt/6-u/reward.js +1 -1
  387. package/dist/skt/7-cli/autorepair.js +1 -1
  388. package/dist/skt/7-cli/clibugs.js +1 -1
  389. package/dist/skt/7-cli/reinstall.js +1 -1
  390. package/dist/skt/7-cli/reset.js +1 -1
  391. package/dist/skt/9-session/session.js +1 -1
  392. package/dist/skt/context.js +1 -1
  393. package/package.json +1 -1
@@ -1 +1 @@
1
- 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['resetBackgroundJobsForTests']=resetBackgroundJobsForTests,exports['osSpawnRequest']=osSpawnRequest,exports['runForegroundOsSandboxed']=runForegroundOsSandboxed,exports['buildBashEnv']=buildBashEnv,exports['createBashTool']=createBashTool;const permissions_js_1=require('../../../../../packages/protocol/src/permissions.js'),types_js_1=require('../types.js'),index_js_1=require('../../../../../packages/sandbox/src/index.js'),policy_js_1=require('../../../../../packages/execpolicy/src/policy.js'),process_js_1=require('../../../../../packages/core/src/process.js'),env_filter_js_1=require('../../../../../packages/core/src/env_filter.js'),index_js_2=require('../../../../../packages/approval/src/index.js'),crypto_1=require('crypto'),definition={'timeoutMs':0x7530,'name':'bash','description':'Run\x20a\x20shell\x20command\x20in\x20the\x20project\x20working\x20directory.\x20Returns\x20combined\x20stdout/stderr\x20with\x20OS-level\x20sandbox\x20isolation,\x20output\x20capping,\x20and\x20process\x20tree\x20management.\x20Pass\x20background:\x20true\x20for\x20long-running\x20work:\x20the\x20command\x20starts\x20detached\x20and\x20you\x20get\x20a\x20job_id\x20back\x20immediately\x20—\x20keep\x20working,\x20then\x20poll\x20bash\x20with\x20job_id\x20to\x20read\x20the\x20result\x20(or\x20action:\x20\x27kill\x27\x20to\x20stop\x20it).','executionMode':'sequential','parameters':{'type':'object','required':[],'properties':{'command':{'type':'string','description':'The\x20shell\x20command\x20to\x20execute.\x20Required\x20unless\x20polling\x20a\x20job\x20via\x20\x27job_id\x27.'},'timeout':{'type':'number','description':'Optional\x20timeout\x20in\x20seconds\x20(foreground\x20max\x20300;\x20background\x20max\x203600,\x20default\x20600).'},'background':{'type':'boolean','description':'Start\x20the\x20command\x20as\x20a\x20background\x20job\x20and\x20return\x20its\x20job_id\x20immediately\x20instead\x20of\x20waiting\x20for\x20it\x20to\x20finish.'},'job_id':{'type':'string','description':'Background\x20job\x20to\x20inspect\x20(default)\x20or\x20kill\x20instead\x20of\x20running\x20a\x20new\x20command.'},'action':{'type':'string','enum':['status','kill'],'description':'What\x20to\x20do\x20with\x20\x27job_id\x27:\x20\x27status\x27\x20(default)\x20returns\x20progress/output,\x20\x27kill\x27\x20stops\x20the\x20job.'}}}},MAX_BACKGROUND_JOBS=0x8,COMPLETED_RETENTION_MS=0xa*0x3c*0x3e8,backgroundJobs=new Map();function sweepBackgroundJobs(){const _0x117c23=Date['now']();for(const [_0x53d5f7,_0x1c6aea]of backgroundJobs){_0x1c6aea['state']==='done'&&_0x1c6aea['settledAt']!==undefined&&_0x117c23-_0x1c6aea['settledAt']>COMPLETED_RETENTION_MS&&backgroundJobs['delete'](_0x53d5f7);}}function resetBackgroundJobsForTests(){for(const _0x19dab5 of backgroundJobs['values']()){if(_0x19dab5['state']==='running')void _0x19dab5['kill']?.()['catch'](()=>{});}backgroundJobs['clear']();}async function startBackgroundJob(_0x10ae7c){sweepBackgroundJobs();const _0x10003d=[...backgroundJobs['values']()]['filter'](_0x3250bb=>_0x3250bb['state']==='running')['length'];if(_0x10003d>=MAX_BACKGROUND_JOBS)return(0x0,types_js_1['textResult'])('Too\x20many\x20background\x20jobs\x20running\x20('+_0x10003d+'/'+MAX_BACKGROUND_JOBS+').\x20Poll\x20existing\x20jobs\x20with\x20job_id\x20or\x20kill\x20them\x20first.',!![]);const _0x415363=(0x0,crypto_1['randomUUID'])(),_0x328c62={'id':_0x415363,'command':_0x10ae7c['command'],'cwd':_0x10ae7c['ctx']['cwd'],'startedAt':Date['now'](),'timeoutMs':_0x10ae7c['timeoutMs'],'state':'running'};backgroundJobs['set'](_0x415363,_0x328c62);if((0x0,index_js_1['shouldUseOsSandbox'])(_0x10ae7c['sandboxType'])){let _0x2d6635;try{_0x2d6635=await(_0x10ae7c['spawnFn']??index_js_1['spawnProcess'])(osSpawnRequest({'shell':_0x10ae7c['shell'],'shellArgs':_0x10ae7c['shellArgs'],'command':_0x10ae7c['command'],'cwd':_0x10ae7c['ctx']['cwd'],'env':_0x10ae7c['safeEnv'],'sandboxType':_0x10ae7c['sandboxType'],'networkDisabled':_0x10ae7c['networkDisabled'],'timeoutMs':_0x10ae7c['timeoutMs']}));}catch(_0x437a21){return backgroundJobs['delete'](_0x415363),(0x0,types_js_1['textResult'])('Failed\x20to\x20start\x20background\x20job:\x20'+(_0x437a21 instanceof Error?_0x437a21['message']:String(_0x437a21)),!![]);}return _0x328c62['pid']=_0x2d6635['pid'],_0x328c62['kill']=_0x2d6635['kill'],void _0x2d6635['waitForExit']()['then'](async _0x10e9ba=>{_0x328c62['output']=await _0x2d6635['readAll']()['catch'](()=>''),_0x328c62['exitCode']=_0x10e9ba,_0x328c62['settledAt']=Date['now'](),_0x328c62['state']='done';})['catch'](()=>{_0x328c62['output']=_0x328c62['output']??'',_0x328c62['exitCode']=0x1,_0x328c62['settledAt']=Date['now'](),_0x328c62['state']='done';}),(0x0,types_js_1['textResult'])('Background\x20job\x20started.\x0ajob_id:\x20'+_0x415363+'\x0acommand:\x20'+_0x10ae7c['command']+'\x0atimeout:\x20'+_0x10ae7c['timeoutSec']+'s\x0asandbox:\x20os\x20('+_0x2d6635['sandboxType']+')\x0a\x0aPoll\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x415363+'\x22})\x20for\x20status\x20and\x20output;\x20stop\x20it\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x415363+'\x22,\x20\x22action\x22:\x20\x22kill\x22}).');}const _0x1e0371=new process_js_1['ProcessManager']();let _0x4a2aa7;try{_0x4a2aa7=await _0x1e0371['spawn']({'command':[_0x10ae7c['shell'],..._0x10ae7c['shellArgs'],_0x10ae7c['command']],'cwd':_0x10ae7c['ctx']['cwd'],'env':_0x10ae7c['safeEnv'],'timeoutMs':_0x10ae7c['timeoutMs'],'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'processGroup':!![]});}catch(_0x42dfb9){return backgroundJobs['delete'](_0x415363),(0x0,types_js_1['textResult'])('Failed\x20to\x20start\x20background\x20job:\x20'+(_0x42dfb9 instanceof Error?_0x42dfb9['message']:String(_0x42dfb9)),!![]);}return _0x328c62['pid']=_0x4a2aa7['pid'],_0x328c62['kill']=_0x4a2aa7['kill'],void _0x4a2aa7['exitCode']['then'](async _0xedb6fd=>{const _0x145317=await _0x4a2aa7['output']['catch'](()=>'');_0x328c62['output']=_0x145317,_0x328c62['exitCode']=_0xedb6fd,_0x328c62['settledAt']=Date['now'](),_0x328c62['state']='done';})['catch'](()=>{_0x328c62['output']=_0x328c62['output']??'',_0x328c62['exitCode']=0x1,_0x328c62['settledAt']=Date['now'](),_0x328c62['state']='done';}),(0x0,types_js_1['textResult'])('Background\x20job\x20started.\x0ajob_id:\x20'+_0x415363+'\x0acommand:\x20'+_0x10ae7c['command']+'\x0atimeout:\x20'+_0x10ae7c['timeoutSec']+'s\x0a\x0aPoll\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x415363+'\x22})\x20for\x20status\x20and\x20output;\x20stop\x20it\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x415363+'\x22,\x20\x22action\x22:\x20\x22kill\x22}).');}async function handleJobOperation(_0x1eb3ce,_0x347adf,_0x3ac8d9){sweepBackgroundJobs();if(_0x347adf!==undefined&&_0x347adf!=='status'&&_0x347adf!=='kill')return(0x0,types_js_1['textResult'])('Unknown\x20action\x20\x27'+String(_0x347adf)+'\x27.\x20Use\x20\x22status\x22\x20or\x20\x22kill\x22.',!![]);const _0x58c448=backgroundJobs['get'](_0x1eb3ce);if(!_0x58c448)return(0x0,types_js_1['textResult'])('Unknown\x20job_id\x20\x27'+_0x1eb3ce+'\x27.\x20Jobs\x20stay\x20available\x20for\x20'+Math['round'](COMPLETED_RETENTION_MS/0xea60)+'\x20minutes\x20after\x20they\x20finish.',!![]);if(_0x347adf==='kill'){if(_0x58c448['state']==='done')return(0x0,types_js_1['textResult'])('Job\x20'+_0x1eb3ce+'\x20already\x20finished\x20(exit\x20'+(_0x58c448['exitCode']??'?')+').');return _0x58c448['killRequested']=!![],await _0x58c448['kill']?.()['catch'](()=>{}),(0x0,types_js_1['textResult'])('Job\x20'+_0x1eb3ce+'\x20killed:\x20'+_0x58c448['command']);}if(_0x58c448['state']==='running'){const _0x39dcf2=Math['round']((Date['now']()-_0x58c448['startedAt'])/0x3e8);return(0x0,types_js_1['textResult'])('Job\x20'+_0x1eb3ce+'\x20still\x20running\x20('+_0x39dcf2+'s)\x0acommand:\x20'+_0x58c448['command']+'\x0acwd:\x20'+_0x58c448['cwd']+'\x0aOutput\x20is\x20collected\x20when\x20the\x20job\x20finishes\x20—\x20poll\x20again\x20for\x20the\x20result.');}const _0xb5ea62=(0x0,types_js_1['truncateOutput'])(_0x58c448['output']??'',_0x3ac8d9['config']),_0x67205=[];_0x58c448['settledAt']!==undefined&&_0x58c448['settledAt']-_0x58c448['startedAt']>=_0x58c448['timeoutMs']&&_0x67205['push']('[hit\x20the\x20'+Math['round'](_0x58c448['timeoutMs']/0x3e8)+'s\x20timeout\x20and\x20was\x20killed]');if(_0x58c448['killRequested'])_0x67205['push']('[killed\x20on\x20request]');if(_0x58c448['exitCode']!==0x0)_0x67205['push']('[exit\x20code\x20'+_0x58c448['exitCode']+']');const _0x438bf8=_0x67205['length']>0x0?'\x0a\x0a'+_0x67205['join']('\x0a'):'';return(0x0,types_js_1['textResult'])('Job\x20'+_0x1eb3ce+'\x20finished\x0acommand:\x20'+_0x58c448['command']+'\x0a\x0a'+_0xb5ea62['text']+_0x438bf8,_0x58c448['exitCode']!==0x0);}function osSpawnRequest(_0x521a50){return{'command':[_0x521a50['shell'],..._0x521a50['shellArgs'],_0x521a50['command']],'cwd':_0x521a50['cwd'],'sandboxType':_0x521a50['sandboxType'],'env':_0x521a50['env'],'networkPolicy':{'disableNetwork':_0x521a50['networkDisabled'],'allowedDomains':[],'blockedDomains':[]},'filesystemPolicy':{'writableRoots':[_0x521a50['cwd']],'readOnlySubpaths':[],'denyReadPaths':[],'denyWritePaths':[]},'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'timeoutMs':_0x521a50['timeoutMs'],'signal':_0x521a50['signal']};}function runForegroundOsSandboxed(_0x4ce5b3){const _0x1493a1=_0x4ce5b3['spawnFn']??index_js_1['spawnProcess'];return new Promise(_0x49e478=>{let _0x34a66e=![],_0x1384aa;const _0x3256dc=_0x468928=>{if(_0x34a66e)return;_0x34a66e=!![],clearTimeout(_0x2f7880),_0x4ce5b3['signal']?.['removeEventListener']('abort',_0x27cf51),_0x49e478(_0x468928);},_0x2f7880=setTimeout(()=>{!_0x34a66e&&(_0x34a66e=!![],void _0x1384aa?.['kill']('SIGKILL'),_0x49e478((0x0,types_js_1['textResult'])('Command\x20timed\x20out\x20after\x20'+_0x4ce5b3['timeoutSec']+'s',!![])));},_0x4ce5b3['timeoutMs']),_0x27cf51=()=>{!_0x34a66e&&(_0x34a66e=!![],clearTimeout(_0x2f7880),void _0x1384aa?.['kill']('SIGKILL'),_0x49e478((0x0,types_js_1['textResult'])('Command\x20aborted',!![])));};_0x4ce5b3['signal']?.['addEventListener']('abort',_0x27cf51,{'once':!![]}),_0x1493a1(osSpawnRequest({'shell':_0x4ce5b3['shell'],'shellArgs':_0x4ce5b3['shellArgs'],'command':_0x4ce5b3['command'],'cwd':_0x4ce5b3['ctx']['cwd'],'env':_0x4ce5b3['safeEnv'],'sandboxType':_0x4ce5b3['sandboxType'],'networkDisabled':_0x4ce5b3['networkDisabled'],'timeoutMs':_0x4ce5b3['timeoutMs'],'signal':_0x4ce5b3['signal']}))['then'](async _0x43c174=>{_0x1384aa=_0x43c174;if(_0x34a66e){void _0x43c174['kill']('SIGKILL');return;}const _0x323ac6=await _0x43c174['readAll']()['catch'](()=>''),_0x2c3331=await _0x43c174['waitForExit'](),_0x30808c=(0x0,types_js_1['truncateOutput'])(_0x323ac6,_0x4ce5b3['ctx']['config']),_0x204b97=_0x2c3331!==0x0,_0x223c01=_0x204b97?'\x0a\x0a[exit\x20code\x20'+_0x2c3331+']':'';_0x3256dc((0x0,types_js_1['textResult'])(''+_0x30808c['text']+_0x223c01+'\x0a\x0a[sandbox:\x20os\x20('+_0x43c174['sandboxType']+')]',_0x204b97));})['catch'](_0x4eaef2=>{_0x3256dc((0x0,types_js_1['textResult'])('Command\x20failed:\x20'+(_0x4eaef2 instanceof Error?_0x4eaef2['message']:String(_0x4eaef2)),!![]));});});}function buildBashEnv(_0x13cbc6,_0x411eeb,_0x390ea2){const _0xe75881={};for(const [_0x9d90fe,_0x458a23]of Object['entries'](_0x13cbc6)){if(typeof _0x458a23==='string')_0xe75881[_0x9d90fe]=_0x458a23;}return(0x0,env_filter_js_1['getSafeEnv'])((0x0,index_js_1['filterEnv'])(_0xe75881,{}),_0x411eeb,_0x390ea2);}function createBashTool(_0x31834a){return{'definition':definition,async 'execute'(_0x6c3af0,_0x18d4f9,_0xea1946,_0x40392d,_0x3dc6b3){try{if(_0xea1946?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0x1a0dc4=_0x3dc6b3;if(typeof _0x18d4f9['job_id']==='string'&&_0x18d4f9['job_id']['length']>0x0)return await handleJobOperation(_0x18d4f9['job_id'],_0x18d4f9['action'],_0x1a0dc4);const _0x30a1e4=String(_0x18d4f9['command']??'');if(!_0x30a1e4)return(0x0,types_js_1['textResult'])('Missing\x20\x27command\x27.',!![]);const _0x162bbb=_0x18d4f9['background']===!![],_0x3ae254=_0x162bbb?typeof _0x18d4f9['timeout']==='number'?Math['max'](0x1,Math['min'](0xe10,_0x18d4f9['timeout'])):0x258:typeof _0x18d4f9['timeout']==='number'?Math['max'](0x1,Math['min'](0x12c,_0x18d4f9['timeout'])):0x1e,_0x53ada1=_0x3ae254*0x3e8,_0x383290=_0x1a0dc4['config'],_0x3ef16c=_0x383290['shellCommand']['match'](/(?:[^\s"]+|"[^"]*")+/g)??[_0x383290['shellCommand']],_0x387266=_0x3ef16c[0x0]['replace'](/^"|"$/g,''),_0x2e3c07=_0x3ef16c['slice'](0x1),_0x2180d8=(0x0,policy_js_1['evaluatePolicy'])(_0x30a1e4);if(_0x2180d8==='deny')return(0x0,types_js_1['textResult'])('Permission\x20denied\x20by\x20exec\x20policy:\x20'+_0x30a1e4,!![]);if(_0x2180d8==='ask'){const _0xe86dad=await _0x1a0dc4['requestPermission']?.('bash',_0x30a1e4,'Exec\x20policy\x20requires\x20approval');if(_0xe86dad===![])return(0x0,types_js_1['textResult'])('Permission\x20denied\x20by\x20exec\x20policy:\x20'+_0x30a1e4,!![]);}const _0x1a20e9=(0x0,index_js_2['checkAutoApproval'])(_0x30a1e4),_0x3cae74=_0x1a20e9==='allow';if(!(0x0,permissions_js_1['isCommandAllowed'])('bash',_0x30a1e4,_0x1a0dc4['permissions'])){if(_0x3cae74){}else{const _0x2c24d1=await _0x1a0dc4['requestPermission']?.('bash',_0x30a1e4,'Risky\x20bash\x20command\x20blocked\x20by\x20permissions');if(_0x2c24d1===![])return(0x0,types_js_1['textResult'])('Permission\x20denied\x20for\x20command:\x20'+_0x30a1e4,!![]);if(_0x2c24d1===undefined&&(0x0,permissions_js_1['isCommandDangerous'])('bash',_0x30a1e4,_0x1a0dc4['permissions']))return(0x0,types_js_1['textResult'])('Permission\x20denied\x20(headless):\x20command\x20matches\x20a\x20deny\x20rule\x20and\x20no\x20approver\x20is\x20available:\x20'+_0x30a1e4,!![]);}}(0x0,env_filter_js_1['validateEnv'])(process.env);const _0x4192b3=_0x1a0dc4['permissions'],_0x50de1d=(0x0,index_js_1['detectSandboxType'])(_0x4192b3),_0x538d6a=_0x4192b3['__networkPolicy']&&typeof _0x4192b3['__networkPolicy']==='object'?_0x4192b3['__networkPolicy']['disableNetwork']??![]:![],_0x1b1f68=buildBashEnv(process.env,_0x50de1d,_0x538d6a);if(_0x162bbb)return await startBackgroundJob({'command':_0x30a1e4,'shell':_0x387266,'shellArgs':_0x2e3c07,'ctx':_0x1a0dc4,'safeEnv':_0x1b1f68,'timeoutMs':_0x53ada1,'timeoutSec':_0x3ae254,'sandboxType':_0x50de1d,'networkDisabled':_0x538d6a,'spawnFn':_0x31834a?.['spawnFn']});if((0x0,index_js_1['shouldUseOsSandbox'])(_0x50de1d))return runForegroundOsSandboxed({'shell':_0x387266,'shellArgs':_0x2e3c07,'command':_0x30a1e4,'ctx':_0x1a0dc4,'safeEnv':_0x1b1f68,'sandboxType':_0x50de1d,'networkDisabled':_0x538d6a,'timeoutMs':_0x53ada1,'timeoutSec':_0x3ae254,'signal':_0xea1946,'spawnFn':_0x31834a?.['spawnFn']});return new Promise(_0x55fca3=>{let _0x252fff=![];const _0x15d885=new process_js_1['ProcessManager'](),_0x4f6b95=setTimeout(()=>{!_0x252fff&&(_0x252fff=!![],_0x15d885['killAll']()['catch'](()=>{}),_0x55fca3((0x0,types_js_1['textResult'])('Command\x20timed\x20out\x20after\x20'+_0x3ae254+'s',!![])));},_0x53ada1),_0x4fc4d9=()=>{!_0x252fff&&(_0x252fff=!![],clearTimeout(_0x4f6b95),_0x15d885['killAll']()['catch'](()=>{}),_0x55fca3((0x0,types_js_1['textResult'])('Command\x20aborted',!![])));};_0xea1946?.['addEventListener']('abort',_0x4fc4d9,{'once':!![]}),_0x15d885['spawn']({'command':[_0x387266,..._0x2e3c07,_0x30a1e4],'cwd':_0x1a0dc4['cwd'],'env':_0x1b1f68,'timeoutMs':_0x53ada1,'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'processGroup':!![],'signal':_0xea1946})['then'](async({exitCode:_0x447441,output:_0x467b49})=>{const _0x1feb74=await _0x467b49['catch'](()=>'');clearTimeout(_0x4f6b95),_0xea1946?.['removeEventListener']('abort',_0x4fc4d9);if(!_0x252fff){_0x252fff=!![];const _0x4e03e6=(0x0,types_js_1['truncateOutput'])(_0x1feb74,_0x383290),_0x53565e=await _0x447441['catch'](()=>0x1),_0x52499d=_0x53565e!==0x0,_0x2244c1=_0x52499d?'\x0a\x0a[exit\x20code\x20'+_0x53565e+']':'';_0x55fca3((0x0,types_js_1['textResult'])(_0x4e03e6['text']+_0x2244c1,_0x52499d));}})['catch'](_0x294796=>{!_0x252fff&&(_0x252fff=!![],clearTimeout(_0x4f6b95),_0xea1946?.['removeEventListener']('abort',_0x4fc4d9),_0x55fca3((0x0,types_js_1['textResult'])('Command\x20failed:\x20'+_0x294796['message'],!![])));});});}catch(_0x28c922){return(0x0,types_js_1['textResult'])('Bash\x20error:\x20'+(_0x28c922 instanceof Error?_0x28c922['message']:String(_0x28c922)),!![]);}}};}
1
+ 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['resetBackgroundJobsForTests']=resetBackgroundJobsForTests,exports['osSpawnRequest']=osSpawnRequest,exports['runForegroundOsSandboxed']=runForegroundOsSandboxed,exports['buildBashEnv']=buildBashEnv,exports['createBashTool']=createBashTool;const permissions_js_1=require('../../../../../packages/protocol/src/permissions.js'),types_js_1=require('../types.js'),index_js_1=require('../../../../../packages/sandbox/src/index.js'),policy_js_1=require('../../../../../packages/execpolicy/src/policy.js'),process_js_1=require('../../../../../packages/core/src/process.js'),env_filter_js_1=require('../../../../../packages/core/src/env_filter.js'),index_js_2=require('../../../../../packages/approval/src/index.js'),crypto_1=require('crypto'),definition={'timeoutMs':0x7530,'name':'bash','description':'Run\x20a\x20shell\x20command\x20in\x20the\x20project\x20working\x20directory.\x20Returns\x20combined\x20stdout/stderr\x20with\x20OS-level\x20sandbox\x20isolation,\x20output\x20capping,\x20and\x20process\x20tree\x20management.\x20Pass\x20background:\x20true\x20for\x20long-running\x20work:\x20the\x20command\x20starts\x20detached\x20and\x20you\x20get\x20a\x20job_id\x20back\x20immediately\x20—\x20keep\x20working,\x20then\x20poll\x20bash\x20with\x20job_id\x20to\x20read\x20the\x20result\x20(or\x20action:\x20\x27kill\x27\x20to\x20stop\x20it).','executionMode':'sequential','parameters':{'type':'object','required':[],'properties':{'command':{'type':'string','description':'The\x20shell\x20command\x20to\x20execute.\x20Required\x20unless\x20polling\x20a\x20job\x20via\x20\x27job_id\x27.'},'timeout':{'type':'number','description':'Optional\x20timeout\x20in\x20seconds\x20(foreground\x20max\x20300;\x20background\x20max\x203600,\x20default\x20600).'},'background':{'type':'boolean','description':'Start\x20the\x20command\x20as\x20a\x20background\x20job\x20and\x20return\x20its\x20job_id\x20immediately\x20instead\x20of\x20waiting\x20for\x20it\x20to\x20finish.'},'job_id':{'type':'string','description':'Background\x20job\x20to\x20inspect\x20(default)\x20or\x20kill\x20instead\x20of\x20running\x20a\x20new\x20command.'},'action':{'type':'string','enum':['status','kill'],'description':'What\x20to\x20do\x20with\x20\x27job_id\x27:\x20\x27status\x27\x20(default)\x20returns\x20progress/output,\x20\x27kill\x27\x20stops\x20the\x20job.'}}}},MAX_BACKGROUND_JOBS=0x8,COMPLETED_RETENTION_MS=0xa*0x3c*0x3e8,backgroundJobs=new Map();function sweepBackgroundJobs(){const _0x4e12a7=Date['now']();for(const [_0x268e90,_0x1907e3]of backgroundJobs){_0x1907e3['state']==='done'&&_0x1907e3['settledAt']!==undefined&&_0x4e12a7-_0x1907e3['settledAt']>COMPLETED_RETENTION_MS&&backgroundJobs['delete'](_0x268e90);}}function resetBackgroundJobsForTests(){for(const _0x354fad of backgroundJobs['values']()){if(_0x354fad['state']==='running')void _0x354fad['kill']?.()['catch'](()=>{});}backgroundJobs['clear']();}async function startBackgroundJob(_0x142d25){sweepBackgroundJobs();const _0x132270=[...backgroundJobs['values']()]['filter'](_0x23c0a4=>_0x23c0a4['state']==='running')['length'];if(_0x132270>=MAX_BACKGROUND_JOBS)return(0x0,types_js_1['textResult'])('Too\x20many\x20background\x20jobs\x20running\x20('+_0x132270+'/'+MAX_BACKGROUND_JOBS+').\x20Poll\x20existing\x20jobs\x20with\x20job_id\x20or\x20kill\x20them\x20first.',!![]);const _0x17836e=(0x0,crypto_1['randomUUID'])(),_0x186c1c={'id':_0x17836e,'command':_0x142d25['command'],'cwd':_0x142d25['ctx']['cwd'],'startedAt':Date['now'](),'timeoutMs':_0x142d25['timeoutMs'],'state':'running'};backgroundJobs['set'](_0x17836e,_0x186c1c);if((0x0,index_js_1['shouldUseOsSandbox'])(_0x142d25['sandboxType'])){let _0x48864c;try{_0x48864c=await(_0x142d25['spawnFn']??index_js_1['spawnProcess'])(osSpawnRequest({'shell':_0x142d25['shell'],'shellArgs':_0x142d25['shellArgs'],'command':_0x142d25['command'],'cwd':_0x142d25['ctx']['cwd'],'env':_0x142d25['safeEnv'],'sandboxType':_0x142d25['sandboxType'],'networkDisabled':_0x142d25['networkDisabled'],'timeoutMs':_0x142d25['timeoutMs']}));}catch(_0x27ef6e){return backgroundJobs['delete'](_0x17836e),(0x0,types_js_1['textResult'])('Failed\x20to\x20start\x20background\x20job:\x20'+(_0x27ef6e instanceof Error?_0x27ef6e['message']:String(_0x27ef6e)),!![]);}return _0x186c1c['pid']=_0x48864c['pid'],_0x186c1c['kill']=_0x48864c['kill'],void _0x48864c['waitForExit']()['then'](async _0x284c20=>{_0x186c1c['output']=await _0x48864c['readAll']()['catch'](()=>''),_0x186c1c['exitCode']=_0x284c20,_0x186c1c['settledAt']=Date['now'](),_0x186c1c['state']='done';})['catch'](()=>{_0x186c1c['output']=_0x186c1c['output']??'',_0x186c1c['exitCode']=0x1,_0x186c1c['settledAt']=Date['now'](),_0x186c1c['state']='done';}),(0x0,types_js_1['textResult'])('Background\x20job\x20started.\x0ajob_id:\x20'+_0x17836e+'\x0acommand:\x20'+_0x142d25['command']+'\x0atimeout:\x20'+_0x142d25['timeoutSec']+'s\x0asandbox:\x20os\x20('+_0x48864c['sandboxType']+')\x0a\x0aPoll\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x17836e+'\x22})\x20for\x20status\x20and\x20output;\x20stop\x20it\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x17836e+'\x22,\x20\x22action\x22:\x20\x22kill\x22}).');}const _0x523bf4=new process_js_1['ProcessManager']();let _0xcf33bb;try{_0xcf33bb=await _0x523bf4['spawn']({'command':[_0x142d25['shell'],..._0x142d25['shellArgs'],_0x142d25['command']],'cwd':_0x142d25['ctx']['cwd'],'env':_0x142d25['safeEnv'],'timeoutMs':_0x142d25['timeoutMs'],'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'processGroup':!![]});}catch(_0xa805c5){return backgroundJobs['delete'](_0x17836e),(0x0,types_js_1['textResult'])('Failed\x20to\x20start\x20background\x20job:\x20'+(_0xa805c5 instanceof Error?_0xa805c5['message']:String(_0xa805c5)),!![]);}return _0x186c1c['pid']=_0xcf33bb['pid'],_0x186c1c['kill']=_0xcf33bb['kill'],void _0xcf33bb['exitCode']['then'](async _0x48f93d=>{const _0x47a53a=await _0xcf33bb['output']['catch'](()=>'');_0x186c1c['output']=_0x47a53a,_0x186c1c['exitCode']=_0x48f93d,_0x186c1c['settledAt']=Date['now'](),_0x186c1c['state']='done';})['catch'](()=>{_0x186c1c['output']=_0x186c1c['output']??'',_0x186c1c['exitCode']=0x1,_0x186c1c['settledAt']=Date['now'](),_0x186c1c['state']='done';}),(0x0,types_js_1['textResult'])('Background\x20job\x20started.\x0ajob_id:\x20'+_0x17836e+'\x0acommand:\x20'+_0x142d25['command']+'\x0atimeout:\x20'+_0x142d25['timeoutSec']+'s\x0a\x0aPoll\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x17836e+'\x22})\x20for\x20status\x20and\x20output;\x20stop\x20it\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x17836e+'\x22,\x20\x22action\x22:\x20\x22kill\x22}).');}async function handleJobOperation(_0x58d623,_0x404ea2,_0x5cdaa8){sweepBackgroundJobs();if(_0x404ea2!==undefined&&_0x404ea2!=='status'&&_0x404ea2!=='kill')return(0x0,types_js_1['textResult'])('Unknown\x20action\x20\x27'+String(_0x404ea2)+'\x27.\x20Use\x20\x22status\x22\x20or\x20\x22kill\x22.',!![]);const _0x3d7913=backgroundJobs['get'](_0x58d623);if(!_0x3d7913)return(0x0,types_js_1['textResult'])('Unknown\x20job_id\x20\x27'+_0x58d623+'\x27.\x20Jobs\x20stay\x20available\x20for\x20'+Math['round'](COMPLETED_RETENTION_MS/0xea60)+'\x20minutes\x20after\x20they\x20finish.',!![]);if(_0x404ea2==='kill'){if(_0x3d7913['state']==='done')return(0x0,types_js_1['textResult'])('Job\x20'+_0x58d623+'\x20already\x20finished\x20(exit\x20'+(_0x3d7913['exitCode']??'?')+').');return _0x3d7913['killRequested']=!![],await _0x3d7913['kill']?.()['catch'](()=>{}),(0x0,types_js_1['textResult'])('Job\x20'+_0x58d623+'\x20killed:\x20'+_0x3d7913['command']);}if(_0x3d7913['state']==='running'){const _0x2e0a69=Math['round']((Date['now']()-_0x3d7913['startedAt'])/0x3e8);return(0x0,types_js_1['textResult'])('Job\x20'+_0x58d623+'\x20still\x20running\x20('+_0x2e0a69+'s)\x0acommand:\x20'+_0x3d7913['command']+'\x0acwd:\x20'+_0x3d7913['cwd']+'\x0aOutput\x20is\x20collected\x20when\x20the\x20job\x20finishes\x20—\x20poll\x20again\x20for\x20the\x20result.');}const _0x40a2fb=(0x0,types_js_1['truncateOutput'])(_0x3d7913['output']??'',_0x5cdaa8['config']),_0x277797=[];_0x3d7913['settledAt']!==undefined&&_0x3d7913['settledAt']-_0x3d7913['startedAt']>=_0x3d7913['timeoutMs']&&_0x277797['push']('[hit\x20the\x20'+Math['round'](_0x3d7913['timeoutMs']/0x3e8)+'s\x20timeout\x20and\x20was\x20killed]');if(_0x3d7913['killRequested'])_0x277797['push']('[killed\x20on\x20request]');if(_0x3d7913['exitCode']!==0x0)_0x277797['push']('[exit\x20code\x20'+_0x3d7913['exitCode']+']');const _0x3a0f2e=_0x277797['length']>0x0?'\x0a\x0a'+_0x277797['join']('\x0a'):'';return(0x0,types_js_1['textResult'])('Job\x20'+_0x58d623+'\x20finished\x0acommand:\x20'+_0x3d7913['command']+'\x0a\x0a'+_0x40a2fb['text']+_0x3a0f2e,_0x3d7913['exitCode']!==0x0);}function osSpawnRequest(_0x49cf76){return{'command':[_0x49cf76['shell'],..._0x49cf76['shellArgs'],_0x49cf76['command']],'cwd':_0x49cf76['cwd'],'sandboxType':_0x49cf76['sandboxType'],'env':_0x49cf76['env'],'networkPolicy':{'disableNetwork':_0x49cf76['networkDisabled'],'allowedDomains':[],'blockedDomains':[]},'filesystemPolicy':{'writableRoots':[_0x49cf76['cwd']],'readOnlySubpaths':[],'denyReadPaths':[],'denyWritePaths':[]},'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'timeoutMs':_0x49cf76['timeoutMs'],'signal':_0x49cf76['signal']};}function runForegroundOsSandboxed(_0x531385){const _0x2f99e8=_0x531385['spawnFn']??index_js_1['spawnProcess'];return new Promise(_0x2832ed=>{let _0x30d022=![],_0x2d7097;const _0x516ad4=_0x5e7269=>{if(_0x30d022)return;_0x30d022=!![],clearTimeout(_0x3eb285),_0x531385['signal']?.['removeEventListener']('abort',_0x56ddec),_0x2832ed(_0x5e7269);},_0x3eb285=setTimeout(()=>{!_0x30d022&&(_0x30d022=!![],void _0x2d7097?.['kill']('SIGKILL'),_0x2832ed((0x0,types_js_1['textResult'])('Command\x20timed\x20out\x20after\x20'+_0x531385['timeoutSec']+'s',!![])));},_0x531385['timeoutMs']),_0x56ddec=()=>{!_0x30d022&&(_0x30d022=!![],clearTimeout(_0x3eb285),void _0x2d7097?.['kill']('SIGKILL'),_0x2832ed((0x0,types_js_1['textResult'])('Command\x20aborted',!![])));};_0x531385['signal']?.['addEventListener']('abort',_0x56ddec,{'once':!![]}),_0x2f99e8(osSpawnRequest({'shell':_0x531385['shell'],'shellArgs':_0x531385['shellArgs'],'command':_0x531385['command'],'cwd':_0x531385['ctx']['cwd'],'env':_0x531385['safeEnv'],'sandboxType':_0x531385['sandboxType'],'networkDisabled':_0x531385['networkDisabled'],'timeoutMs':_0x531385['timeoutMs'],'signal':_0x531385['signal']}))['then'](async _0x499167=>{_0x2d7097=_0x499167;if(_0x30d022){void _0x499167['kill']('SIGKILL');return;}const _0x355aea=await _0x499167['readAll']()['catch'](()=>''),_0x1b09f9=await _0x499167['waitForExit'](),_0x3a6ddb=(0x0,types_js_1['truncateOutput'])(_0x355aea,_0x531385['ctx']['config']),_0x59952f=_0x1b09f9!==0x0,_0x470b9d=_0x59952f?'\x0a\x0a[exit\x20code\x20'+_0x1b09f9+']':'';_0x516ad4((0x0,types_js_1['textResult'])(''+_0x3a6ddb['text']+_0x470b9d+'\x0a\x0a[sandbox:\x20os\x20('+_0x499167['sandboxType']+')]',_0x59952f));})['catch'](_0x1cfc69=>{_0x516ad4((0x0,types_js_1['textResult'])('Command\x20failed:\x20'+(_0x1cfc69 instanceof Error?_0x1cfc69['message']:String(_0x1cfc69)),!![]));});});}function buildBashEnv(_0xd8d4f0,_0x366265,_0x5d1713){const _0x3d82ed={};for(const [_0x316fcc,_0x3e6051]of Object['entries'](_0xd8d4f0)){if(typeof _0x3e6051==='string')_0x3d82ed[_0x316fcc]=_0x3e6051;}return(0x0,env_filter_js_1['getSafeEnv'])((0x0,index_js_1['filterEnv'])(_0x3d82ed,{}),_0x366265,_0x5d1713);}function createBashTool(_0x41db1e){return{'definition':definition,async 'execute'(_0x1970a5,_0x123c3e,_0x2876b5,_0x277853,_0x26523e){try{if(_0x2876b5?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0x88347a=_0x26523e;if(typeof _0x123c3e['job_id']==='string'&&_0x123c3e['job_id']['length']>0x0)return await handleJobOperation(_0x123c3e['job_id'],_0x123c3e['action'],_0x88347a);const _0x3f3114=String(_0x123c3e['command']??'');if(!_0x3f3114)return(0x0,types_js_1['textResult'])('Missing\x20\x27command\x27.',!![]);const _0x1664aa=_0x123c3e['background']===!![],_0x2cab27=_0x1664aa?typeof _0x123c3e['timeout']==='number'?Math['max'](0x1,Math['min'](0xe10,_0x123c3e['timeout'])):0x258:typeof _0x123c3e['timeout']==='number'?Math['max'](0x1,Math['min'](0x12c,_0x123c3e['timeout'])):0x1e,_0x207371=_0x2cab27*0x3e8,_0x1b3873=_0x88347a['config'],_0x25e0f0=_0x1b3873['shellCommand']['match'](/(?:[^\s"]+|"[^"]*")+/g)??[_0x1b3873['shellCommand']],_0x5585d7=_0x25e0f0[0x0]['replace'](/^"|"$/g,''),_0x3c7b00=_0x25e0f0['slice'](0x1),_0x7bd861=(0x0,policy_js_1['evaluatePolicy'])(_0x3f3114);if(_0x7bd861==='deny')return(0x0,types_js_1['textResult'])('Permission\x20denied\x20by\x20exec\x20policy:\x20'+_0x3f3114,!![]);if(_0x7bd861==='ask'){const _0x214383=await _0x88347a['requestPermission']?.('bash',_0x3f3114,'Exec\x20policy\x20requires\x20approval');if(_0x214383===![])return(0x0,types_js_1['textResult'])('Permission\x20denied\x20by\x20exec\x20policy:\x20'+_0x3f3114,!![]);}const _0xf7f775=(0x0,index_js_2['checkAutoApproval'])(_0x3f3114),_0x44efd=_0xf7f775==='allow';if(!(0x0,permissions_js_1['isCommandAllowed'])('bash',_0x3f3114,_0x88347a['permissions'])){if(_0x44efd){}else{const _0x2bd93a=await _0x88347a['requestPermission']?.('bash',_0x3f3114,'Risky\x20bash\x20command\x20blocked\x20by\x20permissions');if(_0x2bd93a===![])return(0x0,types_js_1['textResult'])('Permission\x20denied\x20for\x20command:\x20'+_0x3f3114,!![]);if(_0x2bd93a===undefined&&(0x0,permissions_js_1['isCommandDangerous'])('bash',_0x3f3114,_0x88347a['permissions']))return(0x0,types_js_1['textResult'])('Permission\x20denied\x20(headless):\x20command\x20matches\x20a\x20deny\x20rule\x20and\x20no\x20approver\x20is\x20available:\x20'+_0x3f3114,!![]);}}(0x0,env_filter_js_1['validateEnv'])(process.env);const _0x4a861f=_0x88347a['permissions'],_0x5edbae=(0x0,index_js_1['detectSandboxType'])(_0x4a861f),_0x4acd31=_0x4a861f['__networkPolicy']&&typeof _0x4a861f['__networkPolicy']==='object'?_0x4a861f['__networkPolicy']['disableNetwork']??![]:![],_0x4d2b2f=buildBashEnv(process.env,_0x5edbae,_0x4acd31);if(_0x1664aa)return await startBackgroundJob({'command':_0x3f3114,'shell':_0x5585d7,'shellArgs':_0x3c7b00,'ctx':_0x88347a,'safeEnv':_0x4d2b2f,'timeoutMs':_0x207371,'timeoutSec':_0x2cab27,'sandboxType':_0x5edbae,'networkDisabled':_0x4acd31,'spawnFn':_0x41db1e?.['spawnFn']});if((0x0,index_js_1['shouldUseOsSandbox'])(_0x5edbae))return runForegroundOsSandboxed({'shell':_0x5585d7,'shellArgs':_0x3c7b00,'command':_0x3f3114,'ctx':_0x88347a,'safeEnv':_0x4d2b2f,'sandboxType':_0x5edbae,'networkDisabled':_0x4acd31,'timeoutMs':_0x207371,'timeoutSec':_0x2cab27,'signal':_0x2876b5,'spawnFn':_0x41db1e?.['spawnFn']});return new Promise(_0x3e2a5e=>{let _0x5c21c3=![];const _0x507c1d=new process_js_1['ProcessManager'](),_0x29c687=setTimeout(()=>{!_0x5c21c3&&(_0x5c21c3=!![],_0x507c1d['killAll']()['catch'](()=>{}),_0x3e2a5e((0x0,types_js_1['textResult'])('Command\x20timed\x20out\x20after\x20'+_0x2cab27+'s',!![])));},_0x207371),_0x105ab0=()=>{!_0x5c21c3&&(_0x5c21c3=!![],clearTimeout(_0x29c687),_0x507c1d['killAll']()['catch'](()=>{}),_0x3e2a5e((0x0,types_js_1['textResult'])('Command\x20aborted',!![])));};_0x2876b5?.['addEventListener']('abort',_0x105ab0,{'once':!![]}),_0x507c1d['spawn']({'command':[_0x5585d7,..._0x3c7b00,_0x3f3114],'cwd':_0x88347a['cwd'],'env':_0x4d2b2f,'timeoutMs':_0x207371,'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'processGroup':!![],'signal':_0x2876b5})['then'](async({exitCode:_0x62baf8,output:_0xb20824})=>{const _0x3b8acb=await _0xb20824['catch'](()=>'');clearTimeout(_0x29c687),_0x2876b5?.['removeEventListener']('abort',_0x105ab0);if(!_0x5c21c3){_0x5c21c3=!![];const _0x3091c3=(0x0,types_js_1['truncateOutput'])(_0x3b8acb,_0x1b3873),_0x10553b=await _0x62baf8['catch'](()=>0x1),_0x4310e9=_0x10553b!==0x0,_0x10f860=_0x4310e9?'\x0a\x0a[exit\x20code\x20'+_0x10553b+']':'';_0x3e2a5e((0x0,types_js_1['textResult'])(_0x3091c3['text']+_0x10f860,_0x4310e9));}})['catch'](_0x32ac4c=>{!_0x5c21c3&&(_0x5c21c3=!![],clearTimeout(_0x29c687),_0x2876b5?.['removeEventListener']('abort',_0x105ab0),_0x3e2a5e((0x0,types_js_1['textResult'])('Command\x20failed:\x20'+_0x32ac4c['message'],!![])));});});}catch(_0x4fe6d2){return(0x0,types_js_1['textResult'])('Bash\x20error:\x20'+(_0x4fe6d2 instanceof Error?_0x4fe6d2['message']:String(_0x4fe6d2)),!![]);}}};}
@@ -1 +1 @@
1
- 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['TERMINAL_INPUT_CAP']=exports['TERMINAL_OUTPUT_CAP']=exports['TERMINAL_MAX_SESSIONS']=void 0x0,exports['resetTerminalsForTests']=resetTerminalsForTests,exports['createTerminalSession']=createTerminalSession,exports['sendTerminalInput']=sendTerminalInput,exports['readTerminalOutput']=readTerminalOutput,exports['killTerminal']=killTerminal,exports['listTerminals']=listTerminals,exports['createTerminalTool']=createTerminalTool;const node_child_process_1=require('node:child_process'),node_crypto_1=require('node:crypto'),types_js_1=require('../types.js'),env_filter_js_1=require('../../../../../packages/core/src/env_filter.js');exports['TERMINAL_MAX_SESSIONS']=0x4,exports['TERMINAL_OUTPUT_CAP']=0x40*0x400,exports['TERMINAL_INPUT_CAP']=0x8*0x400;const sessions=new Map();function resetTerminalsForTests(){for(const _0x3a212a of sessions['values']()){try{killTree(_0x3a212a);}catch{}}sessions['clear']();}function killTree(_0x42903d){const _0x27b6e1=_0x42903d['child']['pid'];if(_0x27b6e1!==undefined&&process['platform']!=='win32')try{process['kill'](-_0x27b6e1,'SIGKILL');return;}catch{}try{_0x42903d['child']['kill']('SIGKILL');}catch{}}function appendOutput(_0xc520bd,_0x25a0e8){_0xc520bd['buffer']+=_0x25a0e8,_0xc520bd['bufferBytes']+=Buffer['byteLength'](_0x25a0e8,'utf8'),_0xc520bd['totalBytes']+=Buffer['byteLength'](_0x25a0e8,'utf8');if(_0xc520bd['bufferBytes']>exports['TERMINAL_OUTPUT_CAP']){const _0xe142bd=_0xc520bd['bufferBytes']-exports['TERMINAL_OUTPUT_CAP'];let _0xce5405=0x0,_0x4244fc=0x0;while(_0xce5405<_0xc520bd['buffer']['length']&&_0x4244fc<_0xe142bd){_0x4244fc+=Buffer['byteLength'](_0xc520bd['buffer'][_0xce5405],'utf8'),_0xce5405++;}_0xc520bd['buffer']=_0xc520bd['buffer']['slice'](_0xce5405),_0xc520bd['bufferBytes']-=_0x4244fc;}}function publicView(_0x12f509){return{'id':_0x12f509['id'],'shell':_0x12f509['shell'],'cwd':_0x12f509['cwd'],'startedAt':_0x12f509['startedAt'],'live':_0x12f509['live'],'exitCode':_0x12f509['exitCode'],'totalBytes':_0x12f509['totalBytes']};}function createTerminalSession(_0x248250,_0x57675d,_0x118113){const _0x1d8479=[...sessions['values']()]['filter'](_0x422e5b=>_0x422e5b['live'])['length'];if(_0x1d8479>=exports['TERMINAL_MAX_SESSIONS'])throw new Error('Too\x20many\x20live\x20terminals\x20('+_0x1d8479+'/'+exports['TERMINAL_MAX_SESSIONS']+').\x20Kill\x20one\x20first.');const _0x521a77=(0x0,node_child_process_1['spawn'])(_0x248250,[],{'cwd':_0x57675d,'env':_0x118113,'stdio':['pipe','pipe','pipe'],'windowsHide':!![],'detached':process['platform']!=='win32'}),_0x5ac8f1={'id':(0x0,node_crypto_1['randomUUID'])(),'shell':_0x248250,'cwd':_0x57675d,'startedAt':Date['now'](),'live':!![],'exitCode':null,'totalBytes':0x0,'child':_0x521a77,'buffer':'','bufferBytes':0x0};return _0x521a77['stdout']?.['on']('data',_0x509900=>appendOutput(_0x5ac8f1,_0x509900['toString']('utf8'))),_0x521a77['stderr']?.['on']('data',_0x3441d2=>appendOutput(_0x5ac8f1,_0x3441d2['toString']('utf8'))),_0x521a77['on']('close',_0x47126b=>{_0x5ac8f1['live']=![],_0x5ac8f1['exitCode']=_0x47126b??0x1;}),_0x521a77['on']('error',()=>{_0x5ac8f1['live']=![],_0x5ac8f1['exitCode']=_0x5ac8f1['exitCode']??0x1;}),sessions['set'](_0x5ac8f1['id'],_0x5ac8f1),publicView(_0x5ac8f1);}function sendTerminalInput(_0x4ed375,_0x1e3832){const _0x4f4f0a=sessions['get'](_0x4ed375);if(!_0x4f4f0a)throw new Error('Unknown\x20terminal\x20\x27'+_0x4ed375+'\x27.');if(!_0x4f4f0a['live'])throw new Error('Terminal\x20\x27'+_0x4ed375+'\x27\x20exited\x20(code\x20'+(_0x4f4f0a['exitCode']??'?')+').');if(Buffer['byteLength'](_0x1e3832,'utf8')>exports['TERMINAL_INPUT_CAP'])throw new Error('Input\x20exceeds\x20'+exports['TERMINAL_INPUT_CAP']+'\x20bytes.');const _0x20ac5=_0x4f4f0a['child']['stdin'];if(!_0x20ac5||_0x20ac5['destroyed'])throw new Error('Terminal\x20\x27'+_0x4ed375+'\x27\x20stdin\x20is\x20closed.');_0x20ac5['write'](_0x1e3832['endsWith']('\x0a')?_0x1e3832:_0x1e3832+'\x0a');}function readTerminalOutput(_0x8a6962,_0x216974=0x0){const _0x516157=sessions['get'](_0x8a6962);if(!_0x516157)throw new Error('Unknown\x20terminal\x20\x27'+_0x8a6962+'\x27.');const _0x26d5e3=_0x516157['totalBytes']-_0x516157['bufferBytes'],_0x5eebc9=Math['max'](0x0,_0x216974-_0x26d5e3);return{'output':_0x516157['buffer']['slice'](_0x5eebc9),'offset':_0x516157['totalBytes'],'live':_0x516157['live']};}function killTerminal(_0x1dcd44){const _0x306360=sessions['get'](_0x1dcd44);if(!_0x306360)throw new Error('Unknown\x20terminal\x20\x27'+_0x1dcd44+'\x27.');if(!_0x306360['live'])return{'exited':!![],'exitCode':_0x306360['exitCode']};return killTree(_0x306360),{'exited':![],'exitCode':null};}function listTerminals(){return[...sessions['values']()]['map'](publicView);}const definition={'timeoutMs':0x7530,'name':'terminal','description':'Interactive\x20shell\x20sessions:\x20create\x20a\x20persistent\x20shell,\x20send\x20it\x20input\x20lines,\x20and\x20read\x20new\x20output\x20from\x20a\x20cursor.\x20For\x20REPLs\x20and\x20multi-step\x20shell\x20flows;\x20one-shot\x20commands\x20belong\x20to\x20bash.\x20Actions:\x20create,\x20send,\x20read,\x20list,\x20kill.','parameters':{'type':'object','required':['action'],'properties':{'action':{'type':'string','description':'One\x20of:\x20create,\x20send,\x20read,\x20list,\x20kill.'},'shell':{'type':'string','description':'Shell\x20for\x20create\x20(default:\x20the\x20configured\x20shellCommand).'},'input':{'type':'string','description':'Input\x20line\x20for\x20send.'},'id':{'type':'string','description':'Session\x20id\x20for\x20send/read/kill.'},'offset':{'type':'number','description':'Byte\x20cursor\x20for\x20read\x20(replay\x20from\x20here).\x20Default\x200.'}}}};function createTerminalTool(){return{'definition':definition,async 'execute'(_0x195000,_0x492e29,_0x39cd77,_0x38197a,_0xde652d){const _0x18863e=_0xde652d,_0x4bd871=String(_0x492e29['action']??'')['trim']()['toLowerCase']();switch(_0x4bd871){case'create':{const _0x440132=typeof _0x492e29['shell']==='string'&&_0x492e29['shell']['trim']()?[_0x492e29['shell']['trim']()]:_0x18863e['config']['shellCommand']['match'](/(?:[^\s"]+|"[^"]*")+/g)??[_0x18863e['config']['shellCommand']],_0x3fe523=_0x440132[0x0]['replace'](/^"|"$/g,'');try{const _0x1fd134=createTerminalSession(_0x3fe523,_0x18863e['cwd'],(0x0,env_filter_js_1['getSafeEnv'])(process.env));return(0x0,types_js_1['textResult'])('Terminal\x20started.\x0aid:\x20'+_0x1fd134['id']+'\x0ashell:\x20'+_0x1fd134['shell']+'\x0aSend\x20input\x20with\x20terminal({\x22action\x22:\x20\x22send\x22,\x20\x22id\x22:\x20\x22'+_0x1fd134['id']+'\x22,\x20\x22input\x22:\x20\x22...\x22})');}catch(_0x3ccd2d){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x3ccd2d instanceof Error?_0x3ccd2d['message']:String(_0x3ccd2d)),!![]);}}case'send':{const _0x4e39e8=String(_0x492e29['id']??'');if(!_0x4e39e8)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20send.',!![]);const _0x1109dc=String(_0x492e29['input']??'');if(!_0x1109dc)return(0x0,types_js_1['textResult'])('Missing\x20\x27input\x27\x20for\x20send.',!![]);try{return sendTerminalInput(_0x4e39e8,_0x1109dc),(0x0,types_js_1['textResult'])('Sent\x20to\x20'+_0x4e39e8+'.\x20Read\x20it\x20back\x20with\x20terminal({\x22action\x22:\x20\x22read\x22,\x20\x22id\x22:\x20\x22'+_0x4e39e8+'\x22}).');}catch(_0x46b8dd){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x46b8dd instanceof Error?_0x46b8dd['message']:String(_0x46b8dd)),!![]);}}case'read':{const _0x40255b=String(_0x492e29['id']??'');if(!_0x40255b)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20read.',!![]);const _0xe8976f=typeof _0x492e29['offset']==='number'&&Number['isFinite'](_0x492e29['offset'])?Math['max'](0x0,Math['floor'](_0x492e29['offset'])):0x0;try{const {output:_0x5313ac,offset:_0xad36aa,live:_0x37a65f}=readTerminalOutput(_0x40255b,_0xe8976f),_0x4af873='Terminal\x20'+_0x40255b+'\x20('+(_0x37a65f?'live':'exited')+')\x20—\x20offset\x20'+_0xad36aa+':\x0a';return(0x0,types_js_1['textResult'])(_0x5313ac['length']>0x0?_0x4af873+_0x5313ac:_0x4af873+'(no\x20new\x20output\x20yet)');}catch(_0x532b98){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x532b98 instanceof Error?_0x532b98['message']:String(_0x532b98)),!![]);}}case'list':{const _0x2b34e4=listTerminals();if(_0x2b34e4['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20terminals.');return(0x0,types_js_1['textResult'])(_0x2b34e4['map'](_0x5cd3dd=>'-\x20'+_0x5cd3dd['id']+'\x20['+(_0x5cd3dd['live']?'live':'exited\x20'+(_0x5cd3dd['exitCode']??'?'))+']\x20'+_0x5cd3dd['shell']+'\x20@\x20'+_0x5cd3dd['cwd'])['join']('\x0a'));}case'kill':{const _0x139594=String(_0x492e29['id']??'');if(!_0x139594)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20kill.',!![]);try{const _0x19279f=killTerminal(_0x139594);return(0x0,types_js_1['textResult'])(_0x19279f['exited']?'Terminal\x20'+_0x139594+'\x20already\x20exited\x20('+(_0x19279f['exitCode']??'?')+').':'Terminal\x20'+_0x139594+'\x20killed.');}catch(_0x3fb3df){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x3fb3df instanceof Error?_0x3fb3df['message']:String(_0x3fb3df)),!![]);}}default:return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20use\x20create,\x20send,\x20read,\x20list,\x20or\x20kill.',!![]);}}};}
1
+ 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['TERMINAL_INPUT_CAP']=exports['TERMINAL_OUTPUT_CAP']=exports['TERMINAL_MAX_SESSIONS']=void 0x0,exports['resetTerminalsForTests']=resetTerminalsForTests,exports['createTerminalSession']=createTerminalSession,exports['sendTerminalInput']=sendTerminalInput,exports['readTerminalOutput']=readTerminalOutput,exports['killTerminal']=killTerminal,exports['listTerminals']=listTerminals,exports['createTerminalTool']=createTerminalTool;const node_child_process_1=require('node:child_process'),node_crypto_1=require('node:crypto'),types_js_1=require('../types.js'),env_filter_js_1=require('../../../../../packages/core/src/env_filter.js');exports['TERMINAL_MAX_SESSIONS']=0x4,exports['TERMINAL_OUTPUT_CAP']=0x40*0x400,exports['TERMINAL_INPUT_CAP']=0x8*0x400;const sessions=new Map();function resetTerminalsForTests(){for(const _0x431a64 of sessions['values']()){try{killTree(_0x431a64);}catch{}}sessions['clear']();}function killTree(_0xc67389){const _0x698067=_0xc67389['child']['pid'];if(_0x698067!==undefined&&process['platform']!=='win32')try{process['kill'](-_0x698067,'SIGKILL');return;}catch{}try{_0xc67389['child']['kill']('SIGKILL');}catch{}}function appendOutput(_0x4535f,_0x29ce4b){_0x4535f['buffer']+=_0x29ce4b,_0x4535f['bufferBytes']+=Buffer['byteLength'](_0x29ce4b,'utf8'),_0x4535f['totalBytes']+=Buffer['byteLength'](_0x29ce4b,'utf8');if(_0x4535f['bufferBytes']>exports['TERMINAL_OUTPUT_CAP']){const _0x31924b=_0x4535f['bufferBytes']-exports['TERMINAL_OUTPUT_CAP'];let _0x2ac052=0x0,_0x2c4242=0x0;while(_0x2ac052<_0x4535f['buffer']['length']&&_0x2c4242<_0x31924b){_0x2c4242+=Buffer['byteLength'](_0x4535f['buffer'][_0x2ac052],'utf8'),_0x2ac052++;}_0x4535f['buffer']=_0x4535f['buffer']['slice'](_0x2ac052),_0x4535f['bufferBytes']-=_0x2c4242;}}function publicView(_0x12a5ea){return{'id':_0x12a5ea['id'],'shell':_0x12a5ea['shell'],'cwd':_0x12a5ea['cwd'],'startedAt':_0x12a5ea['startedAt'],'live':_0x12a5ea['live'],'exitCode':_0x12a5ea['exitCode'],'totalBytes':_0x12a5ea['totalBytes']};}function createTerminalSession(_0x179a05,_0x33ec8,_0x28aab5){const _0xdb9006=[...sessions['values']()]['filter'](_0x563e72=>_0x563e72['live'])['length'];if(_0xdb9006>=exports['TERMINAL_MAX_SESSIONS'])throw new Error('Too\x20many\x20live\x20terminals\x20('+_0xdb9006+'/'+exports['TERMINAL_MAX_SESSIONS']+').\x20Kill\x20one\x20first.');const _0x3c28cd=(0x0,node_child_process_1['spawn'])(_0x179a05,[],{'cwd':_0x33ec8,'env':_0x28aab5,'stdio':['pipe','pipe','pipe'],'windowsHide':!![],'detached':process['platform']!=='win32'}),_0x5247b0={'id':(0x0,node_crypto_1['randomUUID'])(),'shell':_0x179a05,'cwd':_0x33ec8,'startedAt':Date['now'](),'live':!![],'exitCode':null,'totalBytes':0x0,'child':_0x3c28cd,'buffer':'','bufferBytes':0x0};return _0x3c28cd['stdout']?.['on']('data',_0x16fa08=>appendOutput(_0x5247b0,_0x16fa08['toString']('utf8'))),_0x3c28cd['stderr']?.['on']('data',_0x2aa437=>appendOutput(_0x5247b0,_0x2aa437['toString']('utf8'))),_0x3c28cd['on']('close',_0x54db1b=>{_0x5247b0['live']=![],_0x5247b0['exitCode']=_0x54db1b??0x1;}),_0x3c28cd['on']('error',()=>{_0x5247b0['live']=![],_0x5247b0['exitCode']=_0x5247b0['exitCode']??0x1;}),sessions['set'](_0x5247b0['id'],_0x5247b0),publicView(_0x5247b0);}function sendTerminalInput(_0x3155b1,_0x19ed5f){const _0x129c95=sessions['get'](_0x3155b1);if(!_0x129c95)throw new Error('Unknown\x20terminal\x20\x27'+_0x3155b1+'\x27.');if(!_0x129c95['live'])throw new Error('Terminal\x20\x27'+_0x3155b1+'\x27\x20exited\x20(code\x20'+(_0x129c95['exitCode']??'?')+').');if(Buffer['byteLength'](_0x19ed5f,'utf8')>exports['TERMINAL_INPUT_CAP'])throw new Error('Input\x20exceeds\x20'+exports['TERMINAL_INPUT_CAP']+'\x20bytes.');const _0x477bea=_0x129c95['child']['stdin'];if(!_0x477bea||_0x477bea['destroyed'])throw new Error('Terminal\x20\x27'+_0x3155b1+'\x27\x20stdin\x20is\x20closed.');_0x477bea['write'](_0x19ed5f['endsWith']('\x0a')?_0x19ed5f:_0x19ed5f+'\x0a');}function readTerminalOutput(_0x3ba1d3,_0x5a9d5d=0x0){const _0x55844c=sessions['get'](_0x3ba1d3);if(!_0x55844c)throw new Error('Unknown\x20terminal\x20\x27'+_0x3ba1d3+'\x27.');const _0x494fd7=_0x55844c['totalBytes']-_0x55844c['bufferBytes'],_0x2774ea=Math['max'](0x0,_0x5a9d5d-_0x494fd7);return{'output':_0x55844c['buffer']['slice'](_0x2774ea),'offset':_0x55844c['totalBytes'],'live':_0x55844c['live']};}function killTerminal(_0x2e3043){const _0x2b34a5=sessions['get'](_0x2e3043);if(!_0x2b34a5)throw new Error('Unknown\x20terminal\x20\x27'+_0x2e3043+'\x27.');if(!_0x2b34a5['live'])return{'exited':!![],'exitCode':_0x2b34a5['exitCode']};return killTree(_0x2b34a5),{'exited':![],'exitCode':null};}function listTerminals(){return[...sessions['values']()]['map'](publicView);}const definition={'timeoutMs':0x7530,'name':'terminal','description':'Interactive\x20shell\x20sessions:\x20create\x20a\x20persistent\x20shell,\x20send\x20it\x20input\x20lines,\x20and\x20read\x20new\x20output\x20from\x20a\x20cursor.\x20For\x20REPLs\x20and\x20multi-step\x20shell\x20flows;\x20one-shot\x20commands\x20belong\x20to\x20bash.\x20Actions:\x20create,\x20send,\x20read,\x20list,\x20kill.','parameters':{'type':'object','required':['action'],'properties':{'action':{'type':'string','description':'One\x20of:\x20create,\x20send,\x20read,\x20list,\x20kill.'},'shell':{'type':'string','description':'Shell\x20for\x20create\x20(default:\x20the\x20configured\x20shellCommand).'},'input':{'type':'string','description':'Input\x20line\x20for\x20send.'},'id':{'type':'string','description':'Session\x20id\x20for\x20send/read/kill.'},'offset':{'type':'number','description':'Byte\x20cursor\x20for\x20read\x20(replay\x20from\x20here).\x20Default\x200.'}}}};function createTerminalTool(){return{'definition':definition,async 'execute'(_0x3c7801,_0x3fbf20,_0xfab7fd,_0x23e30a,_0x2fdf01){const _0x3e16c9=_0x2fdf01,_0x4b1e83=String(_0x3fbf20['action']??'')['trim']()['toLowerCase']();switch(_0x4b1e83){case'create':{const _0x4cfe62=typeof _0x3fbf20['shell']==='string'&&_0x3fbf20['shell']['trim']()?[_0x3fbf20['shell']['trim']()]:_0x3e16c9['config']['shellCommand']['match'](/(?:[^\s"]+|"[^"]*")+/g)??[_0x3e16c9['config']['shellCommand']],_0xac0c02=_0x4cfe62[0x0]['replace'](/^"|"$/g,'');try{const _0x2ccaa8=createTerminalSession(_0xac0c02,_0x3e16c9['cwd'],(0x0,env_filter_js_1['getSafeEnv'])(process.env));return(0x0,types_js_1['textResult'])('Terminal\x20started.\x0aid:\x20'+_0x2ccaa8['id']+'\x0ashell:\x20'+_0x2ccaa8['shell']+'\x0aSend\x20input\x20with\x20terminal({\x22action\x22:\x20\x22send\x22,\x20\x22id\x22:\x20\x22'+_0x2ccaa8['id']+'\x22,\x20\x22input\x22:\x20\x22...\x22})');}catch(_0x56eed3){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x56eed3 instanceof Error?_0x56eed3['message']:String(_0x56eed3)),!![]);}}case'send':{const _0x2419d2=String(_0x3fbf20['id']??'');if(!_0x2419d2)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20send.',!![]);const _0x2b03ee=String(_0x3fbf20['input']??'');if(!_0x2b03ee)return(0x0,types_js_1['textResult'])('Missing\x20\x27input\x27\x20for\x20send.',!![]);try{return sendTerminalInput(_0x2419d2,_0x2b03ee),(0x0,types_js_1['textResult'])('Sent\x20to\x20'+_0x2419d2+'.\x20Read\x20it\x20back\x20with\x20terminal({\x22action\x22:\x20\x22read\x22,\x20\x22id\x22:\x20\x22'+_0x2419d2+'\x22}).');}catch(_0x4aa088){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x4aa088 instanceof Error?_0x4aa088['message']:String(_0x4aa088)),!![]);}}case'read':{const _0x2e355b=String(_0x3fbf20['id']??'');if(!_0x2e355b)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20read.',!![]);const _0x309477=typeof _0x3fbf20['offset']==='number'&&Number['isFinite'](_0x3fbf20['offset'])?Math['max'](0x0,Math['floor'](_0x3fbf20['offset'])):0x0;try{const {output:_0x5a856f,offset:_0x2ab488,live:_0x5551ca}=readTerminalOutput(_0x2e355b,_0x309477),_0x5a04c0='Terminal\x20'+_0x2e355b+'\x20('+(_0x5551ca?'live':'exited')+')\x20—\x20offset\x20'+_0x2ab488+':\x0a';return(0x0,types_js_1['textResult'])(_0x5a856f['length']>0x0?_0x5a04c0+_0x5a856f:_0x5a04c0+'(no\x20new\x20output\x20yet)');}catch(_0x51ade3){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x51ade3 instanceof Error?_0x51ade3['message']:String(_0x51ade3)),!![]);}}case'list':{const _0x171c2b=listTerminals();if(_0x171c2b['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20terminals.');return(0x0,types_js_1['textResult'])(_0x171c2b['map'](_0x29691d=>'-\x20'+_0x29691d['id']+'\x20['+(_0x29691d['live']?'live':'exited\x20'+(_0x29691d['exitCode']??'?'))+']\x20'+_0x29691d['shell']+'\x20@\x20'+_0x29691d['cwd'])['join']('\x0a'));}case'kill':{const _0x1459b6=String(_0x3fbf20['id']??'');if(!_0x1459b6)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20kill.',!![]);try{const _0x3ab2d8=killTerminal(_0x1459b6);return(0x0,types_js_1['textResult'])(_0x3ab2d8['exited']?'Terminal\x20'+_0x1459b6+'\x20already\x20exited\x20('+(_0x3ab2d8['exitCode']??'?')+').':'Terminal\x20'+_0x1459b6+'\x20killed.');}catch(_0xc7f889){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0xc7f889 instanceof Error?_0xc7f889['message']:String(_0xc7f889)),!![]);}}default:return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20use\x20create,\x20send,\x20read,\x20list,\x20or\x20kill.',!![]);}}};}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x1476b9,_0x725f5f,_0x54205d,_0x20557e){if(_0x20557e===undefined)_0x20557e=_0x54205d;var _0x1426e9=Object['getOwnPropertyDescriptor'](_0x725f5f,_0x54205d);(!_0x1426e9||('get'in _0x1426e9?!_0x725f5f['__esModule']:_0x1426e9['writable']||_0x1426e9['configurable']))&&(_0x1426e9={'enumerable':!![],'get':function(){return _0x725f5f[_0x54205d];}}),Object['defineProperty'](_0x1476b9,_0x20557e,_0x1426e9);}:function(_0x4ac41f,_0x1c07b1,_0x157812,_0x1fb3b8){if(_0x1fb3b8===undefined)_0x1fb3b8=_0x157812;_0x4ac41f[_0x1fb3b8]=_0x1c07b1[_0x157812];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x2eca62,_0x525b19){Object['defineProperty'](_0x2eca62,'default',{'enumerable':!![],'value':_0x525b19});}:function(_0x189618,_0x83ef4){_0x189618['default']=_0x83ef4;}),__importStar=this&&this['__importStar']||(function(){var _0xef416f=function(_0x4b8391){return _0xef416f=Object['getOwnPropertyNames']||function(_0x3eb085){var _0x1feae3=[];for(var _0x38a001 in _0x3eb085)if(Object['prototype']['hasOwnProperty']['call'](_0x3eb085,_0x38a001))_0x1feae3[_0x1feae3['length']]=_0x38a001;return _0x1feae3;},_0xef416f(_0x4b8391);};return function(_0x53ee1c){if(_0x53ee1c&&_0x53ee1c['__esModule'])return _0x53ee1c;var _0x5199c2={};if(_0x53ee1c!=null){for(var _0x3dbc9a=_0xef416f(_0x53ee1c),_0x7b1c38=0x0;_0x7b1c38<_0x3dbc9a['length'];_0x7b1c38++)if(_0x3dbc9a[_0x7b1c38]!=='default')__createBinding(_0x5199c2,_0x53ee1c,_0x3dbc9a[_0x7b1c38]);}return __setModuleDefault(_0x5199c2,_0x53ee1c),_0x5199c2;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['defaultCommandsDir']=defaultCommandsDir,exports['loadCommandsFromDir']=loadCommandsFromDir,exports['parseCommandFile']=parseCommandFile,exports['defaultRulesDir']=defaultRulesDir,exports['loadRulesFromDir']=loadRulesFromDir,exports['rulesBlock']=rulesBlock;const fs=__importStar(require('fs')),path=__importStar(require('path'));function defaultCommandsDir(){return path['join'](process['cwd'](),'commands');}function loadCommandsFromDir(_0x573946){if(!_0x573946||!fs['existsSync'](_0x573946))return[];const _0x3c88b9=[],_0x5b825b=fs['readdirSync'](_0x573946,{'withFileTypes':!![]});for(const _0x23fd70 of _0x5b825b){if(!_0x23fd70['isFile']()||!_0x23fd70['name']['endsWith']('.md'))continue;const _0x2db234=path['join'](_0x573946,_0x23fd70['name']);try{const _0x22739f=fs['readFileSync'](_0x2db234,'utf8'),_0x470f95=parseCommandFile(_0x22739f,_0x2db234);if(_0x470f95)_0x3c88b9['push'](_0x470f95);}catch{}}return _0x3c88b9['sort']((_0x234972,_0x14d632)=>_0x234972['name']['localeCompare'](_0x14d632['name']));}function parseCommandFile(_0x554a8c,_0x4e64f0){const _0x3212f1=_0x554a8c['match'](/^---\s*\n([\s\S]*?)\n---\s*\n?([\s\S]*)$/);if(!_0x3212f1)return null;const _0x52a85c=new Map();for(const _0x1eb71b of _0x3212f1[0x1]['split']('\x0a')){const _0x519cd7=_0x1eb71b['match'](/^\s*([^:]+):\s*(.*?)\s*$/);if(_0x519cd7)_0x52a85c['set'](_0x519cd7[0x1],_0x519cd7[0x2]['replace'](/^["']|["']$/g,''));}const _0xa699c7=path['basename'](_0x4e64f0,path['extname'](_0x4e64f0)),_0x533cc4=_0x52a85c['get']('description')??'',_0xaa12ff=_0x52a85c['get']('argument-hint')??'',_0x3b0b6e=_0x3212f1[0x2]['trim']();if(!_0xa699c7)return null;return{'name':_0xa699c7,'description':_0x533cc4,'argumentHint':_0xaa12ff||undefined,'body':_0x3b0b6e,'file':_0x4e64f0};}function defaultRulesDir(){return path['join'](process['cwd'](),'.trayambak','rules');}function loadRulesFromDir(_0x4a9448){if(!_0x4a9448||!fs['existsSync'](_0x4a9448))return[];const _0x3f4fab=[],_0x1a807c=fs['readdirSync'](_0x4a9448,{'withFileTypes':!![]});for(const _0x56e838 of _0x1a807c){if(!_0x56e838['isFile']()||!_0x56e838['name']['endsWith']('.md'))continue;const _0x4f2829=path['join'](_0x4a9448,_0x56e838['name']);try{const _0x12b75a=fs['readFileSync'](_0x4f2829,'utf8'),_0x22721e=path['basename'](_0x56e838['name'],path['extname'](_0x56e838['name']));_0x3f4fab['push']('###\x20'+_0x22721e+'\x0a'+_0x12b75a['trim']());}catch{}}return _0x3f4fab['sort']();}function rulesBlock(_0x19cdbe){if(!_0x19cdbe||_0x19cdbe['length']===0x0)return'';return['Rules\x20(from\x20.trayambak/rules):',..._0x19cdbe]['join']('\x0a');}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x24b882,_0x4abd4e,_0x47c583,_0x48a7e2){if(_0x48a7e2===undefined)_0x48a7e2=_0x47c583;var _0x33f3f4=Object['getOwnPropertyDescriptor'](_0x4abd4e,_0x47c583);(!_0x33f3f4||('get'in _0x33f3f4?!_0x4abd4e['__esModule']:_0x33f3f4['writable']||_0x33f3f4['configurable']))&&(_0x33f3f4={'enumerable':!![],'get':function(){return _0x4abd4e[_0x47c583];}}),Object['defineProperty'](_0x24b882,_0x48a7e2,_0x33f3f4);}:function(_0x52a30d,_0x597816,_0x3a5bc9,_0x92e52d){if(_0x92e52d===undefined)_0x92e52d=_0x3a5bc9;_0x52a30d[_0x92e52d]=_0x597816[_0x3a5bc9];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x475880,_0x1d3b18){Object['defineProperty'](_0x475880,'default',{'enumerable':!![],'value':_0x1d3b18});}:function(_0x8b3be4,_0x275f53){_0x8b3be4['default']=_0x275f53;}),__importStar=this&&this['__importStar']||(function(){var _0x15cc00=function(_0x1cfc48){return _0x15cc00=Object['getOwnPropertyNames']||function(_0x777493){var _0x19223a=[];for(var _0x34c078 in _0x777493)if(Object['prototype']['hasOwnProperty']['call'](_0x777493,_0x34c078))_0x19223a[_0x19223a['length']]=_0x34c078;return _0x19223a;},_0x15cc00(_0x1cfc48);};return function(_0x560492){if(_0x560492&&_0x560492['__esModule'])return _0x560492;var _0x2c6663={};if(_0x560492!=null){for(var _0x229139=_0x15cc00(_0x560492),_0x3b0fbd=0x0;_0x3b0fbd<_0x229139['length'];_0x3b0fbd++)if(_0x229139[_0x3b0fbd]!=='default')__createBinding(_0x2c6663,_0x560492,_0x229139[_0x3b0fbd]);}return __setModuleDefault(_0x2c6663,_0x560492),_0x2c6663;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['defaultCommandsDir']=defaultCommandsDir,exports['loadCommandsFromDir']=loadCommandsFromDir,exports['parseCommandFile']=parseCommandFile,exports['defaultRulesDir']=defaultRulesDir,exports['loadRulesFromDir']=loadRulesFromDir,exports['rulesBlock']=rulesBlock;const fs=__importStar(require('fs')),path=__importStar(require('path'));function defaultCommandsDir(){return path['join'](process['cwd'](),'commands');}function loadCommandsFromDir(_0x810673){if(!_0x810673||!fs['existsSync'](_0x810673))return[];const _0x322fdb=[],_0x388623=fs['readdirSync'](_0x810673,{'withFileTypes':!![]});for(const _0x3daa7c of _0x388623){if(!_0x3daa7c['isFile']()||!_0x3daa7c['name']['endsWith']('.md'))continue;const _0x53fd6a=path['join'](_0x810673,_0x3daa7c['name']);try{const _0x386f22=fs['readFileSync'](_0x53fd6a,'utf8'),_0x3364aa=parseCommandFile(_0x386f22,_0x53fd6a);if(_0x3364aa)_0x322fdb['push'](_0x3364aa);}catch{}}return _0x322fdb['sort']((_0xdd997e,_0x40e64f)=>_0xdd997e['name']['localeCompare'](_0x40e64f['name']));}function parseCommandFile(_0x3b2db5,_0x50af18){const _0xe3a4ff=_0x3b2db5['match'](/^---\s*\n([\s\S]*?)\n---\s*\n?([\s\S]*)$/);if(!_0xe3a4ff)return null;const _0x31096a=new Map();for(const _0x3dcbf4 of _0xe3a4ff[0x1]['split']('\x0a')){const _0x38babb=_0x3dcbf4['match'](/^\s*([^:]+):\s*(.*?)\s*$/);if(_0x38babb)_0x31096a['set'](_0x38babb[0x1],_0x38babb[0x2]['replace'](/^["']|["']$/g,''));}const _0x5b0a73=path['basename'](_0x50af18,path['extname'](_0x50af18)),_0x36b71d=_0x31096a['get']('description')??'',_0x267c95=_0x31096a['get']('argument-hint')??'',_0x139403=_0xe3a4ff[0x2]['trim']();if(!_0x5b0a73)return null;return{'name':_0x5b0a73,'description':_0x36b71d,'argumentHint':_0x267c95||undefined,'body':_0x139403,'file':_0x50af18};}function defaultRulesDir(){return path['join'](process['cwd'](),'.trayambak','rules');}function loadRulesFromDir(_0xb2cecc){if(!_0xb2cecc||!fs['existsSync'](_0xb2cecc))return[];const _0x5e93b4=[],_0x3415cc=fs['readdirSync'](_0xb2cecc,{'withFileTypes':!![]});for(const _0x41a1e1 of _0x3415cc){if(!_0x41a1e1['isFile']()||!_0x41a1e1['name']['endsWith']('.md'))continue;const _0x302bc3=path['join'](_0xb2cecc,_0x41a1e1['name']);try{const _0x5ccf93=fs['readFileSync'](_0x302bc3,'utf8'),_0x634030=path['basename'](_0x41a1e1['name'],path['extname'](_0x41a1e1['name']));_0x5e93b4['push']('###\x20'+_0x634030+'\x0a'+_0x5ccf93['trim']());}catch{}}return _0x5e93b4['sort']();}function rulesBlock(_0x5c2fc7){if(!_0x5c2fc7||_0x5c2fc7['length']===0x0)return'';return['Rules\x20(from\x20.trayambak/rules):',..._0x5c2fc7]['join']('\x0a');}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0xe4637b,_0x14f06d,_0x4420c3,_0x521658){if(_0x521658===undefined)_0x521658=_0x4420c3;var _0x5c7eb6=Object['getOwnPropertyDescriptor'](_0x14f06d,_0x4420c3);(!_0x5c7eb6||('get'in _0x5c7eb6?!_0x14f06d['__esModule']:_0x5c7eb6['writable']||_0x5c7eb6['configurable']))&&(_0x5c7eb6={'enumerable':!![],'get':function(){return _0x14f06d[_0x4420c3];}}),Object['defineProperty'](_0xe4637b,_0x521658,_0x5c7eb6);}:function(_0xdefaaf,_0x1606b7,_0x59b24b,_0x669719){if(_0x669719===undefined)_0x669719=_0x59b24b;_0xdefaaf[_0x669719]=_0x1606b7[_0x59b24b];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x26de05,_0x26b8d2){Object['defineProperty'](_0x26de05,'default',{'enumerable':!![],'value':_0x26b8d2});}:function(_0x2e5449,_0x3193e9){_0x2e5449['default']=_0x3193e9;}),__importStar=this&&this['__importStar']||(function(){var _0x1fb116=function(_0x2c80c1){return _0x1fb116=Object['getOwnPropertyNames']||function(_0x2ad061){var _0x51bf6b=[];for(var _0x23de38 in _0x2ad061)if(Object['prototype']['hasOwnProperty']['call'](_0x2ad061,_0x23de38))_0x51bf6b[_0x51bf6b['length']]=_0x23de38;return _0x51bf6b;},_0x1fb116(_0x2c80c1);};return function(_0x3eec11){if(_0x3eec11&&_0x3eec11['__esModule'])return _0x3eec11;var _0x11c6bd={};if(_0x3eec11!=null){for(var _0x120aec=_0x1fb116(_0x3eec11),_0x17a907=0x0;_0x17a907<_0x120aec['length'];_0x17a907++)if(_0x120aec[_0x17a907]!=='default')__createBinding(_0x11c6bd,_0x3eec11,_0x120aec[_0x17a907]);}return __setModuleDefault(_0x11c6bd,_0x3eec11),_0x11c6bd;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['sanitizeToolName']=sanitizeToolName,exports['customToolName']=customToolName,exports['isCustomToolExport']=isCustomToolExport,exports['normalizeParameters']=normalizeParameters,exports['createCustomTool']=createCustomTool,exports['customToolDirs']=customToolDirs,exports['discoverCustomToolFiles']=discoverCustomToolFiles,exports['loadCustomTools']=loadCustomTools,exports['registerCustomToolset']=registerCustomToolset;const fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require('path')),url_1=require('url'),toolsets_js_1=require('../../../../../packages/protocol/src/toolsets.js'),types_js_1=require('../types.js'),MAX_TOOL_NAME=0x40,PARAM_TYPES=new Set(['string','number','integer','boolean','array','object']),TOOL_EXTENSIONS=/\.(js|mjs|ts)$/,importImpl=process.env.VITEST?_0x55ad4a=>Promise['resolve'](''+_0x55ad4a)['then'](_0x455356=>__importStar(require(_0x455356))):new Function('specifier','return\x20import(specifier)');async function importToolModule(_0xc40d0){return await importImpl((0x0,url_1['pathToFileURL'])(_0xc40d0)['href']);}function sanitizeToolName(_0x20d746){const _0x1e6def=_0x20d746['replace'](/[^\w-]/g,'_')['slice'](0x0,MAX_TOOL_NAME);return _0x1e6def['length']>0x0?_0x1e6def:'custom_tool';}function customToolName(_0x497877,_0x51471d){const _0x200fdc=path['basename'](_0x497877,path['extname'](_0x497877));return sanitizeToolName(_0x51471d==='default'?_0x200fdc:_0x200fdc+'_'+_0x51471d);}function isCustomToolExport(_0xede658){if(typeof _0xede658!=='object'||_0xede658===null)return![];const _0x167883=_0xede658;return'args'in _0x167883&&'description'in _0x167883&&'execute'in _0x167883&&typeof _0x167883['description']==='string'&&_0x167883['description']['length']>0x0&&typeof _0x167883['execute']==='function';}function coerceProperties(_0x583779){const _0x378693={};if(typeof _0x583779!=='object'||_0x583779===null||Array['isArray'](_0x583779))return _0x378693;for(const [_0x3fb319,_0x5173e0]of Object['entries'](_0x583779)){if(typeof _0x5173e0!=='object'||_0x5173e0===null||Array['isArray'](_0x5173e0))continue;const _0x1322e3=_0x5173e0;if(typeof _0x1322e3['type']!=='string')continue;_0x378693[_0x3fb319]={..._0x1322e3,'type':PARAM_TYPES['has'](_0x1322e3['type'])?_0x1322e3['type']:'string','description':typeof _0x1322e3['description']==='string'?_0x1322e3['description']:''};}return _0x378693;}function normalizeParameters(_0x32c16b){const _0x49deca={'type':'object','properties':{},'required':[]};if(_0x32c16b===undefined||_0x32c16b===null)return _0x49deca;if(typeof _0x32c16b!=='object'||Array['isArray'](_0x32c16b))return _0x49deca;const _0xae6a68=_0x32c16b;if(_0xae6a68['type']==='object'){const _0x5cb106=coerceProperties(_0xae6a68['properties']),_0x5e6c01=Array['isArray'](_0xae6a68['required'])?_0xae6a68['required']['filter'](_0x1d95aa=>typeof _0x1d95aa==='string'):Object['keys'](_0x5cb106);return{'type':'object','properties':_0x5cb106,'required':_0x5e6c01};}const _0x21214d=coerceProperties(_0xae6a68);return{'type':'object','properties':_0x21214d,'required':Object['keys'](_0x21214d)};}function coerceResult(_0x2931db){if(typeof _0x2931db==='string')return(0x0,types_js_1['textResult'])(_0x2931db);if(_0x2931db===undefined||_0x2931db===null)return(0x0,types_js_1['textResult'])('');if(typeof _0x2931db==='object'){const _0x2343ae=_0x2931db;if(Array['isArray'](_0x2343ae['content'])){const _0x3bf4d6=_0x2343ae['content']['filter'](_0x2ee53e=>typeof _0x2ee53e==='object'&&_0x2ee53e!==null&&_0x2ee53e['type']==='text'&&typeof _0x2ee53e['text']==='string');if(_0x3bf4d6['length']>0x0)return{'content':_0x3bf4d6,'isError':_0x2343ae['isError']===!![]};}if(typeof _0x2343ae['output']==='string')return(0x0,types_js_1['textResult'])(_0x2343ae['output']);try{return(0x0,types_js_1['textResult'])(JSON['stringify'](_0x2931db,null,0x2));}catch{return(0x0,types_js_1['textResult'])(String(_0x2931db));}}return(0x0,types_js_1['textResult'])(String(_0x2931db));}function createCustomTool(_0xdf6ed3,_0x1e8648,_0x4e4340=new Set()){if(_0x4e4340['has'](_0xdf6ed3))return undefined;const _0x49b8c7={'timeoutMs':0x7530,'name':_0xdf6ed3,'description':_0x1e8648['description'],'parameters':normalizeParameters(_0x1e8648['args'])};return{'definition':_0x49b8c7,'execute':async(_0x2a7416,_0x50135a,_0x32938b,_0x3c0a5b,_0x5b25f5)=>{try{const _0x242ddc={'cwd':_0x5b25f5?.['cwd']??process['cwd'](),'sessionId':_0x5b25f5?.['sessionId'],'signal':_0x32938b},_0x12bc3f=await _0x1e8648['execute'](_0x50135a??{},_0x242ddc);return coerceResult(_0x12bc3f);}catch(_0x34acd0){const _0x52d9e5=_0x34acd0 instanceof Error?_0x34acd0['message']:String(_0x34acd0);return(0x0,types_js_1['textResult'])('Custom\x20tool\x20\x22'+_0xdf6ed3+'\x22\x20failed:\x20'+_0x52d9e5,!![]);}}};}function customToolDirs(_0x598548,_0x2858ca=os['homedir']()){return[path['join'](_0x598548,'.trayambak'),path['join'](_0x2858ca,'.trayambak')];}function discoverCustomToolFiles(_0xc858c3){const _0x3ff041=[];for(const _0x14b452 of _0xc858c3){for(const _0x118e78 of['tool','tools']){const _0x67d392=path['join'](_0x14b452,_0x118e78);let _0x1f651e;try{_0x1f651e=fs['readdirSync'](_0x67d392,{'withFileTypes':!![]});}catch{continue;}for(const _0x1faf77 of _0x1f651e){if(_0x1faf77['isDirectory']())continue;if(!TOOL_EXTENSIONS['test'](_0x1faf77['name']))continue;_0x3ff041['push'](path['join'](_0x67d392,_0x1faf77['name']));}}}return _0x3ff041;}async function loadCustomTools(_0x27b34d){const _0x36629a=customToolDirs(_0x27b34d['cwd'],_0x27b34d['homeDir']),_0x1deb25=discoverCustomToolFiles(_0x36629a),_0x1d67a5=new Set(_0x27b34d['reserved']??[]),_0x337898=[],_0x1e8379=new Set();for(const _0x1983f1 of _0x1deb25){let _0x251826;try{_0x251826=await importToolModule(_0x1983f1);}catch{continue;}for(const [_0xe2aedb,_0xc52c09]of Object['entries'](_0x251826)){if(!isCustomToolExport(_0xc52c09))continue;const _0x24a08f=customToolName(_0x1983f1,_0xe2aedb);if(_0x1e8379['has'](_0x24a08f))continue;const _0x375e9f=createCustomTool(_0x24a08f,_0xc52c09,_0x1d67a5);if(!_0x375e9f)continue;_0x1e8379['add'](_0x24a08f),_0x337898['push'](_0x375e9f);}}return _0x337898;}function registerCustomToolset(_0x5b6753,_0x4aa773,_0x18d83b){_0x5b6753['registerToolset']({'name':'custom','description':'User-defined\x20tools\x20loaded\x20from\x20.trayambak/{tool,tools}','toolNames':[..._0x18d83b],'checkFn':()=>!![]});const _0x1f0c28=_0x4aa773['toolsets']?.['defaults']?.['length']?_0x4aa773['toolsets']['defaults']:toolsets_js_1['DEFAULT_TOOLSETS'];!_0x1f0c28['includes']('custom')?_0x5b6753['setCoreTools']([..._0x1f0c28,'custom']):_0x5b6753['setCoreTools']([..._0x1f0c28]);}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0xa65afe,_0x132afa,_0x51e647,_0x1ca224){if(_0x1ca224===undefined)_0x1ca224=_0x51e647;var _0x45dd4c=Object['getOwnPropertyDescriptor'](_0x132afa,_0x51e647);(!_0x45dd4c||('get'in _0x45dd4c?!_0x132afa['__esModule']:_0x45dd4c['writable']||_0x45dd4c['configurable']))&&(_0x45dd4c={'enumerable':!![],'get':function(){return _0x132afa[_0x51e647];}}),Object['defineProperty'](_0xa65afe,_0x1ca224,_0x45dd4c);}:function(_0x55e067,_0x4eb11a,_0x4f1eb1,_0x1fdff0){if(_0x1fdff0===undefined)_0x1fdff0=_0x4f1eb1;_0x55e067[_0x1fdff0]=_0x4eb11a[_0x4f1eb1];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1e5e00,_0x547900){Object['defineProperty'](_0x1e5e00,'default',{'enumerable':!![],'value':_0x547900});}:function(_0x13ba93,_0x5d2fcf){_0x13ba93['default']=_0x5d2fcf;}),__importStar=this&&this['__importStar']||(function(){var _0x1e881e=function(_0x3c779b){return _0x1e881e=Object['getOwnPropertyNames']||function(_0x4d6df3){var _0x2ab5db=[];for(var _0x415651 in _0x4d6df3)if(Object['prototype']['hasOwnProperty']['call'](_0x4d6df3,_0x415651))_0x2ab5db[_0x2ab5db['length']]=_0x415651;return _0x2ab5db;},_0x1e881e(_0x3c779b);};return function(_0x147476){if(_0x147476&&_0x147476['__esModule'])return _0x147476;var _0x5e7c41={};if(_0x147476!=null){for(var _0x4ecf21=_0x1e881e(_0x147476),_0x1196b7=0x0;_0x1196b7<_0x4ecf21['length'];_0x1196b7++)if(_0x4ecf21[_0x1196b7]!=='default')__createBinding(_0x5e7c41,_0x147476,_0x4ecf21[_0x1196b7]);}return __setModuleDefault(_0x5e7c41,_0x147476),_0x5e7c41;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['sanitizeToolName']=sanitizeToolName,exports['customToolName']=customToolName,exports['isCustomToolExport']=isCustomToolExport,exports['normalizeParameters']=normalizeParameters,exports['createCustomTool']=createCustomTool,exports['customToolDirs']=customToolDirs,exports['discoverCustomToolFiles']=discoverCustomToolFiles,exports['loadCustomTools']=loadCustomTools,exports['registerCustomToolset']=registerCustomToolset;const fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require('path')),url_1=require('url'),toolsets_js_1=require('../../../../../packages/protocol/src/toolsets.js'),types_js_1=require('../types.js'),MAX_TOOL_NAME=0x40,PARAM_TYPES=new Set(['string','number','integer','boolean','array','object']),TOOL_EXTENSIONS=/\.(js|mjs|ts)$/,importImpl=process.env.VITEST?_0x5ec5cb=>Promise['resolve'](''+_0x5ec5cb)['then'](_0x55ee5f=>__importStar(require(_0x55ee5f))):new Function('specifier','return\x20import(specifier)');async function importToolModule(_0x57f4cb){return await importImpl((0x0,url_1['pathToFileURL'])(_0x57f4cb)['href']);}function sanitizeToolName(_0x5c497b){const _0x210ec1=_0x5c497b['replace'](/[^\w-]/g,'_')['slice'](0x0,MAX_TOOL_NAME);return _0x210ec1['length']>0x0?_0x210ec1:'custom_tool';}function customToolName(_0x5a254b,_0x2060be){const _0x2df18b=path['basename'](_0x5a254b,path['extname'](_0x5a254b));return sanitizeToolName(_0x2060be==='default'?_0x2df18b:_0x2df18b+'_'+_0x2060be);}function isCustomToolExport(_0xc6d79d){if(typeof _0xc6d79d!=='object'||_0xc6d79d===null)return![];const _0x4285bd=_0xc6d79d;return'args'in _0x4285bd&&'description'in _0x4285bd&&'execute'in _0x4285bd&&typeof _0x4285bd['description']==='string'&&_0x4285bd['description']['length']>0x0&&typeof _0x4285bd['execute']==='function';}function coerceProperties(_0x50bae1){const _0x57bfbe={};if(typeof _0x50bae1!=='object'||_0x50bae1===null||Array['isArray'](_0x50bae1))return _0x57bfbe;for(const [_0x3132c0,_0x276be3]of Object['entries'](_0x50bae1)){if(typeof _0x276be3!=='object'||_0x276be3===null||Array['isArray'](_0x276be3))continue;const _0x5a6420=_0x276be3;if(typeof _0x5a6420['type']!=='string')continue;_0x57bfbe[_0x3132c0]={..._0x5a6420,'type':PARAM_TYPES['has'](_0x5a6420['type'])?_0x5a6420['type']:'string','description':typeof _0x5a6420['description']==='string'?_0x5a6420['description']:''};}return _0x57bfbe;}function normalizeParameters(_0x229786){const _0x4b0694={'type':'object','properties':{},'required':[]};if(_0x229786===undefined||_0x229786===null)return _0x4b0694;if(typeof _0x229786!=='object'||Array['isArray'](_0x229786))return _0x4b0694;const _0x51e937=_0x229786;if(_0x51e937['type']==='object'){const _0x561511=coerceProperties(_0x51e937['properties']),_0x1f43c8=Array['isArray'](_0x51e937['required'])?_0x51e937['required']['filter'](_0x37d079=>typeof _0x37d079==='string'):Object['keys'](_0x561511);return{'type':'object','properties':_0x561511,'required':_0x1f43c8};}const _0x48880d=coerceProperties(_0x51e937);return{'type':'object','properties':_0x48880d,'required':Object['keys'](_0x48880d)};}function coerceResult(_0x1b293e){if(typeof _0x1b293e==='string')return(0x0,types_js_1['textResult'])(_0x1b293e);if(_0x1b293e===undefined||_0x1b293e===null)return(0x0,types_js_1['textResult'])('');if(typeof _0x1b293e==='object'){const _0x517e7e=_0x1b293e;if(Array['isArray'](_0x517e7e['content'])){const _0xe21930=_0x517e7e['content']['filter'](_0x35c2d7=>typeof _0x35c2d7==='object'&&_0x35c2d7!==null&&_0x35c2d7['type']==='text'&&typeof _0x35c2d7['text']==='string');if(_0xe21930['length']>0x0)return{'content':_0xe21930,'isError':_0x517e7e['isError']===!![]};}if(typeof _0x517e7e['output']==='string')return(0x0,types_js_1['textResult'])(_0x517e7e['output']);try{return(0x0,types_js_1['textResult'])(JSON['stringify'](_0x1b293e,null,0x2));}catch{return(0x0,types_js_1['textResult'])(String(_0x1b293e));}}return(0x0,types_js_1['textResult'])(String(_0x1b293e));}function createCustomTool(_0x57e68c,_0xef587e,_0x5b2942=new Set()){if(_0x5b2942['has'](_0x57e68c))return undefined;const _0x14c0c5={'timeoutMs':0x7530,'name':_0x57e68c,'description':_0xef587e['description'],'parameters':normalizeParameters(_0xef587e['args'])};return{'definition':_0x14c0c5,'execute':async(_0x1be93c,_0x433f70,_0x30d61d,_0x458326,_0x58151f)=>{try{const _0x2f8feb={'cwd':_0x58151f?.['cwd']??process['cwd'](),'sessionId':_0x58151f?.['sessionId'],'signal':_0x30d61d},_0x2b6ff9=await _0xef587e['execute'](_0x433f70??{},_0x2f8feb);return coerceResult(_0x2b6ff9);}catch(_0x49d582){const _0x5669de=_0x49d582 instanceof Error?_0x49d582['message']:String(_0x49d582);return(0x0,types_js_1['textResult'])('Custom\x20tool\x20\x22'+_0x57e68c+'\x22\x20failed:\x20'+_0x5669de,!![]);}}};}function customToolDirs(_0x4b59a4,_0x472d25=os['homedir']()){return[path['join'](_0x4b59a4,'.trayambak'),path['join'](_0x472d25,'.trayambak')];}function discoverCustomToolFiles(_0x2cdcd2){const _0xa6cf76=[];for(const _0x5050f5 of _0x2cdcd2){for(const _0xaed610 of['tool','tools']){const _0x4eddaa=path['join'](_0x5050f5,_0xaed610);let _0x1c60d5;try{_0x1c60d5=fs['readdirSync'](_0x4eddaa,{'withFileTypes':!![]});}catch{continue;}for(const _0x463361 of _0x1c60d5){if(_0x463361['isDirectory']())continue;if(!TOOL_EXTENSIONS['test'](_0x463361['name']))continue;_0xa6cf76['push'](path['join'](_0x4eddaa,_0x463361['name']));}}}return _0xa6cf76;}async function loadCustomTools(_0x4837a1){const _0x50a457=customToolDirs(_0x4837a1['cwd'],_0x4837a1['homeDir']),_0x216cfb=discoverCustomToolFiles(_0x50a457),_0x2c0642=new Set(_0x4837a1['reserved']??[]),_0x3e2b47=[],_0x7d70ca=new Set();for(const _0x293470 of _0x216cfb){let _0x8c5778;try{_0x8c5778=await importToolModule(_0x293470);}catch{continue;}for(const [_0x1375f3,_0x4ad084]of Object['entries'](_0x8c5778)){if(!isCustomToolExport(_0x4ad084))continue;const _0xb770f3=customToolName(_0x293470,_0x1375f3);if(_0x7d70ca['has'](_0xb770f3))continue;const _0x2e4f29=createCustomTool(_0xb770f3,_0x4ad084,_0x2c0642);if(!_0x2e4f29)continue;_0x7d70ca['add'](_0xb770f3),_0x3e2b47['push'](_0x2e4f29);}}return _0x3e2b47;}function registerCustomToolset(_0x36df0b,_0x3abd94,_0x287070){_0x36df0b['registerToolset']({'name':'custom','description':'User-defined\x20tools\x20loaded\x20from\x20.trayambak/{tool,tools}','toolNames':[..._0x287070],'checkFn':()=>!![]});const _0x1babcb=_0x3abd94['toolsets']?.['defaults']?.['length']?_0x3abd94['toolsets']['defaults']:toolsets_js_1['DEFAULT_TOOLSETS'];!_0x1babcb['includes']('custom')?_0x36df0b['setCoreTools']([..._0x1babcb,'custom']):_0x36df0b['setCoreTools']([..._0x1babcb]);}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x57a8a3,_0x3f81f6,_0x145a9b,_0x5eccdd){if(_0x5eccdd===undefined)_0x5eccdd=_0x145a9b;var _0x37f09c=Object['getOwnPropertyDescriptor'](_0x3f81f6,_0x145a9b);(!_0x37f09c||('get'in _0x37f09c?!_0x3f81f6['__esModule']:_0x37f09c['writable']||_0x37f09c['configurable']))&&(_0x37f09c={'enumerable':!![],'get':function(){return _0x3f81f6[_0x145a9b];}}),Object['defineProperty'](_0x57a8a3,_0x5eccdd,_0x37f09c);}:function(_0x4825a4,_0xf45ef1,_0x3a05c7,_0x4495cf){if(_0x4495cf===undefined)_0x4495cf=_0x3a05c7;_0x4825a4[_0x4495cf]=_0xf45ef1[_0x3a05c7];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x225fca,_0x339c31){Object['defineProperty'](_0x225fca,'default',{'enumerable':!![],'value':_0x339c31});}:function(_0x3d00ee,_0x1d82a4){_0x3d00ee['default']=_0x1d82a4;}),__importStar=this&&this['__importStar']||(function(){var _0x335350=function(_0x5250aa){return _0x335350=Object['getOwnPropertyNames']||function(_0x5a9cee){var _0x55d031=[];for(var _0x5126bc in _0x5a9cee)if(Object['prototype']['hasOwnProperty']['call'](_0x5a9cee,_0x5126bc))_0x55d031[_0x55d031['length']]=_0x5126bc;return _0x55d031;},_0x335350(_0x5250aa);};return function(_0x1282aa){if(_0x1282aa&&_0x1282aa['__esModule'])return _0x1282aa;var _0x5b79f4={};if(_0x1282aa!=null){for(var _0x7f4960=_0x335350(_0x1282aa),_0x768f0e=0x0;_0x768f0e<_0x7f4960['length'];_0x768f0e++)if(_0x7f4960[_0x768f0e]!=='default')__createBinding(_0x5b79f4,_0x1282aa,_0x7f4960[_0x768f0e]);}return __setModuleDefault(_0x5b79f4,_0x1282aa),_0x5b79f4;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['resetDiagnosticsCache']=resetDiagnosticsCache,exports['resolveTscBin']=resolveTscBin,exports['collectDiagnostics']=collectDiagnostics,exports['createDiagnosticsTool']=createDiagnosticsTool;const child_process_1=require('child_process'),fs=__importStar(require('fs')),path=__importStar(require('path')),types_js_1=require('../types.js'),tsc_diagnostics_js_1=require('./tsc-diagnostics.js'),TSC_TIMEOUT_MS=0xafc8,CACHE_TTL_MS=0x2710,MAX_TSC_OUTPUT_BYTES=0x14*0x400*0x400,MAX_STDERR_BYTES=0x400*0x400;let cache;function resetDiagnosticsCache(){cache=undefined;}function resolveTscBin(_0x594d8f){let _0x59cf46=path['resolve'](_0x594d8f);for(;;){const _0x344cf2=path['join'](_0x59cf46,'node_modules','typescript','bin','tsc');if(fs['existsSync'](_0x344cf2))return _0x344cf2;const _0x411e5b=path['dirname'](_0x59cf46);if(_0x411e5b===_0x59cf46)break;_0x59cf46=_0x411e5b;}try{if(typeof __dirname!=='undefined'){const _0x21afb6=path['resolve'](__dirname,'..','..','..','..','..','..','node_modules','typescript','bin','tsc');if(fs['existsSync'](_0x21afb6))return _0x21afb6;}}catch{}return undefined;}function runTsc(_0x4f5c3f,_0x30ac1b,_0x53a662,_0x49e1ee){return new Promise(_0x545c73=>{if(_0x49e1ee?.['aborted']){_0x545c73({'code':null,'stdout':'','stderr':'','timedOut':![],'aborted':!![]});return;}let _0x2b6923;try{_0x2b6923=(0x0,child_process_1['spawn'])(process['execPath'],[_0x4f5c3f,'--noEmit','--pretty','false','-p',_0x53a662],{'cwd':_0x30ac1b,'windowsHide':!![],'stdio':['ignore','pipe','pipe']});}catch(_0x518291){_0x545c73({'code':null,'stdout':'','stderr':String(_0x518291),'timedOut':![],'aborted':![]});return;}let _0x11d5b6='',_0x16b054='',_0x3c4170=![];const _0x849c86=_0x1b03b9=>{if(_0x3c4170)return;_0x3c4170=!![],clearTimeout(_0x1729de),_0x49e1ee?.['removeEventListener']('abort',_0x40440e),_0x545c73(_0x1b03b9);},_0x1729de=setTimeout(()=>{_0x2b6923['kill'](),_0x849c86({'code':null,'stdout':_0x11d5b6,'stderr':_0x16b054,'timedOut':!![],'aborted':![]});},TSC_TIMEOUT_MS),_0x40440e=()=>{_0x2b6923['kill'](),_0x849c86({'code':null,'stdout':_0x11d5b6,'stderr':_0x16b054,'timedOut':![],'aborted':!![]});};_0x49e1ee?.['addEventListener']('abort',_0x40440e,{'once':!![]}),_0x2b6923['stdout']?.['on']('data',_0x48bf30=>{if(_0x11d5b6['length']<MAX_TSC_OUTPUT_BYTES)_0x11d5b6+=_0x48bf30['toString']('utf8');}),_0x2b6923['stderr']?.['on']('data',_0x1a3c93=>{if(_0x16b054['length']<MAX_STDERR_BYTES)_0x16b054+=_0x1a3c93['toString']('utf8');}),_0x2b6923['on']('error',_0x4fd8b9=>{_0x849c86({'code':null,'stdout':_0x11d5b6,'stderr':''+_0x16b054+_0x4fd8b9['message'],'timedOut':![],'aborted':![]});}),_0x2b6923['on']('close',_0x28aebc=>{_0x849c86({'code':_0x28aebc,'stdout':_0x11d5b6,'stderr':_0x16b054,'timedOut':![],'aborted':![]});});});}async function collectDiagnostics(_0x2a26a2,_0x2ae100=![],_0x20b0c1){const _0x444984=(0x0,tsc_diagnostics_js_1['findUp'])('tsconfig.json',_0x2a26a2);if(!_0x444984)return{'ok':![],'reason':'no\x20tsconfig.json\x20found\x20from\x20'+_0x2a26a2+'\x20—\x20diagnostics\x20require\x20a\x20TypeScript\x20project'};const _0x3a772b=path['dirname'](_0x444984);if(!_0x2ae100&&cache&&cache['tsconfigPath']===_0x444984&&Date['now']()-cache['at']<CACHE_TTL_MS)return{'ok':!![],'snapshot':cache['snapshot']};const _0x3c799c=resolveTscBin(_0x2a26a2);if(!_0x3c799c)return{'ok':![],'reason':'typescript\x20is\x20not\x20installed\x20(no\x20node_modules/typescript)\x20—\x20cannot\x20run\x20tsc'};const _0x34dae3=await runTsc(_0x3c799c,_0x3a772b,_0x444984,_0x20b0c1);if(_0x34dae3['aborted'])return{'ok':![],'reason':'aborted'};if(_0x34dae3['timedOut'])return{'ok':![],'reason':'tsc\x20timed\x20out\x20after\x20'+Math['round'](TSC_TIMEOUT_MS/0x3e8)+'s'};if(_0x34dae3['code']===null&&!_0x34dae3['stdout'])return{'ok':![],'reason':'tsc\x20failed\x20to\x20start:\x20'+(_0x34dae3['stderr']['trim']()||'unknown\x20error')};const {diagnostics:_0x268ac3,unlocated:_0x1c9819}=(0x0,tsc_diagnostics_js_1['parseTscOutput'])(_0x34dae3['stdout'],_0x3a772b),_0x3c92b4={'tsconfigPath':_0x444984,'projectRoot':_0x3a772b,'diagnostics':_0x268ac3,'unlocated':_0x1c9819,'generatedAt':Date['now']()};return cache={'tsconfigPath':_0x444984,'at':_0x3c92b4['generatedAt'],'snapshot':_0x3c92b4},{'ok':!![],'snapshot':_0x3c92b4};}const definition={'timeoutMs':0x7530,'name':'diagnostics','description':'Run\x20the\x20TypeScript\x20compiler\x20(tsc\x20--noEmit)\x20and\x20report\x20diagnostics\x20(errors/warnings)\x20per\x20file.\x20Use\x20after\x20making\x20code\x20changes\x20to\x20verify\x20they\x20compile;\x20optionally\x20filter\x20to\x20specific\x20files.\x20Results\x20are\x20cached\x20for\x20a\x20few\x20seconds.','parameters':{'type':'object','required':[],'properties':{'files':{'type':'array','items':{'type':'string','description':'Path\x20to\x20a\x20file\x20(relative\x20or\x20absolute).'},'description':'Only\x20report\x20these\x20files\x20(relative\x20or\x20absolute\x20paths).\x20Default:\x20whole\x20project.'},'refresh':{'type':'boolean','description':'Force\x20a\x20fresh\x20tsc\x20run\x20instead\x20of\x20reusing\x20the\x20recent\x20cache.'}}}};function createDiagnosticsTool(){return{'definition':definition,async 'execute'(_0x103aee,_0x20670e,_0x33db88,_0x28388d,_0x3cb441){const _0x27e290=_0x3cb441?.['cwd']??process['cwd'](),_0x488445=Array['isArray'](_0x20670e['files'])?_0x20670e['files']['map'](String):[],_0x572f6c=Boolean(_0x20670e['refresh']),_0x534007=await collectDiagnostics(_0x27e290,_0x572f6c,_0x33db88);if(!_0x534007['ok'])return(0x0,types_js_1['textResult'])('Diagnostics\x20unavailable:\x20'+_0x534007['reason']+'.');const _0x4ebfc7=(0x0,tsc_diagnostics_js_1['pickFiles'])(_0x534007['snapshot']['diagnostics'],_0x488445,_0x27e290),_0x4bfe03=Object['entries'](_0x4ebfc7)['sort'](([_0x3be25e],[_0x357699])=>_0x3be25e['localeCompare'](_0x357699));let _0x3745f1=0x0,_0x5a80d1=0x0;const _0x3fe7e3=[];for(const [_0x550c76,_0x4b5299]of _0x4bfe03){for(const _0xd096f0 of _0x4b5299){if(_0xd096f0['severity']===0x1)_0x3745f1+=0x1;else{if(_0xd096f0['severity']===0x2)_0x5a80d1+=0x1;}}const _0x5e78d0=(0x0,tsc_diagnostics_js_1['report'])(_0x550c76,_0x4b5299);if(_0x5e78d0)_0x3fe7e3['push'](_0x5e78d0);}const _0x30bdd8=_0x488445['length']>0x0?'\x20(filtered\x20to\x20'+_0x488445['length']+'\x20path(s))':'',_0x29e779=_0x488445['length']===0x0&&_0x534007['snapshot']['unlocated']['length']>0x0?',\x20'+_0x534007['snapshot']['unlocated']['length']+'\x20project-level\x20message(s)':'',_0x3957f6='Diagnostics:\x20'+_0x3745f1+'\x20error(s),\x20'+_0x5a80d1+'\x20warning(s)\x20across\x20'+_0x4bfe03['length']+'\x20file(s)'+_0x29e779+_0x30bdd8+'.',_0x8ff4b1=[_0x3957f6];if(_0x3fe7e3['length']>0x0)_0x8ff4b1['push']('',_0x3fe7e3['join']('\x0a\x0a'));return _0x488445['length']===0x0&&_0x534007['snapshot']['unlocated']['length']>0x0&&_0x8ff4b1['push']('','Project-level:',..._0x534007['snapshot']['unlocated']['slice'](0x0,tsc_diagnostics_js_1['DIAGNOSTICS_MAX_PER_FILE'])),_0x488445['length']>0x0&&_0x4bfe03['length']===0x0&&_0x534007['snapshot']['unlocated']['length']===0x0&&_0x8ff4b1['push']('','No\x20diagnostics\x20for:\x20'+_0x488445['join'](',\x20')),(0x0,types_js_1['textResult'])(_0x8ff4b1['join']('\x0a'));}};}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x9e3c71,_0x13073a,_0x17a713,_0xd6f817){if(_0xd6f817===undefined)_0xd6f817=_0x17a713;var _0x255687=Object['getOwnPropertyDescriptor'](_0x13073a,_0x17a713);(!_0x255687||('get'in _0x255687?!_0x13073a['__esModule']:_0x255687['writable']||_0x255687['configurable']))&&(_0x255687={'enumerable':!![],'get':function(){return _0x13073a[_0x17a713];}}),Object['defineProperty'](_0x9e3c71,_0xd6f817,_0x255687);}:function(_0x176499,_0x49e40c,_0x5e66e8,_0x3c51ac){if(_0x3c51ac===undefined)_0x3c51ac=_0x5e66e8;_0x176499[_0x3c51ac]=_0x49e40c[_0x5e66e8];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x5d458a,_0x1b1501){Object['defineProperty'](_0x5d458a,'default',{'enumerable':!![],'value':_0x1b1501});}:function(_0x52366c,_0x1d13a5){_0x52366c['default']=_0x1d13a5;}),__importStar=this&&this['__importStar']||(function(){var _0x402a36=function(_0x5e46f4){return _0x402a36=Object['getOwnPropertyNames']||function(_0x19fc36){var _0x479b8f=[];for(var _0x53c92c in _0x19fc36)if(Object['prototype']['hasOwnProperty']['call'](_0x19fc36,_0x53c92c))_0x479b8f[_0x479b8f['length']]=_0x53c92c;return _0x479b8f;},_0x402a36(_0x5e46f4);};return function(_0x396772){if(_0x396772&&_0x396772['__esModule'])return _0x396772;var _0x26a720={};if(_0x396772!=null){for(var _0x232a5e=_0x402a36(_0x396772),_0x3436f9=0x0;_0x3436f9<_0x232a5e['length'];_0x3436f9++)if(_0x232a5e[_0x3436f9]!=='default')__createBinding(_0x26a720,_0x396772,_0x232a5e[_0x3436f9]);}return __setModuleDefault(_0x26a720,_0x396772),_0x26a720;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['resetDiagnosticsCache']=resetDiagnosticsCache,exports['resolveTscBin']=resolveTscBin,exports['collectDiagnostics']=collectDiagnostics,exports['createDiagnosticsTool']=createDiagnosticsTool;const child_process_1=require('child_process'),fs=__importStar(require('fs')),path=__importStar(require('path')),types_js_1=require('../types.js'),tsc_diagnostics_js_1=require('./tsc-diagnostics.js'),TSC_TIMEOUT_MS=0xafc8,CACHE_TTL_MS=0x2710,MAX_TSC_OUTPUT_BYTES=0x14*0x400*0x400,MAX_STDERR_BYTES=0x400*0x400;let cache;function resetDiagnosticsCache(){cache=undefined;}function resolveTscBin(_0x3327ab){let _0x1de1d8=path['resolve'](_0x3327ab);for(;;){const _0x1d1322=path['join'](_0x1de1d8,'node_modules','typescript','bin','tsc');if(fs['existsSync'](_0x1d1322))return _0x1d1322;const _0xdbee04=path['dirname'](_0x1de1d8);if(_0xdbee04===_0x1de1d8)break;_0x1de1d8=_0xdbee04;}try{if(typeof __dirname!=='undefined'){const _0x4bcde7=path['resolve'](__dirname,'..','..','..','..','..','..','node_modules','typescript','bin','tsc');if(fs['existsSync'](_0x4bcde7))return _0x4bcde7;}}catch{}return undefined;}function runTsc(_0x402968,_0x539968,_0x2af5ac,_0x286675){return new Promise(_0x2ddfe1=>{if(_0x286675?.['aborted']){_0x2ddfe1({'code':null,'stdout':'','stderr':'','timedOut':![],'aborted':!![]});return;}let _0x2761c9;try{_0x2761c9=(0x0,child_process_1['spawn'])(process['execPath'],[_0x402968,'--noEmit','--pretty','false','-p',_0x2af5ac],{'cwd':_0x539968,'windowsHide':!![],'stdio':['ignore','pipe','pipe']});}catch(_0x1dfdec){_0x2ddfe1({'code':null,'stdout':'','stderr':String(_0x1dfdec),'timedOut':![],'aborted':![]});return;}let _0xceac43='',_0x1cdaf2='',_0x186621=![];const _0x5c23c8=_0x3ac6f9=>{if(_0x186621)return;_0x186621=!![],clearTimeout(_0x533d55),_0x286675?.['removeEventListener']('abort',_0x4500b1),_0x2ddfe1(_0x3ac6f9);},_0x533d55=setTimeout(()=>{_0x2761c9['kill'](),_0x5c23c8({'code':null,'stdout':_0xceac43,'stderr':_0x1cdaf2,'timedOut':!![],'aborted':![]});},TSC_TIMEOUT_MS),_0x4500b1=()=>{_0x2761c9['kill'](),_0x5c23c8({'code':null,'stdout':_0xceac43,'stderr':_0x1cdaf2,'timedOut':![],'aborted':!![]});};_0x286675?.['addEventListener']('abort',_0x4500b1,{'once':!![]}),_0x2761c9['stdout']?.['on']('data',_0x1d6826=>{if(_0xceac43['length']<MAX_TSC_OUTPUT_BYTES)_0xceac43+=_0x1d6826['toString']('utf8');}),_0x2761c9['stderr']?.['on']('data',_0x1dba9f=>{if(_0x1cdaf2['length']<MAX_STDERR_BYTES)_0x1cdaf2+=_0x1dba9f['toString']('utf8');}),_0x2761c9['on']('error',_0xdcfcd5=>{_0x5c23c8({'code':null,'stdout':_0xceac43,'stderr':''+_0x1cdaf2+_0xdcfcd5['message'],'timedOut':![],'aborted':![]});}),_0x2761c9['on']('close',_0x416d78=>{_0x5c23c8({'code':_0x416d78,'stdout':_0xceac43,'stderr':_0x1cdaf2,'timedOut':![],'aborted':![]});});});}async function collectDiagnostics(_0x1a05d8,_0x14a5e4=![],_0xbd3967){const _0x41e5a1=(0x0,tsc_diagnostics_js_1['findUp'])('tsconfig.json',_0x1a05d8);if(!_0x41e5a1)return{'ok':![],'reason':'no\x20tsconfig.json\x20found\x20from\x20'+_0x1a05d8+'\x20—\x20diagnostics\x20require\x20a\x20TypeScript\x20project'};const _0x25e1e8=path['dirname'](_0x41e5a1);if(!_0x14a5e4&&cache&&cache['tsconfigPath']===_0x41e5a1&&Date['now']()-cache['at']<CACHE_TTL_MS)return{'ok':!![],'snapshot':cache['snapshot']};const _0x561b12=resolveTscBin(_0x1a05d8);if(!_0x561b12)return{'ok':![],'reason':'typescript\x20is\x20not\x20installed\x20(no\x20node_modules/typescript)\x20—\x20cannot\x20run\x20tsc'};const _0x3c6e2a=await runTsc(_0x561b12,_0x25e1e8,_0x41e5a1,_0xbd3967);if(_0x3c6e2a['aborted'])return{'ok':![],'reason':'aborted'};if(_0x3c6e2a['timedOut'])return{'ok':![],'reason':'tsc\x20timed\x20out\x20after\x20'+Math['round'](TSC_TIMEOUT_MS/0x3e8)+'s'};if(_0x3c6e2a['code']===null&&!_0x3c6e2a['stdout'])return{'ok':![],'reason':'tsc\x20failed\x20to\x20start:\x20'+(_0x3c6e2a['stderr']['trim']()||'unknown\x20error')};const {diagnostics:_0x2cba85,unlocated:_0x49f942}=(0x0,tsc_diagnostics_js_1['parseTscOutput'])(_0x3c6e2a['stdout'],_0x25e1e8),_0x59f89c={'tsconfigPath':_0x41e5a1,'projectRoot':_0x25e1e8,'diagnostics':_0x2cba85,'unlocated':_0x49f942,'generatedAt':Date['now']()};return cache={'tsconfigPath':_0x41e5a1,'at':_0x59f89c['generatedAt'],'snapshot':_0x59f89c},{'ok':!![],'snapshot':_0x59f89c};}const definition={'timeoutMs':0x7530,'name':'diagnostics','description':'Run\x20the\x20TypeScript\x20compiler\x20(tsc\x20--noEmit)\x20and\x20report\x20diagnostics\x20(errors/warnings)\x20per\x20file.\x20Use\x20after\x20making\x20code\x20changes\x20to\x20verify\x20they\x20compile;\x20optionally\x20filter\x20to\x20specific\x20files.\x20Results\x20are\x20cached\x20for\x20a\x20few\x20seconds.','parameters':{'type':'object','required':[],'properties':{'files':{'type':'array','items':{'type':'string','description':'Path\x20to\x20a\x20file\x20(relative\x20or\x20absolute).'},'description':'Only\x20report\x20these\x20files\x20(relative\x20or\x20absolute\x20paths).\x20Default:\x20whole\x20project.'},'refresh':{'type':'boolean','description':'Force\x20a\x20fresh\x20tsc\x20run\x20instead\x20of\x20reusing\x20the\x20recent\x20cache.'}}}};function createDiagnosticsTool(){return{'definition':definition,async 'execute'(_0x5b3c2c,_0x50e331,_0x225ba8,_0x5790a8,_0x4a279c){const _0x4c3fa1=_0x4a279c?.['cwd']??process['cwd'](),_0x1a88ee=Array['isArray'](_0x50e331['files'])?_0x50e331['files']['map'](String):[],_0x252f77=Boolean(_0x50e331['refresh']),_0x91a981=await collectDiagnostics(_0x4c3fa1,_0x252f77,_0x225ba8);if(!_0x91a981['ok'])return(0x0,types_js_1['textResult'])('Diagnostics\x20unavailable:\x20'+_0x91a981['reason']+'.');const _0x441627=(0x0,tsc_diagnostics_js_1['pickFiles'])(_0x91a981['snapshot']['diagnostics'],_0x1a88ee,_0x4c3fa1),_0x6404b3=Object['entries'](_0x441627)['sort'](([_0x3559db],[_0x4e1fd0])=>_0x3559db['localeCompare'](_0x4e1fd0));let _0x422497=0x0,_0x1c85d7=0x0;const _0x3c06f9=[];for(const [_0xf241de,_0x244fda]of _0x6404b3){for(const _0x5b1846 of _0x244fda){if(_0x5b1846['severity']===0x1)_0x422497+=0x1;else{if(_0x5b1846['severity']===0x2)_0x1c85d7+=0x1;}}const _0x4d868e=(0x0,tsc_diagnostics_js_1['report'])(_0xf241de,_0x244fda);if(_0x4d868e)_0x3c06f9['push'](_0x4d868e);}const _0x5e21da=_0x1a88ee['length']>0x0?'\x20(filtered\x20to\x20'+_0x1a88ee['length']+'\x20path(s))':'',_0x218567=_0x1a88ee['length']===0x0&&_0x91a981['snapshot']['unlocated']['length']>0x0?',\x20'+_0x91a981['snapshot']['unlocated']['length']+'\x20project-level\x20message(s)':'',_0x2be2ce='Diagnostics:\x20'+_0x422497+'\x20error(s),\x20'+_0x1c85d7+'\x20warning(s)\x20across\x20'+_0x6404b3['length']+'\x20file(s)'+_0x218567+_0x5e21da+'.',_0x389054=[_0x2be2ce];if(_0x3c06f9['length']>0x0)_0x389054['push']('',_0x3c06f9['join']('\x0a\x0a'));return _0x1a88ee['length']===0x0&&_0x91a981['snapshot']['unlocated']['length']>0x0&&_0x389054['push']('','Project-level:',..._0x91a981['snapshot']['unlocated']['slice'](0x0,tsc_diagnostics_js_1['DIAGNOSTICS_MAX_PER_FILE'])),_0x1a88ee['length']>0x0&&_0x6404b3['length']===0x0&&_0x91a981['snapshot']['unlocated']['length']===0x0&&_0x389054['push']('','No\x20diagnostics\x20for:\x20'+_0x1a88ee['join'](',\x20')),(0x0,types_js_1['textResult'])(_0x389054['join']('\x0a'));}};}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x187f6f,_0x4ecce6,_0x6985c3,_0x5679e6){if(_0x5679e6===undefined)_0x5679e6=_0x6985c3;var _0x5e5942=Object['getOwnPropertyDescriptor'](_0x4ecce6,_0x6985c3);(!_0x5e5942||('get'in _0x5e5942?!_0x4ecce6['__esModule']:_0x5e5942['writable']||_0x5e5942['configurable']))&&(_0x5e5942={'enumerable':!![],'get':function(){return _0x4ecce6[_0x6985c3];}}),Object['defineProperty'](_0x187f6f,_0x5679e6,_0x5e5942);}:function(_0x2a9031,_0x503a75,_0x1a2bc3,_0x433418){if(_0x433418===undefined)_0x433418=_0x1a2bc3;_0x2a9031[_0x433418]=_0x503a75[_0x1a2bc3];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x32282c,_0xce4c3f){Object['defineProperty'](_0x32282c,'default',{'enumerable':!![],'value':_0xce4c3f});}:function(_0x15d233,_0x542441){_0x15d233['default']=_0x542441;}),__importStar=this&&this['__importStar']||(function(){var _0x3d40d3=function(_0x1bb8a9){return _0x3d40d3=Object['getOwnPropertyNames']||function(_0x4df068){var _0x5b3323=[];for(var _0x2c898a in _0x4df068)if(Object['prototype']['hasOwnProperty']['call'](_0x4df068,_0x2c898a))_0x5b3323[_0x5b3323['length']]=_0x2c898a;return _0x5b3323;},_0x3d40d3(_0x1bb8a9);};return function(_0x555b4a){if(_0x555b4a&&_0x555b4a['__esModule'])return _0x555b4a;var _0x3b8747={};if(_0x555b4a!=null){for(var _0x183fbc=_0x3d40d3(_0x555b4a),_0x5645d5=0x0;_0x5645d5<_0x183fbc['length'];_0x5645d5++)if(_0x183fbc[_0x5645d5]!=='default')__createBinding(_0x3b8747,_0x555b4a,_0x183fbc[_0x5645d5]);}return __setModuleDefault(_0x3b8747,_0x555b4a),_0x3b8747;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['DIAGNOSTICS_MAX_PER_FILE']=void 0x0,exports['pretty']=pretty,exports['report']=report,exports['filterDiagnostics']=filterDiagnostics,exports['diagnosticsPathKey']=diagnosticsPathKey,exports['pickFiles']=pickFiles,exports['parseTscOutput']=parseTscOutput,exports['isCheckableFile']=isCheckableFile,exports['syntaxDiagnostics']=syntaxDiagnostics,exports['syntaxNote']=syntaxNote,exports['findUp']=findUp;const fs=__importStar(require('fs')),path=__importStar(require('path')),SEVERITY_LABEL={0x1:'ERROR',0x2:'WARN',0x3:'INFO',0x4:'HINT'};exports['DIAGNOSTICS_MAX_PER_FILE']=0x14;const MAX_SYNTAX_CHECK_BYTES=0xf4240;function pretty(_0x176f52){const _0x133054=SEVERITY_LABEL[_0x176f52['severity']||0x1]??'ERROR',_0x454806=_0x176f52['range']['start']['line']+0x1,_0x6db47f=_0x176f52['range']['start']['character']+0x1;return _0x133054+'\x20['+_0x454806+':'+_0x6db47f+']\x20'+_0x176f52['message'];}function report(_0x5e422d,_0x55a305){const _0x13d3d7=_0x55a305['filter'](_0x2be13a=>_0x2be13a['severity']===0x1);if(_0x13d3d7['length']===0x0)return'';const _0x20e8bc=_0x13d3d7['slice'](0x0,exports['DIAGNOSTICS_MAX_PER_FILE']),_0x4f68b0=_0x13d3d7['length']-exports['DIAGNOSTICS_MAX_PER_FILE'],_0x1760dd=_0x4f68b0>0x0?'\x0a...\x20and\x20'+_0x4f68b0+'\x20more':'';return'<diagnostics\x20file=\x22'+_0x5e422d+'\x22>\x0a'+_0x20e8bc['map'](pretty)['join']('\x0a')+_0x1760dd+'\x0a</diagnostics>';}function filterDiagnostics(_0x32190c,_0x27f8d2){const _0x4a7d8a={};for(const _0x3e5c1c of _0x27f8d2){const _0x5df811=_0x32190c[_0x3e5c1c];if(_0x5df811)_0x4a7d8a[_0x3e5c1c]=_0x5df811;}return _0x4a7d8a;}function diagnosticsPathKey(_0x4f7e2a,_0x917e81){const _0x29218d=path['resolve'](_0x917e81,_0x4f7e2a);return process['platform']==='win32'?_0x29218d['replace'](/\//g,'\x5c')['toLowerCase']():_0x29218d;}function pickFiles(_0x1bbfb7,_0x5e8109,_0x515722){if(_0x5e8109['length']===0x0)return _0x1bbfb7;const _0x2ba905=new Set(_0x5e8109['map'](_0x255a0f=>diagnosticsPathKey(_0x255a0f,_0x515722))),_0x90b04b={};for(const [_0x392dde,_0x13888b]of Object['entries'](_0x1bbfb7)){if(_0x2ba905['has'](diagnosticsPathKey(_0x392dde,_0x515722)))_0x90b04b[_0x392dde]=_0x13888b;}return _0x90b04b;}const TSC_LINE=/^(.+?)\((\d+),(\d+)\):\s+(error|warning|message|info)\s+(TS\d+):\s*(.*)$/i,TSC_GLOBAL=/^(error|warning|message|info)\s+(TS\d+):\s*(.*)$/i,KIND_SEVERITY={'error':0x1,'warning':0x2,'info':0x3,'message':0x4};function parseTscOutput(_0x16639d,_0x1d42a2){const _0x48141c={},_0x105b1e=[],_0x366e28=new Map();let _0x27194b;for(const _0x4d2948 of _0x16639d['split'](/\r?\n/)){if(_0x4d2948['trim']()===''){_0x27194b=undefined;continue;}const _0x4be0d9=TSC_LINE['exec'](_0x4d2948);if(_0x4be0d9){const [,_0x50aa17,_0x5689f9,_0x22e0d1,_0x436381,_0x5864d0,_0x3bdd1b]=_0x4be0d9,_0x2e73f7=path['isAbsolute'](_0x50aa17)?path['normalize'](_0x50aa17):path['resolve'](_0x1d42a2,_0x50aa17),_0x522213=diagnosticsPathKey(_0x2e73f7,_0x1d42a2),_0x4d7c10=_0x366e28['get'](_0x522213)??_0x2e73f7;_0x366e28['set'](_0x522213,_0x4d7c10);const _0x2c5744=_0x48141c[_0x4d7c10]??=[];_0x2c5744['push']({'range':{'start':{'line':Number(_0x5689f9)-0x1,'character':Number(_0x22e0d1)-0x1}},'severity':KIND_SEVERITY[_0x436381['toLowerCase']()]??0x1,'message':_0x5864d0['toUpperCase']()+':\x20'+_0x3bdd1b,'code':_0x5864d0['toUpperCase'](),'source':'tsc'}),_0x27194b=_0x2c5744;continue;}const _0x250bf2=TSC_GLOBAL['exec'](_0x4d2948);if(_0x250bf2){_0x105b1e['push'](_0x4d2948['trim']()),_0x27194b=undefined;continue;}if(_0x27194b?.['length']&&/^\s/['test'](_0x4d2948)){const _0x6131e2=_0x27194b[_0x27194b['length']-0x1];_0x6131e2['message']+='\x20'+_0x4d2948['trim']();}}return{'diagnostics':_0x48141c,'unlocated':_0x105b1e};}const CHECKABLE=/\.(tsx?|mts|cts|jsx)$/i;function isCheckableFile(_0xdbf777){return CHECKABLE['test'](_0xdbf777);}async function syntaxDiagnostics(_0x29a11d,_0x4addab){if(!isCheckableFile(_0x4addab))return[];if(Buffer['byteLength'](_0x29a11d,'utf8')>MAX_SYNTAX_CHECK_BYTES)return[];const _0x3821dd=await Promise['resolve']()['then'](()=>__importStar(require('typescript'))),_0x9dbd85=/\.(tsx|jsx)$/i['test'](_0x4addab),_0x25fe75=_0x3821dd['transpileModule'](_0x29a11d,{'fileName':_0x4addab,'reportDiagnostics':!![],'compilerOptions':{'target':_0x3821dd['ScriptTarget']['ES2022'],'module':_0x3821dd['ModuleKind']['ESNext'],'jsx':_0x9dbd85?_0x3821dd['JsxEmit']['React']:_0x3821dd['JsxEmit']['Preserve']}}),_0x24a209=_0x25fe75['diagnostics']??[];return _0x24a209['map'](_0x3561bf=>{let _0x46b559=0x0,_0x145f82=0x0;if(_0x3561bf['file']&&_0x3561bf['start']!==undefined){const _0x5476ab=_0x3561bf['file']['getLineAndCharacterOfPosition'](_0x3561bf['start']);_0x46b559=_0x5476ab['line'],_0x145f82=_0x5476ab['character'];}const _0x154221=_0x3821dd['flattenDiagnosticMessageText'](_0x3561bf['messageText'],'\x20');return{'range':{'start':{'line':_0x46b559,'character':_0x145f82}},'severity':_0x3561bf['category']===_0x3821dd['DiagnosticCategory']['Error']?0x1:_0x3561bf['category']===_0x3821dd['DiagnosticCategory']['Warning']?0x2:0x3,'message':_0x154221,'source':'typescript'};});}async function syntaxNote(_0x44b627,_0x1eb2b5){try{const _0x3328bd=await syntaxDiagnostics(_0x1eb2b5,_0x44b627);if(_0x3328bd['length']===0x0)return'';const _0x28586f=report(_0x44b627,_0x3328bd);return _0x28586f?'\x0a'+_0x28586f:'';}catch{return'';}}function findUp(_0x1bd38e,_0x3bf6d8){let _0x2b17c3=path['resolve'](_0x3bf6d8);for(;;){const _0x5757b3=path['join'](_0x2b17c3,_0x1bd38e);try{if(fs['existsSync'](_0x5757b3))return _0x5757b3;}catch{}const _0x44ccd9=path['dirname'](_0x2b17c3);if(_0x44ccd9===_0x2b17c3)return undefined;_0x2b17c3=_0x44ccd9;}}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x1a2875,_0x52195d,_0x2a20bf,_0x234bee){if(_0x234bee===undefined)_0x234bee=_0x2a20bf;var _0x5ea113=Object['getOwnPropertyDescriptor'](_0x52195d,_0x2a20bf);(!_0x5ea113||('get'in _0x5ea113?!_0x52195d['__esModule']:_0x5ea113['writable']||_0x5ea113['configurable']))&&(_0x5ea113={'enumerable':!![],'get':function(){return _0x52195d[_0x2a20bf];}}),Object['defineProperty'](_0x1a2875,_0x234bee,_0x5ea113);}:function(_0x2c2b3f,_0x5c8312,_0x20b537,_0x3d6f2c){if(_0x3d6f2c===undefined)_0x3d6f2c=_0x20b537;_0x2c2b3f[_0x3d6f2c]=_0x5c8312[_0x20b537];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x3310d1,_0x3203b3){Object['defineProperty'](_0x3310d1,'default',{'enumerable':!![],'value':_0x3203b3});}:function(_0x527b89,_0xf7ab94){_0x527b89['default']=_0xf7ab94;}),__importStar=this&&this['__importStar']||(function(){var _0x191c83=function(_0x186057){return _0x191c83=Object['getOwnPropertyNames']||function(_0x5c7c0a){var _0x2e2ae2=[];for(var _0x3227c5 in _0x5c7c0a)if(Object['prototype']['hasOwnProperty']['call'](_0x5c7c0a,_0x3227c5))_0x2e2ae2[_0x2e2ae2['length']]=_0x3227c5;return _0x2e2ae2;},_0x191c83(_0x186057);};return function(_0x3a1473){if(_0x3a1473&&_0x3a1473['__esModule'])return _0x3a1473;var _0x3d9d6a={};if(_0x3a1473!=null){for(var _0x6e6c18=_0x191c83(_0x3a1473),_0x141217=0x0;_0x141217<_0x6e6c18['length'];_0x141217++)if(_0x6e6c18[_0x141217]!=='default')__createBinding(_0x3d9d6a,_0x3a1473,_0x6e6c18[_0x141217]);}return __setModuleDefault(_0x3d9d6a,_0x3a1473),_0x3d9d6a;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['DIAGNOSTICS_MAX_PER_FILE']=void 0x0,exports['pretty']=pretty,exports['report']=report,exports['filterDiagnostics']=filterDiagnostics,exports['diagnosticsPathKey']=diagnosticsPathKey,exports['pickFiles']=pickFiles,exports['parseTscOutput']=parseTscOutput,exports['isCheckableFile']=isCheckableFile,exports['syntaxDiagnostics']=syntaxDiagnostics,exports['syntaxNote']=syntaxNote,exports['findUp']=findUp;const fs=__importStar(require('fs')),path=__importStar(require('path')),SEVERITY_LABEL={0x1:'ERROR',0x2:'WARN',0x3:'INFO',0x4:'HINT'};exports['DIAGNOSTICS_MAX_PER_FILE']=0x14;const MAX_SYNTAX_CHECK_BYTES=0xf4240;function pretty(_0x22516e){const _0x39b9bf=SEVERITY_LABEL[_0x22516e['severity']||0x1]??'ERROR',_0x36b2f1=_0x22516e['range']['start']['line']+0x1,_0x90cbaa=_0x22516e['range']['start']['character']+0x1;return _0x39b9bf+'\x20['+_0x36b2f1+':'+_0x90cbaa+']\x20'+_0x22516e['message'];}function report(_0xcfe2bd,_0x2dd366){const _0x464182=_0x2dd366['filter'](_0x3bdb0=>_0x3bdb0['severity']===0x1);if(_0x464182['length']===0x0)return'';const _0x5694d7=_0x464182['slice'](0x0,exports['DIAGNOSTICS_MAX_PER_FILE']),_0x4c187b=_0x464182['length']-exports['DIAGNOSTICS_MAX_PER_FILE'],_0x20a62d=_0x4c187b>0x0?'\x0a...\x20and\x20'+_0x4c187b+'\x20more':'';return'<diagnostics\x20file=\x22'+_0xcfe2bd+'\x22>\x0a'+_0x5694d7['map'](pretty)['join']('\x0a')+_0x20a62d+'\x0a</diagnostics>';}function filterDiagnostics(_0x381896,_0x22dd61){const _0x391df4={};for(const _0x241392 of _0x22dd61){const _0x33c880=_0x381896[_0x241392];if(_0x33c880)_0x391df4[_0x241392]=_0x33c880;}return _0x391df4;}function diagnosticsPathKey(_0x2f5cb2,_0x3be6e8){const _0x449604=path['resolve'](_0x3be6e8,_0x2f5cb2);return process['platform']==='win32'?_0x449604['replace'](/\//g,'\x5c')['toLowerCase']():_0x449604;}function pickFiles(_0x40e5d2,_0x3bd220,_0x204ac0){if(_0x3bd220['length']===0x0)return _0x40e5d2;const _0x597afb=new Set(_0x3bd220['map'](_0x1fae7a=>diagnosticsPathKey(_0x1fae7a,_0x204ac0))),_0x4d4ffa={};for(const [_0x2b99f5,_0x22f96c]of Object['entries'](_0x40e5d2)){if(_0x597afb['has'](diagnosticsPathKey(_0x2b99f5,_0x204ac0)))_0x4d4ffa[_0x2b99f5]=_0x22f96c;}return _0x4d4ffa;}const TSC_LINE=/^(.+?)\((\d+),(\d+)\):\s+(error|warning|message|info)\s+(TS\d+):\s*(.*)$/i,TSC_GLOBAL=/^(error|warning|message|info)\s+(TS\d+):\s*(.*)$/i,KIND_SEVERITY={'error':0x1,'warning':0x2,'info':0x3,'message':0x4};function parseTscOutput(_0x41800d,_0x2e2023){const _0x28da19={},_0x462cff=[],_0x1819d6=new Map();let _0x5aa056;for(const _0xd9cd78 of _0x41800d['split'](/\r?\n/)){if(_0xd9cd78['trim']()===''){_0x5aa056=undefined;continue;}const _0x1363d4=TSC_LINE['exec'](_0xd9cd78);if(_0x1363d4){const [,_0x44bcc9,_0x28fd3f,_0xc8b6c1,_0xbb3432,_0x268413,_0x1ee5c9]=_0x1363d4,_0x44c1a7=path['isAbsolute'](_0x44bcc9)?path['normalize'](_0x44bcc9):path['resolve'](_0x2e2023,_0x44bcc9),_0x2e119c=diagnosticsPathKey(_0x44c1a7,_0x2e2023),_0x674314=_0x1819d6['get'](_0x2e119c)??_0x44c1a7;_0x1819d6['set'](_0x2e119c,_0x674314);const _0x1b089c=_0x28da19[_0x674314]??=[];_0x1b089c['push']({'range':{'start':{'line':Number(_0x28fd3f)-0x1,'character':Number(_0xc8b6c1)-0x1}},'severity':KIND_SEVERITY[_0xbb3432['toLowerCase']()]??0x1,'message':_0x268413['toUpperCase']()+':\x20'+_0x1ee5c9,'code':_0x268413['toUpperCase'](),'source':'tsc'}),_0x5aa056=_0x1b089c;continue;}const _0x224ad9=TSC_GLOBAL['exec'](_0xd9cd78);if(_0x224ad9){_0x462cff['push'](_0xd9cd78['trim']()),_0x5aa056=undefined;continue;}if(_0x5aa056?.['length']&&/^\s/['test'](_0xd9cd78)){const _0x17932d=_0x5aa056[_0x5aa056['length']-0x1];_0x17932d['message']+='\x20'+_0xd9cd78['trim']();}}return{'diagnostics':_0x28da19,'unlocated':_0x462cff};}const CHECKABLE=/\.(tsx?|mts|cts|jsx)$/i;function isCheckableFile(_0x5287b1){return CHECKABLE['test'](_0x5287b1);}async function syntaxDiagnostics(_0x53a499,_0x4a60b9){if(!isCheckableFile(_0x4a60b9))return[];if(Buffer['byteLength'](_0x53a499,'utf8')>MAX_SYNTAX_CHECK_BYTES)return[];const _0x1b9d7a=await Promise['resolve']()['then'](()=>__importStar(require('typescript'))),_0x2d4c00=/\.(tsx|jsx)$/i['test'](_0x4a60b9),_0x449b74=_0x1b9d7a['transpileModule'](_0x53a499,{'fileName':_0x4a60b9,'reportDiagnostics':!![],'compilerOptions':{'target':_0x1b9d7a['ScriptTarget']['ES2022'],'module':_0x1b9d7a['ModuleKind']['ESNext'],'jsx':_0x2d4c00?_0x1b9d7a['JsxEmit']['React']:_0x1b9d7a['JsxEmit']['Preserve']}}),_0x434a1f=_0x449b74['diagnostics']??[];return _0x434a1f['map'](_0x3492f2=>{let _0x2ac2e1=0x0,_0x54fe09=0x0;if(_0x3492f2['file']&&_0x3492f2['start']!==undefined){const _0x3120c0=_0x3492f2['file']['getLineAndCharacterOfPosition'](_0x3492f2['start']);_0x2ac2e1=_0x3120c0['line'],_0x54fe09=_0x3120c0['character'];}const _0x44f328=_0x1b9d7a['flattenDiagnosticMessageText'](_0x3492f2['messageText'],'\x20');return{'range':{'start':{'line':_0x2ac2e1,'character':_0x54fe09}},'severity':_0x3492f2['category']===_0x1b9d7a['DiagnosticCategory']['Error']?0x1:_0x3492f2['category']===_0x1b9d7a['DiagnosticCategory']['Warning']?0x2:0x3,'message':_0x44f328,'source':'typescript'};});}async function syntaxNote(_0x1656b5,_0x2386ba){try{const _0x115e1a=await syntaxDiagnostics(_0x2386ba,_0x1656b5);if(_0x115e1a['length']===0x0)return'';const _0x535df6=report(_0x1656b5,_0x115e1a);return _0x535df6?'\x0a'+_0x535df6:'';}catch{return'';}}function findUp(_0x36acfd,_0x2801a6){let _0x1073e6=path['resolve'](_0x2801a6);for(;;){const _0x3635ee=path['join'](_0x1073e6,_0x36acfd);try{if(fs['existsSync'](_0x3635ee))return _0x3635ee;}catch{}const _0x299d46=path['dirname'](_0x1073e6);if(_0x299d46===_0x1073e6)return undefined;_0x1073e6=_0x299d46;}}
@@ -1 +1 @@
1
- 'use strict';function _0xb6a2(){var _0x558137=['startsWith','defineProperty','6465846MAzIjT','homedir','existsSync','546813HWlkFj','90MORvvW','resolveConstrainedPath','prototype','isDirectory','getOwnPropertyDescriptor','map','assertExternalDirectory','statSync','textResult','Access\x20denied:\x20','cwd','168JksxPH','List\x20error:\x20','list_dir','__setModuleDefault','call','aborted','length','771267GOrblw','20388rrsZBa','Directory\x20not\x20found:\x20','name','configurable','573288RYiqbj','create','string','resolve','join','330569nzjwnp','Directory\x20to\x20list.\x20Default:\x20project\x20root.','slice','readdirSync','Not\x20a\x20directory:\x20','get','__esModule','default','5556166hpBTaU','hasOwnProperty','object','message','path'];_0xb6a2=function(){return _0x558137;};return _0xb6a2();}var _0x3abef4=_0x1db4;(function(_0x59ff07,_0x187411){var _0x2d66ad=_0x1db4,_0x5a5c70=_0x59ff07();while(!![]){try{var _0x5a48d7=-parseInt(_0x2d66ad(0x8f))/0x1+parseInt(_0x2d66ad(0xb9))/0x2+-parseInt(_0x2d66ad(0xb4))/0x3+parseInt(_0x2d66ad(0xb5))/0x4*(-parseInt(_0x2d66ad(0xa2))/0x5)+-parseInt(_0x2d66ad(0x9e))/0x6+parseInt(_0x2d66ad(0x97))/0x7+-parseInt(_0x2d66ad(0xad))/0x8*(-parseInt(_0x2d66ad(0xa1))/0x9);if(_0x5a48d7===_0x187411)break;else _0x5a5c70['push'](_0x5a5c70['shift']());}catch(_0x1a46ef){_0x5a5c70['push'](_0x5a5c70['shift']());}}}(_0xb6a2,0x924c2));var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x1619b7,_0x2af2a3,_0x5d3540,_0x30d5dd){var _0x594448=_0x1db4;if(_0x30d5dd===undefined)_0x30d5dd=_0x5d3540;var _0x33c347=Object[_0x594448(0xa6)](_0x2af2a3,_0x5d3540);(!_0x33c347||(_0x594448(0x94)in _0x33c347?!_0x2af2a3[_0x594448(0x95)]:_0x33c347['writable']||_0x33c347[_0x594448(0xb8)]))&&(_0x33c347={'enumerable':!![],'get':function(){return _0x2af2a3[_0x5d3540];}}),Object[_0x594448(0x9d)](_0x1619b7,_0x30d5dd,_0x33c347);}:function(_0x3ec08d,_0xcf0a1e,_0xa2c656,_0x59a121){if(_0x59a121===undefined)_0x59a121=_0xa2c656;_0x3ec08d[_0x59a121]=_0xcf0a1e[_0xa2c656];}),__setModuleDefault=this&&this[_0x3abef4(0xb0)]||(Object[_0x3abef4(0x8b)]?function(_0x1fc253,_0x36e1ed){var _0x51544c=_0x3abef4;Object[_0x51544c(0x9d)](_0x1fc253,_0x51544c(0x96),{'enumerable':!![],'value':_0x36e1ed});}:function(_0x1be09f,_0x54aaeb){var _0xe848d9=_0x3abef4;_0x1be09f[_0xe848d9(0x96)]=_0x54aaeb;}),__importStar=this&&this['__importStar']||(function(){var _0x32e165=function(_0x3a6c00){return _0x32e165=Object['getOwnPropertyNames']||function(_0x341b46){var _0x5fa77f=_0x1db4,_0x1def7c=[];for(var _0x2a1952 in _0x341b46)if(Object[_0x5fa77f(0xa4)][_0x5fa77f(0x98)][_0x5fa77f(0xb1)](_0x341b46,_0x2a1952))_0x1def7c[_0x1def7c[_0x5fa77f(0xb3)]]=_0x2a1952;return _0x1def7c;},_0x32e165(_0x3a6c00);};return function(_0x17258e){var _0x26114e=_0x1db4;if(_0x17258e&&_0x17258e['__esModule'])return _0x17258e;var _0x36cd17={};if(_0x17258e!=null){for(var _0x252923=_0x32e165(_0x17258e),_0x3b1867=0x0;_0x3b1867<_0x252923[_0x26114e(0xb3)];_0x3b1867++)if(_0x252923[_0x3b1867]!=='default')__createBinding(_0x36cd17,_0x17258e,_0x252923[_0x3b1867]);}return __setModuleDefault(_0x36cd17,_0x17258e),_0x36cd17;};}());Object[_0x3abef4(0x9d)](exports,'__esModule',{'value':!![]}),exports['createListDirTool']=createListDirTool;const fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require('path')),types_js_1=require('../types.js');function expandHome(_0x563375){var _0x41ab8b=_0x3abef4;if(_0x563375[_0x41ab8b(0x9c)]('~/')||_0x563375==='~')return path['join'](os[_0x41ab8b(0x9f)](),_0x563375[_0x41ab8b(0x91)](_0x563375==='~'?0x1:0x2));return _0x563375;}function _0x1db4(_0x1b79e5,_0x48f95f){_0x1b79e5=_0x1b79e5-0x8b;var _0xb6a2f6=_0xb6a2();var _0x1db488=_0xb6a2f6[_0x1b79e5];return _0x1db488;}const definition={'timeoutMs':0x7530,'name':_0x3abef4(0xaf),'description':'List\x20the\x20entries\x20of\x20a\x20directory.\x20Defaults\x20to\x20the\x20project\x20root.\x20Marks\x20directories\x20with\x20a\x20trailing\x20slash.','parameters':{'type':_0x3abef4(0x99),'required':[],'properties':{'path':{'type':_0x3abef4(0x8c),'description':_0x3abef4(0x90)}}}};function createListDirTool(){return{'definition':definition,async 'execute'(_0x3cfbf3,_0x32721d,_0x16e803,_0x5e0ab9,_0x273963){var _0x53b8ef=_0x1db4;try{if(_0x16e803?.[_0x53b8ef(0xb2)])return(0x0,types_js_1[_0x53b8ef(0xaa)])(_0x53b8ef(0xb2),!![]);const _0x4b7d2c=_0x273963,_0xfe9ce7=typeof _0x32721d[_0x53b8ef(0x9b)]===_0x53b8ef(0x8c)?_0x32721d[_0x53b8ef(0x9b)]:'.';let _0x3e232d;try{_0x3e232d=(0x0,types_js_1[_0x53b8ef(0xa3)])(path[_0x53b8ef(0x8d)](_0x4b7d2c[_0x53b8ef(0xac)],expandHome(_0xfe9ce7)),_0x4b7d2c[_0x53b8ef(0xac)]);}catch(_0x506454){return(0x0,types_js_1['textResult'])(_0x53b8ef(0xab)+(_0x506454 instanceof Error?_0x506454[_0x53b8ef(0x9a)]:String(_0x506454)),!![]);}if(!fs[_0x53b8ef(0xa0)](_0x3e232d))return(0x0,types_js_1[_0x53b8ef(0xaa)])(_0x53b8ef(0xb6)+_0xfe9ce7,!![]);(0x0,types_js_1[_0x53b8ef(0xa8)])(_0x3e232d,_0x4b7d2c[_0x53b8ef(0xac)]);if(!fs[_0x53b8ef(0xa9)](_0x3e232d)[_0x53b8ef(0xa5)]())return(0x0,types_js_1[_0x53b8ef(0xaa)])(_0x53b8ef(0x93)+_0xfe9ce7,!![]);const _0x4094a5=fs[_0x53b8ef(0x92)](_0x3e232d,{'withFileTypes':!![]}),_0x1ac783=_0x4094a5['sort']((_0x54bb66,_0x1731ef)=>Number(_0x1731ef[_0x53b8ef(0xa5)]())-Number(_0x54bb66[_0x53b8ef(0xa5)]())||_0x54bb66[_0x53b8ef(0xb7)]['localeCompare'](_0x1731ef['name']))[_0x53b8ef(0xa7)](_0x236330=>_0x236330[_0x53b8ef(0xa5)]()?_0x236330[_0x53b8ef(0xb7)]+'/':_0x236330[_0x53b8ef(0xb7)]);return(0x0,types_js_1['textResult'])(_0xfe9ce7+'\x0a'+_0x1ac783[_0x53b8ef(0x8e)]('\x0a'));}catch(_0x50dc79){return(0x0,types_js_1[_0x53b8ef(0xaa)])(_0x53b8ef(0xae)+(_0x50dc79 instanceof Error?_0x50dc79[_0x53b8ef(0x9a)]:String(_0x50dc79)),!![]);}}};}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x20a7b6,_0x39bbe4,_0x6c7f55,_0x17a56b){if(_0x17a56b===undefined)_0x17a56b=_0x6c7f55;var _0x4c582f=Object['getOwnPropertyDescriptor'](_0x39bbe4,_0x6c7f55);(!_0x4c582f||('get'in _0x4c582f?!_0x39bbe4['__esModule']:_0x4c582f['writable']||_0x4c582f['configurable']))&&(_0x4c582f={'enumerable':!![],'get':function(){return _0x39bbe4[_0x6c7f55];}}),Object['defineProperty'](_0x20a7b6,_0x17a56b,_0x4c582f);}:function(_0x3c5d75,_0x391c15,_0x288a4e,_0x455af8){if(_0x455af8===undefined)_0x455af8=_0x288a4e;_0x3c5d75[_0x455af8]=_0x391c15[_0x288a4e];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x3dba23,_0xc6cf9f){Object['defineProperty'](_0x3dba23,'default',{'enumerable':!![],'value':_0xc6cf9f});}:function(_0x2fa4e8,_0xa454ef){_0x2fa4e8['default']=_0xa454ef;}),__importStar=this&&this['__importStar']||(function(){var _0x282fbd=function(_0x36ee4a){return _0x282fbd=Object['getOwnPropertyNames']||function(_0xd7b13f){var _0x3589ec=[];for(var _0x324caf in _0xd7b13f)if(Object['prototype']['hasOwnProperty']['call'](_0xd7b13f,_0x324caf))_0x3589ec[_0x3589ec['length']]=_0x324caf;return _0x3589ec;},_0x282fbd(_0x36ee4a);};return function(_0x303c5f){if(_0x303c5f&&_0x303c5f['__esModule'])return _0x303c5f;var _0xa57ee3={};if(_0x303c5f!=null){for(var _0x4b3033=_0x282fbd(_0x303c5f),_0x393079=0x0;_0x393079<_0x4b3033['length'];_0x393079++)if(_0x4b3033[_0x393079]!=='default')__createBinding(_0xa57ee3,_0x303c5f,_0x4b3033[_0x393079]);}return __setModuleDefault(_0xa57ee3,_0x303c5f),_0xa57ee3;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createListDirTool']=createListDirTool;const fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require('path')),types_js_1=require('../types.js');function expandHome(_0x3ff4e){if(_0x3ff4e['startsWith']('~/')||_0x3ff4e==='~')return path['join'](os['homedir'](),_0x3ff4e['slice'](_0x3ff4e==='~'?0x1:0x2));return _0x3ff4e;}const definition={'timeoutMs':0x7530,'name':'list_dir','description':'List\x20the\x20entries\x20of\x20a\x20directory.\x20Defaults\x20to\x20the\x20project\x20root.\x20Marks\x20directories\x20with\x20a\x20trailing\x20slash.','parameters':{'type':'object','required':[],'properties':{'path':{'type':'string','description':'Directory\x20to\x20list.\x20Default:\x20project\x20root.'}}}};function createListDirTool(){return{'definition':definition,async 'execute'(_0x5b951d,_0x267a33,_0x119974,_0x443a0e,_0x53cf47){try{if(_0x119974?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0x1cba92=_0x53cf47,_0x4f7e6c=typeof _0x267a33['path']==='string'?_0x267a33['path']:'.';let _0x1fd5b9;try{_0x1fd5b9=(0x0,types_js_1['resolveConstrainedPath'])(path['resolve'](_0x1cba92['cwd'],expandHome(_0x4f7e6c)),_0x1cba92['cwd']);}catch(_0x50c5e6){return(0x0,types_js_1['textResult'])('Access\x20denied:\x20'+(_0x50c5e6 instanceof Error?_0x50c5e6['message']:String(_0x50c5e6)),!![]);}if(!fs['existsSync'](_0x1fd5b9))return(0x0,types_js_1['textResult'])('Directory\x20not\x20found:\x20'+_0x4f7e6c,!![]);(0x0,types_js_1['assertExternalDirectory'])(_0x1fd5b9,_0x1cba92['cwd']);if(!fs['statSync'](_0x1fd5b9)['isDirectory']())return(0x0,types_js_1['textResult'])('Not\x20a\x20directory:\x20'+_0x4f7e6c,!![]);const _0x520241=fs['readdirSync'](_0x1fd5b9,{'withFileTypes':!![]}),_0x3e217a=_0x520241['sort']((_0x5130a0,_0x3ddc3c)=>Number(_0x3ddc3c['isDirectory']())-Number(_0x5130a0['isDirectory']())||_0x5130a0['name']['localeCompare'](_0x3ddc3c['name']))['map'](_0x55be3f=>_0x55be3f['isDirectory']()?_0x55be3f['name']+'/':_0x55be3f['name']);return(0x0,types_js_1['textResult'])(_0x4f7e6c+'\x0a'+_0x3e217a['join']('\x0a'));}catch(_0x111ee8){return(0x0,types_js_1['textResult'])('List\x20error:\x20'+(_0x111ee8 instanceof Error?_0x111ee8['message']:String(_0x111ee8)),!![]);}}};}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x5c3905,_0xd2efb6,_0x219f80,_0x4e5ef5){if(_0x4e5ef5===undefined)_0x4e5ef5=_0x219f80;var _0x233906=Object['getOwnPropertyDescriptor'](_0xd2efb6,_0x219f80);(!_0x233906||('get'in _0x233906?!_0xd2efb6['__esModule']:_0x233906['writable']||_0x233906['configurable']))&&(_0x233906={'enumerable':!![],'get':function(){return _0xd2efb6[_0x219f80];}}),Object['defineProperty'](_0x5c3905,_0x4e5ef5,_0x233906);}:function(_0x24d88b,_0x3b544d,_0x54f40a,_0xbb0c4c){if(_0xbb0c4c===undefined)_0xbb0c4c=_0x54f40a;_0x24d88b[_0xbb0c4c]=_0x3b544d[_0x54f40a];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1f239a,_0x1369ff){Object['defineProperty'](_0x1f239a,'default',{'enumerable':!![],'value':_0x1369ff});}:function(_0x14a167,_0x5ed536){_0x14a167['default']=_0x5ed536;}),__importStar=this&&this['__importStar']||(function(){var _0x11a044=function(_0x2ba7e1){return _0x11a044=Object['getOwnPropertyNames']||function(_0x4d7a5c){var _0x1675fe=[];for(var _0x2e8c37 in _0x4d7a5c)if(Object['prototype']['hasOwnProperty']['call'](_0x4d7a5c,_0x2e8c37))_0x1675fe[_0x1675fe['length']]=_0x2e8c37;return _0x1675fe;},_0x11a044(_0x2ba7e1);};return function(_0x5b24f5){if(_0x5b24f5&&_0x5b24f5['__esModule'])return _0x5b24f5;var _0xd4812f={};if(_0x5b24f5!=null){for(var _0x5105c3=_0x11a044(_0x5b24f5),_0x2b4be9=0x0;_0x2b4be9<_0x5105c3['length'];_0x2b4be9++)if(_0x5105c3[_0x2b4be9]!=='default')__createBinding(_0xd4812f,_0x5b24f5,_0x5105c3[_0x2b4be9]);}return __setModuleDefault(_0xd4812f,_0x5b24f5),_0xd4812f;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createEditFileTool']=createEditFileTool;const fs=__importStar(require('fs')),types_js_1=require('../types.js'),tsc_diagnostics_js_1=require('../diagnostics/tsc-diagnostics.js'),fuzzy_match_js_1=require('./fuzzy-match.js'),diff_render_js_1=require('../text/diff-render.js'),definition={'timeoutMs':0x7530,'name':'edit_file','description':'Edit\x20a\x20file\x20by\x20replacing\x20text.\x20Provide\x20old_string\x20(unique\x20in\x20the\x20file)\x20and\x20new_string.\x20Set\x20replace_all\x20to\x20change\x20every\x20occurrence.\x20Exact\x20matches\x20win;\x20when\x20nothing\x20matches\x20exactly,\x20a\x20whitespace/unicode-tolerant\x20unique\x20match\x20is\x20accepted\x20(indentation\x20drift,\x20trailing\x20spaces,\x20CRLF/LF,\x20smart\x20quotes).\x20Fails\x20if\x20old_string\x20is\x20not\x20found\x20or\x20is\x20not\x20unique\x20(unless\x20replace_all).\x20.git\x20and\x20.trayambak\x20directories\x20are\x20read-only\x20metadata:\x20edits\x20to\x20them\x20are\x20rejected.','parameters':{'type':'object','required':['path','old_string','new_string'],'properties':{'path':{'type':'string','description':'Relative\x20or\x20absolute\x20path\x20to\x20the\x20file.'},'old_string':{'type':'string','description':'Text\x20to\x20replace\x20(whitespace-tolerant\x20fallback\x20when\x20not\x20byte-exact).'},'new_string':{'type':'string','description':'Replacement\x20text.'},'replace_all':{'type':'boolean','description':'Replace\x20all\x20occurrences.\x20Default\x20false.'}}}};function createEditFileTool(){return{'definition':definition,async 'execute'(_0x25c3db,_0x36fde0,_0x20c8c1,_0xecbf40,_0x46553a){try{if(_0x20c8c1?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0x3a5bcf=_0x46553a,_0x4cee49=String(_0x36fde0['path']??''),_0x1ce2d5=String(_0x36fde0['old_string']??''),_0x545a96=String(_0x36fde0['new_string']??''),_0x459447=Boolean(_0x36fde0['replace_all']);if(!_0x4cee49)return(0x0,types_js_1['textResult'])('Missing\x20\x27path\x27.',!![]);if(!_0x1ce2d5)return(0x0,types_js_1['textResult'])('Missing\x20\x27old_string\x27.',!![]);let _0x53c4fd;try{_0x53c4fd=(0x0,types_js_1['resolveConstrainedPath'])(_0x4cee49,_0x3a5bcf['cwd']),(0x0,types_js_1['assertExternalDirectory'])(_0x53c4fd,_0x3a5bcf['cwd']),(0x0,types_js_1['assertMutablePath'])(_0x53c4fd);}catch(_0x2f55af){return(0x0,types_js_1['textResult'])('Access\x20denied:\x20'+(_0x2f55af instanceof Error?_0x2f55af['message']:String(_0x2f55af)),!![]);}if(_0x20c8c1?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(_0x3a5bcf['requestPermission']){const _0x2b6fcf=await _0x3a5bcf['requestPermission']('edit_file',_0x4cee49,'Trayambak\x20approval\x20required\x20for\x20edit_file');if(!_0x2b6fcf)return(0x0,types_js_1['textResult'])('Permission\x20denied\x20for\x20edit_file:\x20'+_0x4cee49,!![]);}if(_0x20c8c1?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(!fs['existsSync'](_0x53c4fd))return(0x0,types_js_1['textResult'])('File\x20not\x20found:\x20'+_0x4cee49,!![]);const _0x34620a=fs['readFileSync'](_0x53c4fd,'utf8'),_0x3fd4f6=_0x34620a['split'](_0x1ce2d5)['length']-0x1;if(_0x3fd4f6===0x0){const _0x1bae60=(0x0,fuzzy_match_js_1['findOldStringSpans'])(_0x34620a,_0x1ce2d5);if(_0x1bae60['length']===0x0)return(0x0,types_js_1['textResult'])('old_string\x20not\x20found\x20in\x20'+_0x4cee49,!![]);if(_0x1bae60['length']>0x1)return(0x0,types_js_1['textResult'])('old_string\x20is\x20not\x20unique\x20('+_0x1bae60['length']+'\x20whitespace-tolerant\x20matches).\x20Make\x20it\x20unique\x20or\x20set\x20replace_all.',!![]);const _0x57e424=_0x1bae60[0x0],_0x26f1e0=_0x34620a['slice'](0x0,_0x57e424['start'])+_0x545a96+_0x34620a['slice'](_0x57e424['end']);fs['writeFileSync'](_0x53c4fd,_0x26f1e0,'utf8');const _0x3fdbbd=await(0x0,tsc_diagnostics_js_1['syntaxNote'])(_0x53c4fd,_0x26f1e0),_0x31de08=(0x0,diff_render_js_1['miniDiff'])(_0x34620a['slice'](_0x57e424['start'],_0x57e424['end']),_0x545a96)['join']('\x0a');return(0x0,types_js_1['textResult'])('Edited\x20'+_0x4cee49+'\x20(1\x20occurrence,\x20'+_0x57e424['pass']+'\x20match).'+_0x3fdbbd+'\x0a'+_0x31de08);}if(_0x3fd4f6>0x1&&!_0x459447)return(0x0,types_js_1['textResult'])('old_string\x20is\x20not\x20unique\x20('+_0x3fd4f6+'\x20matches).\x20Make\x20it\x20unique\x20or\x20set\x20replace_all.',!![]);const _0x39eabc=_0x459447?_0x34620a['split'](_0x1ce2d5)['join'](_0x545a96):_0x34620a['replace'](_0x1ce2d5,_0x545a96);fs['writeFileSync'](_0x53c4fd,_0x39eabc,'utf8');const _0x4b674d=await(0x0,tsc_diagnostics_js_1['syntaxNote'])(_0x53c4fd,_0x39eabc),_0x1b9589=(0x0,diff_render_js_1['miniDiff'])(_0x1ce2d5,_0x545a96)['join']('\x0a');return(0x0,types_js_1['textResult'])('Edited\x20'+_0x4cee49+'\x20('+_0x3fd4f6+'\x20occurrence'+(_0x3fd4f6>0x1?'s':'')+').'+_0x4b674d+'\x0a'+_0x1b9589);}catch(_0x1f781a){return(0x0,types_js_1['textResult'])('Edit\x20error:\x20'+(_0x1f781a instanceof Error?_0x1f781a['message']:String(_0x1f781a)),!![]);}}};}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x4ea1c1,_0x4b6571,_0x12b4a1,_0x590838){if(_0x590838===undefined)_0x590838=_0x12b4a1;var _0x1242e0=Object['getOwnPropertyDescriptor'](_0x4b6571,_0x12b4a1);(!_0x1242e0||('get'in _0x1242e0?!_0x4b6571['__esModule']:_0x1242e0['writable']||_0x1242e0['configurable']))&&(_0x1242e0={'enumerable':!![],'get':function(){return _0x4b6571[_0x12b4a1];}}),Object['defineProperty'](_0x4ea1c1,_0x590838,_0x1242e0);}:function(_0x1b1c7b,_0x2d661d,_0x50e7cf,_0xe21866){if(_0xe21866===undefined)_0xe21866=_0x50e7cf;_0x1b1c7b[_0xe21866]=_0x2d661d[_0x50e7cf];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x4e0dd6,_0x4b71e1){Object['defineProperty'](_0x4e0dd6,'default',{'enumerable':!![],'value':_0x4b71e1});}:function(_0x4c378f,_0x2757bf){_0x4c378f['default']=_0x2757bf;}),__importStar=this&&this['__importStar']||(function(){var _0x4db0f9=function(_0x2f3f35){return _0x4db0f9=Object['getOwnPropertyNames']||function(_0x3e069f){var _0x2cfe3d=[];for(var _0x3016e6 in _0x3e069f)if(Object['prototype']['hasOwnProperty']['call'](_0x3e069f,_0x3016e6))_0x2cfe3d[_0x2cfe3d['length']]=_0x3016e6;return _0x2cfe3d;},_0x4db0f9(_0x2f3f35);};return function(_0x1c13e7){if(_0x1c13e7&&_0x1c13e7['__esModule'])return _0x1c13e7;var _0x545316={};if(_0x1c13e7!=null){for(var _0x26f7d5=_0x4db0f9(_0x1c13e7),_0x4530df=0x0;_0x4530df<_0x26f7d5['length'];_0x4530df++)if(_0x26f7d5[_0x4530df]!=='default')__createBinding(_0x545316,_0x1c13e7,_0x26f7d5[_0x4530df]);}return __setModuleDefault(_0x545316,_0x1c13e7),_0x545316;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createEditFileTool']=createEditFileTool;const fs=__importStar(require('fs')),types_js_1=require('../types.js'),tsc_diagnostics_js_1=require('../diagnostics/tsc-diagnostics.js'),fuzzy_match_js_1=require('./fuzzy-match.js'),diff_render_js_1=require('../text/diff-render.js'),definition={'timeoutMs':0x7530,'name':'edit_file','description':'Edit\x20a\x20file\x20by\x20replacing\x20text.\x20Provide\x20old_string\x20(unique\x20in\x20the\x20file)\x20and\x20new_string.\x20Set\x20replace_all\x20to\x20change\x20every\x20occurrence.\x20Exact\x20matches\x20win;\x20when\x20nothing\x20matches\x20exactly,\x20a\x20whitespace/unicode-tolerant\x20unique\x20match\x20is\x20accepted\x20(indentation\x20drift,\x20trailing\x20spaces,\x20CRLF/LF,\x20smart\x20quotes).\x20Fails\x20if\x20old_string\x20is\x20not\x20found\x20or\x20is\x20not\x20unique\x20(unless\x20replace_all).\x20.git\x20and\x20.trayambak\x20directories\x20are\x20read-only\x20metadata:\x20edits\x20to\x20them\x20are\x20rejected.','parameters':{'type':'object','required':['path','old_string','new_string'],'properties':{'path':{'type':'string','description':'Relative\x20or\x20absolute\x20path\x20to\x20the\x20file.'},'old_string':{'type':'string','description':'Text\x20to\x20replace\x20(whitespace-tolerant\x20fallback\x20when\x20not\x20byte-exact).'},'new_string':{'type':'string','description':'Replacement\x20text.'},'replace_all':{'type':'boolean','description':'Replace\x20all\x20occurrences.\x20Default\x20false.'}}}};function createEditFileTool(){return{'definition':definition,async 'execute'(_0x596e9b,_0x48ca0d,_0x1da303,_0x263d63,_0x4e5237){try{if(_0x1da303?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0x43e570=_0x4e5237,_0x474ab0=String(_0x48ca0d['path']??''),_0x16b8f7=String(_0x48ca0d['old_string']??''),_0x2806d9=String(_0x48ca0d['new_string']??''),_0x1cfce2=Boolean(_0x48ca0d['replace_all']);if(!_0x474ab0)return(0x0,types_js_1['textResult'])('Missing\x20\x27path\x27.',!![]);if(!_0x16b8f7)return(0x0,types_js_1['textResult'])('Missing\x20\x27old_string\x27.',!![]);let _0x25c9e4;try{_0x25c9e4=(0x0,types_js_1['resolveConstrainedPath'])(_0x474ab0,_0x43e570['cwd']),(0x0,types_js_1['assertExternalDirectory'])(_0x25c9e4,_0x43e570['cwd']),(0x0,types_js_1['assertMutablePath'])(_0x25c9e4);}catch(_0x338596){return(0x0,types_js_1['textResult'])('Access\x20denied:\x20'+(_0x338596 instanceof Error?_0x338596['message']:String(_0x338596)),!![]);}if(_0x1da303?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(_0x43e570['requestPermission']){const _0x131f9b=await _0x43e570['requestPermission']('edit_file',_0x474ab0,'Trayambak\x20approval\x20required\x20for\x20edit_file');if(!_0x131f9b)return(0x0,types_js_1['textResult'])('Permission\x20denied\x20for\x20edit_file:\x20'+_0x474ab0,!![]);}if(_0x1da303?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(!fs['existsSync'](_0x25c9e4))return(0x0,types_js_1['textResult'])('File\x20not\x20found:\x20'+_0x474ab0,!![]);const _0x59eaac=fs['readFileSync'](_0x25c9e4,'utf8'),_0x41f5b7=_0x59eaac['split'](_0x16b8f7)['length']-0x1;if(_0x41f5b7===0x0){const _0x6919b9=(0x0,fuzzy_match_js_1['findOldStringSpans'])(_0x59eaac,_0x16b8f7);if(_0x6919b9['length']===0x0)return(0x0,types_js_1['textResult'])('old_string\x20not\x20found\x20in\x20'+_0x474ab0,!![]);if(_0x6919b9['length']>0x1)return(0x0,types_js_1['textResult'])('old_string\x20is\x20not\x20unique\x20('+_0x6919b9['length']+'\x20whitespace-tolerant\x20matches).\x20Make\x20it\x20unique\x20or\x20set\x20replace_all.',!![]);const _0x50aaa9=_0x6919b9[0x0],_0x1ef1c9=_0x59eaac['slice'](0x0,_0x50aaa9['start'])+_0x2806d9+_0x59eaac['slice'](_0x50aaa9['end']);fs['writeFileSync'](_0x25c9e4,_0x1ef1c9,'utf8');const _0x4dfba0=await(0x0,tsc_diagnostics_js_1['syntaxNote'])(_0x25c9e4,_0x1ef1c9),_0x7367b4=(0x0,diff_render_js_1['miniDiff'])(_0x59eaac['slice'](_0x50aaa9['start'],_0x50aaa9['end']),_0x2806d9)['join']('\x0a');return(0x0,types_js_1['textResult'])('Edited\x20'+_0x474ab0+'\x20(1\x20occurrence,\x20'+_0x50aaa9['pass']+'\x20match).'+_0x4dfba0+'\x0a'+_0x7367b4);}if(_0x41f5b7>0x1&&!_0x1cfce2)return(0x0,types_js_1['textResult'])('old_string\x20is\x20not\x20unique\x20('+_0x41f5b7+'\x20matches).\x20Make\x20it\x20unique\x20or\x20set\x20replace_all.',!![]);const _0x26f787=_0x1cfce2?_0x59eaac['split'](_0x16b8f7)['join'](_0x2806d9):_0x59eaac['replace'](_0x16b8f7,_0x2806d9);fs['writeFileSync'](_0x25c9e4,_0x26f787,'utf8');const _0x35d84c=await(0x0,tsc_diagnostics_js_1['syntaxNote'])(_0x25c9e4,_0x26f787),_0x5cf00d=(0x0,diff_render_js_1['miniDiff'])(_0x16b8f7,_0x2806d9)['join']('\x0a');return(0x0,types_js_1['textResult'])('Edited\x20'+_0x474ab0+'\x20('+_0x41f5b7+'\x20occurrence'+(_0x41f5b7>0x1?'s':'')+').'+_0x35d84c+'\x0a'+_0x5cf00d);}catch(_0x187535){return(0x0,types_js_1['textResult'])('Edit\x20error:\x20'+(_0x187535 instanceof Error?_0x187535['message']:String(_0x187535)),!![]);}}};}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x497753,_0x4e0559,_0x44e450,_0x107d4e){if(_0x107d4e===undefined)_0x107d4e=_0x44e450;var _0x43be11=Object['getOwnPropertyDescriptor'](_0x4e0559,_0x44e450);(!_0x43be11||('get'in _0x43be11?!_0x4e0559['__esModule']:_0x43be11['writable']||_0x43be11['configurable']))&&(_0x43be11={'enumerable':!![],'get':function(){return _0x4e0559[_0x44e450];}}),Object['defineProperty'](_0x497753,_0x107d4e,_0x43be11);}:function(_0x2b6cc6,_0x4ec1fc,_0xc824b1,_0x437d50){if(_0x437d50===undefined)_0x437d50=_0xc824b1;_0x2b6cc6[_0x437d50]=_0x4ec1fc[_0xc824b1];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x4c2d05,_0x1f912e){Object['defineProperty'](_0x4c2d05,'default',{'enumerable':!![],'value':_0x1f912e});}:function(_0x405da7,_0x3357bb){_0x405da7['default']=_0x3357bb;}),__importStar=this&&this['__importStar']||(function(){var _0x31b38d=function(_0x1dfe2d){return _0x31b38d=Object['getOwnPropertyNames']||function(_0x4feed9){var _0x542b5e=[];for(var _0x2cc3fc in _0x4feed9)if(Object['prototype']['hasOwnProperty']['call'](_0x4feed9,_0x2cc3fc))_0x542b5e[_0x542b5e['length']]=_0x2cc3fc;return _0x542b5e;},_0x31b38d(_0x1dfe2d);};return function(_0x13e02d){if(_0x13e02d&&_0x13e02d['__esModule'])return _0x13e02d;var _0x204758={};if(_0x13e02d!=null){for(var _0x2e6058=_0x31b38d(_0x13e02d),_0x26ef34=0x0;_0x26ef34<_0x2e6058['length'];_0x26ef34++)if(_0x2e6058[_0x26ef34]!=='default')__createBinding(_0x204758,_0x13e02d,_0x2e6058[_0x26ef34]);}return __setModuleDefault(_0x204758,_0x13e02d),_0x204758;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['IGNORED_DIRS']=void 0x0,exports['walkFiles']=walkFiles,exports['matchGlob']=matchGlob;const fs=__importStar(require('fs')),path=__importStar(require('path'));exports['IGNORED_DIRS']=new Set(['.git','node_modules','dist','build','.trayambak','target','.venv','vendor']);function walkFiles(_0x46efb8,_0x3ec842,_0x2e45ad=0x14){const _0x1c43b6=(_0x5e1204,_0x3e4e96)=>{if(_0x3e4e96>_0x2e45ad)return;let _0x4f2ee6;try{_0x4f2ee6=fs['readdirSync'](_0x5e1204,{'withFileTypes':!![]});}catch{return;}for(const _0x5c074b of _0x4f2ee6){if(exports['IGNORED_DIRS']['has'](_0x5c074b['name']))continue;const _0x495cf2=path['join'](_0x5e1204,_0x5c074b['name']),_0x2e37cf=path['relative'](_0x46efb8,_0x495cf2);if(_0x5c074b['isDirectory']())_0x1c43b6(_0x495cf2,_0x3e4e96+0x1);else _0x5c074b['isFile']()&&_0x3ec842(_0x495cf2,_0x2e37cf);}};_0x1c43b6(_0x46efb8,0x0);}function matchGlob(_0x1fd3aa,_0x45771c){const _0x1c97b1=_0x1fd3aa['replace'](/[.+^${}()|[\]\\]/g,'\x5c$&')['replace'](/\*\*\//g,'(?:.*/)?')['replace'](/\*\*/g,'.*')['replace'](/\*/g,'[^/]*');return new RegExp('^'+_0x1c97b1+'$')['test'](_0x45771c);}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x3f89b9,_0x564200,_0x1cbc2d,_0x401cbb){if(_0x401cbb===undefined)_0x401cbb=_0x1cbc2d;var _0x3c3687=Object['getOwnPropertyDescriptor'](_0x564200,_0x1cbc2d);(!_0x3c3687||('get'in _0x3c3687?!_0x564200['__esModule']:_0x3c3687['writable']||_0x3c3687['configurable']))&&(_0x3c3687={'enumerable':!![],'get':function(){return _0x564200[_0x1cbc2d];}}),Object['defineProperty'](_0x3f89b9,_0x401cbb,_0x3c3687);}:function(_0x12feba,_0x52113c,_0x167420,_0x4d647b){if(_0x4d647b===undefined)_0x4d647b=_0x167420;_0x12feba[_0x4d647b]=_0x52113c[_0x167420];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x56b6dc,_0x384e8a){Object['defineProperty'](_0x56b6dc,'default',{'enumerable':!![],'value':_0x384e8a});}:function(_0x49e275,_0x3e39da){_0x49e275['default']=_0x3e39da;}),__importStar=this&&this['__importStar']||(function(){var _0xd53c13=function(_0x8e5c46){return _0xd53c13=Object['getOwnPropertyNames']||function(_0x4bb65d){var _0x20540e=[];for(var _0x470565 in _0x4bb65d)if(Object['prototype']['hasOwnProperty']['call'](_0x4bb65d,_0x470565))_0x20540e[_0x20540e['length']]=_0x470565;return _0x20540e;},_0xd53c13(_0x8e5c46);};return function(_0x2ebecd){if(_0x2ebecd&&_0x2ebecd['__esModule'])return _0x2ebecd;var _0x1ccb22={};if(_0x2ebecd!=null){for(var _0x4a04f0=_0xd53c13(_0x2ebecd),_0x884ca2=0x0;_0x884ca2<_0x4a04f0['length'];_0x884ca2++)if(_0x4a04f0[_0x884ca2]!=='default')__createBinding(_0x1ccb22,_0x2ebecd,_0x4a04f0[_0x884ca2]);}return __setModuleDefault(_0x1ccb22,_0x2ebecd),_0x1ccb22;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['IGNORED_DIRS']=void 0x0,exports['walkFiles']=walkFiles,exports['matchGlob']=matchGlob;const fs=__importStar(require('fs')),path=__importStar(require('path'));exports['IGNORED_DIRS']=new Set(['.git','node_modules','dist','build','.trayambak','target','.venv','vendor']);function walkFiles(_0x23559d,_0x1f0090,_0x4bef2a=0x14){const _0xc292da=(_0x220b8e,_0x5882fa)=>{if(_0x5882fa>_0x4bef2a)return;let _0x2ad3d7;try{_0x2ad3d7=fs['readdirSync'](_0x220b8e,{'withFileTypes':!![]});}catch{return;}for(const _0x2b7b3a of _0x2ad3d7){if(exports['IGNORED_DIRS']['has'](_0x2b7b3a['name']))continue;const _0x5359a8=path['join'](_0x220b8e,_0x2b7b3a['name']),_0x5a6f26=path['relative'](_0x23559d,_0x5359a8);if(_0x2b7b3a['isDirectory']())_0xc292da(_0x5359a8,_0x5882fa+0x1);else _0x2b7b3a['isFile']()&&_0x1f0090(_0x5359a8,_0x5a6f26);}};_0xc292da(_0x23559d,0x0);}function matchGlob(_0x7bef4d,_0x29e8e9){const _0x44acc6=_0x7bef4d['replace'](/[.+^${}()|[\]\\]/g,'\x5c$&')['replace'](/\*\*\//g,'(?:.*/)?')['replace'](/\*\*/g,'.*')['replace'](/\*/g,'[^/]*');return new RegExp('^'+_0x44acc6+'$')['test'](_0x29e8e9);}
@@ -1 +1 @@
1
- 'use strict';const _0xf46820=_0x6831;function _0x1199(){const _0xa96dd8=['length','push','trimEnd','8QGglmg','exact','trim','2936650nttpYL','...','replace','exec','every','267gBGUkn','28516BZgKcP','11YFdjOi','730yxkoeQ','18478BguFKb','split','287FxkPiT','741178EBVkkO','62346npmgvn','28272000YExZIg','index','NFKC','2170197KneAcJ','map','defineProperty'];_0x1199=function(){return _0xa96dd8;};return _0x1199();}(function(_0x2f683b,_0x5798b6){const _0x5d78bb=_0x6831,_0x7baf1e=_0x2f683b();while(!![]){try{const _0xd1f102=parseInt(_0x5d78bb(0x129))/0x1+parseInt(_0x5d78bb(0x126))/0x2*(parseInt(_0x5d78bb(0x13c))/0x3)+parseInt(_0x5d78bb(0x123))/0x4*(parseInt(_0x5d78bb(0x125))/0x5)+-parseInt(_0x5d78bb(0x12a))/0x6*(-parseInt(_0x5d78bb(0x128))/0x7)+parseInt(_0x5d78bb(0x134))/0x8*(-parseInt(_0x5d78bb(0x12e))/0x9)+-parseInt(_0x5d78bb(0x137))/0xa*(-parseInt(_0x5d78bb(0x124))/0xb)+-parseInt(_0x5d78bb(0x12b))/0xc;if(_0xd1f102===_0x5798b6)break;else _0x7baf1e['push'](_0x7baf1e['shift']());}catch(_0x91aade){_0x7baf1e['push'](_0x7baf1e['shift']());}}}(_0x1199,0xb173e));Object[_0xf46820(0x130)](exports,'__esModule',{'value':!![]}),exports['findOldStringSpans']=findOldStringSpans;const SMART_PUNCT=[[/[\u2018\u2019\u201A\u201B]/g,'\x27'],[/[\u201C\u201D\u201E\u201F]/g,'\x22'],[/[\u2013\u2014\u2015]/g,'-'],[/\u2026/g,_0xf46820(0x138)],[/[\u00A0\u2000-\u200B\u202F\u205F\u3000]/g,'\x20']];function normalizeUnicode(_0x4aa973){const _0x39e5e0=_0xf46820;let _0x35820d=_0x4aa973['normalize'](_0x39e5e0(0x12d));for(const [_0x3163a0,_0x86ebe1]of SMART_PUNCT)_0x35820d=_0x35820d[_0x39e5e0(0x139)](_0x3163a0,_0x86ebe1);return _0x35820d;}const PASS_FNS={'trimEnd':_0x2cb05e=>_0x2cb05e[_0xf46820(0x139)](/[ \t\r]+$/,''),'trim':_0x12e84d=>_0x12e84d[_0xf46820(0x136)](),'unicode':_0x4c8bfa=>normalizeUnicode(_0x4c8bfa[_0xf46820(0x136)]())};function _0x6831(_0x57d732,_0x41c20c){_0x57d732=_0x57d732-0x123;const _0x11990e=_0x1199();let _0x68317b=_0x11990e[_0x57d732];return _0x68317b;}function splitLines(_0x5a0dd9){const _0x338c9a=_0xf46820;return _0x5a0dd9[_0x338c9a(0x127)](/\r?\n/);}function lineOffsets(_0x4818e2){const _0x2494dc=_0xf46820,_0x3e4176=[0x0],_0x4a7968=/\r?\n/g;let _0x445dde;while((_0x445dde=_0x4a7968[_0x2494dc(0x13a)](_0x4818e2))!==null)_0x3e4176[_0x2494dc(0x132)](_0x445dde[_0x2494dc(0x12c)]+_0x445dde[0x0][_0x2494dc(0x131)]);return _0x3e4176;}function findPassSpans(_0x1348ae,_0x174d3b,_0xedf2e){const _0x34fddd=_0xf46820,_0x3c1877=_0xedf2e==='exact'?_0x16a5a1=>_0x16a5a1:PASS_FNS[_0xedf2e],_0xe2ad18=splitLines(_0x1348ae),_0x5efde2=splitLines(_0x174d3b);if(_0x5efde2[_0x34fddd(0x131)]===0x0)return[];const _0x52210a=_0xe2ad18[_0x34fddd(0x12f)](_0x3c1877),_0x2619be=_0x5efde2['map'](_0x3c1877);if(_0x2619be[_0x34fddd(0x13b)](_0x5c7644=>_0x5c7644[_0x34fddd(0x131)]===0x0))return[];const _0x1cca9c=lineOffsets(_0x1348ae),_0x499536=[];for(let _0x2e777c=0x0;_0x2e777c+_0x2619be[_0x34fddd(0x131)]<=_0x52210a[_0x34fddd(0x131)];_0x2e777c++){let _0x235889=!![];for(let _0xad35b2=0x0;_0xad35b2<_0x2619be[_0x34fddd(0x131)];_0xad35b2++){if(_0x52210a[_0x2e777c+_0xad35b2]!==_0x2619be[_0xad35b2]){_0x235889=![];break;}}if(!_0x235889)continue;const _0x1e04a1=_0x2e777c+_0x2619be[_0x34fddd(0x131)]-0x1,_0x23e811=_0x1cca9c[_0x2e777c]??0x0,_0x48f027=_0x1cca9c[_0x1e04a1+0x1],_0x2919f4=_0x48f027===undefined?0x0:_0x48f027-(_0x1cca9c[_0x1e04a1]??0x0)-(_0xe2ad18[_0x1e04a1]??'')['length'];_0x499536[_0x34fddd(0x132)]({'start':_0x23e811,'end':(_0x48f027??_0x1348ae[_0x34fddd(0x131)])-_0x2919f4,'pass':_0xedf2e});}return _0x499536;}function findOldStringSpans(_0x57689f,_0x53c307){const _0x53dda9=_0xf46820;if(!_0x53c307)return[];const _0x49883f=[_0x53dda9(0x135),_0x53dda9(0x133),_0x53dda9(0x136),'unicode'];for(const _0x4cf956 of _0x49883f){const _0x12508a=findPassSpans(_0x57689f,_0x53c307,_0x4cf956);if(_0x12508a[_0x53dda9(0x131)]>0x0)return _0x12508a;}return[];}
1
+ 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['findOldStringSpans']=findOldStringSpans;const SMART_PUNCT=[[/[\u2018\u2019\u201A\u201B]/g,'\x27'],[/[\u201C\u201D\u201E\u201F]/g,'\x22'],[/[\u2013\u2014\u2015]/g,'-'],[/\u2026/g,'...'],[/[\u00A0\u2000-\u200B\u202F\u205F\u3000]/g,'\x20']];function normalizeUnicode(_0x500ab7){let _0x189a17=_0x500ab7['normalize']('NFKC');for(const [_0x23ce47,_0x160619]of SMART_PUNCT)_0x189a17=_0x189a17['replace'](_0x23ce47,_0x160619);return _0x189a17;}const PASS_FNS={'trimEnd':_0x573668=>_0x573668['replace'](/[ \t\r]+$/,''),'trim':_0x34be47=>_0x34be47['trim'](),'unicode':_0x445ea9=>normalizeUnicode(_0x445ea9['trim']())};function splitLines(_0x52262d){return _0x52262d['split'](/\r?\n/);}function lineOffsets(_0x171459){const _0x77c8a2=[0x0],_0x4b3310=/\r?\n/g;let _0x3e7d92;while((_0x3e7d92=_0x4b3310['exec'](_0x171459))!==null)_0x77c8a2['push'](_0x3e7d92['index']+_0x3e7d92[0x0]['length']);return _0x77c8a2;}function findPassSpans(_0x103973,_0x3b79f6,_0x48977f){const _0x33ef98=_0x48977f==='exact'?_0x3749e5=>_0x3749e5:PASS_FNS[_0x48977f],_0x17afa6=splitLines(_0x103973),_0x48cc5f=splitLines(_0x3b79f6);if(_0x48cc5f['length']===0x0)return[];const _0x18217a=_0x17afa6['map'](_0x33ef98),_0x41ec1e=_0x48cc5f['map'](_0x33ef98);if(_0x41ec1e['every'](_0x523f74=>_0x523f74['length']===0x0))return[];const _0x5c610a=lineOffsets(_0x103973),_0xff1673=[];for(let _0xc79830=0x0;_0xc79830+_0x41ec1e['length']<=_0x18217a['length'];_0xc79830++){let _0x33054a=!![];for(let _0x487d32=0x0;_0x487d32<_0x41ec1e['length'];_0x487d32++){if(_0x18217a[_0xc79830+_0x487d32]!==_0x41ec1e[_0x487d32]){_0x33054a=![];break;}}if(!_0x33054a)continue;const _0x46cf1c=_0xc79830+_0x41ec1e['length']-0x1,_0x266cdb=_0x5c610a[_0xc79830]??0x0,_0xebec88=_0x5c610a[_0x46cf1c+0x1],_0x2cee16=_0xebec88===undefined?0x0:_0xebec88-(_0x5c610a[_0x46cf1c]??0x0)-(_0x17afa6[_0x46cf1c]??'')['length'];_0xff1673['push']({'start':_0x266cdb,'end':(_0xebec88??_0x103973['length'])-_0x2cee16,'pass':_0x48977f});}return _0xff1673;}function findOldStringSpans(_0x48f205,_0x34c7b8){if(!_0x34c7b8)return[];const _0x22c79a=['exact','trimEnd','trim','unicode'];for(const _0xd9328b of _0x22c79a){const _0x379c1a=findPassSpans(_0x48f205,_0x34c7b8,_0xd9328b);if(_0x379c1a['length']>0x0)return _0x379c1a;}return[];}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x2cd564,_0x4e9cb3,_0x72158b,_0x128caa){if(_0x128caa===undefined)_0x128caa=_0x72158b;var _0x3d0c1f=Object['getOwnPropertyDescriptor'](_0x4e9cb3,_0x72158b);(!_0x3d0c1f||('get'in _0x3d0c1f?!_0x4e9cb3['__esModule']:_0x3d0c1f['writable']||_0x3d0c1f['configurable']))&&(_0x3d0c1f={'enumerable':!![],'get':function(){return _0x4e9cb3[_0x72158b];}}),Object['defineProperty'](_0x2cd564,_0x128caa,_0x3d0c1f);}:function(_0xcbe2bd,_0x39bec0,_0x2aa618,_0x86b0eb){if(_0x86b0eb===undefined)_0x86b0eb=_0x2aa618;_0xcbe2bd[_0x86b0eb]=_0x39bec0[_0x2aa618];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x345b4a,_0x12f51f){Object['defineProperty'](_0x345b4a,'default',{'enumerable':!![],'value':_0x12f51f});}:function(_0x5e12e8,_0x38b9f3){_0x5e12e8['default']=_0x38b9f3;}),__importStar=this&&this['__importStar']||(function(){var _0x964b44=function(_0x90f954){return _0x964b44=Object['getOwnPropertyNames']||function(_0x3ada4b){var _0x2793be=[];for(var _0x5853ed in _0x3ada4b)if(Object['prototype']['hasOwnProperty']['call'](_0x3ada4b,_0x5853ed))_0x2793be[_0x2793be['length']]=_0x5853ed;return _0x2793be;},_0x964b44(_0x90f954);};return function(_0x4c9ab5){if(_0x4c9ab5&&_0x4c9ab5['__esModule'])return _0x4c9ab5;var _0x40c6ea={};if(_0x4c9ab5!=null){for(var _0x65a1d7=_0x964b44(_0x4c9ab5),_0x5be315=0x0;_0x5be315<_0x65a1d7['length'];_0x5be315++)if(_0x65a1d7[_0x5be315]!=='default')__createBinding(_0x40c6ea,_0x4c9ab5,_0x65a1d7[_0x5be315]);}return __setModuleDefault(_0x40c6ea,_0x4c9ab5),_0x40c6ea;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createReadFileTool']=createReadFileTool;const fs=__importStar(require('fs')),types_js_1=require('../types.js'),MAX_BYTES=0x32*0x400,MAX_LINES=0x1f4,definition={'timeoutMs':0x7530,'name':'read_file','description':'Read\x20a\x20text\x20file\x20from\x20the\x20project.\x20Returns\x20line-numbered\x20contents.\x20Optionally\x20read\x20a\x20slice\x20with\x20offset/limit\x20(1-based\x20line\x20numbers).','parameters':{'type':'object','required':['path'],'properties':{'path':{'type':'string','description':'Relative\x20or\x20absolute\x20path\x20to\x20the\x20file.'},'offset':{'type':'integer','description':'First\x20line\x20to\x20read\x20(1-based).\x20Default\x201.'},'limit':{'type':'integer','description':'Maximum\x20number\x20of\x20lines\x20to\x20read.\x20Default\x202000.'}}}};function createReadFileTool(){return{'definition':definition,async 'execute'(_0x4cacc1,_0x43c1a3,_0x2e805c,_0x2744da,_0x1168b0){try{if(_0x2e805c?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0x326080=_0x1168b0,_0x3428a3=String(_0x43c1a3['path']??'');if(!_0x3428a3)return(0x0,types_js_1['textResult'])('Missing\x20\x27path\x27.',!![]);let _0x15d150;try{_0x15d150=(0x0,types_js_1['resolveConstrainedPath'])(_0x3428a3,_0x326080['cwd']);}catch(_0x7dd101){return(0x0,types_js_1['textResult'])('Access\x20denied:\x20'+(_0x7dd101 instanceof Error?_0x7dd101['message']:String(_0x7dd101)),!![]);}if(_0x2e805c?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);(0x0,types_js_1['assertExternalDirectory'])(_0x15d150,_0x326080['cwd']);if(!fs['existsSync'](_0x15d150))return(0x0,types_js_1['textResult'])('File\x20not\x20found:\x20'+_0x3428a3,!![]);if(_0x2e805c?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(!fs['statSync'](_0x15d150)['isFile']())return(0x0,types_js_1['textResult'])('Not\x20a\x20file:\x20'+_0x3428a3,!![]);const _0x2676aa=typeof _0x43c1a3['offset']==='number'&&Number['isInteger'](_0x43c1a3['offset'])?Math['max'](0x1,_0x43c1a3['offset']):0x1;let _0x5313c1=typeof _0x43c1a3['limit']==='number'&&Number['isInteger'](_0x43c1a3['limit'])?Math['max'](0x1,_0x43c1a3['limit']):0x7d0;if(_0x5313c1>MAX_LINES)_0x5313c1=MAX_LINES;const _0x2c6235=fs['readFileSync'](_0x15d150,'utf8'),_0x13751e=Buffer['byteLength'](_0x2c6235,'utf8'),_0x4a59fa=_0x13751e>MAX_BYTES?_0x2c6235['slice'](0x0,MAX_BYTES):_0x2c6235,_0x2ec336=_0x4a59fa['split']('\x0a'),_0x4fa763=_0x2ec336['slice'](_0x2676aa-0x1,_0x2676aa-0x1+_0x5313c1),_0x361470=_0x4fa763['map']((_0x130fe1,_0x48aa8a)=>String(_0x2676aa+_0x48aa8a)['padStart'](0x5)+'\x20|\x20'+_0x130fe1)['join']('\x0a'),_0x10d85f=_0x2ec336['length']>_0x2676aa-0x1+_0x5313c1?'\x0a...\x20('+(_0x2ec336['length']-(_0x2676aa-0x1+_0x5313c1))+'\x20more\x20lines)':'',_0x1d14a0=_0x13751e>MAX_BYTES?'\x0a[content\x20capped\x20to\x20'+MAX_BYTES/0x400+'\x20KB]':'';return(0x0,types_js_1['textResult'])('File:\x20'+_0x3428a3+'\x20('+_0x2ec336['length']+'\x20lines)\x0a'+_0x361470+_0x10d85f+_0x1d14a0);}catch(_0x193726){return(0x0,types_js_1['textResult'])('Read\x20error:\x20'+(_0x193726 instanceof Error?_0x193726['message']:String(_0x193726)),!![]);}}};}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x2c7a3b,_0x5e86ba,_0x55d866,_0x5c7a0f){if(_0x5c7a0f===undefined)_0x5c7a0f=_0x55d866;var _0x2f91d8=Object['getOwnPropertyDescriptor'](_0x5e86ba,_0x55d866);(!_0x2f91d8||('get'in _0x2f91d8?!_0x5e86ba['__esModule']:_0x2f91d8['writable']||_0x2f91d8['configurable']))&&(_0x2f91d8={'enumerable':!![],'get':function(){return _0x5e86ba[_0x55d866];}}),Object['defineProperty'](_0x2c7a3b,_0x5c7a0f,_0x2f91d8);}:function(_0x210e66,_0x463635,_0x1ac054,_0x4f29f6){if(_0x4f29f6===undefined)_0x4f29f6=_0x1ac054;_0x210e66[_0x4f29f6]=_0x463635[_0x1ac054];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x57e984,_0x1f6af5){Object['defineProperty'](_0x57e984,'default',{'enumerable':!![],'value':_0x1f6af5});}:function(_0x202eea,_0x16097d){_0x202eea['default']=_0x16097d;}),__importStar=this&&this['__importStar']||(function(){var _0x293b00=function(_0xef1bd2){return _0x293b00=Object['getOwnPropertyNames']||function(_0x5bc1e5){var _0x2ae709=[];for(var _0x3508ea in _0x5bc1e5)if(Object['prototype']['hasOwnProperty']['call'](_0x5bc1e5,_0x3508ea))_0x2ae709[_0x2ae709['length']]=_0x3508ea;return _0x2ae709;},_0x293b00(_0xef1bd2);};return function(_0x2c8a78){if(_0x2c8a78&&_0x2c8a78['__esModule'])return _0x2c8a78;var _0xf252b0={};if(_0x2c8a78!=null){for(var _0xbaeb7c=_0x293b00(_0x2c8a78),_0x5defa3=0x0;_0x5defa3<_0xbaeb7c['length'];_0x5defa3++)if(_0xbaeb7c[_0x5defa3]!=='default')__createBinding(_0xf252b0,_0x2c8a78,_0xbaeb7c[_0x5defa3]);}return __setModuleDefault(_0xf252b0,_0x2c8a78),_0xf252b0;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createReadFileTool']=createReadFileTool;const fs=__importStar(require('fs')),types_js_1=require('../types.js'),MAX_BYTES=0x32*0x400,MAX_LINES=0x1f4,definition={'timeoutMs':0x7530,'name':'read_file','description':'Read\x20a\x20text\x20file\x20from\x20the\x20project.\x20Returns\x20line-numbered\x20contents.\x20Optionally\x20read\x20a\x20slice\x20with\x20offset/limit\x20(1-based\x20line\x20numbers).','parameters':{'type':'object','required':['path'],'properties':{'path':{'type':'string','description':'Relative\x20or\x20absolute\x20path\x20to\x20the\x20file.'},'offset':{'type':'integer','description':'First\x20line\x20to\x20read\x20(1-based).\x20Default\x201.'},'limit':{'type':'integer','description':'Maximum\x20number\x20of\x20lines\x20to\x20read.\x20Default\x202000.'}}}};function createReadFileTool(){return{'definition':definition,async 'execute'(_0x663dbd,_0x80c81c,_0x30d55f,_0x91c26d,_0x18e193){try{if(_0x30d55f?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0xb24314=_0x18e193,_0x438dbe=String(_0x80c81c['path']??'');if(!_0x438dbe)return(0x0,types_js_1['textResult'])('Missing\x20\x27path\x27.',!![]);let _0x69f952;try{_0x69f952=(0x0,types_js_1['resolveConstrainedPath'])(_0x438dbe,_0xb24314['cwd']);}catch(_0x10485c){return(0x0,types_js_1['textResult'])('Access\x20denied:\x20'+(_0x10485c instanceof Error?_0x10485c['message']:String(_0x10485c)),!![]);}if(_0x30d55f?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);(0x0,types_js_1['assertExternalDirectory'])(_0x69f952,_0xb24314['cwd']);if(!fs['existsSync'](_0x69f952))return(0x0,types_js_1['textResult'])('File\x20not\x20found:\x20'+_0x438dbe,!![]);if(_0x30d55f?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(!fs['statSync'](_0x69f952)['isFile']())return(0x0,types_js_1['textResult'])('Not\x20a\x20file:\x20'+_0x438dbe,!![]);const _0xdf11a6=typeof _0x80c81c['offset']==='number'&&Number['isInteger'](_0x80c81c['offset'])?Math['max'](0x1,_0x80c81c['offset']):0x1;let _0x2e9cb0=typeof _0x80c81c['limit']==='number'&&Number['isInteger'](_0x80c81c['limit'])?Math['max'](0x1,_0x80c81c['limit']):0x7d0;if(_0x2e9cb0>MAX_LINES)_0x2e9cb0=MAX_LINES;const _0x43e433=fs['readFileSync'](_0x69f952,'utf8'),_0x54b758=Buffer['byteLength'](_0x43e433,'utf8'),_0x352437=_0x54b758>MAX_BYTES?_0x43e433['slice'](0x0,MAX_BYTES):_0x43e433,_0x2db0ef=_0x352437['split']('\x0a'),_0x5070d3=_0x2db0ef['slice'](_0xdf11a6-0x1,_0xdf11a6-0x1+_0x2e9cb0),_0x50b4aa=_0x5070d3['map']((_0x119af9,_0x492245)=>String(_0xdf11a6+_0x492245)['padStart'](0x5)+'\x20|\x20'+_0x119af9)['join']('\x0a'),_0x429e0e=_0x2db0ef['length']>_0xdf11a6-0x1+_0x2e9cb0?'\x0a...\x20('+(_0x2db0ef['length']-(_0xdf11a6-0x1+_0x2e9cb0))+'\x20more\x20lines)':'',_0x12ca42=_0x54b758>MAX_BYTES?'\x0a[content\x20capped\x20to\x20'+MAX_BYTES/0x400+'\x20KB]':'';return(0x0,types_js_1['textResult'])('File:\x20'+_0x438dbe+'\x20('+_0x2db0ef['length']+'\x20lines)\x0a'+_0x50b4aa+_0x429e0e+_0x12ca42);}catch(_0x29cd1e){return(0x0,types_js_1['textResult'])('Read\x20error:\x20'+(_0x29cd1e instanceof Error?_0x29cd1e['message']:String(_0x29cd1e)),!![]);}}};}