@staticn0va/wigolo 0.1.0 → 0.1.2
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 +146 -227
- 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 +238 -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 +47 -1
- package/dist/cache/store.d.ts.map +1 -1
- package/dist/cache/store.js +364 -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 +344 -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/shutdown.d.ts +2 -0
- package/dist/cli/shutdown.d.ts.map +1 -0
- package/dist/cli/shutdown.js +26 -0
- package/dist/cli/shutdown.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 +34 -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/error-describe.d.ts +7 -0
- package/dist/fetch/error-describe.d.ts.map +1 -0
- package/dist/fetch/error-describe.js +37 -0
- package/dist/fetch/error-describe.js.map +1 -0
- 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 +187 -81
- package/dist/fetch/router.js.map +1 -1
- package/dist/index.js +102 -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/model-select.d.ts +5 -0
- package/dist/integrations/cloud/llm/model-select.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/model-select.js +32 -0
- package/dist/integrations/cloud/llm/model-select.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/run.d.ts +27 -0
- package/dist/integrations/cloud/llm/run.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/run.js +99 -0
- package/dist/integrations/cloud/llm/run.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/text-adapters.d.ts +19 -0
- package/dist/integrations/cloud/llm/text-adapters.d.ts.map +1 -0
- package/dist/integrations/cloud/llm/text-adapters.js +103 -0
- package/dist/integrations/cloud/llm/text-adapters.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 +17 -0
- package/dist/providers/rerank-provider.d.ts.map +1 -0
- package/dist/providers/rerank-provider.js +41 -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 +6 -0
- package/dist/research/brief.d.ts.map +1 -0
- package/dist/research/brief.js +246 -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 +19 -0
- package/dist/research/synthesis-local.d.ts.map +1 -0
- package/dist/research/synthesis-local.js +62 -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.d.ts.map +1 -1
- package/dist/search/filters.js +58 -54
- 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 +13 -0
- package/dist/search/reranker/transformers-rerank-provider.d.ts.map +1 -0
- package/dist/search/reranker/transformers-rerank-provider.js +94 -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 +177 -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 +174 -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,71 @@
|
|
|
1
|
+
import { useState, useEffect } from "react";
|
|
2
|
+
const INITIAL_ITEMS = [
|
|
3
|
+
{ id: "searxng", name: "Search engine", status: "pending", detail: "" },
|
|
4
|
+
{ id: "reranker", name: "ML reranker", status: "pending", detail: "" },
|
|
5
|
+
{ id: "embeddings", name: "Embeddings", status: "pending", detail: "" }
|
|
6
|
+
];
|
|
7
|
+
function createVerifyReporter(setItems, starts) {
|
|
8
|
+
return {
|
|
9
|
+
start(id, _label) {
|
|
10
|
+
starts.set(id, Date.now());
|
|
11
|
+
setItems(
|
|
12
|
+
(prev) => prev.map(
|
|
13
|
+
(item) => item.id === id ? { ...item, status: "checking" } : item
|
|
14
|
+
)
|
|
15
|
+
);
|
|
16
|
+
},
|
|
17
|
+
update() {
|
|
18
|
+
},
|
|
19
|
+
progress() {
|
|
20
|
+
},
|
|
21
|
+
success(id, detail) {
|
|
22
|
+
const elapsed = starts.has(id) ? Date.now() - starts.get(id) : void 0;
|
|
23
|
+
setItems(
|
|
24
|
+
(prev) => prev.map(
|
|
25
|
+
(item) => item.id === id ? { ...item, status: "pass", detail: detail ?? "ok", timeMs: elapsed } : item
|
|
26
|
+
)
|
|
27
|
+
);
|
|
28
|
+
},
|
|
29
|
+
fail(id, error) {
|
|
30
|
+
const elapsed = starts.has(id) ? Date.now() - starts.get(id) : void 0;
|
|
31
|
+
setItems(
|
|
32
|
+
(prev) => prev.map(
|
|
33
|
+
(item) => item.id === id ? { ...item, status: "fail", detail: error, timeMs: elapsed } : item
|
|
34
|
+
)
|
|
35
|
+
);
|
|
36
|
+
},
|
|
37
|
+
note() {
|
|
38
|
+
},
|
|
39
|
+
finish() {
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
function useVerify(dataDir) {
|
|
44
|
+
const [items, setItems] = useState(INITIAL_ITEMS);
|
|
45
|
+
const [done, setDone] = useState(false);
|
|
46
|
+
const [result, setResult] = useState(null);
|
|
47
|
+
useEffect(() => {
|
|
48
|
+
let cancelled = false;
|
|
49
|
+
const starts = /* @__PURE__ */ new Map();
|
|
50
|
+
const reporter = createVerifyReporter(setItems, starts);
|
|
51
|
+
async function run() {
|
|
52
|
+
const { runVerify } = await import("../verify.js");
|
|
53
|
+
const r = await runVerify(dataDir, reporter);
|
|
54
|
+
if (!cancelled) {
|
|
55
|
+
setResult(r);
|
|
56
|
+
setDone(true);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
run().catch(() => {
|
|
60
|
+
if (!cancelled) setDone(true);
|
|
61
|
+
});
|
|
62
|
+
return () => {
|
|
63
|
+
cancelled = true;
|
|
64
|
+
};
|
|
65
|
+
}, [dataDir]);
|
|
66
|
+
return { items, done, result };
|
|
67
|
+
}
|
|
68
|
+
export {
|
|
69
|
+
useVerify
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=useVerify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/cli/tui/hooks/useVerify.ts"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport type { WarmupReporter } from '../reporter.js';\nimport type { VerifyResult } from '../verify.js';\n\nexport interface VerifyItem {\n id: string;\n name: string;\n status: 'pending' | 'checking' | 'pass' | 'fail' | 'warn';\n detail: string;\n timeMs?: number;\n}\n\nconst INITIAL_ITEMS: VerifyItem[] = [\n { id: 'searxng', name: 'Search engine', status: 'pending', detail: '' },\n { id: 'reranker', name: 'ML reranker', status: 'pending', detail: '' },\n { id: 'embeddings', name: 'Embeddings', status: 'pending', detail: '' },\n];\n\nfunction createVerifyReporter(\n setItems: React.Dispatch<React.SetStateAction<VerifyItem[]>>,\n starts: Map<string, number>,\n): WarmupReporter {\n return {\n start(id: string, _label: string) {\n starts.set(id, Date.now());\n setItems((prev) =>\n prev.map((item) =>\n item.id === id ? { ...item, status: 'checking' } : item,\n ),\n );\n },\n update() {},\n progress() {},\n success(id: string, detail?: string) {\n const elapsed = starts.has(id) ? Date.now() - starts.get(id)! : undefined;\n setItems((prev) =>\n prev.map((item) =>\n item.id === id ? { ...item, status: 'pass', detail: detail ?? 'ok', timeMs: elapsed } : item,\n ),\n );\n },\n fail(id: string, error: string) {\n const elapsed = starts.has(id) ? Date.now() - starts.get(id)! : undefined;\n setItems((prev) =>\n prev.map((item) =>\n item.id === id ? { ...item, status: 'fail', detail: error, timeMs: elapsed } : item,\n ),\n );\n },\n note() {},\n finish() {},\n };\n}\n\nexport function useVerify(dataDir: string): {\n items: VerifyItem[];\n done: boolean;\n result: VerifyResult | null;\n} {\n const [items, setItems] = useState<VerifyItem[]>(INITIAL_ITEMS);\n const [done, setDone] = useState(false);\n const [result, setResult] = useState<VerifyResult | null>(null);\n\n useEffect(() => {\n let cancelled = false;\n const starts = new Map<string, number>();\n const reporter = createVerifyReporter(setItems, starts);\n\n async function run() {\n const { runVerify } = await import('../verify.js');\n const r = await runVerify(dataDir, reporter);\n if (!cancelled) {\n setResult(r);\n setDone(true);\n }\n }\n\n run().catch(() => {\n if (!cancelled) setDone(true);\n });\n\n return () => { cancelled = true; };\n }, [dataDir]);\n\n return { items, done, result };\n}\n"],"mappings":"AAAA,SAAS,UAAU,iBAAiB;AAYpC,MAAM,gBAA8B;AAAA,EAClC,EAAE,IAAI,WAAW,MAAM,iBAAiB,QAAQ,WAAW,QAAQ,GAAG;AAAA,EACtE,EAAE,IAAI,YAAY,MAAM,eAAe,QAAQ,WAAW,QAAQ,GAAG;AAAA,EACrE,EAAE,IAAI,cAAc,MAAM,cAAc,QAAQ,WAAW,QAAQ,GAAG;AACxE;AAEA,SAAS,qBACP,UACA,QACgB;AAChB,SAAO;AAAA,IACL,MAAM,IAAY,QAAgB;AAChC,aAAO,IAAI,IAAI,KAAK,IAAI,CAAC;AACzB;AAAA,QAAS,CAAC,SACR,KAAK;AAAA,UAAI,CAAC,SACR,KAAK,OAAO,KAAK,EAAE,GAAG,MAAM,QAAQ,WAAW,IAAI;AAAA,QACrD;AAAA,MACF;AAAA,IACF;AAAA,IACA,SAAS;AAAA,IAAC;AAAA,IACV,WAAW;AAAA,IAAC;AAAA,IACZ,QAAQ,IAAY,QAAiB;AACnC,YAAM,UAAU,OAAO,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,EAAE,IAAK;AAChE;AAAA,QAAS,CAAC,SACR,KAAK;AAAA,UAAI,CAAC,SACR,KAAK,OAAO,KAAK,EAAE,GAAG,MAAM,QAAQ,QAAQ,QAAQ,UAAU,MAAM,QAAQ,QAAQ,IAAI;AAAA,QAC1F;AAAA,MACF;AAAA,IACF;AAAA,IACA,KAAK,IAAY,OAAe;AAC9B,YAAM,UAAU,OAAO,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,EAAE,IAAK;AAChE;AAAA,QAAS,CAAC,SACR,KAAK;AAAA,UAAI,CAAC,SACR,KAAK,OAAO,KAAK,EAAE,GAAG,MAAM,QAAQ,QAAQ,QAAQ,OAAO,QAAQ,QAAQ,IAAI;AAAA,QACjF;AAAA,MACF;AAAA,IACF;AAAA,IACA,OAAO;AAAA,IAAC;AAAA,IACR,SAAS;AAAA,IAAC;AAAA,EACZ;AACF;AAEO,SAAS,UAAU,SAIxB;AACA,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAuB,aAAa;AAC9D,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,KAAK;AACtC,QAAM,CAAC,QAAQ,SAAS,IAAI,SAA8B,IAAI;AAE9D,YAAU,MAAM;AACd,QAAI,YAAY;AAChB,UAAM,SAAS,oBAAI,IAAoB;AACvC,UAAM,WAAW,qBAAqB,UAAU,MAAM;AAEtD,mBAAe,MAAM;AACnB,YAAM,EAAE,UAAU,IAAI,MAAM,OAAO,cAAc;AACjD,YAAM,IAAI,MAAM,UAAU,SAAS,QAAQ;AAC3C,UAAI,CAAC,WAAW;AACd,kBAAU,CAAC;AACX,gBAAQ,IAAI;AAAA,MACd;AAAA,IACF;AAEA,QAAI,EAAE,MAAM,MAAM;AAChB,UAAI,CAAC,UAAW,SAAQ,IAAI;AAAA,IAC9B,CAAC;AAED,WAAO,MAAM;AAAE,kBAAY;AAAA,IAAM;AAAA,EACnC,GAAG,CAAC,OAAO,CAAC;AAEZ,SAAO,EAAE,OAAO,MAAM,OAAO;AAC/B;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ink-init.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/ink-init.tsx"],"names":[],"mappings":"AAkRA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAIhD"}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useCallback } from "react";
|
|
3
|
+
import { render, useApp, Box, Text, Static } from "ink";
|
|
4
|
+
import { enableTuiMode } from "./utils/suppress-logs.js";
|
|
5
|
+
import { Banner } from "./components/Banner.js";
|
|
6
|
+
import { SystemCheck } from "./components/SystemCheck.js";
|
|
7
|
+
import { BrowserSelect } from "./components/BrowserSelect.js";
|
|
8
|
+
import { InstallProgress } from "./components/InstallProgress.js";
|
|
9
|
+
import { Verification } from "./components/Verification.js";
|
|
10
|
+
import { AgentSelect } from "./components/AgentSelect.js";
|
|
11
|
+
import { SkillInstall } from "./components/SkillInstall.js";
|
|
12
|
+
import { Summary } from "./components/Summary.js";
|
|
13
|
+
import { saveInitConfig } from "./utils/config-writer.js";
|
|
14
|
+
import { getConfig } from "../../config.js";
|
|
15
|
+
function CompactSysCheck({ checks }) {
|
|
16
|
+
const passed = checks.filter((c) => c.status === "pass").length;
|
|
17
|
+
const failed = checks.filter((c) => c.status === "fail").length;
|
|
18
|
+
return /* @__PURE__ */ jsx(Box, { paddingX: 2, children: /* @__PURE__ */ jsxs(Text, { children: [
|
|
19
|
+
/* @__PURE__ */ jsx(Text, { color: "green", bold: true, children: "\u2713" }),
|
|
20
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: " System " }),
|
|
21
|
+
/* @__PURE__ */ jsxs(Text, { dimColor: true, children: [
|
|
22
|
+
passed,
|
|
23
|
+
" passed",
|
|
24
|
+
failed > 0 ? `, ${failed} failed` : "",
|
|
25
|
+
" \u2014 ",
|
|
26
|
+
checks.filter((c) => c.status === "pass" || c.status === "optional").map((c) => `${c.label} ${c.detail}`).join(", ")
|
|
27
|
+
] })
|
|
28
|
+
] }) });
|
|
29
|
+
}
|
|
30
|
+
function CompactBrowser({ browser }) {
|
|
31
|
+
const names = { lightpanda: "Lightpanda", chromium: "Chromium", firefox: "Firefox" };
|
|
32
|
+
return /* @__PURE__ */ jsx(Box, { paddingX: 2, children: /* @__PURE__ */ jsxs(Text, { children: [
|
|
33
|
+
/* @__PURE__ */ jsx(Text, { color: "green", bold: true, children: "\u2713" }),
|
|
34
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: " Browser " }),
|
|
35
|
+
/* @__PURE__ */ jsxs(Text, { dimColor: true, children: [
|
|
36
|
+
names[browser],
|
|
37
|
+
" selected"
|
|
38
|
+
] })
|
|
39
|
+
] }) });
|
|
40
|
+
}
|
|
41
|
+
function CompactInstall({ items }) {
|
|
42
|
+
const ok = items.filter((i) => i.status === "done").length;
|
|
43
|
+
const fail = items.filter((i) => i.status === "failed").length;
|
|
44
|
+
const totalTime = items.reduce((sum, i) => sum + (i.timeMs ?? 0), 0);
|
|
45
|
+
return /* @__PURE__ */ jsx(Box, { paddingX: 2, children: /* @__PURE__ */ jsxs(Text, { children: [
|
|
46
|
+
/* @__PURE__ */ jsx(Text, { color: fail > 0 ? "yellow" : "green", bold: true, children: fail > 0 ? "!" : "\u2713" }),
|
|
47
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: " Install " }),
|
|
48
|
+
/* @__PURE__ */ jsxs(Text, { dimColor: true, children: [
|
|
49
|
+
ok,
|
|
50
|
+
" installed",
|
|
51
|
+
fail > 0 ? `, ${fail} failed` : "",
|
|
52
|
+
" \u2014 ",
|
|
53
|
+
(totalTime / 1e3).toFixed(1),
|
|
54
|
+
"s total"
|
|
55
|
+
] })
|
|
56
|
+
] }) });
|
|
57
|
+
}
|
|
58
|
+
function CompactVerify({ items }) {
|
|
59
|
+
const ok = items.filter((i) => i.status === "pass").length;
|
|
60
|
+
const fail = items.filter((i) => i.status === "fail").length;
|
|
61
|
+
return /* @__PURE__ */ jsx(Box, { paddingX: 2, children: /* @__PURE__ */ jsxs(Text, { children: [
|
|
62
|
+
/* @__PURE__ */ jsx(Text, { color: fail > 0 ? "yellow" : "green", bold: true, children: fail > 0 ? "!" : "\u2713" }),
|
|
63
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: " Verify " }),
|
|
64
|
+
/* @__PURE__ */ jsxs(Text, { dimColor: true, children: [
|
|
65
|
+
ok,
|
|
66
|
+
" passed",
|
|
67
|
+
fail > 0 ? `, ${fail} warnings` : "",
|
|
68
|
+
" \u2014",
|
|
69
|
+
" ",
|
|
70
|
+
items.filter((i) => i.status === "pass").map((i) => i.detail).filter(Boolean).join(", ")
|
|
71
|
+
] })
|
|
72
|
+
] }) });
|
|
73
|
+
}
|
|
74
|
+
function CompactAgents({ results }) {
|
|
75
|
+
if (results.length === 0) {
|
|
76
|
+
return /* @__PURE__ */ jsx(Box, { paddingX: 2, children: /* @__PURE__ */ jsxs(Text, { children: [
|
|
77
|
+
/* @__PURE__ */ jsx(Text, { dimColor: true, bold: true, children: "\u2013" }),
|
|
78
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: " Agents " }),
|
|
79
|
+
/* @__PURE__ */ jsx(Text, { dimColor: true, children: "none selected" })
|
|
80
|
+
] }) });
|
|
81
|
+
}
|
|
82
|
+
const ok = results.filter((r) => r.ok);
|
|
83
|
+
const fail = results.filter((r) => !r.ok);
|
|
84
|
+
return /* @__PURE__ */ jsx(Box, { paddingX: 2, children: /* @__PURE__ */ jsxs(Text, { children: [
|
|
85
|
+
/* @__PURE__ */ jsx(Text, { color: fail.length > 0 ? "yellow" : "green", bold: true, children: fail.length > 0 ? "!" : "\u2713" }),
|
|
86
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: " MCP " }),
|
|
87
|
+
/* @__PURE__ */ jsxs(Text, { dimColor: true, children: [
|
|
88
|
+
ok.map((r) => r.displayName).join(", "),
|
|
89
|
+
fail.length > 0 ? ` (${fail.length} failed)` : "",
|
|
90
|
+
" \u2014 config written"
|
|
91
|
+
] })
|
|
92
|
+
] }) });
|
|
93
|
+
}
|
|
94
|
+
function CompactSkills({ results }) {
|
|
95
|
+
if (results.length === 0) return null;
|
|
96
|
+
const installed = results.filter((r) => r.status === "installed");
|
|
97
|
+
const skipped = results.filter((r) => r.status === "not_supported");
|
|
98
|
+
return /* @__PURE__ */ jsx(Box, { paddingX: 2, children: /* @__PURE__ */ jsxs(Text, { children: [
|
|
99
|
+
/* @__PURE__ */ jsx(Text, { color: "green", bold: true, children: "\u2713" }),
|
|
100
|
+
/* @__PURE__ */ jsx(Text, { bold: true, children: " Skills " }),
|
|
101
|
+
/* @__PURE__ */ jsxs(Text, { dimColor: true, children: [
|
|
102
|
+
installed.length > 0 ? installed.map((r) => r.name).join(", ") : "none applicable",
|
|
103
|
+
skipped.length > 0 ? ` (${skipped.length} use MCP instructions)` : ""
|
|
104
|
+
] })
|
|
105
|
+
] }) });
|
|
106
|
+
}
|
|
107
|
+
function WigoloInit() {
|
|
108
|
+
const [phase, setPhase] = useState("banner");
|
|
109
|
+
const [completed, setCompleted] = useState([]);
|
|
110
|
+
const [browser, setBrowser] = useState("lightpanda");
|
|
111
|
+
const [agents, setAgents] = useState([]);
|
|
112
|
+
const [sysChecks, setSysChecks] = useState([]);
|
|
113
|
+
const [installItems, setInstallItems] = useState([]);
|
|
114
|
+
const [verifyItems, setVerifyItems] = useState([]);
|
|
115
|
+
const [agentResults, setAgentResults] = useState([]);
|
|
116
|
+
const [skillResults, setSkillResults] = useState([]);
|
|
117
|
+
const config = getConfig();
|
|
118
|
+
const { exit } = useApp();
|
|
119
|
+
const addCompleted = useCallback((id, node) => {
|
|
120
|
+
setCompleted((prev) => [...prev, { id, node }]);
|
|
121
|
+
}, []);
|
|
122
|
+
const handleBannerDone = useCallback(() => {
|
|
123
|
+
setPhase("syscheck");
|
|
124
|
+
}, []);
|
|
125
|
+
const handleSysCheckDone = useCallback((checks) => {
|
|
126
|
+
setSysChecks(checks);
|
|
127
|
+
addCompleted("syscheck", /* @__PURE__ */ jsx(CompactSysCheck, { checks }));
|
|
128
|
+
setPhase("browser");
|
|
129
|
+
}, [addCompleted]);
|
|
130
|
+
const handleSysFail = useCallback((checks) => {
|
|
131
|
+
setSysChecks(checks);
|
|
132
|
+
addCompleted("syscheck", /* @__PURE__ */ jsx(CompactSysCheck, { checks }));
|
|
133
|
+
setTimeout(() => exit(new Error("System check failed")), 1500);
|
|
134
|
+
}, [addCompleted, exit]);
|
|
135
|
+
const handleBrowserDone = useCallback((b) => {
|
|
136
|
+
setBrowser(b);
|
|
137
|
+
saveInitConfig(config.dataDir, { defaultBrowser: b });
|
|
138
|
+
addCompleted("browser", /* @__PURE__ */ jsx(CompactBrowser, { browser: b }));
|
|
139
|
+
setPhase("install");
|
|
140
|
+
}, [config.dataDir, addCompleted]);
|
|
141
|
+
const handleInstallDone = useCallback((items) => {
|
|
142
|
+
setInstallItems(items);
|
|
143
|
+
addCompleted("install", /* @__PURE__ */ jsx(CompactInstall, { items }));
|
|
144
|
+
setPhase("verify");
|
|
145
|
+
}, [addCompleted]);
|
|
146
|
+
const handleVerifyDone = useCallback((items) => {
|
|
147
|
+
setVerifyItems(items);
|
|
148
|
+
addCompleted("verify", /* @__PURE__ */ jsx(CompactVerify, { items }));
|
|
149
|
+
setPhase("agents");
|
|
150
|
+
}, [addCompleted]);
|
|
151
|
+
const handleAgentsDone = useCallback((selectedIds, results) => {
|
|
152
|
+
setAgents(selectedIds);
|
|
153
|
+
setAgentResults(results);
|
|
154
|
+
saveInitConfig(config.dataDir, {
|
|
155
|
+
configuredAgents: selectedIds,
|
|
156
|
+
lastInit: (/* @__PURE__ */ new Date()).toISOString()
|
|
157
|
+
});
|
|
158
|
+
addCompleted("agents", /* @__PURE__ */ jsx(CompactAgents, { results }));
|
|
159
|
+
setPhase("skills");
|
|
160
|
+
}, [config.dataDir, addCompleted]);
|
|
161
|
+
const handleSkillsDone = useCallback((results) => {
|
|
162
|
+
setSkillResults(results);
|
|
163
|
+
if (results.length > 0) {
|
|
164
|
+
addCompleted("skills", /* @__PURE__ */ jsx(CompactSkills, { results }));
|
|
165
|
+
}
|
|
166
|
+
setPhase("done");
|
|
167
|
+
}, [addCompleted]);
|
|
168
|
+
return /* @__PURE__ */ jsxs(Box, { flexDirection: "column", children: [
|
|
169
|
+
phase === "banner" ? /* @__PURE__ */ jsx(Banner, { onComplete: handleBannerDone }) : /* @__PURE__ */ jsx(Banner, { onComplete: () => {
|
|
170
|
+
} }),
|
|
171
|
+
/* @__PURE__ */ jsx(Static, { items: completed, children: (item) => /* @__PURE__ */ jsx(Box, { children: item.node }, item.id) }),
|
|
172
|
+
phase !== "banner" && phase !== "done" && /* @__PURE__ */ jsx(Text, { children: " " }),
|
|
173
|
+
phase === "syscheck" && /* @__PURE__ */ jsx(SystemCheck, { onComplete: handleSysCheckDone, onFail: handleSysFail }),
|
|
174
|
+
phase === "browser" && /* @__PURE__ */ jsx(BrowserSelect, { onComplete: handleBrowserDone }),
|
|
175
|
+
phase === "install" && /* @__PURE__ */ jsx(InstallProgress, { browser, onComplete: handleInstallDone }),
|
|
176
|
+
phase === "verify" && /* @__PURE__ */ jsx(Verification, { dataDir: config.dataDir, onComplete: handleVerifyDone }),
|
|
177
|
+
phase === "agents" && /* @__PURE__ */ jsx(AgentSelect, { onComplete: handleAgentsDone }),
|
|
178
|
+
phase === "skills" && /* @__PURE__ */ jsx(SkillInstall, { agents, onComplete: handleSkillsDone }),
|
|
179
|
+
phase === "done" && /* @__PURE__ */ jsx(
|
|
180
|
+
Summary,
|
|
181
|
+
{
|
|
182
|
+
agentResults,
|
|
183
|
+
skillResults,
|
|
184
|
+
installItems,
|
|
185
|
+
verifyItems
|
|
186
|
+
}
|
|
187
|
+
)
|
|
188
|
+
] });
|
|
189
|
+
}
|
|
190
|
+
async function runInkInit() {
|
|
191
|
+
enableTuiMode();
|
|
192
|
+
const { waitUntilExit } = render(/* @__PURE__ */ jsx(WigoloInit, {}));
|
|
193
|
+
await waitUntilExit();
|
|
194
|
+
}
|
|
195
|
+
export {
|
|
196
|
+
runInkInit
|
|
197
|
+
};
|
|
198
|
+
//# sourceMappingURL=ink-init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/tui/ink-init.tsx"],"sourcesContent":["import React, { useState, useCallback } from 'react';\nimport { render, useApp, Box, Text, Static } from 'ink';\nimport { enableTuiMode } from './utils/suppress-logs.js';\nimport { Banner } from './components/Banner.js';\nimport { SystemCheck } from './components/SystemCheck.js';\nimport { BrowserSelect, type BrowserChoice } from './components/BrowserSelect.js';\nimport { InstallProgress } from './components/InstallProgress.js';\nimport { Verification } from './components/Verification.js';\nimport { AgentSelect, type AgentResult } from './components/AgentSelect.js';\nimport { SkillInstall, type SkillResultInfo } from './components/SkillInstall.js';\nimport { Summary } from './components/Summary.js';\nimport { saveInitConfig } from './utils/config-writer.js';\nimport { getConfig } from '../../config.js';\nimport type { AgentId } from './agents.js';\nimport type { CheckItem } from './hooks/useSystemCheck.js';\nimport type { InstallItem } from './hooks/useInstall.js';\nimport type { VerifyItem } from './hooks/useVerify.js';\n\ntype Phase = 'banner' | 'syscheck' | 'browser' | 'install' | 'verify' | 'agents' | 'skills' | 'done';\n\n// --- Compact summaries for completed phases ---\n\nfunction CompactSysCheck({ checks }: { checks: CheckItem[] }) {\n const passed = checks.filter((c) => c.status === 'pass').length;\n const failed = checks.filter((c) => c.status === 'fail').length;\n return (\n <Box paddingX={2}>\n <Text>\n <Text color=\"green\" bold>{'✓'}</Text>\n <Text bold> System </Text>\n <Text dimColor>\n {passed} passed{failed > 0 ? `, ${failed} failed` : ''}\n {' — '}\n {checks.filter((c) => c.status === 'pass' || c.status === 'optional')\n .map((c) => `${c.label} ${c.detail}`)\n .join(', ')}\n </Text>\n </Text>\n </Box>\n );\n}\n\nfunction CompactBrowser({ browser }: { browser: BrowserChoice }) {\n const names: Record<BrowserChoice, string> = { lightpanda: 'Lightpanda', chromium: 'Chromium', firefox: 'Firefox' };\n return (\n <Box paddingX={2}>\n <Text>\n <Text color=\"green\" bold>{'✓'}</Text>\n <Text bold> Browser </Text>\n <Text dimColor>{names[browser]} selected</Text>\n </Text>\n </Box>\n );\n}\n\nfunction CompactInstall({ items }: { items: InstallItem[] }) {\n const ok = items.filter((i) => i.status === 'done').length;\n const fail = items.filter((i) => i.status === 'failed').length;\n const totalTime = items.reduce((sum, i) => sum + (i.timeMs ?? 0), 0);\n return (\n <Box paddingX={2}>\n <Text>\n <Text color={fail > 0 ? 'yellow' : 'green'} bold>{fail > 0 ? '!' : '✓'}</Text>\n <Text bold> Install </Text>\n <Text dimColor>\n {ok} installed{fail > 0 ? `, ${fail} failed` : ''}\n {' — '}{(totalTime / 1000).toFixed(1)}s total\n </Text>\n </Text>\n </Box>\n );\n}\n\nfunction CompactVerify({ items }: { items: VerifyItem[] }) {\n const ok = items.filter((i) => i.status === 'pass').length;\n const fail = items.filter((i) => i.status === 'fail').length;\n return (\n <Box paddingX={2}>\n <Text>\n <Text color={fail > 0 ? 'yellow' : 'green'} bold>{fail > 0 ? '!' : '✓'}</Text>\n <Text bold> Verify </Text>\n <Text dimColor>\n {ok} passed{fail > 0 ? `, ${fail} warnings` : ''} —{' '}\n {items.filter((i) => i.status === 'pass').map((i) => i.detail).filter(Boolean).join(', ')}\n </Text>\n </Text>\n </Box>\n );\n}\n\n\nfunction CompactAgents({ results }: { results: AgentResult[] }) {\n if (results.length === 0) {\n return (\n <Box paddingX={2}>\n <Text>\n <Text dimColor bold>{'–'}</Text>\n <Text bold> Agents </Text>\n <Text dimColor>none selected</Text>\n </Text>\n </Box>\n );\n }\n const ok = results.filter((r) => r.ok);\n const fail = results.filter((r) => !r.ok);\n return (\n <Box paddingX={2}>\n <Text>\n <Text color={fail.length > 0 ? 'yellow' : 'green'} bold>{fail.length > 0 ? '!' : '✓'}</Text>\n <Text bold> MCP </Text>\n <Text dimColor>\n {ok.map((r) => r.displayName).join(', ')}\n {fail.length > 0 ? ` (${fail.length} failed)` : ''}\n {' — config written'}\n </Text>\n </Text>\n </Box>\n );\n}\n\n\nfunction CompactSkills({ results }: { results: SkillResultInfo[] }) {\n if (results.length === 0) return null;\n const installed = results.filter((r) => r.status === 'installed');\n const skipped = results.filter((r) => r.status === 'not_supported');\n return (\n <Box paddingX={2}>\n <Text>\n <Text color=\"green\" bold>{'✓'}</Text>\n <Text bold> Skills </Text>\n <Text dimColor>\n {installed.length > 0\n ? installed.map((r) => r.name).join(', ')\n : 'none applicable'}\n {skipped.length > 0 ? ` (${skipped.length} use MCP instructions)` : ''}\n </Text>\n </Text>\n </Box>\n );\n}\n\n// --- Main app ---\n\ninterface CompletedItem {\n id: string;\n node: React.ReactNode;\n}\n\nfunction WigoloInit() {\n const [phase, setPhase] = useState<Phase>('banner');\n const [completed, setCompleted] = useState<CompletedItem[]>([]);\n const [browser, setBrowser] = useState<BrowserChoice>('lightpanda');\n const [agents, setAgents] = useState<AgentId[]>([]);\n\n // Results that components report back\n const [sysChecks, setSysChecks] = useState<CheckItem[]>([]);\n const [installItems, setInstallItems] = useState<InstallItem[]>([]);\n const [verifyItems, setVerifyItems] = useState<VerifyItem[]>([]);\n const [agentResults, setAgentResults] = useState<AgentResult[]>([]);\n const [skillResults, setSkillResults] = useState<SkillResultInfo[]>([]);\n\n const config = getConfig();\n const { exit } = useApp();\n\n const addCompleted = useCallback((id: string, node: React.ReactNode) => {\n setCompleted((prev) => [...prev, { id, node }]);\n }, []);\n\n // --- Phase transitions ---\n\n const handleBannerDone = useCallback(() => {\n setPhase('syscheck');\n }, []);\n\n const handleSysCheckDone = useCallback((checks: CheckItem[]) => {\n setSysChecks(checks);\n addCompleted('syscheck', <CompactSysCheck checks={checks} />);\n setPhase('browser');\n }, [addCompleted]);\n\n const handleSysFail = useCallback((checks: CheckItem[]) => {\n setSysChecks(checks);\n addCompleted('syscheck', <CompactSysCheck checks={checks} />);\n setTimeout(() => exit(new Error('System check failed')), 1500);\n }, [addCompleted, exit]);\n\n const handleBrowserDone = useCallback((b: BrowserChoice) => {\n setBrowser(b);\n saveInitConfig(config.dataDir, { defaultBrowser: b });\n addCompleted('browser', <CompactBrowser browser={b} />);\n setPhase('install');\n }, [config.dataDir, addCompleted]);\n\n const handleInstallDone = useCallback((items: InstallItem[]) => {\n setInstallItems(items);\n addCompleted('install', <CompactInstall items={items} />);\n setPhase('verify');\n }, [addCompleted]);\n\n const handleVerifyDone = useCallback((items: VerifyItem[]) => {\n setVerifyItems(items);\n addCompleted('verify', <CompactVerify items={items} />);\n setPhase('agents');\n }, [addCompleted]);\n\n const handleAgentsDone = useCallback((selectedIds: AgentId[], results: AgentResult[]) => {\n setAgents(selectedIds);\n setAgentResults(results);\n saveInitConfig(config.dataDir, {\n configuredAgents: selectedIds,\n lastInit: new Date().toISOString(),\n });\n addCompleted('agents', <CompactAgents results={results} />);\n setPhase('skills');\n }, [config.dataDir, addCompleted]);\n\n const handleSkillsDone = useCallback((results: SkillResultInfo[]) => {\n setSkillResults(results);\n if (results.length > 0) {\n addCompleted('skills', <CompactSkills results={results} />);\n }\n setPhase('done');\n }, [addCompleted]);\n\n return (\n <Box flexDirection=\"column\">\n {/* Banner always at top */}\n {phase === 'banner' ? (\n <Banner onComplete={handleBannerDone} />\n ) : (\n <Banner onComplete={() => {}} />\n )}\n\n {/* Completed phases shown as compact summaries */}\n <Static items={completed}>\n {(item) => (\n <Box key={item.id}>{item.node}</Box>\n )}\n </Static>\n\n {/* Spacer between completed and active */}\n {phase !== 'banner' && phase !== 'done' && <Text> </Text>}\n\n {/* Active phase */}\n {phase === 'syscheck' && (\n <SystemCheck onComplete={handleSysCheckDone} onFail={handleSysFail} />\n )}\n {phase === 'browser' && (\n <BrowserSelect onComplete={handleBrowserDone} />\n )}\n {phase === 'install' && (\n <InstallProgress browser={browser} onComplete={handleInstallDone} />\n )}\n {phase === 'verify' && (\n <Verification dataDir={config.dataDir} onComplete={handleVerifyDone} />\n )}\n {phase === 'agents' && (\n <AgentSelect onComplete={handleAgentsDone} />\n )}\n {phase === 'skills' && (\n <SkillInstall agents={agents} onComplete={handleSkillsDone} />\n )}\n {phase === 'done' && (\n <Summary\n agentResults={agentResults}\n skillResults={skillResults}\n installItems={installItems}\n verifyItems={verifyItems}\n />\n )}\n </Box>\n );\n}\n\nexport async function runInkInit(): Promise<void> {\n enableTuiMode();\n const { waitUntilExit } = render(<WigoloInit />);\n await waitUntilExit();\n}\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reporter-auto.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/reporter-auto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAIpD,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,YAAY,CAAC,IAAI,GAAE,mBAAwB,GAAG,cAAc,CAa3E"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { PlainReporter } from "./reporter.js";
|
|
2
|
+
import { TuiReporter } from "./tui-reporter.js";
|
|
3
|
+
function autoReporter(opts = {}) {
|
|
4
|
+
const plain = opts.plain ?? false;
|
|
5
|
+
const isTTY = Boolean(process.stdout.isTTY);
|
|
6
|
+
const isCI = process.env.CI === "true" || process.env.CI === "1" || process.env.GITHUB_ACTIONS === "true" || process.env.BUILDKITE === "true";
|
|
7
|
+
if (plain || !isTTY || isCI) {
|
|
8
|
+
return new PlainReporter(opts.command ?? "warmup");
|
|
9
|
+
}
|
|
10
|
+
return new TuiReporter();
|
|
11
|
+
}
|
|
12
|
+
export {
|
|
13
|
+
autoReporter
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=reporter-auto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/tui/reporter-auto.ts"],"sourcesContent":["import type { WarmupReporter } from './reporter.js';\nimport { PlainReporter } from './reporter.js';\nimport { TuiReporter } from './tui-reporter.js';\n\nexport interface AutoReporterOptions {\n plain?: boolean;\n command?: string;\n}\n\nexport function autoReporter(opts: AutoReporterOptions = {}): WarmupReporter {\n const plain = opts.plain ?? false;\n const isTTY = Boolean(process.stdout.isTTY);\n const isCI =\n process.env.CI === 'true' ||\n process.env.CI === '1' ||\n process.env.GITHUB_ACTIONS === 'true' ||\n process.env.BUILDKITE === 'true';\n\n if (plain || !isTTY || isCI) {\n return new PlainReporter(opts.command ?? 'warmup');\n }\n return new TuiReporter();\n}\n"],"mappings":"AACA,SAAS,qBAAqB;AAC9B,SAAS,mBAAmB;AAOrB,SAAS,aAAa,OAA4B,CAAC,GAAmB;AAC3E,QAAM,QAAQ,KAAK,SAAS;AAC5B,QAAM,QAAQ,QAAQ,QAAQ,OAAO,KAAK;AAC1C,QAAM,OACJ,QAAQ,IAAI,OAAO,UACnB,QAAQ,IAAI,OAAO,OACnB,QAAQ,IAAI,mBAAmB,UAC/B,QAAQ,IAAI,cAAc;AAE5B,MAAI,SAAS,CAAC,SAAS,MAAM;AAC3B,WAAO,IAAI,cAAc,KAAK,WAAW,QAAQ;AAAA,EACnD;AACA,SAAO,IAAI,YAAY;AACzB;","names":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface WarmupReporter {
|
|
2
|
+
start(id: string, label: string, opts?: {
|
|
3
|
+
totalBytes?: number;
|
|
4
|
+
}): void;
|
|
5
|
+
update(id: string, text: string): void;
|
|
6
|
+
progress(id: string, fraction: number): void;
|
|
7
|
+
success(id: string, detail?: string): void;
|
|
8
|
+
fail(id: string, error: string): void;
|
|
9
|
+
note(text: string): void;
|
|
10
|
+
finish(): void;
|
|
11
|
+
}
|
|
12
|
+
export declare class PlainReporter implements WarmupReporter {
|
|
13
|
+
private readonly prefix;
|
|
14
|
+
constructor(command?: string);
|
|
15
|
+
private write;
|
|
16
|
+
start(_id: string, label: string, _opts?: {
|
|
17
|
+
totalBytes?: number;
|
|
18
|
+
}): void;
|
|
19
|
+
update(_id: string, _text: string): void;
|
|
20
|
+
progress(_id: string, _fraction: number): void;
|
|
21
|
+
success(id: string, detail?: string): void;
|
|
22
|
+
fail(id: string, error: string): void;
|
|
23
|
+
note(text: string): void;
|
|
24
|
+
finish(): void;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=reporter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/reporter.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACvE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,OAAO,SAAW;IAI9B,OAAO,CAAC,KAAK;IAIb,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAIxE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIxC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAI9C,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAI1C,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIrC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIxB,MAAM,IAAI,IAAI;CAGf"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
class PlainReporter {
|
|
2
|
+
prefix;
|
|
3
|
+
constructor(command = "warmup") {
|
|
4
|
+
this.prefix = `[wigolo ${command}]`;
|
|
5
|
+
}
|
|
6
|
+
write(line) {
|
|
7
|
+
process.stderr.write(`${this.prefix} ${line}
|
|
8
|
+
`);
|
|
9
|
+
}
|
|
10
|
+
start(_id, label, _opts) {
|
|
11
|
+
this.write(`${label}...`);
|
|
12
|
+
}
|
|
13
|
+
update(_id, _text) {
|
|
14
|
+
}
|
|
15
|
+
progress(_id, _fraction) {
|
|
16
|
+
}
|
|
17
|
+
success(id, detail) {
|
|
18
|
+
this.write(`${id} ${detail ?? "ok"}`);
|
|
19
|
+
}
|
|
20
|
+
fail(id, error) {
|
|
21
|
+
this.write(`${id} failed: ${error}`);
|
|
22
|
+
}
|
|
23
|
+
note(text) {
|
|
24
|
+
this.write(text);
|
|
25
|
+
}
|
|
26
|
+
finish() {
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export {
|
|
30
|
+
PlainReporter
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=reporter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/tui/reporter.ts"],"sourcesContent":["export interface WarmupReporter {\n start(id: string, label: string, opts?: { totalBytes?: number }): void;\n update(id: string, text: string): void;\n progress(id: string, fraction: number): void;\n success(id: string, detail?: string): void;\n fail(id: string, error: string): void;\n note(text: string): void;\n finish(): void;\n}\n\nexport class PlainReporter implements WarmupReporter {\n private readonly prefix: string;\n\n constructor(command = 'warmup') {\n this.prefix = `[wigolo ${command}]`;\n }\n\n private write(line: string): void {\n process.stderr.write(`${this.prefix} ${line}\\n`);\n }\n\n start(_id: string, label: string, _opts?: { totalBytes?: number }): void {\n this.write(`${label}...`);\n }\n\n update(_id: string, _text: string): void {\n // no-op in plain mode\n }\n\n progress(_id: string, _fraction: number): void {\n // no-op in plain mode\n }\n\n success(id: string, detail?: string): void {\n this.write(`${id} ${detail ?? 'ok'}`);\n }\n\n fail(id: string, error: string): void {\n this.write(`${id} failed: ${error}`);\n }\n\n note(text: string): void {\n this.write(text);\n }\n\n finish(): void {\n // no-op\n }\n}\n"],"mappings":"AAUO,MAAM,cAAwC;AAAA,EAClC;AAAA,EAEjB,YAAY,UAAU,UAAU;AAC9B,SAAK,SAAS,WAAW,OAAO;AAAA,EAClC;AAAA,EAEQ,MAAM,MAAoB;AAChC,YAAQ,OAAO,MAAM,GAAG,KAAK,MAAM,IAAI,IAAI;AAAA,CAAI;AAAA,EACjD;AAAA,EAEA,MAAM,KAAa,OAAe,OAAuC;AACvE,SAAK,MAAM,GAAG,KAAK,KAAK;AAAA,EAC1B;AAAA,EAEA,OAAO,KAAa,OAAqB;AAAA,EAEzC;AAAA,EAEA,SAAS,KAAa,WAAyB;AAAA,EAE/C;AAAA,EAEA,QAAQ,IAAY,QAAuB;AACzC,SAAK,MAAM,GAAG,EAAE,IAAI,UAAU,IAAI,EAAE;AAAA,EACtC;AAAA,EAEA,KAAK,IAAY,OAAqB;AACpC,SAAK,MAAM,GAAG,EAAE,YAAY,KAAK,EAAE;AAAA,EACrC;AAAA,EAEA,KAAK,MAAoB;AACvB,SAAK,MAAM,IAAI;AAAA,EACjB;AAAA,EAEA,SAAe;AAAA,EAEf;AACF;","names":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface RunCommandOptions {
|
|
2
|
+
cwd?: string;
|
|
3
|
+
env?: NodeJS.ProcessEnv;
|
|
4
|
+
timeout?: number;
|
|
5
|
+
onLine?: (line: string, stream: 'stdout' | 'stderr') => void;
|
|
6
|
+
}
|
|
7
|
+
export interface RunCommandResult {
|
|
8
|
+
code: number;
|
|
9
|
+
stdout: string;
|
|
10
|
+
stderr: string;
|
|
11
|
+
timedOut: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare function runCommand(cmd: string, args: string[], opts?: RunCommandOptions): Promise<RunCommandResult>;
|
|
14
|
+
//# sourceMappingURL=run-command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-command.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/run-command.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,QAAQ,KAAK,IAAI,CAAC;CAC9D;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,UAAU,CAC9B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE,iBAAsB,GAC3B,OAAO,CAAC,gBAAgB,CAAC,CAoE3B"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { spawn } from "node:child_process";
|
|
2
|
+
async function runCommand(cmd, args, opts = {}) {
|
|
3
|
+
return new Promise((resolve, reject) => {
|
|
4
|
+
const spawnOpts = {
|
|
5
|
+
cwd: opts.cwd,
|
|
6
|
+
env: opts.env ?? process.env,
|
|
7
|
+
stdio: ["ignore", "pipe", "pipe"]
|
|
8
|
+
};
|
|
9
|
+
let child;
|
|
10
|
+
try {
|
|
11
|
+
child = spawn(cmd, args, spawnOpts);
|
|
12
|
+
} catch (err) {
|
|
13
|
+
reject(err);
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
let stdout = "";
|
|
17
|
+
let stderr = "";
|
|
18
|
+
let stdoutBuf = "";
|
|
19
|
+
let stderrBuf = "";
|
|
20
|
+
let timedOut = false;
|
|
21
|
+
const flushLines = (buf, stream) => {
|
|
22
|
+
const parts = buf.split("\n");
|
|
23
|
+
const tail = parts.pop() ?? "";
|
|
24
|
+
for (const line of parts) {
|
|
25
|
+
if (opts.onLine) opts.onLine(line, stream);
|
|
26
|
+
}
|
|
27
|
+
return tail;
|
|
28
|
+
};
|
|
29
|
+
child.stdout?.setEncoding("utf-8");
|
|
30
|
+
child.stdout?.on("data", (chunk) => {
|
|
31
|
+
stdout += chunk;
|
|
32
|
+
stdoutBuf = flushLines(stdoutBuf + chunk, "stdout");
|
|
33
|
+
});
|
|
34
|
+
child.stderr?.setEncoding("utf-8");
|
|
35
|
+
child.stderr?.on("data", (chunk) => {
|
|
36
|
+
stderr += chunk;
|
|
37
|
+
stderrBuf = flushLines(stderrBuf + chunk, "stderr");
|
|
38
|
+
});
|
|
39
|
+
let timer = null;
|
|
40
|
+
if (opts.timeout && opts.timeout > 0) {
|
|
41
|
+
timer = setTimeout(() => {
|
|
42
|
+
timedOut = true;
|
|
43
|
+
child.kill("SIGTERM");
|
|
44
|
+
setTimeout(() => {
|
|
45
|
+
try {
|
|
46
|
+
child.kill("SIGKILL");
|
|
47
|
+
} catch {
|
|
48
|
+
}
|
|
49
|
+
}, 2e3).unref();
|
|
50
|
+
}, opts.timeout);
|
|
51
|
+
}
|
|
52
|
+
child.on("error", (err) => {
|
|
53
|
+
if (timer) clearTimeout(timer);
|
|
54
|
+
reject(err);
|
|
55
|
+
});
|
|
56
|
+
child.on("close", (code) => {
|
|
57
|
+
if (timer) clearTimeout(timer);
|
|
58
|
+
if (stdoutBuf && opts.onLine) opts.onLine(stdoutBuf, "stdout");
|
|
59
|
+
if (stderrBuf && opts.onLine) opts.onLine(stderrBuf, "stderr");
|
|
60
|
+
resolve({
|
|
61
|
+
code: code ?? (timedOut ? -1 : 1),
|
|
62
|
+
stdout,
|
|
63
|
+
stderr,
|
|
64
|
+
timedOut
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
export {
|
|
70
|
+
runCommand
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=run-command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/tui/run-command.ts"],"sourcesContent":["import { spawn, type SpawnOptions } from 'node:child_process';\n\nexport interface RunCommandOptions {\n cwd?: string;\n env?: NodeJS.ProcessEnv;\n timeout?: number;\n onLine?: (line: string, stream: 'stdout' | 'stderr') => void;\n}\n\nexport interface RunCommandResult {\n code: number;\n stdout: string;\n stderr: string;\n timedOut: boolean;\n}\n\nexport async function runCommand(\n cmd: string,\n args: string[],\n opts: RunCommandOptions = {},\n): Promise<RunCommandResult> {\n return new Promise((resolve, reject) => {\n const spawnOpts: SpawnOptions = {\n cwd: opts.cwd,\n env: opts.env ?? process.env,\n stdio: ['ignore', 'pipe', 'pipe'],\n };\n\n let child;\n try {\n child = spawn(cmd, args, spawnOpts);\n } catch (err) {\n reject(err);\n return;\n }\n\n let stdout = '';\n let stderr = '';\n let stdoutBuf = '';\n let stderrBuf = '';\n let timedOut = false;\n\n const flushLines = (buf: string, stream: 'stdout' | 'stderr'): string => {\n const parts = buf.split('\\n');\n const tail = parts.pop() ?? '';\n for (const line of parts) {\n if (opts.onLine) opts.onLine(line, stream);\n }\n return tail;\n };\n\n child.stdout?.setEncoding('utf-8');\n child.stdout?.on('data', (chunk: string) => {\n stdout += chunk;\n stdoutBuf = flushLines(stdoutBuf + chunk, 'stdout');\n });\n child.stderr?.setEncoding('utf-8');\n child.stderr?.on('data', (chunk: string) => {\n stderr += chunk;\n stderrBuf = flushLines(stderrBuf + chunk, 'stderr');\n });\n\n let timer: NodeJS.Timeout | null = null;\n if (opts.timeout && opts.timeout > 0) {\n timer = setTimeout(() => {\n timedOut = true;\n child.kill('SIGTERM');\n setTimeout(() => { try { child.kill('SIGKILL'); } catch {} }, 2000).unref();\n }, opts.timeout);\n }\n\n child.on('error', (err) => {\n if (timer) clearTimeout(timer);\n reject(err);\n });\n\n child.on('close', (code) => {\n if (timer) clearTimeout(timer);\n if (stdoutBuf && opts.onLine) opts.onLine(stdoutBuf, 'stdout');\n if (stderrBuf && opts.onLine) opts.onLine(stderrBuf, 'stderr');\n resolve({\n code: code ?? (timedOut ? -1 : 1),\n stdout,\n stderr,\n timedOut,\n });\n });\n });\n}\n"],"mappings":"AAAA,SAAS,aAAgC;AAgBzC,eAAsB,WACpB,KACA,MACA,OAA0B,CAAC,GACA;AAC3B,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,UAAM,YAA0B;AAAA,MAC9B,KAAK,KAAK;AAAA,MACV,KAAK,KAAK,OAAO,QAAQ;AAAA,MACzB,OAAO,CAAC,UAAU,QAAQ,MAAM;AAAA,IAClC;AAEA,QAAI;AACJ,QAAI;AACF,cAAQ,MAAM,KAAK,MAAM,SAAS;AAAA,IACpC,SAAS,KAAK;AACZ,aAAO,GAAG;AACV;AAAA,IACF;AAEA,QAAI,SAAS;AACb,QAAI,SAAS;AACb,QAAI,YAAY;AAChB,QAAI,YAAY;AAChB,QAAI,WAAW;AAEf,UAAM,aAAa,CAAC,KAAa,WAAwC;AACvE,YAAM,QAAQ,IAAI,MAAM,IAAI;AAC5B,YAAM,OAAO,MAAM,IAAI,KAAK;AAC5B,iBAAW,QAAQ,OAAO;AACxB,YAAI,KAAK,OAAQ,MAAK,OAAO,MAAM,MAAM;AAAA,MAC3C;AACA,aAAO;AAAA,IACT;AAEA,UAAM,QAAQ,YAAY,OAAO;AACjC,UAAM,QAAQ,GAAG,QAAQ,CAAC,UAAkB;AAC1C,gBAAU;AACV,kBAAY,WAAW,YAAY,OAAO,QAAQ;AAAA,IACpD,CAAC;AACD,UAAM,QAAQ,YAAY,OAAO;AACjC,UAAM,QAAQ,GAAG,QAAQ,CAAC,UAAkB;AAC1C,gBAAU;AACV,kBAAY,WAAW,YAAY,OAAO,QAAQ;AAAA,IACpD,CAAC;AAED,QAAI,QAA+B;AACnC,QAAI,KAAK,WAAW,KAAK,UAAU,GAAG;AACpC,cAAQ,WAAW,MAAM;AACvB,mBAAW;AACX,cAAM,KAAK,SAAS;AACpB,mBAAW,MAAM;AAAE,cAAI;AAAE,kBAAM,KAAK,SAAS;AAAA,UAAG,QAAQ;AAAA,UAAC;AAAA,QAAE,GAAG,GAAI,EAAE,MAAM;AAAA,MAC5E,GAAG,KAAK,OAAO;AAAA,IACjB;AAEA,UAAM,GAAG,SAAS,CAAC,QAAQ;AACzB,UAAI,MAAO,cAAa,KAAK;AAC7B,aAAO,GAAG;AAAA,IACZ,CAAC;AAED,UAAM,GAAG,SAAS,CAAC,SAAS;AAC1B,UAAI,MAAO,cAAa,KAAK;AAC7B,UAAI,aAAa,KAAK,OAAQ,MAAK,OAAO,WAAW,QAAQ;AAC7D,UAAI,aAAa,KAAK,OAAQ,MAAK,OAAO,WAAW,QAAQ;AAC7D,cAAQ;AAAA,QACN,MAAM,SAAS,WAAW,KAAK;AAAA,QAC/B;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH,CAAC;AACH;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select-agents.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/select-agents.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE1D,qBAAa,WAAY,SAAQ,KAAK;;CAKrC;AAED,wBAAsB,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAsBhF"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { checkbox } from "@inquirer/prompts";
|
|
2
|
+
class NotTtyError extends Error {
|
|
3
|
+
constructor() {
|
|
4
|
+
super("Cannot prompt for agent selection: stdout is not a TTY. Use --agents flag in non-interactive mode.");
|
|
5
|
+
this.name = "NotTtyError";
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
async function selectAgents(detected) {
|
|
9
|
+
if (!process.stdout.isTTY) {
|
|
10
|
+
throw new NotTtyError();
|
|
11
|
+
}
|
|
12
|
+
if (detected.length === 0) {
|
|
13
|
+
return [];
|
|
14
|
+
}
|
|
15
|
+
const choices = detected.map((a) => ({
|
|
16
|
+
name: a.displayName,
|
|
17
|
+
value: a.id,
|
|
18
|
+
checked: a.detected,
|
|
19
|
+
disabled: a.detected ? false : "(not installed)"
|
|
20
|
+
}));
|
|
21
|
+
const selected = await checkbox({
|
|
22
|
+
message: "Select agents to configure (space to toggle, enter to confirm)",
|
|
23
|
+
choices,
|
|
24
|
+
loop: false
|
|
25
|
+
});
|
|
26
|
+
return selected;
|
|
27
|
+
}
|
|
28
|
+
export {
|
|
29
|
+
NotTtyError,
|
|
30
|
+
selectAgents
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=select-agents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/cli/tui/select-agents.ts"],"sourcesContent":["import { checkbox } from '@inquirer/prompts';\nimport type { AgentId, DetectedAgent } from './agents.js';\n\nexport class NotTtyError extends Error {\n constructor() {\n super('Cannot prompt for agent selection: stdout is not a TTY. Use --agents flag in non-interactive mode.');\n this.name = 'NotTtyError';\n }\n}\n\nexport async function selectAgents(detected: DetectedAgent[]): Promise<AgentId[]> {\n if (!process.stdout.isTTY) {\n throw new NotTtyError();\n }\n if (detected.length === 0) {\n return [];\n }\n\n const choices = detected.map((a) => ({\n name: a.displayName,\n value: a.id,\n checked: a.detected,\n disabled: a.detected ? (false as const) : ('(not installed)' as const),\n }));\n\n const selected = await checkbox<AgentId>({\n message: 'Select agents to configure (space to toggle, enter to confirm)',\n choices,\n loop: false,\n });\n\n return selected;\n}\n"],"mappings":"AAAA,SAAS,gBAAgB;AAGlB,MAAM,oBAAoB,MAAM;AAAA,EACrC,cAAc;AACZ,UAAM,oGAAoG;AAC1G,SAAK,OAAO;AAAA,EACd;AACF;AAEA,eAAsB,aAAa,UAA+C;AAChF,MAAI,CAAC,QAAQ,OAAO,OAAO;AACzB,UAAM,IAAI,YAAY;AAAA,EACxB;AACA,MAAI,SAAS,WAAW,GAAG;AACzB,WAAO,CAAC;AAAA,EACV;AAEA,QAAM,UAAU,SAAS,IAAI,CAAC,OAAO;AAAA,IACnC,MAAM,EAAE;AAAA,IACR,OAAO,EAAE;AAAA,IACT,SAAS,EAAE;AAAA,IACX,UAAU,EAAE,WAAY,QAAmB;AAAA,EAC7C,EAAE;AAEF,QAAM,WAAW,MAAM,SAAkB;AAAA,IACvC,SAAS;AAAA,IACT;AAAA,IACA,MAAM;AAAA,EACR,CAAC;AAED,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface ConnectedAgent {
|
|
2
|
+
id: string;
|
|
3
|
+
displayName: string;
|
|
4
|
+
configured: boolean;
|
|
5
|
+
path: string;
|
|
6
|
+
}
|
|
7
|
+
export interface ReadConnectedAgentsOptions {
|
|
8
|
+
home?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function readConnectedAgents(opts?: ReadConnectedAgentsOptions): ConnectedAgent[];
|
|
11
|
+
//# sourceMappingURL=status-agents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-agents.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/status-agents.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAqBD,MAAM,WAAW,0BAA0B;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,mBAAmB,CAAC,IAAI,GAAE,0BAA+B,GAAG,cAAc,EAAE,CA8B3F"}
|