@skt-ai-labs/trayambak-cli 0.6.4 → 0.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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/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/skt-themes.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';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
|
+
'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0xf5c25a,_0x450d1d,_0x554883,_0x25fcc0){if(_0x25fcc0===undefined)_0x25fcc0=_0x554883;var _0x490660=Object['getOwnPropertyDescriptor'](_0x450d1d,_0x554883);(!_0x490660||('get'in _0x490660?!_0x450d1d['__esModule']:_0x490660['writable']||_0x490660['configurable']))&&(_0x490660={'enumerable':!![],'get':function(){return _0x450d1d[_0x554883];}}),Object['defineProperty'](_0xf5c25a,_0x25fcc0,_0x490660);}:function(_0x29d5b5,_0x3e0d65,_0xd4eae5,_0x2b1c06){if(_0x2b1c06===undefined)_0x2b1c06=_0xd4eae5;_0x29d5b5[_0x2b1c06]=_0x3e0d65[_0xd4eae5];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x4a1ed4,_0x4753a){Object['defineProperty'](_0x4a1ed4,'default',{'enumerable':!![],'value':_0x4753a});}:function(_0x18b0e5,_0x15ac45){_0x18b0e5['default']=_0x15ac45;}),__importStar=this&&this['__importStar']||(function(){var _0x367dab=function(_0x37f65e){return _0x367dab=Object['getOwnPropertyNames']||function(_0x44d3ac){var _0x2920a3=[];for(var _0xdf3e60 in _0x44d3ac)if(Object['prototype']['hasOwnProperty']['call'](_0x44d3ac,_0xdf3e60))_0x2920a3[_0x2920a3['length']]=_0xdf3e60;return _0x2920a3;},_0x367dab(_0x37f65e);};return function(_0x5b6f24){if(_0x5b6f24&&_0x5b6f24['__esModule'])return _0x5b6f24;var _0x56f540={};if(_0x5b6f24!=null){for(var _0x261ad6=_0x367dab(_0x5b6f24),_0x494e26=0x0;_0x494e26<_0x261ad6['length'];_0x494e26++)if(_0x261ad6[_0x494e26]!=='default')__createBinding(_0x56f540,_0x5b6f24,_0x261ad6[_0x494e26]);}return __setModuleDefault(_0x56f540,_0x5b6f24),_0x56f540;};}());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'(_0x3b81a3,_0x45ab4f,_0x2d6dd9,_0x4ce394,_0x45031c){const _0x212de6=_0x45031c,_0x5e9c64=path['resolve'](_0x212de6['cwd'],typeof _0x45ab4f['path']==='string'?_0x45ab4f['path']:'.'),_0x16ee85=typeof _0x45ab4f['depth']==='number'?Math['max'](0x0,Math['floor'](_0x45ab4f['depth'])):0x1,_0x177c3=[],_0x46e8ad=(_0x49aa53,_0x407d7c)=>{if(_0x407d7c>_0x16ee85)return;for(const _0x148dcf of MANIFESTS){const _0x36fcf3=path['join'](_0x49aa53,_0x148dcf['file']);if(!fs['existsSync'](_0x36fcf3)||!fs['statSync'](_0x36fcf3)['isFile']())continue;const _0x23a997=summarizeManifest(_0x36fcf3,_0x148dcf['file'],_0x148dcf['project']);if(_0x23a997['length']>0x0)_0x177c3['push']({'file':path['relative'](_0x5e9c64,_0x36fcf3)||_0x148dcf['file'],'summary':_0x23a997});break;}if(_0x407d7c<_0x16ee85){let _0x419d4e;try{_0x419d4e=fs['readdirSync'](_0x49aa53,{'withFileTypes':!![]});}catch{return;}for(const _0x1215b0 of _0x419d4e){_0x1215b0['isDirectory']()&&!_0x1215b0['name']['startsWith']('.')&&_0x1215b0['name']!=='node_modules'&&_0x46e8ad(path['join'](_0x49aa53,_0x1215b0['name']),_0x407d7c+0x1);}}};_0x46e8ad(_0x5e9c64,0x0);if(_0x177c3['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20supported\x20manifest\x20found\x20under\x20'+_0x5e9c64);const _0x398cdc=_0x177c3['map'](_0x3a2827=>'Manifest:\x20'+_0x3a2827['file']+'\x0a'+_0x3a2827['summary']['map'](_0x20e5de=>'\x20\x20'+_0x20e5de)['join']('\x0a'))['join']('\x0a\x0a');return(0x0,types_js_1['textResult'])(_0x398cdc);}};}function summarizeManifest(_0x15a294,_0x309fe9,_0x289215){const _0x122e3c=fs['readFileSync'](_0x15a294,'utf8');switch(_0x309fe9){case'package.json':return summarizePackageJson(_0x122e3c);case'pyproject.toml':return summarizePyproject(_0x122e3c);case'requirements.txt':return summarizeRequirements(_0x122e3c);case'Cargo.toml':return summarizeCargo(_0x122e3c);case'go.mod':return summarizeGoMod(_0x122e3c);case'tsconfig.json':return summarizeTsconfig(_0x122e3c);default:return summarizeGeneric(_0x122e3c,_0x289215+'\x20('+_0x309fe9+')');}}function summarizePackageJson(_0x5d89aa){let _0x48e2a6;try{_0x48e2a6=JSON['parse'](_0x5d89aa['replace'](/^\uFEFF/,''));}catch{return summarizeGeneric(_0x5d89aa,'package.json\x20(unparseable)');}const _0x16a9dd=[];if(typeof _0x48e2a6['name']==='string')_0x16a9dd['push']('name:\x20'+_0x48e2a6['name']);if(typeof _0x48e2a6['version']==='string')_0x16a9dd['push']('version:\x20'+_0x48e2a6['version']);if(typeof _0x48e2a6['type']==='string')_0x16a9dd['push']('type:\x20'+_0x48e2a6['type']);if(typeof _0x48e2a6['description']==='string')_0x16a9dd['push']('description:\x20'+_0x48e2a6['description']);const _0x6e1d04=_0x48e2a6['scripts'];if(_0x6e1d04)_0x16a9dd['push']('scripts:\x20'+Object['keys'](_0x6e1d04)['join'](',\x20'));for(const [_0x36a4c7,_0x5c91d0]of[['dependencies','dependencies'],['devDependencies','devDependencies']]){const _0x6d078a=_0x48e2a6[_0x5c91d0];if(_0x6d078a&&Object['keys'](_0x6d078a)['length']>0x0){const _0x3ef4de=Object['keys'](_0x6d078a);_0x16a9dd['push'](_0x36a4c7+'\x20('+_0x3ef4de['length']+'):\x20'+_0x3ef4de['slice'](0x0,0xf)['join'](',\x20')+(_0x3ef4de['length']>0xf?'…':''));}}if(_0x16a9dd['length']===0x0)_0x16a9dd['push']('no\x20name/version/scripts\x20found');return _0x16a9dd;}function summarizePyproject(_0x4ce91e){const _0x5844e8=[],_0x19259d=/^name\s*=\s*["']?([^"'\n]+)["']?/m,_0x282626=/^version\s*=\s*["']?([^"'\n]+)["']?/m,_0x3453d9=field(_0x4ce91e,_0x19259d,'project')??field(_0x4ce91e,_0x19259d),_0x4556b6=field(_0x4ce91e,_0x282626,'project')??field(_0x4ce91e,_0x282626);if(_0x3453d9)_0x5844e8['push']('name:\x20'+_0x3453d9);if(_0x4556b6)_0x5844e8['push']('version:\x20'+_0x4556b6);const _0x428921=tomlArrayField(_0x4ce91e,'project','dependencies');if(_0x428921['length']>0x0)_0x5844e8['push']('dependencies\x20('+_0x428921['length']+'):\x20'+_0x428921['slice'](0x0,0xc)['join'](',\x20')+(_0x428921['length']>0xc?'…':''));const _0x4a360a=tomlArrayField(_0x4ce91e,'build-system','requires');if(_0x4a360a['length']>0x0)_0x5844e8['push']('build\x20requires\x20('+_0x4a360a['length']+'):\x20'+_0x4a360a['slice'](0x0,0x6)['join'](',\x20'));if(_0x5844e8['length']===0x0)_0x5844e8['push']('empty/unknown\x20pyproject.toml');return _0x5844e8;}function summarizeRequirements(_0xe83bbb){const _0xb8b638=_0xe83bbb['split']('\x0a')['map'](_0x59d37e=>_0x59d37e['trim']())['filter'](_0x3f123f=>_0x3f123f&&!_0x3f123f['startsWith']('#')&&!_0x3f123f['startsWith']('--')&&!_0x3f123f['startsWith']('-r\x20'));return _0xb8b638['length']===0x0?['empty\x20requirements.txt']:[_0xb8b638['length']+'\x20requirement(s):\x20'+_0xb8b638['slice'](0x0,0xf)['join'](',\x20')+(_0xb8b638['length']>0xf?'…':'')];}function summarizeCargo(_0xbe0614){const _0x375a07=[],_0x373c38=sectionField(_0xbe0614,'package','name'),_0x2d0f2c=sectionField(_0xbe0614,'package','version');if(_0x373c38)_0x375a07['push']('name:\x20'+_0x373c38);if(_0x2d0f2c)_0x375a07['push']('version:\x20'+_0x2d0f2c);const _0x4c1e21=sectionLines(_0xbe0614,'dependencies');if(_0x4c1e21['length']>0x0)_0x375a07['push']('dependencies\x20('+_0x4c1e21['length']+'):\x20'+_0x4c1e21['slice'](0x0,0xc)['join'](',\x20')+(_0x4c1e21['length']>0xc?'…':''));const _0x22b375=sectionLines(_0xbe0614,'dev-dependencies');if(_0x22b375['length']>0x0)_0x375a07['push']('dev-dependencies\x20('+_0x22b375['length']+'):\x20'+_0x22b375['slice'](0x0,0x6)['join'](',\x20'));if(_0x375a07['length']===0x0)_0x375a07['push']('empty/unknown\x20Cargo.toml');return _0x375a07;}function summarizeGoMod(_0x295168){const _0x1b0f96=[],_0x35d16b=_0x295168['match'](/^module\s+(\S+)/m);if(_0x35d16b)_0x1b0f96['push']('module:\x20'+_0x35d16b[0x1]);const _0xae042b=_0x295168['match'](/^go\s+(\S+)/m);if(_0xae042b)_0x1b0f96['push']('go:\x20'+_0xae042b[0x1]);const _0x4be3d4=_0x295168['match'](/^require\s*\(([\s\S]*?)\)/m);if(_0x4be3d4){const _0x3d3ea5=_0x4be3d4[0x1]['split']('\x0a')['map'](_0x2127e0=>_0x2127e0['trim']()['split'](/\s+/)[0x0])['filter'](Boolean);_0x1b0f96['push']('require\x20('+_0x3d3ea5['length']+'):\x20'+_0x3d3ea5['slice'](0x0,0xc)['join'](',\x20')+(_0x3d3ea5['length']>0xc?'…':''));}if(_0x1b0f96['length']===0x0)_0x1b0f96['push']('empty\x20go.mod');return _0x1b0f96;}function summarizeTsconfig(_0x424f9c){let _0x24756a;try{_0x24756a=JSON['parse'](stripJsonc(_0x424f9c['replace'](/^\uFEFF/,'')));}catch{return['unparseable\x20tsconfig.json'];}const _0x3bfa7a=_0x24756a['compilerOptions']??{},_0x392dc9=[];_0x392dc9['push']('target:\x20'+String(_0x3bfa7a['target']??'unspecified')),_0x392dc9['push']('module:\x20'+String(_0x3bfa7a['module']??'unspecified'));if(_0x3bfa7a['strict']!==undefined)_0x392dc9['push']('strict:\x20'+String(_0x3bfa7a['strict']));if(_0x3bfa7a['outDir'])_0x392dc9['push']('outDir:\x20'+String(_0x3bfa7a['outDir']));const _0x158402=Array['isArray'](_0x24756a['include'])?_0x24756a['include']['join'](',\x20'):'';if(_0x158402)_0x392dc9['push']('include:\x20'+_0x158402);return _0x392dc9;}function summarizeGeneric(_0x80e100,_0x561ff7){const _0x4e7a33=_0x80e100['split']('\x0a')['slice'](0x0,0xf)['filter'](_0x4b3005=>_0x4b3005['trim']());return _0x4e7a33['length']===0x0?[_0x561ff7+':\x20empty\x20file']:[_0x561ff7+':']['concat'](_0x4e7a33['map'](_0x33806a=>'\x20\x20'+_0x33806a['trim']()['slice'](0x0,0x64)));}function field(_0x531ec3,_0x579bd5,_0x4bf46d){const _0x755135=_0x4bf46d?findSection(_0x531ec3,_0x4bf46d):_0x531ec3;if(!_0x755135)return undefined;const _0x51e361=_0x755135['match'](_0x579bd5);return _0x51e361?_0x51e361[0x1]['trim']():undefined;}function tomlArrayField(_0xdaa112,_0x2b747f,_0x1c635b){const _0x298da1=findSection(_0xdaa112,_0x2b747f);if(!_0x298da1)return[];const _0x3a3ee4=_0x298da1['match'](new RegExp('^'+_0x1c635b+'\x5cs*=\x5cs*\x5c[([\x5cs\x5cS]*?)\x5c]','m'));if(!_0x3a3ee4)return[];return Array['from'](_0x3a3ee4[0x1]['matchAll'](/["']([^"']+)["']/g))['map'](_0x4fb2e5=>_0x4fb2e5[0x1]);}function stripJsonc(_0x598d44){let _0x302eff='',_0x18e2b2=![],_0x1d339d=![];for(let _0x4503ea=0x0;_0x4503ea<_0x598d44['length'];_0x4503ea++){const _0x2e28d8=_0x598d44[_0x4503ea];if(_0x18e2b2){_0x302eff+=_0x2e28d8;if(_0x1d339d)_0x1d339d=![];else{if(_0x2e28d8==='\x5c')_0x1d339d=!![];else{if(_0x2e28d8==='\x22')_0x18e2b2=![];}}continue;}if(_0x2e28d8==='\x22'){_0x18e2b2=!![],_0x302eff+=_0x2e28d8;continue;}if(_0x2e28d8==='/'&&_0x598d44[_0x4503ea+0x1]==='/'){while(_0x4503ea<_0x598d44['length']&&_0x598d44[_0x4503ea]!=='\x0a')_0x4503ea++;continue;}if(_0x2e28d8==='/'&&_0x598d44[_0x4503ea+0x1]==='*'){_0x4503ea+=0x2;while(_0x4503ea<_0x598d44['length']&&!(_0x598d44[_0x4503ea]==='*'&&_0x598d44[_0x4503ea+0x1]==='/'))_0x4503ea++;_0x4503ea++;continue;}if(_0x2e28d8===','){let _0x68eb56=_0x4503ea+0x1;while(_0x68eb56<_0x598d44['length']){if(/\s/['test'](_0x598d44[_0x68eb56])){_0x68eb56++;continue;}if(_0x598d44[_0x68eb56]==='/'&&_0x598d44[_0x68eb56+0x1]==='/'){while(_0x68eb56<_0x598d44['length']&&_0x598d44[_0x68eb56]!=='\x0a')_0x68eb56++;continue;}if(_0x598d44[_0x68eb56]==='/'&&_0x598d44[_0x68eb56+0x1]==='*'){_0x68eb56+=0x2;while(_0x68eb56<_0x598d44['length']&&!(_0x598d44[_0x68eb56]==='*'&&_0x598d44[_0x68eb56+0x1]==='/'))_0x68eb56++;_0x68eb56++;continue;}break;}if(_0x598d44[_0x68eb56]===']'||_0x598d44[_0x68eb56]==='}')continue;_0x302eff+=_0x2e28d8;continue;}_0x302eff+=_0x2e28d8;}return _0x302eff;}function sectionField(_0x573d04,_0x7af60b,_0x3b6cd3){const _0x19a024=new RegExp('^'+_0x3b6cd3+'\x5cs*=\x5cs*[\x22\x27]?([^\x22\x27\x0a]+)[\x22\x27]?','m');return field(_0x573d04,_0x19a024,_0x7af60b);}function sectionLines(_0x307157,_0xe2390b){const _0x465daa=findSection(_0x307157,_0xe2390b);if(!_0x465daa)return[];return _0x465daa['split']('\x0a')['map'](_0x47b474=>_0x47b474['trim']())['filter'](_0x167953=>_0x167953&&_0x167953!==']'&&!_0x167953['startsWith']('[')&&!_0x167953['startsWith']('#'))['map'](_0x5a1080=>{const _0x57e454=_0x5a1080['split'](/\s*=\s*/,0x1)[0x0]['trim']();return _0x57e454['startsWith']('\x22')||_0x57e454['startsWith']('\x27')||_0x57e454['includes']('==')?_0x5a1080['split'](/\s+/)[0x0]['replace'](/^["']|["']$/g,''):_0x5a1080['replace'](/^["']|["']$/g,'');})['filter'](Boolean);}function findSection(_0x1f6e7f,_0x5d724f){const _0x1978ae=_0x1f6e7f['split']('\x0a');let _0xa5bff4=![];const _0x491151=[];for(const _0x49c0a6 of _0x1978ae){const _0x2dc9cb=_0x49c0a6['match'](/^\s*\[([^\]]+)\]/);if(_0x2dc9cb){_0xa5bff4=_0x2dc9cb[0x1]===_0x5d724f;continue;}if(_0xa5bff4){if(/^\s*\[/['test'](_0x49c0a6))break;_0x491151['push'](_0x49c0a6);}}return _0x491151['join']('\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(_0xcfedf,_0x201eb1,_0x3ab26f,_0x45cde1){if(_0x45cde1===undefined)_0x45cde1=_0x3ab26f;var _0x32d372=Object['getOwnPropertyDescriptor'](_0x201eb1,_0x3ab26f);(!_0x32d372||('get'in _0x32d372?!_0x201eb1['__esModule']:_0x32d372['writable']||_0x32d372['configurable']))&&(_0x32d372={'enumerable':!![],'get':function(){return _0x201eb1[_0x3ab26f];}}),Object['defineProperty'](_0xcfedf,_0x45cde1,_0x32d372);}:function(_0xd41e8e,_0x3c0338,_0x391696,_0x5fe620){if(_0x5fe620===undefined)_0x5fe620=_0x391696;_0xd41e8e[_0x5fe620]=_0x3c0338[_0x391696];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x443c0d,_0x264ff4){Object['defineProperty'](_0x443c0d,'default',{'enumerable':!![],'value':_0x264ff4});}:function(_0x5c26a3,_0x5b580b){_0x5c26a3['default']=_0x5b580b;}),__importStar=this&&this['__importStar']||(function(){var _0x3afda9=function(_0x5b896){return _0x3afda9=Object['getOwnPropertyNames']||function(_0x54ff69){var _0x5adddc=[];for(var _0x54b16a in _0x54ff69)if(Object['prototype']['hasOwnProperty']['call'](_0x54ff69,_0x54b16a))_0x5adddc[_0x5adddc['length']]=_0x54b16a;return _0x5adddc;},_0x3afda9(_0x5b896);};return function(_0x1f986c){if(_0x1f986c&&_0x1f986c['__esModule'])return _0x1f986c;var _0x24c7fa={};if(_0x1f986c!=null){for(var _0x348e99=_0x3afda9(_0x1f986c),_0x168dcb=0x0;_0x168dcb<_0x348e99['length'];_0x168dcb++)if(_0x348e99[_0x168dcb]!=='default')__createBinding(_0x24c7fa,_0x1f986c,_0x348e99[_0x168dcb]);}return __setModuleDefault(_0x24c7fa,_0x1f986c),_0x24c7fa;};}());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(_0x579c2c,_0x2e9e97){let _0x209f60;try{_0x209f60=fs['readFileSync'](_0x579c2c,'utf8');}catch{return null;}const _0x577b68=_0x209f60['match'](/^---\s*\n([\s\S]*?)\n---/),_0x2257b3={};if(_0x577b68)for(const _0x52d824 of _0x577b68[0x1]['split']('\x0a')){const _0x52066b=_0x52d824['match'](/^\s*([^:]+):\s*(.*?)\s*$/);if(_0x52066b)_0x2257b3[_0x52066b[0x1]['trim']()['toLowerCase']()]=_0x52066b[0x2]['trim']();}return{'name':_0x2257b3['name']??_0x2e9e97,'description':_0x2257b3['description']??''};}function scanMarketplace(_0x52c456){const _0x5749b7=[],_0x533a3b=path['join'](_0x52c456,'skills');if(fs['existsSync'](_0x533a3b))for(const _0x42a3bf of(0x0,skills_js_1['loadSkillsFromDir'])(_0x533a3b)){_0x5749b7['push']({'kind':'skill','name':_0x42a3bf['name'],'description':_0x42a3bf['description']});}const _0x4d1af9=path['join'](_0x52c456,'agents');let _0x3fb243=[];try{_0x3fb243=fs['readdirSync'](_0x4d1af9);}catch{_0x3fb243=[];}for(const _0x3233a4 of _0x3fb243){if(!_0x3233a4['endsWith']('.md'))continue;const _0x2324ec=readAgentCard(path['join'](_0x4d1af9,_0x3233a4),path['basename'](_0x3233a4,'.md'));if(_0x2324ec&&NAME_RE['test'](_0x2324ec['name']))_0x5749b7['push']({'kind':'agent','name':_0x2324ec['name'],'description':_0x2324ec['description']});}return _0x5749b7['sort']((_0x2f8f79,_0xd28b8e)=>_0x2f8f79['name']['localeCompare'](_0xd28b8e['name']));}function searchMarketplace(_0x1bd32c,_0x228b43){const _0x128f45=_0x228b43['trim']()['toLowerCase']();if(!_0x128f45)return[];return scanMarketplace(_0x1bd32c)['filter'](_0x43e1ca=>_0x43e1ca['name']['toLowerCase']()['includes'](_0x128f45)||_0x43e1ca['description']['toLowerCase']()['includes'](_0x128f45));}function copyDirFiltered(_0x5c89eb,_0x528cd8){fs['mkdirSync'](_0x528cd8,{'recursive':!![]});for(const _0x2f1809 of fs['readdirSync'](_0x5c89eb,{'withFileTypes':!![]})){if(_0x2f1809['isSymbolicLink']())continue;const _0xfba3a2=path['join'](_0x5c89eb,_0x2f1809['name']),_0x4158aa=path['join'](_0x528cd8,_0x2f1809['name']);if(_0x2f1809['isDirectory']())copyDirFiltered(_0xfba3a2,_0x4158aa);else fs['copyFileSync'](_0xfba3a2,_0x4158aa);}}function installMarketplaceEntry(_0x1309d7,_0x1525dc,_0x33cb7d,_0x13e2db){if(!NAME_RE['test'](_0x33cb7d))return{'ok':![],'error':'Invalid\x20name\x20\x27'+_0x33cb7d+'\x27\x20(use\x20letters,\x20digits,\x20-,\x20_).'};const _0x186fa7=path['join'](_0x13e2db,'.trayambak');if(_0x1525dc==='skill'){const _0x334c12=path['join'](_0x1309d7,'skills',_0x33cb7d);if(!fs['existsSync'](path['join'](_0x334c12,'SKILL.md')))return{'ok':![],'error':'Skill\x20\x27'+_0x33cb7d+'\x27\x20is\x20not\x20on\x20the\x20shelf.'};const _0x44e997=path['join'](_0x186fa7,'skills',_0x33cb7d);if(fs['existsSync'](_0x44e997))return{'ok':![],'error':'Skill\x20\x27'+_0x33cb7d+'\x27\x20is\x20already\x20installed\x20(remove\x20it\x20first).'};return copyDirFiltered(_0x334c12,_0x44e997),{'ok':!![],'message':'Installed\x20skill\x20\x27'+_0x33cb7d+'\x27\x20→\x20'+_0x44e997};}const _0x4c8521=path['join'](_0x1309d7,'agents',_0x33cb7d+'.md');if(!fs['existsSync'](_0x4c8521))return{'ok':![],'error':'Agent\x20\x27'+_0x33cb7d+'\x27\x20is\x20not\x20on\x20the\x20shelf.'};const _0x52c1a2=path['join'](_0x186fa7,'agents',_0x33cb7d+'.md');if(fs['existsSync'](_0x52c1a2))return{'ok':![],'error':'Agent\x20\x27'+_0x33cb7d+'\x27\x20is\x20already\x20installed\x20(remove\x20it\x20first).'};return fs['mkdirSync'](path['dirname'](_0x52c1a2),{'recursive':!![]}),fs['copyFileSync'](_0x4c8521,_0x52c1a2),{'ok':!![],'message':'Installed\x20agent\x20\x27'+_0x33cb7d+'\x27\x20→\x20'+_0x52c1a2};}function removeMarketplaceEntry(_0x191dfb,_0x4349bb,_0x522f6b){if(!NAME_RE['test'](_0x4349bb))return{'ok':![],'error':'Invalid\x20name\x20\x27'+_0x4349bb+'\x27\x20(use\x20letters,\x20digits,\x20-,\x20_).'};const _0x4a7785=_0x191dfb==='skill'?path['join'](_0x522f6b,'.trayambak','skills',_0x4349bb):path['join'](_0x522f6b,'.trayambak','agents',_0x4349bb+'.md');if(!fs['existsSync'](_0x4a7785))return{'ok':![],'error':'\x27'+_0x4349bb+'\x27\x20is\x20not\x20installed.'};return fs['rmSync'](_0x4a7785,{'recursive':!![],'force':!![]}),{'ok':!![],'message':'Removed\x20'+_0x191dfb+'\x20\x27'+_0x4349bb+'\x27'};}function formatEntries(_0x5d64da){if(_0x5d64da['length']===0x0)return'Marketplace\x20shelf\x20is\x20empty.';return _0x5d64da['map'](_0x967c3d=>'-\x20['+_0x967c3d['kind']+']\x20'+_0x967c3d['name']+(_0x967c3d['description']?':\x20'+_0x967c3d['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(_0x1e8124){return{'definition':definition,async 'execute'(_0xcc5949,_0x44f0f9,_0x5a63c6,_0x585fd0,_0x5b0eb5){const _0x459b99=String(_0x44f0f9['action']??'')['trim']()['toLowerCase'](),_0x3d92d6=typeof _0x44f0f9['source']==='string'&&_0x44f0f9['source']?_0x44f0f9['source']:_0x1e8124??defaultMarketplaceSource(),_0x2f4557=_0x5b0eb5?.['cwd']??process['cwd']();switch(_0x459b99){case'list':return(0x0,types_js_1['textResult'])(formatEntries(scanMarketplace(_0x3d92d6)));case'search':{const _0x249f7e=String(_0x44f0f9['query']??'');if(!_0x249f7e['trim']())return(0x0,types_js_1['textResult'])('Missing\x20\x27query\x27\x20for\x20search.',!![]);const _0x49f2af=searchMarketplace(_0x3d92d6,_0x249f7e);return(0x0,types_js_1['textResult'])(_0x49f2af['length']>0x0?formatEntries(_0x49f2af):'No\x20marketplace\x20entries\x20match\x20\x27'+_0x249f7e+'\x27.');}case'install':{const _0x5d84e0=String(_0x44f0f9['kind']??'')['trim']()['toLowerCase']();if(_0x5d84e0!=='skill'&&_0x5d84e0!=='agent')return(0x0,types_js_1['textResult'])('Missing\x20\x27kind\x27\x20for\x20install:\x20skill\x20or\x20agent.',!![]);const _0x35f982=String(_0x44f0f9['name']??'');if(!_0x35f982)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20for\x20install.',!![]);const _0x117b50=installMarketplaceEntry(_0x3d92d6,_0x5d84e0,_0x35f982,_0x2f4557);return _0x117b50['ok']?(0x0,types_js_1['textResult'])(_0x117b50['message']):(0x0,types_js_1['textResult'])(_0x117b50['error'],!![]);}case'remove':{const _0x360661=String(_0x44f0f9['kind']??'')['trim']()['toLowerCase']();if(_0x360661!=='skill'&&_0x360661!=='agent')return(0x0,types_js_1['textResult'])('Missing\x20\x27kind\x27\x20for\x20remove:\x20skill\x20or\x20agent.',!![]);const _0x472551=String(_0x44f0f9['name']??'');if(!_0x472551)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20for\x20remove.',!![]);const _0x93b54=removeMarketplaceEntry(_0x360661,_0x472551,_0x2f4557);return _0x93b54['ok']?(0x0,types_js_1['textResult'])(_0x93b54['message']):(0x0,types_js_1['textResult'])(_0x93b54['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(_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
|
+
'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x2881f9,_0x3c9f78,_0x1e60a5,_0x217555){if(_0x217555===undefined)_0x217555=_0x1e60a5;var _0x10710a=Object['getOwnPropertyDescriptor'](_0x3c9f78,_0x1e60a5);(!_0x10710a||('get'in _0x10710a?!_0x3c9f78['__esModule']:_0x10710a['writable']||_0x10710a['configurable']))&&(_0x10710a={'enumerable':!![],'get':function(){return _0x3c9f78[_0x1e60a5];}}),Object['defineProperty'](_0x2881f9,_0x217555,_0x10710a);}:function(_0x4bb430,_0x50dd0e,_0x2b7dbd,_0x567f84){if(_0x567f84===undefined)_0x567f84=_0x2b7dbd;_0x4bb430[_0x567f84]=_0x50dd0e[_0x2b7dbd];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x3db725,_0x28589d){Object['defineProperty'](_0x3db725,'default',{'enumerable':!![],'value':_0x28589d});}:function(_0x50d294,_0x4cf87a){_0x50d294['default']=_0x4cf87a;}),__importStar=this&&this['__importStar']||(function(){var _0x1b59f2=function(_0x4a8abe){return _0x1b59f2=Object['getOwnPropertyNames']||function(_0x48e151){var _0x2d9796=[];for(var _0x3f31f4 in _0x48e151)if(Object['prototype']['hasOwnProperty']['call'](_0x48e151,_0x3f31f4))_0x2d9796[_0x2d9796['length']]=_0x3f31f4;return _0x2d9796;},_0x1b59f2(_0x4a8abe);};return function(_0x4a5c8d){if(_0x4a5c8d&&_0x4a5c8d['__esModule'])return _0x4a5c8d;var _0x421fab={};if(_0x4a5c8d!=null){for(var _0x3a135e=_0x1b59f2(_0x4a5c8d),_0x1a5418=0x0;_0x1a5418<_0x3a135e['length'];_0x1a5418++)if(_0x3a135e[_0x1a5418]!=='default')__createBinding(_0x421fab,_0x4a5c8d,_0x3a135e[_0x1a5418]);}return __setModuleDefault(_0x421fab,_0x4a5c8d),_0x421fab;};}());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(_0x4414e1,_0x2dc8ef){return path['join'](_0x2dc8ef??process['cwd'](),'.trayambak','mcp-installs',_0x4414e1);}function listAvailableMcpServers(){return(0x0,registry_js_1['getConnectorRegistry'])()['load']();}function searchMcpServers(_0x4073ad){return(0x0,registry_js_1['getConnectorRegistry'])()['search'](_0x4073ad);}async function installMcpServer(_0x5c88ea,_0x5e586c,_0x2831f6){const _0x122868=(0x0,registry_js_1['getConnectorRegistry'])(),_0x57b520=_0x122868['get'](_0x5c88ea);if(!_0x57b520)return{'server':_0x5c88ea,'status':'failed','message':'MCP\x20server\x20\x27'+_0x5c88ea+'\x27\x20not\x20found\x20in\x20registry.\x20Use\x20/mcp\x20search\x20to\x20find\x20available\x20servers.'};const _0x4fdf26=_0x57b520['spec'],_0x4473a8=Array['isArray'](_0x4fdf26['command'])?_0x4fdf26['command']:[],_0x4523be=_0x4473a8[0x0],_0x409eed=_0x4473a8['slice'](0x1),_0x3e9fe0=(_0x31536f,_0x2d7092)=>{if(_0x31536f['status']!=='installed'||!_0x2831f6)return _0x31536f;try{const _0x1aa3eb={..._0x2831f6['mcpServers']??{}};return _0x1aa3eb[_0x5c88ea]=_0x2d7092??_0x4fdf26,(0x0,config_js_1['saveConfig'])({'mcpServers':_0x1aa3eb}),{..._0x31536f,'message':_0x31536f['message']+'\x0aMCP\x20server\x20\x27'+_0x5c88ea+'\x27\x20saved\x20to\x20trayambak\x20config.'};}catch{return _0x31536f;}};if(_0x57b520['npmPackage']&&_0x4473a8[0x0]==='npx'){const _0x20ab79=(0x0,spawn_resolve_js_1['resolveNpmCliJs'])(),_0x1c2435=_0x20ab79?undefined:(0x0,spawn_resolve_js_1['resolveExecutable'])('npm'),_0x15ff16=_0x1c2435&&(0x0,spawn_resolve_js_1['canSpawnDirectly'])(_0x1c2435)?_0x1c2435:undefined;if(!_0x20ab79&&!_0x15ff16){const _0x4a0c79=(0x0,spawn_resolve_js_1['resolveExecutable'])('npm');return{'server':_0x5c88ea,'status':'failed','message':_0x4a0c79?'npm\x20was\x20found\x20at\x20'+_0x4a0c79+'\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 _0x1c68c0=installDirFor(_0x5c88ea,_0x5e586c);fs['mkdirSync'](_0x1c68c0,{'recursive':!![]});const _0x10ba9c=_0x20ab79?process['execPath']:_0x15ff16,_0x32dd68=_0x20ab79?[_0x20ab79,'install','--prefix',_0x1c68c0,_0x57b520['npmPackage']]:['install','--prefix',_0x1c68c0,_0x57b520['npmPackage']];await execAsync(_0x10ba9c,_0x32dd68,_0x5e586c||_0x1c68c0);const _0x5a4b08=resolveInstalledEntry(_0x1c68c0,_0x57b520['npmPackage'])??{'command':_0x4473a8};return _0x3e9fe0({'server':_0x5c88ea,'status':'installed','message':'Installed\x20'+_0x57b520['npmPackage']+'\x20to\x20'+_0x1c68c0},_0x5a4b08);}catch(_0x518c4c){return{'server':_0x5c88ea,'status':'failed','message':'npm\x20install\x20failed:\x20'+(_0x518c4c instanceof Error?_0x518c4c['message']:String(_0x518c4c))};}}if(_0x57b520['npmPackage']==='mcp'||_0x4523be==='python'||_0x4523be==='python3')try{const _0x3f2846=installDirFor(_0x5c88ea,_0x5e586c);fs['mkdirSync'](_0x3f2846,{'recursive':!![]});const _0x55bcd2=_0x409eed['find'](_0x5acadb=>typeof _0x5acadb==='string'&&_0x5acadb['endsWith']('.py'));if(_0x55bcd2){const _0x3b0716=path['isAbsolute'](_0x55bcd2)?_0x55bcd2:path['resolve'](_0x4fdf26['cwd']||_0x5e586c||'.',_0x55bcd2);if(!fs['existsSync'](_0x3b0716))return{'server':_0x5c88ea,'status':'failed','message':'Server\x20script\x20not\x20found:\x20'+_0x3b0716};const _0x2be7c0=(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(!_0x2be7c0)return{'server':_0x5c88ea,'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'](_0x2be7c0,path['extname'](_0x2be7c0)))?await execAsync(_0x2be7c0,['install','mcp'],_0x5e586c||_0x3f2846):await execAsync(_0x2be7c0,['-m','pip','install','mcp'],_0x5e586c||_0x3f2846),_0x3e9fe0({'server':_0x5c88ea,'status':'installed','message':'Python\x20MCP\x20server\x20ready\x20at\x20'+_0x3b0716},{'command':[_0x4523be,_0x3b0716],'cwd':path['dirname'](_0x3b0716)});}return{'server':_0x5c88ea,'status':'skipped','message':'No\x20Python\x20script\x20path\x20found\x20in\x20server\x20spec.'};}catch(_0x594a68){return{'server':_0x5c88ea,'status':'failed','message':'Python\x20setup\x20failed:\x20'+(_0x594a68 instanceof Error?_0x594a68['message']:String(_0x594a68))};}return{'server':_0x5c88ea,'status':'skipped','message':'Unknown\x20server\x20type\x20for\x20\x27'+_0x5c88ea+'\x27.\x20Configure\x20manually\x20in\x20trayambak\x20config.'};}function resolveInstalledEntry(_0x66ebd9,_0xa880d1){const _0x5e5da7=path['join'](_0x66ebd9,'node_modules',_0xa880d1);for(const _0x1df6a7 of['dist/index.js','dist/index.cjs','index.js','lib/index.js']){const _0x4e4126=path['join'](_0x5e5da7,_0x1df6a7);try{if(fs['existsSync'](_0x4e4126)&&fs['statSync'](_0x4e4126)['isFile']())return{'command':['node',_0x4e4126]};}catch{}}return undefined;}function createMcpInstallTool(){const _0xdb56a4={'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':_0xdb56a4,async 'execute'(_0x33d97f,_0x208dc4,_0x24f188,_0x46cfd9,_0x21ca9f){const _0x58faba=_0x208dc4['action']??'list',_0xd2e159=_0x208dc4['query']??'';if(_0x58faba==='list'){const _0x40890a=listAvailableMcpServers(),_0x55c04a=_0x40890a['map'](_0xa9ac8e=>'\x20\x20'+_0xa9ac8e['id']+':\x20'+_0xa9ac8e['description']+'\x20['+_0xa9ac8e['category']+']');return(0x0,types_js_1['textResult'])('Available\x20MCP\x20servers\x20('+_0x40890a['length']+'):\x0a'+_0x55c04a['join']('\x0a'));}if(_0x58faba==='search'){const _0x4efa80=searchMcpServers(_0xd2e159||'mcp');if(_0x4efa80['length']===0x0)return(0x0,types_js_1['textResult'])('No\x20MCP\x20servers\x20found\x20for\x20\x27'+_0xd2e159+'\x27.');const _0x248e84=_0x4efa80['map'](_0x14b326=>'\x20\x20'+_0x14b326['id']+':\x20'+_0x14b326['description']+'\x20['+_0x14b326['category']+']');return(0x0,types_js_1['textResult'])('Found\x20'+_0x4efa80['length']+'\x20MCP\x20servers:\x0a'+_0x248e84['join']('\x0a'));}if(_0x58faba==='info'){const _0xc12536=(0x0,registry_js_1['getConnectorRegistry'])()['get'](_0xd2e159);if(!_0xc12536)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0xd2e159+'\x27\x20not\x20found.\x20Use\x20/mcp\x20search\x20to\x20find\x20servers.',!![]);const _0x3915e5=['ID:\x20'+_0xc12536['id'],'Name:\x20'+_0xc12536['name'],'Description:\x20'+_0xc12536['description'],'Category:\x20'+_0xc12536['category'],'Keywords:\x20'+(_0xc12536['keywords']??[])['join'](',\x20'),'Spec:\x20'+JSON['stringify'](_0xc12536['spec'],null,0x2),_0xc12536['npmPackage']?'NPM\x20Package:\x20'+_0xc12536['npmPackage']:'']['filter'](Boolean);return(0x0,types_js_1['textResult'])(_0x3915e5['join']('\x0a'));}if(_0x58faba==='install'){const _0x3d3e0f=await installMcpServer(_0xd2e159,_0x21ca9f?.['cwd'],_0x21ca9f?.['config']);if(_0x3d3e0f['status']==='failed')return(0x0,types_js_1['textResult'])(_0x3d3e0f['message'],!![]);return(0x0,types_js_1['textResult'])(_0x3d3e0f['message']);}return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20'+_0x58faba+'.\x20Use\x20search,\x20install,\x20list,\x20or\x20info.',!![]);}};}function execAsync(_0x401fab,_0x3a3edc,_0x532017,_0x50e8f3=0x2bf20){return new Promise((_0x225150,_0x130d14)=>{const _0x34b75a=(0x0,child_process_1['spawn'])(_0x401fab,_0x3a3edc,{'cwd':_0x532017,'stdio':['ignore','pipe','pipe'],'shell':![],'windowsHide':!![]});let _0x3ebc53='',_0x5d102c='';const _0x48e3cb=setTimeout(()=>{try{_0x34b75a['kill']('SIGKILL');}catch{}_0x130d14(new Error('Command\x20timed\x20out\x20after\x20'+_0x50e8f3+'ms:\x20'+_0x401fab+'\x20'+_0x3a3edc['join']('\x20')));},_0x50e8f3);if(typeof _0x48e3cb['unref']==='function')_0x48e3cb['unref']();_0x34b75a['stdout']['on']('data',_0xc62d0=>{_0x3ebc53+=_0xc62d0['toString']();}),_0x34b75a['stderr']['on']('data',_0x59e51f=>{_0x5d102c+=_0x59e51f['toString']();}),_0x34b75a['on']('close',_0x100859=>{clearTimeout(_0x48e3cb);if(_0x100859===0x0)_0x225150();else _0x130d14(new Error('Command\x20failed\x20('+_0x100859+'):\x20'+(_0x5d102c||_0x3ebc53)['slice'](-0x7d0)));}),_0x34b75a['on']('error',_0x315eaf=>{clearTimeout(_0x48e3cb),_0x130d14(_0x315eaf);});});}
|
|
@@ -1 +1 @@
|
|
|
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
|
+
'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x5275a7,_0x23106f,_0x3c4fc0,_0x1ca03f){if(_0x1ca03f===undefined)_0x1ca03f=_0x3c4fc0;var _0x3ec276=Object['getOwnPropertyDescriptor'](_0x23106f,_0x3c4fc0);(!_0x3ec276||('get'in _0x3ec276?!_0x23106f['__esModule']:_0x3ec276['writable']||_0x3ec276['configurable']))&&(_0x3ec276={'enumerable':!![],'get':function(){return _0x23106f[_0x3c4fc0];}}),Object['defineProperty'](_0x5275a7,_0x1ca03f,_0x3ec276);}:function(_0x35c562,_0x50d4e0,_0x1f8d80,_0x4b2e85){if(_0x4b2e85===undefined)_0x4b2e85=_0x1f8d80;_0x35c562[_0x4b2e85]=_0x50d4e0[_0x1f8d80];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x3c9ef3,_0x485408){Object['defineProperty'](_0x3c9ef3,'default',{'enumerable':!![],'value':_0x485408});}:function(_0x5d9ed3,_0x11573a){_0x5d9ed3['default']=_0x11573a;}),__importStar=this&&this['__importStar']||(function(){var _0x252057=function(_0x90c89e){return _0x252057=Object['getOwnPropertyNames']||function(_0x287142){var _0x13545c=[];for(var _0x15ec75 in _0x287142)if(Object['prototype']['hasOwnProperty']['call'](_0x287142,_0x15ec75))_0x13545c[_0x13545c['length']]=_0x15ec75;return _0x13545c;},_0x252057(_0x90c89e);};return function(_0x863db5){if(_0x863db5&&_0x863db5['__esModule'])return _0x863db5;var _0x2246ff={};if(_0x863db5!=null){for(var _0x1df6d1=_0x252057(_0x863db5),_0x26720=0x0;_0x26720<_0x1df6d1['length'];_0x26720++)if(_0x1df6d1[_0x26720]!=='default')__createBinding(_0x2246ff,_0x863db5,_0x1df6d1[_0x26720]);}return __setModuleDefault(_0x2246ff,_0x863db5),_0x2246ff;};}());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(_0x3adce8,_0x28de88){this['name']=_0x3adce8,this['spec']=_0x28de88;}get['timeoutMs'](){return this['spec']['timeoutMs']??0xea60;}async['connect'](){if(this['initialized'])return;const _0xa0bc4e={'protocolVersion':'2024-11-05','capabilities':{},'clientInfo':{'name':'trayambak','version':'0.3.0'}};this['spawnStdio'](),await this['request']('initialize',_0xa0bc4e);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 _0x288308=await this['request']('tools/list',{});return _0x288308?.['tools']??[];}async['listResources'](){await this['connect']();try{const _0x13ddb0=await this['request']('resources/list',{});return _0x13ddb0?.['resources']??[];}catch{return[];}}async['listPrompts'](){await this['connect']();try{const _0x31b045=await this['request']('prompts/list',{});return _0x31b045?.['prompts']??[];}catch{return[];}}async['status'](){const _0x130f2f=this['child']!==null&&this['child']['exitCode']===null&&!this['child']['killed'];let _0x5a8e2a='disconnected';if(_0x130f2f)_0x5a8e2a='stdio';return{'name':this['name'],'connected':_0x130f2f,'transport':_0x5a8e2a,'initialized':this['initialized']&&_0x130f2f};}async['getPrompt'](_0x1f7e22,_0x2ef7d0){await this['connect']();try{const _0x50f220=await this['request']('prompts/get',{'name':_0x1f7e22,'arguments':_0x2ef7d0??{}}),_0x2fc929=_0x50f220?.['messages']??_0x50f220?.['prompt']?.['messages'];if(!_0x2fc929)return null;return{'name':_0x1f7e22,'messages':_0x2fc929};}catch{return null;}}async['readResource'](_0x242c10){await this['connect']();try{const _0x152a32=await this['request']('resources/read',{'uri':_0x242c10});if(_0x152a32?.['contents'])return _0x152a32['contents']['map'](_0x43c4cd=>typeof _0x43c4cd['text']==='string'?_0x43c4cd['text']:typeof _0x43c4cd['blob']==='string'?'[binary\x20'+(_0x43c4cd['mimeType']??'blob')+']':JSON['stringify'](_0x43c4cd))['join']('\x0a');return'';}catch{return'';}}async['callTool'](_0x1705c8,_0x3757cb){return await this['connect'](),this['request']('tools/call',{'name':_0x1705c8,'arguments':_0x3757cb});}['close'](){const _0x1a4171=this['child'];this['child']=null,this['rl']?.['close'](),this['rl']=null,this['initialized']=![],this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20connection\x20closed'));if(_0x1a4171&&_0x1a4171['exitCode']===null&&!_0x1a4171['killed']){_0x1a4171['kill']('SIGTERM');const _0x293956=setTimeout(()=>{try{if(_0x1a4171['exitCode']===null)_0x1a4171['kill']('SIGKILL');}catch{}},0x7d0);if(typeof _0x293956['unref']==='function')_0x293956['unref']();}}['getStderrLines'](){return this['stderrLines'];}['spawnStdio'](){const _0x11145d=this['spec'],_0xec74f=_0x11145d['command']??[];if(_0xec74f['length']===0x0)throw new Error('MCP\x20server\x20\x27'+this['name']+'\x27\x20has\x20no\x20command');const {command:_0xc9e30a,args:_0x5dea76}=(0x0,spawn_resolve_js_1['resolveMcpCommand'])(_0xec74f);this['child']=(0x0,child_process_1['spawn'])(_0xc9e30a,_0x5dea76,{'cwd':_0x11145d['cwd']??process['cwd'](),'env':{...(0x0,env_filter_js_1['getSafeEnv'])(process.env),..._0x11145d['env']??{}},'stdio':['pipe','pipe','pipe'],'shell':![],'windowsHide':!![]}),this['rl']=readline['createInterface']({'input':this['child']['stdout']}),this['rl']['on']('line',_0x13be82=>{try{const _0x57a160=JSON['parse'](_0x13be82);if(_0x57a160['id']===undefined)return;const _0x171423=this['pending']['get'](_0x57a160['id']);if(!_0x171423)return;this['pending']['delete'](_0x57a160['id']);const _0x274180=_0x57a160;if(_0x274180['error'])_0x171423['reject'](new Error('MCP\x20'+this['name']+':\x20'+_0x274180['error']['message']));else _0x171423['resolve'](_0x274180['result']);}catch{}}),this['child']['stderr']&&this['child']['stderr']['on']('data',_0x2e52b7=>{const _0x951cb9=_0x2e52b7['toString']();for(const _0x36a23f of _0x951cb9['split'](/\r?\n/)){const _0x542900=_0x36a23f['trim']()['slice'](-0x1f4);if(_0x542900)this['stderrLines']['push'](_0x542900);}this['stderrLines']['length']>0x32&&this['stderrLines']['splice'](0x0,this['stderrLines']['length']-0x32);}),this['child']['on']('error',_0x3e1540=>this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20process\x20error:\x20'+_0x3e1540['message']))),this['child']['on']('exit',_0x3b5d8f=>{const _0x13a508=this['stderrLines']['slice'](-0x5)['join']('\x20|\x20')['slice'](0x0,0x1f4);this['lastError']='exited\x20with\x20code\x20'+(_0x3b5d8f??'signal'),this['child']=null,this['initialized']=![],this['rejectAll'](new Error('MCP\x20'+this['name']+'\x20exited\x20with\x20code\x20'+(_0x3b5d8f??'signal')+'.'+(_0x13a508?'\x20Server\x20stderr:\x20'+_0x13a508:'')));});}['request'](_0x113e03,_0x1c3597){if(!this['child'])throw new Error('MCP\x20\x27'+this['name']+'\x27\x20is\x20not\x20connected');const _0x56d24b=this['nextId']++;return new Promise((_0x3925e9,_0x146cd0)=>{const _0xaf8de9=setTimeout(()=>{this['pending']['delete'](_0x56d24b),_0x146cd0(new Error('MCP\x20'+this['name']+':\x20timeout\x20on\x20\x27'+_0x113e03+'\x27'));},this['timeoutMs']);this['pending']['set'](_0x56d24b,{'resolve':_0x445d4f=>{clearTimeout(_0xaf8de9),_0x3925e9(_0x445d4f);},'reject':_0x1f2a1a=>{clearTimeout(_0xaf8de9),_0x146cd0(_0x1f2a1a);}});const _0x1052da={'jsonrpc':'2.0','id':_0x56d24b,'method':_0x113e03,'params':_0x1c3597};this['child']['stdin']['write'](JSON['stringify'](_0x1052da)+'\x0a');});}['rejectAll'](_0x1a73ef){for(const [,_0x17fcab]of this['pending'])_0x17fcab['reject'](_0x1a73ef);this['pending']['clear']();}}exports['McpProcess']=McpProcess;const mcpProcesses=new Map();function getMcpProcess(_0x58df47,_0x4cec0b){let _0x70b86c=mcpProcesses['get'](_0x58df47);return _0x70b86c&&JSON['stringify'](_0x70b86c['spec'])!==JSON['stringify'](_0x4cec0b)&&(_0x70b86c['close'](),mcpProcesses['delete'](_0x58df47),_0x70b86c=undefined),!_0x70b86c&&(_0x70b86c=new McpProcess(_0x58df47,_0x4cec0b),mcpProcesses['set'](_0x58df47,_0x70b86c)),_0x70b86c;}function createMcpRunnerTool(){const _0x424f52={'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':_0x424f52,async 'execute'(_0x1dd3a2,_0xdeb6dc,_0x29f05d,_0x3cfb0b){const _0xea3efe=_0xdeb6dc['action'],_0x232acd=_0xdeb6dc['server'];if(_0xea3efe==='list_tools'||_0xea3efe==='connect'||_0xea3efe==='status'){if(!_0x232acd)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x5fb1c4=(0x0,registry_js_1['getConnectorRegistry'])(),_0x318ecf=_0x5fb1c4['get'](_0x232acd);if(!_0x318ecf)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20not\x20found\x20in\x20registry.\x20Use\x20trayambak__ToolSearch\x20to\x20find\x20servers.',!![]);const _0x42ade9=getMcpProcess(_0x232acd,_0x318ecf['spec']);try{if(_0xea3efe==='connect')return await _0x42ade9['connect'](),(0x0,types_js_1['textResult'])('Connected\x20to\x20MCP\x20server\x20\x27'+_0x232acd+'\x27.');if(_0xea3efe==='status'){const _0x1a4c14=await _0x42ade9['status'](),_0x1ceaa9=['MCP\x20server\x20\x27'+_0x232acd+'\x27\x20status:','\x20\x20connected:\x20'+_0x1a4c14['connected'],'\x20\x20transport:\x20'+_0x1a4c14['transport'],'\x20\x20initialized:\x20'+_0x1a4c14['initialized']];return(0x0,types_js_1['textResult'])(_0x1ceaa9['join']('\x0a'));}const _0x22beaa=await _0x42ade9['listTools']();if(_0x22beaa['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20is\x20connected\x20but\x20exposes\x20no\x20tools.');const _0x3d6deb=_0x22beaa['map'](_0x215bea=>'-\x20'+_0x215bea['name']+':\x20'+(_0x215bea['description']??'(no\x20description)'));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20tools:\x0a'+_0x3d6deb['join']('\x0a'));}catch(_0x3f033d){const _0x5e07c8=_0x42ade9['getStderrLines']()['slice'](-0x5)['join']('\x0a'),_0x3ea9ef=_0x3f033d instanceof Error?_0x3f033d['message']:String(_0x3f033d);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x232acd+':\x20'+_0x3ea9ef+(_0x5e07c8?'\x0aServer\x20stderr:\x0a'+_0x5e07c8:''),!![]);}}if(_0xea3efe==='call_tool'){if(!_0x232acd)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x364eb7=_0xdeb6dc['tool'],_0x417631=_0xdeb6dc['args']??{};if(!_0x364eb7)return(0x0,types_js_1['textResult'])('Missing\x20\x27tool\x27\x20parameter.',!![]);const _0x1995a7=(0x0,registry_js_1['getConnectorRegistry'])(),_0x19eac4=_0x1995a7['get'](_0x232acd);if(!_0x19eac4)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x336600=getMcpProcess(_0x232acd,_0x19eac4['spec']);try{const _0x1c6349=await _0x336600['callTool'](_0x364eb7,_0x417631),_0x1ebb50=(_0x1c6349['content']??[])['map'](_0xd9f238=>_0xd9f238['type']==='text'?_0xd9f238['text']:JSON['stringify'](_0xd9f238))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x1ebb50||'(empty\x20MCP\x20result)');}catch(_0x407ea0){const _0x142617=_0x336600['getStderrLines']()['slice'](-0x5)['join']('\x0a'),_0x491002=_0x407ea0 instanceof Error?_0x407ea0['message']:String(_0x407ea0);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x232acd+'.'+_0x364eb7+':\x20'+_0x491002+(_0x142617?'\x0aServer\x20stderr:\x0a'+_0x142617:''),!![]);}}if(_0xea3efe==='disconnect'){if(!_0x232acd)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x42ba3a=mcpProcesses['get'](_0x232acd);if(!_0x42ba3a)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20is\x20not\x20running.');return _0x42ba3a['close'](),mcpProcesses['delete'](_0x232acd),(0x0,types_js_1['textResult'])('Disconnected\x20MCP\x20server\x20\x27'+_0x232acd+'\x27.');}if(_0xea3efe==='list_resources'){if(!_0x232acd)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0xe5543d=(0x0,registry_js_1['getConnectorRegistry'])(),_0x2d9f5b=_0xe5543d['get'](_0x232acd);if(!_0x2d9f5b)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x57fb36=getMcpProcess(_0x232acd,_0x2d9f5b['spec']);try{const _0x1fabd9=await _0x57fb36['listResources']();if(_0x1fabd9['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20exposes\x20no\x20resources.');const _0x6658e8=_0x1fabd9['map'](_0x47ea13=>'-\x20'+_0x47ea13['name']+':\x20'+_0x47ea13['uri']+(_0x47ea13['mimeType']?'\x20('+_0x47ea13['mimeType']+')':''));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20resources:\x0a'+_0x6658e8['join']('\x0a'));}catch(_0x3f5910){const _0x3baa98=_0x3f5910 instanceof Error?_0x3f5910['message']:String(_0x3f5910);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x232acd+'\x20resources:\x20'+_0x3baa98,!![]);}}if(_0xea3efe==='list_prompts'){if(!_0x232acd)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x3d9d28=(0x0,registry_js_1['getConnectorRegistry'])(),_0x1edb6a=_0x3d9d28['get'](_0x232acd);if(!_0x1edb6a)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x5e33a0=getMcpProcess(_0x232acd,_0x1edb6a['spec']);try{const _0x5e2944=await _0x5e33a0['listPrompts']();if(_0x5e2944['length']===0x0)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20exposes\x20no\x20prompts.');const _0x24341c=_0x5e2944['map'](_0xe4356a=>'-\x20'+_0xe4356a['name']+':\x20'+(_0xe4356a['description']??'(no\x20description)'));return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20prompts:\x0a'+_0x24341c['join']('\x0a'));}catch(_0x1d2e36){const _0x49c451=_0x1d2e36 instanceof Error?_0x1d2e36['message']:String(_0x1d2e36);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x232acd+'\x20prompts:\x20'+_0x49c451,!![]);}}if(_0xea3efe==='get_prompt'){if(!_0x232acd)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x31eb86=_0xdeb6dc['name'];if(!_0x31eb86)return(0x0,types_js_1['textResult'])('Missing\x20\x27name\x27\x20parameter.',!![]);const _0x3d7265=(0x0,registry_js_1['getConnectorRegistry'])(),_0x217469=_0x3d7265['get'](_0x232acd);if(!_0x217469)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0x2d1caf=getMcpProcess(_0x232acd,_0x217469['spec']);try{const _0x1e6c32=typeof _0xdeb6dc['args']==='object'&&_0xdeb6dc['args']!==null?_0xdeb6dc['args']:undefined,_0x247b9d=await _0x2d1caf['getPrompt'](_0x31eb86,_0x1e6c32);if(!_0x247b9d)return(0x0,types_js_1['textResult'])('Prompt\x20\x27'+_0x31eb86+'\x27\x20not\x20found\x20on\x20server\x20\x27'+_0x232acd+'\x27.',!![]);const _0x3eb53a=_0x247b9d['messages']['map'](_0x23bb9d=>'['+_0x23bb9d['role']+']\x20'+(typeof _0x23bb9d['content']==='string'?_0x23bb9d['content']:JSON['stringify'](_0x23bb9d['content'])))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x3eb53a||'(empty\x20prompt)');}catch(_0x1c307d){const _0xaee130=_0x1c307d instanceof Error?_0x1c307d['message']:String(_0x1c307d);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x232acd+'\x20prompt:\x20'+_0xaee130,!![]);}}if(_0xea3efe==='read_resource'){if(!_0x232acd)return(0x0,types_js_1['textResult'])('Missing\x20\x27server\x27\x20parameter.',!![]);const _0x413b44=_0xdeb6dc['uri'];if(!_0x413b44)return(0x0,types_js_1['textResult'])('Missing\x20\x27uri\x27\x20parameter.',!![]);const _0x1cf4ec=(0x0,registry_js_1['getConnectorRegistry'])(),_0x49ab01=_0x1cf4ec['get'](_0x232acd);if(!_0x49ab01)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x232acd+'\x27\x20not\x20found\x20in\x20registry.',!![]);const _0xd8a19f=getMcpProcess(_0x232acd,_0x49ab01['spec']);try{const _0x5a592c=await _0xd8a19f['readResource'](_0x413b44);return(0x0,types_js_1['textResult'])(_0x5a592c||'(empty\x20resource)');}catch(_0x23b65d){const _0x1f41bd=_0x23b65d instanceof Error?_0x23b65d['message']:String(_0x23b65d);return(0x0,types_js_1['textResult'])('MCP\x20'+_0x232acd+'\x20resource\x20read:\x20'+_0x1f41bd,!![]);}}return(0x0,types_js_1['textResult'])('Unknown\x20action:\x20'+_0xea3efe+'.',!![]);}};}
|
|
@@ -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(_0x27baca={},_0xd46b3b){const _0x4d69be=[];for(const [_0x35c458,_0x4f3705]of Object['entries'](_0x27baca)){let _0x54428a=registry['get'](_0x35c458);_0x54428a&&JSON['stringify'](_0x54428a['spec'])!==JSON['stringify'](_0x4f3705)&&(_0x54428a['conn']?.['close'](),registry['delete'](_0x35c458),_0x54428a=undefined);!_0x54428a&&(_0x54428a={'name':_0x35c458,'spec':_0x4f3705,'conn':(0x0,index_js_1['createMcpConnection'])(_0x35c458,_0x4f3705),'tools':[],'resources':[],'prompts':[]},registry['set'](_0x35c458,_0x54428a));const _0x5ec77f=_0x54428a['tools']['length']>0x0;try{_0x54428a['tools']=await _0x54428a['conn']['listTools'](_0xd46b3b),_0x54428a['resources']=await _0x54428a['conn']['listResources'](),_0x54428a['prompts']=await _0x54428a['conn']['listPrompts']();}catch(_0x16dde9){_0x4d69be['push'](makeMcpErrorTool(_0x35c458,_0x16dde9 instanceof Error?_0x16dde9['message']:String(_0x16dde9)));if(!_0x5ec77f)continue;}for(const _0x2fa205 of _0x54428a['tools'])_0x4d69be['push'](makeMcpCallTool(_0x35c458,_0x2fa205));for(const _0x1e06df of _0x54428a['resources'])_0x4d69be['push'](makeMcpReadResourceTool(_0x35c458,_0x1e06df));for(const _0x3d6ccc of _0x54428a['prompts'])_0x4d69be['push'](makeMcpGetPromptTool(_0x35c458,_0x3d6ccc));}return _0x4d69be;}function slugify(_0x4c0fb3){const _0x4dd701=_0x4c0fb3['toLowerCase']()['replace'](/[^a-z0-9]+/g,'_')['replace'](/^_+|_+$/g,'')['slice'](0x0,0x28);return _0x4dd701||'item';}function toToolProperty(_0x4d03eb){const _0x37b089=_0x4d03eb??{},_0x213229={'type':_0x37b089['type']??'string','description':_0x37b089['description']??''};if(Array['isArray'](_0x37b089['enum']))_0x213229['enum']=_0x37b089['enum']['filter'](_0x590f96=>typeof _0x590f96==='string');if(_0x37b089['items']&&typeof _0x37b089['items']==='object')_0x213229['items']=toToolProperty(_0x37b089['items']);return _0x213229;}function abortable(_0x5898c9,_0x245596){if(!_0x5898c9)return _0x245596;if(_0x5898c9['aborted'])return Promise['reject'](new Error('aborted'));return new Promise((_0x335224,_0xb5e265)=>{const _0x3f55de=()=>_0xb5e265(new Error('aborted'));_0x5898c9['addEventListener']('abort',_0x3f55de,{'once':!![]}),_0x245596['then'](_0x348048=>{_0x5898c9['removeEventListener']('abort',_0x3f55de),_0x335224(_0x348048);},_0x4f77d2=>{_0x5898c9['removeEventListener']('abort',_0x3f55de),_0xb5e265(_0x4f77d2);});});}function makeMcpCallTool(_0x54e839,_0x17044d){const _0x338173='mcp__'+_0x54e839+'__'+_0x17044d['name'],_0x1a7ddb=_0x17044d['inputSchema']??{},_0x1422d0={};for(const [_0x39d321,_0x1357aa]of Object['entries'](_0x1a7ddb['properties']??{})){_0x1422d0[_0x39d321]=toToolProperty(_0x1357aa);}const _0x155299={'timeoutMs':0x7530,'name':_0x338173,'description':('Call\x20tool\x20\x27'+_0x17044d['name']+'\x27\x20on\x20MCP\x20server\x20\x27'+_0x54e839+'\x27.\x20'+(_0x17044d['description']??''))['trim'](),'parameters':{'type':'object','properties':_0x1422d0,'required':_0x1a7ddb['required']??[]}};return{'definition':_0x155299,async 'execute'(_0x1bb6ea,_0x3514f7,_0x4aa303,_0x3ddba4){const _0x20feb5=registry['get'](_0x54e839);if(!_0x20feb5)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x54e839+'\x27\x20is\x20not\x20registered.',!![]);try{const _0xe19b0=await abortable(_0x4aa303,_0x20feb5['conn']['callTool'](_0x17044d['name'],_0x3514f7)),_0x313f37=(_0xe19b0['content']??[])['map'](_0x4345e9=>typeof _0x4345e9['text']==='string'?_0x4345e9['text']:_0x4345e9['blob']?'[binary\x20'+(_0x4345e9['mimeType']??'blob')+']':JSON['stringify'](_0x4345e9))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x313f37||'(empty\x20MCP\x20result)',Boolean(_0xe19b0['isError']));}catch(_0x397c71){if(_0x397c71 instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x54e839+'.'+_0x17044d['name']+'\x20['+_0x397c71['code']+']:\x20'+_0x397c71['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x54e839+'.'+_0x17044d['name']+':\x20'+(_0x397c71 instanceof Error?_0x397c71['message']:String(_0x397c71)),!![]);}}};}function makeMcpReadResourceTool(_0x1ac007,_0x457f3e){const _0x556265='mcp__'+_0x1ac007+'__read_resource_'+slugify(_0x457f3e['uri']),_0x42aaf9={'timeoutMs':0x7530,'name':_0x556265,'description':('Read\x20resource\x20\x27'+_0x457f3e['name']+'\x27\x20('+_0x457f3e['uri']+')\x20from\x20MCP\x20server\x20\x27'+_0x1ac007+'\x27.\x20'+(_0x457f3e['description']??''))['trim'](),'parameters':{'type':'object','required':[],'properties':{'uri':{'type':'string','description':'Resource\x20URI\x20(default\x20'+_0x457f3e['uri']+')'}}}};return{'definition':_0x42aaf9,async 'execute'(_0x70b808,_0x12f60a,_0x256d57,_0x3c93e1){const _0x2774c8=registry['get'](_0x1ac007);if(!_0x2774c8)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x1ac007+'\x27\x20is\x20not\x20registered.',!![]);const _0x1c9a55=typeof _0x12f60a['uri']==='string'?_0x12f60a['uri']:_0x457f3e['uri'];try{const _0x5d8f76=await abortable(_0x256d57,_0x2774c8['conn']['readResource'](_0x1c9a55));return(0x0,types_js_1['textResult'])(_0x5d8f76||'(empty\x20resource)');}catch(_0x4832a0){if(_0x4832a0 instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x1ac007+'\x20resource\x20read\x20['+_0x4832a0['code']+']:\x20'+_0x4832a0['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x1ac007+'\x20resource\x20read:\x20'+(_0x4832a0 instanceof Error?_0x4832a0['message']:String(_0x4832a0)),!![]);}}};}function makeMcpGetPromptTool(_0x13986e,_0x5cb71f){const _0x3ffb39='mcp__'+_0x13986e+'__get_prompt_'+slugify(_0x5cb71f['name']),_0x1e5113={'timeoutMs':0x7530,'name':_0x3ffb39,'description':('Get\x20prompt\x20\x27'+_0x5cb71f['name']+'\x27\x20from\x20MCP\x20server\x20\x27'+_0x13986e+'\x27.\x20'+(_0x5cb71f['description']??''))['trim'](),'parameters':{'type':'object','required':[],'properties':{'name':{'type':'string','description':'Prompt\x20name\x20(default\x20'+_0x5cb71f['name']+')'},'args':{'type':'object','description':'Optional\x20prompt\x20arguments.'}}}};return{'definition':_0x1e5113,async 'execute'(_0x3d3b1d,_0x98d1ad,_0x16b497,_0x29fdc4){const _0x4c8e06=registry['get'](_0x13986e);if(!_0x4c8e06)return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x13986e+'\x27\x20is\x20not\x20registered.',!![]);const _0x2c0218=typeof _0x98d1ad['name']==='string'?_0x98d1ad['name']:_0x5cb71f['name'],_0x423b54=typeof _0x98d1ad['args']==='object'&&_0x98d1ad['args']!==null?_0x98d1ad['args']:undefined;try{const _0x8eb3dd=await abortable(_0x16b497,_0x4c8e06['conn']['getPrompt'](_0x2c0218,_0x423b54));if(!_0x8eb3dd)return(0x0,types_js_1['textResult'])('Prompt\x20\x27'+_0x2c0218+'\x27\x20not\x20found\x20on\x20server\x20\x27'+_0x13986e+'\x27.',!![]);const _0x501d3e=_0x8eb3dd['messages']['map'](_0x357015=>'['+_0x357015['role']+']\x20'+(typeof _0x357015['content']==='string'?_0x357015['content']:JSON['stringify'](_0x357015['content'])))['join']('\x0a');return(0x0,types_js_1['textResult'])(_0x501d3e||'(empty\x20prompt)');}catch(_0x454f0b){if(_0x454f0b instanceof index_js_1['McpError'])return(0x0,types_js_1['textResult'])('mcp\x20'+_0x13986e+'\x20prompt\x20get\x20['+_0x454f0b['code']+']:\x20'+_0x454f0b['message'],!![]);return(0x0,types_js_1['textResult'])('mcp\x20'+_0x13986e+'\x20prompt\x20get:\x20'+(_0x454f0b instanceof Error?_0x454f0b['message']:String(_0x454f0b)),!![]);}}};}function makeMcpErrorTool(_0x458185,_0x81cae5){const _0x221d7e={'timeoutMs':0x7530,'name':'mcp__'+_0x458185+'__error','description':'MCP\x20server\x20\x27'+_0x458185+'\x27\x20failed\x20to\x20initialize:\x20'+_0x81cae5+'.','parameters':{'type':'object','properties':{},'required':[]}};return{'definition':_0x221d7e,async 'execute'(){return(0x0,types_js_1['textResult'])('MCP\x20server\x20\x27'+_0x458185+'\x27\x20is\x20unavailable:\x20'+_0x81cae5,!![]);}};}function resetMcpRegistry(){for(const [,_0x4a0dbf]of registry)_0x4a0dbf['conn']?.['close']();registry['clear']();}
|
|
@@ -1 +1 @@
|
|
|
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);}
|
|
1
|
+
'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x153a29,_0x14b529,_0x256c6b,_0x449112){if(_0x449112===undefined)_0x449112=_0x256c6b;var _0x1977a7=Object['getOwnPropertyDescriptor'](_0x14b529,_0x256c6b);(!_0x1977a7||('get'in _0x1977a7?!_0x14b529['__esModule']:_0x1977a7['writable']||_0x1977a7['configurable']))&&(_0x1977a7={'enumerable':!![],'get':function(){return _0x14b529[_0x256c6b];}}),Object['defineProperty'](_0x153a29,_0x449112,_0x1977a7);}:function(_0x1a0050,_0x238541,_0x5e37f5,_0x78c991){if(_0x78c991===undefined)_0x78c991=_0x5e37f5;_0x1a0050[_0x78c991]=_0x238541[_0x5e37f5];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x14a08a,_0x229565){Object['defineProperty'](_0x14a08a,'default',{'enumerable':!![],'value':_0x229565});}:function(_0x5167bb,_0x15d2b9){_0x5167bb['default']=_0x15d2b9;}),__importStar=this&&this['__importStar']||(function(){var _0x5761d3=function(_0xe25d06){return _0x5761d3=Object['getOwnPropertyNames']||function(_0x391d3a){var _0x527ef4=[];for(var _0x25bc5c in _0x391d3a)if(Object['prototype']['hasOwnProperty']['call'](_0x391d3a,_0x25bc5c))_0x527ef4[_0x527ef4['length']]=_0x25bc5c;return _0x527ef4;},_0x5761d3(_0xe25d06);};return function(_0x5d45eb){if(_0x5d45eb&&_0x5d45eb['__esModule'])return _0x5d45eb;var _0x4f05b9={};if(_0x5d45eb!=null){for(var _0x58006b=_0x5761d3(_0x5d45eb),_0x473c68=0x0;_0x473c68<_0x58006b['length'];_0x473c68++)if(_0x58006b[_0x473c68]!=='default')__createBinding(_0x4f05b9,_0x5d45eb,_0x58006b[_0x473c68]);}return __setModuleDefault(_0x4f05b9,_0x5d45eb),_0x4f05b9;};}()),__importDefault=this&&this['__importDefault']||function(_0x28e845){return _0x28e845&&_0x28e845['__esModule']?_0x28e845:{'default':_0x28e845};};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'](_0x1b7ba2=>_0x1b7ba2['id']));if(fs['existsSync'](this['userDir'])){const _0x51cef6=fs['readdirSync'](this['userDir'],{'withFileTypes':!![]});for(const _0x3719b0 of _0x51cef6){if(!_0x3719b0['isFile']()||!_0x3719b0['name']['endsWith']('.json'))continue;try{const _0x1a261b=fs['readFileSync'](path_1['default']['join'](this['userDir'],_0x3719b0['name']),'utf8'),_0x16248e=JSON['parse'](_0x1a261b);_0x16248e['id']&&_0x16248e['spec']&&this['connectors']['push']({'id':_0x16248e['id'],'name':_0x16248e['name']??_0x16248e['id'],'description':_0x16248e['description']??'','keywords':_0x16248e['keywords']??[],'spec':_0x16248e['spec'],'npmPackage':_0x16248e['npmPackage'],'category':_0x16248e['category']});}catch{}}}return this['connectors'];}['search'](_0x4f5c5a){if(!this['connectors']['length'])this['load']();const _0x3d4ac8=_0x4f5c5a['toLowerCase']()['trim']();if(!_0x3d4ac8)return this['connectors'];const _0x82d66f=_0x3d4ac8['split'](/\s+/);return this['connectors']['map'](_0x2be966=>{const _0x153279=(_0x2be966['id']+'\x20'+_0x2be966['name']+'\x20'+_0x2be966['description']+'\x20'+(_0x2be966['keywords']??[])['join']('\x20')+'\x20'+(_0x2be966['category']??''))['toLowerCase']();let _0x11e1c2=0x0;for(const _0x2b4572 of _0x82d66f){if(_0x2be966['id']===_0x2b4572)_0x11e1c2+=0xa;if(_0x2be966['name']['toLowerCase']()===_0x2b4572)_0x11e1c2+=0x8;if(_0x2be966['keywords']?.['some'](_0x16566a=>_0x16566a['toLowerCase']()===_0x2b4572))_0x11e1c2+=0x6;if(_0x2be966['category']?.['toLowerCase']()===_0x2b4572)_0x11e1c2+=0x4;if(_0x153279['includes'](_0x2b4572))_0x11e1c2+=0x2;}return{'connector':_0x2be966,'score':_0x11e1c2};})['filter'](_0x56a06f=>_0x56a06f['score']>0x0)['sort']((_0x48bcef,_0x4eb29f)=>_0x4eb29f['score']-_0x48bcef['score'])['map'](_0x513a53=>_0x513a53['connector']);}['get'](_0x48fae6){if(!this['connectors']['length'])this['load']();return this['connectors']['find'](_0x3faaba=>_0x3faaba['id']===_0x48fae6);}['getByCategory'](_0x47f2ae){if(!this['connectors']['length'])this['load']();return this['connectors']['filter'](_0x3547a2=>_0x3547a2['category']===_0x47f2ae);}['getCategories'](){if(!this['connectors']['length'])this['load']();return[...new Set(this['connectors']['map'](_0x17eaf3=>_0x17eaf3['category'])['filter'](Boolean))]['sort']();}['register'](_0x2e7dbc){const _0x400f3f=path_1['default']['join'](this['userDir'],_0x2e7dbc['id']+'.json');fs['mkdirSync'](this['userDir'],{'recursive':!![]}),fs['writeFileSync'](_0x400f3f,JSON['stringify'](_0x2e7dbc,null,0x2)),!this['connectors']['find'](_0x5d2b8d=>_0x5d2b8d['id']===_0x2e7dbc['id'])&&this['connectors']['push'](_0x2e7dbc);}['unregister'](_0x8a46a3){if(this['builtinIds']['has'](_0x8a46a3))return![];const _0x23625a=this['connectors']['findIndex'](_0x3b524f=>_0x3b524f['id']===_0x8a46a3);if(_0x23625a<0x0)return![];const _0x2402ac=this['connectors'][_0x23625a];this['connectors']['splice'](_0x23625a,0x1);const _0x1c7272=path_1['default']['join'](this['userDir'],_0x2402ac['id']+'.json');if(fs['existsSync'](_0x1c7272))fs['unlinkSync'](_0x1c7272);return!![];}['getAllIds'](){if(!this['connectors']['length'])this['load']();return this['connectors']['map'](_0x18616b=>_0x18616b['id']);}}exports['ConnectorRegistry']=ConnectorRegistry;function getConnectorRegistry(){return ConnectorRegistry['getInstance']();}function searchConnectors(_0x501893){return getConnectorRegistry()['search'](_0x501893);}
|