@staticn0va/wigolo 0.1.0 → 0.1.1
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/LICENSE +1 -1
- package/README.md +195 -73
- package/SKILL.md +382 -0
- package/assets/blocks/claude-code/CLAUDE.md.block +20 -0
- package/assets/blocks/claude-code/wigolo-command.md +40 -0
- package/assets/blocks/cursor/wigolo.mdc +46 -0
- package/assets/blocks/gemini-cli/GEMINI.md.block +18 -0
- package/assets/blocks/vscode/copilot-instructions.md.block +18 -0
- package/assets/skills/wigolo/SKILL.md +50 -0
- package/assets/skills/wigolo/rules/cache-first.md +30 -0
- package/assets/skills/wigolo/rules/synthesis.md +43 -0
- package/assets/skills/wigolo-agent/SKILL.md +73 -0
- package/assets/skills/wigolo-crawl/SKILL.md +60 -0
- package/assets/skills/wigolo-extract/SKILL.md +59 -0
- package/assets/skills/wigolo-fetch/SKILL.md +65 -0
- package/assets/skills/wigolo-find-similar/SKILL.md +72 -0
- package/assets/skills/wigolo-research/SKILL.md +77 -0
- package/assets/skills/wigolo-search/SKILL.md +78 -0
- package/dist/agent/executor.d.ts +33 -0
- package/dist/agent/executor.d.ts.map +1 -0
- package/dist/agent/executor.js +233 -0
- package/dist/agent/executor.js.map +1 -0
- package/dist/agent/pipeline.d.ts +5 -0
- package/dist/agent/pipeline.d.ts.map +1 -0
- package/dist/agent/pipeline.js +208 -0
- package/dist/agent/pipeline.js.map +1 -0
- package/dist/agent/planner.d.ts +13 -0
- package/dist/agent/planner.d.ts.map +1 -0
- package/dist/agent/planner.js +271 -0
- package/dist/agent/planner.js.map +1 -0
- package/dist/agent/relevance.d.ts +15 -0
- package/dist/agent/relevance.d.ts.map +1 -0
- package/dist/agent/relevance.js +60 -0
- package/dist/agent/relevance.js.map +1 -0
- package/dist/cache/backfill-embeddings.d.ts +23 -0
- package/dist/cache/backfill-embeddings.d.ts.map +1 -0
- package/dist/cache/backfill-embeddings.js +105 -0
- package/dist/cache/backfill-embeddings.js.map +1 -0
- package/dist/cache/change-detector.d.ts +7 -0
- package/dist/cache/change-detector.d.ts.map +1 -0
- package/dist/cache/change-detector.js +43 -0
- package/dist/cache/change-detector.js.map +1 -0
- package/dist/cache/db.d.ts +1 -0
- package/dist/cache/db.d.ts.map +1 -1
- package/dist/cache/db.js +94 -22
- package/dist/cache/db.js.map +1 -1
- package/dist/cache/diff-summary.d.ts +2 -0
- package/dist/cache/diff-summary.d.ts.map +1 -0
- package/dist/cache/diff-summary.js +82 -0
- package/dist/cache/diff-summary.js.map +1 -0
- package/dist/cache/migrations/runner.d.ts +29 -0
- package/dist/cache/migrations/runner.d.ts.map +1 -0
- package/dist/cache/migrations/runner.js +147 -0
- package/dist/cache/migrations/runner.js.map +1 -0
- package/dist/cache/sqlite-vec-store.d.ts +42 -0
- package/dist/cache/sqlite-vec-store.d.ts.map +1 -0
- package/dist/cache/sqlite-vec-store.js +176 -0
- package/dist/cache/sqlite-vec-store.js.map +1 -0
- package/dist/cache/store.d.ts +46 -1
- package/dist/cache/store.d.ts.map +1 -1
- package/dist/cache/store.js +362 -168
- package/dist/cache/store.js.map +1 -1
- package/dist/cli/agents/antigravity.d.ts +20 -0
- package/dist/cli/agents/antigravity.d.ts.map +1 -0
- package/dist/cli/agents/antigravity.js +49 -0
- package/dist/cli/agents/antigravity.js.map +1 -0
- package/dist/cli/agents/claude-code.d.ts +25 -0
- package/dist/cli/agents/claude-code.d.ts.map +1 -0
- package/dist/cli/agents/claude-code.js +111 -0
- package/dist/cli/agents/claude-code.js.map +1 -0
- package/dist/cli/agents/cursor.d.ts +21 -0
- package/dist/cli/agents/cursor.d.ts.map +1 -0
- package/dist/cli/agents/cursor.js +58 -0
- package/dist/cli/agents/cursor.js.map +1 -0
- package/dist/cli/agents/gemini-cli.d.ts +21 -0
- package/dist/cli/agents/gemini-cli.d.ts.map +1 -0
- package/dist/cli/agents/gemini-cli.js +55 -0
- package/dist/cli/agents/gemini-cli.js.map +1 -0
- package/dist/cli/agents/registry.d.ts +21 -0
- package/dist/cli/agents/registry.d.ts.map +1 -0
- package/dist/cli/agents/registry.js +27 -0
- package/dist/cli/agents/registry.js.map +1 -0
- package/dist/cli/agents/utils.d.ts +26 -0
- package/dist/cli/agents/utils.d.ts.map +1 -0
- package/dist/cli/agents/utils.js +136 -0
- package/dist/cli/agents/utils.js.map +1 -0
- package/dist/cli/agents/vscode.d.ts +21 -0
- package/dist/cli/agents/vscode.d.ts.map +1 -0
- package/dist/cli/agents/vscode.js +62 -0
- package/dist/cli/agents/vscode.js.map +1 -0
- package/dist/cli/auth.d.ts +2 -0
- package/dist/cli/auth.d.ts.map +1 -0
- package/dist/cli/auth.js +94 -0
- package/dist/cli/auth.js.map +1 -0
- package/dist/cli/backfill.d.ts +2 -0
- package/dist/cli/backfill.d.ts.map +1 -0
- package/dist/cli/backfill.js +58 -0
- package/dist/cli/backfill.js.map +1 -0
- package/dist/cli/daemon.d.ts +6 -1
- package/dist/cli/daemon.d.ts.map +1 -1
- package/dist/cli/daemon.js +61 -3
- package/dist/cli/daemon.js.map +1 -1
- package/dist/cli/doctor.d.ts +8 -0
- package/dist/cli/doctor.d.ts.map +1 -0
- package/dist/cli/doctor.js +318 -0
- package/dist/cli/doctor.js.map +1 -0
- package/dist/cli/health.d.ts +1 -1
- package/dist/cli/health.d.ts.map +1 -1
- package/dist/cli/health.js +42 -3
- package/dist/cli/health.js.map +1 -1
- package/dist/cli/help.d.ts +6 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +63 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/index.d.ts +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +35 -7
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init.d.ts +2 -0
- package/dist/cli/init.d.ts.map +1 -0
- package/dist/cli/init.js +201 -0
- package/dist/cli/init.js.map +1 -0
- package/dist/cli/plugin.d.ts +5 -0
- package/dist/cli/plugin.d.ts.map +1 -0
- package/dist/cli/plugin.js +185 -0
- package/dist/cli/plugin.js.map +1 -0
- package/dist/cli/setup-mcp.d.ts +2 -0
- package/dist/cli/setup-mcp.d.ts.map +1 -0
- package/dist/cli/setup-mcp.js +114 -0
- package/dist/cli/setup-mcp.js.map +1 -0
- package/dist/cli/shell.d.ts +2 -0
- package/dist/cli/shell.d.ts.map +1 -0
- package/dist/cli/shell.js +86 -0
- package/dist/cli/shell.js.map +1 -0
- package/dist/cli/status.d.ts +2 -0
- package/dist/cli/status.d.ts.map +1 -0
- package/dist/cli/status.js +31 -0
- package/dist/cli/status.js.map +1 -0
- package/dist/cli/telemetry.d.ts +10 -0
- package/dist/cli/telemetry.d.ts.map +1 -0
- package/dist/cli/telemetry.js +56 -0
- package/dist/cli/telemetry.js.map +1 -0
- package/dist/cli/tui/agents-types.d.ts +28 -0
- package/dist/cli/tui/agents-types.d.ts.map +1 -0
- package/dist/cli/tui/agents-types.js +1 -0
- package/dist/cli/tui/agents-types.js.map +1 -0
- package/dist/cli/tui/agents.d.ts +11 -0
- package/dist/cli/tui/agents.d.ts.map +1 -0
- package/dist/cli/tui/agents.js +93 -0
- package/dist/cli/tui/agents.js.map +1 -0
- package/dist/cli/tui/banner.d.ts +3 -0
- package/dist/cli/tui/banner.d.ts.map +1 -0
- package/dist/cli/tui/banner.js +30 -0
- package/dist/cli/tui/banner.js.map +1 -0
- package/dist/cli/tui/components/AgentSelect.d.ts +13 -0
- package/dist/cli/tui/components/AgentSelect.d.ts.map +1 -0
- package/dist/cli/tui/components/AgentSelect.js +116 -0
- package/dist/cli/tui/components/AgentSelect.js.map +1 -0
- package/dist/cli/tui/components/Banner.d.ts +6 -0
- package/dist/cli/tui/components/Banner.d.ts.map +1 -0
- package/dist/cli/tui/components/Banner.js +25 -0
- package/dist/cli/tui/components/Banner.js.map +1 -0
- package/dist/cli/tui/components/BrowserSelect.d.ts +7 -0
- package/dist/cli/tui/components/BrowserSelect.d.ts.map +1 -0
- package/dist/cli/tui/components/BrowserSelect.js +19 -0
- package/dist/cli/tui/components/BrowserSelect.js.map +1 -0
- package/dist/cli/tui/components/InstallProgress.d.ts +9 -0
- package/dist/cli/tui/components/InstallProgress.d.ts.map +1 -0
- package/dist/cli/tui/components/InstallProgress.js +67 -0
- package/dist/cli/tui/components/InstallProgress.js.map +1 -0
- package/dist/cli/tui/components/SkillInstall.d.ts +14 -0
- package/dist/cli/tui/components/SkillInstall.d.ts.map +1 -0
- package/dist/cli/tui/components/SkillInstall.js +94 -0
- package/dist/cli/tui/components/SkillInstall.js.map +1 -0
- package/dist/cli/tui/components/Summary.d.ts +22 -0
- package/dist/cli/tui/components/Summary.d.ts.map +1 -0
- package/dist/cli/tui/components/Summary.js +135 -0
- package/dist/cli/tui/components/Summary.js.map +1 -0
- package/dist/cli/tui/components/SystemCheck.d.ts +8 -0
- package/dist/cli/tui/components/SystemCheck.d.ts.map +1 -0
- package/dist/cli/tui/components/SystemCheck.js +71 -0
- package/dist/cli/tui/components/SystemCheck.js.map +1 -0
- package/dist/cli/tui/components/Verification.d.ts +8 -0
- package/dist/cli/tui/components/Verification.d.ts.map +1 -0
- package/dist/cli/tui/components/Verification.js +63 -0
- package/dist/cli/tui/components/Verification.js.map +1 -0
- package/dist/cli/tui/config-writer-cli.d.ts +12 -0
- package/dist/cli/tui/config-writer-cli.d.ts.map +1 -0
- package/dist/cli/tui/config-writer-cli.js +39 -0
- package/dist/cli/tui/config-writer-cli.js.map +1 -0
- package/dist/cli/tui/config-writer-json.d.ts +16 -0
- package/dist/cli/tui/config-writer-json.d.ts.map +1 -0
- package/dist/cli/tui/config-writer-json.js +86 -0
- package/dist/cli/tui/config-writer-json.js.map +1 -0
- package/dist/cli/tui/config-writer-toml.d.ts +16 -0
- package/dist/cli/tui/config-writer-toml.d.ts.map +1 -0
- package/dist/cli/tui/config-writer-toml.js +83 -0
- package/dist/cli/tui/config-writer-toml.js.map +1 -0
- package/dist/cli/tui/config-writer.d.ts +25 -0
- package/dist/cli/tui/config-writer.d.ts.map +1 -0
- package/dist/cli/tui/config-writer.js +101 -0
- package/dist/cli/tui/config-writer.js.map +1 -0
- package/dist/cli/tui/detect-helpers.d.ts +6 -0
- package/dist/cli/tui/detect-helpers.d.ts.map +1 -0
- package/dist/cli/tui/detect-helpers.js +45 -0
- package/dist/cli/tui/detect-helpers.js.map +1 -0
- package/dist/cli/tui/extras-prompt.d.ts +7 -0
- package/dist/cli/tui/extras-prompt.d.ts.map +1 -0
- package/dist/cli/tui/extras-prompt.js +42 -0
- package/dist/cli/tui/extras-prompt.js.map +1 -0
- package/dist/cli/tui/flags-types.d.ts +19 -0
- package/dist/cli/tui/flags-types.d.ts.map +1 -0
- package/dist/cli/tui/flags-types.js +23 -0
- package/dist/cli/tui/flags-types.js.map +1 -0
- package/dist/cli/tui/flags.d.ts +5 -0
- package/dist/cli/tui/flags.d.ts.map +1 -0
- package/dist/cli/tui/flags.js +132 -0
- package/dist/cli/tui/flags.js.map +1 -0
- package/dist/cli/tui/format.d.ts +14 -0
- package/dist/cli/tui/format.d.ts.map +1 -0
- package/dist/cli/tui/format.js +37 -0
- package/dist/cli/tui/format.js.map +1 -0
- package/dist/cli/tui/hooks/useAgentDetect.d.ts +6 -0
- package/dist/cli/tui/hooks/useAgentDetect.d.ts.map +1 -0
- package/dist/cli/tui/hooks/useAgentDetect.js +19 -0
- package/dist/cli/tui/hooks/useAgentDetect.js.map +1 -0
- package/dist/cli/tui/hooks/useInstall.d.ts +14 -0
- package/dist/cli/tui/hooks/useInstall.d.ts.map +1 -0
- package/dist/cli/tui/hooks/useInstall.js +90 -0
- package/dist/cli/tui/hooks/useInstall.js.map +1 -0
- package/dist/cli/tui/hooks/useSystemCheck.d.ts +13 -0
- package/dist/cli/tui/hooks/useSystemCheck.d.ts.map +1 -0
- package/dist/cli/tui/hooks/useSystemCheck.js +95 -0
- package/dist/cli/tui/hooks/useSystemCheck.js.map +1 -0
- package/dist/cli/tui/hooks/useVerify.d.ts +14 -0
- package/dist/cli/tui/hooks/useVerify.d.ts.map +1 -0
- package/dist/cli/tui/hooks/useVerify.js +71 -0
- package/dist/cli/tui/hooks/useVerify.js.map +1 -0
- package/dist/cli/tui/ink-init.d.ts +2 -0
- package/dist/cli/tui/ink-init.d.ts.map +1 -0
- package/dist/cli/tui/ink-init.js +198 -0
- package/dist/cli/tui/ink-init.js.map +1 -0
- package/dist/cli/tui/reporter-auto.d.ts +7 -0
- package/dist/cli/tui/reporter-auto.d.ts.map +1 -0
- package/dist/cli/tui/reporter-auto.js +15 -0
- package/dist/cli/tui/reporter-auto.js.map +1 -0
- package/dist/cli/tui/reporter.d.ts +26 -0
- package/dist/cli/tui/reporter.d.ts.map +1 -0
- package/dist/cli/tui/reporter.js +32 -0
- package/dist/cli/tui/reporter.js.map +1 -0
- package/dist/cli/tui/run-command.d.ts +14 -0
- package/dist/cli/tui/run-command.d.ts.map +1 -0
- package/dist/cli/tui/run-command.js +72 -0
- package/dist/cli/tui/run-command.js.map +1 -0
- package/dist/cli/tui/select-agents.d.ts +6 -0
- package/dist/cli/tui/select-agents.d.ts.map +1 -0
- package/dist/cli/tui/select-agents.js +32 -0
- package/dist/cli/tui/select-agents.js.map +1 -0
- package/dist/cli/tui/status-agents.d.ts +11 -0
- package/dist/cli/tui/status-agents.d.ts.map +1 -0
- package/dist/cli/tui/status-agents.js +53 -0
- package/dist/cli/tui/status-agents.js.map +1 -0
- package/dist/cli/tui/status-cache.d.ts +6 -0
- package/dist/cli/tui/status-cache.d.ts.map +1 -0
- package/dist/cli/tui/status-cache.js +39 -0
- package/dist/cli/tui/status-cache.js.map +1 -0
- package/dist/cli/tui/status-format.d.ts +14 -0
- package/dist/cli/tui/status-format.d.ts.map +1 -0
- package/dist/cli/tui/status-format.js +41 -0
- package/dist/cli/tui/status-format.js.map +1 -0
- package/dist/cli/tui/status-python.d.ts +6 -0
- package/dist/cli/tui/status-python.d.ts.map +1 -0
- package/dist/cli/tui/status-python.js +30 -0
- package/dist/cli/tui/status-python.js.map +1 -0
- package/dist/cli/tui/system-check.d.ts +24 -0
- package/dist/cli/tui/system-check.d.ts.map +1 -0
- package/dist/cli/tui/system-check.js +103 -0
- package/dist/cli/tui/system-check.js.map +1 -0
- package/dist/cli/tui/tui-reporter.d.ts +19 -0
- package/dist/cli/tui/tui-reporter.d.ts.map +1 -0
- package/dist/cli/tui/tui-reporter.js +95 -0
- package/dist/cli/tui/tui-reporter.js.map +1 -0
- package/dist/cli/tui/utils/config-writer.d.ts +3 -0
- package/dist/cli/tui/utils/config-writer.d.ts.map +1 -0
- package/dist/cli/tui/utils/config-writer.js +22 -0
- package/dist/cli/tui/utils/config-writer.js.map +1 -0
- package/dist/cli/tui/utils/suppress-logs.d.ts +3 -0
- package/dist/cli/tui/utils/suppress-logs.d.ts.map +1 -0
- package/dist/cli/tui/utils/suppress-logs.js +11 -0
- package/dist/cli/tui/utils/suppress-logs.js.map +1 -0
- package/dist/cli/tui/verify-suggestions.d.ts +5 -0
- package/dist/cli/tui/verify-suggestions.d.ts.map +1 -0
- package/dist/cli/tui/verify-suggestions.js +20 -0
- package/dist/cli/tui/verify-suggestions.js.map +1 -0
- package/dist/cli/tui/verify.d.ts +14 -0
- package/dist/cli/tui/verify.d.ts.map +1 -0
- package/dist/cli/tui/verify.js +101 -0
- package/dist/cli/tui/verify.js.map +1 -0
- package/dist/cli/tui/version.d.ts +2 -0
- package/dist/cli/tui/version.d.ts.map +1 -0
- package/dist/cli/tui/version.js +14 -0
- package/dist/cli/tui/version.js.map +1 -0
- package/dist/cli/uninstall.d.ts +2 -0
- package/dist/cli/uninstall.d.ts.map +1 -0
- package/dist/cli/uninstall.js +57 -0
- package/dist/cli/uninstall.js.map +1 -0
- package/dist/cli/warmup.d.ts +10 -2
- package/dist/cli/warmup.d.ts.map +1 -1
- package/dist/cli/warmup.js +226 -93
- package/dist/cli/warmup.js.map +1 -1
- package/dist/config.d.ts +28 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +106 -56
- package/dist/config.js.map +1 -1
- package/dist/crawl/crawler.d.ts +6 -0
- package/dist/crawl/crawler.d.ts.map +1 -1
- package/dist/crawl/crawler.js +210 -209
- package/dist/crawl/crawler.js.map +1 -1
- package/dist/crawl/dedup.d.ts +1 -0
- package/dist/crawl/dedup.d.ts.map +1 -1
- package/dist/crawl/dedup.js +124 -81
- package/dist/crawl/dedup.js.map +1 -1
- package/dist/crawl/etag-incremental.d.ts +43 -0
- package/dist/crawl/etag-incremental.d.ts.map +1 -0
- package/dist/crawl/etag-incremental.js +94 -0
- package/dist/crawl/etag-incremental.js.map +1 -0
- package/dist/crawl/index-to-vec.d.ts +10 -0
- package/dist/crawl/index-to-vec.d.ts.map +1 -0
- package/dist/crawl/index-to-vec.js +44 -0
- package/dist/crawl/index-to-vec.js.map +1 -0
- package/dist/crawl/mapper.js +136 -164
- package/dist/crawl/mapper.js.map +1 -1
- package/dist/crawl/rate-limiter.js +63 -66
- package/dist/crawl/rate-limiter.js.map +1 -1
- package/dist/crawl/robots.js +58 -57
- package/dist/crawl/robots.js.map +1 -1
- package/dist/crawl/sitemap-first.d.ts +12 -0
- package/dist/crawl/sitemap-first.d.ts.map +1 -0
- package/dist/crawl/sitemap-first.js +47 -0
- package/dist/crawl/sitemap-first.js.map +1 -0
- package/dist/crawl/sitemap.js +33 -32
- package/dist/crawl/sitemap.js.map +1 -1
- package/dist/crawl/url-utils.d.ts +1 -0
- package/dist/crawl/url-utils.d.ts.map +1 -1
- package/dist/crawl/url-utils.js +49 -37
- package/dist/crawl/url-utils.js.map +1 -1
- package/dist/daemon/health-check.d.ts +16 -0
- package/dist/daemon/health-check.d.ts.map +1 -0
- package/dist/daemon/health-check.js +33 -0
- package/dist/daemon/health-check.js.map +1 -0
- package/dist/daemon/http-server.d.ts +26 -0
- package/dist/daemon/http-server.d.ts.map +1 -0
- package/dist/daemon/http-server.js +275 -0
- package/dist/daemon/http-server.js.map +1 -0
- package/dist/daemon/proxy.d.ts +10 -0
- package/dist/daemon/proxy.d.ts.map +1 -0
- package/dist/daemon/proxy.js +93 -0
- package/dist/daemon/proxy.js.map +1 -0
- package/dist/embedding/embed.d.ts +59 -0
- package/dist/embedding/embed.d.ts.map +1 -0
- package/dist/embedding/embed.js +233 -0
- package/dist/embedding/embed.js.map +1 -0
- package/dist/embedding/fastembed-provider.d.ts +19 -0
- package/dist/embedding/fastembed-provider.d.ts.map +1 -0
- package/dist/embedding/fastembed-provider.js +51 -0
- package/dist/embedding/fastembed-provider.js.map +1 -0
- package/dist/embedding/key-terms.d.ts +12 -0
- package/dist/embedding/key-terms.d.ts.map +1 -0
- package/dist/embedding/key-terms.js +234 -0
- package/dist/embedding/key-terms.js.map +1 -0
- package/dist/extraction/boilerplate.d.ts +15 -0
- package/dist/extraction/boilerplate.d.ts.map +1 -0
- package/dist/extraction/boilerplate.js +52 -0
- package/dist/extraction/boilerplate.js.map +1 -0
- package/dist/extraction/defuddle.d.ts.map +1 -1
- package/dist/extraction/defuddle.js +27 -23
- package/dist/extraction/defuddle.js.map +1 -1
- package/dist/extraction/extract.d.ts.map +1 -1
- package/dist/extraction/extract.js +76 -76
- package/dist/extraction/extract.js.map +1 -1
- package/dist/extraction/jsonld.js +50 -54
- package/dist/extraction/jsonld.js.map +1 -1
- package/dist/extraction/lang-hints.d.ts +2 -0
- package/dist/extraction/lang-hints.d.ts.map +1 -0
- package/dist/extraction/lang-hints.js +30 -0
- package/dist/extraction/lang-hints.js.map +1 -0
- package/dist/extraction/llm-fallback.d.ts +17 -0
- package/dist/extraction/llm-fallback.d.ts.map +1 -0
- package/dist/extraction/llm-fallback.js +130 -0
- package/dist/extraction/llm-fallback.js.map +1 -0
- package/dist/extraction/markdown-sanitize.d.ts +2 -0
- package/dist/extraction/markdown-sanitize.d.ts.map +1 -0
- package/dist/extraction/markdown-sanitize.js +151 -0
- package/dist/extraction/markdown-sanitize.js.map +1 -0
- package/dist/extraction/markdown.d.ts +11 -0
- package/dist/extraction/markdown.d.ts.map +1 -1
- package/dist/extraction/markdown.js +195 -91
- package/dist/extraction/markdown.js.map +1 -1
- package/dist/extraction/pipeline.d.ts +8 -0
- package/dist/extraction/pipeline.d.ts.map +1 -1
- package/dist/extraction/pipeline.js +57 -91
- package/dist/extraction/pipeline.js.map +1 -1
- package/dist/extraction/readability.d.ts +1 -1
- package/dist/extraction/readability.d.ts.map +1 -1
- package/dist/extraction/readability.js +28 -29
- package/dist/extraction/readability.js.map +1 -1
- package/dist/extraction/schema.d.ts +12 -0
- package/dist/extraction/schema.d.ts.map +1 -1
- package/dist/extraction/schema.js +135 -72
- package/dist/extraction/schema.js.map +1 -1
- package/dist/extraction/site-extractors/docs-generic.d.ts.map +1 -1
- package/dist/extraction/site-extractors/docs-generic.js +81 -91
- package/dist/extraction/site-extractors/docs-generic.js.map +1 -1
- package/dist/extraction/site-extractors/github.d.ts.map +1 -1
- package/dist/extraction/site-extractors/github.js +87 -95
- package/dist/extraction/site-extractors/github.js.map +1 -1
- package/dist/extraction/site-extractors/mdn.d.ts.map +1 -1
- package/dist/extraction/site-extractors/mdn.js +46 -54
- package/dist/extraction/site-extractors/mdn.js.map +1 -1
- package/dist/extraction/site-extractors/stackoverflow.d.ts.map +1 -1
- package/dist/extraction/site-extractors/stackoverflow.js +71 -80
- package/dist/extraction/site-extractors/stackoverflow.js.map +1 -1
- package/dist/extraction/structured-data.d.ts +4 -0
- package/dist/extraction/structured-data.d.ts.map +1 -0
- package/dist/extraction/structured-data.js +173 -0
- package/dist/extraction/structured-data.js.map +1 -0
- package/dist/extraction/structured.d.ts +4 -0
- package/dist/extraction/structured.d.ts.map +1 -0
- package/dist/extraction/structured.js +163 -0
- package/dist/extraction/structured.js.map +1 -0
- package/dist/extraction/v1/classifier.d.ts +3 -0
- package/dist/extraction/v1/classifier.d.ts.map +1 -0
- package/dist/extraction/v1/classifier.js +110 -0
- package/dist/extraction/v1/classifier.js.map +1 -0
- package/dist/extraction/v1/extract-provider.d.ts +16 -0
- package/dist/extraction/v1/extract-provider.d.ts.map +1 -0
- package/dist/extraction/v1/extract-provider.js +43 -0
- package/dist/extraction/v1/extract-provider.js.map +1 -0
- package/dist/extraction/v1/local-llm.d.ts +8 -0
- package/dist/extraction/v1/local-llm.d.ts.map +1 -0
- package/dist/extraction/v1/local-llm.js +58 -0
- package/dist/extraction/v1/local-llm.js.map +1 -0
- package/dist/extraction/v1/news.d.ts +3 -0
- package/dist/extraction/v1/news.d.ts.map +1 -0
- package/dist/extraction/v1/news.js +61 -0
- package/dist/extraction/v1/news.js.map +1 -0
- package/dist/extraction/v1/product.d.ts +3 -0
- package/dist/extraction/v1/product.d.ts.map +1 -0
- package/dist/extraction/v1/product.js +166 -0
- package/dist/extraction/v1/product.js.map +1 -0
- package/dist/extraction/v1/recipe.d.ts +3 -0
- package/dist/extraction/v1/recipe.d.ts.map +1 -0
- package/dist/extraction/v1/recipe.js +136 -0
- package/dist/extraction/v1/recipe.js.map +1 -0
- package/dist/extraction/v1/routed.d.ts +17 -0
- package/dist/extraction/v1/routed.d.ts.map +1 -0
- package/dist/extraction/v1/routed.js +68 -0
- package/dist/extraction/v1/routed.js.map +1 -0
- package/dist/extraction/v1/schemas/Article.d.ts +11 -0
- package/dist/extraction/v1/schemas/Article.d.ts.map +1 -0
- package/dist/extraction/v1/schemas/Article.js +23 -0
- package/dist/extraction/v1/schemas/Article.js.map +1 -0
- package/dist/extraction/v1/schemas/CodeSnippet.d.ts +9 -0
- package/dist/extraction/v1/schemas/CodeSnippet.d.ts.map +1 -0
- package/dist/extraction/v1/schemas/CodeSnippet.js +90 -0
- package/dist/extraction/v1/schemas/CodeSnippet.js.map +1 -0
- package/dist/extraction/v1/schemas/EventListing.d.ts +10 -0
- package/dist/extraction/v1/schemas/EventListing.d.ts.map +1 -0
- package/dist/extraction/v1/schemas/EventListing.js +122 -0
- package/dist/extraction/v1/schemas/EventListing.js.map +1 -0
- package/dist/extraction/v1/schemas/Paper.d.ts +10 -0
- package/dist/extraction/v1/schemas/Paper.d.ts.map +1 -0
- package/dist/extraction/v1/schemas/Paper.js +156 -0
- package/dist/extraction/v1/schemas/Paper.js.map +1 -0
- package/dist/extraction/v1/schemas/Product.d.ts +17 -0
- package/dist/extraction/v1/schemas/Product.d.ts.map +1 -0
- package/dist/extraction/v1/schemas/Product.js +149 -0
- package/dist/extraction/v1/schemas/Product.js.map +1 -0
- package/dist/extraction/v1/schemas/Recipe.d.ts +14 -0
- package/dist/extraction/v1/schemas/Recipe.d.ts.map +1 -0
- package/dist/extraction/v1/schemas/Recipe.js +160 -0
- package/dist/extraction/v1/schemas/Recipe.js.map +1 -0
- package/dist/extraction/v1/schemas/index.d.ts +13 -0
- package/dist/extraction/v1/schemas/index.d.ts.map +1 -0
- package/dist/extraction/v1/schemas/index.js +44 -0
- package/dist/extraction/v1/schemas/index.js.map +1 -0
- package/dist/extraction/v1/site-extractors.d.ts +5 -0
- package/dist/extraction/v1/site-extractors.d.ts.map +1 -0
- package/dist/extraction/v1/site-extractors.js +31 -0
- package/dist/extraction/v1/site-extractors.js.map +1 -0
- package/dist/fetch/action-executor.d.ts +28 -0
- package/dist/fetch/action-executor.d.ts.map +1 -0
- package/dist/fetch/action-executor.js +88 -0
- package/dist/fetch/action-executor.js.map +1 -0
- package/dist/fetch/auth.d.ts +2 -1
- package/dist/fetch/auth.d.ts.map +1 -1
- package/dist/fetch/auth.js +56 -26
- package/dist/fetch/auth.js.map +1 -1
- package/dist/fetch/browser-pool.d.ts +30 -11
- package/dist/fetch/browser-pool.d.ts.map +1 -1
- package/dist/fetch/browser-pool.js +303 -127
- package/dist/fetch/browser-pool.js.map +1 -1
- package/dist/fetch/browser-selector.d.ts +17 -0
- package/dist/fetch/browser-selector.d.ts.map +1 -0
- package/dist/fetch/browser-selector.js +72 -0
- package/dist/fetch/browser-selector.js.map +1 -0
- package/dist/fetch/browser-types.d.ts +3 -0
- package/dist/fetch/browser-types.d.ts.map +1 -0
- package/dist/fetch/browser-types.js +45 -0
- package/dist/fetch/browser-types.js.map +1 -0
- package/dist/fetch/cdp-client.d.ts +9 -0
- package/dist/fetch/cdp-client.d.ts.map +1 -0
- package/dist/fetch/cdp-client.js +89 -0
- package/dist/fetch/cdp-client.js.map +1 -0
- package/dist/fetch/content-check.js +39 -46
- package/dist/fetch/content-check.js.map +1 -1
- package/dist/fetch/http-client.d.ts +4 -0
- package/dist/fetch/http-client.d.ts.map +1 -1
- package/dist/fetch/http-client.js +147 -128
- package/dist/fetch/http-client.js.map +1 -1
- package/dist/fetch/lightpanda.d.ts +28 -0
- package/dist/fetch/lightpanda.d.ts.map +1 -0
- package/dist/fetch/lightpanda.js +174 -0
- package/dist/fetch/lightpanda.js.map +1 -0
- package/dist/fetch/playwright-tier.d.ts +19 -0
- package/dist/fetch/playwright-tier.d.ts.map +1 -0
- package/dist/fetch/playwright-tier.js +76 -0
- package/dist/fetch/playwright-tier.js.map +1 -0
- package/dist/fetch/router.d.ts +49 -3
- package/dist/fetch/router.d.ts.map +1 -1
- package/dist/fetch/router.js +185 -81
- package/dist/fetch/router.js.map +1 -1
- package/dist/index.js +97 -17
- package/dist/index.js.map +1 -1
- package/dist/instructions.d.ts +31 -0
- package/dist/instructions.d.ts.map +1 -0
- package/dist/instructions.js +245 -0
- package/dist/instructions.js.map +1 -0
- package/dist/integrations/cloud/llm/anthropic.d.ts +3 -0
- package/dist/integrations/cloud/llm/anthropic.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/anthropic.js +41 -0
- package/dist/integrations/cloud/llm/anthropic.js.map +1 -0
- package/dist/integrations/cloud/llm/cache.d.ts +5 -0
- package/dist/integrations/cloud/llm/cache.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/cache.js +49 -0
- package/dist/integrations/cloud/llm/cache.js.map +1 -0
- package/dist/integrations/cloud/llm/gemini.d.ts +3 -0
- package/dist/integrations/cloud/llm/gemini.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/gemini.js +37 -0
- package/dist/integrations/cloud/llm/gemini.js.map +1 -0
- package/dist/integrations/cloud/llm/groq.d.ts +3 -0
- package/dist/integrations/cloud/llm/groq.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/groq.js +74 -0
- package/dist/integrations/cloud/llm/groq.js.map +1 -0
- package/dist/integrations/cloud/llm/hash.d.ts +3 -0
- package/dist/integrations/cloud/llm/hash.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/hash.js +26 -0
- package/dist/integrations/cloud/llm/hash.js.map +1 -0
- package/dist/integrations/cloud/llm/openai.d.ts +3 -0
- package/dist/integrations/cloud/llm/openai.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/openai.js +43 -0
- package/dist/integrations/cloud/llm/openai.js.map +1 -0
- package/dist/integrations/cloud/llm/select.d.ts +5 -0
- package/dist/integrations/cloud/llm/select.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/select.js +30 -0
- package/dist/integrations/cloud/llm/select.js.map +1 -0
- package/dist/integrations/cloud/llm/types.d.ts +24 -0
- package/dist/integrations/cloud/llm/types.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/types.js +1 -0
- package/dist/integrations/cloud/llm/types.js.map +1 -0
- package/dist/integrations/cloud/llm/validate.d.ts +6 -0
- package/dist/integrations/cloud/llm/validate.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/validate.js +63 -0
- package/dist/integrations/cloud/llm/validate.js.map +1 -0
- package/dist/logger.d.ts +4 -1
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +71 -30
- package/dist/logger.js.map +1 -1
- package/dist/pdf-parse.d.js +1 -0
- package/dist/pdf-parse.d.js.map +1 -0
- package/dist/plugins/loader.d.ts +20 -0
- package/dist/plugins/loader.d.ts.map +1 -0
- package/dist/plugins/loader.js +157 -0
- package/dist/plugins/loader.js.map +1 -0
- package/dist/plugins/registry.d.ts +26 -0
- package/dist/plugins/registry.d.ts.map +1 -0
- package/dist/plugins/registry.js +71 -0
- package/dist/plugins/registry.js.map +1 -0
- package/dist/plugins/validate.d.ts +9 -0
- package/dist/plugins/validate.d.ts.map +1 -0
- package/dist/plugins/validate.js +79 -0
- package/dist/plugins/validate.js.map +1 -0
- package/dist/providers/embed-provider.d.ts +11 -0
- package/dist/providers/embed-provider.d.ts.map +1 -0
- package/dist/providers/embed-provider.js +24 -0
- package/dist/providers/embed-provider.js.map +1 -0
- package/dist/providers/extract-provider.d.ts +23 -0
- package/dist/providers/extract-provider.d.ts.map +1 -0
- package/dist/providers/extract-provider.js +25 -0
- package/dist/providers/extract-provider.js.map +1 -0
- package/dist/providers/rerank-provider.d.ts +16 -0
- package/dist/providers/rerank-provider.d.ts.map +1 -0
- package/dist/providers/rerank-provider.js +28 -0
- package/dist/providers/rerank-provider.js.map +1 -0
- package/dist/providers/search-provider.d.ts +25 -0
- package/dist/providers/search-provider.d.ts.map +1 -0
- package/dist/providers/search-provider.js +44 -0
- package/dist/providers/search-provider.js.map +1 -0
- package/dist/providers/vector-store.d.ts +27 -0
- package/dist/providers/vector-store.d.ts.map +1 -0
- package/dist/providers/vector-store.js +27 -0
- package/dist/providers/vector-store.js.map +1 -0
- package/dist/python-env.d.ts +9 -0
- package/dist/python-env.d.ts.map +1 -0
- package/dist/python-env.js +13 -0
- package/dist/python-env.js.map +1 -0
- package/dist/repl/commands/agent.d.ts +5 -0
- package/dist/repl/commands/agent.d.ts.map +1 -0
- package/dist/repl/commands/agent.js +62 -0
- package/dist/repl/commands/agent.js.map +1 -0
- package/dist/repl/commands/cache.d.ts +4 -0
- package/dist/repl/commands/cache.d.ts.map +1 -0
- package/dist/repl/commands/cache.js +43 -0
- package/dist/repl/commands/cache.js.map +1 -0
- package/dist/repl/commands/crawl.d.ts +7 -0
- package/dist/repl/commands/crawl.d.ts.map +1 -0
- package/dist/repl/commands/crawl.js +44 -0
- package/dist/repl/commands/crawl.js.map +1 -0
- package/dist/repl/commands/extract.d.ts +5 -0
- package/dist/repl/commands/extract.d.ts.map +1 -0
- package/dist/repl/commands/extract.js +47 -0
- package/dist/repl/commands/extract.js.map +1 -0
- package/dist/repl/commands/fetch.d.ts +5 -0
- package/dist/repl/commands/fetch.d.ts.map +1 -0
- package/dist/repl/commands/fetch.js +67 -0
- package/dist/repl/commands/fetch.js.map +1 -0
- package/dist/repl/commands/find-similar.d.ts +5 -0
- package/dist/repl/commands/find-similar.d.ts.map +1 -0
- package/dist/repl/commands/find-similar.js +74 -0
- package/dist/repl/commands/find-similar.js.map +1 -0
- package/dist/repl/commands/research.d.ts +5 -0
- package/dist/repl/commands/research.d.ts.map +1 -0
- package/dist/repl/commands/research.js +65 -0
- package/dist/repl/commands/research.js.map +1 -0
- package/dist/repl/commands/search.d.ts +5 -0
- package/dist/repl/commands/search.d.ts.map +1 -0
- package/dist/repl/commands/search.js +74 -0
- package/dist/repl/commands/search.js.map +1 -0
- package/dist/repl/commands/types.d.ts +9 -0
- package/dist/repl/commands/types.d.ts.map +1 -0
- package/dist/repl/commands/types.js +1 -0
- package/dist/repl/commands/types.js.map +1 -0
- package/dist/repl/formatters.d.ts +13 -0
- package/dist/repl/formatters.d.ts.map +1 -0
- package/dist/repl/formatters.js +283 -0
- package/dist/repl/formatters.js.map +1 -0
- package/dist/repl/parser.d.ts +9 -0
- package/dist/repl/parser.d.ts.map +1 -0
- package/dist/repl/parser.js +86 -0
- package/dist/repl/parser.js.map +1 -0
- package/dist/repl/shell.d.ts +8 -0
- package/dist/repl/shell.d.ts.map +1 -0
- package/dist/repl/shell.js +184 -0
- package/dist/repl/shell.js.map +1 -0
- package/dist/research/branch-exploration.d.ts +14 -0
- package/dist/research/branch-exploration.d.ts.map +1 -0
- package/dist/research/branch-exploration.js +100 -0
- package/dist/research/branch-exploration.js.map +1 -0
- package/dist/research/brief.d.ts +5 -0
- package/dist/research/brief.d.ts.map +1 -0
- package/dist/research/brief.js +242 -0
- package/dist/research/brief.js.map +1 -0
- package/dist/research/citation-graph.d.ts +9 -0
- package/dist/research/citation-graph.d.ts.map +1 -0
- package/dist/research/citation-graph.js +114 -0
- package/dist/research/citation-graph.js.map +1 -0
- package/dist/research/decompose.d.ts +14 -0
- package/dist/research/decompose.d.ts.map +1 -0
- package/dist/research/decompose.js +439 -0
- package/dist/research/decompose.js.map +1 -0
- package/dist/research/pipeline.d.ts +5 -0
- package/dist/research/pipeline.d.ts.map +1 -0
- package/dist/research/pipeline.js +269 -0
- package/dist/research/pipeline.js.map +1 -0
- package/dist/research/synthesis-local.d.ts +16 -0
- package/dist/research/synthesis-local.d.ts.map +1 -0
- package/dist/research/synthesis-local.js +73 -0
- package/dist/research/synthesis-local.js.map +1 -0
- package/dist/research/synthesize.d.ts +10 -0
- package/dist/research/synthesize.d.ts.map +1 -0
- package/dist/research/synthesize.js +137 -0
- package/dist/research/synthesize.js.map +1 -0
- package/dist/search/answer-synthesis.d.ts +33 -0
- package/dist/search/answer-synthesis.d.ts.map +1 -0
- package/dist/search/answer-synthesis.js +244 -0
- package/dist/search/answer-synthesis.js.map +1 -0
- package/dist/search/context-formatter.d.ts +3 -0
- package/dist/search/context-formatter.d.ts.map +1 -0
- package/dist/search/context-formatter.js +56 -0
- package/dist/search/context-formatter.js.map +1 -0
- package/dist/search/dedup.d.ts +1 -0
- package/dist/search/dedup.d.ts.map +1 -1
- package/dist/search/dedup.js +40 -32
- package/dist/search/dedup.js.map +1 -1
- package/dist/search/engines/arxiv.d.ts +7 -0
- package/dist/search/engines/arxiv.d.ts.map +1 -0
- package/dist/search/engines/arxiv.js +70 -0
- package/dist/search/engines/arxiv.js.map +1 -0
- package/dist/search/engines/bing-news.d.ts +7 -0
- package/dist/search/engines/bing-news.d.ts.map +1 -0
- package/dist/search/engines/bing-news.js +97 -0
- package/dist/search/engines/bing-news.js.map +1 -0
- package/dist/search/engines/bing.d.ts +1 -0
- package/dist/search/engines/bing.d.ts.map +1 -1
- package/dist/search/engines/bing.js +100 -44
- package/dist/search/engines/bing.js.map +1 -1
- package/dist/search/engines/devdocs.d.ts +6 -0
- package/dist/search/engines/devdocs.d.ts.map +1 -0
- package/dist/search/engines/devdocs.js +56 -0
- package/dist/search/engines/devdocs.js.map +1 -0
- package/dist/search/engines/duckduckgo.d.ts.map +1 -1
- package/dist/search/engines/duckduckgo.js +56 -44
- package/dist/search/engines/duckduckgo.js.map +1 -1
- package/dist/search/engines/github-code.d.ts +7 -0
- package/dist/search/engines/github-code.d.ts.map +1 -0
- package/dist/search/engines/github-code.js +55 -0
- package/dist/search/engines/github-code.js.map +1 -0
- package/dist/search/engines/hn-algolia.d.ts +7 -0
- package/dist/search/engines/hn-algolia.d.ts.map +1 -0
- package/dist/search/engines/hn-algolia.js +76 -0
- package/dist/search/engines/hn-algolia.js.map +1 -0
- package/dist/search/engines/lobsters.d.ts +7 -0
- package/dist/search/engines/lobsters.d.ts.map +1 -0
- package/dist/search/engines/lobsters.js +83 -0
- package/dist/search/engines/lobsters.js.map +1 -0
- package/dist/search/engines/mdn.d.ts +7 -0
- package/dist/search/engines/mdn.d.ts.map +1 -0
- package/dist/search/engines/mdn.js +48 -0
- package/dist/search/engines/mdn.js.map +1 -0
- package/dist/search/engines/semantic-scholar.d.ts +7 -0
- package/dist/search/engines/semantic-scholar.d.ts.map +1 -0
- package/dist/search/engines/semantic-scholar.js +69 -0
- package/dist/search/engines/semantic-scholar.js.map +1 -0
- package/dist/search/engines/stackoverflow.d.ts +7 -0
- package/dist/search/engines/stackoverflow.d.ts.map +1 -0
- package/dist/search/engines/stackoverflow.js +73 -0
- package/dist/search/engines/stackoverflow.js.map +1 -0
- package/dist/search/engines/startpage.d.ts.map +1 -1
- package/dist/search/engines/startpage.js +65 -46
- package/dist/search/engines/startpage.js.map +1 -1
- package/dist/search/evidence.d.ts +25 -0
- package/dist/search/evidence.d.ts.map +1 -0
- package/dist/search/evidence.js +220 -0
- package/dist/search/evidence.js.map +1 -0
- package/dist/search/filters.js +49 -55
- package/dist/search/filters.js.map +1 -1
- package/dist/search/find-similar/crawl-rank.d.ts +9 -0
- package/dist/search/find-similar/crawl-rank.d.ts.map +1 -0
- package/dist/search/find-similar/crawl-rank.js +272 -0
- package/dist/search/find-similar/crawl-rank.js.map +1 -0
- package/dist/search/find-similar/mode.d.ts +4 -0
- package/dist/search/find-similar/mode.d.ts.map +1 -0
- package/dist/search/find-similar/mode.js +12 -0
- package/dist/search/find-similar/mode.js.map +1 -0
- package/dist/search/find-similar.d.ts +5 -0
- package/dist/search/find-similar.d.ts.map +1 -0
- package/dist/search/find-similar.js +509 -0
- package/dist/search/find-similar.js.map +1 -0
- package/dist/search/highlights.d.ts +19 -0
- package/dist/search/highlights.d.ts.map +1 -0
- package/dist/search/highlights.js +167 -0
- package/dist/search/highlights.js.map +1 -0
- package/dist/search/language-filter.d.ts +29 -0
- package/dist/search/language-filter.d.ts.map +1 -0
- package/dist/search/language-filter.js +126 -0
- package/dist/search/language-filter.js.map +1 -0
- package/dist/search/legacy/searxng-orchestrator.d.ts +4 -0
- package/dist/search/legacy/searxng-orchestrator.d.ts.map +1 -0
- package/dist/search/legacy/searxng-orchestrator.js +501 -0
- package/dist/search/legacy/searxng-orchestrator.js.map +1 -0
- package/dist/search/legacy/searxng-provider.d.ts +7 -0
- package/dist/search/legacy/searxng-provider.d.ts.map +1 -0
- package/dist/search/legacy/searxng-provider.js +11 -0
- package/dist/search/legacy/searxng-provider.js.map +1 -0
- package/dist/search/multi-query.d.ts +25 -0
- package/dist/search/multi-query.d.ts.map +1 -0
- package/dist/search/multi-query.js +228 -0
- package/dist/search/multi-query.js.map +1 -0
- package/dist/search/query.js +32 -34
- package/dist/search/query.js.map +1 -1
- package/dist/search/rerank.d.ts +3 -1
- package/dist/search/rerank.d.ts.map +1 -1
- package/dist/search/rerank.js +44 -35
- package/dist/search/rerank.js.map +1 -1
- package/dist/search/reranker/authority-boost.d.ts +3 -0
- package/dist/search/reranker/authority-boost.d.ts.map +1 -0
- package/dist/search/reranker/authority-boost.js +179 -0
- package/dist/search/reranker/authority-boost.js.map +1 -0
- package/dist/search/reranker/consensus-boost.d.ts +3 -0
- package/dist/search/reranker/consensus-boost.d.ts.map +1 -0
- package/dist/search/reranker/consensus-boost.js +27 -0
- package/dist/search/reranker/consensus-boost.js.map +1 -0
- package/dist/search/reranker/recency-boost.d.ts +3 -0
- package/dist/search/reranker/recency-boost.d.ts.map +1 -0
- package/dist/search/reranker/recency-boost.js +13 -0
- package/dist/search/reranker/recency-boost.js.map +1 -0
- package/dist/search/reranker/recency.d.ts +3 -0
- package/dist/search/reranker/recency.d.ts.map +1 -0
- package/dist/search/reranker/recency.js +23 -0
- package/dist/search/reranker/recency.js.map +1 -0
- package/dist/search/reranker/transformers-rerank-provider.d.ts +12 -0
- package/dist/search/reranker/transformers-rerank-provider.d.ts.map +1 -0
- package/dist/search/reranker/transformers-rerank-provider.js +78 -0
- package/dist/search/reranker/transformers-rerank-provider.js.map +1 -0
- package/dist/search/rrf.d.ts +17 -0
- package/dist/search/rrf.d.ts.map +1 -0
- package/dist/search/rrf.js +39 -0
- package/dist/search/rrf.js.map +1 -0
- package/dist/search/sampling.d.ts +25 -0
- package/dist/search/sampling.d.ts.map +1 -0
- package/dist/search/sampling.js +52 -0
- package/dist/search/sampling.js.map +1 -0
- package/dist/search/searxng.d.ts.map +1 -1
- package/dist/search/searxng.js +69 -79
- package/dist/search/searxng.js.map +1 -1
- package/dist/search/tokens.d.ts +3 -0
- package/dist/search/tokens.d.ts.map +1 -0
- package/dist/search/tokens.js +39 -0
- package/dist/search/tokens.js.map +1 -0
- package/dist/search/truncate.d.ts +6 -0
- package/dist/search/truncate.d.ts.map +1 -0
- package/dist/search/truncate.js +26 -0
- package/dist/search/truncate.js.map +1 -0
- package/dist/search/url-unwrap.d.ts +3 -0
- package/dist/search/url-unwrap.d.ts.map +1 -0
- package/dist/search/url-unwrap.js +43 -0
- package/dist/search/url-unwrap.js.map +1 -0
- package/dist/search/v1/context-rank.d.ts +13 -0
- package/dist/search/v1/context-rank.d.ts.map +1 -0
- package/dist/search/v1/context-rank.js +74 -0
- package/dist/search/v1/context-rank.js.map +1 -0
- package/dist/search/v1/engine-base.d.ts +27 -0
- package/dist/search/v1/engine-base.d.ts.map +1 -0
- package/dist/search/v1/engine-base.js +110 -0
- package/dist/search/v1/engine-base.js.map +1 -0
- package/dist/search/v1/intent-router.d.ts +22 -0
- package/dist/search/v1/intent-router.d.ts.map +1 -0
- package/dist/search/v1/intent-router.js +138 -0
- package/dist/search/v1/intent-router.js.map +1 -0
- package/dist/search/v1/orchestrator.d.ts +24 -0
- package/dist/search/v1/orchestrator.d.ts.map +1 -0
- package/dist/search/v1/orchestrator.js +163 -0
- package/dist/search/v1/orchestrator.js.map +1 -0
- package/dist/search/v1/recency-boost.d.ts +9 -0
- package/dist/search/v1/recency-boost.d.ts.map +1 -0
- package/dist/search/v1/recency-boost.js +37 -0
- package/dist/search/v1/recency-boost.js.map +1 -0
- package/dist/search/v1/recent-cache-dedup.d.ts +6 -0
- package/dist/search/v1/recent-cache-dedup.d.ts.map +1 -0
- package/dist/search/v1/recent-cache-dedup.js +85 -0
- package/dist/search/v1/recent-cache-dedup.js.map +1 -0
- package/dist/search/v1/rss/feed-config.d.ts +21 -0
- package/dist/search/v1/rss/feed-config.d.ts.map +1 -0
- package/dist/search/v1/rss/feed-config.js +90 -0
- package/dist/search/v1/rss/feed-config.js.map +1 -0
- package/dist/search/v1/rss/feed-parser.d.ts +14 -0
- package/dist/search/v1/rss/feed-parser.d.ts.map +1 -0
- package/dist/search/v1/rss/feed-parser.js +104 -0
- package/dist/search/v1/rss/feed-parser.js.map +1 -0
- package/dist/search/v1/rss/feed-poller.d.ts +22 -0
- package/dist/search/v1/rss/feed-poller.d.ts.map +1 -0
- package/dist/search/v1/rss/feed-poller.js +102 -0
- package/dist/search/v1/rss/feed-poller.js.map +1 -0
- package/dist/search/v1/rss/feed-store.d.ts +30 -0
- package/dist/search/v1/rss/feed-store.d.ts.map +1 -0
- package/dist/search/v1/rss/feed-store.js +134 -0
- package/dist/search/v1/rss/feed-store.js.map +1 -0
- package/dist/search/v1/rss/rss-engine.d.ts +6 -0
- package/dist/search/v1/rss/rss-engine.d.ts.map +1 -0
- package/dist/search/v1/rss/rss-engine.js +28 -0
- package/dist/search/v1/rss/rss-engine.js.map +1 -0
- package/dist/search/v1/v1-provider.d.ts +7 -0
- package/dist/search/v1/v1-provider.d.ts.map +1 -0
- package/dist/search/v1/v1-provider.js +68 -0
- package/dist/search/v1/v1-provider.js.map +1 -0
- package/dist/search/v1/verticals/code.d.ts +4 -0
- package/dist/search/v1/verticals/code.d.ts.map +1 -0
- package/dist/search/v1/verticals/code.js +20 -0
- package/dist/search/v1/verticals/code.js.map +1 -0
- package/dist/search/v1/verticals/docs.d.ts +4 -0
- package/dist/search/v1/verticals/docs.d.ts.map +1 -0
- package/dist/search/v1/verticals/docs.js +20 -0
- package/dist/search/v1/verticals/docs.js.map +1 -0
- package/dist/search/v1/verticals/general.d.ts +4 -0
- package/dist/search/v1/verticals/general.d.ts.map +1 -0
- package/dist/search/v1/verticals/general.js +22 -0
- package/dist/search/v1/verticals/general.js.map +1 -0
- package/dist/search/v1/verticals/news.d.ts +10 -0
- package/dist/search/v1/verticals/news.d.ts.map +1 -0
- package/dist/search/v1/verticals/news.js +52 -0
- package/dist/search/v1/verticals/news.js.map +1 -0
- package/dist/search/v1/verticals/papers.d.ts +4 -0
- package/dist/search/v1/verticals/papers.d.ts.map +1 -0
- package/dist/search/v1/verticals/papers.js +23 -0
- package/dist/search/v1/verticals/papers.js.map +1 -0
- package/dist/search/validator.js +31 -31
- package/dist/search/validator.js.map +1 -1
- package/dist/searxng/bootstrap.d.ts +30 -0
- package/dist/searxng/bootstrap.d.ts.map +1 -1
- package/dist/searxng/bootstrap.js +223 -85
- package/dist/searxng/bootstrap.js.map +1 -1
- package/dist/searxng/docker.d.ts.map +1 -1
- package/dist/searxng/docker.js +69 -60
- package/dist/searxng/docker.js.map +1 -1
- package/dist/searxng/process.d.ts +13 -1
- package/dist/searxng/process.d.ts.map +1 -1
- package/dist/searxng/process.js +231 -164
- package/dist/searxng/process.js.map +1 -1
- package/dist/server/backend-status.d.ts +13 -0
- package/dist/server/backend-status.d.ts.map +1 -0
- package/dist/server/backend-status.js +40 -0
- package/dist/server/backend-status.js.map +1 -0
- package/dist/server/tool-schemas.d.ts +549 -0
- package/dist/server/tool-schemas.d.ts.map +1 -0
- package/dist/server/tool-schemas.js +464 -0
- package/dist/server/tool-schemas.js.map +1 -0
- package/dist/server/warmup-on-start.d.ts +9 -0
- package/dist/server/warmup-on-start.d.ts.map +1 -0
- package/dist/server/warmup-on-start.js +55 -0
- package/dist/server/warmup-on-start.js.map +1 -0
- package/dist/server.d.ts +17 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +454 -297
- package/dist/server.js.map +1 -1
- package/dist/tools/agent.d.ts +5 -0
- package/dist/tools/agent.d.ts.map +1 -0
- package/dist/tools/agent.js +128 -0
- package/dist/tools/agent.js.map +1 -0
- package/dist/tools/cache.d.ts +2 -1
- package/dist/tools/cache.d.ts.map +1 -1
- package/dist/tools/cache.js +175 -44
- package/dist/tools/cache.js.map +1 -1
- package/dist/tools/crawl.d.ts.map +1 -1
- package/dist/tools/crawl.js +171 -88
- package/dist/tools/crawl.js.map +1 -1
- package/dist/tools/extract.d.ts +2 -2
- package/dist/tools/extract.d.ts.map +1 -1
- package/dist/tools/extract.js +175 -59
- package/dist/tools/extract.js.map +1 -1
- package/dist/tools/fetch.d.ts +2 -2
- package/dist/tools/fetch.d.ts.map +1 -1
- package/dist/tools/fetch.js +161 -68
- package/dist/tools/fetch.js.map +1 -1
- package/dist/tools/find-similar.d.ts +5 -0
- package/dist/tools/find-similar.d.ts.map +1 -0
- package/dist/tools/find-similar.js +127 -0
- package/dist/tools/find-similar.js.map +1 -0
- package/dist/tools/research.d.ts +5 -0
- package/dist/tools/research.d.ts.map +1 -0
- package/dist/tools/research.js +107 -0
- package/dist/tools/research.js.map +1 -0
- package/dist/tools/search.d.ts +10 -2
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +13 -158
- package/dist/tools/search.js.map +1 -1
- package/dist/types.d.ts +350 -7
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +6 -1
- package/dist/types.js.map +1 -1
- package/dist/util/mode.d.ts +4 -0
- package/dist/util/mode.d.ts.map +1 -0
- package/dist/util/mode.js +34 -0
- package/dist/util/mode.js.map +1 -0
- package/package.json +78 -8
- package/dist/extraction/trafilatura.d.ts +0 -6
- package/dist/extraction/trafilatura.d.ts.map +0 -1
- package/dist/extraction/trafilatura.js +0 -105
- package/dist/extraction/trafilatura.js.map +0 -1
- package/dist/search/flashrank.d.ts +0 -12
- package/dist/search/flashrank.d.ts.map +0 -1
- package/dist/search/flashrank.js +0 -63
- package/dist/search/flashrank.js.map +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
declare function detect(): boolean;
|
|
2
|
+
declare function installMcp(cmd: {
|
|
3
|
+
command: string;
|
|
4
|
+
args: string[];
|
|
5
|
+
}): Promise<void>;
|
|
6
|
+
declare function uninstall(): Promise<{
|
|
7
|
+
removed: string[];
|
|
8
|
+
}>;
|
|
9
|
+
export declare const antigravityHandler: {
|
|
10
|
+
id: "antigravity";
|
|
11
|
+
displayName: string;
|
|
12
|
+
supportsSkills: boolean;
|
|
13
|
+
supportsCommands: boolean;
|
|
14
|
+
detect: typeof detect;
|
|
15
|
+
installMcp: typeof installMcp;
|
|
16
|
+
installInstructions: () => Promise<void>;
|
|
17
|
+
uninstall: typeof uninstall;
|
|
18
|
+
};
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=antigravity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"antigravity.d.ts","sourceRoot":"","sources":["../../../src/cli/agents/antigravity.ts"],"names":[],"mappings":"AAqBA,iBAAS,MAAM,IAAI,OAAO,CAQzB;AAED,iBAAe,UAAU,CAAC,GAAG,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKjF;AAED,iBAAe,SAAS,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAQzD;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;CAU9B,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { existsSync, mkdirSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { homedir } from "node:os";
|
|
4
|
+
import { execSync } from "node:child_process";
|
|
5
|
+
import { mergeMcpJson, removeMcpJson } from "./utils.js";
|
|
6
|
+
const MCP_KEY_PATH = ["mcpServers", "wigolo"];
|
|
7
|
+
function antigravityDir() {
|
|
8
|
+
return join(homedir(), ".antigravity");
|
|
9
|
+
}
|
|
10
|
+
function detect() {
|
|
11
|
+
if (existsSync(antigravityDir())) return true;
|
|
12
|
+
try {
|
|
13
|
+
execSync("which antigravity", { stdio: ["pipe", "pipe", "pipe"] });
|
|
14
|
+
return true;
|
|
15
|
+
} catch {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
async function installMcp(cmd) {
|
|
20
|
+
const dir = antigravityDir();
|
|
21
|
+
mkdirSync(dir, { recursive: true });
|
|
22
|
+
const configPath = join(dir, "mcp.json");
|
|
23
|
+
mergeMcpJson(configPath, { command: cmd.command, args: cmd.args }, MCP_KEY_PATH);
|
|
24
|
+
}
|
|
25
|
+
async function uninstall() {
|
|
26
|
+
const removed = [];
|
|
27
|
+
const configPath = join(antigravityDir(), "mcp.json");
|
|
28
|
+
if (existsSync(configPath)) {
|
|
29
|
+
removeMcpJson(configPath, MCP_KEY_PATH);
|
|
30
|
+
removed.push("~/.antigravity/mcp.json (wigolo entry)");
|
|
31
|
+
}
|
|
32
|
+
return { removed };
|
|
33
|
+
}
|
|
34
|
+
const antigravityHandler = {
|
|
35
|
+
id: "antigravity",
|
|
36
|
+
displayName: "Antigravity",
|
|
37
|
+
supportsSkills: false,
|
|
38
|
+
supportsCommands: false,
|
|
39
|
+
detect,
|
|
40
|
+
installMcp,
|
|
41
|
+
// No instructions layer for antigravity (config format unclear, MCP only)
|
|
42
|
+
installInstructions: async () => {
|
|
43
|
+
},
|
|
44
|
+
uninstall
|
|
45
|
+
};
|
|
46
|
+
export {
|
|
47
|
+
antigravityHandler
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=antigravity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/agents/antigravity.ts"],"sourcesContent":["/**\n * Antigravity integration.\n *\n * Antigravity is Anthropic's IDE (VS Code-derived), storing config in ~/.antigravity/.\n * MCP config format mirrors VS Code's mcp.json (mcpServers key).\n *\n * TODO: When Antigravity's official MCP config docs are published, verify the\n * exact config path and key structure.\n */\nimport { existsSync, mkdirSync } from 'node:fs';\nimport { join } from 'node:path';\nimport { homedir } from 'node:os';\nimport { execSync } from 'node:child_process';\nimport { mergeMcpJson, removeMcpJson } from './utils.js';\n\nconst MCP_KEY_PATH = ['mcpServers', 'wigolo'];\n\nfunction antigravityDir(): string {\n return join(homedir(), '.antigravity');\n}\n\nfunction detect(): boolean {\n if (existsSync(antigravityDir())) return true;\n try {\n execSync('which antigravity', { stdio: ['pipe', 'pipe', 'pipe'] });\n return true;\n } catch {\n return false;\n }\n}\n\nasync function installMcp(cmd: { command: string; args: string[] }): Promise<void> {\n const dir = antigravityDir();\n mkdirSync(dir, { recursive: true });\n const configPath = join(dir, 'mcp.json');\n mergeMcpJson(configPath, { command: cmd.command, args: cmd.args }, MCP_KEY_PATH);\n}\n\nasync function uninstall(): Promise<{ removed: string[] }> {\n const removed: string[] = [];\n const configPath = join(antigravityDir(), 'mcp.json');\n if (existsSync(configPath)) {\n removeMcpJson(configPath, MCP_KEY_PATH);\n removed.push('~/.antigravity/mcp.json (wigolo entry)');\n }\n return { removed };\n}\n\nexport const antigravityHandler = {\n id: 'antigravity' as const,\n displayName: 'Antigravity',\n supportsSkills: false,\n supportsCommands: false,\n detect,\n installMcp,\n // No instructions layer for antigravity (config format unclear, MCP only)\n installInstructions: async () => { /* noop */ },\n uninstall,\n};\n"],"mappings":"AASA,SAAS,YAAY,iBAAiB;AACtC,SAAS,YAAY;AACrB,SAAS,eAAe;AACxB,SAAS,gBAAgB;AACzB,SAAS,cAAc,qBAAqB;AAE5C,MAAM,eAAe,CAAC,cAAc,QAAQ;AAE5C,SAAS,iBAAyB;AAChC,SAAO,KAAK,QAAQ,GAAG,cAAc;AACvC;AAEA,SAAS,SAAkB;AACzB,MAAI,WAAW,eAAe,CAAC,EAAG,QAAO;AACzC,MAAI;AACF,aAAS,qBAAqB,EAAE,OAAO,CAAC,QAAQ,QAAQ,MAAM,EAAE,CAAC;AACjE,WAAO;AAAA,EACT,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAEA,eAAe,WAAW,KAAyD;AACjF,QAAM,MAAM,eAAe;AAC3B,YAAU,KAAK,EAAE,WAAW,KAAK,CAAC;AAClC,QAAM,aAAa,KAAK,KAAK,UAAU;AACvC,eAAa,YAAY,EAAE,SAAS,IAAI,SAAS,MAAM,IAAI,KAAK,GAAG,YAAY;AACjF;AAEA,eAAe,YAA4C;AACzD,QAAM,UAAoB,CAAC;AAC3B,QAAM,aAAa,KAAK,eAAe,GAAG,UAAU;AACpD,MAAI,WAAW,UAAU,GAAG;AAC1B,kBAAc,YAAY,YAAY;AACtC,YAAQ,KAAK,wCAAwC;AAAA,EACvD;AACA,SAAO,EAAE,QAAQ;AACnB;AAEO,MAAM,qBAAqB;AAAA,EAChC,IAAI;AAAA,EACJ,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB;AAAA,EACA;AAAA;AAAA,EAEA,qBAAqB,YAAY;AAAA,EAAa;AAAA,EAC9C;AACF;","names":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
declare function detect(): boolean;
|
|
2
|
+
declare function installMcp(cmd: {
|
|
3
|
+
command: string;
|
|
4
|
+
args: string[];
|
|
5
|
+
}): Promise<void>;
|
|
6
|
+
declare function installInstructions(): Promise<void>;
|
|
7
|
+
declare function installSkills(): Promise<void>;
|
|
8
|
+
declare function installCommand(): Promise<void>;
|
|
9
|
+
declare function uninstall(): Promise<{
|
|
10
|
+
removed: string[];
|
|
11
|
+
}>;
|
|
12
|
+
export declare const claudeCodeHandler: {
|
|
13
|
+
id: "claude-code";
|
|
14
|
+
displayName: string;
|
|
15
|
+
supportsSkills: boolean;
|
|
16
|
+
supportsCommands: boolean;
|
|
17
|
+
detect: typeof detect;
|
|
18
|
+
installMcp: typeof installMcp;
|
|
19
|
+
installInstructions: typeof installInstructions;
|
|
20
|
+
installSkills: typeof installSkills;
|
|
21
|
+
installCommand: typeof installCommand;
|
|
22
|
+
uninstall: typeof uninstall;
|
|
23
|
+
};
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=claude-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../../src/cli/agents/claude-code.ts"],"names":[],"mappings":"AAUA,iBAAS,MAAM,IAAI,OAAO,CAOzB;AAMD,iBAAe,UAAU,CAAC,GAAG,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAejF;AAED,iBAAe,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAIlD;AAaD,iBAAe,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAe5C;AAED,iBAAe,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAK7C;AAED,iBAAe,SAAS,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAmCzD;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;CAW7B,CAAC"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, writeFileSync, rmSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { homedir } from "node:os";
|
|
4
|
+
import { execSync } from "node:child_process";
|
|
5
|
+
import { mergeBlock, removeBlock, readAsset, readSkillDir } from "./utils.js";
|
|
6
|
+
function claudeDir() {
|
|
7
|
+
return join(homedir(), ".claude");
|
|
8
|
+
}
|
|
9
|
+
function detect() {
|
|
10
|
+
try {
|
|
11
|
+
execSync("which claude", { stdio: ["pipe", "pipe", "pipe"] });
|
|
12
|
+
return true;
|
|
13
|
+
} catch {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
function buildMcpArgs(cmd) {
|
|
18
|
+
return ["mcp", "add", "wigolo", "--", cmd.command, ...cmd.args];
|
|
19
|
+
}
|
|
20
|
+
async function installMcp(cmd) {
|
|
21
|
+
const args = buildMcpArgs(cmd);
|
|
22
|
+
try {
|
|
23
|
+
execSync(`claude ${args.join(" ")}`, {
|
|
24
|
+
stdio: ["pipe", "pipe", "pipe"],
|
|
25
|
+
timeout: 15e3
|
|
26
|
+
});
|
|
27
|
+
} catch (err) {
|
|
28
|
+
const e = err;
|
|
29
|
+
const msg = e.message ?? "";
|
|
30
|
+
if (!msg.includes("already exists") && !msg.includes("already registered")) {
|
|
31
|
+
throw err;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
async function installInstructions() {
|
|
36
|
+
const block = readAsset("blocks/claude-code/CLAUDE.md.block");
|
|
37
|
+
const target = join(claudeDir(), "CLAUDE.md");
|
|
38
|
+
mergeBlock(target, block);
|
|
39
|
+
}
|
|
40
|
+
const SKILL_DIRS = [
|
|
41
|
+
"wigolo",
|
|
42
|
+
"wigolo-search",
|
|
43
|
+
"wigolo-fetch",
|
|
44
|
+
"wigolo-crawl",
|
|
45
|
+
"wigolo-extract",
|
|
46
|
+
"wigolo-find-similar",
|
|
47
|
+
"wigolo-research",
|
|
48
|
+
"wigolo-agent"
|
|
49
|
+
];
|
|
50
|
+
async function installSkills() {
|
|
51
|
+
const skillsBase = join(claudeDir(), "skills");
|
|
52
|
+
mkdirSync(skillsBase, { recursive: true });
|
|
53
|
+
for (const dirName of SKILL_DIRS) {
|
|
54
|
+
const files = readSkillDir(dirName);
|
|
55
|
+
const dest = join(skillsBase, dirName);
|
|
56
|
+
mkdirSync(dest, { recursive: true });
|
|
57
|
+
for (const [relPath, content] of Object.entries(files)) {
|
|
58
|
+
const target = join(dest, relPath);
|
|
59
|
+
mkdirSync(join(dest, relPath, ".."), { recursive: true });
|
|
60
|
+
writeFileSync(target, content, "utf-8");
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
async function installCommand() {
|
|
65
|
+
const content = readAsset("blocks/claude-code/wigolo-command.md");
|
|
66
|
+
const commandsDir = join(claudeDir(), "commands");
|
|
67
|
+
mkdirSync(commandsDir, { recursive: true });
|
|
68
|
+
writeFileSync(join(commandsDir, "wigolo.md"), content, "utf-8");
|
|
69
|
+
}
|
|
70
|
+
async function uninstall() {
|
|
71
|
+
const removed = [];
|
|
72
|
+
try {
|
|
73
|
+
execSync("claude mcp remove wigolo", { stdio: ["pipe", "pipe", "pipe"], timeout: 1e4 });
|
|
74
|
+
removed.push("MCP server (claude mcp remove)");
|
|
75
|
+
} catch {
|
|
76
|
+
}
|
|
77
|
+
const claudeMd = join(claudeDir(), "CLAUDE.md");
|
|
78
|
+
if (existsSync(claudeMd) && removeBlock(claudeMd)) {
|
|
79
|
+
removed.push("~/.claude/CLAUDE.md block");
|
|
80
|
+
}
|
|
81
|
+
const skillsBase = join(claudeDir(), "skills");
|
|
82
|
+
for (const dirName of SKILL_DIRS) {
|
|
83
|
+
const skillDir = join(skillsBase, dirName);
|
|
84
|
+
if (existsSync(skillDir)) {
|
|
85
|
+
rmSync(skillDir, { recursive: true, force: true });
|
|
86
|
+
removed.push(`~/.claude/skills/${dirName}`);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
const commandFile = join(claudeDir(), "commands", "wigolo.md");
|
|
90
|
+
if (existsSync(commandFile)) {
|
|
91
|
+
rmSync(commandFile);
|
|
92
|
+
removed.push("~/.claude/commands/wigolo.md");
|
|
93
|
+
}
|
|
94
|
+
return { removed };
|
|
95
|
+
}
|
|
96
|
+
const claudeCodeHandler = {
|
|
97
|
+
id: "claude-code",
|
|
98
|
+
displayName: "Claude Code",
|
|
99
|
+
supportsSkills: true,
|
|
100
|
+
supportsCommands: true,
|
|
101
|
+
detect,
|
|
102
|
+
installMcp,
|
|
103
|
+
installInstructions,
|
|
104
|
+
installSkills,
|
|
105
|
+
installCommand,
|
|
106
|
+
uninstall
|
|
107
|
+
};
|
|
108
|
+
export {
|
|
109
|
+
claudeCodeHandler
|
|
110
|
+
};
|
|
111
|
+
//# sourceMappingURL=claude-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/agents/claude-code.ts"],"sourcesContent":["import { existsSync, mkdirSync, writeFileSync, rmSync } from 'node:fs';\nimport { join } from 'node:path';\nimport { homedir } from 'node:os';\nimport { execSync } from 'node:child_process';\nimport { mergeBlock, removeBlock, readAsset, readSkillDir } from './utils.js';\n\nfunction claudeDir(): string {\n return join(homedir(), '.claude');\n}\n\nfunction detect(): boolean {\n try {\n execSync('which claude', { stdio: ['pipe', 'pipe', 'pipe'] });\n return true;\n } catch {\n return false;\n }\n}\n\nfunction buildMcpArgs(cmd: { command: string; args: string[] }): string[] {\n return ['mcp', 'add', 'wigolo', '--', cmd.command, ...cmd.args];\n}\n\nasync function installMcp(cmd: { command: string; args: string[] }): Promise<void> {\n const args = buildMcpArgs(cmd);\n try {\n execSync(`claude ${args.join(' ')}`, {\n stdio: ['pipe', 'pipe', 'pipe'],\n timeout: 15000,\n });\n } catch (err) {\n const e = err as NodeJS.ErrnoException;\n const msg = e.message ?? '';\n // \"already exists\" is fine\n if (!msg.includes('already exists') && !msg.includes('already registered')) {\n throw err;\n }\n }\n}\n\nasync function installInstructions(): Promise<void> {\n const block = readAsset('blocks/claude-code/CLAUDE.md.block');\n const target = join(claudeDir(), 'CLAUDE.md');\n mergeBlock(target, block);\n}\n\nconst SKILL_DIRS = [\n 'wigolo',\n 'wigolo-search',\n 'wigolo-fetch',\n 'wigolo-crawl',\n 'wigolo-extract',\n 'wigolo-find-similar',\n 'wigolo-research',\n 'wigolo-agent',\n];\n\nasync function installSkills(): Promise<void> {\n const skillsBase = join(claudeDir(), 'skills');\n mkdirSync(skillsBase, { recursive: true });\n\n for (const dirName of SKILL_DIRS) {\n const files = readSkillDir(dirName);\n const dest = join(skillsBase, dirName);\n mkdirSync(dest, { recursive: true });\n\n for (const [relPath, content] of Object.entries(files)) {\n const target = join(dest, relPath);\n mkdirSync(join(dest, relPath, '..'), { recursive: true });\n writeFileSync(target, content, 'utf-8');\n }\n }\n}\n\nasync function installCommand(): Promise<void> {\n const content = readAsset('blocks/claude-code/wigolo-command.md');\n const commandsDir = join(claudeDir(), 'commands');\n mkdirSync(commandsDir, { recursive: true });\n writeFileSync(join(commandsDir, 'wigolo.md'), content, 'utf-8');\n}\n\nasync function uninstall(): Promise<{ removed: string[] }> {\n const removed: string[] = [];\n\n // Remove MCP\n try {\n execSync('claude mcp remove wigolo', { stdio: ['pipe', 'pipe', 'pipe'], timeout: 10000 });\n removed.push('MCP server (claude mcp remove)');\n } catch {\n // already gone or claude not found\n }\n\n // Remove instructions block\n const claudeMd = join(claudeDir(), 'CLAUDE.md');\n if (existsSync(claudeMd) && removeBlock(claudeMd)) {\n removed.push('~/.claude/CLAUDE.md block');\n }\n\n // Remove skill directories\n const skillsBase = join(claudeDir(), 'skills');\n for (const dirName of SKILL_DIRS) {\n const skillDir = join(skillsBase, dirName);\n if (existsSync(skillDir)) {\n rmSync(skillDir, { recursive: true, force: true });\n removed.push(`~/.claude/skills/${dirName}`);\n }\n }\n\n // Remove command\n const commandFile = join(claudeDir(), 'commands', 'wigolo.md');\n if (existsSync(commandFile)) {\n rmSync(commandFile);\n removed.push('~/.claude/commands/wigolo.md');\n }\n\n return { removed };\n}\n\nexport const claudeCodeHandler = {\n id: 'claude-code' as const,\n displayName: 'Claude Code',\n supportsSkills: true,\n supportsCommands: true,\n detect,\n installMcp,\n installInstructions,\n installSkills,\n installCommand,\n uninstall,\n};\n"],"mappings":"AAAA,SAAS,YAAY,WAAW,eAAe,cAAc;AAC7D,SAAS,YAAY;AACrB,SAAS,eAAe;AACxB,SAAS,gBAAgB;AACzB,SAAS,YAAY,aAAa,WAAW,oBAAoB;AAEjE,SAAS,YAAoB;AAC3B,SAAO,KAAK,QAAQ,GAAG,SAAS;AAClC;AAEA,SAAS,SAAkB;AACzB,MAAI;AACF,aAAS,gBAAgB,EAAE,OAAO,CAAC,QAAQ,QAAQ,MAAM,EAAE,CAAC;AAC5D,WAAO;AAAA,EACT,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAEA,SAAS,aAAa,KAAoD;AACxE,SAAO,CAAC,OAAO,OAAO,UAAU,MAAM,IAAI,SAAS,GAAG,IAAI,IAAI;AAChE;AAEA,eAAe,WAAW,KAAyD;AACjF,QAAM,OAAO,aAAa,GAAG;AAC7B,MAAI;AACF,aAAS,UAAU,KAAK,KAAK,GAAG,CAAC,IAAI;AAAA,MACnC,OAAO,CAAC,QAAQ,QAAQ,MAAM;AAAA,MAC9B,SAAS;AAAA,IACX,CAAC;AAAA,EACH,SAAS,KAAK;AACZ,UAAM,IAAI;AACV,UAAM,MAAM,EAAE,WAAW;AAEzB,QAAI,CAAC,IAAI,SAAS,gBAAgB,KAAK,CAAC,IAAI,SAAS,oBAAoB,GAAG;AAC1E,YAAM;AAAA,IACR;AAAA,EACF;AACF;AAEA,eAAe,sBAAqC;AAClD,QAAM,QAAQ,UAAU,oCAAoC;AAC5D,QAAM,SAAS,KAAK,UAAU,GAAG,WAAW;AAC5C,aAAW,QAAQ,KAAK;AAC1B;AAEA,MAAM,aAAa;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,eAAe,gBAA+B;AAC5C,QAAM,aAAa,KAAK,UAAU,GAAG,QAAQ;AAC7C,YAAU,YAAY,EAAE,WAAW,KAAK,CAAC;AAEzC,aAAW,WAAW,YAAY;AAChC,UAAM,QAAQ,aAAa,OAAO;AAClC,UAAM,OAAO,KAAK,YAAY,OAAO;AACrC,cAAU,MAAM,EAAE,WAAW,KAAK,CAAC;AAEnC,eAAW,CAAC,SAAS,OAAO,KAAK,OAAO,QAAQ,KAAK,GAAG;AACtD,YAAM,SAAS,KAAK,MAAM,OAAO;AACjC,gBAAU,KAAK,MAAM,SAAS,IAAI,GAAG,EAAE,WAAW,KAAK,CAAC;AACxD,oBAAc,QAAQ,SAAS,OAAO;AAAA,IACxC;AAAA,EACF;AACF;AAEA,eAAe,iBAAgC;AAC7C,QAAM,UAAU,UAAU,sCAAsC;AAChE,QAAM,cAAc,KAAK,UAAU,GAAG,UAAU;AAChD,YAAU,aAAa,EAAE,WAAW,KAAK,CAAC;AAC1C,gBAAc,KAAK,aAAa,WAAW,GAAG,SAAS,OAAO;AAChE;AAEA,eAAe,YAA4C;AACzD,QAAM,UAAoB,CAAC;AAG3B,MAAI;AACF,aAAS,4BAA4B,EAAE,OAAO,CAAC,QAAQ,QAAQ,MAAM,GAAG,SAAS,IAAM,CAAC;AACxF,YAAQ,KAAK,gCAAgC;AAAA,EAC/C,QAAQ;AAAA,EAER;AAGA,QAAM,WAAW,KAAK,UAAU,GAAG,WAAW;AAC9C,MAAI,WAAW,QAAQ,KAAK,YAAY,QAAQ,GAAG;AACjD,YAAQ,KAAK,2BAA2B;AAAA,EAC1C;AAGA,QAAM,aAAa,KAAK,UAAU,GAAG,QAAQ;AAC7C,aAAW,WAAW,YAAY;AAChC,UAAM,WAAW,KAAK,YAAY,OAAO;AACzC,QAAI,WAAW,QAAQ,GAAG;AACxB,aAAO,UAAU,EAAE,WAAW,MAAM,OAAO,KAAK,CAAC;AACjD,cAAQ,KAAK,oBAAoB,OAAO,EAAE;AAAA,IAC5C;AAAA,EACF;AAGA,QAAM,cAAc,KAAK,UAAU,GAAG,YAAY,WAAW;AAC7D,MAAI,WAAW,WAAW,GAAG;AAC3B,WAAO,WAAW;AAClB,YAAQ,KAAK,8BAA8B;AAAA,EAC7C;AAEA,SAAO,EAAE,QAAQ;AACnB;AAEO,MAAM,oBAAoB;AAAA,EAC/B,IAAI;AAAA,EACJ,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;","names":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
declare function detect(): boolean;
|
|
2
|
+
declare function installMcp(cmd: {
|
|
3
|
+
command: string;
|
|
4
|
+
args: string[];
|
|
5
|
+
}): Promise<void>;
|
|
6
|
+
declare function installInstructions(): Promise<void>;
|
|
7
|
+
declare function uninstall(): Promise<{
|
|
8
|
+
removed: string[];
|
|
9
|
+
}>;
|
|
10
|
+
export declare const cursorHandler: {
|
|
11
|
+
id: "cursor";
|
|
12
|
+
displayName: string;
|
|
13
|
+
supportsSkills: boolean;
|
|
14
|
+
supportsCommands: boolean;
|
|
15
|
+
detect: typeof detect;
|
|
16
|
+
installMcp: typeof installMcp;
|
|
17
|
+
installInstructions: typeof installInstructions;
|
|
18
|
+
uninstall: typeof uninstall;
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=cursor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../src/cli/agents/cursor.ts"],"names":[],"mappings":"AAYA,iBAAS,MAAM,IAAI,OAAO,CAazB;AAED,iBAAe,UAAU,CAAC,GAAG,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAGjF;AAED,iBAAe,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAKlD;AAED,iBAAe,SAAS,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAgBzD;AAED,eAAO,MAAM,aAAa;;;;;;;;;CASzB,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, writeFileSync, rmSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { homedir } from "node:os";
|
|
4
|
+
import { execSync } from "node:child_process";
|
|
5
|
+
import { mergeMcpJson, removeMcpJson, readAsset } from "./utils.js";
|
|
6
|
+
const MCP_KEY_PATH = ["mcpServers", "wigolo"];
|
|
7
|
+
function cursorDir() {
|
|
8
|
+
return join(homedir(), ".cursor");
|
|
9
|
+
}
|
|
10
|
+
function detect() {
|
|
11
|
+
const home = homedir();
|
|
12
|
+
return existsSync(join(home, ".cursor")) || (() => {
|
|
13
|
+
try {
|
|
14
|
+
execSync("which cursor", { stdio: ["pipe", "pipe", "pipe"] });
|
|
15
|
+
return true;
|
|
16
|
+
} catch {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
})();
|
|
20
|
+
}
|
|
21
|
+
async function installMcp(cmd) {
|
|
22
|
+
const configPath = join(cursorDir(), "mcp.json");
|
|
23
|
+
mergeMcpJson(configPath, { command: cmd.command, args: cmd.args }, MCP_KEY_PATH);
|
|
24
|
+
}
|
|
25
|
+
async function installInstructions() {
|
|
26
|
+
const content = readAsset("blocks/cursor/wigolo.mdc");
|
|
27
|
+
const rulesDir = join(cursorDir(), "rules");
|
|
28
|
+
mkdirSync(rulesDir, { recursive: true });
|
|
29
|
+
writeFileSync(join(rulesDir, "wigolo.mdc"), content, "utf-8");
|
|
30
|
+
}
|
|
31
|
+
async function uninstall() {
|
|
32
|
+
const removed = [];
|
|
33
|
+
const configPath = join(cursorDir(), "mcp.json");
|
|
34
|
+
if (existsSync(configPath)) {
|
|
35
|
+
removeMcpJson(configPath, MCP_KEY_PATH);
|
|
36
|
+
removed.push("~/.cursor/mcp.json (wigolo entry)");
|
|
37
|
+
}
|
|
38
|
+
const rulesFile = join(cursorDir(), "rules", "wigolo.mdc");
|
|
39
|
+
if (existsSync(rulesFile)) {
|
|
40
|
+
rmSync(rulesFile);
|
|
41
|
+
removed.push("~/.cursor/rules/wigolo.mdc");
|
|
42
|
+
}
|
|
43
|
+
return { removed };
|
|
44
|
+
}
|
|
45
|
+
const cursorHandler = {
|
|
46
|
+
id: "cursor",
|
|
47
|
+
displayName: "Cursor",
|
|
48
|
+
supportsSkills: false,
|
|
49
|
+
supportsCommands: false,
|
|
50
|
+
detect,
|
|
51
|
+
installMcp,
|
|
52
|
+
installInstructions,
|
|
53
|
+
uninstall
|
|
54
|
+
};
|
|
55
|
+
export {
|
|
56
|
+
cursorHandler
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=cursor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/agents/cursor.ts"],"sourcesContent":["import { existsSync, mkdirSync, writeFileSync, rmSync } from 'node:fs';\nimport { join } from 'node:path';\nimport { homedir } from 'node:os';\nimport { execSync } from 'node:child_process';\nimport { mergeMcpJson, removeMcpJson, readAsset } from './utils.js';\n\nconst MCP_KEY_PATH = ['mcpServers', 'wigolo'];\n\nfunction cursorDir(): string {\n return join(homedir(), '.cursor');\n}\n\nfunction detect(): boolean {\n const home = homedir();\n return (\n existsSync(join(home, '.cursor')) ||\n (() => {\n try {\n execSync('which cursor', { stdio: ['pipe', 'pipe', 'pipe'] });\n return true;\n } catch {\n return false;\n }\n })()\n );\n}\n\nasync function installMcp(cmd: { command: string; args: string[] }): Promise<void> {\n const configPath = join(cursorDir(), 'mcp.json');\n mergeMcpJson(configPath, { command: cmd.command, args: cmd.args }, MCP_KEY_PATH);\n}\n\nasync function installInstructions(): Promise<void> {\n const content = readAsset('blocks/cursor/wigolo.mdc');\n const rulesDir = join(cursorDir(), 'rules');\n mkdirSync(rulesDir, { recursive: true });\n writeFileSync(join(rulesDir, 'wigolo.mdc'), content, 'utf-8');\n}\n\nasync function uninstall(): Promise<{ removed: string[] }> {\n const removed: string[] = [];\n\n const configPath = join(cursorDir(), 'mcp.json');\n if (existsSync(configPath)) {\n removeMcpJson(configPath, MCP_KEY_PATH);\n removed.push('~/.cursor/mcp.json (wigolo entry)');\n }\n\n const rulesFile = join(cursorDir(), 'rules', 'wigolo.mdc');\n if (existsSync(rulesFile)) {\n rmSync(rulesFile);\n removed.push('~/.cursor/rules/wigolo.mdc');\n }\n\n return { removed };\n}\n\nexport const cursorHandler = {\n id: 'cursor' as const,\n displayName: 'Cursor',\n supportsSkills: false,\n supportsCommands: false,\n detect,\n installMcp,\n installInstructions,\n uninstall,\n};\n"],"mappings":"AAAA,SAAS,YAAY,WAAW,eAAe,cAAc;AAC7D,SAAS,YAAY;AACrB,SAAS,eAAe;AACxB,SAAS,gBAAgB;AACzB,SAAS,cAAc,eAAe,iBAAiB;AAEvD,MAAM,eAAe,CAAC,cAAc,QAAQ;AAE5C,SAAS,YAAoB;AAC3B,SAAO,KAAK,QAAQ,GAAG,SAAS;AAClC;AAEA,SAAS,SAAkB;AACzB,QAAM,OAAO,QAAQ;AACrB,SACE,WAAW,KAAK,MAAM,SAAS,CAAC,MAC/B,MAAM;AACL,QAAI;AACF,eAAS,gBAAgB,EAAE,OAAO,CAAC,QAAQ,QAAQ,MAAM,EAAE,CAAC;AAC5D,aAAO;AAAA,IACT,QAAQ;AACN,aAAO;AAAA,IACT;AAAA,EACF,GAAG;AAEP;AAEA,eAAe,WAAW,KAAyD;AACjF,QAAM,aAAa,KAAK,UAAU,GAAG,UAAU;AAC/C,eAAa,YAAY,EAAE,SAAS,IAAI,SAAS,MAAM,IAAI,KAAK,GAAG,YAAY;AACjF;AAEA,eAAe,sBAAqC;AAClD,QAAM,UAAU,UAAU,0BAA0B;AACpD,QAAM,WAAW,KAAK,UAAU,GAAG,OAAO;AAC1C,YAAU,UAAU,EAAE,WAAW,KAAK,CAAC;AACvC,gBAAc,KAAK,UAAU,YAAY,GAAG,SAAS,OAAO;AAC9D;AAEA,eAAe,YAA4C;AACzD,QAAM,UAAoB,CAAC;AAE3B,QAAM,aAAa,KAAK,UAAU,GAAG,UAAU;AAC/C,MAAI,WAAW,UAAU,GAAG;AAC1B,kBAAc,YAAY,YAAY;AACtC,YAAQ,KAAK,mCAAmC;AAAA,EAClD;AAEA,QAAM,YAAY,KAAK,UAAU,GAAG,SAAS,YAAY;AACzD,MAAI,WAAW,SAAS,GAAG;AACzB,WAAO,SAAS;AAChB,YAAQ,KAAK,4BAA4B;AAAA,EAC3C;AAEA,SAAO,EAAE,QAAQ;AACnB;AAEO,MAAM,gBAAgB;AAAA,EAC3B,IAAI;AAAA,EACJ,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;","names":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
declare function detect(): boolean;
|
|
2
|
+
declare function installMcp(cmd: {
|
|
3
|
+
command: string;
|
|
4
|
+
args: string[];
|
|
5
|
+
}): Promise<void>;
|
|
6
|
+
declare function installInstructions(): Promise<void>;
|
|
7
|
+
declare function uninstall(): Promise<{
|
|
8
|
+
removed: string[];
|
|
9
|
+
}>;
|
|
10
|
+
export declare const geminiCliHandler: {
|
|
11
|
+
id: "gemini-cli";
|
|
12
|
+
displayName: string;
|
|
13
|
+
supportsSkills: boolean;
|
|
14
|
+
supportsCommands: boolean;
|
|
15
|
+
detect: typeof detect;
|
|
16
|
+
installMcp: typeof installMcp;
|
|
17
|
+
installInstructions: typeof installInstructions;
|
|
18
|
+
uninstall: typeof uninstall;
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=gemini-cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini-cli.d.ts","sourceRoot":"","sources":["../../../src/cli/agents/gemini-cli.ts"],"names":[],"mappings":"AAYA,iBAAS,MAAM,IAAI,OAAO,CAQzB;AAED,iBAAe,UAAU,CAAC,GAAG,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAIjF;AAED,iBAAe,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAKlD;AAED,iBAAe,SAAS,IAAI,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAezD;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;CAS5B,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { existsSync, mkdirSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { homedir } from "node:os";
|
|
4
|
+
import { execSync } from "node:child_process";
|
|
5
|
+
import { mergeMcpJson, removeMcpJson, mergeBlock, removeBlock, readAsset } from "./utils.js";
|
|
6
|
+
const MCP_KEY_PATH = ["mcpServers", "wigolo"];
|
|
7
|
+
function geminiDir() {
|
|
8
|
+
return join(homedir(), ".gemini");
|
|
9
|
+
}
|
|
10
|
+
function detect() {
|
|
11
|
+
if (existsSync(geminiDir())) return true;
|
|
12
|
+
try {
|
|
13
|
+
execSync("which gemini", { stdio: ["pipe", "pipe", "pipe"] });
|
|
14
|
+
return true;
|
|
15
|
+
} catch {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
async function installMcp(cmd) {
|
|
20
|
+
const configPath = join(geminiDir(), "settings.json");
|
|
21
|
+
mkdirSync(geminiDir(), { recursive: true });
|
|
22
|
+
mergeMcpJson(configPath, { command: cmd.command, args: cmd.args }, MCP_KEY_PATH);
|
|
23
|
+
}
|
|
24
|
+
async function installInstructions() {
|
|
25
|
+
const block = readAsset("blocks/gemini-cli/GEMINI.md.block");
|
|
26
|
+
const target = join(process.cwd(), "GEMINI.md");
|
|
27
|
+
mergeBlock(target, block);
|
|
28
|
+
}
|
|
29
|
+
async function uninstall() {
|
|
30
|
+
const removed = [];
|
|
31
|
+
const configPath = join(geminiDir(), "settings.json");
|
|
32
|
+
if (existsSync(configPath)) {
|
|
33
|
+
removeMcpJson(configPath, MCP_KEY_PATH);
|
|
34
|
+
removed.push("~/.gemini/settings.json (wigolo entry)");
|
|
35
|
+
}
|
|
36
|
+
const instructionsFile = join(process.cwd(), "GEMINI.md");
|
|
37
|
+
if (existsSync(instructionsFile) && removeBlock(instructionsFile)) {
|
|
38
|
+
removed.push("GEMINI.md block");
|
|
39
|
+
}
|
|
40
|
+
return { removed };
|
|
41
|
+
}
|
|
42
|
+
const geminiCliHandler = {
|
|
43
|
+
id: "gemini-cli",
|
|
44
|
+
displayName: "Gemini CLI",
|
|
45
|
+
supportsSkills: false,
|
|
46
|
+
supportsCommands: false,
|
|
47
|
+
detect,
|
|
48
|
+
installMcp,
|
|
49
|
+
installInstructions,
|
|
50
|
+
uninstall
|
|
51
|
+
};
|
|
52
|
+
export {
|
|
53
|
+
geminiCliHandler
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=gemini-cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/agents/gemini-cli.ts"],"sourcesContent":["import { existsSync, mkdirSync, rmSync } from 'node:fs';\nimport { join } from 'node:path';\nimport { homedir } from 'node:os';\nimport { execSync } from 'node:child_process';\nimport { mergeMcpJson, removeMcpJson, mergeBlock, removeBlock, readAsset } from './utils.js';\n\nconst MCP_KEY_PATH = ['mcpServers', 'wigolo'];\n\nfunction geminiDir(): string {\n return join(homedir(), '.gemini');\n}\n\nfunction detect(): boolean {\n if (existsSync(geminiDir())) return true;\n try {\n execSync('which gemini', { stdio: ['pipe', 'pipe', 'pipe'] });\n return true;\n } catch {\n return false;\n }\n}\n\nasync function installMcp(cmd: { command: string; args: string[] }): Promise<void> {\n const configPath = join(geminiDir(), 'settings.json');\n mkdirSync(geminiDir(), { recursive: true });\n mergeMcpJson(configPath, { command: cmd.command, args: cmd.args }, MCP_KEY_PATH);\n}\n\nasync function installInstructions(): Promise<void> {\n const block = readAsset('blocks/gemini-cli/GEMINI.md.block');\n // Gemini CLI looks for GEMINI.md in CWD or home directory\n const target = join(process.cwd(), 'GEMINI.md');\n mergeBlock(target, block);\n}\n\nasync function uninstall(): Promise<{ removed: string[] }> {\n const removed: string[] = [];\n\n const configPath = join(geminiDir(), 'settings.json');\n if (existsSync(configPath)) {\n removeMcpJson(configPath, MCP_KEY_PATH);\n removed.push('~/.gemini/settings.json (wigolo entry)');\n }\n\n const instructionsFile = join(process.cwd(), 'GEMINI.md');\n if (existsSync(instructionsFile) && removeBlock(instructionsFile)) {\n removed.push('GEMINI.md block');\n }\n\n return { removed };\n}\n\nexport const geminiCliHandler = {\n id: 'gemini-cli' as const,\n displayName: 'Gemini CLI',\n supportsSkills: false,\n supportsCommands: false,\n detect,\n installMcp,\n installInstructions,\n uninstall,\n};\n"],"mappings":"AAAA,SAAS,YAAY,iBAAyB;AAC9C,SAAS,YAAY;AACrB,SAAS,eAAe;AACxB,SAAS,gBAAgB;AACzB,SAAS,cAAc,eAAe,YAAY,aAAa,iBAAiB;AAEhF,MAAM,eAAe,CAAC,cAAc,QAAQ;AAE5C,SAAS,YAAoB;AAC3B,SAAO,KAAK,QAAQ,GAAG,SAAS;AAClC;AAEA,SAAS,SAAkB;AACzB,MAAI,WAAW,UAAU,CAAC,EAAG,QAAO;AACpC,MAAI;AACF,aAAS,gBAAgB,EAAE,OAAO,CAAC,QAAQ,QAAQ,MAAM,EAAE,CAAC;AAC5D,WAAO;AAAA,EACT,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAEA,eAAe,WAAW,KAAyD;AACjF,QAAM,aAAa,KAAK,UAAU,GAAG,eAAe;AACpD,YAAU,UAAU,GAAG,EAAE,WAAW,KAAK,CAAC;AAC1C,eAAa,YAAY,EAAE,SAAS,IAAI,SAAS,MAAM,IAAI,KAAK,GAAG,YAAY;AACjF;AAEA,eAAe,sBAAqC;AAClD,QAAM,QAAQ,UAAU,mCAAmC;AAE3D,QAAM,SAAS,KAAK,QAAQ,IAAI,GAAG,WAAW;AAC9C,aAAW,QAAQ,KAAK;AAC1B;AAEA,eAAe,YAA4C;AACzD,QAAM,UAAoB,CAAC;AAE3B,QAAM,aAAa,KAAK,UAAU,GAAG,eAAe;AACpD,MAAI,WAAW,UAAU,GAAG;AAC1B,kBAAc,YAAY,YAAY;AACtC,YAAQ,KAAK,wCAAwC;AAAA,EACvD;AAEA,QAAM,mBAAmB,KAAK,QAAQ,IAAI,GAAG,WAAW;AACxD,MAAI,WAAW,gBAAgB,KAAK,YAAY,gBAAgB,GAAG;AACjE,YAAQ,KAAK,iBAAiB;AAAA,EAChC;AAEA,SAAO,EAAE,QAAQ;AACnB;AAEO,MAAM,mBAAmB;AAAA,EAC9B,IAAI;AAAA,EACJ,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;","names":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type AgentSkillHandler = {
|
|
2
|
+
id: string;
|
|
3
|
+
displayName: string;
|
|
4
|
+
supportsSkills: boolean;
|
|
5
|
+
supportsCommands: boolean;
|
|
6
|
+
detect(): boolean;
|
|
7
|
+
installMcp(cmd: {
|
|
8
|
+
command: string;
|
|
9
|
+
args: string[];
|
|
10
|
+
}): Promise<void>;
|
|
11
|
+
installInstructions(): Promise<void>;
|
|
12
|
+
installSkills?(): Promise<void>;
|
|
13
|
+
installCommand?(): Promise<void>;
|
|
14
|
+
uninstall(): Promise<{
|
|
15
|
+
removed: string[];
|
|
16
|
+
}>;
|
|
17
|
+
};
|
|
18
|
+
export declare const agentHandlers: readonly AgentSkillHandler[];
|
|
19
|
+
export declare function getAgentHandler(id: string): AgentSkillHandler | undefined;
|
|
20
|
+
export declare function detectInstalledHandlers(): AgentSkillHandler[];
|
|
21
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/cli/agents/registry.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,MAAM,IAAI,OAAO,CAAC;IAClB,UAAU,CAAC,GAAG,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,aAAa,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,cAAc,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,SAAS,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CAC7C,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,SAAS,iBAAiB,EAMrD,CAAC;AAMF,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAEzE;AAED,wBAAgB,uBAAuB,IAAI,iBAAiB,EAAE,CAE7D"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { claudeCodeHandler } from "./claude-code.js";
|
|
2
|
+
import { cursorHandler } from "./cursor.js";
|
|
3
|
+
import { vscodeHandler } from "./vscode.js";
|
|
4
|
+
import { geminiCliHandler } from "./gemini-cli.js";
|
|
5
|
+
import { antigravityHandler } from "./antigravity.js";
|
|
6
|
+
const agentHandlers = [
|
|
7
|
+
claudeCodeHandler,
|
|
8
|
+
cursorHandler,
|
|
9
|
+
vscodeHandler,
|
|
10
|
+
geminiCliHandler,
|
|
11
|
+
antigravityHandler
|
|
12
|
+
];
|
|
13
|
+
const handlerMap = new Map(
|
|
14
|
+
agentHandlers.map((h) => [h.id, h])
|
|
15
|
+
);
|
|
16
|
+
function getAgentHandler(id) {
|
|
17
|
+
return handlerMap.get(id);
|
|
18
|
+
}
|
|
19
|
+
function detectInstalledHandlers() {
|
|
20
|
+
return agentHandlers.filter((h) => h.detect());
|
|
21
|
+
}
|
|
22
|
+
export {
|
|
23
|
+
agentHandlers,
|
|
24
|
+
detectInstalledHandlers,
|
|
25
|
+
getAgentHandler
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/agents/registry.ts"],"sourcesContent":["import { claudeCodeHandler } from './claude-code.js';\nimport { cursorHandler } from './cursor.js';\nimport { vscodeHandler } from './vscode.js';\nimport { geminiCliHandler } from './gemini-cli.js';\nimport { antigravityHandler } from './antigravity.js';\n\nexport type AgentSkillHandler = {\n id: string;\n displayName: string;\n supportsSkills: boolean;\n supportsCommands: boolean;\n detect(): boolean;\n installMcp(cmd: { command: string; args: string[] }): Promise<void>;\n installInstructions(): Promise<void>;\n installSkills?(): Promise<void>;\n installCommand?(): Promise<void>;\n uninstall(): Promise<{ removed: string[] }>;\n};\n\nexport const agentHandlers: readonly AgentSkillHandler[] = [\n claudeCodeHandler,\n cursorHandler,\n vscodeHandler,\n geminiCliHandler,\n antigravityHandler,\n];\n\nconst handlerMap = new Map<string, AgentSkillHandler>(\n agentHandlers.map((h) => [h.id, h]),\n);\n\nexport function getAgentHandler(id: string): AgentSkillHandler | undefined {\n return handlerMap.get(id);\n}\n\nexport function detectInstalledHandlers(): AgentSkillHandler[] {\n return agentHandlers.filter((h) => h.detect());\n}\n"],"mappings":"AAAA,SAAS,yBAAyB;AAClC,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AAC9B,SAAS,wBAAwB;AACjC,SAAS,0BAA0B;AAe5B,MAAM,gBAA8C;AAAA,EACzD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,aAAa,IAAI;AAAA,EACrB,cAAc,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;AACpC;AAEO,SAAS,gBAAgB,IAA2C;AACzE,SAAO,WAAW,IAAI,EAAE;AAC1B;AAEO,SAAS,0BAA+C;AAC7D,SAAO,cAAc,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC;AAC/C;","names":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export declare function getVersion(): string;
|
|
2
|
+
export declare function readAsset(relPath: string): string;
|
|
3
|
+
/** Returns { 'SKILL.md': content, 'rules/cache-first.md': content, ... } */
|
|
4
|
+
export declare function readSkillDir(name: string): Record<string, string>;
|
|
5
|
+
/**
|
|
6
|
+
* Merge a block (delimited by wigolo:start/wigolo:end markers) into a file.
|
|
7
|
+
* Creates the file if it doesn't exist.
|
|
8
|
+
* Replaces an existing block, or appends if no block present.
|
|
9
|
+
*/
|
|
10
|
+
export declare function mergeBlock(filePath: string, block: string): void;
|
|
11
|
+
/** Remove the wigolo block from a file. Returns true if a block was removed. */
|
|
12
|
+
export declare function removeBlock(filePath: string): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Create or merge an MCP server entry into a JSON config file.
|
|
15
|
+
* keyPath like ['mcpServers', 'wigolo'] navigates/creates nested keys.
|
|
16
|
+
* Other servers in the file are preserved.
|
|
17
|
+
*/
|
|
18
|
+
export declare function mergeMcpJson(configPath: string, entry: Record<string, unknown>, keyPath: string[]): void;
|
|
19
|
+
/** Remove the wigolo entry from a JSON MCP config, preserving other servers. */
|
|
20
|
+
export declare function removeMcpJson(configPath: string, keyPath: string[]): void;
|
|
21
|
+
/** Detect whether wigolo is installed globally and return the appropriate command. */
|
|
22
|
+
export declare function getMcpCommand(): {
|
|
23
|
+
command: string;
|
|
24
|
+
args: string[];
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/cli/agents/utils.ts"],"names":[],"mappings":"AAWA,wBAAgB,UAAU,IAAI,MAAM,CAQnC;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGjD;AAED,4EAA4E;AAC5E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmBjE;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAwBhE;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAiBrD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,EAAE,MAAM,EAAE,GAChB,IAAI,CAuBN;AAED,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAmBzE;AAED,sFAAsF;AACtF,wBAAgB,aAAa,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAanE"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { readFileSync, writeFileSync, mkdirSync, existsSync, readdirSync } from "node:fs";
|
|
2
|
+
import { join, dirname } from "node:path";
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
import { execSync } from "node:child_process";
|
|
5
|
+
function getPackageRoot() {
|
|
6
|
+
const here = dirname(fileURLToPath(import.meta.url));
|
|
7
|
+
return join(here, "..", "..", "..");
|
|
8
|
+
}
|
|
9
|
+
function getVersion() {
|
|
10
|
+
try {
|
|
11
|
+
const raw = readFileSync(join(getPackageRoot(), "package.json"), "utf-8");
|
|
12
|
+
const pkg = JSON.parse(raw);
|
|
13
|
+
return pkg.version ?? "0.0.0";
|
|
14
|
+
} catch {
|
|
15
|
+
return "0.0.0";
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
function readAsset(relPath) {
|
|
19
|
+
const full = join(getPackageRoot(), "assets", relPath);
|
|
20
|
+
return readFileSync(full, "utf-8").replace(/\{version\}/g, getVersion());
|
|
21
|
+
}
|
|
22
|
+
function readSkillDir(name) {
|
|
23
|
+
const dir = join(getPackageRoot(), "assets", "skills", name);
|
|
24
|
+
const result = {};
|
|
25
|
+
const mainPath = join(dir, "SKILL.md");
|
|
26
|
+
if (existsSync(mainPath)) {
|
|
27
|
+
result["SKILL.md"] = readFileSync(mainPath, "utf-8");
|
|
28
|
+
}
|
|
29
|
+
const rulesDir = join(dir, "rules");
|
|
30
|
+
if (existsSync(rulesDir)) {
|
|
31
|
+
for (const file of readdirSync(rulesDir)) {
|
|
32
|
+
if (file.endsWith(".md")) {
|
|
33
|
+
result[`rules/${file}`] = readFileSync(join(rulesDir, file), "utf-8");
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return result;
|
|
38
|
+
}
|
|
39
|
+
function mergeBlock(filePath, block) {
|
|
40
|
+
mkdirSync(dirname(filePath), { recursive: true });
|
|
41
|
+
const START = "<!-- wigolo:start";
|
|
42
|
+
const END = "<!-- wigolo:end -->";
|
|
43
|
+
if (!existsSync(filePath)) {
|
|
44
|
+
writeFileSync(filePath, block.trimEnd() + "\n", "utf-8");
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const content = readFileSync(filePath, "utf-8");
|
|
48
|
+
const startIdx = content.indexOf(START);
|
|
49
|
+
const endIdx = content.indexOf(END);
|
|
50
|
+
if (startIdx !== -1 && endIdx !== -1) {
|
|
51
|
+
const before = content.slice(0, startIdx).trimEnd();
|
|
52
|
+
const after = content.slice(endIdx + END.length).trimStart();
|
|
53
|
+
const parts = [before, block.trimEnd(), after].filter(Boolean);
|
|
54
|
+
writeFileSync(filePath, parts.join("\n\n") + "\n", "utf-8");
|
|
55
|
+
} else {
|
|
56
|
+
const trimmed = content.trimEnd();
|
|
57
|
+
writeFileSync(filePath, trimmed + "\n\n" + block.trimEnd() + "\n", "utf-8");
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function removeBlock(filePath) {
|
|
61
|
+
if (!existsSync(filePath)) return false;
|
|
62
|
+
const START = "<!-- wigolo:start";
|
|
63
|
+
const END = "<!-- wigolo:end -->";
|
|
64
|
+
const content = readFileSync(filePath, "utf-8");
|
|
65
|
+
const startIdx = content.indexOf(START);
|
|
66
|
+
const endIdx = content.indexOf(END);
|
|
67
|
+
if (startIdx === -1 || endIdx === -1) return false;
|
|
68
|
+
const before = content.slice(0, startIdx).trimEnd();
|
|
69
|
+
const after = content.slice(endIdx + END.length).trimStart();
|
|
70
|
+
const parts = [before, after].filter(Boolean);
|
|
71
|
+
const newContent = parts.join("\n\n");
|
|
72
|
+
writeFileSync(filePath, newContent ? newContent + "\n" : "", "utf-8");
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
function mergeMcpJson(configPath, entry, keyPath) {
|
|
76
|
+
mkdirSync(dirname(configPath), { recursive: true });
|
|
77
|
+
let root = {};
|
|
78
|
+
if (existsSync(configPath)) {
|
|
79
|
+
try {
|
|
80
|
+
root = JSON.parse(readFileSync(configPath, "utf-8"));
|
|
81
|
+
} catch {
|
|
82
|
+
root = {};
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
let obj = root;
|
|
86
|
+
for (let i = 0; i < keyPath.length - 1; i++) {
|
|
87
|
+
const key = keyPath[i];
|
|
88
|
+
if (typeof obj[key] !== "object" || obj[key] === null) {
|
|
89
|
+
obj[key] = {};
|
|
90
|
+
}
|
|
91
|
+
obj = obj[key];
|
|
92
|
+
}
|
|
93
|
+
obj[keyPath[keyPath.length - 1]] = entry;
|
|
94
|
+
writeFileSync(configPath, JSON.stringify(root, null, 2) + "\n", "utf-8");
|
|
95
|
+
}
|
|
96
|
+
function removeMcpJson(configPath, keyPath) {
|
|
97
|
+
if (!existsSync(configPath)) return;
|
|
98
|
+
let root;
|
|
99
|
+
try {
|
|
100
|
+
root = JSON.parse(readFileSync(configPath, "utf-8"));
|
|
101
|
+
} catch {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
let obj = root;
|
|
105
|
+
for (let i = 0; i < keyPath.length - 1; i++) {
|
|
106
|
+
const key = keyPath[i];
|
|
107
|
+
if (typeof obj[key] !== "object" || obj[key] === null) return;
|
|
108
|
+
obj = obj[key];
|
|
109
|
+
}
|
|
110
|
+
delete obj[keyPath[keyPath.length - 1]];
|
|
111
|
+
writeFileSync(configPath, JSON.stringify(root, null, 2) + "\n", "utf-8");
|
|
112
|
+
}
|
|
113
|
+
function getMcpCommand() {
|
|
114
|
+
try {
|
|
115
|
+
const path = execSync("which wigolo", {
|
|
116
|
+
encoding: "utf-8",
|
|
117
|
+
stdio: ["pipe", "pipe", "pipe"]
|
|
118
|
+
}).trim();
|
|
119
|
+
if (path) {
|
|
120
|
+
return { command: "wigolo", args: [] };
|
|
121
|
+
}
|
|
122
|
+
} catch {
|
|
123
|
+
}
|
|
124
|
+
return { command: "npx", args: ["-y", "@staticn0va/wigolo"] };
|
|
125
|
+
}
|
|
126
|
+
export {
|
|
127
|
+
getMcpCommand,
|
|
128
|
+
getVersion,
|
|
129
|
+
mergeBlock,
|
|
130
|
+
mergeMcpJson,
|
|
131
|
+
readAsset,
|
|
132
|
+
readSkillDir,
|
|
133
|
+
removeBlock,
|
|
134
|
+
removeMcpJson
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=utils.js.map
|