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

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 (394) 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/toolsets.js +1 -1
  231. package/dist/packages/protocol/src/util/url.js +1 -1
  232. package/dist/packages/provider/src/anthropic.js +1 -1
  233. package/dist/packages/provider/src/catalog.js +1 -1
  234. package/dist/packages/provider/src/custom.js +1 -1
  235. package/dist/packages/provider/src/faux-stream.js +1 -1
  236. package/dist/packages/provider/src/google.js +1 -1
  237. package/dist/packages/provider/src/huggingface.js +1 -1
  238. package/dist/packages/provider/src/index.js +1 -1
  239. package/dist/packages/provider/src/llama-cpp.js +1 -1
  240. package/dist/packages/provider/src/nvidia.js +1 -1
  241. package/dist/packages/provider/src/ollama.js +1 -1
  242. package/dist/packages/provider/src/openai.js +1 -1
  243. package/dist/packages/provider/src/types.js +1 -1
  244. package/dist/packages/provider/src/xai.js +1 -1
  245. package/dist/packages/sandbox/src/gate.js +1 -1
  246. package/dist/packages/sandbox/src/index.js +1 -1
  247. package/dist/packages/sandbox/src/spawn.js +1 -1
  248. package/dist/packages/sandbox/src/types.js +1 -1
  249. package/dist/packages/sandbox/src/violation.js +1 -1
  250. package/dist/packages/schema/src/index.js +1 -1
  251. package/dist/packages/sdk/src/index.js +1 -1
  252. package/dist/packages/server/src/cors.js +1 -1
  253. package/dist/packages/server/src/daemon.js +1 -1
  254. package/dist/packages/server/src/github-app.js +1 -1
  255. package/dist/packages/server/src/github-autofix.js +1 -1
  256. package/dist/packages/server/src/github-jobs.js +1 -1
  257. package/dist/packages/server/src/github-oauth.js +1 -1
  258. package/dist/packages/server/src/index.js +1 -1
  259. package/dist/packages/server/src/install-ps1.js +1 -1
  260. package/dist/packages/server/src/license-store.js +1 -1
  261. package/dist/packages/session-backends/src/index.js +1 -1
  262. package/dist/packages/session-backends/src/transcript.js +1 -1
  263. package/dist/packages/telemetry/src/index.js +1 -1
  264. package/dist/packages/tui/src/app/app-state.js +1 -1
  265. package/dist/packages/tui/src/app/events.js +1 -1
  266. package/dist/packages/tui/src/approval-notification.js +1 -1
  267. package/dist/packages/tui/src/bottom_pane/composer.js +1 -1
  268. package/dist/packages/tui/src/bottom_pane/index.js +1 -1
  269. package/dist/packages/tui/src/chatwidget/chat-widget.js +1 -1
  270. package/dist/packages/tui/src/chatwidget/index.js +1 -1
  271. package/dist/packages/tui/src/dialogs.js +1 -1
  272. package/dist/packages/tui/src/index.js +1 -1
  273. package/dist/packages/tui/src/ink-app/glyphs.js +1 -1
  274. package/dist/packages/tui/src/ink-app/utils/stringWidth.js +1 -1
  275. package/dist/packages/tui/src/ink-app-esm/AgentPicker.js +1 -1
  276. package/dist/packages/tui/src/ink-app-esm/App.js +1 -1
  277. package/dist/packages/tui/src/ink-app-esm/CommandPalette.js +1 -1
  278. package/dist/packages/tui/src/ink-app-esm/ExecToolCallItem.js +1 -1
  279. package/dist/packages/tui/src/ink-app-esm/Footer.js +1 -1
  280. package/dist/packages/tui/src/ink-app-esm/GroupedToolUseContent.js +1 -1
  281. package/dist/packages/tui/src/ink-app-esm/MCPToolCallItem.js +1 -1
  282. package/dist/packages/tui/src/ink-app-esm/MessageList.js +1 -1
  283. package/dist/packages/tui/src/ink-app-esm/MessageResponse.js +1 -1
  284. package/dist/packages/tui/src/ink-app-esm/MessageRow.js +1 -1
  285. package/dist/packages/tui/src/ink-app-esm/ModelPicker.js +1 -1
  286. package/dist/packages/tui/src/ink-app-esm/PermissionOverlay.js +1 -1
  287. package/dist/packages/tui/src/ink-app-esm/PromptInput.js +1 -1
  288. package/dist/packages/tui/src/ink-app-esm/ProviderPicker.js +1 -1
  289. package/dist/packages/tui/src/ink-app-esm/SandboxSetup.js +1 -1
  290. package/dist/packages/tui/src/ink-app-esm/SessionPicker.js +1 -1
  291. package/dist/packages/tui/src/ink-app-esm/Sidebar.js +1 -1
  292. package/dist/packages/tui/src/ink-app-esm/Spinner.js +1 -1
  293. package/dist/packages/tui/src/ink-app-esm/SplashScreen.js +1 -1
  294. package/dist/packages/tui/src/ink-app-esm/SubagentPanel.js +1 -1
  295. package/dist/packages/tui/src/ink-app-esm/SubagentRow.js +1 -1
  296. package/dist/packages/tui/src/ink-app-esm/SwarmToolCallItem.js +1 -1
  297. package/dist/packages/tui/src/ink-app-esm/ThemePicker.js +1 -1
  298. package/dist/packages/tui/src/ink-app-esm/ToolCallItem.js +1 -1
  299. package/dist/packages/tui/src/ink-app-esm/ToolUseLoader.js +1 -1
  300. package/dist/packages/tui/src/ink-app-esm/TrayambakLogo.js +1 -1
  301. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolCanceledMessage.js +1 -1
  302. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolErrorMessage.js +1 -1
  303. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolRejectMessage.js +1 -1
  304. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolResultMessage.js +1 -1
  305. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolSuccessMessage.js +1 -1
  306. package/dist/packages/tui/src/ink-app-esm/WelcomeScreen.js +1 -1
  307. package/dist/packages/tui/src/ink-app-esm/WhichKey.js +1 -1
  308. package/dist/packages/tui/src/ink-app-esm/app-bootstrap.js +1 -1
  309. package/dist/packages/tui/src/ink-app-esm/clipboard.js +1 -1
  310. package/dist/packages/tui/src/ink-app-esm/command-palette.js +1 -1
  311. package/dist/packages/tui/src/ink-app-esm/file-mention.js +1 -1
  312. package/dist/packages/tui/src/ink-app-esm/footer-fit.js +1 -1
  313. package/dist/packages/tui/src/ink-app-esm/fuzzy.js +1 -1
  314. package/dist/packages/tui/src/ink-app-esm/glyphs.js +1 -1
  315. package/dist/packages/tui/src/ink-app-esm/index.js +1 -1
  316. package/dist/packages/tui/src/ink-app-esm/keys.js +1 -1
  317. package/dist/packages/tui/src/ink-app-esm/mode-stack.js +1 -1
  318. package/dist/packages/tui/src/ink-app-esm/model-picker.js +1 -1
  319. package/dist/packages/tui/src/ink-app-esm/mouse-input.js +1 -1
  320. package/dist/packages/tui/src/ink-app-esm/prompt-files.js +1 -1
  321. package/dist/packages/tui/src/ink-app-esm/provider-model-support.js +1 -1
  322. package/dist/packages/tui/src/ink-app-esm/resize-guard.js +1 -1
  323. package/dist/packages/tui/src/ink-app-esm/restore-messages.js +1 -1
  324. package/dist/packages/tui/src/ink-app-esm/scroll-math.js +1 -1
  325. package/dist/packages/tui/src/ink-app-esm/session-picker-actions.js +1 -1
  326. package/dist/packages/tui/src/ink-app-esm/sidebar-data.js +1 -1
  327. package/dist/packages/tui/src/ink-app-esm/skt-themes.js +1 -1
  328. package/dist/packages/tui/src/ink-app-esm/stdin-sanitizer.js +1 -1
  329. package/dist/packages/tui/src/ink-app-esm/subagent-view.js +1 -1
  330. package/dist/packages/tui/src/ink-app-esm/syntax-highlight.js +1 -1
  331. package/dist/packages/tui/src/ink-app-esm/terminal-notify.js +1 -1
  332. package/dist/packages/tui/src/ink-app-esm/text-format.js +1 -1
  333. package/dist/packages/tui/src/ink-app-esm/theme.js +1 -1
  334. package/dist/packages/tui/src/ink-app-esm/themeColors.js +1 -1
  335. package/dist/packages/tui/src/ink-app-esm/types.js +1 -1
  336. package/dist/packages/tui/src/ink-app-esm/use-border-pulse.js +1 -1
  337. package/dist/packages/tui/src/ink-app-esm/useAppInput.js +1 -1
  338. package/dist/packages/tui/src/ink-app-esm/utils/stringWidth.js +1 -1
  339. package/dist/packages/tui/src/keybindings.js +1 -1
  340. package/dist/packages/tui/src/keys.js +1 -1
  341. package/dist/packages/tui/src/notifications.js +1 -1
  342. package/dist/packages/tui/src/premium-ui.js +1 -1
  343. package/dist/packages/tui/src/stdin-buffer.js +1 -1
  344. package/dist/packages/tui/src/terminal-ui.js +1 -1
  345. package/dist/packages/tui/src/tui/terminal.js +1 -1
  346. package/dist/packages/tui/src/ui/border.js +1 -1
  347. package/dist/packages/tui/src/ui/box.js +1 -1
  348. package/dist/packages/tui/src/ui/dialog.js +1 -1
  349. package/dist/packages/tui/src/ui/footer-mode.js +1 -1
  350. package/dist/packages/tui/src/ui/footer.js +1 -1
  351. package/dist/packages/tui/src/ui/key-hint.js +1 -1
  352. package/dist/packages/tui/src/ui/skt-themes.js +1 -1
  353. package/dist/packages/tui/src/ui/spinner.js +1 -1
  354. package/dist/packages/tui/src/ui/theme.js +1 -1
  355. package/dist/packages/tui/src/ui/toast.js +1 -1
  356. package/dist/packages/tui/src/ui/tool-display.js +1 -1
  357. package/dist/packages/tui/src/ui/tool-palette.js +1 -1
  358. package/dist/skt/0-points/points.js +1 -1
  359. package/dist/skt/1-errors/mistake.js +1 -1
  360. package/dist/skt/1-errors/penalty.js +1 -1
  361. package/dist/skt/10-upload/upload.js +1 -1
  362. package/dist/skt/11-ui/components.js +1 -1
  363. package/dist/skt/12-control/content-control.js +1 -1
  364. package/dist/skt/12-control/hallucination.js +1 -1
  365. package/dist/skt/12-control/points.js +1 -1
  366. package/dist/skt/12-control/repetition.js +1 -1
  367. package/dist/skt/12-control/verification.js +1 -1
  368. package/dist/skt/13-healing/ast-validator.js +1 -1
  369. package/dist/skt/13-healing/healing-controller.js +1 -1
  370. package/dist/skt/13-healing/journal.js +1 -1
  371. package/dist/skt/13-healing/rollback.js +1 -1
  372. package/dist/skt/13-healing/scratchpad.js +1 -1
  373. package/dist/skt/13-healing/subprocess.js +1 -1
  374. package/dist/skt/13-healing/verify.js +1 -1
  375. package/dist/skt/14-hooks/codec.js +1 -1
  376. package/dist/skt/14-hooks/events.js +1 -1
  377. package/dist/skt/14-hooks/matcher.js +1 -1
  378. package/dist/skt/14-hooks/merge.js +1 -1
  379. package/dist/skt/14-hooks/runner.js +1 -1
  380. package/dist/skt/14-hooks/types.js +1 -1
  381. package/dist/skt/3-user/instructions.js +1 -1
  382. package/dist/skt/4-mem/memory.js +1 -1
  383. package/dist/skt/5-eval/cot-chain.js +1 -1
  384. package/dist/skt/5-eval/cot.js +1 -1
  385. package/dist/skt/5-eval/eval.js +1 -1
  386. package/dist/skt/6-u/improvements.js +1 -1
  387. package/dist/skt/6-u/reward.js +1 -1
  388. package/dist/skt/7-cli/autorepair.js +1 -1
  389. package/dist/skt/7-cli/clibugs.js +1 -1
  390. package/dist/skt/7-cli/reinstall.js +1 -1
  391. package/dist/skt/7-cli/reset.js +1 -1
  392. package/dist/skt/9-session/session.js +1 -1
  393. package/dist/skt/context.js +1 -1
  394. package/package.json +1 -1
@@ -1 +1 @@
1
- 'use strict';const _0x2f7f5d=_0x1258;(function(_0x87c213,_0x287ad2){const _0x5f2249=_0x1258,_0x12e4e7=_0x87c213();while(!![]){try{const _0x422966=parseInt(_0x5f2249(0xf9))/0x1+-parseInt(_0x5f2249(0x110))/0x2+parseInt(_0x5f2249(0xbf))/0x3*(-parseInt(_0x5f2249(0xc5))/0x4)+parseInt(_0x5f2249(0x10b))/0x5*(-parseInt(_0x5f2249(0xe5))/0x6)+-parseInt(_0x5f2249(0xee))/0x7*(parseInt(_0x5f2249(0x120))/0x8)+parseInt(_0x5f2249(0x109))/0x9*(parseInt(_0x5f2249(0xe8))/0xa)+parseInt(_0x5f2249(0x12a))/0xb;if(_0x422966===_0x287ad2)break;else _0x12e4e7['push'](_0x12e4e7['shift']());}catch(_0x73faf0){_0x12e4e7['push'](_0x12e4e7['shift']());}}}(_0x46a8,0xb2daf));var __createBinding=this&&this[_0x2f7f5d(0xcd)]||(Object[_0x2f7f5d(0x101)]?function(_0x3de3a9,_0x558338,_0x18e052,_0x1eee5e){const _0x4cdfd7=_0x2f7f5d;if(_0x1eee5e===undefined)_0x1eee5e=_0x18e052;var _0x5f1746=Object[_0x4cdfd7(0xff)](_0x558338,_0x18e052);(!_0x5f1746||('get'in _0x5f1746?!_0x558338[_0x4cdfd7(0xc1)]:_0x5f1746[_0x4cdfd7(0x102)]||_0x5f1746[_0x4cdfd7(0xf0)]))&&(_0x5f1746={'enumerable':!![],'get':function(){return _0x558338[_0x18e052];}}),Object[_0x4cdfd7(0xef)](_0x3de3a9,_0x1eee5e,_0x5f1746);}:function(_0xa00022,_0xa60b9a,_0x42b304,_0x3562b9){if(_0x3562b9===undefined)_0x3562b9=_0x42b304;_0xa00022[_0x3562b9]=_0xa60b9a[_0x42b304];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x578272,_0xa833c1){const _0x431352=_0x2f7f5d;Object[_0x431352(0xef)](_0x578272,_0x431352(0xe0),{'enumerable':!![],'value':_0xa833c1});}:function(_0x408f4d,_0x5e3750){const _0x4e93d3=_0x2f7f5d;_0x408f4d[_0x4e93d3(0xe0)]=_0x5e3750;}),__importStar=this&&this[_0x2f7f5d(0xeb)]||(function(){var _0x4739d3=function(_0x1fe6ca){const _0x120b98=_0x1258;return _0x4739d3=Object[_0x120b98(0x10a)]||function(_0x92f2b){const _0x362e3d=_0x120b98;var _0x6011ce=[];for(var _0x4fbdfd in _0x92f2b)if(Object[_0x362e3d(0xd9)][_0x362e3d(0xdf)][_0x362e3d(0xd0)](_0x92f2b,_0x4fbdfd))_0x6011ce[_0x6011ce['length']]=_0x4fbdfd;return _0x6011ce;},_0x4739d3(_0x1fe6ca);};return function(_0x9cf8b2){const _0x4a5688=_0x1258;if(_0x9cf8b2&&_0x9cf8b2[_0x4a5688(0xc1)])return _0x9cf8b2;var _0x20afe8={};if(_0x9cf8b2!=null){for(var _0x30fd7a=_0x4739d3(_0x9cf8b2),_0x1dfa66=0x0;_0x1dfa66<_0x30fd7a['length'];_0x1dfa66++)if(_0x30fd7a[_0x1dfa66]!==_0x4a5688(0xe0))__createBinding(_0x20afe8,_0x9cf8b2,_0x30fd7a[_0x1dfa66]);}return __setModuleDefault(_0x20afe8,_0x9cf8b2),_0x20afe8;};}());Object[_0x2f7f5d(0xef)](exports,'__esModule',{'value':!![]}),exports['createReadManifestTool']=createReadManifestTool;const fs=__importStar(require('fs')),path=__importStar(require(_0x2f7f5d(0xd5))),types_js_1=require(_0x2f7f5d(0xdd)),MANIFESTS=[{'file':_0x2f7f5d(0xf4),'project':_0x2f7f5d(0xf3)},{'file':'pyproject.toml','project':_0x2f7f5d(0xf6)},{'file':_0x2f7f5d(0x105),'project':_0x2f7f5d(0xfb)},{'file':_0x2f7f5d(0xd6),'project':_0x2f7f5d(0xcc)},{'file':_0x2f7f5d(0xed),'project':'Go'},{'file':_0x2f7f5d(0x113),'project':_0x2f7f5d(0xf2)},{'file':'build.gradle','project':_0x2f7f5d(0xbe)},{'file':_0x2f7f5d(0x12c),'project':_0x2f7f5d(0xe1)},{'file':_0x2f7f5d(0x10e),'project':_0x2f7f5d(0x11b)},{'file':_0x2f7f5d(0xc7),'project':_0x2f7f5d(0xc2)}],definition={'timeoutMs':0x7530,'name':'read_manifest','description':_0x2f7f5d(0x125),'parameters':{'type':_0x2f7f5d(0xc9),'required':[],'properties':{'path':{'type':'string','description':_0x2f7f5d(0xf7)},'depth':{'type':_0x2f7f5d(0x119),'description':'How\x20many\x20levels\x20deep\x20to\x20look\x20for\x20nested\x20manifests.\x20Default\x201.'}}}};function createReadManifestTool(){return{'definition':definition,async 'execute'(_0x34f89e,_0x474174,_0x3d3fcf,_0x1de08d,_0x173b5c){const _0x5ce8f2=_0x1258,_0x1fb765=_0x173b5c,_0x23afaf=path['resolve'](_0x1fb765[_0x5ce8f2(0xd4)],typeof _0x474174['path']===_0x5ce8f2(0x11a)?_0x474174['path']:'.'),_0x174223=typeof _0x474174[_0x5ce8f2(0x124)]===_0x5ce8f2(0x10c)?Math[_0x5ce8f2(0xdc)](0x0,Math['floor'](_0x474174[_0x5ce8f2(0x124)])):0x1,_0x3fa2e5=[],_0xb8eb6a=(_0x25949b,_0x7cc936)=>{const _0x3c3369=_0x5ce8f2;if(_0x7cc936>_0x174223)return;for(const _0x1a0804 of MANIFESTS){const _0x42861b=path[_0x3c3369(0x10d)](_0x25949b,_0x1a0804[_0x3c3369(0xe9)]);if(!fs[_0x3c3369(0xe7)](_0x42861b)||!fs[_0x3c3369(0xbd)](_0x42861b)[_0x3c3369(0xe4)]())continue;const _0x52084c=summarizeManifest(_0x42861b,_0x1a0804[_0x3c3369(0xe9)],_0x1a0804[_0x3c3369(0xcf)]);if(_0x52084c['length']>0x0)_0x3fa2e5[_0x3c3369(0x104)]({'file':path['relative'](_0x23afaf,_0x42861b)||_0x1a0804['file'],'summary':_0x52084c});break;}if(_0x7cc936<_0x174223){let _0x42b578;try{_0x42b578=fs[_0x3c3369(0xec)](_0x25949b,{'withFileTypes':!![]});}catch{return;}for(const _0x1505a7 of _0x42b578){_0x1505a7[_0x3c3369(0x11e)]()&&!_0x1505a7['name']['startsWith']('.')&&_0x1505a7['name']!==_0x3c3369(0x112)&&_0xb8eb6a(path[_0x3c3369(0x10d)](_0x25949b,_0x1505a7[_0x3c3369(0x128)]),_0x7cc936+0x1);}}};_0xb8eb6a(_0x23afaf,0x0);if(_0x3fa2e5[_0x5ce8f2(0xc3)]===0x0)return(0x0,types_js_1['textResult'])(_0x5ce8f2(0xdb)+_0x23afaf);const _0x713ac=_0x3fa2e5[_0x5ce8f2(0x127)](_0x11bac2=>'Manifest:\x20'+_0x11bac2[_0x5ce8f2(0xe9)]+'\x0a'+_0x11bac2['summary'][_0x5ce8f2(0x127)](_0x1050ba=>'\x20\x20'+_0x1050ba)[_0x5ce8f2(0x10d)]('\x0a'))['join']('\x0a\x0a');return(0x0,types_js_1[_0x5ce8f2(0x108)])(_0x713ac);}};}function summarizeManifest(_0x529fe7,_0x4e0216,_0x422551){const _0x5d72b1=_0x2f7f5d,_0x2db936=fs[_0x5d72b1(0xda)](_0x529fe7,'utf8');switch(_0x4e0216){case'package.json':return summarizePackageJson(_0x2db936);case _0x5d72b1(0x126):return summarizePyproject(_0x2db936);case'requirements.txt':return summarizeRequirements(_0x2db936);case _0x5d72b1(0xd6):return summarizeCargo(_0x2db936);case _0x5d72b1(0xed):return summarizeGoMod(_0x2db936);case'tsconfig.json':return summarizeTsconfig(_0x2db936);default:return summarizeGeneric(_0x2db936,_0x422551+'\x20('+_0x4e0216+')');}}function summarizePackageJson(_0x548761){const _0x504c3a=_0x2f7f5d;let _0x1ac05e;try{_0x1ac05e=JSON[_0x504c3a(0xd2)](_0x548761[_0x504c3a(0x12b)](/^\uFEFF/,''));}catch{return summarizeGeneric(_0x548761,'package.json\x20(unparseable)');}const _0x59eb1a=[];if(typeof _0x1ac05e['name']===_0x504c3a(0x11a))_0x59eb1a['push'](_0x504c3a(0xce)+_0x1ac05e[_0x504c3a(0x128)]);if(typeof _0x1ac05e[_0x504c3a(0xf1)]===_0x504c3a(0x11a))_0x59eb1a[_0x504c3a(0x104)](_0x504c3a(0xfe)+_0x1ac05e[_0x504c3a(0xf1)]);if(typeof _0x1ac05e[_0x504c3a(0x106)]==='string')_0x59eb1a[_0x504c3a(0x104)](_0x504c3a(0x107)+_0x1ac05e[_0x504c3a(0x106)]);if(typeof _0x1ac05e[_0x504c3a(0xc8)]===_0x504c3a(0x11a))_0x59eb1a[_0x504c3a(0x104)](_0x504c3a(0xe6)+_0x1ac05e[_0x504c3a(0xc8)]);const _0x41b9de=_0x1ac05e[_0x504c3a(0xf5)];if(_0x41b9de)_0x59eb1a['push'](_0x504c3a(0xd7)+Object[_0x504c3a(0x11c)](_0x41b9de)[_0x504c3a(0x10d)](',\x20'));for(const [_0x18845a,_0x39ec52]of[[_0x504c3a(0xe3),_0x504c3a(0xe3)],[_0x504c3a(0xca),_0x504c3a(0xca)]]){const _0xcfbc25=_0x1ac05e[_0x39ec52];if(_0xcfbc25&&Object[_0x504c3a(0x11c)](_0xcfbc25)[_0x504c3a(0xc3)]>0x0){const _0x43c16c=Object['keys'](_0xcfbc25);_0x59eb1a[_0x504c3a(0x104)](_0x18845a+'\x20('+_0x43c16c[_0x504c3a(0xc3)]+_0x504c3a(0xfd)+_0x43c16c[_0x504c3a(0xc0)](0x0,0xf)['join'](',\x20')+(_0x43c16c[_0x504c3a(0xc3)]>0xf?'…':''));}}if(_0x59eb1a['length']===0x0)_0x59eb1a[_0x504c3a(0x104)](_0x504c3a(0xbc));return _0x59eb1a;}function summarizePyproject(_0x1fc3a3){const _0x5bb313=_0x2f7f5d,_0x5d0a4b=[],_0x3a623f=/^name\s*=\s*["']?([^"'\n]+)["']?/m,_0x2681c4=/^version\s*=\s*["']?([^"'\n]+)["']?/m,_0x516ef3=field(_0x1fc3a3,_0x3a623f,_0x5bb313(0xcf))??field(_0x1fc3a3,_0x3a623f),_0x5ae26b=field(_0x1fc3a3,_0x2681c4,_0x5bb313(0xcf))??field(_0x1fc3a3,_0x2681c4);if(_0x516ef3)_0x5d0a4b[_0x5bb313(0x104)](_0x5bb313(0xce)+_0x516ef3);if(_0x5ae26b)_0x5d0a4b[_0x5bb313(0x104)](_0x5bb313(0xfe)+_0x5ae26b);const _0x302da5=tomlArrayField(_0x1fc3a3,'project',_0x5bb313(0xe3));if(_0x302da5[_0x5bb313(0xc3)]>0x0)_0x5d0a4b['push'](_0x5bb313(0xd8)+_0x302da5[_0x5bb313(0xc3)]+_0x5bb313(0xfd)+_0x302da5['slice'](0x0,0xc)[_0x5bb313(0x10d)](',\x20')+(_0x302da5[_0x5bb313(0xc3)]>0xc?'…':''));const _0x1a62a5=tomlArrayField(_0x1fc3a3,_0x5bb313(0x129),_0x5bb313(0xea));if(_0x1a62a5[_0x5bb313(0xc3)]>0x0)_0x5d0a4b['push']('build\x20requires\x20('+_0x1a62a5[_0x5bb313(0xc3)]+_0x5bb313(0xfd)+_0x1a62a5[_0x5bb313(0xc0)](0x0,0x6)[_0x5bb313(0x10d)](',\x20'));if(_0x5d0a4b['length']===0x0)_0x5d0a4b['push'](_0x5bb313(0xe2));return _0x5d0a4b;}function summarizeRequirements(_0x438257){const _0x2538b2=_0x2f7f5d,_0x10d049=_0x438257[_0x2538b2(0x103)]('\x0a')[_0x2538b2(0x127)](_0x23d8d5=>_0x23d8d5[_0x2538b2(0x100)]())[_0x2538b2(0xc6)](_0x1bf860=>_0x1bf860&&!_0x1bf860[_0x2538b2(0x116)]('#')&&!_0x1bf860[_0x2538b2(0x116)]('--')&&!_0x1bf860[_0x2538b2(0x116)]('-r\x20'));return _0x10d049[_0x2538b2(0xc3)]===0x0?[_0x2538b2(0xf8)]:[_0x10d049[_0x2538b2(0xc3)]+'\x20requirement(s):\x20'+_0x10d049[_0x2538b2(0xc0)](0x0,0xf)[_0x2538b2(0x10d)](',\x20')+(_0x10d049[_0x2538b2(0xc3)]>0xf?'…':'')];}function summarizeCargo(_0x173970){const _0x5b24ed=_0x2f7f5d,_0xb2ba17=[],_0x3879bb=sectionField(_0x173970,_0x5b24ed(0x117),_0x5b24ed(0x128)),_0x1a6c09=sectionField(_0x173970,_0x5b24ed(0x117),'version');if(_0x3879bb)_0xb2ba17[_0x5b24ed(0x104)]('name:\x20'+_0x3879bb);if(_0x1a6c09)_0xb2ba17['push'](_0x5b24ed(0xfe)+_0x1a6c09);const _0x2ab2a1=sectionLines(_0x173970,_0x5b24ed(0xe3));if(_0x2ab2a1[_0x5b24ed(0xc3)]>0x0)_0xb2ba17[_0x5b24ed(0x104)](_0x5b24ed(0xd8)+_0x2ab2a1[_0x5b24ed(0xc3)]+_0x5b24ed(0xfd)+_0x2ab2a1[_0x5b24ed(0xc0)](0x0,0xc)[_0x5b24ed(0x10d)](',\x20')+(_0x2ab2a1[_0x5b24ed(0xc3)]>0xc?'…':''));const _0x28a483=sectionLines(_0x173970,'dev-dependencies');if(_0x28a483[_0x5b24ed(0xc3)]>0x0)_0xb2ba17[_0x5b24ed(0x104)]('dev-dependencies\x20('+_0x28a483['length']+'):\x20'+_0x28a483[_0x5b24ed(0xc0)](0x0,0x6)[_0x5b24ed(0x10d)](',\x20'));if(_0xb2ba17[_0x5b24ed(0xc3)]===0x0)_0xb2ba17[_0x5b24ed(0x104)](_0x5b24ed(0x121));return _0xb2ba17;}function summarizeGoMod(_0x24e52b){const _0x29c754=_0x2f7f5d,_0x416d82=[],_0x3139d9=_0x24e52b[_0x29c754(0xd1)](/^module\s+(\S+)/m);if(_0x3139d9)_0x416d82['push'](_0x29c754(0x118)+_0x3139d9[0x1]);const _0x1fc3c0=_0x24e52b['match'](/^go\s+(\S+)/m);if(_0x1fc3c0)_0x416d82[_0x29c754(0x104)]('go:\x20'+_0x1fc3c0[0x1]);const _0xd14678=_0x24e52b['match'](/^require\s*\(([\s\S]*?)\)/m);if(_0xd14678){const _0xcaa1f5=_0xd14678[0x1][_0x29c754(0x103)]('\x0a')[_0x29c754(0x127)](_0x443059=>_0x443059[_0x29c754(0x100)]()[_0x29c754(0x103)](/\s+/)[0x0])[_0x29c754(0xc6)](Boolean);_0x416d82[_0x29c754(0x104)]('require\x20('+_0xcaa1f5[_0x29c754(0xc3)]+'):\x20'+_0xcaa1f5[_0x29c754(0xc0)](0x0,0xc)[_0x29c754(0x10d)](',\x20')+(_0xcaa1f5[_0x29c754(0xc3)]>0xc?'…':''));}if(_0x416d82[_0x29c754(0xc3)]===0x0)_0x416d82[_0x29c754(0x104)](_0x29c754(0x114));return _0x416d82;}function summarizeTsconfig(_0x54e4c9){const _0x38e1b4=_0x2f7f5d;let _0x5e477b;try{_0x5e477b=JSON[_0x38e1b4(0xd2)](stripJsonc(_0x54e4c9[_0x38e1b4(0x12b)](/^\uFEFF/,'')));}catch{return['unparseable\x20tsconfig.json'];}const _0x16513f=_0x5e477b[_0x38e1b4(0xfa)]??{},_0x594d2b=[];_0x594d2b[_0x38e1b4(0x104)](_0x38e1b4(0xd3)+String(_0x16513f['target']??_0x38e1b4(0xc4))),_0x594d2b['push'](_0x38e1b4(0x118)+String(_0x16513f[_0x38e1b4(0xcb)]??_0x38e1b4(0xc4)));if(_0x16513f[_0x38e1b4(0x123)]!==undefined)_0x594d2b['push']('strict:\x20'+String(_0x16513f['strict']));if(_0x16513f[_0x38e1b4(0x122)])_0x594d2b['push']('outDir:\x20'+String(_0x16513f[_0x38e1b4(0x122)]));const _0x2f6b8f=Array[_0x38e1b4(0x11f)](_0x5e477b[_0x38e1b4(0x10f)])?_0x5e477b['include'][_0x38e1b4(0x10d)](',\x20'):'';if(_0x2f6b8f)_0x594d2b[_0x38e1b4(0x104)]('include:\x20'+_0x2f6b8f);return _0x594d2b;}function summarizeGeneric(_0x5391d7,_0x3893fe){const _0x1e4118=_0x2f7f5d,_0x2bc415=_0x5391d7[_0x1e4118(0x103)]('\x0a')['slice'](0x0,0xf)['filter'](_0x33bb75=>_0x33bb75['trim']());return _0x2bc415['length']===0x0?[_0x3893fe+':\x20empty\x20file']:[_0x3893fe+':'][_0x1e4118(0xde)](_0x2bc415[_0x1e4118(0x127)](_0x15d428=>'\x20\x20'+_0x15d428[_0x1e4118(0x100)]()[_0x1e4118(0xc0)](0x0,0x64)));}function field(_0xc11392,_0x4f97e1,_0x47b9f7){const _0xc59e2f=_0x2f7f5d,_0x539772=_0x47b9f7?findSection(_0xc11392,_0x47b9f7):_0xc11392;if(!_0x539772)return undefined;const _0x45b8ca=_0x539772[_0xc59e2f(0xd1)](_0x4f97e1);return _0x45b8ca?_0x45b8ca[0x1][_0xc59e2f(0x100)]():undefined;}function _0x46a8(){const _0x37fd0c=['Python\x20(pyproject)','Directory\x20to\x20inspect.\x20Default:\x20project\x20root.','empty\x20requirements.txt','732055ohIrEp','compilerOptions','Python\x20(requirements)','from','):\x20','version:\x20','getOwnPropertyDescriptor','trim','create','writable','split','push','requirements.txt','type','type:\x20','textResult','437310uTDnzC','getOwnPropertyNames','3095tFMYlE','number','join','composer.json','include','1600268jFdnQX','test','node_modules','pom.xml','empty\x20go.mod','\x5cs*=\x5cs*\x5c[([\x5cs\x5cS]*?)\x5c]','startsWith','package','module:\x20','integer','string','PHP','keys','matchAll','isDirectory','isArray','40mnmSII','empty/unknown\x20Cargo.toml','outDir','strict','depth','Detect\x20and\x20summarize\x20the\x20project\x20manifest(s)\x20in\x20a\x20directory:\x20package.json,\x20pyproject.toml,\x20requirements.txt,\x20Cargo.toml,\x20go.mod,\x20pom.xml,\x20build.gradle,\x20Gemfile,\x20composer.json,\x20or\x20tsconfig.json.\x20Returns\x20project\x20name/version\x20plus\x20a\x20compact\x20list\x20of\x20scripts\x20and\x20dependencies\x20so\x20you\x20can\x20plan\x20builds,\x20tests,\x20and\x20install\x20commands.','pyproject.toml','map','name','build-system','24335311kpqGhJ','replace','Gemfile','no\x20name/version/scripts\x20found','statSync','Java/Gradle','3734343ICVHQd','slice','__esModule','TypeScript\x20config','length','unspecified','4jIMPfA','filter','tsconfig.json','description','object','devDependencies','module','Rust','__createBinding','name:\x20','project','call','match','parse','target:\x20','cwd','path','Cargo.toml','scripts:\x20','dependencies\x20(','prototype','readFileSync','No\x20supported\x20manifest\x20found\x20under\x20','max','../types.js','concat','hasOwnProperty','default','Ruby','empty/unknown\x20pyproject.toml','dependencies','isFile','2550XduoOh','description:\x20','existsSync','180SHcrvl','file','requires','__importStar','readdirSync','go.mod','1089753nDLVYP','defineProperty','configurable','version','Java/Maven','Node','package.json','scripts'];_0x46a8=function(){return _0x37fd0c;};return _0x46a8();}function tomlArrayField(_0x5995ff,_0x582fc4,_0xd71897){const _0x234ca5=_0x2f7f5d,_0x479ecf=findSection(_0x5995ff,_0x582fc4);if(!_0x479ecf)return[];const _0x2804ce=_0x479ecf[_0x234ca5(0xd1)](new RegExp('^'+_0xd71897+_0x234ca5(0x115),'m'));if(!_0x2804ce)return[];return Array[_0x234ca5(0xfc)](_0x2804ce[0x1][_0x234ca5(0x11d)](/["']([^"']+)["']/g))[_0x234ca5(0x127)](_0x167e2d=>_0x167e2d[0x1]);}function stripJsonc(_0x44e5e0){const _0xfba725=_0x2f7f5d;let _0x181277='',_0x102802=![],_0x456f67=![];for(let _0x16a7de=0x0;_0x16a7de<_0x44e5e0[_0xfba725(0xc3)];_0x16a7de++){const _0x5dc511=_0x44e5e0[_0x16a7de];if(_0x102802){_0x181277+=_0x5dc511;if(_0x456f67)_0x456f67=![];else{if(_0x5dc511==='\x5c')_0x456f67=!![];else{if(_0x5dc511==='\x22')_0x102802=![];}}continue;}if(_0x5dc511==='\x22'){_0x102802=!![],_0x181277+=_0x5dc511;continue;}if(_0x5dc511==='/'&&_0x44e5e0[_0x16a7de+0x1]==='/'){while(_0x16a7de<_0x44e5e0[_0xfba725(0xc3)]&&_0x44e5e0[_0x16a7de]!=='\x0a')_0x16a7de++;continue;}if(_0x5dc511==='/'&&_0x44e5e0[_0x16a7de+0x1]==='*'){_0x16a7de+=0x2;while(_0x16a7de<_0x44e5e0[_0xfba725(0xc3)]&&!(_0x44e5e0[_0x16a7de]==='*'&&_0x44e5e0[_0x16a7de+0x1]==='/'))_0x16a7de++;_0x16a7de++;continue;}if(_0x5dc511===','){let _0x1ac81a=_0x16a7de+0x1;while(_0x1ac81a<_0x44e5e0[_0xfba725(0xc3)]){if(/\s/[_0xfba725(0x111)](_0x44e5e0[_0x1ac81a])){_0x1ac81a++;continue;}if(_0x44e5e0[_0x1ac81a]==='/'&&_0x44e5e0[_0x1ac81a+0x1]==='/'){while(_0x1ac81a<_0x44e5e0['length']&&_0x44e5e0[_0x1ac81a]!=='\x0a')_0x1ac81a++;continue;}if(_0x44e5e0[_0x1ac81a]==='/'&&_0x44e5e0[_0x1ac81a+0x1]==='*'){_0x1ac81a+=0x2;while(_0x1ac81a<_0x44e5e0[_0xfba725(0xc3)]&&!(_0x44e5e0[_0x1ac81a]==='*'&&_0x44e5e0[_0x1ac81a+0x1]==='/'))_0x1ac81a++;_0x1ac81a++;continue;}break;}if(_0x44e5e0[_0x1ac81a]===']'||_0x44e5e0[_0x1ac81a]==='}')continue;_0x181277+=_0x5dc511;continue;}_0x181277+=_0x5dc511;}return _0x181277;}function _0x1258(_0x1c53b9,_0x4c2a08){_0x1c53b9=_0x1c53b9-0xbc;const _0x46a818=_0x46a8();let _0x1258bd=_0x46a818[_0x1c53b9];return _0x1258bd;}function sectionField(_0x2a924c,_0x1f0c24,_0x44614c){const _0x170b7d=new RegExp('^'+_0x44614c+'\x5cs*=\x5cs*[\x22\x27]?([^\x22\x27\x0a]+)[\x22\x27]?','m');return field(_0x2a924c,_0x170b7d,_0x1f0c24);}function sectionLines(_0x5dcc4e,_0x367c65){const _0x21df23=_0x2f7f5d,_0x1f276c=findSection(_0x5dcc4e,_0x367c65);if(!_0x1f276c)return[];return _0x1f276c['split']('\x0a')[_0x21df23(0x127)](_0x4fd57b=>_0x4fd57b[_0x21df23(0x100)]())[_0x21df23(0xc6)](_0x193330=>_0x193330&&_0x193330!==']'&&!_0x193330['startsWith']('[')&&!_0x193330[_0x21df23(0x116)]('#'))[_0x21df23(0x127)](_0x2ce034=>{const _0x36a7a2=_0x21df23,_0x2d9c82=_0x2ce034[_0x36a7a2(0x103)](/\s*=\s*/,0x1)[0x0][_0x36a7a2(0x100)]();return _0x2d9c82[_0x36a7a2(0x116)]('\x22')||_0x2d9c82[_0x36a7a2(0x116)]('\x27')||_0x2d9c82['includes']('==')?_0x2ce034[_0x36a7a2(0x103)](/\s+/)[0x0]['replace'](/^["']|["']$/g,''):_0x2ce034[_0x36a7a2(0x12b)](/^["']|["']$/g,'');})[_0x21df23(0xc6)](Boolean);}function findSection(_0x40d034,_0x129c19){const _0x5f5783=_0x2f7f5d,_0x25e757=_0x40d034[_0x5f5783(0x103)]('\x0a');let _0x2f7e41=![];const _0x58e5c6=[];for(const _0xe33855 of _0x25e757){const _0x8849e4=_0xe33855['match'](/^\s*\[([^\]]+)\]/);if(_0x8849e4){_0x2f7e41=_0x8849e4[0x1]===_0x129c19;continue;}if(_0x2f7e41){if(/^\s*\[/[_0x5f5783(0x111)](_0xe33855))break;_0x58e5c6['push'](_0xe33855);}}return _0x58e5c6['join']('\x0a')||null;}
1
+ 'use strict';const _0xc2f457=_0x33aa;(function(_0x5ce5a7,_0x56eaae){const _0x19027e=_0x33aa,_0xc2da53=_0x5ce5a7();while(!![]){try{const _0x497eb5=parseInt(_0x19027e(0xdc))/0x1*(-parseInt(_0x19027e(0xb4))/0x2)+-parseInt(_0x19027e(0xc7))/0x3+parseInt(_0x19027e(0x94))/0x4*(parseInt(_0x19027e(0x96))/0x5)+-parseInt(_0x19027e(0x9a))/0x6+parseInt(_0x19027e(0x7c))/0x7+parseInt(_0x19027e(0x7a))/0x8*(parseInt(_0x19027e(0x9b))/0x9)+-parseInt(_0x19027e(0x77))/0xa*(-parseInt(_0x19027e(0xdf))/0xb);if(_0x497eb5===_0x56eaae)break;else _0xc2da53['push'](_0xc2da53['shift']());}catch(_0x10dee7){_0xc2da53['push'](_0xc2da53['shift']());}}}(_0x4588,0xb2369));var __createBinding=this&&this[_0xc2f457(0xa2)]||(Object[_0xc2f457(0x87)]?function(_0x439a8b,_0x137729,_0x2ef301,_0x5561b4){const _0x675f59=_0xc2f457;if(_0x5561b4===undefined)_0x5561b4=_0x2ef301;var _0x5ff82b=Object[_0x675f59(0x8c)](_0x137729,_0x2ef301);(!_0x5ff82b||(_0x675f59(0x7e)in _0x5ff82b?!_0x137729['__esModule']:_0x5ff82b[_0x675f59(0x93)]||_0x5ff82b[_0x675f59(0xcf)]))&&(_0x5ff82b={'enumerable':!![],'get':function(){return _0x137729[_0x2ef301];}}),Object[_0x675f59(0xc0)](_0x439a8b,_0x5561b4,_0x5ff82b);}:function(_0x9065d3,_0x226d3f,_0x1d0312,_0x3d36a6){if(_0x3d36a6===undefined)_0x3d36a6=_0x1d0312;_0x9065d3[_0x3d36a6]=_0x226d3f[_0x1d0312];}),__setModuleDefault=this&&this[_0xc2f457(0xa1)]||(Object['create']?function(_0x35f2f0,_0x3ce82d){const _0xb320f2=_0xc2f457;Object[_0xb320f2(0xc0)](_0x35f2f0,'default',{'enumerable':!![],'value':_0x3ce82d});}:function(_0x4d4224,_0x26abc3){const _0x4335a2=_0xc2f457;_0x4d4224[_0x4335a2(0x9e)]=_0x26abc3;}),__importStar=this&&this['__importStar']||(function(){var _0x1874ef=function(_0x4404d0){const _0x43dc9c=_0x33aa;return _0x1874ef=Object[_0x43dc9c(0x76)]||function(_0x5666bc){const _0x7f1a85=_0x43dc9c;var _0xe1ff13=[];for(var _0x5e4762 in _0x5666bc)if(Object[_0x7f1a85(0xab)][_0x7f1a85(0xda)][_0x7f1a85(0xaa)](_0x5666bc,_0x5e4762))_0xe1ff13[_0xe1ff13[_0x7f1a85(0xbf)]]=_0x5e4762;return _0xe1ff13;},_0x1874ef(_0x4404d0);};return function(_0xa068c2){const _0x3196cb=_0x33aa;if(_0xa068c2&&_0xa068c2['__esModule'])return _0xa068c2;var _0x43ec1e={};if(_0xa068c2!=null){for(var _0x688e11=_0x1874ef(_0xa068c2),_0x459ad6=0x0;_0x459ad6<_0x688e11[_0x3196cb(0xbf)];_0x459ad6++)if(_0x688e11[_0x459ad6]!==_0x3196cb(0x9e))__createBinding(_0x43ec1e,_0xa068c2,_0x688e11[_0x459ad6]);}return __setModuleDefault(_0x43ec1e,_0xa068c2),_0x43ec1e;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createReadManifestTool']=createReadManifestTool;function _0x33aa(_0x22302f,_0x5cc375){_0x22302f=_0x22302f-0x6e;const _0x4588ed=_0x4588();let _0x33aa39=_0x4588ed[_0x22302f];return _0x33aa39;}const fs=__importStar(require('fs')),path=__importStar(require(_0xc2f457(0x6e))),types_js_1=require(_0xc2f457(0x79)),MANIFESTS=[{'file':_0xc2f457(0xb5),'project':_0xc2f457(0x75)},{'file':_0xc2f457(0xa4),'project':_0xc2f457(0xbd)},{'file':_0xc2f457(0x78),'project':'Python\x20(requirements)'},{'file':_0xc2f457(0xb8),'project':'Rust'},{'file':_0xc2f457(0xc1),'project':'Go'},{'file':_0xc2f457(0xcd),'project':_0xc2f457(0xa6)},{'file':'build.gradle','project':_0xc2f457(0x95)},{'file':'Gemfile','project':'Ruby'},{'file':_0xc2f457(0xa8),'project':_0xc2f457(0x92)},{'file':_0xc2f457(0xdd),'project':_0xc2f457(0xb6)}],definition={'timeoutMs':0x7530,'name':_0xc2f457(0x84),'description':'Detect\x20and\x20summarize\x20the\x20project\x20manifest(s)\x20in\x20a\x20directory:\x20package.json,\x20pyproject.toml,\x20requirements.txt,\x20Cargo.toml,\x20go.mod,\x20pom.xml,\x20build.gradle,\x20Gemfile,\x20composer.json,\x20or\x20tsconfig.json.\x20Returns\x20project\x20name/version\x20plus\x20a\x20compact\x20list\x20of\x20scripts\x20and\x20dependencies\x20so\x20you\x20can\x20plan\x20builds,\x20tests,\x20and\x20install\x20commands.','parameters':{'type':_0xc2f457(0x97),'required':[],'properties':{'path':{'type':_0xc2f457(0x8f),'description':_0xc2f457(0xb7)},'depth':{'type':'integer','description':_0xc2f457(0x83)}}}};function createReadManifestTool(){return{'definition':definition,async 'execute'(_0x10c049,_0x3011a9,_0x4520dc,_0x56669d,_0x27182e){const _0x2e4a29=_0x33aa,_0x2fbf9c=_0x27182e,_0x494909=path[_0x2e4a29(0xbb)](_0x2fbf9c[_0x2e4a29(0x7b)],typeof _0x3011a9[_0x2e4a29(0x6e)]===_0x2e4a29(0x8f)?_0x3011a9[_0x2e4a29(0x6e)]:'.'),_0x41c00c=typeof _0x3011a9[_0x2e4a29(0xbc)]===_0x2e4a29(0xb1)?Math[_0x2e4a29(0xa9)](0x0,Math[_0x2e4a29(0xd5)](_0x3011a9['depth'])):0x1,_0x4b9486=[],_0x774770=(_0x328400,_0x29f9be)=>{const _0x4c0075=_0x2e4a29;if(_0x29f9be>_0x41c00c)return;for(const _0x1c4440 of MANIFESTS){const _0x4e8042=path[_0x4c0075(0xca)](_0x328400,_0x1c4440[_0x4c0075(0x9c)]);if(!fs[_0x4c0075(0x74)](_0x4e8042)||!fs['statSync'](_0x4e8042)['isFile']())continue;const _0x5e605d=summarizeManifest(_0x4e8042,_0x1c4440[_0x4c0075(0x9c)],_0x1c4440[_0x4c0075(0x8e)]);if(_0x5e605d['length']>0x0)_0x4b9486[_0x4c0075(0xd6)]({'file':path['relative'](_0x494909,_0x4e8042)||_0x1c4440[_0x4c0075(0x9c)],'summary':_0x5e605d});break;}if(_0x29f9be<_0x41c00c){let _0x22b4d2;try{_0x22b4d2=fs[_0x4c0075(0xd0)](_0x328400,{'withFileTypes':!![]});}catch{return;}for(const _0x53493b of _0x22b4d2){_0x53493b['isDirectory']()&&!_0x53493b[_0x4c0075(0xae)]['startsWith']('.')&&_0x53493b['name']!=='node_modules'&&_0x774770(path['join'](_0x328400,_0x53493b[_0x4c0075(0xae)]),_0x29f9be+0x1);}}};_0x774770(_0x494909,0x0);if(_0x4b9486[_0x2e4a29(0xbf)]===0x0)return(0x0,types_js_1[_0x2e4a29(0xd9)])(_0x2e4a29(0xc9)+_0x494909);const _0x133909=_0x4b9486[_0x2e4a29(0x9d)](_0x41070a=>_0x2e4a29(0x81)+_0x41070a[_0x2e4a29(0x9c)]+'\x0a'+_0x41070a['summary'][_0x2e4a29(0x9d)](_0x3b9a62=>'\x20\x20'+_0x3b9a62)[_0x2e4a29(0xca)]('\x0a'))['join']('\x0a\x0a');return(0x0,types_js_1[_0x2e4a29(0xd9)])(_0x133909);}};}function summarizeManifest(_0x1a04e3,_0x3617f4,_0x5369b3){const _0x19fa67=_0xc2f457,_0x177e60=fs['readFileSync'](_0x1a04e3,_0x19fa67(0x72));switch(_0x3617f4){case _0x19fa67(0xb5):return summarizePackageJson(_0x177e60);case _0x19fa67(0xa4):return summarizePyproject(_0x177e60);case'requirements.txt':return summarizeRequirements(_0x177e60);case _0x19fa67(0xb8):return summarizeCargo(_0x177e60);case _0x19fa67(0xc1):return summarizeGoMod(_0x177e60);case _0x19fa67(0xdd):return summarizeTsconfig(_0x177e60);default:return summarizeGeneric(_0x177e60,_0x5369b3+'\x20('+_0x3617f4+')');}}function summarizePackageJson(_0x58239c){const _0x3b2972=_0xc2f457;let _0x5bb74d;try{_0x5bb74d=JSON['parse'](_0x58239c[_0x3b2972(0x71)](/^\uFEFF/,''));}catch{return summarizeGeneric(_0x58239c,_0x3b2972(0xc4));}const _0x2c1087=[];if(typeof _0x5bb74d[_0x3b2972(0xae)]===_0x3b2972(0x8f))_0x2c1087[_0x3b2972(0xd6)](_0x3b2972(0xba)+_0x5bb74d[_0x3b2972(0xae)]);if(typeof _0x5bb74d[_0x3b2972(0x85)]===_0x3b2972(0x8f))_0x2c1087[_0x3b2972(0xd6)](_0x3b2972(0xd4)+_0x5bb74d[_0x3b2972(0x85)]);if(typeof _0x5bb74d[_0x3b2972(0x80)]===_0x3b2972(0x8f))_0x2c1087[_0x3b2972(0xd6)](_0x3b2972(0x7d)+_0x5bb74d[_0x3b2972(0x80)]);if(typeof _0x5bb74d[_0x3b2972(0xa3)]===_0x3b2972(0x8f))_0x2c1087[_0x3b2972(0xd6)](_0x3b2972(0xd7)+_0x5bb74d[_0x3b2972(0xa3)]);const _0x3cb48c=_0x5bb74d[_0x3b2972(0xd1)];if(_0x3cb48c)_0x2c1087[_0x3b2972(0xd6)](_0x3b2972(0x8a)+Object[_0x3b2972(0xa5)](_0x3cb48c)[_0x3b2972(0xca)](',\x20'));for(const [_0x24b218,_0x121143]of[[_0x3b2972(0xcb),_0x3b2972(0xcb)],[_0x3b2972(0x8d),_0x3b2972(0x8d)]]){const _0x46f7a1=_0x5bb74d[_0x121143];if(_0x46f7a1&&Object['keys'](_0x46f7a1)[_0x3b2972(0xbf)]>0x0){const _0x29ee9c=Object[_0x3b2972(0xa5)](_0x46f7a1);_0x2c1087[_0x3b2972(0xd6)](_0x24b218+'\x20('+_0x29ee9c['length']+'):\x20'+_0x29ee9c[_0x3b2972(0xac)](0x0,0xf)[_0x3b2972(0xca)](',\x20')+(_0x29ee9c[_0x3b2972(0xbf)]>0xf?'…':''));}}if(_0x2c1087['length']===0x0)_0x2c1087[_0x3b2972(0xd6)](_0x3b2972(0x9f));return _0x2c1087;}function summarizePyproject(_0xade66a){const _0x59c032=_0xc2f457,_0x3ce495=[],_0x5f8fde=/^name\s*=\s*["']?([^"'\n]+)["']?/m,_0x2f3984=/^version\s*=\s*["']?([^"'\n]+)["']?/m,_0x25d6ab=field(_0xade66a,_0x5f8fde,_0x59c032(0x8e))??field(_0xade66a,_0x5f8fde),_0x46d718=field(_0xade66a,_0x2f3984,_0x59c032(0x8e))??field(_0xade66a,_0x2f3984);if(_0x25d6ab)_0x3ce495['push'](_0x59c032(0xba)+_0x25d6ab);if(_0x46d718)_0x3ce495[_0x59c032(0xd6)]('version:\x20'+_0x46d718);const _0x5e411e=tomlArrayField(_0xade66a,'project',_0x59c032(0xcb));if(_0x5e411e['length']>0x0)_0x3ce495['push']('dependencies\x20('+_0x5e411e[_0x59c032(0xbf)]+_0x59c032(0xd8)+_0x5e411e[_0x59c032(0xac)](0x0,0xc)['join'](',\x20')+(_0x5e411e[_0x59c032(0xbf)]>0xc?'…':''));const _0x568ec5=tomlArrayField(_0xade66a,_0x59c032(0xd2),_0x59c032(0xdb));if(_0x568ec5[_0x59c032(0xbf)]>0x0)_0x3ce495[_0x59c032(0xd6)]('build\x20requires\x20('+_0x568ec5[_0x59c032(0xbf)]+'):\x20'+_0x568ec5[_0x59c032(0xac)](0x0,0x6)[_0x59c032(0xca)](',\x20'));if(_0x3ce495[_0x59c032(0xbf)]===0x0)_0x3ce495[_0x59c032(0xd6)](_0x59c032(0xbe));return _0x3ce495;}function summarizeRequirements(_0x22f1ee){const _0x5f06cd=_0xc2f457,_0x2111ae=_0x22f1ee[_0x5f06cd(0xb0)]('\x0a')['map'](_0x1f95a0=>_0x1f95a0[_0x5f06cd(0x8b)]())[_0x5f06cd(0xd3)](_0x564189=>_0x564189&&!_0x564189[_0x5f06cd(0x70)]('#')&&!_0x564189['startsWith']('--')&&!_0x564189[_0x5f06cd(0x70)]('-r\x20'));return _0x2111ae[_0x5f06cd(0xbf)]===0x0?[_0x5f06cd(0xaf)]:[_0x2111ae[_0x5f06cd(0xbf)]+_0x5f06cd(0xb9)+_0x2111ae['slice'](0x0,0xf)[_0x5f06cd(0xca)](',\x20')+(_0x2111ae[_0x5f06cd(0xbf)]>0xf?'…':'')];}function summarizeCargo(_0x54aef7){const _0x1d528e=_0xc2f457,_0x479645=[],_0x12e54a=sectionField(_0x54aef7,_0x1d528e(0xc3),_0x1d528e(0xae)),_0x32a69c=sectionField(_0x54aef7,_0x1d528e(0xc3),_0x1d528e(0x85));if(_0x12e54a)_0x479645['push']('name:\x20'+_0x12e54a);if(_0x32a69c)_0x479645[_0x1d528e(0xd6)](_0x1d528e(0xd4)+_0x32a69c);const _0x3ea414=sectionLines(_0x54aef7,_0x1d528e(0xcb));if(_0x3ea414[_0x1d528e(0xbf)]>0x0)_0x479645[_0x1d528e(0xd6)](_0x1d528e(0x89)+_0x3ea414['length']+_0x1d528e(0xd8)+_0x3ea414[_0x1d528e(0xac)](0x0,0xc)['join'](',\x20')+(_0x3ea414[_0x1d528e(0xbf)]>0xc?'…':''));const _0x1717b0=sectionLines(_0x54aef7,'dev-dependencies');if(_0x1717b0['length']>0x0)_0x479645[_0x1d528e(0xd6)](_0x1d528e(0xc5)+_0x1717b0[_0x1d528e(0xbf)]+_0x1d528e(0xd8)+_0x1717b0[_0x1d528e(0xac)](0x0,0x6)[_0x1d528e(0xca)](',\x20'));if(_0x479645[_0x1d528e(0xbf)]===0x0)_0x479645['push']('empty/unknown\x20Cargo.toml');return _0x479645;}function summarizeGoMod(_0x3103d0){const _0x2402a3=_0xc2f457,_0x7d8db7=[],_0x1cfa72=_0x3103d0['match'](/^module\s+(\S+)/m);if(_0x1cfa72)_0x7d8db7[_0x2402a3(0xd6)](_0x2402a3(0xb3)+_0x1cfa72[0x1]);const _0x9fa598=_0x3103d0[_0x2402a3(0xde)](/^go\s+(\S+)/m);if(_0x9fa598)_0x7d8db7['push'](_0x2402a3(0xa0)+_0x9fa598[0x1]);const _0x470905=_0x3103d0['match'](/^require\s*\(([\s\S]*?)\)/m);if(_0x470905){const _0x427f30=_0x470905[0x1]['split']('\x0a')[_0x2402a3(0x9d)](_0x24de43=>_0x24de43[_0x2402a3(0x8b)]()[_0x2402a3(0xb0)](/\s+/)[0x0])[_0x2402a3(0xd3)](Boolean);_0x7d8db7[_0x2402a3(0xd6)](_0x2402a3(0x91)+_0x427f30[_0x2402a3(0xbf)]+_0x2402a3(0xd8)+_0x427f30[_0x2402a3(0xac)](0x0,0xc)['join'](',\x20')+(_0x427f30[_0x2402a3(0xbf)]>0xc?'…':''));}if(_0x7d8db7['length']===0x0)_0x7d8db7[_0x2402a3(0xd6)](_0x2402a3(0xc2));return _0x7d8db7;}function summarizeTsconfig(_0x1a68c9){const _0x54dda8=_0xc2f457;let _0x561c22;try{_0x561c22=JSON['parse'](stripJsonc(_0x1a68c9[_0x54dda8(0x71)](/^\uFEFF/,'')));}catch{return[_0x54dda8(0x90)];}const _0x1e3b29=_0x561c22[_0x54dda8(0x6f)]??{},_0x4f0f42=[];_0x4f0f42[_0x54dda8(0xd6)]('target:\x20'+String(_0x1e3b29['target']??_0x54dda8(0x99))),_0x4f0f42[_0x54dda8(0xd6)](_0x54dda8(0xb3)+String(_0x1e3b29['module']??_0x54dda8(0x99)));if(_0x1e3b29[_0x54dda8(0xad)]!==undefined)_0x4f0f42['push'](_0x54dda8(0xc6)+String(_0x1e3b29[_0x54dda8(0xad)]));if(_0x1e3b29['outDir'])_0x4f0f42[_0x54dda8(0xd6)](_0x54dda8(0xb2)+String(_0x1e3b29[_0x54dda8(0xc8)]));const _0x2d2d5e=Array['isArray'](_0x561c22['include'])?_0x561c22[_0x54dda8(0x86)]['join'](',\x20'):'';if(_0x2d2d5e)_0x4f0f42[_0x54dda8(0xd6)](_0x54dda8(0x98)+_0x2d2d5e);return _0x4f0f42;}function summarizeGeneric(_0x4efa28,_0x431636){const _0x2c7246=_0xc2f457,_0x4d97bd=_0x4efa28['split']('\x0a')[_0x2c7246(0xac)](0x0,0xf)['filter'](_0x2defda=>_0x2defda[_0x2c7246(0x8b)]());return _0x4d97bd[_0x2c7246(0xbf)]===0x0?[_0x431636+_0x2c7246(0xce)]:[_0x431636+':'][_0x2c7246(0x7f)](_0x4d97bd[_0x2c7246(0x9d)](_0x5ba637=>'\x20\x20'+_0x5ba637[_0x2c7246(0x8b)]()[_0x2c7246(0xac)](0x0,0x64)));}function _0x4588(){const _0x678e1d=['build-system','filter','version:\x20','floor','push','description:\x20','):\x20','textResult','hasOwnProperty','requires','165596yaSZBy','tsconfig.json','match','11CEQaTA','path','compilerOptions','startsWith','replace','utf8','matchAll','existsSync','Node','getOwnPropertyNames','3709130WmPbrf','requirements.txt','../types.js','496XaZeoF','cwd','647976TlBaVe','type:\x20','get','concat','type','Manifest:\x20','test','How\x20many\x20levels\x20deep\x20to\x20look\x20for\x20nested\x20manifests.\x20Default\x201.','read_manifest','version','include','create','from','dependencies\x20(','scripts:\x20','trim','getOwnPropertyDescriptor','devDependencies','project','string','unparseable\x20tsconfig.json','require\x20(','PHP','writable','4SNpDxC','Java/Gradle','6536515fukXEO','object','include:\x20','unspecified','2779968XSZJKJ','135909iMihFi','file','map','default','no\x20name/version/scripts\x20found','go:\x20','__setModuleDefault','__createBinding','description','pyproject.toml','keys','Java/Maven','includes','composer.json','max','call','prototype','slice','strict','name','empty\x20requirements.txt','split','number','outDir:\x20','module:\x20','16VgHSCn','package.json','TypeScript\x20config','Directory\x20to\x20inspect.\x20Default:\x20project\x20root.','Cargo.toml','\x20requirement(s):\x20','name:\x20','resolve','depth','Python\x20(pyproject)','empty/unknown\x20pyproject.toml','length','defineProperty','go.mod','empty\x20go.mod','package','package.json\x20(unparseable)','dev-dependencies\x20(','strict:\x20','566967fzIbCR','outDir','No\x20supported\x20manifest\x20found\x20under\x20','join','dependencies','\x5cs*=\x5cs*[\x22\x27]?([^\x22\x27\x0a]+)[\x22\x27]?','pom.xml',':\x20empty\x20file','configurable','readdirSync','scripts'];_0x4588=function(){return _0x678e1d;};return _0x4588();}function field(_0x1a7219,_0x4f0a9b,_0x39f91b){const _0x20e99f=_0xc2f457,_0x5d9977=_0x39f91b?findSection(_0x1a7219,_0x39f91b):_0x1a7219;if(!_0x5d9977)return undefined;const _0x28c187=_0x5d9977[_0x20e99f(0xde)](_0x4f0a9b);return _0x28c187?_0x28c187[0x1]['trim']():undefined;}function tomlArrayField(_0x525061,_0x5349d5,_0x4df415){const _0x3e9f60=_0xc2f457,_0x14a460=findSection(_0x525061,_0x5349d5);if(!_0x14a460)return[];const _0x459ceb=_0x14a460[_0x3e9f60(0xde)](new RegExp('^'+_0x4df415+'\x5cs*=\x5cs*\x5c[([\x5cs\x5cS]*?)\x5c]','m'));if(!_0x459ceb)return[];return Array[_0x3e9f60(0x88)](_0x459ceb[0x1][_0x3e9f60(0x73)](/["']([^"']+)["']/g))[_0x3e9f60(0x9d)](_0x1bda2d=>_0x1bda2d[0x1]);}function stripJsonc(_0x39a4ab){const _0x3f5c16=_0xc2f457;let _0x28c7d0='',_0x26a07d=![],_0x5b099e=![];for(let _0x268cc0=0x0;_0x268cc0<_0x39a4ab[_0x3f5c16(0xbf)];_0x268cc0++){const _0x5202e0=_0x39a4ab[_0x268cc0];if(_0x26a07d){_0x28c7d0+=_0x5202e0;if(_0x5b099e)_0x5b099e=![];else{if(_0x5202e0==='\x5c')_0x5b099e=!![];else{if(_0x5202e0==='\x22')_0x26a07d=![];}}continue;}if(_0x5202e0==='\x22'){_0x26a07d=!![],_0x28c7d0+=_0x5202e0;continue;}if(_0x5202e0==='/'&&_0x39a4ab[_0x268cc0+0x1]==='/'){while(_0x268cc0<_0x39a4ab[_0x3f5c16(0xbf)]&&_0x39a4ab[_0x268cc0]!=='\x0a')_0x268cc0++;continue;}if(_0x5202e0==='/'&&_0x39a4ab[_0x268cc0+0x1]==='*'){_0x268cc0+=0x2;while(_0x268cc0<_0x39a4ab[_0x3f5c16(0xbf)]&&!(_0x39a4ab[_0x268cc0]==='*'&&_0x39a4ab[_0x268cc0+0x1]==='/'))_0x268cc0++;_0x268cc0++;continue;}if(_0x5202e0===','){let _0x3dd2d2=_0x268cc0+0x1;while(_0x3dd2d2<_0x39a4ab['length']){if(/\s/[_0x3f5c16(0x82)](_0x39a4ab[_0x3dd2d2])){_0x3dd2d2++;continue;}if(_0x39a4ab[_0x3dd2d2]==='/'&&_0x39a4ab[_0x3dd2d2+0x1]==='/'){while(_0x3dd2d2<_0x39a4ab[_0x3f5c16(0xbf)]&&_0x39a4ab[_0x3dd2d2]!=='\x0a')_0x3dd2d2++;continue;}if(_0x39a4ab[_0x3dd2d2]==='/'&&_0x39a4ab[_0x3dd2d2+0x1]==='*'){_0x3dd2d2+=0x2;while(_0x3dd2d2<_0x39a4ab[_0x3f5c16(0xbf)]&&!(_0x39a4ab[_0x3dd2d2]==='*'&&_0x39a4ab[_0x3dd2d2+0x1]==='/'))_0x3dd2d2++;_0x3dd2d2++;continue;}break;}if(_0x39a4ab[_0x3dd2d2]===']'||_0x39a4ab[_0x3dd2d2]==='}')continue;_0x28c7d0+=_0x5202e0;continue;}_0x28c7d0+=_0x5202e0;}return _0x28c7d0;}function sectionField(_0x16d888,_0xb5f87c,_0x1b76b0){const _0x4ca077=_0xc2f457,_0x222cdd=new RegExp('^'+_0x1b76b0+_0x4ca077(0xcc),'m');return field(_0x16d888,_0x222cdd,_0xb5f87c);}function sectionLines(_0x4c3364,_0x46927b){const _0xbd0371=_0xc2f457,_0x1febda=findSection(_0x4c3364,_0x46927b);if(!_0x1febda)return[];return _0x1febda[_0xbd0371(0xb0)]('\x0a')['map'](_0x21ce28=>_0x21ce28[_0xbd0371(0x8b)]())['filter'](_0x18c332=>_0x18c332&&_0x18c332!==']'&&!_0x18c332[_0xbd0371(0x70)]('[')&&!_0x18c332['startsWith']('#'))[_0xbd0371(0x9d)](_0x149c12=>{const _0x358f90=_0xbd0371,_0x405fb5=_0x149c12[_0x358f90(0xb0)](/\s*=\s*/,0x1)[0x0][_0x358f90(0x8b)]();return _0x405fb5['startsWith']('\x22')||_0x405fb5[_0x358f90(0x70)]('\x27')||_0x405fb5[_0x358f90(0xa7)]('==')?_0x149c12['split'](/\s+/)[0x0][_0x358f90(0x71)](/^["']|["']$/g,''):_0x149c12['replace'](/^["']|["']$/g,'');})[_0xbd0371(0xd3)](Boolean);}function findSection(_0x4fefff,_0x3cd5c0){const _0x542a67=_0xc2f457,_0x99d736=_0x4fefff[_0x542a67(0xb0)]('\x0a');let _0x5b577d=![];const _0x5315a9=[];for(const _0x4a7231 of _0x99d736){const _0x4d9114=_0x4a7231[_0x542a67(0xde)](/^\s*\[([^\]]+)\]/);if(_0x4d9114){_0x5b577d=_0x4d9114[0x1]===_0x3cd5c0;continue;}if(_0x5b577d){if(/^\s*\[/['test'](_0x4a7231))break;_0x5315a9[_0x542a67(0xd6)](_0x4a7231);}}return _0x5315a9[_0x542a67(0xca)]('\x0a')||null;}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x564a9f,_0xf7df61,_0x32e118,_0x2248cb){if(_0x2248cb===undefined)_0x2248cb=_0x32e118;var _0x3ca89e=Object['getOwnPropertyDescriptor'](_0xf7df61,_0x32e118);(!_0x3ca89e||('get'in _0x3ca89e?!_0xf7df61['__esModule']:_0x3ca89e['writable']||_0x3ca89e['configurable']))&&(_0x3ca89e={'enumerable':!![],'get':function(){return _0xf7df61[_0x32e118];}}),Object['defineProperty'](_0x564a9f,_0x2248cb,_0x3ca89e);}:function(_0x5c0b09,_0x13a822,_0x2ababf,_0x626c5){if(_0x626c5===undefined)_0x626c5=_0x2ababf;_0x5c0b09[_0x626c5]=_0x13a822[_0x2ababf];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x3c976b,_0x56ee28){Object['defineProperty'](_0x3c976b,'default',{'enumerable':!![],'value':_0x56ee28});}:function(_0x46cf0a,_0x532351){_0x46cf0a['default']=_0x532351;}),__importStar=this&&this['__importStar']||(function(){var _0x4e13f1=function(_0x185dbd){return _0x4e13f1=Object['getOwnPropertyNames']||function(_0xcb2931){var _0x4844aa=[];for(var _0x465d19 in _0xcb2931)if(Object['prototype']['hasOwnProperty']['call'](_0xcb2931,_0x465d19))_0x4844aa[_0x4844aa['length']]=_0x465d19;return _0x4844aa;},_0x4e13f1(_0x185dbd);};return function(_0x918da3){if(_0x918da3&&_0x918da3['__esModule'])return _0x918da3;var _0x1506a5={};if(_0x918da3!=null){for(var _0x58139c=_0x4e13f1(_0x918da3),_0x378dab=0x0;_0x378dab<_0x58139c['length'];_0x378dab++)if(_0x58139c[_0x378dab]!=='default')__createBinding(_0x1506a5,_0x918da3,_0x58139c[_0x378dab]);}return __setModuleDefault(_0x1506a5,_0x918da3),_0x1506a5;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['defaultMarketplaceSource']=defaultMarketplaceSource,exports['scanMarketplace']=scanMarketplace,exports['searchMarketplace']=searchMarketplace,exports['installMarketplaceEntry']=installMarketplaceEntry,exports['removeMarketplaceEntry']=removeMarketplaceEntry,exports['createMarketplaceTool']=createMarketplaceTool;const fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require('path')),types_js_1=require('../types.js'),skills_js_1=require('../skills/skills.js'),NAME_RE=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;function defaultMarketplaceSource(){return path['join'](os['homedir'](),'.trayambak','marketplace');}function readAgentCard(_0x35cce1,_0x25e7a0){let _0x4ec704;try{_0x4ec704=fs['readFileSync'](_0x35cce1,'utf8');}catch{return null;}const _0x2340f7=_0x4ec704['match'](/^---\s*\n([\s\S]*?)\n---/),_0xd95555={};if(_0x2340f7)for(const _0x50e6ce of _0x2340f7[0x1]['split']('\x0a')){const _0x5f48e0=_0x50e6ce['match'](/^\s*([^:]+):\s*(.*?)\s*$/);if(_0x5f48e0)_0xd95555[_0x5f48e0[0x1]['trim']()['toLowerCase']()]=_0x5f48e0[0x2]['trim']();}return{'name':_0xd95555['name']??_0x25e7a0,'description':_0xd95555['description']??''};}function scanMarketplace(_0x420759){const _0xb7a560=[],_0xc06a09=path['join'](_0x420759,'skills');if(fs['existsSync'](_0xc06a09))for(const _0x1593d0 of(0x0,skills_js_1['loadSkillsFromDir'])(_0xc06a09)){_0xb7a560['push']({'kind':'skill','name':_0x1593d0['name'],'description':_0x1593d0['description']});}const _0x1bd219=path['join'](_0x420759,'agents');let _0x2357fe=[];try{_0x2357fe=fs['readdirSync'](_0x1bd219);}catch{_0x2357fe=[];}for(const _0x603857 of _0x2357fe){if(!_0x603857['endsWith']('.md'))continue;const _0x45843d=readAgentCard(path['join'](_0x1bd219,_0x603857),path['basename'](_0x603857,'.md'));if(_0x45843d&&NAME_RE['test'](_0x45843d['name']))_0xb7a560['push']({'kind':'agent','name':_0x45843d['name'],'description':_0x45843d['description']});}return _0xb7a560['sort']((_0x4674b7,_0x3beade)=>_0x4674b7['name']['localeCompare'](_0x3beade['name']));}function searchMarketplace(_0x52dd72,_0x7d5cb6){const _0x169c5f=_0x7d5cb6['trim']()['toLowerCase']();if(!_0x169c5f)return[];return scanMarketplace(_0x52dd72)['filter'](_0x390b07=>_0x390b07['name']['toLowerCase']()['includes'](_0x169c5f)||_0x390b07['description']['toLowerCase']()['includes'](_0x169c5f));}function copyDirFiltered(_0x25c0ad,_0x475e54){fs['mkdirSync'](_0x475e54,{'recursive':!![]});for(const _0x27d825 of fs['readdirSync'](_0x25c0ad,{'withFileTypes':!![]})){if(_0x27d825['isSymbolicLink']())continue;const _0x32e6fb=path['join'](_0x25c0ad,_0x27d825['name']),_0x4aa743=path['join'](_0x475e54,_0x27d825['name']);if(_0x27d825['isDirectory']())copyDirFiltered(_0x32e6fb,_0x4aa743);else fs['copyFileSync'](_0x32e6fb,_0x4aa743);}}function installMarketplaceEntry(_0x1f1c7c,_0x33143f,_0x1f2f83,_0x479875){if(!NAME_RE['test'](_0x1f2f83))return{'ok':![],'error':'Invalid\x20name\x20\x27'+_0x1f2f83+'\x27\x20(use\x20letters,\x20digits,\x20-,\x20_).'};const _0x4dc7e8=path['join'](_0x479875,'.trayambak');if(_0x33143f==='skill'){const _0x516a96=path['join'](_0x1f1c7c,'skills',_0x1f2f83);if(!fs['existsSync'](path['join'](_0x516a96,'SKILL.md')))return{'ok':![],'error':'Skill\x20\x27'+_0x1f2f83+'\x27\x20is\x20not\x20on\x20the\x20shelf.'};const _0x315492=path['join'](_0x4dc7e8,'skills',_0x1f2f83);if(fs['existsSync'](_0x315492))return{'ok':![],'error':'Skill\x20\x27'+_0x1f2f83+'\x27\x20is\x20already\x20installed\x20(remove\x20it\x20first).'};return copyDirFiltered(_0x516a96,_0x315492),{'ok':!![],'message':'Installed\x20skill\x20\x27'+_0x1f2f83+'\x27\x20→\x20'+_0x315492};}const _0x4886f1=path['join'](_0x1f1c7c,'agents',_0x1f2f83+'.md');if(!fs['existsSync'](_0x4886f1))return{'ok':![],'error':'Agent\x20\x27'+_0x1f2f83+'\x27\x20is\x20not\x20on\x20the\x20shelf.'};const _0x2f5f7b=path['join'](_0x4dc7e8,'agents',_0x1f2f83+'.md');if(fs['existsSync'](_0x2f5f7b))return{'ok':![],'error':'Agent\x20\x27'+_0x1f2f83+'\x27\x20is\x20already\x20installed\x20(remove\x20it\x20first).'};return fs['mkdirSync'](path['dirname'](_0x2f5f7b),{'recursive':!![]}),fs['copyFileSync'](_0x4886f1,_0x2f5f7b),{'ok':!![],'message':'Installed\x20agent\x20\x27'+_0x1f2f83+'\x27\x20→\x20'+_0x2f5f7b};}function removeMarketplaceEntry(_0x4a7658,_0x41afd6,_0x1de242){if(!NAME_RE['test'](_0x41afd6))return{'ok':![],'error':'Invalid\x20name\x20\x27'+_0x41afd6+'\x27\x20(use\x20letters,\x20digits,\x20-,\x20_).'};const _0x2012ac=_0x4a7658==='skill'?path['join'](_0x1de242,'.trayambak','skills',_0x41afd6):path['join'](_0x1de242,'.trayambak','agents',_0x41afd6+'.md');if(!fs['existsSync'](_0x2012ac))return{'ok':![],'error':'\x27'+_0x41afd6+'\x27\x20is\x20not\x20installed.'};return fs['rmSync'](_0x2012ac,{'recursive':!![],'force':!![]}),{'ok':!![],'message':'Removed\x20'+_0x4a7658+'\x20\x27'+_0x41afd6+'\x27'};}function formatEntries(_0x3e23c8){if(_0x3e23c8['length']===0x0)return'Marketplace\x20shelf\x20is\x20empty.';return _0x3e23c8['map'](_0x478c1e=>'-\x20['+_0x478c1e['kind']+']\x20'+_0x478c1e['name']+(_0x478c1e['description']?':\x20'+_0x478c1e['description']:''))['join']('\x0a');}const definition={'timeoutMs':0x7530,'name':'marketplace','description':'Browse\x20and\x20install\x20shareable\x20agent\x20assets\x20(skills,\x20specialist\x20profiles)\x20from\x20a\x20marketplace\x20shelf\x20directory\x20into\x20this\x20project.\x20Actions:\x20list,\x20search,\x20install,\x20remove.\x20Installed\x20assets\x20load\x20through\x20the\x20normal\x20skills/agents\x20pipeline.','parameters':{'type':'object','required':['action'],'properties':{'action':{'type':'string','description':'One\x20of:\x20list,\x20search,\x20install,\x20remove.'},'query':{'type':'string','description':'Search\x20text\x20for\x20the\x20search\x20action.'},'kind':{'type':'string','description':'Asset\x20kind\x20for\x20install/remove:\x20skill\x20or\x20agent.'},'name':{'type':'string','description':'Asset\x20name\x20for\x20install/remove.'},'source':{'type':'string','description':'Marketplace\x20shelf\x20directory.\x20Defaults\x20to\x20~/.trayambak/marketplace.'}}}};function createMarketplaceTool(_0x1ffda1){return{'definition':definition,async 'execute'(_0xada771,_0x402e92,_0x3c1e1e,_0x1e72cb,_0x1a3558){const _0x52cf41=String(_0x402e92['action']??'')['trim']()['toLowerCase'](),_0x2fefb2=typeof _0x402e92['source']==='string'&&_0x402e92['source']?_0x402e92['source']:_0x1ffda1??defaultMarketplaceSource(),_0xcd98b7=_0x1a3558?.['cwd']??process['cwd']();switch(_0x52cf41){case'list':return(0x0,types_js_1['textResult'])(formatEntries(scanMarketplace(_0x2fefb2)));case'search':{const _0x11da94=String(_0x402e92['query']??'');if(!_0x11da94['trim']())return(0x0,types_js_1['textResult'])('Missing\x20\x27query\x27\x20for\x20search.',!![]);const _0x39eaa8=searchMarketplace(_0x2fefb2,_0x11da94);return(0x0,types_js_1['textResult'])(_0x39eaa8['length']>0x0?formatEntries(_0x39eaa8):'No\x20marketplace\x20entries\x20match\x20\x27'+_0x11da94+'\x27.');}case'install':{const _0x39ce07=String(_0x402e92['kind']??'')['trim']()['toLowerCase']();if(_0x39ce07!=='skill'&&_0x39ce07!=='agent')return(0x0,types_js_1['textResult'])('Missing\x20\x27kind\x27\x20for\x20install:\x20skill\x20or\x20agent.',!![]);const _0x20f43c=String(_0x402e92['name']??'');if(!_0x20f43c)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20for\x20install.',!![]);const _0x2664df=installMarketplaceEntry(_0x2fefb2,_0x39ce07,_0x20f43c,_0xcd98b7);return _0x2664df['ok']?(0x0,types_js_1['textResult'])(_0x2664df['message']):(0x0,types_js_1['textResult'])(_0x2664df['error'],!![]);}case'remove':{const _0x15af4b=String(_0x402e92['kind']??'')['trim']()['toLowerCase']();if(_0x15af4b!=='skill'&&_0x15af4b!=='agent')return(0x0,types_js_1['textResult'])('Missing\x20\x27kind\x27\x20for\x20remove:\x20skill\x20or\x20agent.',!![]);const _0x2df519=String(_0x402e92['name']??'');if(!_0x2df519)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20for\x20remove.',!![]);const _0x2f17e3=removeMarketplaceEntry(_0x15af4b,_0x2df519,_0xcd98b7);return _0x2f17e3['ok']?(0x0,types_js_1['textResult'])(_0x2f17e3['message']):(0x0,types_js_1['textResult'])(_0x2f17e3['error'],!![]);}default:return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20use\x20list,\x20search,\x20install,\x20or\x20remove.',!![]);}}};}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x472787,_0x385157,_0x494057,_0x528c68){if(_0x528c68===undefined)_0x528c68=_0x494057;var _0x35fb0e=Object['getOwnPropertyDescriptor'](_0x385157,_0x494057);(!_0x35fb0e||('get'in _0x35fb0e?!_0x385157['__esModule']:_0x35fb0e['writable']||_0x35fb0e['configurable']))&&(_0x35fb0e={'enumerable':!![],'get':function(){return _0x385157[_0x494057];}}),Object['defineProperty'](_0x472787,_0x528c68,_0x35fb0e);}:function(_0x47a60b,_0x35aff5,_0x1b9f3f,_0x4279b4){if(_0x4279b4===undefined)_0x4279b4=_0x1b9f3f;_0x47a60b[_0x4279b4]=_0x35aff5[_0x1b9f3f];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x58e644,_0xb19497){Object['defineProperty'](_0x58e644,'default',{'enumerable':!![],'value':_0xb19497});}:function(_0x38218e,_0xc720fa){_0x38218e['default']=_0xc720fa;}),__importStar=this&&this['__importStar']||(function(){var _0x264ec2=function(_0x2c4d33){return _0x264ec2=Object['getOwnPropertyNames']||function(_0x167482){var _0xc1f4f8=[];for(var _0x297d3b in _0x167482)if(Object['prototype']['hasOwnProperty']['call'](_0x167482,_0x297d3b))_0xc1f4f8[_0xc1f4f8['length']]=_0x297d3b;return _0xc1f4f8;},_0x264ec2(_0x2c4d33);};return function(_0x4996f8){if(_0x4996f8&&_0x4996f8['__esModule'])return _0x4996f8;var _0x48c5a0={};if(_0x4996f8!=null){for(var _0x58c176=_0x264ec2(_0x4996f8),_0x39ea13=0x0;_0x39ea13<_0x58c176['length'];_0x39ea13++)if(_0x58c176[_0x39ea13]!=='default')__createBinding(_0x48c5a0,_0x4996f8,_0x58c176[_0x39ea13]);}return __setModuleDefault(_0x48c5a0,_0x4996f8),_0x48c5a0;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['defaultMarketplaceSource']=defaultMarketplaceSource,exports['scanMarketplace']=scanMarketplace,exports['searchMarketplace']=searchMarketplace,exports['installMarketplaceEntry']=installMarketplaceEntry,exports['removeMarketplaceEntry']=removeMarketplaceEntry,exports['createMarketplaceTool']=createMarketplaceTool;const fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require('path')),types_js_1=require('../types.js'),skills_js_1=require('../skills/skills.js'),NAME_RE=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;function defaultMarketplaceSource(){return path['join'](os['homedir'](),'.trayambak','marketplace');}function readAgentCard(_0x259fef,_0x2977db){let _0x1f02da;try{_0x1f02da=fs['readFileSync'](_0x259fef,'utf8');}catch{return null;}const _0x1c9809=_0x1f02da['match'](/^---\s*\n([\s\S]*?)\n---/),_0x554c5d={};if(_0x1c9809)for(const _0x144bd5 of _0x1c9809[0x1]['split']('\x0a')){const _0x3f362c=_0x144bd5['match'](/^\s*([^:]+):\s*(.*?)\s*$/);if(_0x3f362c)_0x554c5d[_0x3f362c[0x1]['trim']()['toLowerCase']()]=_0x3f362c[0x2]['trim']();}return{'name':_0x554c5d['name']??_0x2977db,'description':_0x554c5d['description']??''};}function scanMarketplace(_0x5f1b3c){const _0x14e4fe=[],_0x4fa504=path['join'](_0x5f1b3c,'skills');if(fs['existsSync'](_0x4fa504))for(const _0x293fec of(0x0,skills_js_1['loadSkillsFromDir'])(_0x4fa504)){_0x14e4fe['push']({'kind':'skill','name':_0x293fec['name'],'description':_0x293fec['description']});}const _0x352135=path['join'](_0x5f1b3c,'agents');let _0x59b05d=[];try{_0x59b05d=fs['readdirSync'](_0x352135);}catch{_0x59b05d=[];}for(const _0x496b59 of _0x59b05d){if(!_0x496b59['endsWith']('.md'))continue;const _0x52b9c4=readAgentCard(path['join'](_0x352135,_0x496b59),path['basename'](_0x496b59,'.md'));if(_0x52b9c4&&NAME_RE['test'](_0x52b9c4['name']))_0x14e4fe['push']({'kind':'agent','name':_0x52b9c4['name'],'description':_0x52b9c4['description']});}return _0x14e4fe['sort']((_0x290107,_0xe17a52)=>_0x290107['name']['localeCompare'](_0xe17a52['name']));}function searchMarketplace(_0x97ee18,_0x2a855b){const _0xa3e45=_0x2a855b['trim']()['toLowerCase']();if(!_0xa3e45)return[];return scanMarketplace(_0x97ee18)['filter'](_0x25113d=>_0x25113d['name']['toLowerCase']()['includes'](_0xa3e45)||_0x25113d['description']['toLowerCase']()['includes'](_0xa3e45));}function copyDirFiltered(_0x560ced,_0x21e425){fs['mkdirSync'](_0x21e425,{'recursive':!![]});for(const _0x4b77a2 of fs['readdirSync'](_0x560ced,{'withFileTypes':!![]})){if(_0x4b77a2['isSymbolicLink']())continue;const _0x1feb02=path['join'](_0x560ced,_0x4b77a2['name']),_0x354f73=path['join'](_0x21e425,_0x4b77a2['name']);if(_0x4b77a2['isDirectory']())copyDirFiltered(_0x1feb02,_0x354f73);else fs['copyFileSync'](_0x1feb02,_0x354f73);}}function installMarketplaceEntry(_0x295c05,_0x4f0bec,_0x4e3dc4,_0x4284fb){if(!NAME_RE['test'](_0x4e3dc4))return{'ok':![],'error':'Invalid\x20name\x20\x27'+_0x4e3dc4+'\x27\x20(use\x20letters,\x20digits,\x20-,\x20_).'};const _0x2b98fc=path['join'](_0x4284fb,'.trayambak');if(_0x4f0bec==='skill'){const _0x53eca8=path['join'](_0x295c05,'skills',_0x4e3dc4);if(!fs['existsSync'](path['join'](_0x53eca8,'SKILL.md')))return{'ok':![],'error':'Skill\x20\x27'+_0x4e3dc4+'\x27\x20is\x20not\x20on\x20the\x20shelf.'};const _0x399213=path['join'](_0x2b98fc,'skills',_0x4e3dc4);if(fs['existsSync'](_0x399213))return{'ok':![],'error':'Skill\x20\x27'+_0x4e3dc4+'\x27\x20is\x20already\x20installed\x20(remove\x20it\x20first).'};return copyDirFiltered(_0x53eca8,_0x399213),{'ok':!![],'message':'Installed\x20skill\x20\x27'+_0x4e3dc4+'\x27\x20→\x20'+_0x399213};}const _0x69bc28=path['join'](_0x295c05,'agents',_0x4e3dc4+'.md');if(!fs['existsSync'](_0x69bc28))return{'ok':![],'error':'Agent\x20\x27'+_0x4e3dc4+'\x27\x20is\x20not\x20on\x20the\x20shelf.'};const _0x1f5c69=path['join'](_0x2b98fc,'agents',_0x4e3dc4+'.md');if(fs['existsSync'](_0x1f5c69))return{'ok':![],'error':'Agent\x20\x27'+_0x4e3dc4+'\x27\x20is\x20already\x20installed\x20(remove\x20it\x20first).'};return fs['mkdirSync'](path['dirname'](_0x1f5c69),{'recursive':!![]}),fs['copyFileSync'](_0x69bc28,_0x1f5c69),{'ok':!![],'message':'Installed\x20agent\x20\x27'+_0x4e3dc4+'\x27\x20→\x20'+_0x1f5c69};}function removeMarketplaceEntry(_0x3b3c12,_0x261577,_0x5a0f6a){if(!NAME_RE['test'](_0x261577))return{'ok':![],'error':'Invalid\x20name\x20\x27'+_0x261577+'\x27\x20(use\x20letters,\x20digits,\x20-,\x20_).'};const _0x5e7a43=_0x3b3c12==='skill'?path['join'](_0x5a0f6a,'.trayambak','skills',_0x261577):path['join'](_0x5a0f6a,'.trayambak','agents',_0x261577+'.md');if(!fs['existsSync'](_0x5e7a43))return{'ok':![],'error':'\x27'+_0x261577+'\x27\x20is\x20not\x20installed.'};return fs['rmSync'](_0x5e7a43,{'recursive':!![],'force':!![]}),{'ok':!![],'message':'Removed\x20'+_0x3b3c12+'\x20\x27'+_0x261577+'\x27'};}function formatEntries(_0x12f44a){if(_0x12f44a['length']===0x0)return'Marketplace\x20shelf\x20is\x20empty.';return _0x12f44a['map'](_0x5b6f25=>'-\x20['+_0x5b6f25['kind']+']\x20'+_0x5b6f25['name']+(_0x5b6f25['description']?':\x20'+_0x5b6f25['description']:''))['join']('\x0a');}const definition={'timeoutMs':0x7530,'name':'marketplace','description':'Browse\x20and\x20install\x20shareable\x20agent\x20assets\x20(skills,\x20specialist\x20profiles)\x20from\x20a\x20marketplace\x20shelf\x20directory\x20into\x20this\x20project.\x20Actions:\x20list,\x20search,\x20install,\x20remove.\x20Installed\x20assets\x20load\x20through\x20the\x20normal\x20skills/agents\x20pipeline.','parameters':{'type':'object','required':['action'],'properties':{'action':{'type':'string','description':'One\x20of:\x20list,\x20search,\x20install,\x20remove.'},'query':{'type':'string','description':'Search\x20text\x20for\x20the\x20search\x20action.'},'kind':{'type':'string','description':'Asset\x20kind\x20for\x20install/remove:\x20skill\x20or\x20agent.'},'name':{'type':'string','description':'Asset\x20name\x20for\x20install/remove.'},'source':{'type':'string','description':'Marketplace\x20shelf\x20directory.\x20Defaults\x20to\x20~/.trayambak/marketplace.'}}}};function createMarketplaceTool(_0xd1b3b){return{'definition':definition,async 'execute'(_0xbfcf2d,_0x30900d,_0xca253c,_0x2f762e,_0x33cb7c){const _0x5baac4=String(_0x30900d['action']??'')['trim']()['toLowerCase'](),_0xa5b0c=typeof _0x30900d['source']==='string'&&_0x30900d['source']?_0x30900d['source']:_0xd1b3b??defaultMarketplaceSource(),_0xca65f7=_0x33cb7c?.['cwd']??process['cwd']();switch(_0x5baac4){case'list':return(0x0,types_js_1['textResult'])(formatEntries(scanMarketplace(_0xa5b0c)));case'search':{const _0x331819=String(_0x30900d['query']??'');if(!_0x331819['trim']())return(0x0,types_js_1['textResult'])('Missing\x20\x27query\x27\x20for\x20search.',!![]);const _0x343ff5=searchMarketplace(_0xa5b0c,_0x331819);return(0x0,types_js_1['textResult'])(_0x343ff5['length']>0x0?formatEntries(_0x343ff5):'No\x20marketplace\x20entries\x20match\x20\x27'+_0x331819+'\x27.');}case'install':{const _0xdad155=String(_0x30900d['kind']??'')['trim']()['toLowerCase']();if(_0xdad155!=='skill'&&_0xdad155!=='agent')return(0x0,types_js_1['textResult'])('Missing\x20\x27kind\x27\x20for\x20install:\x20skill\x20or\x20agent.',!![]);const _0x149ebd=String(_0x30900d['name']??'');if(!_0x149ebd)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20for\x20install.',!![]);const _0x128529=installMarketplaceEntry(_0xa5b0c,_0xdad155,_0x149ebd,_0xca65f7);return _0x128529['ok']?(0x0,types_js_1['textResult'])(_0x128529['message']):(0x0,types_js_1['textResult'])(_0x128529['error'],!![]);}case'remove':{const _0x15ab70=String(_0x30900d['kind']??'')['trim']()['toLowerCase']();if(_0x15ab70!=='skill'&&_0x15ab70!=='agent')return(0x0,types_js_1['textResult'])('Missing\x20\x27kind\x27\x20for\x20remove:\x20skill\x20or\x20agent.',!![]);const _0x527fca=String(_0x30900d['name']??'');if(!_0x527fca)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20for\x20remove.',!![]);const _0x1ddd83=removeMarketplaceEntry(_0x15ab70,_0x527fca,_0xca65f7);return _0x1ddd83['ok']?(0x0,types_js_1['textResult'])(_0x1ddd83['message']):(0x0,types_js_1['textResult'])(_0x1ddd83['error'],!![]);}default:return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20use\x20list,\x20search,\x20install,\x20or\x20remove.',!![]);}}};}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x588a9c,_0x3132d0,_0x38fa08,_0x306f54){if(_0x306f54===undefined)_0x306f54=_0x38fa08;var _0xd00c6b=Object['getOwnPropertyDescriptor'](_0x3132d0,_0x38fa08);(!_0xd00c6b||('get'in _0xd00c6b?!_0x3132d0['__esModule']:_0xd00c6b['writable']||_0xd00c6b['configurable']))&&(_0xd00c6b={'enumerable':!![],'get':function(){return _0x3132d0[_0x38fa08];}}),Object['defineProperty'](_0x588a9c,_0x306f54,_0xd00c6b);}:function(_0x53efd1,_0x8e632a,_0xc02105,_0x5ce65c){if(_0x5ce65c===undefined)_0x5ce65c=_0xc02105;_0x53efd1[_0x5ce65c]=_0x8e632a[_0xc02105];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x540912,_0x4e86e8){Object['defineProperty'](_0x540912,'default',{'enumerable':!![],'value':_0x4e86e8});}:function(_0x2d322,_0xfa241){_0x2d322['default']=_0xfa241;}),__importStar=this&&this['__importStar']||(function(){var _0x28aa14=function(_0x18519a){return _0x28aa14=Object['getOwnPropertyNames']||function(_0x1f9828){var _0x185428=[];for(var _0x3c0205 in _0x1f9828)if(Object['prototype']['hasOwnProperty']['call'](_0x1f9828,_0x3c0205))_0x185428[_0x185428['length']]=_0x3c0205;return _0x185428;},_0x28aa14(_0x18519a);};return function(_0x43d695){if(_0x43d695&&_0x43d695['__esModule'])return _0x43d695;var _0x30f2c9={};if(_0x43d695!=null){for(var _0xcc5890=_0x28aa14(_0x43d695),_0x2b03c3=0x0;_0x2b03c3<_0xcc5890['length'];_0x2b03c3++)if(_0xcc5890[_0x2b03c3]!=='default')__createBinding(_0x30f2c9,_0x43d695,_0xcc5890[_0x2b03c3]);}return __setModuleDefault(_0x30f2c9,_0x43d695),_0x30f2c9;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['resolveNpmCliJs']=exports['resolveExecutable']=exports['canSpawnDirectly']=void 0x0,exports['listAvailableMcpServers']=listAvailableMcpServers,exports['searchMcpServers']=searchMcpServers,exports['installMcpServer']=installMcpServer,exports['resolveInstalledEntry']=resolveInstalledEntry,exports['createMcpInstallTool']=createMcpInstallTool,exports['execAsync']=execAsync;const child_process_1=require('child_process'),fs=__importStar(require('fs')),path=__importStar(require('path')),types_js_1=require('../types.js'),registry_js_1=require('./registry.js'),config_js_1=require('../../../src/config.js'),spawn_resolve_js_1=require('../../../../../packages/mcp/src/spawn-resolve.js');var spawn_resolve_js_2=require('../../../../../packages/mcp/src/spawn-resolve.js');Object['defineProperty'](exports,'canSpawnDirectly',{'enumerable':!![],'get':function(){return spawn_resolve_js_2['canSpawnDirectly'];}}),Object['defineProperty'](exports,'resolveExecutable',{'enumerable':!![],'get':function(){return spawn_resolve_js_2['resolveExecutable'];}}),Object['defineProperty'](exports,'resolveNpmCliJs',{'enumerable':!![],'get':function(){return spawn_resolve_js_2['resolveNpmCliJs'];}});function installDirFor(_0x4ce374,_0x158a88){return path['join'](_0x158a88??process['cwd'](),'.trayambak','mcp-installs',_0x4ce374);}function listAvailableMcpServers(){return(0x0,registry_js_1['getConnectorRegistry'])()['load']();}function searchMcpServers(_0x171f65){return(0x0,registry_js_1['getConnectorRegistry'])()['search'](_0x171f65);}async function installMcpServer(_0x2d33ca,_0x8a93cf,_0x179131){const _0x240fee=(0x0,registry_js_1['getConnectorRegistry'])(),_0x466b77=_0x240fee['get'](_0x2d33ca);if(!_0x466b77)return{'server':_0x2d33ca,'status':'failed','message':'MCP\x20server\x20\x27'+_0x2d33ca+'\x27\x20not\x20found\x20in\x20registry.\x20Use\x20/mcp\x20search\x20to\x20find\x20available\x20servers.'};const _0x52c4c9=_0x466b77['spec'],_0x146281=Array['isArray'](_0x52c4c9['command'])?_0x52c4c9['command']:[],_0x285147=_0x146281[0x0],_0x35a3da=_0x146281['slice'](0x1),_0x48393c=(_0x245209,_0x24c471)=>{if(_0x245209['status']!=='installed'||!_0x179131)return _0x245209;try{const _0x1bd0ce={..._0x179131['mcpServers']??{}};return _0x1bd0ce[_0x2d33ca]=_0x24c471??_0x52c4c9,(0x0,config_js_1['saveConfig'])({'mcpServers':_0x1bd0ce}),{..._0x245209,'message':_0x245209['message']+'\x0aMCP\x20server\x20\x27'+_0x2d33ca+'\x27\x20saved\x20to\x20trayambak\x20config.'};}catch{return _0x245209;}};if(_0x466b77['npmPackage']&&_0x146281[0x0]==='npx'){const _0x3ffa88=(0x0,spawn_resolve_js_1['resolveNpmCliJs'])(),_0x2d6835=_0x3ffa88?undefined:(0x0,spawn_resolve_js_1['resolveExecutable'])('npm'),_0x2cac64=_0x2d6835&&(0x0,spawn_resolve_js_1['canSpawnDirectly'])(_0x2d6835)?_0x2d6835:undefined;if(!_0x3ffa88&&!_0x2cac64){const _0x3b0992=(0x0,spawn_resolve_js_1['resolveExecutable'])('npm');return{'server':_0x2d33ca,'status':'failed','message':_0x3b0992?'npm\x20was\x20found\x20at\x20'+_0x3b0992+'\x20but\x20cannot\x20be\x20launched\x20without\x20a\x20shell\x20(only\x20a\x20Windows\x20.cmd\x20shim\x20was\x20resolved).\x20Reinstall\x20Node.js\x20(https://nodejs.org)\x20so\x20node_modules/npm\x20is\x20present,\x20then\x20retry.':'npm\x20was\x20not\x20found\x20on\x20PATH.\x20Install\x20Node.js\x20(https://nodejs.org)\x20or\x20run\x20from\x20a\x20terminal\x20where\x20`npm\x20--version`\x20works,\x20then\x20retry.'};}try{const _0x49ddf8=installDirFor(_0x2d33ca,_0x8a93cf);fs['mkdirSync'](_0x49ddf8,{'recursive':!![]});const _0x513ac4=_0x3ffa88?process['execPath']:_0x2cac64,_0xf017df=_0x3ffa88?[_0x3ffa88,'install','--prefix',_0x49ddf8,_0x466b77['npmPackage']]:['install','--prefix',_0x49ddf8,_0x466b77['npmPackage']];await execAsync(_0x513ac4,_0xf017df,_0x8a93cf||_0x49ddf8);const _0x55bf72=resolveInstalledEntry(_0x49ddf8,_0x466b77['npmPackage'])??{'command':_0x146281};return _0x48393c({'server':_0x2d33ca,'status':'installed','message':'Installed\x20'+_0x466b77['npmPackage']+'\x20to\x20'+_0x49ddf8},_0x55bf72);}catch(_0x29ffa3){return{'server':_0x2d33ca,'status':'failed','message':'npm\x20install\x20failed:\x20'+(_0x29ffa3 instanceof Error?_0x29ffa3['message']:String(_0x29ffa3))};}}if(_0x466b77['npmPackage']==='mcp'||_0x285147==='python'||_0x285147==='python3')try{const _0x206686=installDirFor(_0x2d33ca,_0x8a93cf);fs['mkdirSync'](_0x206686,{'recursive':!![]});const _0x466cd8=_0x35a3da['find'](_0x58db32=>typeof _0x58db32==='string'&&_0x58db32['endsWith']('.py'));if(_0x466cd8){const _0x5553fe=path['isAbsolute'](_0x466cd8)?_0x466cd8:path['resolve'](_0x52c4c9['cwd']||_0x8a93cf||'.',_0x466cd8);if(!fs['existsSync'](_0x5553fe))return{'server':_0x2d33ca,'status':'failed','message':'Server\x20script\x20not\x20found:\x20'+_0x5553fe};const _0x255ba2=(0x0,spawn_resolve_js_1['resolveExecutable'])('pip')??(0x0,spawn_resolve_js_1['resolveExecutable'])('pip3')??(0x0,spawn_resolve_js_1['resolveExecutable'])('python')??(0x0,spawn_resolve_js_1['resolveExecutable'])('python3');if(!_0x255ba2)return{'server':_0x2d33ca,'status':'failed','message':'Neither\x20pip\x20nor\x20python\x20was\x20found\x20on\x20PATH.\x20Install\x20Python\x20(https://www.python.org)\x20or\x20run\x20from\x20a\x20terminal\x20where\x20`pip\x20--version`\x20works,\x20then\x20retry.'};return/pip3?$/['test'](path['basename'](_0x255ba2,path['extname'](_0x255ba2)))?await execAsync(_0x255ba2,['install','mcp'],_0x8a93cf||_0x206686):await execAsync(_0x255ba2,['-m','pip','install','mcp'],_0x8a93cf||_0x206686),_0x48393c({'server':_0x2d33ca,'status':'installed','message':'Python\x20MCP\x20server\x20ready\x20at\x20'+_0x5553fe},{'command':[_0x285147,_0x5553fe],'cwd':path['dirname'](_0x5553fe)});}return{'server':_0x2d33ca,'status':'skipped','message':'No\x20Python\x20script\x20path\x20found\x20in\x20server\x20spec.'};}catch(_0x231f86){return{'server':_0x2d33ca,'status':'failed','message':'Python\x20setup\x20failed:\x20'+(_0x231f86 instanceof Error?_0x231f86['message']:String(_0x231f86))};}return{'server':_0x2d33ca,'status':'skipped','message':'Unknown\x20server\x20type\x20for\x20\x27'+_0x2d33ca+'\x27.\x20Configure\x20manually\x20in\x20trayambak\x20config.'};}function resolveInstalledEntry(_0x125975,_0x107cfa){const _0x4b3374=path['join'](_0x125975,'node_modules',_0x107cfa);for(const _0x2ecd90 of['dist/index.js','dist/index.cjs','index.js','lib/index.js']){const _0x2d864b=path['join'](_0x4b3374,_0x2ecd90);try{if(fs['existsSync'](_0x2d864b)&&fs['statSync'](_0x2d864b)['isFile']())return{'command':['node',_0x2d864b]};}catch{}}return undefined;}function createMcpInstallTool(){const _0x9fcb90={'timeoutMs':0x493e0,'name':'mcp__install','description':'Install\x20and\x20manage\x20MCP\x20(Model\x20Context\x20Protocol)\x20servers.\x20Use\x20/mcp\x20search\x20to\x20find\x20servers,\x20/mcp\x20install\x20<id>\x20to\x20install,\x20/mcp\x20list\x20to\x20see\x20available.','parameters':{'type':'object','required':['action'],'properties':{'action':{'type':'string','enum':['search','install','list','info'],'description':'Action:\x20search\x20(find\x20servers),\x20install\x20(install\x20a\x20server),\x20list\x20(all\x20available),\x20info\x20(details\x20for\x20one\x20server).'},'query':{'type':'string','description':'Search\x20query\x20for\x20search\x20action,\x20or\x20server\x20ID\x20for\x20info/install.'}}}};return{'definition':_0x9fcb90,async 'execute'(_0x24d345,_0x57901b,_0x3ad4d0,_0x4a050a,_0x1b305a){const _0x4b811e=_0x57901b['action']??'list',_0x247174=_0x57901b['query']??'';if(_0x4b811e==='list'){const _0xf71250=listAvailableMcpServers(),_0x22a9db=_0xf71250['map'](_0x17b0e9=>'\x20\x20'+_0x17b0e9['id']+':\x20'+_0x17b0e9['description']+'\x20['+_0x17b0e9['category']+']');return(0x0,types_js_1['textResult'])('Available\x20MCP\x20servers\x20('+_0xf71250['length']+'):\x0a'+_0x22a9db['join']('\x0a'));}if(_0x4b811e==='search'){const _0x3dd5db=searchMcpServers(_0x247174||'mcp');if(_0x3dd5db['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20MCP\x20servers\x20found\x20for\x20\x27'+_0x247174+'\x27.');const _0x418f0b=_0x3dd5db['map'](_0x23c5c8=>'\x20\x20'+_0x23c5c8['id']+':\x20'+_0x23c5c8['description']+'\x20['+_0x23c5c8['category']+']');return(0x0,types_js_1['textResult'])('Found\x20'+_0x3dd5db['length']+'\x20MCP\x20servers:\x0a'+_0x418f0b['join']('\x0a'));}if(_0x4b811e==='info'){const _0x296f78=(0x0,registry_js_1['getConnectorRegistry'])()['get'](_0x247174);if(!_0x296f78)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x247174+'\x27\x20not\x20found.\x20Use\x20/mcp\x20search\x20to\x20find\x20servers.',!![]);const _0x3950fb=['ID:\x20'+_0x296f78['id'],'Name:\x20'+_0x296f78['name'],'Description:\x20'+_0x296f78['description'],'Category:\x20'+_0x296f78['category'],'Keywords:\x20'+(_0x296f78['keywords']??[])['join'](',\x20'),'Spec:\x20'+JSON['stringify'](_0x296f78['spec'],null,0x2),_0x296f78['npmPackage']?'NPM\x20Package:\x20'+_0x296f78['npmPackage']:'']['filter'](Boolean);return(0x0,types_js_1['textResult'])(_0x3950fb['join']('\x0a'));}if(_0x4b811e==='install'){const _0x211b45=await installMcpServer(_0x247174,_0x1b305a?.['cwd'],_0x1b305a?.['config']);if(_0x211b45['status']==='failed')return(0x0,types_js_1['textResult'])(_0x211b45['message'],!![]);return(0x0,types_js_1['textResult'])(_0x211b45['message']);}return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20'+_0x4b811e+'.\x20Use\x20search,\x20install,\x20list,\x20or\x20info.',!![]);}};}function execAsync(_0x338e9d,_0x1865d7,_0x26a715,_0x34c6c0=0x2bf20){return new Promise((_0x32adf3,_0x290528)=>{const _0x1ef3ae=(0x0,child_process_1['spawn'])(_0x338e9d,_0x1865d7,{'cwd':_0x26a715,'stdio':['ignore','pipe','pipe'],'shell':![],'windowsHide':!![]});let _0x2073ae='',_0x3b63ef='';const _0x404ee9=setTimeout(()=>{try{_0x1ef3ae['kill']('SIGKILL');}catch{}_0x290528(new Error('Command\x20timed\x20out\x20after\x20'+_0x34c6c0+'ms:\x20'+_0x338e9d+'\x20'+_0x1865d7['join']('\x20')));},_0x34c6c0);if(typeof _0x404ee9['unref']==='function')_0x404ee9['unref']();_0x1ef3ae['stdout']['on']('data',_0x42a49f=>{_0x2073ae+=_0x42a49f['toString']();}),_0x1ef3ae['stderr']['on']('data',_0x2aa4da=>{_0x3b63ef+=_0x2aa4da['toString']();}),_0x1ef3ae['on']('close',_0x2e877b=>{clearTimeout(_0x404ee9);if(_0x2e877b===0x0)_0x32adf3();else _0x290528(new Error('Command\x20failed\x20('+_0x2e877b+'):\x20'+(_0x3b63ef||_0x2073ae)['slice'](-0x7d0)));}),_0x1ef3ae['on']('error',_0x5709e4=>{clearTimeout(_0x404ee9),_0x290528(_0x5709e4);});});}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x19578f,_0x2739b9,_0xaa89a6,_0x362663){if(_0x362663===undefined)_0x362663=_0xaa89a6;var _0x18a8f2=Object['getOwnPropertyDescriptor'](_0x2739b9,_0xaa89a6);(!_0x18a8f2||('get'in _0x18a8f2?!_0x2739b9['__esModule']:_0x18a8f2['writable']||_0x18a8f2['configurable']))&&(_0x18a8f2={'enumerable':!![],'get':function(){return _0x2739b9[_0xaa89a6];}}),Object['defineProperty'](_0x19578f,_0x362663,_0x18a8f2);}:function(_0x49fc16,_0x82a29d,_0x4d51c7,_0x578f77){if(_0x578f77===undefined)_0x578f77=_0x4d51c7;_0x49fc16[_0x578f77]=_0x82a29d[_0x4d51c7];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0xd827fd,_0xfe31cf){Object['defineProperty'](_0xd827fd,'default',{'enumerable':!![],'value':_0xfe31cf});}:function(_0x104e04,_0x249957){_0x104e04['default']=_0x249957;}),__importStar=this&&this['__importStar']||(function(){var _0x5237de=function(_0x262b5f){return _0x5237de=Object['getOwnPropertyNames']||function(_0x267fd2){var _0x2ae5d5=[];for(var _0x5091e2 in _0x267fd2)if(Object['prototype']['hasOwnProperty']['call'](_0x267fd2,_0x5091e2))_0x2ae5d5[_0x2ae5d5['length']]=_0x5091e2;return _0x2ae5d5;},_0x5237de(_0x262b5f);};return function(_0x153dbb){if(_0x153dbb&&_0x153dbb['__esModule'])return _0x153dbb;var _0x485d58={};if(_0x153dbb!=null){for(var _0x4de324=_0x5237de(_0x153dbb),_0x3a14f4=0x0;_0x3a14f4<_0x4de324['length'];_0x3a14f4++)if(_0x4de324[_0x3a14f4]!=='default')__createBinding(_0x485d58,_0x153dbb,_0x4de324[_0x3a14f4]);}return __setModuleDefault(_0x485d58,_0x153dbb),_0x485d58;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['resolveNpmCliJs']=exports['resolveExecutable']=exports['canSpawnDirectly']=void 0x0,exports['listAvailableMcpServers']=listAvailableMcpServers,exports['searchMcpServers']=searchMcpServers,exports['installMcpServer']=installMcpServer,exports['resolveInstalledEntry']=resolveInstalledEntry,exports['createMcpInstallTool']=createMcpInstallTool,exports['execAsync']=execAsync;const child_process_1=require('child_process'),fs=__importStar(require('fs')),path=__importStar(require('path')),types_js_1=require('../types.js'),registry_js_1=require('./registry.js'),config_js_1=require('../../../src/config.js'),spawn_resolve_js_1=require('../../../../../packages/mcp/src/spawn-resolve.js');var spawn_resolve_js_2=require('../../../../../packages/mcp/src/spawn-resolve.js');Object['defineProperty'](exports,'canSpawnDirectly',{'enumerable':!![],'get':function(){return spawn_resolve_js_2['canSpawnDirectly'];}}),Object['defineProperty'](exports,'resolveExecutable',{'enumerable':!![],'get':function(){return spawn_resolve_js_2['resolveExecutable'];}}),Object['defineProperty'](exports,'resolveNpmCliJs',{'enumerable':!![],'get':function(){return spawn_resolve_js_2['resolveNpmCliJs'];}});function installDirFor(_0x11ba98,_0x155c21){return path['join'](_0x155c21??process['cwd'](),'.trayambak','mcp-installs',_0x11ba98);}function listAvailableMcpServers(){return(0x0,registry_js_1['getConnectorRegistry'])()['load']();}function searchMcpServers(_0x4a0bcd){return(0x0,registry_js_1['getConnectorRegistry'])()['search'](_0x4a0bcd);}async function installMcpServer(_0x3fb4e9,_0x6381d6,_0x30f3b8){const _0x4b86d0=(0x0,registry_js_1['getConnectorRegistry'])(),_0xb0d1aa=_0x4b86d0['get'](_0x3fb4e9);if(!_0xb0d1aa)return{'server':_0x3fb4e9,'status':'failed','message':'MCP\x20server\x20\x27'+_0x3fb4e9+'\x27\x20not\x20found\x20in\x20registry.\x20Use\x20/mcp\x20search\x20to\x20find\x20available\x20servers.'};const _0x290bf9=_0xb0d1aa['spec'],_0x29d6fe=Array['isArray'](_0x290bf9['command'])?_0x290bf9['command']:[],_0x175c89=_0x29d6fe[0x0],_0x31bb0e=_0x29d6fe['slice'](0x1),_0x3e75a2=(_0x55ce65,_0x3412fc)=>{if(_0x55ce65['status']!=='installed'||!_0x30f3b8)return _0x55ce65;try{const _0x872be5={..._0x30f3b8['mcpServers']??{}};return _0x872be5[_0x3fb4e9]=_0x3412fc??_0x290bf9,(0x0,config_js_1['saveConfig'])({'mcpServers':_0x872be5}),{..._0x55ce65,'message':_0x55ce65['message']+'\x0aMCP\x20server\x20\x27'+_0x3fb4e9+'\x27\x20saved\x20to\x20trayambak\x20config.'};}catch{return _0x55ce65;}};if(_0xb0d1aa['npmPackage']&&_0x29d6fe[0x0]==='npx'){const _0x2a80fd=(0x0,spawn_resolve_js_1['resolveNpmCliJs'])(),_0x4d9016=_0x2a80fd?undefined:(0x0,spawn_resolve_js_1['resolveExecutable'])('npm'),_0x17ff9b=_0x4d9016&&(0x0,spawn_resolve_js_1['canSpawnDirectly'])(_0x4d9016)?_0x4d9016:undefined;if(!_0x2a80fd&&!_0x17ff9b){const _0x178f9e=(0x0,spawn_resolve_js_1['resolveExecutable'])('npm');return{'server':_0x3fb4e9,'status':'failed','message':_0x178f9e?'npm\x20was\x20found\x20at\x20'+_0x178f9e+'\x20but\x20cannot\x20be\x20launched\x20without\x20a\x20shell\x20(only\x20a\x20Windows\x20.cmd\x20shim\x20was\x20resolved).\x20Reinstall\x20Node.js\x20(https://nodejs.org)\x20so\x20node_modules/npm\x20is\x20present,\x20then\x20retry.':'npm\x20was\x20not\x20found\x20on\x20PATH.\x20Install\x20Node.js\x20(https://nodejs.org)\x20or\x20run\x20from\x20a\x20terminal\x20where\x20`npm\x20--version`\x20works,\x20then\x20retry.'};}try{const _0xc83332=installDirFor(_0x3fb4e9,_0x6381d6);fs['mkdirSync'](_0xc83332,{'recursive':!![]});const _0x51b60c=_0x2a80fd?process['execPath']:_0x17ff9b,_0x3c2eec=_0x2a80fd?[_0x2a80fd,'install','--prefix',_0xc83332,_0xb0d1aa['npmPackage']]:['install','--prefix',_0xc83332,_0xb0d1aa['npmPackage']];await execAsync(_0x51b60c,_0x3c2eec,_0x6381d6||_0xc83332);const _0x4bfc37=resolveInstalledEntry(_0xc83332,_0xb0d1aa['npmPackage'])??{'command':_0x29d6fe};return _0x3e75a2({'server':_0x3fb4e9,'status':'installed','message':'Installed\x20'+_0xb0d1aa['npmPackage']+'\x20to\x20'+_0xc83332},_0x4bfc37);}catch(_0x49f5e0){return{'server':_0x3fb4e9,'status':'failed','message':'npm\x20install\x20failed:\x20'+(_0x49f5e0 instanceof Error?_0x49f5e0['message']:String(_0x49f5e0))};}}if(_0xb0d1aa['npmPackage']==='mcp'||_0x175c89==='python'||_0x175c89==='python3')try{const _0x55e8f7=installDirFor(_0x3fb4e9,_0x6381d6);fs['mkdirSync'](_0x55e8f7,{'recursive':!![]});const _0x2ae851=_0x31bb0e['find'](_0x153e01=>typeof _0x153e01==='string'&&_0x153e01['endsWith']('.py'));if(_0x2ae851){const _0x3a2ab6=path['isAbsolute'](_0x2ae851)?_0x2ae851:path['resolve'](_0x290bf9['cwd']||_0x6381d6||'.',_0x2ae851);if(!fs['existsSync'](_0x3a2ab6))return{'server':_0x3fb4e9,'status':'failed','message':'Server\x20script\x20not\x20found:\x20'+_0x3a2ab6};const _0x52173b=(0x0,spawn_resolve_js_1['resolveExecutable'])('pip')??(0x0,spawn_resolve_js_1['resolveExecutable'])('pip3')??(0x0,spawn_resolve_js_1['resolveExecutable'])('python')??(0x0,spawn_resolve_js_1['resolveExecutable'])('python3');if(!_0x52173b)return{'server':_0x3fb4e9,'status':'failed','message':'Neither\x20pip\x20nor\x20python\x20was\x20found\x20on\x20PATH.\x20Install\x20Python\x20(https://www.python.org)\x20or\x20run\x20from\x20a\x20terminal\x20where\x20`pip\x20--version`\x20works,\x20then\x20retry.'};return/pip3?$/['test'](path['basename'](_0x52173b,path['extname'](_0x52173b)))?await execAsync(_0x52173b,['install','mcp'],_0x6381d6||_0x55e8f7):await execAsync(_0x52173b,['-m','pip','install','mcp'],_0x6381d6||_0x55e8f7),_0x3e75a2({'server':_0x3fb4e9,'status':'installed','message':'Python\x20MCP\x20server\x20ready\x20at\x20'+_0x3a2ab6},{'command':[_0x175c89,_0x3a2ab6],'cwd':path['dirname'](_0x3a2ab6)});}return{'server':_0x3fb4e9,'status':'skipped','message':'No\x20Python\x20script\x20path\x20found\x20in\x20server\x20spec.'};}catch(_0x2fe1ce){return{'server':_0x3fb4e9,'status':'failed','message':'Python\x20setup\x20failed:\x20'+(_0x2fe1ce instanceof Error?_0x2fe1ce['message']:String(_0x2fe1ce))};}return{'server':_0x3fb4e9,'status':'skipped','message':'Unknown\x20server\x20type\x20for\x20\x27'+_0x3fb4e9+'\x27.\x20Configure\x20manually\x20in\x20trayambak\x20config.'};}function resolveInstalledEntry(_0x48d9a9,_0x47e232){const _0x1a2b51=path['join'](_0x48d9a9,'node_modules',_0x47e232);for(const _0x15f35f of['dist/index.js','dist/index.cjs','index.js','lib/index.js']){const _0x488ed1=path['join'](_0x1a2b51,_0x15f35f);try{if(fs['existsSync'](_0x488ed1)&&fs['statSync'](_0x488ed1)['isFile']())return{'command':['node',_0x488ed1]};}catch{}}return undefined;}function createMcpInstallTool(){const _0x15a8a4={'timeoutMs':0x493e0,'name':'mcp__install','description':'Install\x20and\x20manage\x20MCP\x20(Model\x20Context\x20Protocol)\x20servers.\x20Use\x20/mcp\x20search\x20to\x20find\x20servers,\x20/mcp\x20install\x20<id>\x20to\x20install,\x20/mcp\x20list\x20to\x20see\x20available.','parameters':{'type':'object','required':['action'],'properties':{'action':{'type':'string','enum':['search','install','list','info'],'description':'Action:\x20search\x20(find\x20servers),\x20install\x20(install\x20a\x20server),\x20list\x20(all\x20available),\x20info\x20(details\x20for\x20one\x20server).'},'query':{'type':'string','description':'Search\x20query\x20for\x20search\x20action,\x20or\x20server\x20ID\x20for\x20info/install.'}}}};return{'definition':_0x15a8a4,async 'execute'(_0x246069,_0xa4203b,_0x17877a,_0x429488,_0x1e3507){const _0x4d53ad=_0xa4203b['action']??'list',_0x4a2aa7=_0xa4203b['query']??'';if(_0x4d53ad==='list'){const _0x3a7057=listAvailableMcpServers(),_0x4620db=_0x3a7057['map'](_0x311fcc=>'\x20\x20'+_0x311fcc['id']+':\x20'+_0x311fcc['description']+'\x20['+_0x311fcc['category']+']');return(0x0,types_js_1['textResult'])('Available\x20MCP\x20servers\x20('+_0x3a7057['length']+'):\x0a'+_0x4620db['join']('\x0a'));}if(_0x4d53ad==='search'){const _0x247e75=searchMcpServers(_0x4a2aa7||'mcp');if(_0x247e75['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20MCP\x20servers\x20found\x20for\x20\x27'+_0x4a2aa7+'\x27.');const _0x28411b=_0x247e75['map'](_0x5e5538=>'\x20\x20'+_0x5e5538['id']+':\x20'+_0x5e5538['description']+'\x20['+_0x5e5538['category']+']');return(0x0,types_js_1['textResult'])('Found\x20'+_0x247e75['length']+'\x20MCP\x20servers:\x0a'+_0x28411b['join']('\x0a'));}if(_0x4d53ad==='info'){const _0x50996e=(0x0,registry_js_1['getConnectorRegistry'])()['get'](_0x4a2aa7);if(!_0x50996e)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x4a2aa7+'\x27\x20not\x20found.\x20Use\x20/mcp\x20search\x20to\x20find\x20servers.',!![]);const _0x5e3e0a=['ID:\x20'+_0x50996e['id'],'Name:\x20'+_0x50996e['name'],'Description:\x20'+_0x50996e['description'],'Category:\x20'+_0x50996e['category'],'Keywords:\x20'+(_0x50996e['keywords']??[])['join'](',\x20'),'Spec:\x20'+JSON['stringify'](_0x50996e['spec'],null,0x2),_0x50996e['npmPackage']?'NPM\x20Package:\x20'+_0x50996e['npmPackage']:'']['filter'](Boolean);return(0x0,types_js_1['textResult'])(_0x5e3e0a['join']('\x0a'));}if(_0x4d53ad==='install'){const _0x322d14=await installMcpServer(_0x4a2aa7,_0x1e3507?.['cwd'],_0x1e3507?.['config']);if(_0x322d14['status']==='failed')return(0x0,types_js_1['textResult'])(_0x322d14['message'],!![]);return(0x0,types_js_1['textResult'])(_0x322d14['message']);}return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20'+_0x4d53ad+'.\x20Use\x20search,\x20install,\x20list,\x20or\x20info.',!![]);}};}function execAsync(_0x507aba,_0x337e14,_0x5633c4,_0xae5404=0x2bf20){return new Promise((_0x4e46e6,_0x17c12b)=>{const _0x57e773=(0x0,child_process_1['spawn'])(_0x507aba,_0x337e14,{'cwd':_0x5633c4,'stdio':['ignore','pipe','pipe'],'shell':![],'windowsHide':!![]});let _0x1d3e37='',_0x32a263='';const _0x1e4a5b=setTimeout(()=>{try{_0x57e773['kill']('SIGKILL');}catch{}_0x17c12b(new Error('Command\x20timed\x20out\x20after\x20'+_0xae5404+'ms:\x20'+_0x507aba+'\x20'+_0x337e14['join']('\x20')));},_0xae5404);if(typeof _0x1e4a5b['unref']==='function')_0x1e4a5b['unref']();_0x57e773['stdout']['on']('data',_0x49af15=>{_0x1d3e37+=_0x49af15['toString']();}),_0x57e773['stderr']['on']('data',_0x405057=>{_0x32a263+=_0x405057['toString']();}),_0x57e773['on']('close',_0x36b71c=>{clearTimeout(_0x1e4a5b);if(_0x36b71c===0x0)_0x4e46e6();else _0x17c12b(new Error('Command\x20failed\x20('+_0x36b71c+'):\x20'+(_0x32a263||_0x1d3e37)['slice'](-0x7d0)));}),_0x57e773['on']('error',_0x6fc491=>{clearTimeout(_0x1e4a5b),_0x17c12b(_0x6fc491);});});}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x464161,_0x49a62d,_0x54b5f9,_0x3add68){if(_0x3add68===undefined)_0x3add68=_0x54b5f9;var _0x1ee1fc=Object['getOwnPropertyDescriptor'](_0x49a62d,_0x54b5f9);(!_0x1ee1fc||('get'in _0x1ee1fc?!_0x49a62d['__esModule']:_0x1ee1fc['writable']||_0x1ee1fc['configurable']))&&(_0x1ee1fc={'enumerable':!![],'get':function(){return _0x49a62d[_0x54b5f9];}}),Object['defineProperty'](_0x464161,_0x3add68,_0x1ee1fc);}:function(_0xd41cd9,_0x221634,_0x19a526,_0x475b5a){if(_0x475b5a===undefined)_0x475b5a=_0x19a526;_0xd41cd9[_0x475b5a]=_0x221634[_0x19a526];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x2cd330,_0x58473a){Object['defineProperty'](_0x2cd330,'default',{'enumerable':!![],'value':_0x58473a});}:function(_0x2fd8a4,_0x43ae81){_0x2fd8a4['default']=_0x43ae81;}),__importStar=this&&this['__importStar']||(function(){var _0x5b5577=function(_0x3081f4){return _0x5b5577=Object['getOwnPropertyNames']||function(_0x44da1d){var _0x6302b6=[];for(var _0xd3428a in _0x44da1d)if(Object['prototype']['hasOwnProperty']['call'](_0x44da1d,_0xd3428a))_0x6302b6[_0x6302b6['length']]=_0xd3428a;return _0x6302b6;},_0x5b5577(_0x3081f4);};return function(_0x2283bf){if(_0x2283bf&&_0x2283bf['__esModule'])return _0x2283bf;var _0x2d80dc={};if(_0x2283bf!=null){for(var _0x8dbf33=_0x5b5577(_0x2283bf),_0x5dc398=0x0;_0x5dc398<_0x8dbf33['length'];_0x5dc398++)if(_0x8dbf33[_0x5dc398]!=='default')__createBinding(_0x2d80dc,_0x2283bf,_0x8dbf33[_0x5dc398]);}return __setModuleDefault(_0x2d80dc,_0x2283bf),_0x2d80dc;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['McpProcess']=void 0x0,exports['getMcpProcess']=getMcpProcess,exports['createMcpRunnerTool']=createMcpRunnerTool;const child_process_1=require('child_process'),readline=__importStar(require('readline')),registry_js_1=require('./registry.js'),spawn_resolve_js_1=require('../../../../../packages/mcp/src/spawn-resolve.js'),types_js_1=require('../types.js'),env_filter_js_1=require('../../../../../packages/core/src/env_filter.js');class McpProcess{['name'];['spec'];['child']=null;['rl']=null;['pending']=new Map();['nextId']=0x1;['initialized']=![];['stderrLines']=[];['lastError']='';constructor(_0x27f57a,_0x4e6faf){this['name']=_0x27f57a,this['spec']=_0x4e6faf;}get['timeoutMs'](){return this['spec']['timeoutMs']??0xea60;}async['connect'](){if(this['initialized'])return;const _0x24c9b0={'protocolVersion':'2024-11-05','capabilities':{},'clientInfo':{'name':'trayambak','version':'0.3.0'}};this['spawnStdio'](),await this['request']('initialize',_0x24c9b0);if(this['child'])try{this['child']['stdin']['write'](JSON['stringify']({'jsonrpc':'2.0','method':'notifications/initialized','params':{}})+'\x0a');}catch{}this['initialized']=!![];}async['listTools'](){await this['connect']();const _0x3b3e42=await this['request']('tools/list',{});return _0x3b3e42?.['tools']??[];}async['listResources'](){await this['connect']();try{const _0x528da4=await this['request']('resources/list',{});return _0x528da4?.['resources']??[];}catch{return[];}}async['listPrompts'](){await this['connect']();try{const _0x25d8d2=await this['request']('prompts/list',{});return _0x25d8d2?.['prompts']??[];}catch{return[];}}async['status'](){const _0x584c8d=this['child']!==null&&this['child']['exitCode']===null&&!this['child']['killed'];let _0x5b1260='disconnected';if(_0x584c8d)_0x5b1260='stdio';return{'name':this['name'],'connected':_0x584c8d,'transport':_0x5b1260,'initialized':this['initialized']&&_0x584c8d};}async['getPrompt'](_0x224376,_0x27f97e){await this['connect']();try{const _0x1e66df=await this['request']('prompts/get',{'name':_0x224376,'arguments':_0x27f97e??{}}),_0x3458a2=_0x1e66df?.['messages']??_0x1e66df?.['prompt']?.['messages'];if(!_0x3458a2)return null;return{'name':_0x224376,'messages':_0x3458a2};}catch{return null;}}async['readResource'](_0x97bac2){await this['connect']();try{const _0x2768d9=await this['request']('resources/read',{'uri':_0x97bac2});if(_0x2768d9?.['contents'])return _0x2768d9['contents']['map'](_0x27c807=>typeof _0x27c807['text']==='string'?_0x27c807['text']:typeof _0x27c807['blob']==='string'?'[binary\x20'+(_0x27c807['mimeType']??'blob')+']':JSON['stringify'](_0x27c807))['join']('\x0a');return'';}catch{return'';}}async['callTool'](_0x5accf3,_0x37f629){return await this['connect'](),this['request']('tools/call',{'name':_0x5accf3,'arguments':_0x37f629});}['close'](){const _0x57ad41=this['child'];this['child']=null,this['rl']?.['close'](),this['rl']=null,this['initialized']=![],this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20connection\x20closed'));if(_0x57ad41&&_0x57ad41['exitCode']===null&&!_0x57ad41['killed']){_0x57ad41['kill']('SIGTERM');const _0x33da7f=setTimeout(()=>{try{if(_0x57ad41['exitCode']===null)_0x57ad41['kill']('SIGKILL');}catch{}},0x7d0);if(typeof _0x33da7f['unref']==='function')_0x33da7f['unref']();}}['getStderrLines'](){return this['stderrLines'];}['spawnStdio'](){const _0x27dfc7=this['spec'],_0x57a226=_0x27dfc7['command']??[];if(_0x57a226['length']===0x0)throw new Error('MCP\x20server\x20\x27'+this['name']+'\x27\x20has\x20no\x20command');const {command:_0x32f842,args:_0x46574d}=(0x0,spawn_resolve_js_1['resolveMcpCommand'])(_0x57a226);this['child']=(0x0,child_process_1['spawn'])(_0x32f842,_0x46574d,{'cwd':_0x27dfc7['cwd']??process['cwd'](),'env':{...(0x0,env_filter_js_1['getSafeEnv'])(process.env),..._0x27dfc7['env']??{}},'stdio':['pipe','pipe','pipe'],'shell':![],'windowsHide':!![]}),this['rl']=readline['createInterface']({'input':this['child']['stdout']}),this['rl']['on']('line',_0x385789=>{try{const _0x2f861e=JSON['parse'](_0x385789);if(_0x2f861e['id']===undefined)return;const _0x5ab90e=this['pending']['get'](_0x2f861e['id']);if(!_0x5ab90e)return;this['pending']['delete'](_0x2f861e['id']);const _0x53cdbb=_0x2f861e;if(_0x53cdbb['error'])_0x5ab90e['reject'](new Error('MCP\x20'+this['name']+':\x20'+_0x53cdbb['error']['message']));else _0x5ab90e['resolve'](_0x53cdbb['result']);}catch{}}),this['child']['stderr']&&this['child']['stderr']['on']('data',_0x500c0f=>{const _0x492774=_0x500c0f['toString']();for(const _0x1bc1de of _0x492774['split'](/\r?\n/)){const _0x4d52df=_0x1bc1de['trim']()['slice'](-0x1f4);if(_0x4d52df)this['stderrLines']['push'](_0x4d52df);}this['stderrLines']['length']>0x32&&this['stderrLines']['splice'](0x0,this['stderrLines']['length']-0x32);}),this['child']['on']('error',_0x4f02ff=>this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20process\x20error:\x20'+_0x4f02ff['message']))),this['child']['on']('exit',_0x34c28a=>{const _0x4f34c5=this['stderrLines']['slice'](-0x5)['join']('\x20|\x20')['slice'](0x0,0x1f4);this['lastError']='exited\x20with\x20code\x20'+(_0x34c28a??'signal'),this['child']=null,this['initialized']=![],this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20exited\x20with\x20code\x20'+(_0x34c28a??'signal')+'.'+(_0x4f34c5?'\x20Server\x20stderr:\x20'+_0x4f34c5:'')));});}['request'](_0xf93be4,_0x2d0214){if(!this['child'])throw new Error('MCP\x20\x27'+this['name']+'\x27\x20is\x20not\x20connected');const _0x2eda6a=this['nextId']++;return new Promise((_0x2b4905,_0x197cf0)=>{const _0x414d96=setTimeout(()=>{this['pending']['delete'](_0x2eda6a),_0x197cf0(new Error('MCP\x20'+this['name']+':\x20timeout\x20on\x20\x27'+_0xf93be4+'\x27'));},this['timeoutMs']);this['pending']['set'](_0x2eda6a,{'resolve':_0x28cdea=>{clearTimeout(_0x414d96),_0x2b4905(_0x28cdea);},'reject':_0x328cf5=>{clearTimeout(_0x414d96),_0x197cf0(_0x328cf5);}});const _0x1bab8f={'jsonrpc':'2.0','id':_0x2eda6a,'method':_0xf93be4,'params':_0x2d0214};this['child']['stdin']['write'](JSON['stringify'](_0x1bab8f)+'\x0a');});}['rejectAll'](_0x476ded){for(const [,_0x548303]of this['pending'])_0x548303['reject'](_0x476ded);this['pending']['clear']();}}exports['McpProcess']=McpProcess;const mcpProcesses=new Map();function getMcpProcess(_0x253c98,_0x59b417){let _0x1b83ee=mcpProcesses['get'](_0x253c98);return _0x1b83ee&&JSON['stringify'](_0x1b83ee['spec'])!==JSON['stringify'](_0x59b417)&&(_0x1b83ee['close'](),mcpProcesses['delete'](_0x253c98),_0x1b83ee=undefined),!_0x1b83ee&&(_0x1b83ee=new McpProcess(_0x253c98,_0x59b417),mcpProcesses['set'](_0x253c98,_0x1b83ee)),_0x1b83ee;}function createMcpRunnerTool(){const _0x205bc1={'timeoutMs':0x7530,'name':'trayambak__run_mcp','description':'Run\x20an\x20installed\x20MCP\x20server,\x20list\x20its\x20tools,\x20resources,\x20and\x20prompts,\x20and\x20invoke\x20them.\x20Use\x20this\x20to\x20run\x20and\x20think\x20with\x20MCP\x20servers.','parameters':{'type':'object','required':['action'],'properties':{'action':{'type':'string','enum':['list_tools','call_tool','connect','disconnect','status','list_resources','list_prompts','get_prompt','read_resource'],'description':'Action:\x20list_tools\x20(list\x20tools),\x20call_tool\x20(invoke),\x20connect\x20(start),\x20disconnect\x20(stop),\x20status\x20(health),\x20list_resources\x20(list\x20resources),\x20list_prompts\x20(list\x20prompts),\x20get_prompt\x20(get\x20prompt),\x20read_resource\x20(read\x20resource).'},'server':{'type':'string','description':'MCP\x20server\x20ID\x20(e.g.\x20sequential-thinking,\x20github,\x20filesystem).'},'tool':{'type':'string','description':'Tool\x20name\x20to\x20invoke\x20(for\x20call_tool\x20action).'},'args':{'type':'object','description':'Arguments\x20to\x20pass\x20to\x20the\x20tool\x20(for\x20call_tool\x20action).'},'uri':{'type':'string','description':'Resource\x20URI\x20(for\x20read_resource\x20action).'},'name':{'type':'string','description':'Prompt\x20or\x20resource\x20name\x20(for\x20get_prompt\x20/\x20list_prompts\x20actions).'}}}};return{'definition':_0x205bc1,async 'execute'(_0x272f75,_0x23abfd,_0x4c98e4,_0x9147d7){const _0x465165=_0x23abfd['action'],_0x932c7a=_0x23abfd['server'];if(_0x465165==='list_tools'||_0x465165==='connect'||_0x465165==='status'){if(!_0x932c7a)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x46c8fe=(0x0,registry_js_1['getConnectorRegistry'])(),_0x5c118e=_0x46c8fe['get'](_0x932c7a);if(!_0x5c118e)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20not\x20found\x20in\x20registry.\x20Use\x20trayambak__ToolSearch\x20to\x20find\x20servers.',!![]);const _0x248b35=getMcpProcess(_0x932c7a,_0x5c118e['spec']);try{if(_0x465165==='connect')return await _0x248b35['connect'](),(0x0,types_js_1['textResult'])('Connected\x20to\x20MCP\x20server\x20\x27'+_0x932c7a+'\x27.');if(_0x465165==='status'){const _0x23f049=await _0x248b35['status'](),_0x4e6c3b=['MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20status:','\x20\x20connected:\x20'+_0x23f049['connected'],'\x20\x20transport:\x20'+_0x23f049['transport'],'\x20\x20initialized:\x20'+_0x23f049['initialized']];return(0x0,types_js_1['textResult'])(_0x4e6c3b['join']('\x0a'));}const _0x132704=await _0x248b35['listTools']();if(_0x132704['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20is\x20connected\x20but\x20exposes\x20no\x20tools.');const _0x3d9e12=_0x132704['map'](_0x377725=>'-\x20'+_0x377725['name']+':\x20'+(_0x377725['description']??'(no\x20description)'));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20tools:\x0a'+_0x3d9e12['join']('\x0a'));}catch(_0x58575d){const _0x3d1f18=_0x248b35['getStderrLines']()['slice'](-0x5)['join']('\x0a'),_0x371e28=_0x58575d instanceof Error?_0x58575d['message']:String(_0x58575d);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x932c7a+':\x20'+_0x371e28+(_0x3d1f18?'\x0aServer\x20stderr:\x0a'+_0x3d1f18:''),!![]);}}if(_0x465165==='call_tool'){if(!_0x932c7a)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x5646f7=_0x23abfd['tool'],_0xa935bb=_0x23abfd['args']??{};if(!_0x5646f7)return(0x0,types_js_1['textResult'])('Missing\x20\x27tool\x27\x20parameter.',!![]);const _0xc7e5a6=(0x0,registry_js_1['getConnectorRegistry'])(),_0x5279ee=_0xc7e5a6['get'](_0x932c7a);if(!_0x5279ee)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x5c725c=getMcpProcess(_0x932c7a,_0x5279ee['spec']);try{const _0x31bb3b=await _0x5c725c['callTool'](_0x5646f7,_0xa935bb),_0x38086b=(_0x31bb3b['content']??[])['map'](_0x4299ea=>_0x4299ea['type']==='text'?_0x4299ea['text']:JSON['stringify'](_0x4299ea))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x38086b||'(empty\x20MCP\x20result)');}catch(_0x141920){const _0x3849a4=_0x5c725c['getStderrLines']()['slice'](-0x5)['join']('\x0a'),_0xbbbfb3=_0x141920 instanceof Error?_0x141920['message']:String(_0x141920);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x932c7a+'.'+_0x5646f7+':\x20'+_0xbbbfb3+(_0x3849a4?'\x0aServer\x20stderr:\x0a'+_0x3849a4:''),!![]);}}if(_0x465165==='disconnect'){if(!_0x932c7a)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x3d477d=mcpProcesses['get'](_0x932c7a);if(!_0x3d477d)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20is\x20not\x20running.');return _0x3d477d['close'](),mcpProcesses['delete'](_0x932c7a),(0x0,types_js_1['textResult'])('Disconnected\x20MCP\x20server\x20\x27'+_0x932c7a+'\x27.');}if(_0x465165==='list_resources'){if(!_0x932c7a)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x514336=(0x0,registry_js_1['getConnectorRegistry'])(),_0x183c00=_0x514336['get'](_0x932c7a);if(!_0x183c00)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x5bc108=getMcpProcess(_0x932c7a,_0x183c00['spec']);try{const _0x43054f=await _0x5bc108['listResources']();if(_0x43054f['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20exposes\x20no\x20resources.');const _0x463b0c=_0x43054f['map'](_0x9ffc3c=>'-\x20'+_0x9ffc3c['name']+':\x20'+_0x9ffc3c['uri']+(_0x9ffc3c['mimeType']?'\x20('+_0x9ffc3c['mimeType']+')':''));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20resources:\x0a'+_0x463b0c['join']('\x0a'));}catch(_0x57fb21){const _0x8d5ae6=_0x57fb21 instanceof Error?_0x57fb21['message']:String(_0x57fb21);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x932c7a+'\x20resources:\x20'+_0x8d5ae6,!![]);}}if(_0x465165==='list_prompts'){if(!_0x932c7a)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x22b561=(0x0,registry_js_1['getConnectorRegistry'])(),_0x55c0ef=_0x22b561['get'](_0x932c7a);if(!_0x55c0ef)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x10571b=getMcpProcess(_0x932c7a,_0x55c0ef['spec']);try{const _0x5dee4e=await _0x10571b['listPrompts']();if(_0x5dee4e['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20exposes\x20no\x20prompts.');const _0x1eb1c3=_0x5dee4e['map'](_0x34e913=>'-\x20'+_0x34e913['name']+':\x20'+(_0x34e913['description']??'(no\x20description)'));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20prompts:\x0a'+_0x1eb1c3['join']('\x0a'));}catch(_0xf83b9a){const _0x3de048=_0xf83b9a instanceof Error?_0xf83b9a['message']:String(_0xf83b9a);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x932c7a+'\x20prompts:\x20'+_0x3de048,!![]);}}if(_0x465165==='get_prompt'){if(!_0x932c7a)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x2864ab=_0x23abfd['name'];if(!_0x2864ab)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20parameter.',!![]);const _0x5a102e=(0x0,registry_js_1['getConnectorRegistry'])(),_0xe2a9b1=_0x5a102e['get'](_0x932c7a);if(!_0xe2a9b1)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x156da6=getMcpProcess(_0x932c7a,_0xe2a9b1['spec']);try{const _0x3638d4=typeof _0x23abfd['args']==='object'&&_0x23abfd['args']!==null?_0x23abfd['args']:undefined,_0x45bdfd=await _0x156da6['getPrompt'](_0x2864ab,_0x3638d4);if(!_0x45bdfd)return(0x0,types_js_1['textResult'])('Prompt\x20\x27'+_0x2864ab+'\x27\x20not\x20found\x20on\x20server\x20\x27'+_0x932c7a+'\x27.',!![]);const _0x1010ba=_0x45bdfd['messages']['map'](_0x467b14=>'['+_0x467b14['role']+']\x20'+(typeof _0x467b14['content']==='string'?_0x467b14['content']:JSON['stringify'](_0x467b14['content'])))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x1010ba||'(empty\x20prompt)');}catch(_0x367693){const _0x59fb3b=_0x367693 instanceof Error?_0x367693['message']:String(_0x367693);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x932c7a+'\x20prompt:\x20'+_0x59fb3b,!![]);}}if(_0x465165==='read_resource'){if(!_0x932c7a)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x838abe=_0x23abfd['uri'];if(!_0x838abe)return(0x0,types_js_1['textResult'])('Missing\x20\x27uri\x27\x20parameter.',!![]);const _0x231c29=(0x0,registry_js_1['getConnectorRegistry'])(),_0x3ad722=_0x231c29['get'](_0x932c7a);if(!_0x3ad722)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x932c7a+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x228dd2=getMcpProcess(_0x932c7a,_0x3ad722['spec']);try{const _0x5d6776=await _0x228dd2['readResource'](_0x838abe);return(0x0,types_js_1['textResult'])(_0x5d6776||'(empty\x20resource)');}catch(_0x2b890a){const _0x95824a=_0x2b890a instanceof Error?_0x2b890a['message']:String(_0x2b890a);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x932c7a+'\x20resource\x20read:\x20'+_0x95824a,!![]);}}return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20'+_0x465165+'.',!![]);}};}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x29ef2e,_0x12e221,_0x1970d5,_0x1ff3c2){if(_0x1ff3c2===undefined)_0x1ff3c2=_0x1970d5;var _0x1377e2=Object['getOwnPropertyDescriptor'](_0x12e221,_0x1970d5);(!_0x1377e2||('get'in _0x1377e2?!_0x12e221['__esModule']:_0x1377e2['writable']||_0x1377e2['configurable']))&&(_0x1377e2={'enumerable':!![],'get':function(){return _0x12e221[_0x1970d5];}}),Object['defineProperty'](_0x29ef2e,_0x1ff3c2,_0x1377e2);}:function(_0x467cf3,_0x5b1c21,_0x334ce2,_0x205f0d){if(_0x205f0d===undefined)_0x205f0d=_0x334ce2;_0x467cf3[_0x205f0d]=_0x5b1c21[_0x334ce2];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x3ffbd5,_0x36986e){Object['defineProperty'](_0x3ffbd5,'default',{'enumerable':!![],'value':_0x36986e});}:function(_0x40bd45,_0x16d1ac){_0x40bd45['default']=_0x16d1ac;}),__importStar=this&&this['__importStar']||(function(){var _0x168195=function(_0x2a55de){return _0x168195=Object['getOwnPropertyNames']||function(_0x3104ee){var _0x30bd43=[];for(var _0x2f75bb in _0x3104ee)if(Object['prototype']['hasOwnProperty']['call'](_0x3104ee,_0x2f75bb))_0x30bd43[_0x30bd43['length']]=_0x2f75bb;return _0x30bd43;},_0x168195(_0x2a55de);};return function(_0x5d59ba){if(_0x5d59ba&&_0x5d59ba['__esModule'])return _0x5d59ba;var _0x39488a={};if(_0x5d59ba!=null){for(var _0x20a3e9=_0x168195(_0x5d59ba),_0x23b4e7=0x0;_0x23b4e7<_0x20a3e9['length'];_0x23b4e7++)if(_0x20a3e9[_0x23b4e7]!=='default')__createBinding(_0x39488a,_0x5d59ba,_0x20a3e9[_0x23b4e7]);}return __setModuleDefault(_0x39488a,_0x5d59ba),_0x39488a;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['McpProcess']=void 0x0,exports['getMcpProcess']=getMcpProcess,exports['createMcpRunnerTool']=createMcpRunnerTool;const child_process_1=require('child_process'),readline=__importStar(require('readline')),registry_js_1=require('./registry.js'),spawn_resolve_js_1=require('../../../../../packages/mcp/src/spawn-resolve.js'),types_js_1=require('../types.js'),env_filter_js_1=require('../../../../../packages/core/src/env_filter.js');class McpProcess{['name'];['spec'];['child']=null;['rl']=null;['pending']=new Map();['nextId']=0x1;['initialized']=![];['stderrLines']=[];['lastError']='';constructor(_0x2e747d,_0xa7791e){this['name']=_0x2e747d,this['spec']=_0xa7791e;}get['timeoutMs'](){return this['spec']['timeoutMs']??0xea60;}async['connect'](){if(this['initialized'])return;const _0x3357d1={'protocolVersion':'2024-11-05','capabilities':{},'clientInfo':{'name':'trayambak','version':'0.3.0'}};this['spawnStdio'](),await this['request']('initialize',_0x3357d1);if(this['child'])try{this['child']['stdin']['write'](JSON['stringify']({'jsonrpc':'2.0','method':'notifications/initialized','params':{}})+'\x0a');}catch{}this['initialized']=!![];}async['listTools'](){await this['connect']();const _0x4c77dc=await this['request']('tools/list',{});return _0x4c77dc?.['tools']??[];}async['listResources'](){await this['connect']();try{const _0x2cc54d=await this['request']('resources/list',{});return _0x2cc54d?.['resources']??[];}catch{return[];}}async['listPrompts'](){await this['connect']();try{const _0x37b259=await this['request']('prompts/list',{});return _0x37b259?.['prompts']??[];}catch{return[];}}async['status'](){const _0xb23e96=this['child']!==null&&this['child']['exitCode']===null&&!this['child']['killed'];let _0x4ff251='disconnected';if(_0xb23e96)_0x4ff251='stdio';return{'name':this['name'],'connected':_0xb23e96,'transport':_0x4ff251,'initialized':this['initialized']&&_0xb23e96};}async['getPrompt'](_0x419b4a,_0xd8fe5c){await this['connect']();try{const _0x4ffe81=await this['request']('prompts/get',{'name':_0x419b4a,'arguments':_0xd8fe5c??{}}),_0x5b2c7a=_0x4ffe81?.['messages']??_0x4ffe81?.['prompt']?.['messages'];if(!_0x5b2c7a)return null;return{'name':_0x419b4a,'messages':_0x5b2c7a};}catch{return null;}}async['readResource'](_0x514beb){await this['connect']();try{const _0x42dc24=await this['request']('resources/read',{'uri':_0x514beb});if(_0x42dc24?.['contents'])return _0x42dc24['contents']['map'](_0x112708=>typeof _0x112708['text']==='string'?_0x112708['text']:typeof _0x112708['blob']==='string'?'[binary\x20'+(_0x112708['mimeType']??'blob')+']':JSON['stringify'](_0x112708))['join']('\x0a');return'';}catch{return'';}}async['callTool'](_0x6db012,_0x30a618){return await this['connect'](),this['request']('tools/call',{'name':_0x6db012,'arguments':_0x30a618});}['close'](){const _0x2e0ed0=this['child'];this['child']=null,this['rl']?.['close'](),this['rl']=null,this['initialized']=![],this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20connection\x20closed'));if(_0x2e0ed0&&_0x2e0ed0['exitCode']===null&&!_0x2e0ed0['killed']){_0x2e0ed0['kill']('SIGTERM');const _0x7faf5=setTimeout(()=>{try{if(_0x2e0ed0['exitCode']===null)_0x2e0ed0['kill']('SIGKILL');}catch{}},0x7d0);if(typeof _0x7faf5['unref']==='function')_0x7faf5['unref']();}}['getStderrLines'](){return this['stderrLines'];}['spawnStdio'](){const _0x9f5505=this['spec'],_0x16e0ff=_0x9f5505['command']??[];if(_0x16e0ff['length']===0x0)throw new Error('MCP\x20server\x20\x27'+this['name']+'\x27\x20has\x20no\x20command');const {command:_0x538e28,args:_0x338b08}=(0x0,spawn_resolve_js_1['resolveMcpCommand'])(_0x16e0ff);this['child']=(0x0,child_process_1['spawn'])(_0x538e28,_0x338b08,{'cwd':_0x9f5505['cwd']??process['cwd'](),'env':{...(0x0,env_filter_js_1['getSafeEnv'])(process.env),..._0x9f5505['env']??{}},'stdio':['pipe','pipe','pipe'],'shell':![],'windowsHide':!![]}),this['rl']=readline['createInterface']({'input':this['child']['stdout']}),this['rl']['on']('line',_0x20fa7c=>{try{const _0x117898=JSON['parse'](_0x20fa7c);if(_0x117898['id']===undefined)return;const _0x4cc19a=this['pending']['get'](_0x117898['id']);if(!_0x4cc19a)return;this['pending']['delete'](_0x117898['id']);const _0x1c49d9=_0x117898;if(_0x1c49d9['error'])_0x4cc19a['reject'](new Error('MCP\x20'+this['name']+':\x20'+_0x1c49d9['error']['message']));else _0x4cc19a['resolve'](_0x1c49d9['result']);}catch{}}),this['child']['stderr']&&this['child']['stderr']['on']('data',_0x4b4d39=>{const _0x547298=_0x4b4d39['toString']();for(const _0x398693 of _0x547298['split'](/\r?\n/)){const _0x5a1ce7=_0x398693['trim']()['slice'](-0x1f4);if(_0x5a1ce7)this['stderrLines']['push'](_0x5a1ce7);}this['stderrLines']['length']>0x32&&this['stderrLines']['splice'](0x0,this['stderrLines']['length']-0x32);}),this['child']['on']('error',_0x583a6e=>this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20process\x20error:\x20'+_0x583a6e['message']))),this['child']['on']('exit',_0x1dd3dd=>{const _0x39b68a=this['stderrLines']['slice'](-0x5)['join']('\x20|\x20')['slice'](0x0,0x1f4);this['lastError']='exited\x20with\x20code\x20'+(_0x1dd3dd??'signal'),this['child']=null,this['initialized']=![],this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20exited\x20with\x20code\x20'+(_0x1dd3dd??'signal')+'.'+(_0x39b68a?'\x20Server\x20stderr:\x20'+_0x39b68a:'')));});}['request'](_0x14cffb,_0x32b722){if(!this['child'])throw new Error('MCP\x20\x27'+this['name']+'\x27\x20is\x20not\x20connected');const _0x3d5269=this['nextId']++;return new Promise((_0x53b46b,_0x1a6854)=>{const _0x1a2dd1=setTimeout(()=>{this['pending']['delete'](_0x3d5269),_0x1a6854(new Error('MCP\x20'+this['name']+':\x20timeout\x20on\x20\x27'+_0x14cffb+'\x27'));},this['timeoutMs']);this['pending']['set'](_0x3d5269,{'resolve':_0x17c2ca=>{clearTimeout(_0x1a2dd1),_0x53b46b(_0x17c2ca);},'reject':_0x126541=>{clearTimeout(_0x1a2dd1),_0x1a6854(_0x126541);}});const _0x1a1a64={'jsonrpc':'2.0','id':_0x3d5269,'method':_0x14cffb,'params':_0x32b722};this['child']['stdin']['write'](JSON['stringify'](_0x1a1a64)+'\x0a');});}['rejectAll'](_0x236796){for(const [,_0x353e6f]of this['pending'])_0x353e6f['reject'](_0x236796);this['pending']['clear']();}}exports['McpProcess']=McpProcess;const mcpProcesses=new Map();function getMcpProcess(_0x258596,_0x31dbbe){let _0x3c226a=mcpProcesses['get'](_0x258596);return _0x3c226a&&JSON['stringify'](_0x3c226a['spec'])!==JSON['stringify'](_0x31dbbe)&&(_0x3c226a['close'](),mcpProcesses['delete'](_0x258596),_0x3c226a=undefined),!_0x3c226a&&(_0x3c226a=new McpProcess(_0x258596,_0x31dbbe),mcpProcesses['set'](_0x258596,_0x3c226a)),_0x3c226a;}function createMcpRunnerTool(){const _0x5c0fb0={'timeoutMs':0x7530,'name':'trayambak__run_mcp','description':'Run\x20an\x20installed\x20MCP\x20server,\x20list\x20its\x20tools,\x20resources,\x20and\x20prompts,\x20and\x20invoke\x20them.\x20Use\x20this\x20to\x20run\x20and\x20think\x20with\x20MCP\x20servers.','parameters':{'type':'object','required':['action'],'properties':{'action':{'type':'string','enum':['list_tools','call_tool','connect','disconnect','status','list_resources','list_prompts','get_prompt','read_resource'],'description':'Action:\x20list_tools\x20(list\x20tools),\x20call_tool\x20(invoke),\x20connect\x20(start),\x20disconnect\x20(stop),\x20status\x20(health),\x20list_resources\x20(list\x20resources),\x20list_prompts\x20(list\x20prompts),\x20get_prompt\x20(get\x20prompt),\x20read_resource\x20(read\x20resource).'},'server':{'type':'string','description':'MCP\x20server\x20ID\x20(e.g.\x20sequential-thinking,\x20github,\x20filesystem).'},'tool':{'type':'string','description':'Tool\x20name\x20to\x20invoke\x20(for\x20call_tool\x20action).'},'args':{'type':'object','description':'Arguments\x20to\x20pass\x20to\x20the\x20tool\x20(for\x20call_tool\x20action).'},'uri':{'type':'string','description':'Resource\x20URI\x20(for\x20read_resource\x20action).'},'name':{'type':'string','description':'Prompt\x20or\x20resource\x20name\x20(for\x20get_prompt\x20/\x20list_prompts\x20actions).'}}}};return{'definition':_0x5c0fb0,async 'execute'(_0x8f49af,_0x5550f1,_0x1d3195,_0x56f9a6){const _0x59c09c=_0x5550f1['action'],_0x3f52a4=_0x5550f1['server'];if(_0x59c09c==='list_tools'||_0x59c09c==='connect'||_0x59c09c==='status'){if(!_0x3f52a4)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0xe7adbb=(0x0,registry_js_1['getConnectorRegistry'])(),_0x157cb2=_0xe7adbb['get'](_0x3f52a4);if(!_0x157cb2)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20not\x20found\x20in\x20registry.\x20Use\x20trayambak__ToolSearch\x20to\x20find\x20servers.',!![]);const _0x2734f3=getMcpProcess(_0x3f52a4,_0x157cb2['spec']);try{if(_0x59c09c==='connect')return await _0x2734f3['connect'](),(0x0,types_js_1['textResult'])('Connected\x20to\x20MCP\x20server\x20\x27'+_0x3f52a4+'\x27.');if(_0x59c09c==='status'){const _0x59510a=await _0x2734f3['status'](),_0x496d0d=['MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20status:','\x20\x20connected:\x20'+_0x59510a['connected'],'\x20\x20transport:\x20'+_0x59510a['transport'],'\x20\x20initialized:\x20'+_0x59510a['initialized']];return(0x0,types_js_1['textResult'])(_0x496d0d['join']('\x0a'));}const _0x1892df=await _0x2734f3['listTools']();if(_0x1892df['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20is\x20connected\x20but\x20exposes\x20no\x20tools.');const _0x50addc=_0x1892df['map'](_0x3ce4f2=>'-\x20'+_0x3ce4f2['name']+':\x20'+(_0x3ce4f2['description']??'(no\x20description)'));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20tools:\x0a'+_0x50addc['join']('\x0a'));}catch(_0x5d8932){const _0x5bb017=_0x2734f3['getStderrLines']()['slice'](-0x5)['join']('\x0a'),_0x1a43f5=_0x5d8932 instanceof Error?_0x5d8932['message']:String(_0x5d8932);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x3f52a4+':\x20'+_0x1a43f5+(_0x5bb017?'\x0aServer\x20stderr:\x0a'+_0x5bb017:''),!![]);}}if(_0x59c09c==='call_tool'){if(!_0x3f52a4)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x20a9e1=_0x5550f1['tool'],_0x5d5e70=_0x5550f1['args']??{};if(!_0x20a9e1)return(0x0,types_js_1['textResult'])('Missing\x20\x27tool\x27\x20parameter.',!![]);const _0x3b41da=(0x0,registry_js_1['getConnectorRegistry'])(),_0x3141ec=_0x3b41da['get'](_0x3f52a4);if(!_0x3141ec)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x307600=getMcpProcess(_0x3f52a4,_0x3141ec['spec']);try{const _0x77c255=await _0x307600['callTool'](_0x20a9e1,_0x5d5e70),_0x45a0ac=(_0x77c255['content']??[])['map'](_0x2dc27d=>_0x2dc27d['type']==='text'?_0x2dc27d['text']:JSON['stringify'](_0x2dc27d))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x45a0ac||'(empty\x20MCP\x20result)');}catch(_0x1c6a81){const _0x311802=_0x307600['getStderrLines']()['slice'](-0x5)['join']('\x0a'),_0xe2645d=_0x1c6a81 instanceof Error?_0x1c6a81['message']:String(_0x1c6a81);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x3f52a4+'.'+_0x20a9e1+':\x20'+_0xe2645d+(_0x311802?'\x0aServer\x20stderr:\x0a'+_0x311802:''),!![]);}}if(_0x59c09c==='disconnect'){if(!_0x3f52a4)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x501be8=mcpProcesses['get'](_0x3f52a4);if(!_0x501be8)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20is\x20not\x20running.');return _0x501be8['close'](),mcpProcesses['delete'](_0x3f52a4),(0x0,types_js_1['textResult'])('Disconnected\x20MCP\x20server\x20\x27'+_0x3f52a4+'\x27.');}if(_0x59c09c==='list_resources'){if(!_0x3f52a4)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x481303=(0x0,registry_js_1['getConnectorRegistry'])(),_0x20a317=_0x481303['get'](_0x3f52a4);if(!_0x20a317)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x8d1527=getMcpProcess(_0x3f52a4,_0x20a317['spec']);try{const _0x384472=await _0x8d1527['listResources']();if(_0x384472['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20exposes\x20no\x20resources.');const _0x4b8897=_0x384472['map'](_0x4029b2=>'-\x20'+_0x4029b2['name']+':\x20'+_0x4029b2['uri']+(_0x4029b2['mimeType']?'\x20('+_0x4029b2['mimeType']+')':''));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20resources:\x0a'+_0x4b8897['join']('\x0a'));}catch(_0x1646c3){const _0x1cf880=_0x1646c3 instanceof Error?_0x1646c3['message']:String(_0x1646c3);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x3f52a4+'\x20resources:\x20'+_0x1cf880,!![]);}}if(_0x59c09c==='list_prompts'){if(!_0x3f52a4)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0xf3c443=(0x0,registry_js_1['getConnectorRegistry'])(),_0x4b55bf=_0xf3c443['get'](_0x3f52a4);if(!_0x4b55bf)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x3570f7=getMcpProcess(_0x3f52a4,_0x4b55bf['spec']);try{const _0x85b1c3=await _0x3570f7['listPrompts']();if(_0x85b1c3['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20exposes\x20no\x20prompts.');const _0x253ade=_0x85b1c3['map'](_0x473a53=>'-\x20'+_0x473a53['name']+':\x20'+(_0x473a53['description']??'(no\x20description)'));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20prompts:\x0a'+_0x253ade['join']('\x0a'));}catch(_0x431dbe){const _0x27c439=_0x431dbe instanceof Error?_0x431dbe['message']:String(_0x431dbe);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x3f52a4+'\x20prompts:\x20'+_0x27c439,!![]);}}if(_0x59c09c==='get_prompt'){if(!_0x3f52a4)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x33aeb5=_0x5550f1['name'];if(!_0x33aeb5)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20parameter.',!![]);const _0x2e4157=(0x0,registry_js_1['getConnectorRegistry'])(),_0x29d892=_0x2e4157['get'](_0x3f52a4);if(!_0x29d892)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x20f4ce=getMcpProcess(_0x3f52a4,_0x29d892['spec']);try{const _0x291adf=typeof _0x5550f1['args']==='object'&&_0x5550f1['args']!==null?_0x5550f1['args']:undefined,_0x5ab86c=await _0x20f4ce['getPrompt'](_0x33aeb5,_0x291adf);if(!_0x5ab86c)return(0x0,types_js_1['textResult'])('Prompt\x20\x27'+_0x33aeb5+'\x27\x20not\x20found\x20on\x20server\x20\x27'+_0x3f52a4+'\x27.',!![]);const _0x29a3ae=_0x5ab86c['messages']['map'](_0x461f8c=>'['+_0x461f8c['role']+']\x20'+(typeof _0x461f8c['content']==='string'?_0x461f8c['content']:JSON['stringify'](_0x461f8c['content'])))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x29a3ae||'(empty\x20prompt)');}catch(_0x3406d2){const _0x5510c0=_0x3406d2 instanceof Error?_0x3406d2['message']:String(_0x3406d2);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x3f52a4+'\x20prompt:\x20'+_0x5510c0,!![]);}}if(_0x59c09c==='read_resource'){if(!_0x3f52a4)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x3d8378=_0x5550f1['uri'];if(!_0x3d8378)return(0x0,types_js_1['textResult'])('Missing\x20\x27uri\x27\x20parameter.',!![]);const _0x133961=(0x0,registry_js_1['getConnectorRegistry'])(),_0x477b7e=_0x133961['get'](_0x3f52a4);if(!_0x477b7e)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x3f52a4+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x151d43=getMcpProcess(_0x3f52a4,_0x477b7e['spec']);try{const _0x70f73c=await _0x151d43['readResource'](_0x3d8378);return(0x0,types_js_1['textResult'])(_0x70f73c||'(empty\x20resource)');}catch(_0x2f0406){const _0x443544=_0x2f0406 instanceof Error?_0x2f0406['message']:String(_0x2f0406);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x3f52a4+'\x20resource\x20read:\x20'+_0x443544,!![]);}}return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20'+_0x59c09c+'.',!![]);}};}
@@ -1 +1 @@
1
- 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createMcpTools']=createMcpTools,exports['slugify']=slugify,exports['toToolProperty']=toToolProperty,exports['resetMcpRegistry']=resetMcpRegistry;const index_js_1=require('../../../../../packages/mcp/src/index.js'),types_js_1=require('../types.js'),registry=new Map();async function createMcpTools(_0x38558c={},_0x32cda9){const _0x479ec1=[];for(const [_0x1dfe0a,_0x4664f6]of Object['entries'](_0x38558c)){let _0x262023=registry['get'](_0x1dfe0a);_0x262023&&JSON['stringify'](_0x262023['spec'])!==JSON['stringify'](_0x4664f6)&&(_0x262023['conn']?.['close'](),registry['delete'](_0x1dfe0a),_0x262023=undefined);!_0x262023&&(_0x262023={'name':_0x1dfe0a,'spec':_0x4664f6,'conn':(0x0,index_js_1['createMcpConnection'])(_0x1dfe0a,_0x4664f6),'tools':[],'resources':[],'prompts':[]},registry['set'](_0x1dfe0a,_0x262023));const _0x5156c9=_0x262023['tools']['length']>0x0;try{_0x262023['tools']=await _0x262023['conn']['listTools'](_0x32cda9),_0x262023['resources']=await _0x262023['conn']['listResources'](),_0x262023['prompts']=await _0x262023['conn']['listPrompts']();}catch(_0xe2425a){_0x479ec1['push'](makeMcpErrorTool(_0x1dfe0a,_0xe2425a instanceof Error?_0xe2425a['message']:String(_0xe2425a)));if(!_0x5156c9)continue;}for(const _0x3073f8 of _0x262023['tools'])_0x479ec1['push'](makeMcpCallTool(_0x1dfe0a,_0x3073f8));for(const _0x196989 of _0x262023['resources'])_0x479ec1['push'](makeMcpReadResourceTool(_0x1dfe0a,_0x196989));for(const _0x305679 of _0x262023['prompts'])_0x479ec1['push'](makeMcpGetPromptTool(_0x1dfe0a,_0x305679));}return _0x479ec1;}function slugify(_0x3fcdd6){const _0x5d1055=_0x3fcdd6['toLowerCase']()['replace'](/[^a-z0-9]+/g,'_')['replace'](/^_+|_+$/g,'')['slice'](0x0,0x28);return _0x5d1055||'item';}function toToolProperty(_0x4620f7){const _0x2c7565=_0x4620f7??{},_0x51cbf4={'type':_0x2c7565['type']??'string','description':_0x2c7565['description']??''};if(Array['isArray'](_0x2c7565['enum']))_0x51cbf4['enum']=_0x2c7565['enum']['filter'](_0x362151=>typeof _0x362151==='string');if(_0x2c7565['items']&&typeof _0x2c7565['items']==='object')_0x51cbf4['items']=toToolProperty(_0x2c7565['items']);return _0x51cbf4;}function abortable(_0x2bf6a1,_0x5d341e){if(!_0x2bf6a1)return _0x5d341e;if(_0x2bf6a1['aborted'])return Promise['reject'](new Error('aborted'));return new Promise((_0x5442b4,_0x2fd16f)=>{const _0x289ccd=()=>_0x2fd16f(new Error('aborted'));_0x2bf6a1['addEventListener']('abort',_0x289ccd,{'once':!![]}),_0x5d341e['then'](_0x1c778b=>{_0x2bf6a1['removeEventListener']('abort',_0x289ccd),_0x5442b4(_0x1c778b);},_0x5c4f93=>{_0x2bf6a1['removeEventListener']('abort',_0x289ccd),_0x2fd16f(_0x5c4f93);});});}function makeMcpCallTool(_0x360f6c,_0x27ca06){const _0x3649cd='mcp__'+_0x360f6c+'__'+_0x27ca06['name'],_0x950ada=_0x27ca06['inputSchema']??{},_0x4cf3bd={};for(const [_0x5f49a6,_0x8977ea]of Object['entries'](_0x950ada['properties']??{})){_0x4cf3bd[_0x5f49a6]=toToolProperty(_0x8977ea);}const _0x267485={'timeoutMs':0x7530,'name':_0x3649cd,'description':('Call\x20tool\x20\x27'+_0x27ca06['name']+'\x27\x20on\x20MCP\x20server\x20\x27'+_0x360f6c+'\x27.\x20'+(_0x27ca06['description']??''))['trim'](),'parameters':{'type':'object','properties':_0x4cf3bd,'required':_0x950ada['required']??[]}};return{'definition':_0x267485,async 'execute'(_0x453cb4,_0x213905,_0x3d189b,_0x7c86dd){const _0x23ba92=registry['get'](_0x360f6c);if(!_0x23ba92)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x360f6c+'\x27\x20is\x20not\x20registered.',!![]);try{const _0x574701=await abortable(_0x3d189b,_0x23ba92['conn']['callTool'](_0x27ca06['name'],_0x213905)),_0x3e52f3=(_0x574701['content']??[])['map'](_0x13abbe=>typeof _0x13abbe['text']==='string'?_0x13abbe['text']:_0x13abbe['blob']?'[binary\x20'+(_0x13abbe['mimeType']??'blob')+']':JSON['stringify'](_0x13abbe))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x3e52f3||'(empty\x20MCP\x20result)',Boolean(_0x574701['isError']));}catch(_0x5874d7){if(_0x5874d7 instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x360f6c+'.'+_0x27ca06['name']+'\x20['+_0x5874d7['code']+']:\x20'+_0x5874d7['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x360f6c+'.'+_0x27ca06['name']+':\x20'+(_0x5874d7 instanceof Error?_0x5874d7['message']:String(_0x5874d7)),!![]);}}};}function makeMcpReadResourceTool(_0x53852c,_0x4c5d1b){const _0xcae09f='mcp__'+_0x53852c+'__read_resource_'+slugify(_0x4c5d1b['uri']),_0x4efd08={'timeoutMs':0x7530,'name':_0xcae09f,'description':('Read\x20resource\x20\x27'+_0x4c5d1b['name']+'\x27\x20('+_0x4c5d1b['uri']+')\x20from\x20MCP\x20server\x20\x27'+_0x53852c+'\x27.\x20'+(_0x4c5d1b['description']??''))['trim'](),'parameters':{'type':'object','required':[],'properties':{'uri':{'type':'string','description':'Resource\x20URI\x20(default\x20'+_0x4c5d1b['uri']+')'}}}};return{'definition':_0x4efd08,async 'execute'(_0x5c5b45,_0xd0dbf0,_0x38d915,_0x41101b){const _0x190a21=registry['get'](_0x53852c);if(!_0x190a21)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x53852c+'\x27\x20is\x20not\x20registered.',!![]);const _0x149df1=typeof _0xd0dbf0['uri']==='string'?_0xd0dbf0['uri']:_0x4c5d1b['uri'];try{const _0x21e5aa=await abortable(_0x38d915,_0x190a21['conn']['readResource'](_0x149df1));return(0x0,types_js_1['textResult'])(_0x21e5aa||'(empty\x20resource)');}catch(_0x4bd8c0){if(_0x4bd8c0 instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x53852c+'\x20resource\x20read\x20['+_0x4bd8c0['code']+']:\x20'+_0x4bd8c0['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x53852c+'\x20resource\x20read:\x20'+(_0x4bd8c0 instanceof Error?_0x4bd8c0['message']:String(_0x4bd8c0)),!![]);}}};}function makeMcpGetPromptTool(_0x25aeee,_0xef7314){const _0x2eb5e1='mcp__'+_0x25aeee+'__get_prompt_'+slugify(_0xef7314['name']),_0x18ad70={'timeoutMs':0x7530,'name':_0x2eb5e1,'description':('Get\x20prompt\x20\x27'+_0xef7314['name']+'\x27\x20from\x20MCP\x20server\x20\x27'+_0x25aeee+'\x27.\x20'+(_0xef7314['description']??''))['trim'](),'parameters':{'type':'object','required':[],'properties':{'name':{'type':'string','description':'Prompt\x20name\x20(default\x20'+_0xef7314['name']+')'},'args':{'type':'object','description':'Optional\x20prompt\x20arguments.'}}}};return{'definition':_0x18ad70,async 'execute'(_0xe8932d,_0x2fdbf8,_0x40a94b,_0x5b19a4){const _0x448009=registry['get'](_0x25aeee);if(!_0x448009)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x25aeee+'\x27\x20is\x20not\x20registered.',!![]);const _0x1cc1c6=typeof _0x2fdbf8['name']==='string'?_0x2fdbf8['name']:_0xef7314['name'],_0x3cabe5=typeof _0x2fdbf8['args']==='object'&&_0x2fdbf8['args']!==null?_0x2fdbf8['args']:undefined;try{const _0x279e1f=await abortable(_0x40a94b,_0x448009['conn']['getPrompt'](_0x1cc1c6,_0x3cabe5));if(!_0x279e1f)return(0x0,types_js_1['textResult'])('Prompt\x20\x27'+_0x1cc1c6+'\x27\x20not\x20found\x20on\x20server\x20\x27'+_0x25aeee+'\x27.',!![]);const _0xcf94f8=_0x279e1f['messages']['map'](_0x317187=>'['+_0x317187['role']+']\x20'+(typeof _0x317187['content']==='string'?_0x317187['content']:JSON['stringify'](_0x317187['content'])))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0xcf94f8||'(empty\x20prompt)');}catch(_0x33043a){if(_0x33043a instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x25aeee+'\x20prompt\x20get\x20['+_0x33043a['code']+']:\x20'+_0x33043a['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x25aeee+'\x20prompt\x20get:\x20'+(_0x33043a instanceof Error?_0x33043a['message']:String(_0x33043a)),!![]);}}};}function makeMcpErrorTool(_0x339443,_0x4388dd){const _0x82b9ad={'timeoutMs':0x7530,'name':'mcp__'+_0x339443+'__error','description':'MCP\x20server\x20\x27'+_0x339443+'\x27\x20failed\x20to\x20initialize:\x20'+_0x4388dd+'.','parameters':{'type':'object','properties':{},'required':[]}};return{'definition':_0x82b9ad,async 'execute'(){return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x339443+'\x27\x20is\x20unavailable:\x20'+_0x4388dd,!![]);}};}function resetMcpRegistry(){for(const [,_0x34bee6]of registry)_0x34bee6['conn']?.['close']();registry['clear']();}
1
+ 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createMcpTools']=createMcpTools,exports['slugify']=slugify,exports['toToolProperty']=toToolProperty,exports['resetMcpRegistry']=resetMcpRegistry;const index_js_1=require('../../../../../packages/mcp/src/index.js'),types_js_1=require('../types.js'),registry=new Map();async function createMcpTools(_0x350e19={},_0x48d59a){const _0x330824=[];for(const [_0x117e62,_0x4c5529]of Object['entries'](_0x350e19)){let _0x258e0c=registry['get'](_0x117e62);_0x258e0c&&JSON['stringify'](_0x258e0c['spec'])!==JSON['stringify'](_0x4c5529)&&(_0x258e0c['conn']?.['close'](),registry['delete'](_0x117e62),_0x258e0c=undefined);!_0x258e0c&&(_0x258e0c={'name':_0x117e62,'spec':_0x4c5529,'conn':(0x0,index_js_1['createMcpConnection'])(_0x117e62,_0x4c5529),'tools':[],'resources':[],'prompts':[]},registry['set'](_0x117e62,_0x258e0c));const _0x1f6a9c=_0x258e0c['tools']['length']>0x0;try{_0x258e0c['tools']=await _0x258e0c['conn']['listTools'](_0x48d59a),_0x258e0c['resources']=await _0x258e0c['conn']['listResources'](),_0x258e0c['prompts']=await _0x258e0c['conn']['listPrompts']();}catch(_0x1c21bd){_0x330824['push'](makeMcpErrorTool(_0x117e62,_0x1c21bd instanceof Error?_0x1c21bd['message']:String(_0x1c21bd)));if(!_0x1f6a9c)continue;}for(const _0x493acf of _0x258e0c['tools'])_0x330824['push'](makeMcpCallTool(_0x117e62,_0x493acf));for(const _0x2c04c8 of _0x258e0c['resources'])_0x330824['push'](makeMcpReadResourceTool(_0x117e62,_0x2c04c8));for(const _0x4116c5 of _0x258e0c['prompts'])_0x330824['push'](makeMcpGetPromptTool(_0x117e62,_0x4116c5));}return _0x330824;}function slugify(_0x401b6e){const _0xd6a10c=_0x401b6e['toLowerCase']()['replace'](/[^a-z0-9]+/g,'_')['replace'](/^_+|_+$/g,'')['slice'](0x0,0x28);return _0xd6a10c||'item';}function toToolProperty(_0x383d93){const _0x31b2c2=_0x383d93??{},_0x5167ab={'type':_0x31b2c2['type']??'string','description':_0x31b2c2['description']??''};if(Array['isArray'](_0x31b2c2['enum']))_0x5167ab['enum']=_0x31b2c2['enum']['filter'](_0x43adbb=>typeof _0x43adbb==='string');if(_0x31b2c2['items']&&typeof _0x31b2c2['items']==='object')_0x5167ab['items']=toToolProperty(_0x31b2c2['items']);return _0x5167ab;}function abortable(_0x17e492,_0x2bd674){if(!_0x17e492)return _0x2bd674;if(_0x17e492['aborted'])return Promise['reject'](new Error('aborted'));return new Promise((_0x39f1e0,_0x5b9271)=>{const _0x49063e=()=>_0x5b9271(new Error('aborted'));_0x17e492['addEventListener']('abort',_0x49063e,{'once':!![]}),_0x2bd674['then'](_0x2da075=>{_0x17e492['removeEventListener']('abort',_0x49063e),_0x39f1e0(_0x2da075);},_0xfb7072=>{_0x17e492['removeEventListener']('abort',_0x49063e),_0x5b9271(_0xfb7072);});});}function makeMcpCallTool(_0x4755e6,_0x1e0948){const _0x8e83b0='mcp__'+_0x4755e6+'__'+_0x1e0948['name'],_0x2c8cf0=_0x1e0948['inputSchema']??{},_0x58e225={};for(const [_0x1d6203,_0x4b5f06]of Object['entries'](_0x2c8cf0['properties']??{})){_0x58e225[_0x1d6203]=toToolProperty(_0x4b5f06);}const _0x4fbd4c={'timeoutMs':0x7530,'name':_0x8e83b0,'description':('Call\x20tool\x20\x27'+_0x1e0948['name']+'\x27\x20on\x20MCP\x20server\x20\x27'+_0x4755e6+'\x27.\x20'+(_0x1e0948['description']??''))['trim'](),'parameters':{'type':'object','properties':_0x58e225,'required':_0x2c8cf0['required']??[]}};return{'definition':_0x4fbd4c,async 'execute'(_0x208be7,_0x1eb463,_0x224627,_0x55c5d4){const _0x58c0ae=registry['get'](_0x4755e6);if(!_0x58c0ae)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x4755e6+'\x27\x20is\x20not\x20registered.',!![]);try{const _0x496dbc=await abortable(_0x224627,_0x58c0ae['conn']['callTool'](_0x1e0948['name'],_0x1eb463)),_0x2d5b54=(_0x496dbc['content']??[])['map'](_0x14216c=>typeof _0x14216c['text']==='string'?_0x14216c['text']:_0x14216c['blob']?'[binary\x20'+(_0x14216c['mimeType']??'blob')+']':JSON['stringify'](_0x14216c))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x2d5b54||'(empty\x20MCP\x20result)',Boolean(_0x496dbc['isError']));}catch(_0x55035a){if(_0x55035a instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x4755e6+'.'+_0x1e0948['name']+'\x20['+_0x55035a['code']+']:\x20'+_0x55035a['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x4755e6+'.'+_0x1e0948['name']+':\x20'+(_0x55035a instanceof Error?_0x55035a['message']:String(_0x55035a)),!![]);}}};}function makeMcpReadResourceTool(_0x472528,_0x38d62d){const _0x3cdbc0='mcp__'+_0x472528+'__read_resource_'+slugify(_0x38d62d['uri']),_0x52e3c9={'timeoutMs':0x7530,'name':_0x3cdbc0,'description':('Read\x20resource\x20\x27'+_0x38d62d['name']+'\x27\x20('+_0x38d62d['uri']+')\x20from\x20MCP\x20server\x20\x27'+_0x472528+'\x27.\x20'+(_0x38d62d['description']??''))['trim'](),'parameters':{'type':'object','required':[],'properties':{'uri':{'type':'string','description':'Resource\x20URI\x20(default\x20'+_0x38d62d['uri']+')'}}}};return{'definition':_0x52e3c9,async 'execute'(_0x4519f3,_0x65cd87,_0x5b5e3c,_0x1fd2bc){const _0x523f8a=registry['get'](_0x472528);if(!_0x523f8a)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x472528+'\x27\x20is\x20not\x20registered.',!![]);const _0x19bf08=typeof _0x65cd87['uri']==='string'?_0x65cd87['uri']:_0x38d62d['uri'];try{const _0x130033=await abortable(_0x5b5e3c,_0x523f8a['conn']['readResource'](_0x19bf08));return(0x0,types_js_1['textResult'])(_0x130033||'(empty\x20resource)');}catch(_0x3199f7){if(_0x3199f7 instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x472528+'\x20resource\x20read\x20['+_0x3199f7['code']+']:\x20'+_0x3199f7['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x472528+'\x20resource\x20read:\x20'+(_0x3199f7 instanceof Error?_0x3199f7['message']:String(_0x3199f7)),!![]);}}};}function makeMcpGetPromptTool(_0x5a97b3,_0x37cc0a){const _0x5a696c='mcp__'+_0x5a97b3+'__get_prompt_'+slugify(_0x37cc0a['name']),_0x27d1c1={'timeoutMs':0x7530,'name':_0x5a696c,'description':('Get\x20prompt\x20\x27'+_0x37cc0a['name']+'\x27\x20from\x20MCP\x20server\x20\x27'+_0x5a97b3+'\x27.\x20'+(_0x37cc0a['description']??''))['trim'](),'parameters':{'type':'object','required':[],'properties':{'name':{'type':'string','description':'Prompt\x20name\x20(default\x20'+_0x37cc0a['name']+')'},'args':{'type':'object','description':'Optional\x20prompt\x20arguments.'}}}};return{'definition':_0x27d1c1,async 'execute'(_0x3c7f3a,_0x465cd2,_0x2b9e2f,_0x521ac7){const _0x4f99af=registry['get'](_0x5a97b3);if(!_0x4f99af)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x5a97b3+'\x27\x20is\x20not\x20registered.',!![]);const _0x321aad=typeof _0x465cd2['name']==='string'?_0x465cd2['name']:_0x37cc0a['name'],_0x205ad4=typeof _0x465cd2['args']==='object'&&_0x465cd2['args']!==null?_0x465cd2['args']:undefined;try{const _0x2102a3=await abortable(_0x2b9e2f,_0x4f99af['conn']['getPrompt'](_0x321aad,_0x205ad4));if(!_0x2102a3)return(0x0,types_js_1['textResult'])('Prompt\x20\x27'+_0x321aad+'\x27\x20not\x20found\x20on\x20server\x20\x27'+_0x5a97b3+'\x27.',!![]);const _0x3d44e2=_0x2102a3['messages']['map'](_0x548c44=>'['+_0x548c44['role']+']\x20'+(typeof _0x548c44['content']==='string'?_0x548c44['content']:JSON['stringify'](_0x548c44['content'])))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x3d44e2||'(empty\x20prompt)');}catch(_0x1e9599){if(_0x1e9599 instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x5a97b3+'\x20prompt\x20get\x20['+_0x1e9599['code']+']:\x20'+_0x1e9599['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x5a97b3+'\x20prompt\x20get:\x20'+(_0x1e9599 instanceof Error?_0x1e9599['message']:String(_0x1e9599)),!![]);}}};}function makeMcpErrorTool(_0x134ff4,_0x328924){const _0x3bf7e0={'timeoutMs':0x7530,'name':'mcp__'+_0x134ff4+'__error','description':'MCP\x20server\x20\x27'+_0x134ff4+'\x27\x20failed\x20to\x20initialize:\x20'+_0x328924+'.','parameters':{'type':'object','properties':{},'required':[]}};return{'definition':_0x3bf7e0,async 'execute'(){return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x134ff4+'\x27\x20is\x20unavailable:\x20'+_0x328924,!![]);}};}function resetMcpRegistry(){for(const [,_0x52eee4]of registry)_0x52eee4['conn']?.['close']();registry['clear']();}
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x12b0fa,_0x3f7e40,_0x5ad58c,_0x34e655){if(_0x34e655===undefined)_0x34e655=_0x5ad58c;var _0x322296=Object['getOwnPropertyDescriptor'](_0x3f7e40,_0x5ad58c);(!_0x322296||('get'in _0x322296?!_0x3f7e40['__esModule']:_0x322296['writable']||_0x322296['configurable']))&&(_0x322296={'enumerable':!![],'get':function(){return _0x3f7e40[_0x5ad58c];}}),Object['defineProperty'](_0x12b0fa,_0x34e655,_0x322296);}:function(_0x2e9de4,_0x4ce2b1,_0x3f2cdc,_0x3f5de8){if(_0x3f5de8===undefined)_0x3f5de8=_0x3f2cdc;_0x2e9de4[_0x3f5de8]=_0x4ce2b1[_0x3f2cdc];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x357659,_0x2ed325){Object['defineProperty'](_0x357659,'default',{'enumerable':!![],'value':_0x2ed325});}:function(_0x561067,_0xa5f883){_0x561067['default']=_0xa5f883;}),__importStar=this&&this['__importStar']||(function(){var _0x295786=function(_0x4b3014){return _0x295786=Object['getOwnPropertyNames']||function(_0x53c0ba){var _0x16d642=[];for(var _0x3a05ec in _0x53c0ba)if(Object['prototype']['hasOwnProperty']['call'](_0x53c0ba,_0x3a05ec))_0x16d642[_0x16d642['length']]=_0x3a05ec;return _0x16d642;},_0x295786(_0x4b3014);};return function(_0xc0e2cd){if(_0xc0e2cd&&_0xc0e2cd['__esModule'])return _0xc0e2cd;var _0x329579={};if(_0xc0e2cd!=null){for(var _0x50fa2a=_0x295786(_0xc0e2cd),_0xbb8f38=0x0;_0xbb8f38<_0x50fa2a['length'];_0xbb8f38++)if(_0x50fa2a[_0xbb8f38]!=='default')__createBinding(_0x329579,_0xc0e2cd,_0x50fa2a[_0xbb8f38]);}return __setModuleDefault(_0x329579,_0xc0e2cd),_0x329579;};}()),__importDefault=this&&this['__importDefault']||function(_0x4f61ea){return _0x4f61ea&&_0x4f61ea['__esModule']?_0x4f61ea:{'default':_0x4f61ea};};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['ConnectorRegistry']=void 0x0,exports['getConnectorRegistry']=getConnectorRegistry,exports['searchConnectors']=searchConnectors;const path_1=__importDefault(require('path')),fs=__importStar(require('fs')),os=__importStar(require('os')),BUILTIN_CONNECTORS=[{'id':'github','name':'GitHub','description':'GitHub\x20API\x20integration:\x20repos,\x20issues,\x20PRs,\x20commits','keywords':['github','git','repo','repository','issue','pr','pull\x20request','commit'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-github']},'npmPackage':'@modelcontextprotocol/server-github','category':'development'},{'id':'slack','name':'Slack','description':'Read\x20and\x20send\x20messages,\x20manage\x20channels\x20in\x20Slack','keywords':['slack','chat','message','channel','team'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-slack']},'npmPackage':'@modelcontextprotocol/server-slack','category':'communication'},{'id':'google-drive','name':'Google\x20Drive','description':'Read,\x20create,\x20and\x20manage\x20Google\x20Drive\x20files','keywords':['google\x20drive','gdrive','drive','google','files','docs','sheets'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-gdrive']},'npmPackage':'@modelcontextprotocol/server-gdrive','category':'productivity'},{'id':'google-calendar','name':'Google\x20Calendar','description':'List,\x20create,\x20and\x20manage\x20Google\x20Calendar\x20events','keywords':['google\x20calendar','calendar','gcal','schedule','event','meeting'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-gcal']},'npmPackage':'@modelcontextprotocol/server-gcal','category':'productivity'},{'id':'gmail','name':'Gmail','description':'Read,\x20search,\x20and\x20send\x20Gmail\x20messages','keywords':['gmail','email','mail','message','inbox'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-gmail']},'npmPackage':'@modelcontextprotocol/server-gmail','category':'communication'},{'id':'filesystem','name':'Filesystem','description':'Read,\x20write,\x20and\x20search\x20files\x20on\x20the\x20local\x20filesystem','keywords':['filesystem','files','local','read','write','search','file\x20system'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-filesystem',os['homedir']()]},'npmPackage':'@modelcontextprotocol/server-filesystem','category':'filesystem'},{'id':'postgres','name':'PostgreSQL','description':'Query\x20PostgreSQL\x20databases','keywords':['postgres','postgresql','sql','database','db','psql','query'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-postgres','postgresql://localhost:5432']},'npmPackage':'@modelcontextprotocol/server-postgres','category':'database'},{'id':'sqlite','name':'SQLite','description':'Query\x20SQLite\x20databases','keywords':['sqlite','sql','database','db','sqlite3','query'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-sqlite','sqlite::memory:']},'npmPackage':'@modelcontextprotocol/server-sqlite','category':'database'},{'id':'brave-search','name':'Brave\x20Search','description':'Web\x20search\x20via\x20Brave\x20Search\x20API','keywords':['brave','search','web','internet','google'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-brave-search']},'npmPackage':'@modelcontextprotocol/server-brave-search','category':'search'},{'id':'weather','name':'Weather','description':'Weather\x20forecasts\x20and\x20conditions','keywords':['weather','forecast','climate','temperature','rain'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-weather']},'npmPackage':'@modelcontextprotocol/server-weather','category':'utilities'},{'id':'time','name':'Time','description':'World\x20time,\x20timezones,\x20and\x20date\x20utilities','keywords':['time','timezone','date','clock','world\x20time'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-time']},'npmPackage':'@modelcontextprotocol/server-time','category':'utilities'},{'id':'git','name':'Git','description':'Git\x20repository\x20operations:\x20log,\x20diff,\x20blame,\x20status','keywords':['git','version\x20control','commit','diff','blame','log','status'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-git']},'npmPackage':'@modelcontextprotocol/server-git','category':'development'},{'id':'docker','name':'Docker','description':'Manage\x20Docker\x20containers,\x20images,\x20and\x20volumes','keywords':['docker','container','image','volume','compose'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-docker']},'npmPackage':'@modelcontextprotocol/server-docker','category':'devops'},{'id':'kubernetes','name':'Kubernetes','description':'Query\x20Kubernetes\x20cluster\x20resources','keywords':['kubernetes','k8s','cluster','pod','deployment','service'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-kubernetes']},'npmPackage':'@modelcontextprotocol/server-kubernetes','category':'devops'},{'id':'redis','name':'Redis','description':'Query\x20and\x20manage\x20Redis\x20databases','keywords':['redis','cache','key-value','kv','database'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-redis']},'npmPackage':'@modelcontextprotocol/server-redis','category':'database'},{'id':'mongodb','name':'MongoDB','description':'Query\x20MongoDB\x20collections','keywords':['mongodb','mongo','database','collection','document','nosql'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-mongodb']},'npmPackage':'@modelcontextprotocol/server-mongodb','category':'database'},{'id':'notion','name':'Notion','description':'Read\x20and\x20create\x20Notion\x20pages,\x20databases,\x20and\x20blocks','keywords':['notion','notes','wiki','docs','database','page'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-notion']},'npmPackage':'@modelcontextprotocol/server-notion','category':'productivity'},{'id':'linear','name':'Linear','description':'Manage\x20Linear\x20issues,\x20projects,\x20and\x20teams','keywords':['linear','issue','ticket','project','team','bug'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-linear']},'npmPackage':'@modelcontextprotocol/server-linear','category':'productivity'},{'id':'jira','name':'Jira','description':'Query\x20Jira\x20issues\x20and\x20projects','keywords':['jira','issue','ticket','atlassian','project','bug'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-jira']},'npmPackage':'@modelcontextprotocol/server-jira','category':'productivity'},{'id':'stripe','name':'Stripe','description':'Query\x20Stripe\x20payments,\x20customers,\x20and\x20invoices','keywords':['stripe','payment','billing','customer','invoice','subscription'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-stripe']},'npmPackage':'@modelcontextprotocol/server-stripe','category':'business'},{'id':'figma','name':'Figma','description':'Read\x20Figma\x20files,\x20components,\x20and\x20design\x20tokens','keywords':['figma','design','ui','component','token','fig','figma\x20file'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-figma']},'npmPackage':'@modelcontextprotocol/server-figma','category':'design'},{'id':'github-alerts','name':'GitHub\x20Alerts','description':'Query\x20GitHub\x20security\x20alerts\x20and\x20vulnerabilities','keywords':['github\x20alerts','security','vulnerability','alert','cve'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-github-alerts']},'npmPackage':'@modelcontextprotocol/server-github-alerts','category':'security'},{'id':'semgrep','name':'Semgrep','description':'Run\x20Semgrep\x20security\x20scanning\x20on\x20code','keywords':['semgrep','security','sast','scan','vulnerability','code'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-semgrep']},'npmPackage':'@modelcontextprotocol/server-semgrep','category':'security'},{'id':'kubernetes-read-only','name':'Kubernetes\x20(Read-Only)','description':'Read-only\x20access\x20to\x20Kubernetes\x20cluster\x20resources','keywords':['kubernetes','k8s','cluster','pod','deployment','read-only'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-kubernetes-read-only']},'npmPackage':'@modelcontextprotocol/server-kubernetes-read-only','category':'devops'},{'id':'sequential-thinking','name':'Sequential\x20Thinking','description':'Structured\x20thinking\x20tool\x20for\x20complex\x20reasoning','keywords':['thinking','reasoning','sequential','planning','analysis'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-sequential-thinking']},'npmPackage':'@modelcontextprotocol/server-sequential-thinking','category':'utilities'},{'id':'puppeteer','name':'Puppeteer','description':'Browser\x20automation\x20via\x20Puppeteer\x20-\x20navigate\x20pages,\x20click,\x20screenshot','keywords':['puppeteer','browser','chrome','web','automation','screenshot','scrape'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-puppeteer']},'npmPackage':'@modelcontextprotocol/server-puppeteer','category':'browser'},{'id':'obsidian','name':'Obsidian','description':'Read\x20and\x20manage\x20Obsidian\x20vault\x20notes','keywords':['obsidian','notes','vault','markdown','second\x20brain'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-obsidian']},'npmPackage':'@modelcontextprotocol/server-obsidian','category':'productivity'},{'id':'airbnb','name':'Airbnb','description':'Search\x20Airbnb\x20listings','keywords':['airbnb','travel','listing','accommodation','hotel','rental'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-airbnb']},'npmPackage':'@modelcontextprotocol/server-airbnb','category':'travel'},{'id':'exa','name':'Exa','description':'Web\x20search\x20and\x20content\x20extraction\x20via\x20Exa\x20AI','keywords':['exa','search','web','research','extract'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-exa']},'npmPackage':'@modelcontextprotocol/server-exa','category':'search'},{'id':'tettra','name':'Tettra','description':'Read\x20Tettra\x20knowledge\x20base\x20articles','keywords':['tettra','wiki','knowledge','docs','knowledge\x20base'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-tettra']},'npmPackage':'@modelcontextprotocol/server-tettra','category':'productivity'},{'id':'trayambak-git','name':'Trayambak\x20Git','description':'Git\x20repository\x20operations:\x20status,\x20log,\x20branches,\x20commit,\x20diff,\x20analysis\x20(Python\x20MCP)','keywords':['git','trayambak','version\x20control','commit','diff','blame','log','status'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','git-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','git-server')},'npmPackage':'mcp','category':'development'},{'id':'trayambak-filesystem','name':'Trayambak\x20Filesystem','description':'Safe\x20filesystem\x20operations:\x20read,\x20write,\x20list,\x20delete,\x20copy,\x20file\x20info\x20with\x20sandbox\x20(Python\x20MCP)','keywords':['filesystem','files','local','read','write','search','file\x20system','trayambak'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','file-system-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','file-system-server')},'npmPackage':'mcp','category':'filesystem'},{'id':'trayambak-database','name':'Trayambak\x20Database','description':'SQL\x20database\x20operations:\x20execute\x20queries,\x20create\x20tables,\x20analyze,\x20table\x20info\x20(Python\x20MCP)','keywords':['database','sql','sqlite','query','trayambak'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','database-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','database-server')},'npmPackage':'mcp','category':'database'},{'id':'trayambak-web','name':'Trayambak\x20Web','description':'Web\x20scraping\x20and\x20data\x20extraction:\x20parse\x20HTML,\x20metadata,\x20validate\x20URLs,\x20extract\x20JSON\x20(Python\x20MCP)','keywords':['web','scrape','html','metadata','url','json','trayambak'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','web-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','web-server')},'npmPackage':'mcp','category':'web'},{'id':'trayambak-env','name':'Trayambak\x20Env','description':'Environment\x20variable\x20management:\x20get/set\x20env,\x20load\x20.env,\x20list\x20variables,\x20validate\x20config\x20(Python\x20MCP)','keywords':['env','environment','config','variables','trayambak'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','env-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','env-server')},'npmPackage':'mcp','category':'utilities'}];class ConnectorRegistry{static ['instance']=null;['connectors']=[];['builtinIds']=new Set();['userDir'];constructor(){this['userDir']=path_1['default']['join'](os['homedir'](),'.trayambak','connectors');}static['getInstance'](){return!ConnectorRegistry['instance']&&(ConnectorRegistry['instance']=new ConnectorRegistry()),ConnectorRegistry['instance'];}['load'](){this['connectors']=[...BUILTIN_CONNECTORS],this['builtinIds']=new Set(BUILTIN_CONNECTORS['map'](_0x483abe=>_0x483abe['id']));if(fs['existsSync'](this['userDir'])){const _0x138809=fs['readdirSync'](this['userDir'],{'withFileTypes':!![]});for(const _0x13e1a0 of _0x138809){if(!_0x13e1a0['isFile']()||!_0x13e1a0['name']['endsWith']('.json'))continue;try{const _0x2afad5=fs['readFileSync'](path_1['default']['join'](this['userDir'],_0x13e1a0['name']),'utf8'),_0x4c5027=JSON['parse'](_0x2afad5);_0x4c5027['id']&&_0x4c5027['spec']&&this['connectors']['push']({'id':_0x4c5027['id'],'name':_0x4c5027['name']??_0x4c5027['id'],'description':_0x4c5027['description']??'','keywords':_0x4c5027['keywords']??[],'spec':_0x4c5027['spec'],'npmPackage':_0x4c5027['npmPackage'],'category':_0x4c5027['category']});}catch{}}}return this['connectors'];}['search'](_0x516349){if(!this['connectors']['length'])this['load']();const _0x120677=_0x516349['toLowerCase']()['trim']();if(!_0x120677)return this['connectors'];const _0x21c601=_0x120677['split'](/\s+/);return this['connectors']['map'](_0x3e8b6d=>{const _0x35e66b=(_0x3e8b6d['id']+'\x20'+_0x3e8b6d['name']+'\x20'+_0x3e8b6d['description']+'\x20'+(_0x3e8b6d['keywords']??[])['join']('\x20')+'\x20'+(_0x3e8b6d['category']??''))['toLowerCase']();let _0x577fa6=0x0;for(const _0x3fbb7c of _0x21c601){if(_0x3e8b6d['id']===_0x3fbb7c)_0x577fa6+=0xa;if(_0x3e8b6d['name']['toLowerCase']()===_0x3fbb7c)_0x577fa6+=0x8;if(_0x3e8b6d['keywords']?.['some'](_0x507fd9=>_0x507fd9['toLowerCase']()===_0x3fbb7c))_0x577fa6+=0x6;if(_0x3e8b6d['category']?.['toLowerCase']()===_0x3fbb7c)_0x577fa6+=0x4;if(_0x35e66b['includes'](_0x3fbb7c))_0x577fa6+=0x2;}return{'connector':_0x3e8b6d,'score':_0x577fa6};})['filter'](_0x1c8490=>_0x1c8490['score']>0x0)['sort']((_0x1719b4,_0x254152)=>_0x254152['score']-_0x1719b4['score'])['map'](_0x2ef5fe=>_0x2ef5fe['connector']);}['get'](_0x3bf587){if(!this['connectors']['length'])this['load']();return this['connectors']['find'](_0x498072=>_0x498072['id']===_0x3bf587);}['getByCategory'](_0x210135){if(!this['connectors']['length'])this['load']();return this['connectors']['filter'](_0x4780f1=>_0x4780f1['category']===_0x210135);}['getCategories'](){if(!this['connectors']['length'])this['load']();return[...new Set(this['connectors']['map'](_0x4575ee=>_0x4575ee['category'])['filter'](Boolean))]['sort']();}['register'](_0x2a06e6){const _0x2d77c1=path_1['default']['join'](this['userDir'],_0x2a06e6['id']+'.json');fs['mkdirSync'](this['userDir'],{'recursive':!![]}),fs['writeFileSync'](_0x2d77c1,JSON['stringify'](_0x2a06e6,null,0x2)),!this['connectors']['find'](_0x45f335=>_0x45f335['id']===_0x2a06e6['id'])&&this['connectors']['push'](_0x2a06e6);}['unregister'](_0x1c69df){if(this['builtinIds']['has'](_0x1c69df))return![];const _0x11350f=this['connectors']['findIndex'](_0x43bf34=>_0x43bf34['id']===_0x1c69df);if(_0x11350f<0x0)return![];const _0x132fd5=this['connectors'][_0x11350f];this['connectors']['splice'](_0x11350f,0x1);const _0x3a4fa6=path_1['default']['join'](this['userDir'],_0x132fd5['id']+'.json');if(fs['existsSync'](_0x3a4fa6))fs['unlinkSync'](_0x3a4fa6);return!![];}['getAllIds'](){if(!this['connectors']['length'])this['load']();return this['connectors']['map'](_0x105be0=>_0x105be0['id']);}}exports['ConnectorRegistry']=ConnectorRegistry;function getConnectorRegistry(){return ConnectorRegistry['getInstance']();}function searchConnectors(_0x2e54f3){return getConnectorRegistry()['search'](_0x2e54f3);}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x305722,_0x126fcd,_0xd00946,_0x513542){if(_0x513542===undefined)_0x513542=_0xd00946;var _0x593c92=Object['getOwnPropertyDescriptor'](_0x126fcd,_0xd00946);(!_0x593c92||('get'in _0x593c92?!_0x126fcd['__esModule']:_0x593c92['writable']||_0x593c92['configurable']))&&(_0x593c92={'enumerable':!![],'get':function(){return _0x126fcd[_0xd00946];}}),Object['defineProperty'](_0x305722,_0x513542,_0x593c92);}:function(_0x2cdae8,_0x1ce9d6,_0x47a804,_0x5d14a7){if(_0x5d14a7===undefined)_0x5d14a7=_0x47a804;_0x2cdae8[_0x5d14a7]=_0x1ce9d6[_0x47a804];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1e076d,_0x3e5fe1){Object['defineProperty'](_0x1e076d,'default',{'enumerable':!![],'value':_0x3e5fe1});}:function(_0x12e522,_0xf99b1b){_0x12e522['default']=_0xf99b1b;}),__importStar=this&&this['__importStar']||(function(){var _0x40bd67=function(_0x347618){return _0x40bd67=Object['getOwnPropertyNames']||function(_0x207112){var _0x50a2c2=[];for(var _0x39bfea in _0x207112)if(Object['prototype']['hasOwnProperty']['call'](_0x207112,_0x39bfea))_0x50a2c2[_0x50a2c2['length']]=_0x39bfea;return _0x50a2c2;},_0x40bd67(_0x347618);};return function(_0x3d9675){if(_0x3d9675&&_0x3d9675['__esModule'])return _0x3d9675;var _0x2bb1b5={};if(_0x3d9675!=null){for(var _0xbb1857=_0x40bd67(_0x3d9675),_0x5ec2b2=0x0;_0x5ec2b2<_0xbb1857['length'];_0x5ec2b2++)if(_0xbb1857[_0x5ec2b2]!=='default')__createBinding(_0x2bb1b5,_0x3d9675,_0xbb1857[_0x5ec2b2]);}return __setModuleDefault(_0x2bb1b5,_0x3d9675),_0x2bb1b5;};}()),__importDefault=this&&this['__importDefault']||function(_0x1ab67f){return _0x1ab67f&&_0x1ab67f['__esModule']?_0x1ab67f:{'default':_0x1ab67f};};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['ConnectorRegistry']=void 0x0,exports['getConnectorRegistry']=getConnectorRegistry,exports['searchConnectors']=searchConnectors;const path_1=__importDefault(require('path')),fs=__importStar(require('fs')),os=__importStar(require('os')),BUILTIN_CONNECTORS=[{'id':'github','name':'GitHub','description':'GitHub\x20API\x20integration:\x20repos,\x20issues,\x20PRs,\x20commits','keywords':['github','git','repo','repository','issue','pr','pull\x20request','commit'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-github']},'npmPackage':'@modelcontextprotocol/server-github','category':'development'},{'id':'slack','name':'Slack','description':'Read\x20and\x20send\x20messages,\x20manage\x20channels\x20in\x20Slack','keywords':['slack','chat','message','channel','team'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-slack']},'npmPackage':'@modelcontextprotocol/server-slack','category':'communication'},{'id':'google-drive','name':'Google\x20Drive','description':'Read,\x20create,\x20and\x20manage\x20Google\x20Drive\x20files','keywords':['google\x20drive','gdrive','drive','google','files','docs','sheets'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-gdrive']},'npmPackage':'@modelcontextprotocol/server-gdrive','category':'productivity'},{'id':'google-calendar','name':'Google\x20Calendar','description':'List,\x20create,\x20and\x20manage\x20Google\x20Calendar\x20events','keywords':['google\x20calendar','calendar','gcal','schedule','event','meeting'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-gcal']},'npmPackage':'@modelcontextprotocol/server-gcal','category':'productivity'},{'id':'gmail','name':'Gmail','description':'Read,\x20search,\x20and\x20send\x20Gmail\x20messages','keywords':['gmail','email','mail','message','inbox'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-gmail']},'npmPackage':'@modelcontextprotocol/server-gmail','category':'communication'},{'id':'filesystem','name':'Filesystem','description':'Read,\x20write,\x20and\x20search\x20files\x20on\x20the\x20local\x20filesystem','keywords':['filesystem','files','local','read','write','search','file\x20system'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-filesystem',os['homedir']()]},'npmPackage':'@modelcontextprotocol/server-filesystem','category':'filesystem'},{'id':'postgres','name':'PostgreSQL','description':'Query\x20PostgreSQL\x20databases','keywords':['postgres','postgresql','sql','database','db','psql','query'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-postgres','postgresql://localhost:5432']},'npmPackage':'@modelcontextprotocol/server-postgres','category':'database'},{'id':'sqlite','name':'SQLite','description':'Query\x20SQLite\x20databases','keywords':['sqlite','sql','database','db','sqlite3','query'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-sqlite','sqlite::memory:']},'npmPackage':'@modelcontextprotocol/server-sqlite','category':'database'},{'id':'brave-search','name':'Brave\x20Search','description':'Web\x20search\x20via\x20Brave\x20Search\x20API','keywords':['brave','search','web','internet','google'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-brave-search']},'npmPackage':'@modelcontextprotocol/server-brave-search','category':'search'},{'id':'weather','name':'Weather','description':'Weather\x20forecasts\x20and\x20conditions','keywords':['weather','forecast','climate','temperature','rain'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-weather']},'npmPackage':'@modelcontextprotocol/server-weather','category':'utilities'},{'id':'time','name':'Time','description':'World\x20time,\x20timezones,\x20and\x20date\x20utilities','keywords':['time','timezone','date','clock','world\x20time'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-time']},'npmPackage':'@modelcontextprotocol/server-time','category':'utilities'},{'id':'git','name':'Git','description':'Git\x20repository\x20operations:\x20log,\x20diff,\x20blame,\x20status','keywords':['git','version\x20control','commit','diff','blame','log','status'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-git']},'npmPackage':'@modelcontextprotocol/server-git','category':'development'},{'id':'docker','name':'Docker','description':'Manage\x20Docker\x20containers,\x20images,\x20and\x20volumes','keywords':['docker','container','image','volume','compose'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-docker']},'npmPackage':'@modelcontextprotocol/server-docker','category':'devops'},{'id':'kubernetes','name':'Kubernetes','description':'Query\x20Kubernetes\x20cluster\x20resources','keywords':['kubernetes','k8s','cluster','pod','deployment','service'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-kubernetes']},'npmPackage':'@modelcontextprotocol/server-kubernetes','category':'devops'},{'id':'redis','name':'Redis','description':'Query\x20and\x20manage\x20Redis\x20databases','keywords':['redis','cache','key-value','kv','database'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-redis']},'npmPackage':'@modelcontextprotocol/server-redis','category':'database'},{'id':'mongodb','name':'MongoDB','description':'Query\x20MongoDB\x20collections','keywords':['mongodb','mongo','database','collection','document','nosql'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-mongodb']},'npmPackage':'@modelcontextprotocol/server-mongodb','category':'database'},{'id':'notion','name':'Notion','description':'Read\x20and\x20create\x20Notion\x20pages,\x20databases,\x20and\x20blocks','keywords':['notion','notes','wiki','docs','database','page'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-notion']},'npmPackage':'@modelcontextprotocol/server-notion','category':'productivity'},{'id':'linear','name':'Linear','description':'Manage\x20Linear\x20issues,\x20projects,\x20and\x20teams','keywords':['linear','issue','ticket','project','team','bug'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-linear']},'npmPackage':'@modelcontextprotocol/server-linear','category':'productivity'},{'id':'jira','name':'Jira','description':'Query\x20Jira\x20issues\x20and\x20projects','keywords':['jira','issue','ticket','atlassian','project','bug'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-jira']},'npmPackage':'@modelcontextprotocol/server-jira','category':'productivity'},{'id':'stripe','name':'Stripe','description':'Query\x20Stripe\x20payments,\x20customers,\x20and\x20invoices','keywords':['stripe','payment','billing','customer','invoice','subscription'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-stripe']},'npmPackage':'@modelcontextprotocol/server-stripe','category':'business'},{'id':'figma','name':'Figma','description':'Read\x20Figma\x20files,\x20components,\x20and\x20design\x20tokens','keywords':['figma','design','ui','component','token','fig','figma\x20file'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-figma']},'npmPackage':'@modelcontextprotocol/server-figma','category':'design'},{'id':'github-alerts','name':'GitHub\x20Alerts','description':'Query\x20GitHub\x20security\x20alerts\x20and\x20vulnerabilities','keywords':['github\x20alerts','security','vulnerability','alert','cve'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-github-alerts']},'npmPackage':'@modelcontextprotocol/server-github-alerts','category':'security'},{'id':'semgrep','name':'Semgrep','description':'Run\x20Semgrep\x20security\x20scanning\x20on\x20code','keywords':['semgrep','security','sast','scan','vulnerability','code'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-semgrep']},'npmPackage':'@modelcontextprotocol/server-semgrep','category':'security'},{'id':'kubernetes-read-only','name':'Kubernetes\x20(Read-Only)','description':'Read-only\x20access\x20to\x20Kubernetes\x20cluster\x20resources','keywords':['kubernetes','k8s','cluster','pod','deployment','read-only'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-kubernetes-read-only']},'npmPackage':'@modelcontextprotocol/server-kubernetes-read-only','category':'devops'},{'id':'sequential-thinking','name':'Sequential\x20Thinking','description':'Structured\x20thinking\x20tool\x20for\x20complex\x20reasoning','keywords':['thinking','reasoning','sequential','planning','analysis'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-sequential-thinking']},'npmPackage':'@modelcontextprotocol/server-sequential-thinking','category':'utilities'},{'id':'puppeteer','name':'Puppeteer','description':'Browser\x20automation\x20via\x20Puppeteer\x20-\x20navigate\x20pages,\x20click,\x20screenshot','keywords':['puppeteer','browser','chrome','web','automation','screenshot','scrape'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-puppeteer']},'npmPackage':'@modelcontextprotocol/server-puppeteer','category':'browser'},{'id':'obsidian','name':'Obsidian','description':'Read\x20and\x20manage\x20Obsidian\x20vault\x20notes','keywords':['obsidian','notes','vault','markdown','second\x20brain'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-obsidian']},'npmPackage':'@modelcontextprotocol/server-obsidian','category':'productivity'},{'id':'airbnb','name':'Airbnb','description':'Search\x20Airbnb\x20listings','keywords':['airbnb','travel','listing','accommodation','hotel','rental'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-airbnb']},'npmPackage':'@modelcontextprotocol/server-airbnb','category':'travel'},{'id':'exa','name':'Exa','description':'Web\x20search\x20and\x20content\x20extraction\x20via\x20Exa\x20AI','keywords':['exa','search','web','research','extract'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-exa']},'npmPackage':'@modelcontextprotocol/server-exa','category':'search'},{'id':'tettra','name':'Tettra','description':'Read\x20Tettra\x20knowledge\x20base\x20articles','keywords':['tettra','wiki','knowledge','docs','knowledge\x20base'],'spec':{'command':['npx','-y','@modelcontextprotocol/server-tettra']},'npmPackage':'@modelcontextprotocol/server-tettra','category':'productivity'},{'id':'trayambak-git','name':'Trayambak\x20Git','description':'Git\x20repository\x20operations:\x20status,\x20log,\x20branches,\x20commit,\x20diff,\x20analysis\x20(Python\x20MCP)','keywords':['git','trayambak','version\x20control','commit','diff','blame','log','status'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','git-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','git-server')},'npmPackage':'mcp','category':'development'},{'id':'trayambak-filesystem','name':'Trayambak\x20Filesystem','description':'Safe\x20filesystem\x20operations:\x20read,\x20write,\x20list,\x20delete,\x20copy,\x20file\x20info\x20with\x20sandbox\x20(Python\x20MCP)','keywords':['filesystem','files','local','read','write','search','file\x20system','trayambak'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','file-system-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','file-system-server')},'npmPackage':'mcp','category':'filesystem'},{'id':'trayambak-database','name':'Trayambak\x20Database','description':'SQL\x20database\x20operations:\x20execute\x20queries,\x20create\x20tables,\x20analyze,\x20table\x20info\x20(Python\x20MCP)','keywords':['database','sql','sqlite','query','trayambak'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','database-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','database-server')},'npmPackage':'mcp','category':'database'},{'id':'trayambak-web','name':'Trayambak\x20Web','description':'Web\x20scraping\x20and\x20data\x20extraction:\x20parse\x20HTML,\x20metadata,\x20validate\x20URLs,\x20extract\x20JSON\x20(Python\x20MCP)','keywords':['web','scrape','html','metadata','url','json','trayambak'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','web-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','web-server')},'npmPackage':'mcp','category':'web'},{'id':'trayambak-env','name':'Trayambak\x20Env','description':'Environment\x20variable\x20management:\x20get/set\x20env,\x20load\x20.env,\x20list\x20variables,\x20validate\x20config\x20(Python\x20MCP)','keywords':['env','environment','config','variables','trayambak'],'spec':{'command':['python',path_1['default']['join'](__dirname,'..','..','..','..','servers','env-server','server.py')],'cwd':path_1['default']['join'](__dirname,'..','..','..','..','servers','env-server')},'npmPackage':'mcp','category':'utilities'}];class ConnectorRegistry{static ['instance']=null;['connectors']=[];['builtinIds']=new Set();['userDir'];constructor(){this['userDir']=path_1['default']['join'](os['homedir'](),'.trayambak','connectors');}static['getInstance'](){return!ConnectorRegistry['instance']&&(ConnectorRegistry['instance']=new ConnectorRegistry()),ConnectorRegistry['instance'];}['load'](){this['connectors']=[...BUILTIN_CONNECTORS],this['builtinIds']=new Set(BUILTIN_CONNECTORS['map'](_0x272762=>_0x272762['id']));if(fs['existsSync'](this['userDir'])){const _0x585bf9=fs['readdirSync'](this['userDir'],{'withFileTypes':!![]});for(const _0x1322c8 of _0x585bf9){if(!_0x1322c8['isFile']()||!_0x1322c8['name']['endsWith']('.json'))continue;try{const _0x573a48=fs['readFileSync'](path_1['default']['join'](this['userDir'],_0x1322c8['name']),'utf8'),_0x3866fc=JSON['parse'](_0x573a48);_0x3866fc['id']&&_0x3866fc['spec']&&this['connectors']['push']({'id':_0x3866fc['id'],'name':_0x3866fc['name']??_0x3866fc['id'],'description':_0x3866fc['description']??'','keywords':_0x3866fc['keywords']??[],'spec':_0x3866fc['spec'],'npmPackage':_0x3866fc['npmPackage'],'category':_0x3866fc['category']});}catch{}}}return this['connectors'];}['search'](_0x325068){if(!this['connectors']['length'])this['load']();const _0x13027b=_0x325068['toLowerCase']()['trim']();if(!_0x13027b)return this['connectors'];const _0x146569=_0x13027b['split'](/\s+/);return this['connectors']['map'](_0x5c4c3a=>{const _0x1585e0=(_0x5c4c3a['id']+'\x20'+_0x5c4c3a['name']+'\x20'+_0x5c4c3a['description']+'\x20'+(_0x5c4c3a['keywords']??[])['join']('\x20')+'\x20'+(_0x5c4c3a['category']??''))['toLowerCase']();let _0x4fded1=0x0;for(const _0x2690b3 of _0x146569){if(_0x5c4c3a['id']===_0x2690b3)_0x4fded1+=0xa;if(_0x5c4c3a['name']['toLowerCase']()===_0x2690b3)_0x4fded1+=0x8;if(_0x5c4c3a['keywords']?.['some'](_0x3686c6=>_0x3686c6['toLowerCase']()===_0x2690b3))_0x4fded1+=0x6;if(_0x5c4c3a['category']?.['toLowerCase']()===_0x2690b3)_0x4fded1+=0x4;if(_0x1585e0['includes'](_0x2690b3))_0x4fded1+=0x2;}return{'connector':_0x5c4c3a,'score':_0x4fded1};})['filter'](_0x53695d=>_0x53695d['score']>0x0)['sort']((_0x341c65,_0x18293b)=>_0x18293b['score']-_0x341c65['score'])['map'](_0x3b12cc=>_0x3b12cc['connector']);}['get'](_0x1829ce){if(!this['connectors']['length'])this['load']();return this['connectors']['find'](_0x5ed351=>_0x5ed351['id']===_0x1829ce);}['getByCategory'](_0x20274f){if(!this['connectors']['length'])this['load']();return this['connectors']['filter'](_0x3627be=>_0x3627be['category']===_0x20274f);}['getCategories'](){if(!this['connectors']['length'])this['load']();return[...new Set(this['connectors']['map'](_0x33e21b=>_0x33e21b['category'])['filter'](Boolean))]['sort']();}['register'](_0x470902){const _0x2e2ff9=path_1['default']['join'](this['userDir'],_0x470902['id']+'.json');fs['mkdirSync'](this['userDir'],{'recursive':!![]}),fs['writeFileSync'](_0x2e2ff9,JSON['stringify'](_0x470902,null,0x2)),!this['connectors']['find'](_0x5ed26c=>_0x5ed26c['id']===_0x470902['id'])&&this['connectors']['push'](_0x470902);}['unregister'](_0x10a211){if(this['builtinIds']['has'](_0x10a211))return![];const _0x2ceb0f=this['connectors']['findIndex'](_0x309e45=>_0x309e45['id']===_0x10a211);if(_0x2ceb0f<0x0)return![];const _0x4377a4=this['connectors'][_0x2ceb0f];this['connectors']['splice'](_0x2ceb0f,0x1);const _0x569f45=path_1['default']['join'](this['userDir'],_0x4377a4['id']+'.json');if(fs['existsSync'](_0x569f45))fs['unlinkSync'](_0x569f45);return!![];}['getAllIds'](){if(!this['connectors']['length'])this['load']();return this['connectors']['map'](_0x24aed1=>_0x24aed1['id']);}}exports['ConnectorRegistry']=ConnectorRegistry;function getConnectorRegistry(){return ConnectorRegistry['getInstance']();}function searchConnectors(_0x249603){return getConnectorRegistry()['search'](_0x249603);}