@skt-ai-labs/trayambak-cli 0.6.4 → 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 (390) 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/roles.js +1 -1
  80. package/dist/apps/runtime/src/controller/router.js +1 -1
  81. package/dist/apps/runtime/src/controller/state.js +1 -1
  82. package/dist/apps/runtime/src/developer-mode/bug-fix-auto.js +1 -1
  83. package/dist/apps/runtime/src/developer-mode/developer-mode.js +1 -1
  84. package/dist/apps/runtime/src/developer-mode/rag-cache.js +1 -1
  85. package/dist/apps/runtime/src/developer-mode/sota-mode.js +1 -1
  86. package/dist/apps/runtime/src/developer-mode/subagent-orchestrator.js +1 -1
  87. package/dist/apps/runtime/src/evidence/evidence-store.js +1 -1
  88. package/dist/apps/runtime/src/github-auth.js +1 -1
  89. package/dist/apps/runtime/src/goals.js +1 -1
  90. package/dist/apps/runtime/src/index.js +1 -1
  91. package/dist/apps/runtime/src/knowledge/knowledge-gate.js +1 -1
  92. package/dist/apps/runtime/src/license.js +1 -1
  93. package/dist/apps/runtime/src/llama-cpp-bin.js +1 -1
  94. package/dist/apps/runtime/src/mistakes/mistake-detector.js +1 -1
  95. package/dist/apps/runtime/src/notifications.js +1 -1
  96. package/dist/apps/runtime/src/planner/planner.js +1 -1
  97. package/dist/apps/runtime/src/prompt/auto-title.js +1 -1
  98. package/dist/apps/runtime/src/prompt/enhance-prompt.js +1 -1
  99. package/dist/apps/runtime/src/prompt/power-prompt.js +1 -1
  100. package/dist/apps/runtime/src/prompt/rules.js +1 -1
  101. package/dist/apps/runtime/src/repetition/repetition-detector.js +1 -1
  102. package/dist/apps/runtime/src/self-improvement.js +1 -1
  103. package/dist/apps/runtime/src/session/session.js +1 -1
  104. package/dist/apps/runtime/src/tools/artifacts/artifact.js +1 -1
  105. package/dist/apps/runtime/src/tools/checkpoint/checkpoint.js +1 -1
  106. package/dist/apps/runtime/src/tools/checkpoint/rewind.js +1 -1
  107. package/dist/apps/runtime/src/tools/code/codemode.js +1 -1
  108. package/dist/apps/runtime/src/tools/code/fim.js +1 -1
  109. package/dist/apps/runtime/src/tools/code/next-edit.js +1 -1
  110. package/dist/apps/runtime/src/tools/code-search/code-search.js +1 -1
  111. package/dist/apps/runtime/src/tools/code-search/semantic-search.js +1 -1
  112. package/dist/apps/runtime/src/tools/code-search/symbols.js +1 -1
  113. package/dist/apps/runtime/src/tools/command-exec/bash.js +1 -1
  114. package/dist/apps/runtime/src/tools/command-exec/terminal.js +1 -1
  115. package/dist/apps/runtime/src/tools/commands/commands.js +1 -1
  116. package/dist/apps/runtime/src/tools/custom/custom-tools.js +1 -1
  117. package/dist/apps/runtime/src/tools/diagnostics/diagnostics-tool.js +1 -1
  118. package/dist/apps/runtime/src/tools/diagnostics/tsc-diagnostics.js +1 -1
  119. package/dist/apps/runtime/src/tools/directory/list-dir.js +1 -1
  120. package/dist/apps/runtime/src/tools/file-edit/edit-file.js +1 -1
  121. package/dist/apps/runtime/src/tools/file-edit/fs-walk.js +1 -1
  122. package/dist/apps/runtime/src/tools/file-edit/fuzzy-match.js +1 -1
  123. package/dist/apps/runtime/src/tools/file-edit/read-file.js +1 -1
  124. package/dist/apps/runtime/src/tools/file-edit/write-file.js +1 -1
  125. package/dist/apps/runtime/src/tools/github/github.js +1 -1
  126. package/dist/apps/runtime/src/tools/globber/glob.js +1 -1
  127. package/dist/apps/runtime/src/tools/hook-exec.js +1 -1
  128. package/dist/apps/runtime/src/tools/index.js +1 -1
  129. package/dist/apps/runtime/src/tools/manifest/read-manifest.js +1 -1
  130. package/dist/apps/runtime/src/tools/marketplace/marketplace.js +1 -1
  131. package/dist/apps/runtime/src/tools/mcp/mcp-install.js +1 -1
  132. package/dist/apps/runtime/src/tools/mcp/mcp-runner-tool.js +1 -1
  133. package/dist/apps/runtime/src/tools/mcp/mcp.js +1 -1
  134. package/dist/apps/runtime/src/tools/mcp/registry.js +1 -1
  135. package/dist/apps/runtime/src/tools/mcp/tool-search.js +1 -1
  136. package/dist/apps/runtime/src/tools/memory/dream.js +1 -1
  137. package/dist/apps/runtime/src/tools/memory/memory.js +1 -1
  138. package/dist/apps/runtime/src/tools/mode/mode.js +1 -1
  139. package/dist/apps/runtime/src/tools/pentest/pentest-tools.js +1 -1
  140. package/dist/apps/runtime/src/tools/pentest/security-tool-registry.js +1 -1
  141. package/dist/apps/runtime/src/tools/planning/todo.js +1 -1
  142. package/dist/apps/runtime/src/tools/planning/todoread.js +1 -1
  143. package/dist/apps/runtime/src/tools/regex/grep.js +1 -1
  144. package/dist/apps/runtime/src/tools/search/ripgrep.js +1 -1
  145. package/dist/apps/runtime/src/tools/skills/skill-core.js +1 -1
  146. package/dist/apps/runtime/src/tools/skills/skill-loading.js +1 -1
  147. package/dist/apps/runtime/src/tools/skills/skill-model.js +1 -1
  148. package/dist/apps/runtime/src/tools/skills/skill-parser.js +1 -1
  149. package/dist/apps/runtime/src/tools/skills/skill-selection.js +1 -1
  150. package/dist/apps/runtime/src/tools/skills/skills.js +1 -1
  151. package/dist/apps/runtime/src/tools/text/csv.js +1 -1
  152. package/dist/apps/runtime/src/tools/text/diff-render.js +1 -1
  153. package/dist/apps/runtime/src/tools/text/diff.js +1 -1
  154. package/dist/apps/runtime/src/tools/text/summarize.js +1 -1
  155. package/dist/apps/runtime/src/tools/text/yaml.js +1 -1
  156. package/dist/apps/runtime/src/tools/trayambak/agent-catalog.js +1 -1
  157. package/dist/apps/runtime/src/tools/trayambak/agent-manager.js +1 -1
  158. package/dist/apps/runtime/src/tools/trayambak/agent.js +1 -1
  159. package/dist/apps/runtime/src/tools/trayambak/ask-question.js +1 -1
  160. package/dist/apps/runtime/src/tools/trayambak/cron.js +1 -1
  161. package/dist/apps/runtime/src/tools/trayambak/debate.js +1 -1
  162. package/dist/apps/runtime/src/tools/trayambak/fleet.js +1 -1
  163. package/dist/apps/runtime/src/tools/trayambak/generate-agent.js +1 -1
  164. package/dist/apps/runtime/src/tools/trayambak/monitor.js +1 -1
  165. package/dist/apps/runtime/src/tools/trayambak/notebook-edit.js +1 -1
  166. package/dist/apps/runtime/src/tools/trayambak/parallel-execute.js +1 -1
  167. package/dist/apps/runtime/src/tools/trayambak/parallel-review.js +1 -1
  168. package/dist/apps/runtime/src/tools/trayambak/rules.js +1 -1
  169. package/dist/apps/runtime/src/tools/trayambak/send-message.js +1 -1
  170. package/dist/apps/runtime/src/tools/trayambak/sota-solve.js +1 -1
  171. package/dist/apps/runtime/src/tools/trayambak/swarm.js +1 -1
  172. package/dist/apps/runtime/src/tools/trayambak/tasks.js +1 -1
  173. package/dist/apps/runtime/src/tools/trayambak/team.js +1 -1
  174. package/dist/apps/runtime/src/tools/trayambak/workflow.js +1 -1
  175. package/dist/apps/runtime/src/tools/trayambak/worktree.js +1 -1
  176. package/dist/apps/runtime/src/tools/types.js +1 -1
  177. package/dist/apps/runtime/src/tools/web/multi-search.js +1 -1
  178. package/dist/apps/runtime/src/tools/web/web-search.js +1 -1
  179. package/dist/apps/runtime/src/tools/web/webbrowse.js +1 -1
  180. package/dist/apps/runtime/src/tools/web/webfetch.js +1 -1
  181. package/dist/apps/runtime/src/update/auto-update.js +1 -1
  182. package/dist/packages/acp/src/index.js +1 -1
  183. package/dist/packages/approval/src/index.js +1 -1
  184. package/dist/packages/checkpoints/src/index.js +1 -1
  185. package/dist/packages/cli/src/commands/registry.js +1 -1
  186. package/dist/packages/client/src/index.js +1 -1
  187. package/dist/packages/coding-agent/src/index.js +1 -1
  188. package/dist/packages/core/src/agent_communication.js +1 -1
  189. package/dist/packages/core/src/agent_registry.js +1 -1
  190. package/dist/packages/core/src/agents_md.js +1 -1
  191. package/dist/packages/core/src/analytics.js +1 -1
  192. package/dist/packages/core/src/approval.js +1 -1
  193. package/dist/packages/core/src/auth.js +1 -1
  194. package/dist/packages/core/src/context/compactor.js +1 -1
  195. package/dist/packages/core/src/cron/scheduler.js +1 -1
  196. package/dist/packages/core/src/curator/librarian.js +1 -1
  197. package/dist/packages/core/src/env_filter.js +1 -1
  198. package/dist/packages/core/src/extension_api.js +1 -1
  199. package/dist/packages/core/src/feature_flags.js +1 -1
  200. package/dist/packages/core/src/hook_runtime.js +1 -1
  201. package/dist/packages/core/src/i18n.js +1 -1
  202. package/dist/packages/core/src/memory/manager.js +1 -1
  203. package/dist/packages/core/src/memory/provider.js +1 -1
  204. package/dist/packages/core/src/plan_mode.js +1 -1
  205. package/dist/packages/core/src/process.js +1 -1
  206. package/dist/packages/core/src/providers/manager.js +1 -1
  207. package/dist/packages/core/src/providers/registry.js +1 -1
  208. package/dist/packages/core/src/rollout_budget.js +1 -1
  209. package/dist/packages/core/src/secrets.js +1 -1
  210. package/dist/packages/core/src/session_store.js +1 -1
  211. package/dist/packages/core/src/state_db.js +1 -1
  212. package/dist/packages/core/src/subagents.js +1 -1
  213. package/dist/packages/core/src/token_budget.js +1 -1
  214. package/dist/packages/core/src/toolsets/arsenal.js +1 -1
  215. package/dist/packages/core/src/validate.js +1 -1
  216. package/dist/packages/execpolicy/src/policy.js +1 -1
  217. package/dist/packages/function/src/index.js +1 -1
  218. package/dist/packages/harness/src/index.js +1 -1
  219. package/dist/packages/mcp/src/index.js +1 -1
  220. package/dist/packages/mcp/src/oauth-callback.js +1 -1
  221. package/dist/packages/mcp/src/oauth.js +1 -1
  222. package/dist/packages/mcp/src/spawn-resolve.js +1 -1
  223. package/dist/packages/mcp-server/src/index.js +1 -1
  224. package/dist/packages/modes/src/index.js +1 -1
  225. package/dist/packages/protocol/src/events.js +1 -1
  226. package/dist/packages/protocol/src/messages.js +1 -1
  227. package/dist/packages/protocol/src/permission-rules.js +1 -1
  228. package/dist/packages/protocol/src/permissions.js +1 -1
  229. package/dist/packages/protocol/src/tools.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/chatwidget/chat-widget.js +1 -1
  268. package/dist/packages/tui/src/dialogs.js +1 -1
  269. package/dist/packages/tui/src/index.js +1 -1
  270. package/dist/packages/tui/src/ink-app/glyphs.js +1 -1
  271. package/dist/packages/tui/src/ink-app/utils/stringWidth.js +1 -1
  272. package/dist/packages/tui/src/ink-app-esm/AgentPicker.js +1 -1
  273. package/dist/packages/tui/src/ink-app-esm/App.js +1 -1
  274. package/dist/packages/tui/src/ink-app-esm/CommandPalette.js +1 -1
  275. package/dist/packages/tui/src/ink-app-esm/ExecToolCallItem.js +1 -1
  276. package/dist/packages/tui/src/ink-app-esm/Footer.js +1 -1
  277. package/dist/packages/tui/src/ink-app-esm/GroupedToolUseContent.js +1 -1
  278. package/dist/packages/tui/src/ink-app-esm/MCPToolCallItem.js +1 -1
  279. package/dist/packages/tui/src/ink-app-esm/MessageList.js +1 -1
  280. package/dist/packages/tui/src/ink-app-esm/MessageResponse.js +1 -1
  281. package/dist/packages/tui/src/ink-app-esm/MessageRow.js +1 -1
  282. package/dist/packages/tui/src/ink-app-esm/ModelPicker.js +1 -1
  283. package/dist/packages/tui/src/ink-app-esm/PermissionOverlay.js +1 -1
  284. package/dist/packages/tui/src/ink-app-esm/PromptInput.js +1 -1
  285. package/dist/packages/tui/src/ink-app-esm/ProviderPicker.js +1 -1
  286. package/dist/packages/tui/src/ink-app-esm/SandboxSetup.js +1 -1
  287. package/dist/packages/tui/src/ink-app-esm/SessionPicker.js +1 -1
  288. package/dist/packages/tui/src/ink-app-esm/Sidebar.js +1 -1
  289. package/dist/packages/tui/src/ink-app-esm/Spinner.js +1 -1
  290. package/dist/packages/tui/src/ink-app-esm/SplashScreen.js +1 -1
  291. package/dist/packages/tui/src/ink-app-esm/SubagentPanel.js +1 -1
  292. package/dist/packages/tui/src/ink-app-esm/SubagentRow.js +1 -1
  293. package/dist/packages/tui/src/ink-app-esm/SwarmToolCallItem.js +1 -1
  294. package/dist/packages/tui/src/ink-app-esm/ThemePicker.js +1 -1
  295. package/dist/packages/tui/src/ink-app-esm/ToolCallItem.js +1 -1
  296. package/dist/packages/tui/src/ink-app-esm/ToolUseLoader.js +1 -1
  297. package/dist/packages/tui/src/ink-app-esm/TrayambakLogo.js +1 -1
  298. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolCanceledMessage.js +1 -1
  299. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolErrorMessage.js +1 -1
  300. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolRejectMessage.js +1 -1
  301. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolResultMessage.js +1 -1
  302. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolSuccessMessage.js +1 -1
  303. package/dist/packages/tui/src/ink-app-esm/WelcomeScreen.js +1 -1
  304. package/dist/packages/tui/src/ink-app-esm/WhichKey.js +1 -1
  305. package/dist/packages/tui/src/ink-app-esm/app-bootstrap.js +1 -1
  306. package/dist/packages/tui/src/ink-app-esm/clipboard.js +1 -1
  307. package/dist/packages/tui/src/ink-app-esm/command-palette.js +1 -1
  308. package/dist/packages/tui/src/ink-app-esm/file-mention.js +1 -1
  309. package/dist/packages/tui/src/ink-app-esm/footer-fit.js +1 -1
  310. package/dist/packages/tui/src/ink-app-esm/fuzzy.js +1 -1
  311. package/dist/packages/tui/src/ink-app-esm/glyphs.js +1 -1
  312. package/dist/packages/tui/src/ink-app-esm/index.js +1 -1
  313. package/dist/packages/tui/src/ink-app-esm/keys.js +1 -1
  314. package/dist/packages/tui/src/ink-app-esm/mode-stack.js +1 -1
  315. package/dist/packages/tui/src/ink-app-esm/model-picker.js +1 -1
  316. package/dist/packages/tui/src/ink-app-esm/mouse-input.js +1 -1
  317. package/dist/packages/tui/src/ink-app-esm/prompt-files.js +1 -1
  318. package/dist/packages/tui/src/ink-app-esm/provider-model-support.js +1 -1
  319. package/dist/packages/tui/src/ink-app-esm/resize-guard.js +1 -1
  320. package/dist/packages/tui/src/ink-app-esm/restore-messages.js +1 -1
  321. package/dist/packages/tui/src/ink-app-esm/scroll-math.js +1 -1
  322. package/dist/packages/tui/src/ink-app-esm/session-picker-actions.js +1 -1
  323. package/dist/packages/tui/src/ink-app-esm/sidebar-data.js +1 -1
  324. package/dist/packages/tui/src/ink-app-esm/skt-themes.js +1 -1
  325. package/dist/packages/tui/src/ink-app-esm/stdin-sanitizer.js +1 -1
  326. package/dist/packages/tui/src/ink-app-esm/subagent-view.js +1 -1
  327. package/dist/packages/tui/src/ink-app-esm/syntax-highlight.js +1 -1
  328. package/dist/packages/tui/src/ink-app-esm/terminal-notify.js +1 -1
  329. package/dist/packages/tui/src/ink-app-esm/text-format.js +1 -1
  330. package/dist/packages/tui/src/ink-app-esm/theme.js +1 -1
  331. package/dist/packages/tui/src/ink-app-esm/themeColors.js +1 -1
  332. package/dist/packages/tui/src/ink-app-esm/types.js +1 -1
  333. package/dist/packages/tui/src/ink-app-esm/use-border-pulse.js +1 -1
  334. package/dist/packages/tui/src/ink-app-esm/useAppInput.js +1 -1
  335. package/dist/packages/tui/src/ink-app-esm/utils/stringWidth.js +1 -1
  336. package/dist/packages/tui/src/keybindings.js +1 -1
  337. package/dist/packages/tui/src/keys.js +1 -1
  338. package/dist/packages/tui/src/notifications.js +1 -1
  339. package/dist/packages/tui/src/premium-ui.js +1 -1
  340. package/dist/packages/tui/src/stdin-buffer.js +1 -1
  341. package/dist/packages/tui/src/terminal-ui.js +1 -1
  342. package/dist/packages/tui/src/tui/terminal.js +1 -1
  343. package/dist/packages/tui/src/ui/box.js +1 -1
  344. package/dist/packages/tui/src/ui/dialog.js +1 -1
  345. package/dist/packages/tui/src/ui/footer-mode.js +1 -1
  346. package/dist/packages/tui/src/ui/footer.js +1 -1
  347. package/dist/packages/tui/src/ui/key-hint.js +1 -1
  348. package/dist/packages/tui/src/ui/skt-themes.js +1 -1
  349. package/dist/packages/tui/src/ui/spinner.js +1 -1
  350. package/dist/packages/tui/src/ui/theme.js +1 -1
  351. package/dist/packages/tui/src/ui/toast.js +1 -1
  352. package/dist/packages/tui/src/ui/tool-display.js +1 -1
  353. package/dist/packages/tui/src/ui/tool-palette.js +1 -1
  354. package/dist/skt/0-points/points.js +1 -1
  355. package/dist/skt/1-errors/mistake.js +1 -1
  356. package/dist/skt/1-errors/penalty.js +1 -1
  357. package/dist/skt/10-upload/upload.js +1 -1
  358. package/dist/skt/11-ui/components.js +1 -1
  359. package/dist/skt/12-control/content-control.js +1 -1
  360. package/dist/skt/12-control/hallucination.js +1 -1
  361. package/dist/skt/12-control/points.js +1 -1
  362. package/dist/skt/12-control/repetition.js +1 -1
  363. package/dist/skt/12-control/verification.js +1 -1
  364. package/dist/skt/13-healing/ast-validator.js +1 -1
  365. package/dist/skt/13-healing/healing-controller.js +1 -1
  366. package/dist/skt/13-healing/journal.js +1 -1
  367. package/dist/skt/13-healing/rollback.js +1 -1
  368. package/dist/skt/13-healing/scratchpad.js +1 -1
  369. package/dist/skt/13-healing/subprocess.js +1 -1
  370. package/dist/skt/13-healing/verify.js +1 -1
  371. package/dist/skt/14-hooks/codec.js +1 -1
  372. package/dist/skt/14-hooks/events.js +1 -1
  373. package/dist/skt/14-hooks/matcher.js +1 -1
  374. package/dist/skt/14-hooks/merge.js +1 -1
  375. package/dist/skt/14-hooks/runner.js +1 -1
  376. package/dist/skt/14-hooks/types.js +1 -1
  377. package/dist/skt/3-user/instructions.js +1 -1
  378. package/dist/skt/4-mem/memory.js +1 -1
  379. package/dist/skt/5-eval/cot-chain.js +1 -1
  380. package/dist/skt/5-eval/cot.js +1 -1
  381. package/dist/skt/5-eval/eval.js +1 -1
  382. package/dist/skt/6-u/improvements.js +1 -1
  383. package/dist/skt/6-u/reward.js +1 -1
  384. package/dist/skt/7-cli/autorepair.js +1 -1
  385. package/dist/skt/7-cli/clibugs.js +1 -1
  386. package/dist/skt/7-cli/reinstall.js +1 -1
  387. package/dist/skt/7-cli/reset.js +1 -1
  388. package/dist/skt/9-session/session.js +1 -1
  389. package/dist/skt/context.js +1 -1
  390. 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 _0x1a11eb=Date['now']();for(const [_0x5e389b,_0x306cb3]of backgroundJobs){_0x306cb3['state']==='done'&&_0x306cb3['settledAt']!==undefined&&_0x1a11eb-_0x306cb3['settledAt']>COMPLETED_RETENTION_MS&&backgroundJobs['delete'](_0x5e389b);}}function resetBackgroundJobsForTests(){for(const _0x399530 of backgroundJobs['values']()){if(_0x399530['state']==='running')void _0x399530['kill']?.()['catch'](()=>{});}backgroundJobs['clear']();}async function startBackgroundJob(_0x559fcf){sweepBackgroundJobs();const _0xb563cd=[...backgroundJobs['values']()]['filter'](_0x562b1a=>_0x562b1a['state']==='running')['length'];if(_0xb563cd>=MAX_BACKGROUND_JOBS)return(0x0,types_js_1['textResult'])('Too\x20many\x20background\x20jobs\x20running\x20('+_0xb563cd+'/'+MAX_BACKGROUND_JOBS+').\x20Poll\x20existing\x20jobs\x20with\x20job_id\x20or\x20kill\x20them\x20first.',!![]);const _0x8a82ad=(0x0,crypto_1['randomUUID'])(),_0x2e91c6={'id':_0x8a82ad,'command':_0x559fcf['command'],'cwd':_0x559fcf['ctx']['cwd'],'startedAt':Date['now'](),'timeoutMs':_0x559fcf['timeoutMs'],'state':'running'};backgroundJobs['set'](_0x8a82ad,_0x2e91c6);if((0x0,index_js_1['shouldUseOsSandbox'])(_0x559fcf['sandboxType'])){let _0x5b26db;try{_0x5b26db=await(_0x559fcf['spawnFn']??index_js_1['spawnProcess'])(osSpawnRequest({'shell':_0x559fcf['shell'],'shellArgs':_0x559fcf['shellArgs'],'command':_0x559fcf['command'],'cwd':_0x559fcf['ctx']['cwd'],'env':_0x559fcf['safeEnv'],'sandboxType':_0x559fcf['sandboxType'],'networkDisabled':_0x559fcf['networkDisabled'],'timeoutMs':_0x559fcf['timeoutMs']}));}catch(_0x25d164){return backgroundJobs['delete'](_0x8a82ad),(0x0,types_js_1['textResult'])('Failed\x20to\x20start\x20background\x20job:\x20'+(_0x25d164 instanceof Error?_0x25d164['message']:String(_0x25d164)),!![]);}return _0x2e91c6['pid']=_0x5b26db['pid'],_0x2e91c6['kill']=_0x5b26db['kill'],void _0x5b26db['waitForExit']()['then'](async _0x11898c=>{_0x2e91c6['output']=await _0x5b26db['readAll']()['catch'](()=>''),_0x2e91c6['exitCode']=_0x11898c,_0x2e91c6['settledAt']=Date['now'](),_0x2e91c6['state']='done';})['catch'](()=>{_0x2e91c6['output']=_0x2e91c6['output']??'',_0x2e91c6['exitCode']=0x1,_0x2e91c6['settledAt']=Date['now'](),_0x2e91c6['state']='done';}),(0x0,types_js_1['textResult'])('Background\x20job\x20started.\x0ajob_id:\x20'+_0x8a82ad+'\x0acommand:\x20'+_0x559fcf['command']+'\x0atimeout:\x20'+_0x559fcf['timeoutSec']+'s\x0asandbox:\x20os\x20('+_0x5b26db['sandboxType']+')\x0a\x0aPoll\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x8a82ad+'\x22})\x20for\x20status\x20and\x20output;\x20stop\x20it\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x8a82ad+'\x22,\x20\x22action\x22:\x20\x22kill\x22}).');}const _0x4eef00=new process_js_1['ProcessManager']();let _0x23ca11;try{_0x23ca11=await _0x4eef00['spawn']({'command':[_0x559fcf['shell'],..._0x559fcf['shellArgs'],_0x559fcf['command']],'cwd':_0x559fcf['ctx']['cwd'],'env':_0x559fcf['safeEnv'],'timeoutMs':_0x559fcf['timeoutMs'],'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'processGroup':!![]});}catch(_0x164e0d){return backgroundJobs['delete'](_0x8a82ad),(0x0,types_js_1['textResult'])('Failed\x20to\x20start\x20background\x20job:\x20'+(_0x164e0d instanceof Error?_0x164e0d['message']:String(_0x164e0d)),!![]);}return _0x2e91c6['pid']=_0x23ca11['pid'],_0x2e91c6['kill']=_0x23ca11['kill'],void _0x23ca11['exitCode']['then'](async _0x4d9d35=>{const _0x14615d=await _0x23ca11['output']['catch'](()=>'');_0x2e91c6['output']=_0x14615d,_0x2e91c6['exitCode']=_0x4d9d35,_0x2e91c6['settledAt']=Date['now'](),_0x2e91c6['state']='done';})['catch'](()=>{_0x2e91c6['output']=_0x2e91c6['output']??'',_0x2e91c6['exitCode']=0x1,_0x2e91c6['settledAt']=Date['now'](),_0x2e91c6['state']='done';}),(0x0,types_js_1['textResult'])('Background\x20job\x20started.\x0ajob_id:\x20'+_0x8a82ad+'\x0acommand:\x20'+_0x559fcf['command']+'\x0atimeout:\x20'+_0x559fcf['timeoutSec']+'s\x0a\x0aPoll\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x8a82ad+'\x22})\x20for\x20status\x20and\x20output;\x20stop\x20it\x20with\x20bash({\x22job_id\x22:\x20\x22'+_0x8a82ad+'\x22,\x20\x22action\x22:\x20\x22kill\x22}).');}async function handleJobOperation(_0x1a51be,_0x716c77,_0x123cf4){sweepBackgroundJobs();if(_0x716c77!==undefined&&_0x716c77!=='status'&&_0x716c77!=='kill')return(0x0,types_js_1['textResult'])('Unknown\x20action\x20\x27'+String(_0x716c77)+'\x27.\x20Use\x20\x22status\x22\x20or\x20\x22kill\x22.',!![]);const _0x187b3e=backgroundJobs['get'](_0x1a51be);if(!_0x187b3e)return(0x0,types_js_1['textResult'])('Unknown\x20job_id\x20\x27'+_0x1a51be+'\x27.\x20Jobs\x20stay\x20available\x20for\x20'+Math['round'](COMPLETED_RETENTION_MS/0xea60)+'\x20minutes\x20after\x20they\x20finish.',!![]);if(_0x716c77==='kill'){if(_0x187b3e['state']==='done')return(0x0,types_js_1['textResult'])('Job\x20'+_0x1a51be+'\x20already\x20finished\x20(exit\x20'+(_0x187b3e['exitCode']??'?')+').');return _0x187b3e['killRequested']=!![],await _0x187b3e['kill']?.()['catch'](()=>{}),(0x0,types_js_1['textResult'])('Job\x20'+_0x1a51be+'\x20killed:\x20'+_0x187b3e['command']);}if(_0x187b3e['state']==='running'){const _0x41d2f1=Math['round']((Date['now']()-_0x187b3e['startedAt'])/0x3e8);return(0x0,types_js_1['textResult'])('Job\x20'+_0x1a51be+'\x20still\x20running\x20('+_0x41d2f1+'s)\x0acommand:\x20'+_0x187b3e['command']+'\x0acwd:\x20'+_0x187b3e['cwd']+'\x0aOutput\x20is\x20collected\x20when\x20the\x20job\x20finishes\x20—\x20poll\x20again\x20for\x20the\x20result.');}const _0x335184=(0x0,types_js_1['truncateOutput'])(_0x187b3e['output']??'',_0x123cf4['config']),_0x342790=[];_0x187b3e['settledAt']!==undefined&&_0x187b3e['settledAt']-_0x187b3e['startedAt']>=_0x187b3e['timeoutMs']&&_0x342790['push']('[hit\x20the\x20'+Math['round'](_0x187b3e['timeoutMs']/0x3e8)+'s\x20timeout\x20and\x20was\x20killed]');if(_0x187b3e['killRequested'])_0x342790['push']('[killed\x20on\x20request]');if(_0x187b3e['exitCode']!==0x0)_0x342790['push']('[exit\x20code\x20'+_0x187b3e['exitCode']+']');const _0x4278f3=_0x342790['length']>0x0?'\x0a\x0a'+_0x342790['join']('\x0a'):'';return(0x0,types_js_1['textResult'])('Job\x20'+_0x1a51be+'\x20finished\x0acommand:\x20'+_0x187b3e['command']+'\x0a\x0a'+_0x335184['text']+_0x4278f3,_0x187b3e['exitCode']!==0x0);}function osSpawnRequest(_0x853626){return{'command':[_0x853626['shell'],..._0x853626['shellArgs'],_0x853626['command']],'cwd':_0x853626['cwd'],'sandboxType':_0x853626['sandboxType'],'env':_0x853626['env'],'networkPolicy':{'disableNetwork':_0x853626['networkDisabled'],'allowedDomains':[],'blockedDomains':[]},'filesystemPolicy':{'writableRoots':[_0x853626['cwd']],'readOnlySubpaths':[],'denyReadPaths':[],'denyWritePaths':[]},'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'timeoutMs':_0x853626['timeoutMs'],'signal':_0x853626['signal']};}function runForegroundOsSandboxed(_0x458200){const _0x94f504=_0x458200['spawnFn']??index_js_1['spawnProcess'];return new Promise(_0x1c3ee2=>{let _0x1ad151=![],_0x5c0d97;const _0x550386=_0x1b4836=>{if(_0x1ad151)return;_0x1ad151=!![],clearTimeout(_0x205b01),_0x458200['signal']?.['removeEventListener']('abort',_0x2661ca),_0x1c3ee2(_0x1b4836);},_0x205b01=setTimeout(()=>{!_0x1ad151&&(_0x1ad151=!![],void _0x5c0d97?.['kill']('SIGKILL'),_0x1c3ee2((0x0,types_js_1['textResult'])('Command\x20timed\x20out\x20after\x20'+_0x458200['timeoutSec']+'s',!![])));},_0x458200['timeoutMs']),_0x2661ca=()=>{!_0x1ad151&&(_0x1ad151=!![],clearTimeout(_0x205b01),void _0x5c0d97?.['kill']('SIGKILL'),_0x1c3ee2((0x0,types_js_1['textResult'])('Command\x20aborted',!![])));};_0x458200['signal']?.['addEventListener']('abort',_0x2661ca,{'once':!![]}),_0x94f504(osSpawnRequest({'shell':_0x458200['shell'],'shellArgs':_0x458200['shellArgs'],'command':_0x458200['command'],'cwd':_0x458200['ctx']['cwd'],'env':_0x458200['safeEnv'],'sandboxType':_0x458200['sandboxType'],'networkDisabled':_0x458200['networkDisabled'],'timeoutMs':_0x458200['timeoutMs'],'signal':_0x458200['signal']}))['then'](async _0x2fcc56=>{_0x5c0d97=_0x2fcc56;if(_0x1ad151){void _0x2fcc56['kill']('SIGKILL');return;}const _0x3f8e49=await _0x2fcc56['readAll']()['catch'](()=>''),_0x11ace1=await _0x2fcc56['waitForExit'](),_0x3bad11=(0x0,types_js_1['truncateOutput'])(_0x3f8e49,_0x458200['ctx']['config']),_0x477d0a=_0x11ace1!==0x0,_0x261f56=_0x477d0a?'\x0a\x0a[exit\x20code\x20'+_0x11ace1+']':'';_0x550386((0x0,types_js_1['textResult'])(''+_0x3bad11['text']+_0x261f56+'\x0a\x0a[sandbox:\x20os\x20('+_0x2fcc56['sandboxType']+')]',_0x477d0a));})['catch'](_0x18d551=>{_0x550386((0x0,types_js_1['textResult'])('Command\x20failed:\x20'+(_0x18d551 instanceof Error?_0x18d551['message']:String(_0x18d551)),!![]));});});}function buildBashEnv(_0x59ffb3,_0x351e06,_0x1180e1){const _0x1de2c2={};for(const [_0x30a8a5,_0x318081]of Object['entries'](_0x59ffb3)){if(typeof _0x318081==='string')_0x1de2c2[_0x30a8a5]=_0x318081;}return(0x0,env_filter_js_1['getSafeEnv'])((0x0,index_js_1['filterEnv'])(_0x1de2c2,{}),_0x351e06,_0x1180e1);}function createBashTool(_0x490646){return{'definition':definition,async 'execute'(_0x5e33d9,_0x4c0322,_0x5d4b71,_0x316450,_0x3b5abf){try{if(_0x5d4b71?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0x41f849=_0x3b5abf;if(typeof _0x4c0322['job_id']==='string'&&_0x4c0322['job_id']['length']>0x0)return await handleJobOperation(_0x4c0322['job_id'],_0x4c0322['action'],_0x41f849);const _0xc4d8e7=String(_0x4c0322['command']??'');if(!_0xc4d8e7)return(0x0,types_js_1['textResult'])('Missing\x20\x27command\x27.',!![]);const _0x4f014b=_0x4c0322['background']===!![],_0x4e431e=_0x4f014b?typeof _0x4c0322['timeout']==='number'?Math['max'](0x1,Math['min'](0xe10,_0x4c0322['timeout'])):0x258:typeof _0x4c0322['timeout']==='number'?Math['max'](0x1,Math['min'](0x12c,_0x4c0322['timeout'])):0x1e,_0x4c0ed0=_0x4e431e*0x3e8,_0x5560ed=_0x41f849['config'],_0x5dc6f1=_0x5560ed['shellCommand']['match'](/(?:[^\s"]+|"[^"]*")+/g)??[_0x5560ed['shellCommand']],_0x5ab7a5=_0x5dc6f1[0x0]['replace'](/^"|"$/g,''),_0x4ef7b9=_0x5dc6f1['slice'](0x1),_0x555e54=(0x0,policy_js_1['evaluatePolicy'])(_0xc4d8e7);if(_0x555e54==='deny')return(0x0,types_js_1['textResult'])('Permission\x20denied\x20by\x20exec\x20policy:\x20'+_0xc4d8e7,!![]);if(_0x555e54==='ask'){const _0x14d146=await _0x41f849['requestPermission']?.('bash',_0xc4d8e7,'Exec\x20policy\x20requires\x20approval');if(_0x14d146===![])return(0x0,types_js_1['textResult'])('Permission\x20denied\x20by\x20exec\x20policy:\x20'+_0xc4d8e7,!![]);}const _0x34324f=(0x0,index_js_2['checkAutoApproval'])(_0xc4d8e7),_0x4be4dc=_0x34324f==='allow';if(!(0x0,permissions_js_1['isCommandAllowed'])('bash',_0xc4d8e7,_0x41f849['permissions'])){if(_0x4be4dc){}else{const _0x400c88=await _0x41f849['requestPermission']?.('bash',_0xc4d8e7,'Risky\x20bash\x20command\x20blocked\x20by\x20permissions');if(_0x400c88===![])return(0x0,types_js_1['textResult'])('Permission\x20denied\x20for\x20command:\x20'+_0xc4d8e7,!![]);if(_0x400c88===undefined&&(0x0,permissions_js_1['isCommandDangerous'])('bash',_0xc4d8e7,_0x41f849['permissions']))return(0x0,types_js_1['textResult'])('Permission\x20denied\x20(headless):\x20command\x20matches\x20a\x20deny\x20rule\x20and\x20no\x20approver\x20is\x20available:\x20'+_0xc4d8e7,!![]);}}(0x0,env_filter_js_1['validateEnv'])(process.env);const _0x2db595=_0x41f849['permissions'],_0x2be012=(0x0,index_js_1['detectSandboxType'])(_0x2db595),_0x18ac65=_0x2db595['__networkPolicy']&&typeof _0x2db595['__networkPolicy']==='object'?_0x2db595['__networkPolicy']['disableNetwork']??![]:![],_0xb215cc=buildBashEnv(process.env,_0x2be012,_0x18ac65);if(_0x4f014b)return await startBackgroundJob({'command':_0xc4d8e7,'shell':_0x5ab7a5,'shellArgs':_0x4ef7b9,'ctx':_0x41f849,'safeEnv':_0xb215cc,'timeoutMs':_0x4c0ed0,'timeoutSec':_0x4e431e,'sandboxType':_0x2be012,'networkDisabled':_0x18ac65,'spawnFn':_0x490646?.['spawnFn']});if((0x0,index_js_1['shouldUseOsSandbox'])(_0x2be012))return runForegroundOsSandboxed({'shell':_0x5ab7a5,'shellArgs':_0x4ef7b9,'command':_0xc4d8e7,'ctx':_0x41f849,'safeEnv':_0xb215cc,'sandboxType':_0x2be012,'networkDisabled':_0x18ac65,'timeoutMs':_0x4c0ed0,'timeoutSec':_0x4e431e,'signal':_0x5d4b71,'spawnFn':_0x490646?.['spawnFn']});return new Promise(_0xa9ed44=>{let _0xc1a146=![];const _0x51f442=new process_js_1['ProcessManager'](),_0x23d3c4=setTimeout(()=>{!_0xc1a146&&(_0xc1a146=!![],_0x51f442['killAll']()['catch'](()=>{}),_0xa9ed44((0x0,types_js_1['textResult'])('Command\x20timed\x20out\x20after\x20'+_0x4e431e+'s',!![])));},_0x4c0ed0),_0xf787af=()=>{!_0xc1a146&&(_0xc1a146=!![],clearTimeout(_0x23d3c4),_0x51f442['killAll']()['catch'](()=>{}),_0xa9ed44((0x0,types_js_1['textResult'])('Command\x20aborted',!![])));};_0x5d4b71?.['addEventListener']('abort',_0xf787af,{'once':!![]}),_0x51f442['spawn']({'command':[_0x5ab7a5,..._0x4ef7b9,_0xc4d8e7],'cwd':_0x41f849['cwd'],'env':_0xb215cc,'timeoutMs':_0x4c0ed0,'outputCap':index_js_1['OUTPUT_MAX_BYTES'],'processGroup':!![],'signal':_0x5d4b71})['then'](async({exitCode:_0x289597,output:_0x395f4a})=>{const _0x5ba6ef=await _0x395f4a['catch'](()=>'');clearTimeout(_0x23d3c4),_0x5d4b71?.['removeEventListener']('abort',_0xf787af);if(!_0xc1a146){_0xc1a146=!![];const _0x5d897e=(0x0,types_js_1['truncateOutput'])(_0x5ba6ef,_0x5560ed),_0x406fce=await _0x289597['catch'](()=>0x1),_0x59502a=_0x406fce!==0x0,_0x3d75c6=_0x59502a?'\x0a\x0a[exit\x20code\x20'+_0x406fce+']':'';_0xa9ed44((0x0,types_js_1['textResult'])(_0x5d897e['text']+_0x3d75c6,_0x59502a));}})['catch'](_0x356e05=>{!_0xc1a146&&(_0xc1a146=!![],clearTimeout(_0x23d3c4),_0x5d4b71?.['removeEventListener']('abort',_0xf787af),_0xa9ed44((0x0,types_js_1['textResult'])('Command\x20failed:\x20'+_0x356e05['message'],!![])));});});}catch(_0x560d6f){return(0x0,types_js_1['textResult'])('Bash\x20error:\x20'+(_0x560d6f instanceof Error?_0x560d6f['message']:String(_0x560d6f)),!![]);}}};}
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 _0x1617e8 of sessions['values']()){try{killTree(_0x1617e8);}catch{}}sessions['clear']();}function killTree(_0xdf4a6c){const _0x4d59bd=_0xdf4a6c['child']['pid'];if(_0x4d59bd!==undefined&&process['platform']!=='win32')try{process['kill'](-_0x4d59bd,'SIGKILL');return;}catch{}try{_0xdf4a6c['child']['kill']('SIGKILL');}catch{}}function appendOutput(_0x10e2cd,_0xd088ba){_0x10e2cd['buffer']+=_0xd088ba,_0x10e2cd['bufferBytes']+=Buffer['byteLength'](_0xd088ba,'utf8'),_0x10e2cd['totalBytes']+=Buffer['byteLength'](_0xd088ba,'utf8');if(_0x10e2cd['bufferBytes']>exports['TERMINAL_OUTPUT_CAP']){const _0x580bd8=_0x10e2cd['bufferBytes']-exports['TERMINAL_OUTPUT_CAP'];let _0xb36c91=0x0,_0x40739e=0x0;while(_0xb36c91<_0x10e2cd['buffer']['length']&&_0x40739e<_0x580bd8){_0x40739e+=Buffer['byteLength'](_0x10e2cd['buffer'][_0xb36c91],'utf8'),_0xb36c91++;}_0x10e2cd['buffer']=_0x10e2cd['buffer']['slice'](_0xb36c91),_0x10e2cd['bufferBytes']-=_0x40739e;}}function publicView(_0x10d012){return{'id':_0x10d012['id'],'shell':_0x10d012['shell'],'cwd':_0x10d012['cwd'],'startedAt':_0x10d012['startedAt'],'live':_0x10d012['live'],'exitCode':_0x10d012['exitCode'],'totalBytes':_0x10d012['totalBytes']};}function createTerminalSession(_0x30eb57,_0x3abc8c,_0x3e136d){const _0x1eb5cb=[...sessions['values']()]['filter'](_0x332c4b=>_0x332c4b['live'])['length'];if(_0x1eb5cb>=exports['TERMINAL_MAX_SESSIONS'])throw new Error('Too\x20many\x20live\x20terminals\x20('+_0x1eb5cb+'/'+exports['TERMINAL_MAX_SESSIONS']+').\x20Kill\x20one\x20first.');const _0x21fd00=(0x0,node_child_process_1['spawn'])(_0x30eb57,[],{'cwd':_0x3abc8c,'env':_0x3e136d,'stdio':['pipe','pipe','pipe'],'windowsHide':!![],'detached':process['platform']!=='win32'}),_0x52ca74={'id':(0x0,node_crypto_1['randomUUID'])(),'shell':_0x30eb57,'cwd':_0x3abc8c,'startedAt':Date['now'](),'live':!![],'exitCode':null,'totalBytes':0x0,'child':_0x21fd00,'buffer':'','bufferBytes':0x0};return _0x21fd00['stdout']?.['on']('data',_0x4a26ad=>appendOutput(_0x52ca74,_0x4a26ad['toString']('utf8'))),_0x21fd00['stderr']?.['on']('data',_0x2bbb4b=>appendOutput(_0x52ca74,_0x2bbb4b['toString']('utf8'))),_0x21fd00['on']('close',_0x21bf98=>{_0x52ca74['live']=![],_0x52ca74['exitCode']=_0x21bf98??0x1;}),_0x21fd00['on']('error',()=>{_0x52ca74['live']=![],_0x52ca74['exitCode']=_0x52ca74['exitCode']??0x1;}),sessions['set'](_0x52ca74['id'],_0x52ca74),publicView(_0x52ca74);}function sendTerminalInput(_0x2f4ae4,_0x12170d){const _0x2077c6=sessions['get'](_0x2f4ae4);if(!_0x2077c6)throw new Error('Unknown\x20terminal\x20\x27'+_0x2f4ae4+'\x27.');if(!_0x2077c6['live'])throw new Error('Terminal\x20\x27'+_0x2f4ae4+'\x27\x20exited\x20(code\x20'+(_0x2077c6['exitCode']??'?')+').');if(Buffer['byteLength'](_0x12170d,'utf8')>exports['TERMINAL_INPUT_CAP'])throw new Error('Input\x20exceeds\x20'+exports['TERMINAL_INPUT_CAP']+'\x20bytes.');const _0x3c3330=_0x2077c6['child']['stdin'];if(!_0x3c3330||_0x3c3330['destroyed'])throw new Error('Terminal\x20\x27'+_0x2f4ae4+'\x27\x20stdin\x20is\x20closed.');_0x3c3330['write'](_0x12170d['endsWith']('\x0a')?_0x12170d:_0x12170d+'\x0a');}function readTerminalOutput(_0x48c3fa,_0xa1d97f=0x0){const _0x2f2f14=sessions['get'](_0x48c3fa);if(!_0x2f2f14)throw new Error('Unknown\x20terminal\x20\x27'+_0x48c3fa+'\x27.');const _0x478984=_0x2f2f14['totalBytes']-_0x2f2f14['bufferBytes'],_0x2a130a=Math['max'](0x0,_0xa1d97f-_0x478984);return{'output':_0x2f2f14['buffer']['slice'](_0x2a130a),'offset':_0x2f2f14['totalBytes'],'live':_0x2f2f14['live']};}function killTerminal(_0x76215d){const _0x381ade=sessions['get'](_0x76215d);if(!_0x381ade)throw new Error('Unknown\x20terminal\x20\x27'+_0x76215d+'\x27.');if(!_0x381ade['live'])return{'exited':!![],'exitCode':_0x381ade['exitCode']};return killTree(_0x381ade),{'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'(_0x18de88,_0x40ca9a,_0x33df1f,_0x4f9310,_0x3a7546){const _0x49883f=_0x3a7546,_0x32fe52=String(_0x40ca9a['action']??'')['trim']()['toLowerCase']();switch(_0x32fe52){case'create':{const _0x5098d0=typeof _0x40ca9a['shell']==='string'&&_0x40ca9a['shell']['trim']()?[_0x40ca9a['shell']['trim']()]:_0x49883f['config']['shellCommand']['match'](/(?:[^\s"]+|"[^"]*")+/g)??[_0x49883f['config']['shellCommand']],_0x590ee0=_0x5098d0[0x0]['replace'](/^"|"$/g,'');try{const _0x5e3056=createTerminalSession(_0x590ee0,_0x49883f['cwd'],(0x0,env_filter_js_1['getSafeEnv'])(process.env));return(0x0,types_js_1['textResult'])('Terminal\x20started.\x0aid:\x20'+_0x5e3056['id']+'\x0ashell:\x20'+_0x5e3056['shell']+'\x0aSend\x20input\x20with\x20terminal({\x22action\x22:\x20\x22send\x22,\x20\x22id\x22:\x20\x22'+_0x5e3056['id']+'\x22,\x20\x22input\x22:\x20\x22...\x22})');}catch(_0x589ece){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x589ece instanceof Error?_0x589ece['message']:String(_0x589ece)),!![]);}}case'send':{const _0x5df22b=String(_0x40ca9a['id']??'');if(!_0x5df22b)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20send.',!![]);const _0x2549a4=String(_0x40ca9a['input']??'');if(!_0x2549a4)return(0x0,types_js_1['textResult'])('Missing\x20\x27input\x27\x20for\x20send.',!![]);try{return sendTerminalInput(_0x5df22b,_0x2549a4),(0x0,types_js_1['textResult'])('Sent\x20to\x20'+_0x5df22b+'.\x20Read\x20it\x20back\x20with\x20terminal({\x22action\x22:\x20\x22read\x22,\x20\x22id\x22:\x20\x22'+_0x5df22b+'\x22}).');}catch(_0x372ae7){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x372ae7 instanceof Error?_0x372ae7['message']:String(_0x372ae7)),!![]);}}case'read':{const _0x55827c=String(_0x40ca9a['id']??'');if(!_0x55827c)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20read.',!![]);const _0x127907=typeof _0x40ca9a['offset']==='number'&&Number['isFinite'](_0x40ca9a['offset'])?Math['max'](0x0,Math['floor'](_0x40ca9a['offset'])):0x0;try{const {output:_0x2105ac,offset:_0x1c975b,live:_0x5ec4f0}=readTerminalOutput(_0x55827c,_0x127907),_0x386539='Terminal\x20'+_0x55827c+'\x20('+(_0x5ec4f0?'live':'exited')+')\x20—\x20offset\x20'+_0x1c975b+':\x0a';return(0x0,types_js_1['textResult'])(_0x2105ac['length']>0x0?_0x386539+_0x2105ac:_0x386539+'(no\x20new\x20output\x20yet)');}catch(_0x59b028){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x59b028 instanceof Error?_0x59b028['message']:String(_0x59b028)),!![]);}}case'list':{const _0x557e3b=listTerminals();if(_0x557e3b['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20terminals.');return(0x0,types_js_1['textResult'])(_0x557e3b['map'](_0x4ab384=>'-\x20'+_0x4ab384['id']+'\x20['+(_0x4ab384['live']?'live':'exited\x20'+(_0x4ab384['exitCode']??'?'))+']\x20'+_0x4ab384['shell']+'\x20@\x20'+_0x4ab384['cwd'])['join']('\x0a'));}case'kill':{const _0x13f4cd=String(_0x40ca9a['id']??'');if(!_0x13f4cd)return(0x0,types_js_1['textResult'])('Missing\x20\x27id\x27\x20for\x20kill.',!![]);try{const _0x4e2d6d=killTerminal(_0x13f4cd);return(0x0,types_js_1['textResult'])(_0x4e2d6d['exited']?'Terminal\x20'+_0x13f4cd+'\x20already\x20exited\x20('+(_0x4e2d6d['exitCode']??'?')+').':'Terminal\x20'+_0x13f4cd+'\x20killed.');}catch(_0x21d75d){return(0x0,types_js_1['textResult'])('Error:\x20'+(_0x21d75d instanceof Error?_0x21d75d['message']:String(_0x21d75d)),!![]);}}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(_0x57d856,_0x4de2db,_0x50081b,_0x96a7c8){if(_0x96a7c8===undefined)_0x96a7c8=_0x50081b;var _0x4f0dd0=Object['getOwnPropertyDescriptor'](_0x4de2db,_0x50081b);(!_0x4f0dd0||('get'in _0x4f0dd0?!_0x4de2db['__esModule']:_0x4f0dd0['writable']||_0x4f0dd0['configurable']))&&(_0x4f0dd0={'enumerable':!![],'get':function(){return _0x4de2db[_0x50081b];}}),Object['defineProperty'](_0x57d856,_0x96a7c8,_0x4f0dd0);}:function(_0x1eb87c,_0x313592,_0x474bd7,_0x25c880){if(_0x25c880===undefined)_0x25c880=_0x474bd7;_0x1eb87c[_0x25c880]=_0x313592[_0x474bd7];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1ca954,_0x107836){Object['defineProperty'](_0x1ca954,'default',{'enumerable':!![],'value':_0x107836});}:function(_0xbc587a,_0x40e5c3){_0xbc587a['default']=_0x40e5c3;}),__importStar=this&&this['__importStar']||(function(){var _0x4b011c=function(_0x25a675){return _0x4b011c=Object['getOwnPropertyNames']||function(_0x12f507){var _0x10c939=[];for(var _0xd12e93 in _0x12f507)if(Object['prototype']['hasOwnProperty']['call'](_0x12f507,_0xd12e93))_0x10c939[_0x10c939['length']]=_0xd12e93;return _0x10c939;},_0x4b011c(_0x25a675);};return function(_0x2aa964){if(_0x2aa964&&_0x2aa964['__esModule'])return _0x2aa964;var _0x514d85={};if(_0x2aa964!=null){for(var _0x1d5f1d=_0x4b011c(_0x2aa964),_0xe23898=0x0;_0xe23898<_0x1d5f1d['length'];_0xe23898++)if(_0x1d5f1d[_0xe23898]!=='default')__createBinding(_0x514d85,_0x2aa964,_0x1d5f1d[_0xe23898]);}return __setModuleDefault(_0x514d85,_0x2aa964),_0x514d85;};}());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(_0x4d717b){if(!_0x4d717b||!fs['existsSync'](_0x4d717b))return[];const _0x232b76=[],_0x2902f9=fs['readdirSync'](_0x4d717b,{'withFileTypes':!![]});for(const _0x641d2d of _0x2902f9){if(!_0x641d2d['isFile']()||!_0x641d2d['name']['endsWith']('.md'))continue;const _0x1a3cce=path['join'](_0x4d717b,_0x641d2d['name']);try{const _0x1b7a0b=fs['readFileSync'](_0x1a3cce,'utf8'),_0x342ffb=parseCommandFile(_0x1b7a0b,_0x1a3cce);if(_0x342ffb)_0x232b76['push'](_0x342ffb);}catch{}}return _0x232b76['sort']((_0xa3dffa,_0x22dcff)=>_0xa3dffa['name']['localeCompare'](_0x22dcff['name']));}function parseCommandFile(_0x9376ba,_0x33d420){const _0x53bf45=_0x9376ba['match'](/^---\s*\n([\s\S]*?)\n---\s*\n?([\s\S]*)$/);if(!_0x53bf45)return null;const _0x5e294d=new Map();for(const _0x21b280 of _0x53bf45[0x1]['split']('\x0a')){const _0x86fa2c=_0x21b280['match'](/^\s*([^:]+):\s*(.*?)\s*$/);if(_0x86fa2c)_0x5e294d['set'](_0x86fa2c[0x1],_0x86fa2c[0x2]['replace'](/^["']|["']$/g,''));}const _0xbad8c5=path['basename'](_0x33d420,path['extname'](_0x33d420)),_0x25c99f=_0x5e294d['get']('description')??'',_0x11f53c=_0x5e294d['get']('argument-hint')??'',_0x1618c1=_0x53bf45[0x2]['trim']();if(!_0xbad8c5)return null;return{'name':_0xbad8c5,'description':_0x25c99f,'argumentHint':_0x11f53c||undefined,'body':_0x1618c1,'file':_0x33d420};}function defaultRulesDir(){return path['join'](process['cwd'](),'.trayambak','rules');}function loadRulesFromDir(_0x1328d2){if(!_0x1328d2||!fs['existsSync'](_0x1328d2))return[];const _0x54c285=[],_0x3634a2=fs['readdirSync'](_0x1328d2,{'withFileTypes':!![]});for(const _0x6865cd of _0x3634a2){if(!_0x6865cd['isFile']()||!_0x6865cd['name']['endsWith']('.md'))continue;const _0x1090b9=path['join'](_0x1328d2,_0x6865cd['name']);try{const _0x5ec721=fs['readFileSync'](_0x1090b9,'utf8'),_0x5d4f97=path['basename'](_0x6865cd['name'],path['extname'](_0x6865cd['name']));_0x54c285['push']('###\x20'+_0x5d4f97+'\x0a'+_0x5ec721['trim']());}catch{}}return _0x54c285['sort']();}function rulesBlock(_0x3e069c){if(!_0x3e069c||_0x3e069c['length']===0x0)return'';return['Rules\x20(from\x20.trayambak/rules):',..._0x3e069c]['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(_0x5a720d,_0x47ddb1,_0x128692,_0x236f48){if(_0x236f48===undefined)_0x236f48=_0x128692;var _0x592887=Object['getOwnPropertyDescriptor'](_0x47ddb1,_0x128692);(!_0x592887||('get'in _0x592887?!_0x47ddb1['__esModule']:_0x592887['writable']||_0x592887['configurable']))&&(_0x592887={'enumerable':!![],'get':function(){return _0x47ddb1[_0x128692];}}),Object['defineProperty'](_0x5a720d,_0x236f48,_0x592887);}:function(_0x41808e,_0x2bc194,_0x47b980,_0xae48bc){if(_0xae48bc===undefined)_0xae48bc=_0x47b980;_0x41808e[_0xae48bc]=_0x2bc194[_0x47b980];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x11fd83,_0x3fac88){Object['defineProperty'](_0x11fd83,'default',{'enumerable':!![],'value':_0x3fac88});}:function(_0x194868,_0x351c34){_0x194868['default']=_0x351c34;}),__importStar=this&&this['__importStar']||(function(){var _0x559886=function(_0x4eb91d){return _0x559886=Object['getOwnPropertyNames']||function(_0x55506f){var _0x5cd051=[];for(var _0x551b6d in _0x55506f)if(Object['prototype']['hasOwnProperty']['call'](_0x55506f,_0x551b6d))_0x5cd051[_0x5cd051['length']]=_0x551b6d;return _0x5cd051;},_0x559886(_0x4eb91d);};return function(_0x239ad9){if(_0x239ad9&&_0x239ad9['__esModule'])return _0x239ad9;var _0x3534d1={};if(_0x239ad9!=null){for(var _0xb687e7=_0x559886(_0x239ad9),_0x2e8a51=0x0;_0x2e8a51<_0xb687e7['length'];_0x2e8a51++)if(_0xb687e7[_0x2e8a51]!=='default')__createBinding(_0x3534d1,_0x239ad9,_0xb687e7[_0x2e8a51]);}return __setModuleDefault(_0x3534d1,_0x239ad9),_0x3534d1;};}());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?_0x552ef9=>Promise['resolve'](''+_0x552ef9)['then'](_0x258a5=>__importStar(require(_0x258a5))):new Function('specifier','return\x20import(specifier)');async function importToolModule(_0x5370d2){return await importImpl((0x0,url_1['pathToFileURL'])(_0x5370d2)['href']);}function sanitizeToolName(_0x267edc){const _0x48b4a2=_0x267edc['replace'](/[^\w-]/g,'_')['slice'](0x0,MAX_TOOL_NAME);return _0x48b4a2['length']>0x0?_0x48b4a2:'custom_tool';}function customToolName(_0xe32891,_0x379adf){const _0x5cd2b9=path['basename'](_0xe32891,path['extname'](_0xe32891));return sanitizeToolName(_0x379adf==='default'?_0x5cd2b9:_0x5cd2b9+'_'+_0x379adf);}function isCustomToolExport(_0x4c8d23){if(typeof _0x4c8d23!=='object'||_0x4c8d23===null)return![];const _0x448307=_0x4c8d23;return'args'in _0x448307&&'description'in _0x448307&&'execute'in _0x448307&&typeof _0x448307['description']==='string'&&_0x448307['description']['length']>0x0&&typeof _0x448307['execute']==='function';}function coerceProperties(_0x149267){const _0x203be2={};if(typeof _0x149267!=='object'||_0x149267===null||Array['isArray'](_0x149267))return _0x203be2;for(const [_0x52a018,_0x41039c]of Object['entries'](_0x149267)){if(typeof _0x41039c!=='object'||_0x41039c===null||Array['isArray'](_0x41039c))continue;const _0x3af524=_0x41039c;if(typeof _0x3af524['type']!=='string')continue;_0x203be2[_0x52a018]={..._0x3af524,'type':PARAM_TYPES['has'](_0x3af524['type'])?_0x3af524['type']:'string','description':typeof _0x3af524['description']==='string'?_0x3af524['description']:''};}return _0x203be2;}function normalizeParameters(_0xa885d){const _0x44c113={'type':'object','properties':{},'required':[]};if(_0xa885d===undefined||_0xa885d===null)return _0x44c113;if(typeof _0xa885d!=='object'||Array['isArray'](_0xa885d))return _0x44c113;const _0x4913be=_0xa885d;if(_0x4913be['type']==='object'){const _0x5a2625=coerceProperties(_0x4913be['properties']),_0x377767=Array['isArray'](_0x4913be['required'])?_0x4913be['required']['filter'](_0x80ad3a=>typeof _0x80ad3a==='string'):Object['keys'](_0x5a2625);return{'type':'object','properties':_0x5a2625,'required':_0x377767};}const _0x278092=coerceProperties(_0x4913be);return{'type':'object','properties':_0x278092,'required':Object['keys'](_0x278092)};}function coerceResult(_0x47351e){if(typeof _0x47351e==='string')return(0x0,types_js_1['textResult'])(_0x47351e);if(_0x47351e===undefined||_0x47351e===null)return(0x0,types_js_1['textResult'])('');if(typeof _0x47351e==='object'){const _0x1961fb=_0x47351e;if(Array['isArray'](_0x1961fb['content'])){const _0x42728b=_0x1961fb['content']['filter'](_0x2d59fa=>typeof _0x2d59fa==='object'&&_0x2d59fa!==null&&_0x2d59fa['type']==='text'&&typeof _0x2d59fa['text']==='string');if(_0x42728b['length']>0x0)return{'content':_0x42728b,'isError':_0x1961fb['isError']===!![]};}if(typeof _0x1961fb['output']==='string')return(0x0,types_js_1['textResult'])(_0x1961fb['output']);try{return(0x0,types_js_1['textResult'])(JSON['stringify'](_0x47351e,null,0x2));}catch{return(0x0,types_js_1['textResult'])(String(_0x47351e));}}return(0x0,types_js_1['textResult'])(String(_0x47351e));}function createCustomTool(_0x194167,_0x2485af,_0x55397f=new Set()){if(_0x55397f['has'](_0x194167))return undefined;const _0x20e488={'timeoutMs':0x7530,'name':_0x194167,'description':_0x2485af['description'],'parameters':normalizeParameters(_0x2485af['args'])};return{'definition':_0x20e488,'execute':async(_0x32b467,_0x3ff4d0,_0x4f1552,_0x110d62,_0x546a32)=>{try{const _0x2906b0={'cwd':_0x546a32?.['cwd']??process['cwd'](),'sessionId':_0x546a32?.['sessionId'],'signal':_0x4f1552},_0x82a43d=await _0x2485af['execute'](_0x3ff4d0??{},_0x2906b0);return coerceResult(_0x82a43d);}catch(_0x1d31cf){const _0x12eb45=_0x1d31cf instanceof Error?_0x1d31cf['message']:String(_0x1d31cf);return(0x0,types_js_1['textResult'])('Custom\x20tool\x20\x22'+_0x194167+'\x22\x20failed:\x20'+_0x12eb45,!![]);}}};}function customToolDirs(_0x45c381,_0x4a4cb2=os['homedir']()){return[path['join'](_0x45c381,'.trayambak'),path['join'](_0x4a4cb2,'.trayambak')];}function discoverCustomToolFiles(_0x11d199){const _0x15e471=[];for(const _0x405575 of _0x11d199){for(const _0x5d4a11 of['tool','tools']){const _0x263fb5=path['join'](_0x405575,_0x5d4a11);let _0x348746;try{_0x348746=fs['readdirSync'](_0x263fb5,{'withFileTypes':!![]});}catch{continue;}for(const _0x3b7eb0 of _0x348746){if(_0x3b7eb0['isDirectory']())continue;if(!TOOL_EXTENSIONS['test'](_0x3b7eb0['name']))continue;_0x15e471['push'](path['join'](_0x263fb5,_0x3b7eb0['name']));}}}return _0x15e471;}async function loadCustomTools(_0xe5c56e){const _0x45b028=customToolDirs(_0xe5c56e['cwd'],_0xe5c56e['homeDir']),_0x5c7927=discoverCustomToolFiles(_0x45b028),_0x27a83d=new Set(_0xe5c56e['reserved']??[]),_0x3ef490=[],_0xa236f3=new Set();for(const _0x31341d of _0x5c7927){let _0x1bfa04;try{_0x1bfa04=await importToolModule(_0x31341d);}catch{continue;}for(const [_0x25c01e,_0x22acf9]of Object['entries'](_0x1bfa04)){if(!isCustomToolExport(_0x22acf9))continue;const _0x53251e=customToolName(_0x31341d,_0x25c01e);if(_0xa236f3['has'](_0x53251e))continue;const _0x284c9e=createCustomTool(_0x53251e,_0x22acf9,_0x27a83d);if(!_0x284c9e)continue;_0xa236f3['add'](_0x53251e),_0x3ef490['push'](_0x284c9e);}}return _0x3ef490;}function registerCustomToolset(_0x4d66b1,_0x26322d,_0x4238fe){_0x4d66b1['registerToolset']({'name':'custom','description':'User-defined\x20tools\x20loaded\x20from\x20.trayambak/{tool,tools}','toolNames':[..._0x4238fe],'checkFn':()=>!![]});const _0x1ea9ea=_0x26322d['toolsets']?.['defaults']?.['length']?_0x26322d['toolsets']['defaults']:toolsets_js_1['DEFAULT_TOOLSETS'];!_0x1ea9ea['includes']('custom')?_0x4d66b1['setCoreTools']([..._0x1ea9ea,'custom']):_0x4d66b1['setCoreTools']([..._0x1ea9ea]);}
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(_0x3d462e,_0x56fb1e,_0x2420d1,_0x33c2e9){if(_0x33c2e9===undefined)_0x33c2e9=_0x2420d1;var _0x45922e=Object['getOwnPropertyDescriptor'](_0x56fb1e,_0x2420d1);(!_0x45922e||('get'in _0x45922e?!_0x56fb1e['__esModule']:_0x45922e['writable']||_0x45922e['configurable']))&&(_0x45922e={'enumerable':!![],'get':function(){return _0x56fb1e[_0x2420d1];}}),Object['defineProperty'](_0x3d462e,_0x33c2e9,_0x45922e);}:function(_0x397064,_0x556e10,_0x1639f1,_0x576083){if(_0x576083===undefined)_0x576083=_0x1639f1;_0x397064[_0x576083]=_0x556e10[_0x1639f1];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x2ecf7e,_0x45f9d6){Object['defineProperty'](_0x2ecf7e,'default',{'enumerable':!![],'value':_0x45f9d6});}:function(_0x1656bc,_0x39c234){_0x1656bc['default']=_0x39c234;}),__importStar=this&&this['__importStar']||(function(){var _0x5e6ba4=function(_0x134622){return _0x5e6ba4=Object['getOwnPropertyNames']||function(_0x3e8f80){var _0x306246=[];for(var _0x53564b in _0x3e8f80)if(Object['prototype']['hasOwnProperty']['call'](_0x3e8f80,_0x53564b))_0x306246[_0x306246['length']]=_0x53564b;return _0x306246;},_0x5e6ba4(_0x134622);};return function(_0x43cfd5){if(_0x43cfd5&&_0x43cfd5['__esModule'])return _0x43cfd5;var _0x558a24={};if(_0x43cfd5!=null){for(var _0xc86a41=_0x5e6ba4(_0x43cfd5),_0x1a64df=0x0;_0x1a64df<_0xc86a41['length'];_0x1a64df++)if(_0xc86a41[_0x1a64df]!=='default')__createBinding(_0x558a24,_0x43cfd5,_0xc86a41[_0x1a64df]);}return __setModuleDefault(_0x558a24,_0x43cfd5),_0x558a24;};}());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(_0x154902){let _0x48eb1c=path['resolve'](_0x154902);for(;;){const _0x44842d=path['join'](_0x48eb1c,'node_modules','typescript','bin','tsc');if(fs['existsSync'](_0x44842d))return _0x44842d;const _0x14d501=path['dirname'](_0x48eb1c);if(_0x14d501===_0x48eb1c)break;_0x48eb1c=_0x14d501;}try{if(typeof __dirname!=='undefined'){const _0x3a3578=path['resolve'](__dirname,'..','..','..','..','..','..','node_modules','typescript','bin','tsc');if(fs['existsSync'](_0x3a3578))return _0x3a3578;}}catch{}return undefined;}function runTsc(_0x241869,_0xfc496d,_0x1dee53,_0x653efb){return new Promise(_0x5ed00b=>{if(_0x653efb?.['aborted']){_0x5ed00b({'code':null,'stdout':'','stderr':'','timedOut':![],'aborted':!![]});return;}let _0x5de48d;try{_0x5de48d=(0x0,child_process_1['spawn'])(process['execPath'],[_0x241869,'--noEmit','--pretty','false','-p',_0x1dee53],{'cwd':_0xfc496d,'windowsHide':!![],'stdio':['ignore','pipe','pipe']});}catch(_0x8ba6ca){_0x5ed00b({'code':null,'stdout':'','stderr':String(_0x8ba6ca),'timedOut':![],'aborted':![]});return;}let _0x39ca31='',_0x46e588='',_0x5ec9bf=![];const _0x5cae36=_0x4fa19d=>{if(_0x5ec9bf)return;_0x5ec9bf=!![],clearTimeout(_0x5999a6),_0x653efb?.['removeEventListener']('abort',_0xb17f4),_0x5ed00b(_0x4fa19d);},_0x5999a6=setTimeout(()=>{_0x5de48d['kill'](),_0x5cae36({'code':null,'stdout':_0x39ca31,'stderr':_0x46e588,'timedOut':!![],'aborted':![]});},TSC_TIMEOUT_MS),_0xb17f4=()=>{_0x5de48d['kill'](),_0x5cae36({'code':null,'stdout':_0x39ca31,'stderr':_0x46e588,'timedOut':![],'aborted':!![]});};_0x653efb?.['addEventListener']('abort',_0xb17f4,{'once':!![]}),_0x5de48d['stdout']?.['on']('data',_0x562f82=>{if(_0x39ca31['length']<MAX_TSC_OUTPUT_BYTES)_0x39ca31+=_0x562f82['toString']('utf8');}),_0x5de48d['stderr']?.['on']('data',_0x5c3da3=>{if(_0x46e588['length']<MAX_STDERR_BYTES)_0x46e588+=_0x5c3da3['toString']('utf8');}),_0x5de48d['on']('error',_0x166122=>{_0x5cae36({'code':null,'stdout':_0x39ca31,'stderr':''+_0x46e588+_0x166122['message'],'timedOut':![],'aborted':![]});}),_0x5de48d['on']('close',_0x52bc79=>{_0x5cae36({'code':_0x52bc79,'stdout':_0x39ca31,'stderr':_0x46e588,'timedOut':![],'aborted':![]});});});}async function collectDiagnostics(_0x19ab45,_0x24b2e4=![],_0x4dc954){const _0x718946=(0x0,tsc_diagnostics_js_1['findUp'])('tsconfig.json',_0x19ab45);if(!_0x718946)return{'ok':![],'reason':'no\x20tsconfig.json\x20found\x20from\x20'+_0x19ab45+'\x20—\x20diagnostics\x20require\x20a\x20TypeScript\x20project'};const _0xf0d491=path['dirname'](_0x718946);if(!_0x24b2e4&&cache&&cache['tsconfigPath']===_0x718946&&Date['now']()-cache['at']<CACHE_TTL_MS)return{'ok':!![],'snapshot':cache['snapshot']};const _0x372afd=resolveTscBin(_0x19ab45);if(!_0x372afd)return{'ok':![],'reason':'typescript\x20is\x20not\x20installed\x20(no\x20node_modules/typescript)\x20—\x20cannot\x20run\x20tsc'};const _0x1b0206=await runTsc(_0x372afd,_0xf0d491,_0x718946,_0x4dc954);if(_0x1b0206['aborted'])return{'ok':![],'reason':'aborted'};if(_0x1b0206['timedOut'])return{'ok':![],'reason':'tsc\x20timed\x20out\x20after\x20'+Math['round'](TSC_TIMEOUT_MS/0x3e8)+'s'};if(_0x1b0206['code']===null&&!_0x1b0206['stdout'])return{'ok':![],'reason':'tsc\x20failed\x20to\x20start:\x20'+(_0x1b0206['stderr']['trim']()||'unknown\x20error')};const {diagnostics:_0x35fd50,unlocated:_0x5d4dfd}=(0x0,tsc_diagnostics_js_1['parseTscOutput'])(_0x1b0206['stdout'],_0xf0d491),_0x463614={'tsconfigPath':_0x718946,'projectRoot':_0xf0d491,'diagnostics':_0x35fd50,'unlocated':_0x5d4dfd,'generatedAt':Date['now']()};return cache={'tsconfigPath':_0x718946,'at':_0x463614['generatedAt'],'snapshot':_0x463614},{'ok':!![],'snapshot':_0x463614};}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'(_0x380c7a,_0x48f149,_0x37cfc9,_0x51617d,_0xb0681b){const _0x3b12d0=_0xb0681b?.['cwd']??process['cwd'](),_0x4e6aca=Array['isArray'](_0x48f149['files'])?_0x48f149['files']['map'](String):[],_0x458e6e=Boolean(_0x48f149['refresh']),_0x375dee=await collectDiagnostics(_0x3b12d0,_0x458e6e,_0x37cfc9);if(!_0x375dee['ok'])return(0x0,types_js_1['textResult'])('Diagnostics\x20unavailable:\x20'+_0x375dee['reason']+'.');const _0x4a7392=(0x0,tsc_diagnostics_js_1['pickFiles'])(_0x375dee['snapshot']['diagnostics'],_0x4e6aca,_0x3b12d0),_0x4a71e7=Object['entries'](_0x4a7392)['sort'](([_0xfb3eba],[_0x4f8c9c])=>_0xfb3eba['localeCompare'](_0x4f8c9c));let _0x3b24c2=0x0,_0x411ba7=0x0;const _0x818cb7=[];for(const [_0xfd2654,_0x2c5dbe]of _0x4a71e7){for(const _0x5714c7 of _0x2c5dbe){if(_0x5714c7['severity']===0x1)_0x3b24c2+=0x1;else{if(_0x5714c7['severity']===0x2)_0x411ba7+=0x1;}}const _0x1e2fc4=(0x0,tsc_diagnostics_js_1['report'])(_0xfd2654,_0x2c5dbe);if(_0x1e2fc4)_0x818cb7['push'](_0x1e2fc4);}const _0x2eddbc=_0x4e6aca['length']>0x0?'\x20(filtered\x20to\x20'+_0x4e6aca['length']+'\x20path(s))':'',_0x5e7ccd=_0x4e6aca['length']===0x0&&_0x375dee['snapshot']['unlocated']['length']>0x0?',\x20'+_0x375dee['snapshot']['unlocated']['length']+'\x20project-level\x20message(s)':'',_0x4edee9='Diagnostics:\x20'+_0x3b24c2+'\x20error(s),\x20'+_0x411ba7+'\x20warning(s)\x20across\x20'+_0x4a71e7['length']+'\x20file(s)'+_0x5e7ccd+_0x2eddbc+'.',_0x591630=[_0x4edee9];if(_0x818cb7['length']>0x0)_0x591630['push']('',_0x818cb7['join']('\x0a\x0a'));return _0x4e6aca['length']===0x0&&_0x375dee['snapshot']['unlocated']['length']>0x0&&_0x591630['push']('','Project-level:',..._0x375dee['snapshot']['unlocated']['slice'](0x0,tsc_diagnostics_js_1['DIAGNOSTICS_MAX_PER_FILE'])),_0x4e6aca['length']>0x0&&_0x4a71e7['length']===0x0&&_0x375dee['snapshot']['unlocated']['length']===0x0&&_0x591630['push']('','No\x20diagnostics\x20for:\x20'+_0x4e6aca['join'](',\x20')),(0x0,types_js_1['textResult'])(_0x591630['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(_0x7757b0,_0x387a4b,_0x4cdf0d,_0x45b552){if(_0x45b552===undefined)_0x45b552=_0x4cdf0d;var _0x115561=Object['getOwnPropertyDescriptor'](_0x387a4b,_0x4cdf0d);(!_0x115561||('get'in _0x115561?!_0x387a4b['__esModule']:_0x115561['writable']||_0x115561['configurable']))&&(_0x115561={'enumerable':!![],'get':function(){return _0x387a4b[_0x4cdf0d];}}),Object['defineProperty'](_0x7757b0,_0x45b552,_0x115561);}:function(_0x1b9a85,_0x51fbbe,_0x52aa42,_0x330694){if(_0x330694===undefined)_0x330694=_0x52aa42;_0x1b9a85[_0x330694]=_0x51fbbe[_0x52aa42];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x51d747,_0x518c23){Object['defineProperty'](_0x51d747,'default',{'enumerable':!![],'value':_0x518c23});}:function(_0x2ee65f,_0x208cf3){_0x2ee65f['default']=_0x208cf3;}),__importStar=this&&this['__importStar']||(function(){var _0xaafab=function(_0x54f10d){return _0xaafab=Object['getOwnPropertyNames']||function(_0x313bce){var _0x373f94=[];for(var _0x537b59 in _0x313bce)if(Object['prototype']['hasOwnProperty']['call'](_0x313bce,_0x537b59))_0x373f94[_0x373f94['length']]=_0x537b59;return _0x373f94;},_0xaafab(_0x54f10d);};return function(_0x54636f){if(_0x54636f&&_0x54636f['__esModule'])return _0x54636f;var _0x2fa0e3={};if(_0x54636f!=null){for(var _0x447934=_0xaafab(_0x54636f),_0x5c75d5=0x0;_0x5c75d5<_0x447934['length'];_0x5c75d5++)if(_0x447934[_0x5c75d5]!=='default')__createBinding(_0x2fa0e3,_0x54636f,_0x447934[_0x5c75d5]);}return __setModuleDefault(_0x2fa0e3,_0x54636f),_0x2fa0e3;};}());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(_0x2f6213){const _0x4f2012=SEVERITY_LABEL[_0x2f6213['severity']||0x1]??'ERROR',_0x38bce8=_0x2f6213['range']['start']['line']+0x1,_0x85a5ef=_0x2f6213['range']['start']['character']+0x1;return _0x4f2012+'\x20['+_0x38bce8+':'+_0x85a5ef+']\x20'+_0x2f6213['message'];}function report(_0x3bcd7f,_0x2c7a86){const _0x2ed623=_0x2c7a86['filter'](_0x217009=>_0x217009['severity']===0x1);if(_0x2ed623['length']===0x0)return'';const _0x2ce42f=_0x2ed623['slice'](0x0,exports['DIAGNOSTICS_MAX_PER_FILE']),_0x2e0937=_0x2ed623['length']-exports['DIAGNOSTICS_MAX_PER_FILE'],_0x47ad8c=_0x2e0937>0x0?'\x0a...\x20and\x20'+_0x2e0937+'\x20more':'';return'<diagnostics\x20file=\x22'+_0x3bcd7f+'\x22>\x0a'+_0x2ce42f['map'](pretty)['join']('\x0a')+_0x47ad8c+'\x0a</diagnostics>';}function filterDiagnostics(_0x11d30b,_0x2f015a){const _0x3db451={};for(const _0x13e061 of _0x2f015a){const _0x289744=_0x11d30b[_0x13e061];if(_0x289744)_0x3db451[_0x13e061]=_0x289744;}return _0x3db451;}function diagnosticsPathKey(_0x48c857,_0x2419d5){const _0x9446de=path['resolve'](_0x2419d5,_0x48c857);return process['platform']==='win32'?_0x9446de['replace'](/\//g,'\x5c')['toLowerCase']():_0x9446de;}function pickFiles(_0x596eb5,_0x5a4f36,_0x436cd5){if(_0x5a4f36['length']===0x0)return _0x596eb5;const _0x4ccbc2=new Set(_0x5a4f36['map'](_0x8904e5=>diagnosticsPathKey(_0x8904e5,_0x436cd5))),_0x528ea6={};for(const [_0x233d0d,_0x28e6fe]of Object['entries'](_0x596eb5)){if(_0x4ccbc2['has'](diagnosticsPathKey(_0x233d0d,_0x436cd5)))_0x528ea6[_0x233d0d]=_0x28e6fe;}return _0x528ea6;}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(_0x4bb67f,_0x17b856){const _0x10f2c4={},_0x356e73=[],_0x174b7f=new Map();let _0x88911d;for(const _0x1428f4 of _0x4bb67f['split'](/\r?\n/)){if(_0x1428f4['trim']()===''){_0x88911d=undefined;continue;}const _0x286180=TSC_LINE['exec'](_0x1428f4);if(_0x286180){const [,_0x435430,_0x302bc1,_0x297c83,_0x15abe7,_0x2504c2,_0x1aaf99]=_0x286180,_0x1f47d4=path['isAbsolute'](_0x435430)?path['normalize'](_0x435430):path['resolve'](_0x17b856,_0x435430),_0x588d40=diagnosticsPathKey(_0x1f47d4,_0x17b856),_0x1e3751=_0x174b7f['get'](_0x588d40)??_0x1f47d4;_0x174b7f['set'](_0x588d40,_0x1e3751);const _0x30ad52=_0x10f2c4[_0x1e3751]??=[];_0x30ad52['push']({'range':{'start':{'line':Number(_0x302bc1)-0x1,'character':Number(_0x297c83)-0x1}},'severity':KIND_SEVERITY[_0x15abe7['toLowerCase']()]??0x1,'message':_0x2504c2['toUpperCase']()+':\x20'+_0x1aaf99,'code':_0x2504c2['toUpperCase'](),'source':'tsc'}),_0x88911d=_0x30ad52;continue;}const _0xba0f0d=TSC_GLOBAL['exec'](_0x1428f4);if(_0xba0f0d){_0x356e73['push'](_0x1428f4['trim']()),_0x88911d=undefined;continue;}if(_0x88911d?.['length']&&/^\s/['test'](_0x1428f4)){const _0x5ce908=_0x88911d[_0x88911d['length']-0x1];_0x5ce908['message']+='\x20'+_0x1428f4['trim']();}}return{'diagnostics':_0x10f2c4,'unlocated':_0x356e73};}const CHECKABLE=/\.(tsx?|mts|cts|jsx)$/i;function isCheckableFile(_0xfec7cc){return CHECKABLE['test'](_0xfec7cc);}async function syntaxDiagnostics(_0x484d33,_0x13c2b1){if(!isCheckableFile(_0x13c2b1))return[];if(Buffer['byteLength'](_0x484d33,'utf8')>MAX_SYNTAX_CHECK_BYTES)return[];const _0x1a9129=await Promise['resolve']()['then'](()=>__importStar(require('typescript'))),_0x4d6767=/\.(tsx|jsx)$/i['test'](_0x13c2b1),_0x47fc54=_0x1a9129['transpileModule'](_0x484d33,{'fileName':_0x13c2b1,'reportDiagnostics':!![],'compilerOptions':{'target':_0x1a9129['ScriptTarget']['ES2022'],'module':_0x1a9129['ModuleKind']['ESNext'],'jsx':_0x4d6767?_0x1a9129['JsxEmit']['React']:_0x1a9129['JsxEmit']['Preserve']}}),_0x1960e3=_0x47fc54['diagnostics']??[];return _0x1960e3['map'](_0x1faff0=>{let _0x1f6365=0x0,_0x4f8d66=0x0;if(_0x1faff0['file']&&_0x1faff0['start']!==undefined){const _0x109521=_0x1faff0['file']['getLineAndCharacterOfPosition'](_0x1faff0['start']);_0x1f6365=_0x109521['line'],_0x4f8d66=_0x109521['character'];}const _0x1bc212=_0x1a9129['flattenDiagnosticMessageText'](_0x1faff0['messageText'],'\x20');return{'range':{'start':{'line':_0x1f6365,'character':_0x4f8d66}},'severity':_0x1faff0['category']===_0x1a9129['DiagnosticCategory']['Error']?0x1:_0x1faff0['category']===_0x1a9129['DiagnosticCategory']['Warning']?0x2:0x3,'message':_0x1bc212,'source':'typescript'};});}async function syntaxNote(_0x2257b3,_0xcf0aab){try{const _0x768d09=await syntaxDiagnostics(_0xcf0aab,_0x2257b3);if(_0x768d09['length']===0x0)return'';const _0x2c66ac=report(_0x2257b3,_0x768d09);return _0x2c66ac?'\x0a'+_0x2c66ac:'';}catch{return'';}}function findUp(_0xcf59ab,_0x179923){let _0x5d90ce=path['resolve'](_0x179923);for(;;){const _0x3dad9f=path['join'](_0x5d90ce,_0xcf59ab);try{if(fs['existsSync'](_0x3dad9f))return _0x3dad9f;}catch{}const _0x386b25=path['dirname'](_0x5d90ce);if(_0x386b25===_0x5d90ce)return undefined;_0x5d90ce=_0x386b25;}}
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 _0x5bfe(){var _0x30e4a5=['getOwnPropertyNames','create','resolveConstrainedPath','name','path','18RSGSPn','textResult','762RfZtKE','List\x20the\x20entries\x20of\x20a\x20directory.\x20Defaults\x20to\x20the\x20project\x20root.\x20Marks\x20directories\x20with\x20a\x20trailing\x20slash.','10637LLUmYj','map','2489768rJQGPX','assertExternalDirectory','__esModule','cwd','Directory\x20not\x20found:\x20','defineProperty','list_dir','hasOwnProperty','2uYKbrW','../types.js','__createBinding','existsSync','message','470zqtjwJ','readdirSync','sort','19560olaQfj','Not\x20a\x20directory:\x20','localeCompare','default','call','Access\x20denied:\x20','join','get','writable','startsWith','prototype','getOwnPropertyDescriptor','length','44emDpoN','20215548ypmUhk','33775PCwHhx','5073730qpDuol','string','aborted','256217yxSApC','__setModuleDefault','slice','resolve','isDirectory'];_0x5bfe=function(){return _0x30e4a5;};return _0x5bfe();}var _0x184bd0=_0x2dc1;(function(_0x728291,_0x2eb145){var _0x40010f=_0x2dc1,_0x501f63=_0x728291();while(!![]){try{var _0x58db09=-parseInt(_0x40010f(0x1a7))/0x1*(parseInt(_0x40010f(0x18c))/0x2)+parseInt(_0x40010f(0x194))/0x3*(parseInt(_0x40010f(0x1a1))/0x4)+-parseInt(_0x40010f(0x1a4))/0x5+parseInt(_0x40010f(0x1b3))/0x6*(-parseInt(_0x40010f(0x1a3))/0x7)+-parseInt(_0x40010f(0x184))/0x8*(-parseInt(_0x40010f(0x1b1))/0x9)+-parseInt(_0x40010f(0x191))/0xa*(-parseInt(_0x40010f(0x1b5))/0xb)+parseInt(_0x40010f(0x1a2))/0xc;if(_0x58db09===_0x2eb145)break;else _0x501f63['push'](_0x501f63['shift']());}catch(_0x119fa7){_0x501f63['push'](_0x501f63['shift']());}}}(_0x5bfe,0x83f56));var __createBinding=this&&this[_0x184bd0(0x18e)]||(Object[_0x184bd0(0x1ad)]?function(_0x5e1abb,_0x2a13eb,_0xf074d9,_0x262ca1){var _0x57b2aa=_0x184bd0;if(_0x262ca1===undefined)_0x262ca1=_0xf074d9;var _0x123749=Object[_0x57b2aa(0x19f)](_0x2a13eb,_0xf074d9);(!_0x123749||(_0x57b2aa(0x19b)in _0x123749?!_0x2a13eb[_0x57b2aa(0x186)]:_0x123749[_0x57b2aa(0x19c)]||_0x123749['configurable']))&&(_0x123749={'enumerable':!![],'get':function(){return _0x2a13eb[_0xf074d9];}}),Object[_0x57b2aa(0x189)](_0x5e1abb,_0x262ca1,_0x123749);}:function(_0x4e69e3,_0x49bece,_0x1cc5a3,_0x1f3b5c){if(_0x1f3b5c===undefined)_0x1f3b5c=_0x1cc5a3;_0x4e69e3[_0x1f3b5c]=_0x49bece[_0x1cc5a3];}),__setModuleDefault=this&&this[_0x184bd0(0x1a8)]||(Object[_0x184bd0(0x1ad)]?function(_0x3da62f,_0x4be6e6){var _0xa6bf8c=_0x184bd0;Object[_0xa6bf8c(0x189)](_0x3da62f,_0xa6bf8c(0x197),{'enumerable':!![],'value':_0x4be6e6});}:function(_0x33a22a,_0x56e2c7){var _0x34a8ab=_0x184bd0;_0x33a22a[_0x34a8ab(0x197)]=_0x56e2c7;}),__importStar=this&&this['__importStar']||(function(){var _0x3d31b7=function(_0x3f27ad){var _0x2e2466=_0x2dc1;return _0x3d31b7=Object[_0x2e2466(0x1ac)]||function(_0x4e9c83){var _0x352b8b=_0x2e2466,_0xe76902=[];for(var _0x387b11 in _0x4e9c83)if(Object[_0x352b8b(0x19e)][_0x352b8b(0x18b)][_0x352b8b(0x198)](_0x4e9c83,_0x387b11))_0xe76902[_0xe76902[_0x352b8b(0x1a0)]]=_0x387b11;return _0xe76902;},_0x3d31b7(_0x3f27ad);};return function(_0x2b6a7a){var _0xfccfaa=_0x2dc1;if(_0x2b6a7a&&_0x2b6a7a[_0xfccfaa(0x186)])return _0x2b6a7a;var _0x256648={};if(_0x2b6a7a!=null){for(var _0x2ef43b=_0x3d31b7(_0x2b6a7a),_0x2ee706=0x0;_0x2ee706<_0x2ef43b[_0xfccfaa(0x1a0)];_0x2ee706++)if(_0x2ef43b[_0x2ee706]!==_0xfccfaa(0x197))__createBinding(_0x256648,_0x2b6a7a,_0x2ef43b[_0x2ee706]);}return __setModuleDefault(_0x256648,_0x2b6a7a),_0x256648;};}());Object[_0x184bd0(0x189)](exports,'__esModule',{'value':!![]}),exports['createListDirTool']=createListDirTool;const fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require(_0x184bd0(0x1b0))),types_js_1=require(_0x184bd0(0x18d));function expandHome(_0x58932e){var _0x2ac89c=_0x184bd0;if(_0x58932e[_0x2ac89c(0x19d)]('~/')||_0x58932e==='~')return path[_0x2ac89c(0x19a)](os['homedir'](),_0x58932e[_0x2ac89c(0x1a9)](_0x58932e==='~'?0x1:0x2));return _0x58932e;}function _0x2dc1(_0x1b92ec,_0x372f30){_0x1b92ec=_0x1b92ec-0x184;var _0x5bfe8a=_0x5bfe();var _0x2dc1d2=_0x5bfe8a[_0x1b92ec];return _0x2dc1d2;}const definition={'timeoutMs':0x7530,'name':_0x184bd0(0x18a),'description':_0x184bd0(0x1b4),'parameters':{'type':'object','required':[],'properties':{'path':{'type':_0x184bd0(0x1a5),'description':'Directory\x20to\x20list.\x20Default:\x20project\x20root.'}}}};function createListDirTool(){return{'definition':definition,async 'execute'(_0x1d0f7e,_0x44827f,_0x1dd19f,_0x3ecc0a,_0x39176){var _0x4134f4=_0x2dc1;try{if(_0x1dd19f?.[_0x4134f4(0x1a6)])return(0x0,types_js_1[_0x4134f4(0x1b2)])('aborted',!![]);const _0x357218=_0x39176,_0x14cdb9=typeof _0x44827f[_0x4134f4(0x1b0)]===_0x4134f4(0x1a5)?_0x44827f['path']:'.';let _0xed3c85;try{_0xed3c85=(0x0,types_js_1[_0x4134f4(0x1ae)])(path[_0x4134f4(0x1aa)](_0x357218[_0x4134f4(0x187)],expandHome(_0x14cdb9)),_0x357218[_0x4134f4(0x187)]);}catch(_0x1f0374){return(0x0,types_js_1[_0x4134f4(0x1b2)])(_0x4134f4(0x199)+(_0x1f0374 instanceof Error?_0x1f0374['message']:String(_0x1f0374)),!![]);}if(!fs[_0x4134f4(0x18f)](_0xed3c85))return(0x0,types_js_1['textResult'])(_0x4134f4(0x188)+_0x14cdb9,!![]);(0x0,types_js_1[_0x4134f4(0x185)])(_0xed3c85,_0x357218[_0x4134f4(0x187)]);if(!fs['statSync'](_0xed3c85)[_0x4134f4(0x1ab)]())return(0x0,types_js_1[_0x4134f4(0x1b2)])(_0x4134f4(0x195)+_0x14cdb9,!![]);const _0x5e163b=fs[_0x4134f4(0x192)](_0xed3c85,{'withFileTypes':!![]}),_0x457f78=_0x5e163b[_0x4134f4(0x193)]((_0x22e7b3,_0x5d8a15)=>Number(_0x5d8a15[_0x4134f4(0x1ab)]())-Number(_0x22e7b3[_0x4134f4(0x1ab)]())||_0x22e7b3[_0x4134f4(0x1af)][_0x4134f4(0x196)](_0x5d8a15[_0x4134f4(0x1af)]))[_0x4134f4(0x1b6)](_0x5c5d10=>_0x5c5d10[_0x4134f4(0x1ab)]()?_0x5c5d10[_0x4134f4(0x1af)]+'/':_0x5c5d10[_0x4134f4(0x1af)]);return(0x0,types_js_1['textResult'])(_0x14cdb9+'\x0a'+_0x457f78['join']('\x0a'));}catch(_0x218a89){return(0x0,types_js_1[_0x4134f4(0x1b2)])('List\x20error:\x20'+(_0x218a89 instanceof Error?_0x218a89[_0x4134f4(0x190)]:String(_0x218a89)),!![]);}}};}
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(_0x558aa4,_0x41c74f,_0x4d5721,_0x1ac7e5){if(_0x1ac7e5===undefined)_0x1ac7e5=_0x4d5721;var _0x2dc39e=Object['getOwnPropertyDescriptor'](_0x41c74f,_0x4d5721);(!_0x2dc39e||('get'in _0x2dc39e?!_0x41c74f['__esModule']:_0x2dc39e['writable']||_0x2dc39e['configurable']))&&(_0x2dc39e={'enumerable':!![],'get':function(){return _0x41c74f[_0x4d5721];}}),Object['defineProperty'](_0x558aa4,_0x1ac7e5,_0x2dc39e);}:function(_0x537ece,_0x3e1650,_0x1e43ff,_0x202a34){if(_0x202a34===undefined)_0x202a34=_0x1e43ff;_0x537ece[_0x202a34]=_0x3e1650[_0x1e43ff];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x43d129,_0x2ada64){Object['defineProperty'](_0x43d129,'default',{'enumerable':!![],'value':_0x2ada64});}:function(_0xfed769,_0x20807a){_0xfed769['default']=_0x20807a;}),__importStar=this&&this['__importStar']||(function(){var _0x23117e=function(_0x1856fe){return _0x23117e=Object['getOwnPropertyNames']||function(_0x555314){var _0x2557c3=[];for(var _0x1be820 in _0x555314)if(Object['prototype']['hasOwnProperty']['call'](_0x555314,_0x1be820))_0x2557c3[_0x2557c3['length']]=_0x1be820;return _0x2557c3;},_0x23117e(_0x1856fe);};return function(_0x2eda33){if(_0x2eda33&&_0x2eda33['__esModule'])return _0x2eda33;var _0x54d1c2={};if(_0x2eda33!=null){for(var _0x129927=_0x23117e(_0x2eda33),_0x8695f2=0x0;_0x8695f2<_0x129927['length'];_0x8695f2++)if(_0x129927[_0x8695f2]!=='default')__createBinding(_0x54d1c2,_0x2eda33,_0x129927[_0x8695f2]);}return __setModuleDefault(_0x54d1c2,_0x2eda33),_0x54d1c2;};}());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'(_0x496665,_0x14d7a0,_0x1f69b3,_0x163bd2,_0x1aa078){try{if(_0x1f69b3?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0x254891=_0x1aa078,_0x42d645=String(_0x14d7a0['path']??''),_0x42a64=String(_0x14d7a0['old_string']??''),_0x4fb920=String(_0x14d7a0['new_string']??''),_0x43c899=Boolean(_0x14d7a0['replace_all']);if(!_0x42d645)return(0x0,types_js_1['textResult'])('Missing\x20\x27path\x27.',!![]);if(!_0x42a64)return(0x0,types_js_1['textResult'])('Missing\x20\x27old_string\x27.',!![]);let _0x3ad671;try{_0x3ad671=(0x0,types_js_1['resolveConstrainedPath'])(_0x42d645,_0x254891['cwd']),(0x0,types_js_1['assertExternalDirectory'])(_0x3ad671,_0x254891['cwd']),(0x0,types_js_1['assertMutablePath'])(_0x3ad671);}catch(_0x59bad4){return(0x0,types_js_1['textResult'])('Access\x20denied:\x20'+(_0x59bad4 instanceof Error?_0x59bad4['message']:String(_0x59bad4)),!![]);}if(_0x1f69b3?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(_0x254891['requestPermission']){const _0x22d9d4=await _0x254891['requestPermission']('edit_file',_0x42d645,'Trayambak\x20approval\x20required\x20for\x20edit_file');if(!_0x22d9d4)return(0x0,types_js_1['textResult'])('Permission\x20denied\x20for\x20edit_file:\x20'+_0x42d645,!![]);}if(_0x1f69b3?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(!fs['existsSync'](_0x3ad671))return(0x0,types_js_1['textResult'])('File\x20not\x20found:\x20'+_0x42d645,!![]);const _0x98d4af=fs['readFileSync'](_0x3ad671,'utf8'),_0xd09aad=_0x98d4af['split'](_0x42a64)['length']-0x1;if(_0xd09aad===0x0){const _0x47ada6=(0x0,fuzzy_match_js_1['findOldStringSpans'])(_0x98d4af,_0x42a64);if(_0x47ada6['length']===0x0)return(0x0,types_js_1['textResult'])('old_string\x20not\x20found\x20in\x20'+_0x42d645,!![]);if(_0x47ada6['length']>0x1)return(0x0,types_js_1['textResult'])('old_string\x20is\x20not\x20unique\x20('+_0x47ada6['length']+'\x20whitespace-tolerant\x20matches).\x20Make\x20it\x20unique\x20or\x20set\x20replace_all.',!![]);const _0x51d15b=_0x47ada6[0x0],_0x12f487=_0x98d4af['slice'](0x0,_0x51d15b['start'])+_0x4fb920+_0x98d4af['slice'](_0x51d15b['end']);fs['writeFileSync'](_0x3ad671,_0x12f487,'utf8');const _0x1d3eb2=await(0x0,tsc_diagnostics_js_1['syntaxNote'])(_0x3ad671,_0x12f487),_0x55c702=(0x0,diff_render_js_1['miniDiff'])(_0x98d4af['slice'](_0x51d15b['start'],_0x51d15b['end']),_0x4fb920)['join']('\x0a');return(0x0,types_js_1['textResult'])('Edited\x20'+_0x42d645+'\x20(1\x20occurrence,\x20'+_0x51d15b['pass']+'\x20match).'+_0x1d3eb2+'\x0a'+_0x55c702);}if(_0xd09aad>0x1&&!_0x43c899)return(0x0,types_js_1['textResult'])('old_string\x20is\x20not\x20unique\x20('+_0xd09aad+'\x20matches).\x20Make\x20it\x20unique\x20or\x20set\x20replace_all.',!![]);const _0x4c5a42=_0x43c899?_0x98d4af['split'](_0x42a64)['join'](_0x4fb920):_0x98d4af['replace'](_0x42a64,_0x4fb920);fs['writeFileSync'](_0x3ad671,_0x4c5a42,'utf8');const _0x4b7599=await(0x0,tsc_diagnostics_js_1['syntaxNote'])(_0x3ad671,_0x4c5a42),_0xbedf6b=(0x0,diff_render_js_1['miniDiff'])(_0x42a64,_0x4fb920)['join']('\x0a');return(0x0,types_js_1['textResult'])('Edited\x20'+_0x42d645+'\x20('+_0xd09aad+'\x20occurrence'+(_0xd09aad>0x1?'s':'')+').'+_0x4b7599+'\x0a'+_0xbedf6b);}catch(_0x6760f2){return(0x0,types_js_1['textResult'])('Edit\x20error:\x20'+(_0x6760f2 instanceof Error?_0x6760f2['message']:String(_0x6760f2)),!![]);}}};}
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(_0x5ce2b3,_0x3a0ae0,_0x37ff06,_0x5603ce){if(_0x5603ce===undefined)_0x5603ce=_0x37ff06;var _0x4d7ee6=Object['getOwnPropertyDescriptor'](_0x3a0ae0,_0x37ff06);(!_0x4d7ee6||('get'in _0x4d7ee6?!_0x3a0ae0['__esModule']:_0x4d7ee6['writable']||_0x4d7ee6['configurable']))&&(_0x4d7ee6={'enumerable':!![],'get':function(){return _0x3a0ae0[_0x37ff06];}}),Object['defineProperty'](_0x5ce2b3,_0x5603ce,_0x4d7ee6);}:function(_0x2b0193,_0x45b61f,_0x113f91,_0x5f0d3e){if(_0x5f0d3e===undefined)_0x5f0d3e=_0x113f91;_0x2b0193[_0x5f0d3e]=_0x45b61f[_0x113f91];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x37eef9,_0x12c0b7){Object['defineProperty'](_0x37eef9,'default',{'enumerable':!![],'value':_0x12c0b7});}:function(_0x41b997,_0x3a6af3){_0x41b997['default']=_0x3a6af3;}),__importStar=this&&this['__importStar']||(function(){var _0x5f39ba=function(_0x1583ae){return _0x5f39ba=Object['getOwnPropertyNames']||function(_0xe82bd8){var _0x3c7034=[];for(var _0x334dc5 in _0xe82bd8)if(Object['prototype']['hasOwnProperty']['call'](_0xe82bd8,_0x334dc5))_0x3c7034[_0x3c7034['length']]=_0x334dc5;return _0x3c7034;},_0x5f39ba(_0x1583ae);};return function(_0x29d176){if(_0x29d176&&_0x29d176['__esModule'])return _0x29d176;var _0x149c73={};if(_0x29d176!=null){for(var _0x3341e5=_0x5f39ba(_0x29d176),_0x5b5da8=0x0;_0x5b5da8<_0x3341e5['length'];_0x5b5da8++)if(_0x3341e5[_0x5b5da8]!=='default')__createBinding(_0x149c73,_0x29d176,_0x3341e5[_0x5b5da8]);}return __setModuleDefault(_0x149c73,_0x29d176),_0x149c73;};}());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(_0x554d00,_0x5859d5,_0x1764b8=0x14){const _0x8deb9c=(_0x3127a6,_0x3c678e)=>{if(_0x3c678e>_0x1764b8)return;let _0x4d820a;try{_0x4d820a=fs['readdirSync'](_0x3127a6,{'withFileTypes':!![]});}catch{return;}for(const _0xda53dd of _0x4d820a){if(exports['IGNORED_DIRS']['has'](_0xda53dd['name']))continue;const _0x156276=path['join'](_0x3127a6,_0xda53dd['name']),_0x3d1bad=path['relative'](_0x554d00,_0x156276);if(_0xda53dd['isDirectory']())_0x8deb9c(_0x156276,_0x3c678e+0x1);else _0xda53dd['isFile']()&&_0x5859d5(_0x156276,_0x3d1bad);}};_0x8deb9c(_0x554d00,0x0);}function matchGlob(_0x74fc18,_0x2da8fd){const _0x1367df=_0x74fc18['replace'](/[.+^${}()|[\]\\]/g,'\x5c$&')['replace'](/\*\*\//g,'(?:.*/)?')['replace'](/\*\*/g,'.*')['replace'](/\*/g,'[^/]*');return new RegExp('^'+_0x1367df+'$')['test'](_0x2da8fd);}
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';function _0x494f(_0x484340,_0x1ececb){_0x484340=_0x484340-0xe8;const _0x409f11=_0x409f();let _0x494fcd=_0x409f11[_0x484340];return _0x494fcd;}const _0x27b33c=_0x494f;function _0x409f(){const _0x2e756c=['2296343wsiQyE','every','8PkDcIM','defineProperty','length','3477609tNpOwF','exact','12TGaETK','4HtJnmW','9842580fDOxgj','611770xxwMQH','150967SJmFLJ','unicode','2825052HLTogG','push','...','map','trim','1009053GpXMJU','trimEnd','NFKC'];_0x409f=function(){return _0x2e756c;};return _0x409f();}(function(_0x53773b,_0x5dd6ba){const _0x1a6af8=_0x494f,_0x4be6f6=_0x53773b();while(!![]){try{const _0x594e5c=-parseInt(_0x1a6af8(0xf3))/0x1+-parseInt(_0x1a6af8(0xf0))/0x2*(-parseInt(_0x1a6af8(0xfa))/0x3)+-parseInt(_0x1a6af8(0xf5))/0x4+-parseInt(_0x1a6af8(0xf2))/0x5+-parseInt(_0x1a6af8(0xef))/0x6*(parseInt(_0x1a6af8(0xe8))/0x7)+parseInt(_0x1a6af8(0xea))/0x8*(parseInt(_0x1a6af8(0xed))/0x9)+parseInt(_0x1a6af8(0xf1))/0xa;if(_0x594e5c===_0x5dd6ba)break;else _0x4be6f6['push'](_0x4be6f6['shift']());}catch(_0x399e0f){_0x4be6f6['push'](_0x4be6f6['shift']());}}}(_0x409f,0x6387f));Object[_0x27b33c(0xeb)](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,_0x27b33c(0xf7)],[/[\u00A0\u2000-\u200B\u202F\u205F\u3000]/g,'\x20']];function normalizeUnicode(_0xf745c1){const _0x3db588=_0x27b33c;let _0x16f1e2=_0xf745c1['normalize'](_0x3db588(0xfc));for(const [_0x55f835,_0x26480a]of SMART_PUNCT)_0x16f1e2=_0x16f1e2['replace'](_0x55f835,_0x26480a);return _0x16f1e2;}const PASS_FNS={'trimEnd':_0x1b6849=>_0x1b6849['replace'](/[ \t\r]+$/,''),'trim':_0x2da1c0=>_0x2da1c0[_0x27b33c(0xf9)](),'unicode':_0x3fe269=>normalizeUnicode(_0x3fe269['trim']())};function splitLines(_0x5a2c6d){return _0x5a2c6d['split'](/\r?\n/);}function lineOffsets(_0xf4c7b1){const _0x560625=_0x27b33c,_0x597e8b=[0x0],_0x113925=/\r?\n/g;let _0x2fdbd8;while((_0x2fdbd8=_0x113925['exec'](_0xf4c7b1))!==null)_0x597e8b['push'](_0x2fdbd8['index']+_0x2fdbd8[0x0][_0x560625(0xec)]);return _0x597e8b;}function findPassSpans(_0x33a0a3,_0x3434e9,_0x17de7d){const _0x32ea3e=_0x27b33c,_0x1a6017=_0x17de7d===_0x32ea3e(0xee)?_0x42fb3b=>_0x42fb3b:PASS_FNS[_0x17de7d],_0x375366=splitLines(_0x33a0a3),_0x3c5ec5=splitLines(_0x3434e9);if(_0x3c5ec5['length']===0x0)return[];const _0x297aa1=_0x375366[_0x32ea3e(0xf8)](_0x1a6017),_0x3afefc=_0x3c5ec5[_0x32ea3e(0xf8)](_0x1a6017);if(_0x3afefc[_0x32ea3e(0xe9)](_0x1b677f=>_0x1b677f[_0x32ea3e(0xec)]===0x0))return[];const _0x35bd08=lineOffsets(_0x33a0a3),_0x142b6a=[];for(let _0x3000b1=0x0;_0x3000b1+_0x3afefc[_0x32ea3e(0xec)]<=_0x297aa1[_0x32ea3e(0xec)];_0x3000b1++){let _0x34a961=!![];for(let _0xc7286f=0x0;_0xc7286f<_0x3afefc[_0x32ea3e(0xec)];_0xc7286f++){if(_0x297aa1[_0x3000b1+_0xc7286f]!==_0x3afefc[_0xc7286f]){_0x34a961=![];break;}}if(!_0x34a961)continue;const _0x4fa495=_0x3000b1+_0x3afefc[_0x32ea3e(0xec)]-0x1,_0x54ac7c=_0x35bd08[_0x3000b1]??0x0,_0x32de9e=_0x35bd08[_0x4fa495+0x1],_0x10774e=_0x32de9e===undefined?0x0:_0x32de9e-(_0x35bd08[_0x4fa495]??0x0)-(_0x375366[_0x4fa495]??'')[_0x32ea3e(0xec)];_0x142b6a[_0x32ea3e(0xf6)]({'start':_0x54ac7c,'end':(_0x32de9e??_0x33a0a3['length'])-_0x10774e,'pass':_0x17de7d});}return _0x142b6a;}function findOldStringSpans(_0x295711,_0x8daeaa){const _0x34e7d0=_0x27b33c;if(!_0x8daeaa)return[];const _0x2ea915=['exact',_0x34e7d0(0xfb),'trim',_0x34e7d0(0xf4)];for(const _0x11256b of _0x2ea915){const _0x57307b=findPassSpans(_0x295711,_0x8daeaa,_0x11256b);if(_0x57307b[_0x34e7d0(0xec)]>0x0)return _0x57307b;}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(_0x40392d,_0x59b699,_0x34068a,_0x1f9109){if(_0x1f9109===undefined)_0x1f9109=_0x34068a;var _0x36d702=Object['getOwnPropertyDescriptor'](_0x59b699,_0x34068a);(!_0x36d702||('get'in _0x36d702?!_0x59b699['__esModule']:_0x36d702['writable']||_0x36d702['configurable']))&&(_0x36d702={'enumerable':!![],'get':function(){return _0x59b699[_0x34068a];}}),Object['defineProperty'](_0x40392d,_0x1f9109,_0x36d702);}:function(_0x51579f,_0x23f104,_0x191daa,_0x3854ee){if(_0x3854ee===undefined)_0x3854ee=_0x191daa;_0x51579f[_0x3854ee]=_0x23f104[_0x191daa];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x30d14d,_0x53039d){Object['defineProperty'](_0x30d14d,'default',{'enumerable':!![],'value':_0x53039d});}:function(_0x10394b,_0x2f16b1){_0x10394b['default']=_0x2f16b1;}),__importStar=this&&this['__importStar']||(function(){var _0x4d2bc2=function(_0x3bcae0){return _0x4d2bc2=Object['getOwnPropertyNames']||function(_0x25ec49){var _0x43ceba=[];for(var _0x5f1424 in _0x25ec49)if(Object['prototype']['hasOwnProperty']['call'](_0x25ec49,_0x5f1424))_0x43ceba[_0x43ceba['length']]=_0x5f1424;return _0x43ceba;},_0x4d2bc2(_0x3bcae0);};return function(_0x283594){if(_0x283594&&_0x283594['__esModule'])return _0x283594;var _0x4f093b={};if(_0x283594!=null){for(var _0x4d0ac1=_0x4d2bc2(_0x283594),_0x45e2cb=0x0;_0x45e2cb<_0x4d0ac1['length'];_0x45e2cb++)if(_0x4d0ac1[_0x45e2cb]!=='default')__createBinding(_0x4f093b,_0x283594,_0x4d0ac1[_0x45e2cb]);}return __setModuleDefault(_0x4f093b,_0x283594),_0x4f093b;};}());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'(_0x50f28d,_0x5adccc,_0x222420,_0x194605,_0x134148){try{if(_0x222420?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);const _0xb0db2b=_0x134148,_0x36b9fe=String(_0x5adccc['path']??'');if(!_0x36b9fe)return(0x0,types_js_1['textResult'])('Missing\x20\x27path\x27.',!![]);let _0xf39635;try{_0xf39635=(0x0,types_js_1['resolveConstrainedPath'])(_0x36b9fe,_0xb0db2b['cwd']);}catch(_0x1ba5ab){return(0x0,types_js_1['textResult'])('Access\x20denied:\x20'+(_0x1ba5ab instanceof Error?_0x1ba5ab['message']:String(_0x1ba5ab)),!![]);}if(_0x222420?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);(0x0,types_js_1['assertExternalDirectory'])(_0xf39635,_0xb0db2b['cwd']);if(!fs['existsSync'](_0xf39635))return(0x0,types_js_1['textResult'])('File\x20not\x20found:\x20'+_0x36b9fe,!![]);if(_0x222420?.['aborted'])return(0x0,types_js_1['textResult'])('aborted',!![]);if(!fs['statSync'](_0xf39635)['isFile']())return(0x0,types_js_1['textResult'])('Not\x20a\x20file:\x20'+_0x36b9fe,!![]);const _0x1efe20=typeof _0x5adccc['offset']==='number'&&Number['isInteger'](_0x5adccc['offset'])?Math['max'](0x1,_0x5adccc['offset']):0x1;let _0x2414b4=typeof _0x5adccc['limit']==='number'&&Number['isInteger'](_0x5adccc['limit'])?Math['max'](0x1,_0x5adccc['limit']):0x7d0;if(_0x2414b4>MAX_LINES)_0x2414b4=MAX_LINES;const _0xc606b6=fs['readFileSync'](_0xf39635,'utf8'),_0x31055f=Buffer['byteLength'](_0xc606b6,'utf8'),_0x2fdf7e=_0x31055f>MAX_BYTES?_0xc606b6['slice'](0x0,MAX_BYTES):_0xc606b6,_0x3ff1be=_0x2fdf7e['split']('\x0a'),_0x3c2298=_0x3ff1be['slice'](_0x1efe20-0x1,_0x1efe20-0x1+_0x2414b4),_0x2fbae2=_0x3c2298['map']((_0x328d18,_0x291485)=>String(_0x1efe20+_0x291485)['padStart'](0x5)+'\x20|\x20'+_0x328d18)['join']('\x0a'),_0x14319c=_0x3ff1be['length']>_0x1efe20-0x1+_0x2414b4?'\x0a...\x20('+(_0x3ff1be['length']-(_0x1efe20-0x1+_0x2414b4))+'\x20more\x20lines)':'',_0xade849=_0x31055f>MAX_BYTES?'\x0a[content\x20capped\x20to\x20'+MAX_BYTES/0x400+'\x20KB]':'';return(0x0,types_js_1['textResult'])('File:\x20'+_0x36b9fe+'\x20('+_0x3ff1be['length']+'\x20lines)\x0a'+_0x2fbae2+_0x14319c+_0xade849);}catch(_0x4e3622){return(0x0,types_js_1['textResult'])('Read\x20error:\x20'+(_0x4e3622 instanceof Error?_0x4e3622['message']:String(_0x4e3622)),!![]);}}};}
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)),!![]);}}};}