@skt-ai-labs/trayambak-cli 0.6.2 → 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.
- package/README.md +20 -18
- package/dist/apps/cli/src/command-registry.js +1 -1
- package/dist/apps/cli/src/commands/agent.js +1 -1
- package/dist/apps/cli/src/commands/archive.js +1 -1
- package/dist/apps/cli/src/commands/checkpoint.js +1 -1
- package/dist/apps/cli/src/commands/command-dispatch.js +1 -1
- package/dist/apps/cli/src/commands/commit.js +1 -1
- package/dist/apps/cli/src/commands/compact.js +1 -1
- package/dist/apps/cli/src/commands/config.js +1 -1
- package/dist/apps/cli/src/commands/db.js +1 -1
- package/dist/apps/cli/src/commands/doctor.js +1 -1
- package/dist/apps/cli/src/commands/download.js +1 -1
- package/dist/apps/cli/src/commands/exec.js +1 -1
- package/dist/apps/cli/src/commands/index.js +1 -1
- package/dist/apps/cli/src/commands/login.js +1 -1
- package/dist/apps/cli/src/commands/manager.js +1 -1
- package/dist/apps/cli/src/commands/marketplace.js +1 -1
- package/dist/apps/cli/src/commands/mcp.js +1 -1
- package/dist/apps/cli/src/commands/mode.js +1 -1
- package/dist/apps/cli/src/commands/models.js +1 -1
- package/dist/apps/cli/src/commands/plan.js +1 -1
- package/dist/apps/cli/src/commands/pr.js +1 -1
- package/dist/apps/cli/src/commands/registry.js +1 -1
- package/dist/apps/cli/src/commands/run.js +1 -1
- package/dist/apps/cli/src/commands/sandbox.js +1 -1
- package/dist/apps/cli/src/commands/serve.js +1 -1
- package/dist/apps/cli/src/commands/session-export.js +1 -1
- package/dist/apps/cli/src/commands/session-resume.js +1 -1
- package/dist/apps/cli/src/commands/shortcuts.js +1 -1
- package/dist/apps/cli/src/commands/slash-command.js +1 -1
- package/dist/apps/cli/src/commands/stats.js +1 -1
- package/dist/apps/cli/src/commands/streaming-gate.js +1 -1
- package/dist/apps/cli/src/commands/task.js +1 -1
- package/dist/apps/cli/src/commands/todo.js +1 -1
- package/dist/apps/cli/src/commands/uninstall.js +1 -1
- package/dist/apps/cli/src/commands/upgrade.js +1 -1
- package/dist/apps/cli/src/commands/worktree.js +1 -1
- package/dist/apps/cli/src/flags.js +1 -1
- package/dist/apps/cli/src/index.js +1 -1
- package/dist/apps/cli/src/integration/board.js +1 -1
- package/dist/apps/cli/src/integration/git-refs.js +1 -1
- package/dist/apps/cli/src/integration/index.js +1 -1
- package/dist/apps/cli/src/integration/indexing.js +1 -1
- package/dist/apps/cli/src/integration/notebook.js +1 -1
- package/dist/apps/cli/src/integration/parent-watchdog.js +1 -1
- package/dist/apps/cli/src/integration/plan.js +1 -1
- package/dist/apps/cli/src/integration/presence.js +1 -1
- package/dist/apps/cli/src/integration/project-id.js +1 -1
- package/dist/apps/cli/src/integration/rules.js +1 -1
- package/dist/apps/cli/src/integration/sandbox.js +1 -1
- package/dist/apps/cli/src/integration/task-resume.js +1 -1
- package/dist/apps/cli/src/integration/text-stream.js +1 -1
- package/dist/apps/cli/src/integration/unique-id.js +1 -1
- package/dist/apps/cli/src/integration/watcher.js +1 -1
- package/dist/apps/cli/src/logger.js +1 -1
- package/dist/apps/cli/src/session/index.js +1 -1
- package/dist/apps/cli/src/session/session-compaction.js +1 -1
- package/dist/apps/cli/src/session/session-continuation.js +1 -1
- package/dist/apps/cli/src/session/session-control.js +1 -1
- package/dist/apps/cli/src/session/session-fork.js +1 -1
- package/dist/apps/cli/src/session/session-manager.js +1 -1
- package/dist/apps/cli/src/session/session-transcript.js +1 -1
- package/dist/apps/cli/src/tui/index.js +1 -1
- package/dist/apps/cli/src/tui/tui-features.js +1 -1
- package/dist/apps/cli/src/version.js +1 -1
- package/dist/apps/runtime/src/agent/agent-loop.js +1 -1
- package/dist/apps/runtime/src/agent/agent.js +1 -1
- package/dist/apps/runtime/src/agent/auto-pilot.js +1 -1
- package/dist/apps/runtime/src/agent/loop-test-harness.js +1 -1
- package/dist/apps/runtime/src/agent/review-init.js +1 -1
- package/dist/apps/runtime/src/agent/sota.js +1 -1
- package/dist/apps/runtime/src/agent/specialist-agents.js +1 -1
- package/dist/apps/runtime/src/artifacts/artifact-manager.js +1 -1
- package/dist/apps/runtime/src/checkpoints.js +1 -1
- package/dist/apps/runtime/src/compaction.js +1 -1
- package/dist/apps/runtime/src/config.js +1 -1
- package/dist/apps/runtime/src/controller/controller.js +1 -1
- package/dist/apps/runtime/src/controller/executor.js +1 -1
- package/dist/apps/runtime/src/controller/reviewer.js +1 -1
- package/dist/apps/runtime/src/controller/roles.js +1 -1
- package/dist/apps/runtime/src/controller/router.js +1 -1
- package/dist/apps/runtime/src/controller/state.js +1 -1
- package/dist/apps/runtime/src/developer-mode/bug-fix-auto.js +1 -1
- package/dist/apps/runtime/src/developer-mode/developer-mode.js +1 -1
- package/dist/apps/runtime/src/developer-mode/rag-cache.js +1 -1
- package/dist/apps/runtime/src/developer-mode/sota-mode.js +1 -1
- package/dist/apps/runtime/src/developer-mode/subagent-orchestrator.js +1 -1
- package/dist/apps/runtime/src/evidence/evidence-store.js +1 -1
- package/dist/apps/runtime/src/github-auth.js +1 -1
- package/dist/apps/runtime/src/goals.js +1 -1
- package/dist/apps/runtime/src/index.js +1 -1
- package/dist/apps/runtime/src/knowledge/knowledge-gate.js +1 -1
- package/dist/apps/runtime/src/license.js +1 -1
- package/dist/apps/runtime/src/llama-cpp-bin.js +1 -1
- package/dist/apps/runtime/src/mistakes/mistake-detector.js +1 -1
- package/dist/apps/runtime/src/notifications.js +1 -1
- package/dist/apps/runtime/src/planner/planner.js +1 -1
- package/dist/apps/runtime/src/prompt/auto-title.js +1 -1
- package/dist/apps/runtime/src/prompt/enhance-prompt.js +1 -1
- package/dist/apps/runtime/src/prompt/power-prompt.js +1 -1
- package/dist/apps/runtime/src/prompt/rules.js +1 -1
- package/dist/apps/runtime/src/repetition/repetition-detector.js +1 -1
- package/dist/apps/runtime/src/self-improvement.js +1 -1
- package/dist/apps/runtime/src/session/session.js +1 -1
- package/dist/apps/runtime/src/tools/artifacts/artifact.js +1 -1
- package/dist/apps/runtime/src/tools/checkpoint/checkpoint.js +1 -1
- package/dist/apps/runtime/src/tools/checkpoint/rewind.js +1 -1
- package/dist/apps/runtime/src/tools/code/codemode.js +1 -1
- package/dist/apps/runtime/src/tools/code/fim.js +1 -1
- package/dist/apps/runtime/src/tools/code/next-edit.js +1 -1
- package/dist/apps/runtime/src/tools/code-search/code-search.js +1 -1
- package/dist/apps/runtime/src/tools/code-search/semantic-search.js +1 -1
- package/dist/apps/runtime/src/tools/code-search/symbols.js +1 -1
- package/dist/apps/runtime/src/tools/command-exec/bash.js +1 -1
- package/dist/apps/runtime/src/tools/command-exec/terminal.js +1 -1
- package/dist/apps/runtime/src/tools/commands/commands.js +1 -1
- package/dist/apps/runtime/src/tools/custom/custom-tools.js +1 -1
- package/dist/apps/runtime/src/tools/diagnostics/diagnostics-tool.js +1 -1
- package/dist/apps/runtime/src/tools/diagnostics/tsc-diagnostics.js +1 -1
- package/dist/apps/runtime/src/tools/directory/list-dir.js +1 -1
- package/dist/apps/runtime/src/tools/file-edit/edit-file.js +1 -1
- package/dist/apps/runtime/src/tools/file-edit/fs-walk.js +1 -1
- package/dist/apps/runtime/src/tools/file-edit/fuzzy-match.js +1 -1
- package/dist/apps/runtime/src/tools/file-edit/read-file.js +1 -1
- package/dist/apps/runtime/src/tools/file-edit/write-file.js +1 -1
- package/dist/apps/runtime/src/tools/github/github.js +1 -1
- package/dist/apps/runtime/src/tools/globber/glob.js +1 -1
- package/dist/apps/runtime/src/tools/hook-exec.js +1 -1
- package/dist/apps/runtime/src/tools/index.js +1 -1
- package/dist/apps/runtime/src/tools/manifest/read-manifest.js +1 -1
- package/dist/apps/runtime/src/tools/marketplace/marketplace.js +1 -1
- package/dist/apps/runtime/src/tools/mcp/mcp-install.js +1 -1
- package/dist/apps/runtime/src/tools/mcp/mcp-runner-tool.js +1 -1
- package/dist/apps/runtime/src/tools/mcp/mcp.js +1 -1
- package/dist/apps/runtime/src/tools/mcp/registry.js +1 -1
- package/dist/apps/runtime/src/tools/mcp/tool-search.js +1 -1
- package/dist/apps/runtime/src/tools/memory/dream.js +1 -1
- package/dist/apps/runtime/src/tools/memory/memory.js +1 -1
- package/dist/apps/runtime/src/tools/mode/mode.js +1 -1
- package/dist/apps/runtime/src/tools/pentest/pentest-tools.js +1 -1
- package/dist/apps/runtime/src/tools/pentest/security-tool-registry.js +1 -1
- package/dist/apps/runtime/src/tools/planning/todo.js +1 -1
- package/dist/apps/runtime/src/tools/planning/todoread.js +1 -1
- package/dist/apps/runtime/src/tools/regex/grep.js +1 -1
- package/dist/apps/runtime/src/tools/search/ripgrep.js +1 -1
- package/dist/apps/runtime/src/tools/skills/skill-core.js +1 -1
- package/dist/apps/runtime/src/tools/skills/skill-loading.js +1 -1
- package/dist/apps/runtime/src/tools/skills/skill-model.js +1 -1
- package/dist/apps/runtime/src/tools/skills/skill-parser.js +1 -1
- package/dist/apps/runtime/src/tools/skills/skill-selection.js +1 -1
- package/dist/apps/runtime/src/tools/skills/skills.js +1 -1
- package/dist/apps/runtime/src/tools/text/csv.js +1 -1
- package/dist/apps/runtime/src/tools/text/diff-render.js +1 -1
- package/dist/apps/runtime/src/tools/text/diff.js +1 -1
- package/dist/apps/runtime/src/tools/text/summarize.js +1 -1
- package/dist/apps/runtime/src/tools/text/yaml.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/agent-catalog.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/agent-manager.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/agent.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/ask-question.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/cron.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/debate.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/fleet.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/generate-agent.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/monitor.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/notebook-edit.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/parallel-execute.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/parallel-review.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/rules.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/send-message.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/sota-solve.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/swarm.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/tasks.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/team.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/workflow.js +1 -1
- package/dist/apps/runtime/src/tools/trayambak/worktree.js +1 -1
- package/dist/apps/runtime/src/tools/types.js +1 -1
- package/dist/apps/runtime/src/tools/web/multi-search.js +1 -1
- package/dist/apps/runtime/src/tools/web/web-search.js +1 -1
- package/dist/apps/runtime/src/tools/web/webbrowse.js +1 -1
- package/dist/apps/runtime/src/tools/web/webfetch.js +1 -1
- package/dist/apps/runtime/src/update/auto-update.js +1 -1
- package/dist/packages/acp/src/index.js +1 -1
- package/dist/packages/approval/src/index.js +1 -1
- package/dist/packages/checkpoints/src/index.js +1 -1
- package/dist/packages/cli/src/commands/registry.js +1 -1
- package/dist/packages/client/src/index.js +1 -1
- package/dist/packages/coding-agent/src/index.js +1 -1
- package/dist/packages/core/src/agent_communication.js +1 -1
- package/dist/packages/core/src/agent_registry.js +1 -1
- package/dist/packages/core/src/agents_md.js +1 -1
- package/dist/packages/core/src/analytics.js +1 -1
- package/dist/packages/core/src/approval.js +1 -1
- package/dist/packages/core/src/auth.js +1 -1
- package/dist/packages/core/src/context/compactor.js +1 -1
- package/dist/packages/core/src/cron/scheduler.js +1 -1
- package/dist/packages/core/src/curator/librarian.js +1 -1
- package/dist/packages/core/src/env_filter.js +1 -1
- package/dist/packages/core/src/extension_api.js +1 -1
- package/dist/packages/core/src/feature_flags.js +1 -1
- package/dist/packages/core/src/hook_runtime.js +1 -1
- package/dist/packages/core/src/i18n.js +1 -1
- package/dist/packages/core/src/memory/manager.js +1 -1
- package/dist/packages/core/src/memory/provider.js +1 -1
- package/dist/packages/core/src/plan_mode.js +1 -1
- package/dist/packages/core/src/process.js +1 -1
- package/dist/packages/core/src/providers/manager.js +1 -1
- package/dist/packages/core/src/providers/registry.js +1 -1
- package/dist/packages/core/src/rollout_budget.js +1 -1
- package/dist/packages/core/src/secrets.js +1 -1
- package/dist/packages/core/src/session_store.js +1 -1
- package/dist/packages/core/src/state_db.js +1 -1
- package/dist/packages/core/src/subagents.js +1 -1
- package/dist/packages/core/src/token_budget.js +1 -1
- package/dist/packages/core/src/toolsets/arsenal.js +1 -1
- package/dist/packages/core/src/validate.js +1 -1
- package/dist/packages/execpolicy/src/policy.js +1 -1
- package/dist/packages/function/src/index.js +1 -1
- package/dist/packages/harness/src/index.js +1 -1
- package/dist/packages/mcp/src/index.js +1 -1
- package/dist/packages/mcp/src/oauth-callback.js +1 -1
- package/dist/packages/mcp/src/oauth.js +1 -1
- package/dist/packages/mcp/src/spawn-resolve.js +1 -1
- package/dist/packages/mcp-server/src/index.js +1 -1
- package/dist/packages/modes/src/index.js +1 -1
- package/dist/packages/protocol/src/events.js +1 -1
- package/dist/packages/protocol/src/messages.js +1 -1
- package/dist/packages/protocol/src/permission-rules.js +1 -1
- package/dist/packages/protocol/src/permissions.js +1 -1
- package/dist/packages/protocol/src/tools.js +1 -1
- package/dist/packages/protocol/src/util/url.js +1 -1
- package/dist/packages/provider/src/anthropic.js +1 -1
- package/dist/packages/provider/src/catalog.js +1 -1
- package/dist/packages/provider/src/custom.js +1 -1
- package/dist/packages/provider/src/faux-stream.js +1 -1
- package/dist/packages/provider/src/google.js +1 -1
- package/dist/packages/provider/src/huggingface.js +1 -1
- package/dist/packages/provider/src/index.js +1 -1
- package/dist/packages/provider/src/llama-cpp.js +1 -1
- package/dist/packages/provider/src/nvidia.js +1 -1
- package/dist/packages/provider/src/ollama.js +1 -1
- package/dist/packages/provider/src/openai.js +1 -1
- package/dist/packages/provider/src/types.js +1 -1
- package/dist/packages/provider/src/xai.js +1 -1
- package/dist/packages/sandbox/src/gate.js +1 -1
- package/dist/packages/sandbox/src/index.js +1 -1
- package/dist/packages/sandbox/src/spawn.js +1 -1
- package/dist/packages/sandbox/src/types.js +1 -1
- package/dist/packages/sandbox/src/violation.js +1 -1
- package/dist/packages/schema/src/index.js +1 -1
- package/dist/packages/sdk/src/index.js +1 -1
- package/dist/packages/server/src/cors.js +1 -1
- package/dist/packages/server/src/daemon.js +1 -1
- package/dist/packages/server/src/github-app.js +1 -1
- package/dist/packages/server/src/github-autofix.js +1 -1
- package/dist/packages/server/src/github-jobs.js +1 -1
- package/dist/packages/server/src/github-oauth.js +1 -1
- package/dist/packages/server/src/index.js +1 -1
- package/dist/packages/server/src/install-ps1.js +1 -1
- package/dist/packages/server/src/license-store.js +1 -1
- package/dist/packages/session-backends/src/index.js +1 -1
- package/dist/packages/session-backends/src/transcript.js +1 -1
- package/dist/packages/telemetry/src/index.js +1 -1
- package/dist/packages/tui/src/app/app-state.js +1 -1
- package/dist/packages/tui/src/app/events.js +1 -1
- package/dist/packages/tui/src/approval-notification.js +1 -1
- package/dist/packages/tui/src/bottom_pane/composer.js +1 -1
- package/dist/packages/tui/src/bottom_pane/index.js +1 -1
- package/dist/packages/tui/src/chatwidget/chat-widget.js +1 -1
- package/dist/packages/tui/src/dialogs.js +1 -1
- package/dist/packages/tui/src/index.js +1 -1
- package/dist/packages/tui/src/ink-app/glyphs.js +1 -1
- package/dist/packages/tui/src/ink-app/utils/stringWidth.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/AgentPicker.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/App.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/CommandPalette.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/ExecToolCallItem.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/Footer.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/GroupedToolUseContent.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/MCPToolCallItem.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/MessageList.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/MessageResponse.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/MessageRow.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/ModelPicker.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/PermissionOverlay.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/PromptInput.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/ProviderPicker.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/SandboxSetup.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/SessionPicker.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/Sidebar.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/Spinner.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/SplashScreen.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/SubagentPanel.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/SubagentRow.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/SwarmToolCallItem.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/ThemePicker.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/ToolCallItem.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/ToolUseLoader.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/TrayambakLogo.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolCanceledMessage.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolErrorMessage.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolRejectMessage.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolResultMessage.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolSuccessMessage.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/WelcomeScreen.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/WhichKey.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/app-bootstrap.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/clipboard.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/command-palette.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/file-mention.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/footer-fit.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/fuzzy.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/glyphs.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/index.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/keys.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/mode-stack.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/model-picker.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/mouse-input.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/prompt-files.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/provider-model-support.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/resize-guard.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/restore-messages.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/scroll-math.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/session-picker-actions.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/sidebar-data.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/skt-themes.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/stdin-sanitizer.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/subagent-view.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/syntax-highlight.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/terminal-notify.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/text-format.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/theme.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/themeColors.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/types.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/use-border-pulse.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/useAppInput.js +1 -1
- package/dist/packages/tui/src/ink-app-esm/utils/stringWidth.js +1 -1
- package/dist/packages/tui/src/keybindings.js +1 -1
- package/dist/packages/tui/src/keys.js +1 -1
- package/dist/packages/tui/src/notifications.js +1 -1
- package/dist/packages/tui/src/premium-ui.js +1 -1
- package/dist/packages/tui/src/stdin-buffer.js +1 -1
- package/dist/packages/tui/src/terminal-ui.js +1 -1
- package/dist/packages/tui/src/tui/terminal.js +1 -1
- package/dist/packages/tui/src/ui/box.js +1 -1
- package/dist/packages/tui/src/ui/dialog.js +1 -1
- package/dist/packages/tui/src/ui/footer-mode.js +1 -1
- package/dist/packages/tui/src/ui/footer.js +1 -1
- package/dist/packages/tui/src/ui/key-hint.js +1 -1
- package/dist/packages/tui/src/ui/spinner.js +1 -1
- package/dist/packages/tui/src/ui/theme.js +1 -1
- package/dist/packages/tui/src/ui/toast.js +1 -1
- package/dist/packages/tui/src/ui/tool-display.js +1 -1
- package/dist/packages/tui/src/ui/tool-palette.js +1 -1
- package/dist/skt/0-points/points.js +1 -1
- package/dist/skt/1-errors/mistake.js +1 -1
- package/dist/skt/1-errors/penalty.js +1 -1
- package/dist/skt/10-upload/upload.js +1 -1
- package/dist/skt/11-ui/components.js +1 -1
- package/dist/skt/12-control/content-control.js +1 -1
- package/dist/skt/12-control/hallucination.js +1 -1
- package/dist/skt/12-control/points.js +1 -1
- package/dist/skt/12-control/repetition.js +1 -1
- package/dist/skt/12-control/verification.js +1 -1
- package/dist/skt/13-healing/ast-validator.js +1 -1
- package/dist/skt/13-healing/healing-controller.js +1 -1
- package/dist/skt/13-healing/journal.js +1 -1
- package/dist/skt/13-healing/rollback.js +1 -1
- package/dist/skt/13-healing/scratchpad.js +1 -1
- package/dist/skt/13-healing/subprocess.js +1 -1
- package/dist/skt/13-healing/verify.js +1 -1
- package/dist/skt/14-hooks/codec.js +1 -1
- package/dist/skt/14-hooks/events.js +1 -1
- package/dist/skt/14-hooks/matcher.js +1 -1
- package/dist/skt/14-hooks/merge.js +1 -1
- package/dist/skt/14-hooks/runner.js +1 -1
- package/dist/skt/14-hooks/types.js +1 -1
- package/dist/skt/3-user/instructions.js +1 -1
- package/dist/skt/4-mem/memory.js +1 -1
- package/dist/skt/5-eval/cot-chain.js +1 -1
- package/dist/skt/5-eval/cot.js +1 -1
- package/dist/skt/5-eval/eval.js +1 -1
- package/dist/skt/6-u/improvements.js +1 -1
- package/dist/skt/6-u/reward.js +1 -1
- package/dist/skt/7-cli/autorepair.js +1 -1
- package/dist/skt/7-cli/clibugs.js +1 -1
- package/dist/skt/7-cli/reinstall.js +1 -1
- package/dist/skt/7-cli/reset.js +1 -1
- package/dist/skt/9-session/session.js +1 -1
- package/dist/skt/context.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x5f1a55,_0xc085f3,_0x2bc03b,_0xc2baa3){if(_0xc2baa3===undefined)_0xc2baa3=_0x2bc03b;var _0x597ec1=Object['getOwnPropertyDescriptor'](_0xc085f3,_0x2bc03b);(!_0x597ec1||('get'in _0x597ec1?!_0xc085f3['__esModule']:_0x597ec1['writable']||_0x597ec1['configurable']))&&(_0x597ec1={'enumerable':!![],'get':function(){return _0xc085f3[_0x2bc03b];}}),Object['defineProperty'](_0x5f1a55,_0xc2baa3,_0x597ec1);}:function(_0x569591,_0x5d8feb,_0x48b072,_0x4186ff){if(_0x4186ff===undefined)_0x4186ff=_0x48b072;_0x569591[_0x4186ff]=_0x5d8feb[_0x48b072];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1cbf06,_0xe00ca2){Object['defineProperty'](_0x1cbf06,'default',{'enumerable':!![],'value':_0xe00ca2});}:function(_0x9d59a0,_0x441e96){_0x9d59a0['default']=_0x441e96;}),__importStar=this&&this['__importStar']||(function(){var _0x2b6adf=function(_0x2583ae){return _0x2b6adf=Object['getOwnPropertyNames']||function(_0x34c23c){var _0x517610=[];for(var _0x35d231 in _0x34c23c)if(Object['prototype']['hasOwnProperty']['call'](_0x34c23c,_0x35d231))_0x517610[_0x517610['length']]=_0x35d231;return _0x517610;},_0x2b6adf(_0x2583ae);};return function(_0x478705){if(_0x478705&&_0x478705['__esModule'])return _0x478705;var _0x4a1d58={};if(_0x478705!=null){for(var _0x2cb981=_0x2b6adf(_0x478705),_0x3c0ab0=0x0;_0x3c0ab0<_0x2cb981['length'];_0x3c0ab0++)if(_0x2cb981[_0x3c0ab0]!=='default')__createBinding(_0x4a1d58,_0x478705,_0x2cb981[_0x3c0ab0]);}return __setModuleDefault(_0x4a1d58,_0x478705),_0x4a1d58;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['createReadManifestTool']=createReadManifestTool;const fs=__importStar(require('fs')),path=__importStar(require('path')),types_js_1=require('../types.js'),MANIFESTS=[{'file':'package.json','project':'Node'},{'file':'pyproject.toml','project':'Python\x20(pyproject)'},{'file':'requirements.txt','project':'Python\x20(requirements)'},{'file':'Cargo.toml','project':'Rust'},{'file':'go.mod','project':'Go'},{'file':'pom.xml','project':'Java/Maven'},{'file':'build.gradle','project':'Java/Gradle'},{'file':'Gemfile','project':'Ruby'},{'file':'composer.json','project':'PHP'},{'file':'tsconfig.json','project':'TypeScript\x20config'}],definition={'timeoutMs':0x7530,'name':'read_manifest','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':'object','required':[],'properties':{'path':{'type':'string','description':'Directory\x20to\x20inspect.\x20Default:\x20project\x20root.'},'depth':{'type':'integer','description':'How\x20many\x20levels\x20deep\x20to\x20look\x20for\x20nested\x20manifests.\x20Default\x201.'}}}};function createReadManifestTool(){return{'definition':definition,async 'execute'(_0x28be1c,_0x5d5bd0,_0x18cf02,_0x4df039,_0x11ab18){const _0x4c1d3b=_0x11ab18,_0x42fb1c=path['resolve'](_0x4c1d3b['cwd'],typeof _0x5d5bd0['path']==='string'?_0x5d5bd0['path']:'.'),_0x1e8a0d=typeof _0x5d5bd0['depth']==='number'?Math['max'](0x0,Math['floor'](_0x5d5bd0['depth'])):0x1,_0x40f513=[],_0xc5521=(_0x1ed440,_0x51d575)=>{if(_0x51d575>_0x1e8a0d)return;for(const _0x271588 of MANIFESTS){const _0x39532d=path['join'](_0x1ed440,_0x271588['file']);if(!fs['existsSync'](_0x39532d)||!fs['statSync'](_0x39532d)['isFile']())continue;const _0x2435f2=summarizeManifest(_0x39532d,_0x271588['file'],_0x271588['project']);if(_0x2435f2['length']>0x0)_0x40f513['push']({'file':path['relative'](_0x42fb1c,_0x39532d)||_0x271588['file'],'summary':_0x2435f2});break;}if(_0x51d575<_0x1e8a0d){let _0x57c620;try{_0x57c620=fs['readdirSync'](_0x1ed440,{'withFileTypes':!![]});}catch{return;}for(const _0x522778 of _0x57c620){_0x522778['isDirectory']()&&!_0x522778['name']['startsWith']('.')&&_0x522778['name']!=='node_modules'&&_0xc5521(path['join'](_0x1ed440,_0x522778['name']),_0x51d575+0x1);}}};_0xc5521(_0x42fb1c,0x0);if(_0x40f513['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20supported\x20manifest\x20found\x20under\x20'+_0x42fb1c);const _0x438425=_0x40f513['map'](_0x54eca7=>'Manifest:\x20'+_0x54eca7['file']+'\x0a'+_0x54eca7['summary']['map'](_0x2eb3e0=>'\x20\x20'+_0x2eb3e0)['join']('\x0a'))['join']('\x0a\x0a');return(0x0,types_js_1['textResult'])(_0x438425);}};}function summarizeManifest(_0x311c99,_0x53d4f4,_0x131183){const _0x2ed5e8=fs['readFileSync'](_0x311c99,'utf8');switch(_0x53d4f4){case'package.json':return summarizePackageJson(_0x2ed5e8);case'pyproject.toml':return summarizePyproject(_0x2ed5e8);case'requirements.txt':return summarizeRequirements(_0x2ed5e8);case'Cargo.toml':return summarizeCargo(_0x2ed5e8);case'go.mod':return summarizeGoMod(_0x2ed5e8);case'tsconfig.json':return summarizeTsconfig(_0x2ed5e8);default:return summarizeGeneric(_0x2ed5e8,_0x131183+'\x20('+_0x53d4f4+')');}}function summarizePackageJson(_0x3157cf){let _0x1eecd6;try{_0x1eecd6=JSON['parse'](_0x3157cf['replace'](/^\uFEFF/,''));}catch{return summarizeGeneric(_0x3157cf,'package.json\x20(unparseable)');}const _0xe6d272=[];if(typeof _0x1eecd6['name']==='string')_0xe6d272['push']('name:\x20'+_0x1eecd6['name']);if(typeof _0x1eecd6['version']==='string')_0xe6d272['push']('version:\x20'+_0x1eecd6['version']);if(typeof _0x1eecd6['type']==='string')_0xe6d272['push']('type:\x20'+_0x1eecd6['type']);if(typeof _0x1eecd6['description']==='string')_0xe6d272['push']('description:\x20'+_0x1eecd6['description']);const _0x2c24e6=_0x1eecd6['scripts'];if(_0x2c24e6)_0xe6d272['push']('scripts:\x20'+Object['keys'](_0x2c24e6)['join'](',\x20'));for(const [_0x46d7eb,_0x42d5ff]of[['dependencies','dependencies'],['devDependencies','devDependencies']]){const _0x103a34=_0x1eecd6[_0x42d5ff];if(_0x103a34&&Object['keys'](_0x103a34)['length']>0x0){const _0xcf6c86=Object['keys'](_0x103a34);_0xe6d272['push'](_0x46d7eb+'\x20('+_0xcf6c86['length']+'):\x20'+_0xcf6c86['slice'](0x0,0xf)['join'](',\x20')+(_0xcf6c86['length']>0xf?'…':''));}}if(_0xe6d272['length']===0x0)_0xe6d272['push']('no\x20name/version/scripts\x20found');return _0xe6d272;}function summarizePyproject(_0xda8c7){const _0xf3c04c=[],_0x56096d=/^name\s*=\s*["']?([^"'\n]+)["']?/m,_0x51d79a=/^version\s*=\s*["']?([^"'\n]+)["']?/m,_0x722597=field(_0xda8c7,_0x56096d,'project')??field(_0xda8c7,_0x56096d),_0x86ea58=field(_0xda8c7,_0x51d79a,'project')??field(_0xda8c7,_0x51d79a);if(_0x722597)_0xf3c04c['push']('name:\x20'+_0x722597);if(_0x86ea58)_0xf3c04c['push']('version:\x20'+_0x86ea58);const _0x330f57=tomlArrayField(_0xda8c7,'project','dependencies');if(_0x330f57['length']>0x0)_0xf3c04c['push']('dependencies\x20('+_0x330f57['length']+'):\x20'+_0x330f57['slice'](0x0,0xc)['join'](',\x20')+(_0x330f57['length']>0xc?'…':''));const _0x4bc153=tomlArrayField(_0xda8c7,'build-system','requires');if(_0x4bc153['length']>0x0)_0xf3c04c['push']('build\x20requires\x20('+_0x4bc153['length']+'):\x20'+_0x4bc153['slice'](0x0,0x6)['join'](',\x20'));if(_0xf3c04c['length']===0x0)_0xf3c04c['push']('empty/unknown\x20pyproject.toml');return _0xf3c04c;}function summarizeRequirements(_0x355973){const _0x479b29=_0x355973['split']('\x0a')['map'](_0xf8a15c=>_0xf8a15c['trim']())['filter'](_0x70411d=>_0x70411d&&!_0x70411d['startsWith']('#')&&!_0x70411d['startsWith']('--')&&!_0x70411d['startsWith']('-r\x20'));return _0x479b29['length']===0x0?['empty\x20requirements.txt']:[_0x479b29['length']+'\x20requirement(s):\x20'+_0x479b29['slice'](0x0,0xf)['join'](',\x20')+(_0x479b29['length']>0xf?'…':'')];}function summarizeCargo(_0x502471){const _0x16c4e0=[],_0x10624c=sectionField(_0x502471,'package','name'),_0x21d7dd=sectionField(_0x502471,'package','version');if(_0x10624c)_0x16c4e0['push']('name:\x20'+_0x10624c);if(_0x21d7dd)_0x16c4e0['push']('version:\x20'+_0x21d7dd);const _0x3a5474=sectionLines(_0x502471,'dependencies');if(_0x3a5474['length']>0x0)_0x16c4e0['push']('dependencies\x20('+_0x3a5474['length']+'):\x20'+_0x3a5474['slice'](0x0,0xc)['join'](',\x20')+(_0x3a5474['length']>0xc?'…':''));const _0x55cc20=sectionLines(_0x502471,'dev-dependencies');if(_0x55cc20['length']>0x0)_0x16c4e0['push']('dev-dependencies\x20('+_0x55cc20['length']+'):\x20'+_0x55cc20['slice'](0x0,0x6)['join'](',\x20'));if(_0x16c4e0['length']===0x0)_0x16c4e0['push']('empty/unknown\x20Cargo.toml');return _0x16c4e0;}function summarizeGoMod(_0x52af65){const _0x1e0b5d=[],_0x49fefd=_0x52af65['match'](/^module\s+(\S+)/m);if(_0x49fefd)_0x1e0b5d['push']('module:\x20'+_0x49fefd[0x1]);const _0xffd8d=_0x52af65['match'](/^go\s+(\S+)/m);if(_0xffd8d)_0x1e0b5d['push']('go:\x20'+_0xffd8d[0x1]);const _0x319271=_0x52af65['match'](/^require\s*\(([\s\S]*?)\)/m);if(_0x319271){const _0xb15e7c=_0x319271[0x1]['split']('\x0a')['map'](_0x5abd76=>_0x5abd76['trim']()['split'](/\s+/)[0x0])['filter'](Boolean);_0x1e0b5d['push']('require\x20('+_0xb15e7c['length']+'):\x20'+_0xb15e7c['slice'](0x0,0xc)['join'](',\x20')+(_0xb15e7c['length']>0xc?'…':''));}if(_0x1e0b5d['length']===0x0)_0x1e0b5d['push']('empty\x20go.mod');return _0x1e0b5d;}function summarizeTsconfig(_0x268abf){let _0x138914;try{_0x138914=JSON['parse'](stripJsonc(_0x268abf['replace'](/^\uFEFF/,'')));}catch{return['unparseable\x20tsconfig.json'];}const _0x454a53=_0x138914['compilerOptions']??{},_0x15b554=[];_0x15b554['push']('target:\x20'+String(_0x454a53['target']??'unspecified')),_0x15b554['push']('module:\x20'+String(_0x454a53['module']??'unspecified'));if(_0x454a53['strict']!==undefined)_0x15b554['push']('strict:\x20'+String(_0x454a53['strict']));if(_0x454a53['outDir'])_0x15b554['push']('outDir:\x20'+String(_0x454a53['outDir']));const _0x2d70d3=Array['isArray'](_0x138914['include'])?_0x138914['include']['join'](',\x20'):'';if(_0x2d70d3)_0x15b554['push']('include:\x20'+_0x2d70d3);return _0x15b554;}function summarizeGeneric(_0x2a4a10,_0x228694){const _0x1a0c8d=_0x2a4a10['split']('\x0a')['slice'](0x0,0xf)['filter'](_0x42a680=>_0x42a680['trim']());return _0x1a0c8d['length']===0x0?[_0x228694+':\x20empty\x20file']:[_0x228694+':']['concat'](_0x1a0c8d['map'](_0x50d7f0=>'\x20\x20'+_0x50d7f0['trim']()['slice'](0x0,0x64)));}function field(_0x21f6dd,_0x2ce3dc,_0x59624c){const _0x4aa2e4=_0x59624c?findSection(_0x21f6dd,_0x59624c):_0x21f6dd;if(!_0x4aa2e4)return undefined;const _0x1e1489=_0x4aa2e4['match'](_0x2ce3dc);return _0x1e1489?_0x1e1489[0x1]['trim']():undefined;}function tomlArrayField(_0x176783,_0x1871e5,_0x47c400){const _0x87f5af=findSection(_0x176783,_0x1871e5);if(!_0x87f5af)return[];const _0xd00292=_0x87f5af['match'](new RegExp('^'+_0x47c400+'\x5cs*=\x5cs*\x5c[([\x5cs\x5cS]*?)\x5c]','m'));if(!_0xd00292)return[];return Array['from'](_0xd00292[0x1]['matchAll'](/["']([^"']+)["']/g))['map'](_0x23c7fc=>_0x23c7fc[0x1]);}function stripJsonc(_0x40e64a){let _0x1e41a8='',_0xabd2fb=![],_0x3c634f=![];for(let _0x49830e=0x0;_0x49830e<_0x40e64a['length'];_0x49830e++){const _0x4352fd=_0x40e64a[_0x49830e];if(_0xabd2fb){_0x1e41a8+=_0x4352fd;if(_0x3c634f)_0x3c634f=![];else{if(_0x4352fd==='\x5c')_0x3c634f=!![];else{if(_0x4352fd==='\x22')_0xabd2fb=![];}}continue;}if(_0x4352fd==='\x22'){_0xabd2fb=!![],_0x1e41a8+=_0x4352fd;continue;}if(_0x4352fd==='/'&&_0x40e64a[_0x49830e+0x1]==='/'){while(_0x49830e<_0x40e64a['length']&&_0x40e64a[_0x49830e]!=='\x0a')_0x49830e++;continue;}if(_0x4352fd==='/'&&_0x40e64a[_0x49830e+0x1]==='*'){_0x49830e+=0x2;while(_0x49830e<_0x40e64a['length']&&!(_0x40e64a[_0x49830e]==='*'&&_0x40e64a[_0x49830e+0x1]==='/'))_0x49830e++;_0x49830e++;continue;}if(_0x4352fd===','){let _0x301853=_0x49830e+0x1;while(_0x301853<_0x40e64a['length']){if(/\s/['test'](_0x40e64a[_0x301853])){_0x301853++;continue;}if(_0x40e64a[_0x301853]==='/'&&_0x40e64a[_0x301853+0x1]==='/'){while(_0x301853<_0x40e64a['length']&&_0x40e64a[_0x301853]!=='\x0a')_0x301853++;continue;}if(_0x40e64a[_0x301853]==='/'&&_0x40e64a[_0x301853+0x1]==='*'){_0x301853+=0x2;while(_0x301853<_0x40e64a['length']&&!(_0x40e64a[_0x301853]==='*'&&_0x40e64a[_0x301853+0x1]==='/'))_0x301853++;_0x301853++;continue;}break;}if(_0x40e64a[_0x301853]===']'||_0x40e64a[_0x301853]==='}')continue;_0x1e41a8+=_0x4352fd;continue;}_0x1e41a8+=_0x4352fd;}return _0x1e41a8;}function sectionField(_0x1f0a99,_0x47787d,_0x18ba0b){const _0x348c51=new RegExp('^'+_0x18ba0b+'\x5cs*=\x5cs*[\x22\x27]?([^\x22\x27\x0a]+)[\x22\x27]?','m');return field(_0x1f0a99,_0x348c51,_0x47787d);}function sectionLines(_0x185df4,_0xc17f48){const _0x1e5bf4=findSection(_0x185df4,_0xc17f48);if(!_0x1e5bf4)return[];return _0x1e5bf4['split']('\x0a')['map'](_0x29856b=>_0x29856b['trim']())['filter'](_0x28fd25=>_0x28fd25&&_0x28fd25!==']'&&!_0x28fd25['startsWith']('[')&&!_0x28fd25['startsWith']('#'))['map'](_0xd64395=>{const _0x91e724=_0xd64395['split'](/\s*=\s*/,0x1)[0x0]['trim']();return _0x91e724['startsWith']('\x22')||_0x91e724['startsWith']('\x27')||_0x91e724['includes']('==')?_0xd64395['split'](/\s+/)[0x0]['replace'](/^["']|["']$/g,''):_0xd64395['replace'](/^["']|["']$/g,'');})['filter'](Boolean);}function findSection(_0x55364c,_0x1eb3ce){const _0x36e7de=_0x55364c['split']('\x0a');let _0x11e8a1=![];const _0x51eee6=[];for(const _0x5d2113 of _0x36e7de){const _0x2f166b=_0x5d2113['match'](/^\s*\[([^\]]+)\]/);if(_0x2f166b){_0x11e8a1=_0x2f166b[0x1]===_0x1eb3ce;continue;}if(_0x11e8a1){if(/^\s*\[/['test'](_0x5d2113))break;_0x51eee6['push'](_0x5d2113);}}return _0x51eee6['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(
|
|
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(_0x22a82f,_0x1a3b8d,_0x868c9f,_0xabe2e6){if(_0xabe2e6===undefined)_0xabe2e6=_0x868c9f;var _0x3efb80=Object['getOwnPropertyDescriptor'](_0x1a3b8d,_0x868c9f);(!_0x3efb80||('get'in _0x3efb80?!_0x1a3b8d['__esModule']:_0x3efb80['writable']||_0x3efb80['configurable']))&&(_0x3efb80={'enumerable':!![],'get':function(){return _0x1a3b8d[_0x868c9f];}}),Object['defineProperty'](_0x22a82f,_0xabe2e6,_0x3efb80);}:function(_0x4a8e91,_0xdd76dd,_0x219f8a,_0x1d1ab8){if(_0x1d1ab8===undefined)_0x1d1ab8=_0x219f8a;_0x4a8e91[_0x1d1ab8]=_0xdd76dd[_0x219f8a];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0xb62836,_0x579779){Object['defineProperty'](_0xb62836,'default',{'enumerable':!![],'value':_0x579779});}:function(_0x393e7d,_0x74c765){_0x393e7d['default']=_0x74c765;}),__importStar=this&&this['__importStar']||(function(){var _0x1c86df=function(_0x1789fb){return _0x1c86df=Object['getOwnPropertyNames']||function(_0x4e382e){var _0x311197=[];for(var _0x3a189b in _0x4e382e)if(Object['prototype']['hasOwnProperty']['call'](_0x4e382e,_0x3a189b))_0x311197[_0x311197['length']]=_0x3a189b;return _0x311197;},_0x1c86df(_0x1789fb);};return function(_0x37eb67){if(_0x37eb67&&_0x37eb67['__esModule'])return _0x37eb67;var _0x15668c={};if(_0x37eb67!=null){for(var _0x415a08=_0x1c86df(_0x37eb67),_0x1e1559=0x0;_0x1e1559<_0x415a08['length'];_0x1e1559++)if(_0x415a08[_0x1e1559]!=='default')__createBinding(_0x15668c,_0x37eb67,_0x415a08[_0x1e1559]);}return __setModuleDefault(_0x15668c,_0x37eb67),_0x15668c;};}());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(_0x34d5c0,_0x214dbe){return path['join'](_0x214dbe??process['cwd'](),'.trayambak','mcp-installs',_0x34d5c0);}function listAvailableMcpServers(){return(0x0,registry_js_1['getConnectorRegistry'])()['load']();}function searchMcpServers(_0x3525e7){return(0x0,registry_js_1['getConnectorRegistry'])()['search'](_0x3525e7);}async function installMcpServer(_0x105118,_0x1bd1c0,_0x12e447){const _0x41fa70=(0x0,registry_js_1['getConnectorRegistry'])(),_0x45cdec=_0x41fa70['get'](_0x105118);if(!_0x45cdec)return{'server':_0x105118,'status':'failed','message':'MCP\x20server\x20\x27'+_0x105118+'\x27\x20not\x20found\x20in\x20registry.\x20Use\x20/mcp\x20search\x20to\x20find\x20available\x20servers.'};const _0xed4a91=_0x45cdec['spec'],_0x150180=Array['isArray'](_0xed4a91['command'])?_0xed4a91['command']:[],_0x1ccf81=_0x150180[0x0],_0x3d2409=_0x150180['slice'](0x1),_0x2c140a=(_0x2f06f3,_0x5a7451)=>{if(_0x2f06f3['status']!=='installed'||!_0x12e447)return _0x2f06f3;try{const _0x58ccc3={..._0x12e447['mcpServers']??{}};return _0x58ccc3[_0x105118]=_0x5a7451??_0xed4a91,(0x0,config_js_1['saveConfig'])({'mcpServers':_0x58ccc3}),{..._0x2f06f3,'message':_0x2f06f3['message']+'\x0aMCP\x20server\x20\x27'+_0x105118+'\x27\x20saved\x20to\x20trayambak\x20config.'};}catch{return _0x2f06f3;}};if(_0x45cdec['npmPackage']&&_0x150180[0x0]==='npx'){const _0x44389e=(0x0,spawn_resolve_js_1['resolveNpmCliJs'])(),_0x41b048=_0x44389e?undefined:(0x0,spawn_resolve_js_1['resolveExecutable'])('npm'),_0x5360a2=_0x41b048&&(0x0,spawn_resolve_js_1['canSpawnDirectly'])(_0x41b048)?_0x41b048:undefined;if(!_0x44389e&&!_0x5360a2){const _0x15c6f4=(0x0,spawn_resolve_js_1['resolveExecutable'])('npm');return{'server':_0x105118,'status':'failed','message':_0x15c6f4?'npm\x20was\x20found\x20at\x20'+_0x15c6f4+'\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 _0x390280=installDirFor(_0x105118,_0x1bd1c0);fs['mkdirSync'](_0x390280,{'recursive':!![]});const _0x430483=_0x44389e?process['execPath']:_0x5360a2,_0x3ead2e=_0x44389e?[_0x44389e,'install','--prefix',_0x390280,_0x45cdec['npmPackage']]:['install','--prefix',_0x390280,_0x45cdec['npmPackage']];await execAsync(_0x430483,_0x3ead2e,_0x1bd1c0||_0x390280);const _0x4a9195=resolveInstalledEntry(_0x390280,_0x45cdec['npmPackage'])??{'command':_0x150180};return _0x2c140a({'server':_0x105118,'status':'installed','message':'Installed\x20'+_0x45cdec['npmPackage']+'\x20to\x20'+_0x390280},_0x4a9195);}catch(_0x2425e3){return{'server':_0x105118,'status':'failed','message':'npm\x20install\x20failed:\x20'+(_0x2425e3 instanceof Error?_0x2425e3['message']:String(_0x2425e3))};}}if(_0x45cdec['npmPackage']==='mcp'||_0x1ccf81==='python'||_0x1ccf81==='python3')try{const _0x30665d=installDirFor(_0x105118,_0x1bd1c0);fs['mkdirSync'](_0x30665d,{'recursive':!![]});const _0x51364e=_0x3d2409['find'](_0x3c7059=>typeof _0x3c7059==='string'&&_0x3c7059['endsWith']('.py'));if(_0x51364e){const _0x30950f=path['isAbsolute'](_0x51364e)?_0x51364e:path['resolve'](_0xed4a91['cwd']||_0x1bd1c0||'.',_0x51364e);if(!fs['existsSync'](_0x30950f))return{'server':_0x105118,'status':'failed','message':'Server\x20script\x20not\x20found:\x20'+_0x30950f};const _0x13aa1d=(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(!_0x13aa1d)return{'server':_0x105118,'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'](_0x13aa1d,path['extname'](_0x13aa1d)))?await execAsync(_0x13aa1d,['install','mcp'],_0x1bd1c0||_0x30665d):await execAsync(_0x13aa1d,['-m','pip','install','mcp'],_0x1bd1c0||_0x30665d),_0x2c140a({'server':_0x105118,'status':'installed','message':'Python\x20MCP\x20server\x20ready\x20at\x20'+_0x30950f},{'command':[_0x1ccf81,_0x30950f],'cwd':path['dirname'](_0x30950f)});}return{'server':_0x105118,'status':'skipped','message':'No\x20Python\x20script\x20path\x20found\x20in\x20server\x20spec.'};}catch(_0x19cd32){return{'server':_0x105118,'status':'failed','message':'Python\x20setup\x20failed:\x20'+(_0x19cd32 instanceof Error?_0x19cd32['message']:String(_0x19cd32))};}return{'server':_0x105118,'status':'skipped','message':'Unknown\x20server\x20type\x20for\x20\x27'+_0x105118+'\x27.\x20Configure\x20manually\x20in\x20trayambak\x20config.'};}function resolveInstalledEntry(_0x3a2691,_0x36d01a){const _0x325028=path['join'](_0x3a2691,'node_modules',_0x36d01a);for(const _0x506767 of['dist/index.js','dist/index.cjs','index.js','lib/index.js']){const _0x43191d=path['join'](_0x325028,_0x506767);try{if(fs['existsSync'](_0x43191d)&&fs['statSync'](_0x43191d)['isFile']())return{'command':['node',_0x43191d]};}catch{}}return undefined;}function createMcpInstallTool(){const _0x26a0eb={'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':_0x26a0eb,async 'execute'(_0x2ae6e8,_0x3e1a8c,_0x2f173a,_0x3db7fa,_0x446e42){const _0x4654ab=_0x3e1a8c['action']??'list',_0x32a7c9=_0x3e1a8c['query']??'';if(_0x4654ab==='list'){const _0x2213d1=listAvailableMcpServers(),_0x449b8f=_0x2213d1['map'](_0xb02f3c=>'\x20\x20'+_0xb02f3c['id']+':\x20'+_0xb02f3c['description']+'\x20['+_0xb02f3c['category']+']');return(0x0,types_js_1['textResult'])('Available\x20MCP\x20servers\x20('+_0x2213d1['length']+'):\x0a'+_0x449b8f['join']('\x0a'));}if(_0x4654ab==='search'){const _0x47fa23=searchMcpServers(_0x32a7c9||'mcp');if(_0x47fa23['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20MCP\x20servers\x20found\x20for\x20\x27'+_0x32a7c9+'\x27.');const _0x4eb9d4=_0x47fa23['map'](_0x23aa7f=>'\x20\x20'+_0x23aa7f['id']+':\x20'+_0x23aa7f['description']+'\x20['+_0x23aa7f['category']+']');return(0x0,types_js_1['textResult'])('Found\x20'+_0x47fa23['length']+'\x20MCP\x20servers:\x0a'+_0x4eb9d4['join']('\x0a'));}if(_0x4654ab==='info'){const _0x4b8a52=(0x0,registry_js_1['getConnectorRegistry'])()['get'](_0x32a7c9);if(!_0x4b8a52)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x32a7c9+'\x27\x20not\x20found.\x20Use\x20/mcp\x20search\x20to\x20find\x20servers.',!![]);const _0x28b467=['ID:\x20'+_0x4b8a52['id'],'Name:\x20'+_0x4b8a52['name'],'Description:\x20'+_0x4b8a52['description'],'Category:\x20'+_0x4b8a52['category'],'Keywords:\x20'+(_0x4b8a52['keywords']??[])['join'](',\x20'),'Spec:\x20'+JSON['stringify'](_0x4b8a52['spec'],null,0x2),_0x4b8a52['npmPackage']?'NPM\x20Package:\x20'+_0x4b8a52['npmPackage']:'']['filter'](Boolean);return(0x0,types_js_1['textResult'])(_0x28b467['join']('\x0a'));}if(_0x4654ab==='install'){const _0x3fe84f=await installMcpServer(_0x32a7c9,_0x446e42?.['cwd'],_0x446e42?.['config']);if(_0x3fe84f['status']==='failed')return(0x0,types_js_1['textResult'])(_0x3fe84f['message'],!![]);return(0x0,types_js_1['textResult'])(_0x3fe84f['message']);}return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20'+_0x4654ab+'.\x20Use\x20search,\x20install,\x20list,\x20or\x20info.',!![]);}};}function execAsync(_0x4c9321,_0x1b6324,_0x5a8828,_0x2a281e=0x2bf20){return new Promise((_0x855d66,_0x3d3c7e)=>{const _0x181cf8=(0x0,child_process_1['spawn'])(_0x4c9321,_0x1b6324,{'cwd':_0x5a8828,'stdio':['ignore','pipe','pipe'],'shell':![],'windowsHide':!![]});let _0x3020a8='',_0x392d9f='';const _0xe83d7d=setTimeout(()=>{try{_0x181cf8['kill']('SIGKILL');}catch{}_0x3d3c7e(new Error('Command\x20timed\x20out\x20after\x20'+_0x2a281e+'ms:\x20'+_0x4c9321+'\x20'+_0x1b6324['join']('\x20')));},_0x2a281e);if(typeof _0xe83d7d['unref']==='function')_0xe83d7d['unref']();_0x181cf8['stdout']['on']('data',_0xbbb3ac=>{_0x3020a8+=_0xbbb3ac['toString']();}),_0x181cf8['stderr']['on']('data',_0x3c16a2=>{_0x392d9f+=_0x3c16a2['toString']();}),_0x181cf8['on']('close',_0x441251=>{clearTimeout(_0xe83d7d);if(_0x441251===0x0)_0x855d66();else _0x3d3c7e(new Error('Command\x20failed\x20('+_0x441251+'):\x20'+(_0x392d9f||_0x3020a8)['slice'](-0x7d0)));}),_0x181cf8['on']('error',_0x465e10=>{clearTimeout(_0xe83d7d),_0x3d3c7e(_0x465e10);});});}
|
|
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(_0x3ce01b,_0x28f1e1,_0x1fd60e,_0x316650){if(_0x316650===undefined)_0x316650=_0x1fd60e;var _0xddddcb=Object['getOwnPropertyDescriptor'](_0x28f1e1,_0x1fd60e);(!_0xddddcb||('get'in _0xddddcb?!_0x28f1e1['__esModule']:_0xddddcb['writable']||_0xddddcb['configurable']))&&(_0xddddcb={'enumerable':!![],'get':function(){return _0x28f1e1[_0x1fd60e];}}),Object['defineProperty'](_0x3ce01b,_0x316650,_0xddddcb);}:function(_0x414ed6,_0x230685,_0xd30285,_0x5bf70f){if(_0x5bf70f===undefined)_0x5bf70f=_0xd30285;_0x414ed6[_0x5bf70f]=_0x230685[_0xd30285];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x34d624,_0x3b47ca){Object['defineProperty'](_0x34d624,'default',{'enumerable':!![],'value':_0x3b47ca});}:function(_0x29a2bb,_0x11c0fd){_0x29a2bb['default']=_0x11c0fd;}),__importStar=this&&this['__importStar']||(function(){var _0x39b438=function(_0x225930){return _0x39b438=Object['getOwnPropertyNames']||function(_0x4530db){var _0x196b9d=[];for(var _0x4f55d8 in _0x4530db)if(Object['prototype']['hasOwnProperty']['call'](_0x4530db,_0x4f55d8))_0x196b9d[_0x196b9d['length']]=_0x4f55d8;return _0x196b9d;},_0x39b438(_0x225930);};return function(_0x5bc6a8){if(_0x5bc6a8&&_0x5bc6a8['__esModule'])return _0x5bc6a8;var _0x13c812={};if(_0x5bc6a8!=null){for(var _0x359ec4=_0x39b438(_0x5bc6a8),_0x5195e7=0x0;_0x5195e7<_0x359ec4['length'];_0x5195e7++)if(_0x359ec4[_0x5195e7]!=='default')__createBinding(_0x13c812,_0x5bc6a8,_0x359ec4[_0x5195e7]);}return __setModuleDefault(_0x13c812,_0x5bc6a8),_0x13c812;};}());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(_0x37ee98,_0x176254){this['name']=_0x37ee98,this['spec']=_0x176254;}get['timeoutMs'](){return this['spec']['timeoutMs']??0xea60;}async['connect'](){if(this['initialized'])return;const _0x58ce44={'protocolVersion':'2024-11-05','capabilities':{},'clientInfo':{'name':'trayambak','version':'0.3.0'}};this['spawnStdio'](),await this['request']('initialize',_0x58ce44);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 _0x3c0739=await this['request']('tools/list',{});return _0x3c0739?.['tools']??[];}async['listResources'](){await this['connect']();try{const _0x4f4a77=await this['request']('resources/list',{});return _0x4f4a77?.['resources']??[];}catch{return[];}}async['listPrompts'](){await this['connect']();try{const _0x2bc0dd=await this['request']('prompts/list',{});return _0x2bc0dd?.['prompts']??[];}catch{return[];}}async['status'](){const _0x20d982=this['child']!==null&&this['child']['exitCode']===null&&!this['child']['killed'];let _0x2ad5e6='disconnected';if(_0x20d982)_0x2ad5e6='stdio';return{'name':this['name'],'connected':_0x20d982,'transport':_0x2ad5e6,'initialized':this['initialized']&&_0x20d982};}async['getPrompt'](_0x47d6f3,_0x5313aa){await this['connect']();try{const _0x1de5fc=await this['request']('prompts/get',{'name':_0x47d6f3,'arguments':_0x5313aa??{}}),_0x25f980=_0x1de5fc?.['messages']??_0x1de5fc?.['prompt']?.['messages'];if(!_0x25f980)return null;return{'name':_0x47d6f3,'messages':_0x25f980};}catch{return null;}}async['readResource'](_0x4b4a43){await this['connect']();try{const _0x2a465b=await this['request']('resources/read',{'uri':_0x4b4a43});if(_0x2a465b?.['contents'])return _0x2a465b['contents']['map'](_0x4eabfa=>typeof _0x4eabfa['text']==='string'?_0x4eabfa['text']:typeof _0x4eabfa['blob']==='string'?'[binary\x20'+(_0x4eabfa['mimeType']??'blob')+']':JSON['stringify'](_0x4eabfa))['join']('\x0a');return'';}catch{return'';}}async['callTool'](_0x18586f,_0x59a722){return await this['connect'](),this['request']('tools/call',{'name':_0x18586f,'arguments':_0x59a722});}['close'](){const _0x1d106b=this['child'];this['child']=null,this['rl']?.['close'](),this['rl']=null,this['initialized']=![],this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20connection\x20closed'));if(_0x1d106b&&_0x1d106b['exitCode']===null&&!_0x1d106b['killed']){_0x1d106b['kill']('SIGTERM');const _0x30ce1b=setTimeout(()=>{try{if(_0x1d106b['exitCode']===null)_0x1d106b['kill']('SIGKILL');}catch{}},0x7d0);if(typeof _0x30ce1b['unref']==='function')_0x30ce1b['unref']();}}['getStderrLines'](){return this['stderrLines'];}['spawnStdio'](){const _0x37f4b8=this['spec'],_0x4c109f=_0x37f4b8['command']??[];if(_0x4c109f['length']===0x0)throw new Error('MCP\x20server\x20\x27'+this['name']+'\x27\x20has\x20no\x20command');const {command:_0x4565de,args:_0x3dac42}=(0x0,spawn_resolve_js_1['resolveMcpCommand'])(_0x4c109f);this['child']=(0x0,child_process_1['spawn'])(_0x4565de,_0x3dac42,{'cwd':_0x37f4b8['cwd']??process['cwd'](),'env':{...(0x0,env_filter_js_1['getSafeEnv'])(process.env),..._0x37f4b8['env']??{}},'stdio':['pipe','pipe','pipe'],'shell':![],'windowsHide':!![]}),this['rl']=readline['createInterface']({'input':this['child']['stdout']}),this['rl']['on']('line',_0x521b1b=>{try{const _0x16754d=JSON['parse'](_0x521b1b);if(_0x16754d['id']===undefined)return;const _0x263e9a=this['pending']['get'](_0x16754d['id']);if(!_0x263e9a)return;this['pending']['delete'](_0x16754d['id']);const _0x463150=_0x16754d;if(_0x463150['error'])_0x263e9a['reject'](new Error('MCP\x20'+this['name']+':\x20'+_0x463150['error']['message']));else _0x263e9a['resolve'](_0x463150['result']);}catch{}}),this['child']['stderr']&&this['child']['stderr']['on']('data',_0x3038f4=>{const _0x21a4db=_0x3038f4['toString']();for(const _0x2003e3 of _0x21a4db['split'](/\r?\n/)){const _0x23d22b=_0x2003e3['trim']()['slice'](-0x1f4);if(_0x23d22b)this['stderrLines']['push'](_0x23d22b);}this['stderrLines']['length']>0x32&&this['stderrLines']['splice'](0x0,this['stderrLines']['length']-0x32);}),this['child']['on']('error',_0x40d82d=>this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20process\x20error:\x20'+_0x40d82d['message']))),this['child']['on']('exit',_0x3eaecf=>{const _0x68dfba=this['stderrLines']['slice'](-0x5)['join']('\x20|\x20')['slice'](0x0,0x1f4);this['lastError']='exited\x20with\x20code\x20'+(_0x3eaecf??'signal'),this['child']=null,this['initialized']=![],this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20exited\x20with\x20code\x20'+(_0x3eaecf??'signal')+'.'+(_0x68dfba?'\x20Server\x20stderr:\x20'+_0x68dfba:'')));});}['request'](_0x2b1a8c,_0x398280){if(!this['child'])throw new Error('MCP\x20\x27'+this['name']+'\x27\x20is\x20not\x20connected');const _0x4e533e=this['nextId']++;return new Promise((_0x1710aa,_0x53b61c)=>{const _0x5c3d21=setTimeout(()=>{this['pending']['delete'](_0x4e533e),_0x53b61c(new Error('MCP\x20'+this['name']+':\x20timeout\x20on\x20\x27'+_0x2b1a8c+'\x27'));},this['timeoutMs']);this['pending']['set'](_0x4e533e,{'resolve':_0x10f917=>{clearTimeout(_0x5c3d21),_0x1710aa(_0x10f917);},'reject':_0x2f63df=>{clearTimeout(_0x5c3d21),_0x53b61c(_0x2f63df);}});const _0x11e2cb={'jsonrpc':'2.0','id':_0x4e533e,'method':_0x2b1a8c,'params':_0x398280};this['child']['stdin']['write'](JSON['stringify'](_0x11e2cb)+'\x0a');});}['rejectAll'](_0x4daff9){for(const [,_0x5cf5f6]of this['pending'])_0x5cf5f6['reject'](_0x4daff9);this['pending']['clear']();}}exports['McpProcess']=McpProcess;const mcpProcesses=new Map();function getMcpProcess(_0x24dc93,_0x363146){let _0x518f16=mcpProcesses['get'](_0x24dc93);return _0x518f16&&JSON['stringify'](_0x518f16['spec'])!==JSON['stringify'](_0x363146)&&(_0x518f16['close'](),mcpProcesses['delete'](_0x24dc93),_0x518f16=undefined),!_0x518f16&&(_0x518f16=new McpProcess(_0x24dc93,_0x363146),mcpProcesses['set'](_0x24dc93,_0x518f16)),_0x518f16;}function createMcpRunnerTool(){const _0x587e56={'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':_0x587e56,async 'execute'(_0xe7750c,_0x519db4,_0x512fe6,_0x1f317a){const _0x3b8711=_0x519db4['action'],_0x1094b1=_0x519db4['server'];if(_0x3b8711==='list_tools'||_0x3b8711==='connect'||_0x3b8711==='status'){if(!_0x1094b1)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x3c6d40=(0x0,registry_js_1['getConnectorRegistry'])(),_0x5828be=_0x3c6d40['get'](_0x1094b1);if(!_0x5828be)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20not\x20found\x20in\x20registry.\x20Use\x20trayambak__ToolSearch\x20to\x20find\x20servers.',!![]);const _0x260f7b=getMcpProcess(_0x1094b1,_0x5828be['spec']);try{if(_0x3b8711==='connect')return await _0x260f7b['connect'](),(0x0,types_js_1['textResult'])('Connected\x20to\x20MCP\x20server\x20\x27'+_0x1094b1+'\x27.');if(_0x3b8711==='status'){const _0x9a2140=await _0x260f7b['status'](),_0x255e52=['MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20status:','\x20\x20connected:\x20'+_0x9a2140['connected'],'\x20\x20transport:\x20'+_0x9a2140['transport'],'\x20\x20initialized:\x20'+_0x9a2140['initialized']];return(0x0,types_js_1['textResult'])(_0x255e52['join']('\x0a'));}const _0x31e47d=await _0x260f7b['listTools']();if(_0x31e47d['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20is\x20connected\x20but\x20exposes\x20no\x20tools.');const _0x3540b7=_0x31e47d['map'](_0x2cf13f=>'-\x20'+_0x2cf13f['name']+':\x20'+(_0x2cf13f['description']??'(no\x20description)'));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20tools:\x0a'+_0x3540b7['join']('\x0a'));}catch(_0x552b98){const _0x515e80=_0x260f7b['getStderrLines']()['slice'](-0x5)['join']('\x0a'),_0x75bd7c=_0x552b98 instanceof Error?_0x552b98['message']:String(_0x552b98);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x1094b1+':\x20'+_0x75bd7c+(_0x515e80?'\x0aServer\x20stderr:\x0a'+_0x515e80:''),!![]);}}if(_0x3b8711==='call_tool'){if(!_0x1094b1)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x42a978=_0x519db4['tool'],_0x309909=_0x519db4['args']??{};if(!_0x42a978)return(0x0,types_js_1['textResult'])('Missing\x20\x27tool\x27\x20parameter.',!![]);const _0x4b021c=(0x0,registry_js_1['getConnectorRegistry'])(),_0x5352e1=_0x4b021c['get'](_0x1094b1);if(!_0x5352e1)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x41d24c=getMcpProcess(_0x1094b1,_0x5352e1['spec']);try{const _0x3f3ec5=await _0x41d24c['callTool'](_0x42a978,_0x309909),_0x4c31ce=(_0x3f3ec5['content']??[])['map'](_0x348d56=>_0x348d56['type']==='text'?_0x348d56['text']:JSON['stringify'](_0x348d56))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x4c31ce||'(empty\x20MCP\x20result)');}catch(_0x2faeab){const _0x2afcb4=_0x41d24c['getStderrLines']()['slice'](-0x5)['join']('\x0a'),_0x593230=_0x2faeab instanceof Error?_0x2faeab['message']:String(_0x2faeab);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x1094b1+'.'+_0x42a978+':\x20'+_0x593230+(_0x2afcb4?'\x0aServer\x20stderr:\x0a'+_0x2afcb4:''),!![]);}}if(_0x3b8711==='disconnect'){if(!_0x1094b1)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x19186d=mcpProcesses['get'](_0x1094b1);if(!_0x19186d)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20is\x20not\x20running.');return _0x19186d['close'](),mcpProcesses['delete'](_0x1094b1),(0x0,types_js_1['textResult'])('Disconnected\x20MCP\x20server\x20\x27'+_0x1094b1+'\x27.');}if(_0x3b8711==='list_resources'){if(!_0x1094b1)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x1858b1=(0x0,registry_js_1['getConnectorRegistry'])(),_0x51c520=_0x1858b1['get'](_0x1094b1);if(!_0x51c520)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0xb40d67=getMcpProcess(_0x1094b1,_0x51c520['spec']);try{const _0x495399=await _0xb40d67['listResources']();if(_0x495399['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20exposes\x20no\x20resources.');const _0x1f40ad=_0x495399['map'](_0x3c512d=>'-\x20'+_0x3c512d['name']+':\x20'+_0x3c512d['uri']+(_0x3c512d['mimeType']?'\x20('+_0x3c512d['mimeType']+')':''));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20resources:\x0a'+_0x1f40ad['join']('\x0a'));}catch(_0x261ee2){const _0x5e97e8=_0x261ee2 instanceof Error?_0x261ee2['message']:String(_0x261ee2);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x1094b1+'\x20resources:\x20'+_0x5e97e8,!![]);}}if(_0x3b8711==='list_prompts'){if(!_0x1094b1)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x4d9ea7=(0x0,registry_js_1['getConnectorRegistry'])(),_0x91b989=_0x4d9ea7['get'](_0x1094b1);if(!_0x91b989)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x413501=getMcpProcess(_0x1094b1,_0x91b989['spec']);try{const _0x5c156e=await _0x413501['listPrompts']();if(_0x5c156e['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20exposes\x20no\x20prompts.');const _0x3a38c7=_0x5c156e['map'](_0x428a55=>'-\x20'+_0x428a55['name']+':\x20'+(_0x428a55['description']??'(no\x20description)'));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20prompts:\x0a'+_0x3a38c7['join']('\x0a'));}catch(_0x24b0a7){const _0x495d18=_0x24b0a7 instanceof Error?_0x24b0a7['message']:String(_0x24b0a7);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x1094b1+'\x20prompts:\x20'+_0x495d18,!![]);}}if(_0x3b8711==='get_prompt'){if(!_0x1094b1)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x26090b=_0x519db4['name'];if(!_0x26090b)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20parameter.',!![]);const _0x4fa0bc=(0x0,registry_js_1['getConnectorRegistry'])(),_0x3f6784=_0x4fa0bc['get'](_0x1094b1);if(!_0x3f6784)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x1c9001=getMcpProcess(_0x1094b1,_0x3f6784['spec']);try{const _0x4dc0ec=typeof _0x519db4['args']==='object'&&_0x519db4['args']!==null?_0x519db4['args']:undefined,_0x4fc678=await _0x1c9001['getPrompt'](_0x26090b,_0x4dc0ec);if(!_0x4fc678)return(0x0,types_js_1['textResult'])('Prompt\x20\x27'+_0x26090b+'\x27\x20not\x20found\x20on\x20server\x20\x27'+_0x1094b1+'\x27.',!![]);const _0x17ab14=_0x4fc678['messages']['map'](_0x567384=>'['+_0x567384['role']+']\x20'+(typeof _0x567384['content']==='string'?_0x567384['content']:JSON['stringify'](_0x567384['content'])))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x17ab14||'(empty\x20prompt)');}catch(_0xf19820){const _0x1cfed8=_0xf19820 instanceof Error?_0xf19820['message']:String(_0xf19820);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x1094b1+'\x20prompt:\x20'+_0x1cfed8,!![]);}}if(_0x3b8711==='read_resource'){if(!_0x1094b1)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x11be4f=_0x519db4['uri'];if(!_0x11be4f)return(0x0,types_js_1['textResult'])('Missing\x20\x27uri\x27\x20parameter.',!![]);const _0x41db08=(0x0,registry_js_1['getConnectorRegistry'])(),_0xcbf1ac=_0x41db08['get'](_0x1094b1);if(!_0xcbf1ac)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1094b1+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x5376cf=getMcpProcess(_0x1094b1,_0xcbf1ac['spec']);try{const _0x3a852e=await _0x5376cf['readResource'](_0x11be4f);return(0x0,types_js_1['textResult'])(_0x3a852e||'(empty\x20resource)');}catch(_0x3bafda){const _0x4dea74=_0x3bafda instanceof Error?_0x3bafda['message']:String(_0x3bafda);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x1094b1+'\x20resource\x20read:\x20'+_0x4dea74,!![]);}}return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20'+_0x3b8711+'.',!![]);}};}
|
|
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(
|
|
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(_0x494c74,_0x12eabf,_0xbc0ba4,_0xcbde3c){if(_0xcbde3c===undefined)_0xcbde3c=_0xbc0ba4;var _0x33f0af=Object['getOwnPropertyDescriptor'](_0x12eabf,_0xbc0ba4);(!_0x33f0af||('get'in _0x33f0af?!_0x12eabf['__esModule']:_0x33f0af['writable']||_0x33f0af['configurable']))&&(_0x33f0af={'enumerable':!![],'get':function(){return _0x12eabf[_0xbc0ba4];}}),Object['defineProperty'](_0x494c74,_0xcbde3c,_0x33f0af);}:function(_0x23818f,_0x436073,_0x1e69c5,_0x2e88b1){if(_0x2e88b1===undefined)_0x2e88b1=_0x1e69c5;_0x23818f[_0x2e88b1]=_0x436073[_0x1e69c5];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x2d15dd,_0x40028f){Object['defineProperty'](_0x2d15dd,'default',{'enumerable':!![],'value':_0x40028f});}:function(_0x38c2b8,_0x47d9cb){_0x38c2b8['default']=_0x47d9cb;}),__importStar=this&&this['__importStar']||(function(){var _0x1c1a35=function(_0x27011d){return _0x1c1a35=Object['getOwnPropertyNames']||function(_0x5a3bb1){var _0x11b3c3=[];for(var _0x43e27f in _0x5a3bb1)if(Object['prototype']['hasOwnProperty']['call'](_0x5a3bb1,_0x43e27f))_0x11b3c3[_0x11b3c3['length']]=_0x43e27f;return _0x11b3c3;},_0x1c1a35(_0x27011d);};return function(_0xb3f66f){if(_0xb3f66f&&_0xb3f66f['__esModule'])return _0xb3f66f;var _0x4e18ff={};if(_0xb3f66f!=null){for(var _0x320587=_0x1c1a35(_0xb3f66f),_0x28498e=0x0;_0x28498e<_0x320587['length'];_0x28498e++)if(_0x320587[_0x28498e]!=='default')__createBinding(_0x4e18ff,_0xb3f66f,_0x320587[_0x28498e]);}return __setModuleDefault(_0x4e18ff,_0xb3f66f),_0x4e18ff;};}()),__importDefault=this&&this['__importDefault']||function(_0x583a23){return _0x583a23&&_0x583a23['__esModule']?_0x583a23:{'default':_0x583a23};};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'](_0x2376e7=>_0x2376e7['id']));if(fs['existsSync'](this['userDir'])){const _0x1d32d6=fs['readdirSync'](this['userDir'],{'withFileTypes':!![]});for(const _0x2a0a4f of _0x1d32d6){if(!_0x2a0a4f['isFile']()||!_0x2a0a4f['name']['endsWith']('.json'))continue;try{const _0x3d8e32=fs['readFileSync'](path_1['default']['join'](this['userDir'],_0x2a0a4f['name']),'utf8'),_0xf752ae=JSON['parse'](_0x3d8e32);_0xf752ae['id']&&_0xf752ae['spec']&&this['connectors']['push']({'id':_0xf752ae['id'],'name':_0xf752ae['name']??_0xf752ae['id'],'description':_0xf752ae['description']??'','keywords':_0xf752ae['keywords']??[],'spec':_0xf752ae['spec'],'npmPackage':_0xf752ae['npmPackage'],'category':_0xf752ae['category']});}catch{}}}return this['connectors'];}['search'](_0x14aef9){if(!this['connectors']['length'])this['load']();const _0x49b560=_0x14aef9['toLowerCase']()['trim']();if(!_0x49b560)return this['connectors'];const _0x2dda33=_0x49b560['split'](/\s+/);return this['connectors']['map'](_0x2afeb4=>{const _0x4f2ca9=(_0x2afeb4['id']+'\x20'+_0x2afeb4['name']+'\x20'+_0x2afeb4['description']+'\x20'+(_0x2afeb4['keywords']??[])['join']('\x20')+'\x20'+(_0x2afeb4['category']??''))['toLowerCase']();let _0x3092cb=0x0;for(const _0x515be3 of _0x2dda33){if(_0x2afeb4['id']===_0x515be3)_0x3092cb+=0xa;if(_0x2afeb4['name']['toLowerCase']()===_0x515be3)_0x3092cb+=0x8;if(_0x2afeb4['keywords']?.['some'](_0xea45b7=>_0xea45b7['toLowerCase']()===_0x515be3))_0x3092cb+=0x6;if(_0x2afeb4['category']?.['toLowerCase']()===_0x515be3)_0x3092cb+=0x4;if(_0x4f2ca9['includes'](_0x515be3))_0x3092cb+=0x2;}return{'connector':_0x2afeb4,'score':_0x3092cb};})['filter'](_0x3feabb=>_0x3feabb['score']>0x0)['sort']((_0x548061,_0x3b9ae6)=>_0x3b9ae6['score']-_0x548061['score'])['map'](_0x22e78b=>_0x22e78b['connector']);}['get'](_0x20f820){if(!this['connectors']['length'])this['load']();return this['connectors']['find'](_0x5e1802=>_0x5e1802['id']===_0x20f820);}['getByCategory'](_0x493dc9){if(!this['connectors']['length'])this['load']();return this['connectors']['filter'](_0xfeb899=>_0xfeb899['category']===_0x493dc9);}['getCategories'](){if(!this['connectors']['length'])this['load']();return[...new Set(this['connectors']['map'](_0x51d943=>_0x51d943['category'])['filter'](Boolean))]['sort']();}['register'](_0xb90e14){const _0x746768=path_1['default']['join'](this['userDir'],_0xb90e14['id']+'.json');fs['mkdirSync'](this['userDir'],{'recursive':!![]}),fs['writeFileSync'](_0x746768,JSON['stringify'](_0xb90e14,null,0x2)),!this['connectors']['find'](_0xe31317=>_0xe31317['id']===_0xb90e14['id'])&&this['connectors']['push'](_0xb90e14);}['unregister'](_0x1e2e90){if(this['builtinIds']['has'](_0x1e2e90))return![];const _0x37dcd8=this['connectors']['findIndex'](_0x58bd5a=>_0x58bd5a['id']===_0x1e2e90);if(_0x37dcd8<0x0)return![];const _0x1372af=this['connectors'][_0x37dcd8];this['connectors']['splice'](_0x37dcd8,0x1);const _0x4a2218=path_1['default']['join'](this['userDir'],_0x1372af['id']+'.json');if(fs['existsSync'](_0x4a2218))fs['unlinkSync'](_0x4a2218);return!![];}['getAllIds'](){if(!this['connectors']['length'])this['load']();return this['connectors']['map'](_0x5d80e7=>_0x5d80e7['id']);}}exports['ConnectorRegistry']=ConnectorRegistry;function getConnectorRegistry(){return ConnectorRegistry['getInstance']();}function searchConnectors(_0x51a05f){return getConnectorRegistry()['search'](_0x51a05f);}
|
|
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);}
|