cli-jaw 2.0.10 → 2.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ja.md +8 -5
- package/README.ko.md +8 -5
- package/README.md +31 -14
- package/README.zh-CN.md +8 -5
- package/dist/bin/commands/browser-web-ai.js +1 -0
- package/dist/bin/commands/browser-web-ai.js.map +1 -1
- package/dist/bin/commands/browser.js +1 -1
- package/dist/bin/commands/dashboard-memory.js +1 -0
- package/dist/bin/commands/dashboard-memory.js.map +1 -1
- package/dist/bin/commands/dispatch.js +34 -7
- package/dist/bin/commands/dispatch.js.map +1 -1
- package/dist/bin/commands/doctor.js +12 -6
- package/dist/bin/commands/doctor.js.map +1 -1
- package/dist/bin/commands/init.js +1 -2
- package/dist/bin/commands/init.js.map +1 -1
- package/dist/bin/commands/orchestrate.js +6 -4
- package/dist/bin/commands/orchestrate.js.map +1 -1
- package/dist/bin/commands/serve.js +3 -1
- package/dist/bin/commands/serve.js.map +1 -1
- package/dist/bin/commands/tui/overlays.js +4 -4
- package/dist/bin/commands/tui/overlays.js.map +1 -1
- package/dist/bin/commands/tui/types.js +2 -0
- package/dist/bin/commands/tui/types.js.map +1 -1
- package/dist/bin/postinstall.js +0 -176
- package/dist/bin/postinstall.js.map +1 -1
- package/dist/scripts/fresh-install-smoke.js +1 -2
- package/dist/scripts/fresh-install-smoke.js.map +1 -1
- package/dist/server.js +52 -18
- package/dist/server.js.map +1 -1
- package/dist/src/agent/agy-runtime.js +4 -0
- package/dist/src/agent/agy-runtime.js.map +1 -1
- package/dist/src/agent/alert-escalation.js +8 -2
- package/dist/src/agent/alert-escalation.js.map +1 -1
- package/dist/src/agent/args.js +35 -2
- package/dist/src/agent/args.js.map +1 -1
- package/dist/src/agent/codex-app-client.js +3 -0
- package/dist/src/agent/codex-app-client.js.map +1 -1
- package/dist/src/agent/cursor-runtime.js +240 -0
- package/dist/src/agent/cursor-runtime.js.map +1 -0
- package/dist/src/agent/events/acp.js +7 -3
- package/dist/src/agent/events/acp.js.map +1 -1
- package/dist/src/agent/events/claude.js +5 -2
- package/dist/src/agent/events/claude.js.map +1 -1
- package/dist/src/agent/events/codex.js +21 -13
- package/dist/src/agent/events/codex.js.map +1 -1
- package/dist/src/agent/events/cursor.js +176 -0
- package/dist/src/agent/events/cursor.js.map +1 -0
- package/dist/src/agent/events/grok.js +13 -3
- package/dist/src/agent/events/grok.js.map +1 -1
- package/dist/src/agent/events/index.js +27 -0
- package/dist/src/agent/events/index.js.map +1 -1
- package/dist/src/agent/events/tool-labels.js +13 -6
- package/dist/src/agent/events/tool-labels.js.map +1 -1
- package/dist/src/agent/lifecycle-handler.js +150 -5
- package/dist/src/agent/lifecycle-handler.js.map +1 -1
- package/dist/src/agent/resume-classifier.js +2 -0
- package/dist/src/agent/resume-classifier.js.map +1 -1
- package/dist/src/agent/spawn/resume.js +13 -2
- package/dist/src/agent/spawn/resume.js.map +1 -1
- package/dist/src/agent/spawn.js +44 -17
- package/dist/src/agent/spawn.js.map +1 -1
- package/dist/src/cli/claude-models.js +3 -0
- package/dist/src/cli/claude-models.js.map +1 -1
- package/dist/src/cli/commands.js +66 -10
- package/dist/src/cli/commands.js.map +1 -1
- package/dist/src/cli/handlers-runtime.js +2 -2
- package/dist/src/cli/handlers-runtime.js.map +1 -1
- package/dist/src/cli/handlers-workflows.js +339 -0
- package/dist/src/cli/handlers-workflows.js.map +1 -0
- package/dist/src/cli/handlers.js +11 -1
- package/dist/src/cli/handlers.js.map +1 -1
- package/dist/src/cli/readiness.js +22 -1
- package/dist/src/cli/readiness.js.map +1 -1
- package/dist/src/cli/registry.js +12 -0
- package/dist/src/cli/registry.js.map +1 -1
- package/dist/src/cli/tui/overlay.js +2 -2
- package/dist/src/cli/tui/overlay.js.map +1 -1
- package/dist/src/command-contract/catalog.js +3 -1
- package/dist/src/command-contract/catalog.js.map +1 -1
- package/dist/src/core/cli-detection.js +203 -0
- package/dist/src/core/cli-detection.js.map +1 -0
- package/dist/src/core/config.js +2 -140
- package/dist/src/core/config.js.map +1 -1
- package/dist/src/core/runtime-settings.js +31 -0
- package/dist/src/core/runtime-settings.js.map +1 -1
- package/dist/src/discord/bot.js +47 -26
- package/dist/src/discord/bot.js.map +1 -1
- package/dist/src/discord/commands.js +4 -10
- package/dist/src/discord/commands.js.map +1 -1
- package/dist/src/discord/send-only-client.js +79 -0
- package/dist/src/discord/send-only-client.js.map +1 -0
- package/dist/src/goal/heartbeat.js +51 -0
- package/dist/src/goal/heartbeat.js.map +1 -0
- package/dist/src/goal/runtime.js +31 -0
- package/dist/src/goal/runtime.js.map +1 -0
- package/dist/src/goal/store.js +153 -0
- package/dist/src/goal/store.js.map +1 -0
- package/dist/src/goal/types.js +2 -0
- package/dist/src/goal/types.js.map +1 -0
- package/dist/src/goal-run/controller.js +113 -0
- package/dist/src/goal-run/controller.js.map +1 -0
- package/dist/src/goal-run/events.js +25 -0
- package/dist/src/goal-run/events.js.map +1 -0
- package/dist/src/goal-run/failure-matrix.js +26 -0
- package/dist/src/goal-run/failure-matrix.js.map +1 -0
- package/dist/src/goal-run/policy.js +46 -0
- package/dist/src/goal-run/policy.js.map +1 -0
- package/dist/src/goal-run/types.js +2 -0
- package/dist/src/goal-run/types.js.map +1 -0
- package/dist/src/manager/git/diff-service.js +202 -0
- package/dist/src/manager/git/diff-service.js.map +1 -0
- package/dist/src/manager/notes/assets.js +11 -4
- package/dist/src/manager/notes/assets.js.map +1 -1
- package/dist/src/manager/notes/auth.js +123 -0
- package/dist/src/manager/notes/auth.js.map +1 -0
- package/dist/src/manager/notes/git.js +154 -0
- package/dist/src/manager/notes/git.js.map +1 -0
- package/dist/src/manager/notes/plugins.js +107 -0
- package/dist/src/manager/notes/plugins.js.map +1 -0
- package/dist/src/manager/notes/routes.js +91 -2
- package/dist/src/manager/notes/routes.js.map +1 -1
- package/dist/src/manager/notes/store.js +71 -1
- package/dist/src/manager/notes/store.js.map +1 -1
- package/dist/src/manager/notes/watcher.js +40 -4
- package/dist/src/manager/notes/watcher.js.map +1 -1
- package/dist/src/manager/notes/wiki-links.js +99 -10
- package/dist/src/manager/notes/wiki-links.js.map +1 -1
- package/dist/src/manager/notes/ws.js +62 -0
- package/dist/src/manager/notes/ws.js.map +1 -0
- package/dist/src/manager/preview-link-policy.js +46 -0
- package/dist/src/manager/preview-link-policy.js.map +1 -0
- package/dist/src/manager/preview-origin-proxy.js +28 -5
- package/dist/src/manager/preview-origin-proxy.js.map +1 -1
- package/dist/src/manager/preview-ports.js +12 -0
- package/dist/src/manager/preview-ports.js.map +1 -0
- package/dist/src/manager/proxy.js +15 -3
- package/dist/src/manager/proxy.js.map +1 -1
- package/dist/src/manager/registry.js +115 -0
- package/dist/src/manager/registry.js.map +1 -1
- package/dist/src/manager/routes/dashboard-git.js +106 -0
- package/dist/src/manager/routes/dashboard-git.js.map +1 -0
- package/dist/src/manager/server.js +60 -4
- package/dist/src/manager/server.js.map +1 -1
- package/dist/src/memory/heartbeat.js +4 -1
- package/dist/src/memory/heartbeat.js.map +1 -1
- package/dist/src/messaging/channel-health.js +54 -0
- package/dist/src/messaging/channel-health.js.map +1 -0
- package/dist/src/messaging/runtime.js +1 -0
- package/dist/src/messaging/runtime.js.map +1 -1
- package/dist/src/messaging/send-result.js +9 -0
- package/dist/src/messaging/send-result.js.map +1 -0
- package/dist/src/orchestrator/pipeline.js +45 -0
- package/dist/src/orchestrator/pipeline.js.map +1 -1
- package/dist/src/orchestrator/state-machine.js +50 -1
- package/dist/src/orchestrator/state-machine.js.map +1 -1
- package/dist/src/prompt/templates/a1-system.md +16 -8
- package/dist/src/prompt/templates/employee.md +3 -1
- package/dist/src/prompt/templates/orchestration.md +15 -5
- package/dist/src/routes/goal-run.js +86 -0
- package/dist/src/routes/goal-run.js.map +1 -0
- package/dist/src/routes/goal.js +118 -0
- package/dist/src/routes/goal.js.map +1 -0
- package/dist/src/routes/messaging.js +17 -11
- package/dist/src/routes/messaging.js.map +1 -1
- package/dist/src/routes/orchestrate.js +47 -17
- package/dist/src/routes/orchestrate.js.map +1 -1
- package/dist/src/routes/quota-agy-reverse.js +133 -0
- package/dist/src/routes/quota-agy-reverse.js.map +1 -0
- package/dist/src/routes/quota-cursor-dashboard.js +200 -0
- package/dist/src/routes/quota-cursor-dashboard.js.map +1 -0
- package/dist/src/routes/settings.js +6 -6
- package/dist/src/routes/settings.js.map +1 -1
- package/dist/src/team/collector.js +45 -0
- package/dist/src/team/collector.js.map +1 -0
- package/dist/src/team/dispatcher.js +35 -0
- package/dist/src/team/dispatcher.js.map +1 -0
- package/dist/src/team/planner.js +58 -0
- package/dist/src/team/planner.js.map +1 -0
- package/dist/src/team/preflight.js +46 -0
- package/dist/src/team/preflight.js.map +1 -0
- package/dist/src/team/types.js +12 -0
- package/dist/src/team/types.js.map +1 -0
- package/dist/src/telegram/bot.js +41 -10
- package/dist/src/telegram/bot.js.map +1 -1
- package/dist/src/types/cli-engine.js +1 -0
- package/dist/src/types/cli-engine.js.map +1 -1
- package/dist/src/types/cli-events.js +1 -1
- package/dist/src/types/cli-events.js.map +1 -1
- package/dist/src/workflows/artifacts.js +148 -0
- package/dist/src/workflows/artifacts.js.map +1 -0
- package/dist/src/workflows/browser-web-ai.js +18 -0
- package/dist/src/workflows/browser-web-ai.js.map +1 -0
- package/dist/src/workflows/checkpoint/store.js +31 -0
- package/dist/src/workflows/checkpoint/store.js.map +1 -0
- package/dist/src/workflows/checkpoint/types.js +4 -0
- package/dist/src/workflows/checkpoint/types.js.map +1 -0
- package/dist/src/workflows/competitive-gap.js +96 -0
- package/dist/src/workflows/competitive-gap.js.map +1 -0
- package/dist/src/workflows/context-map/builder.js +61 -0
- package/dist/src/workflows/context-map/builder.js.map +1 -0
- package/dist/src/workflows/context.js +19 -0
- package/dist/src/workflows/context.js.map +1 -0
- package/dist/src/workflows/deliberate.js +67 -0
- package/dist/src/workflows/deliberate.js.map +1 -0
- package/dist/src/workflows/employee-boundary.js +33 -0
- package/dist/src/workflows/employee-boundary.js.map +1 -0
- package/dist/src/workflows/events.js +24 -0
- package/dist/src/workflows/events.js.map +1 -0
- package/dist/src/workflows/guards.js +18 -0
- package/dist/src/workflows/guards.js.map +1 -0
- package/dist/src/workflows/handoff.js +48 -0
- package/dist/src/workflows/handoff.js.map +1 -0
- package/dist/src/workflows/index.js +6 -0
- package/dist/src/workflows/index.js.map +1 -0
- package/dist/src/workflows/permissions/policy.js +25 -0
- package/dist/src/workflows/permissions/policy.js.map +1 -0
- package/dist/src/workflows/permissions/types.js +26 -0
- package/dist/src/workflows/permissions/types.js.map +1 -0
- package/dist/src/workflows/plan.js +70 -0
- package/dist/src/workflows/plan.js.map +1 -0
- package/dist/src/workflows/planaudit.js +64 -0
- package/dist/src/workflows/planaudit.js.map +1 -0
- package/dist/src/workflows/runtime-guards.js +46 -0
- package/dist/src/workflows/runtime-guards.js.map +1 -0
- package/dist/src/workflows/runtime.js +25 -0
- package/dist/src/workflows/runtime.js.map +1 -0
- package/dist/src/workflows/status.js +49 -0
- package/dist/src/workflows/status.js.map +1 -0
- package/dist/src/workflows/types.js +4 -0
- package/dist/src/workflows/types.js.map +1 -0
- package/dist/src/workflows/web-ai-guards.js +22 -0
- package/dist/src/workflows/web-ai-guards.js.map +1 -0
- package/package.json +9 -4
- package/public/assets/providers/cursor-color.svg +2 -0
- package/public/assets/providers/cursor.svg +2 -0
- package/public/css/chat.css +99 -0
- package/public/css/orc-state.css +11 -1
- package/public/css/sidebar.css +34 -0
- package/public/css/variables.css +23 -2
- package/public/css/workflow-cockpit.css +62 -0
- package/public/dist/assets/{AdvancedExport-CZEVPqHb.js → AdvancedExport-DLCgT_ZP.js} +1 -1
- package/public/dist/assets/{Agent-BBrJGd5m.js → Agent-CIUGaUVn.js} +1 -1
- package/public/dist/assets/{Browser-dBaU9G9D.js → Browser-C4TCAhKR.js} +1 -1
- package/public/dist/assets/BrowserPanel-BN01Lfc5.css +1 -0
- package/public/dist/assets/BrowserPanel-weeCb2qu.js +1 -0
- package/public/dist/assets/ChannelsDiscord-Bwt2-Jva.js +1 -0
- package/public/dist/assets/ChannelsTelegram-xjA3-Mr8.js +1 -0
- package/public/dist/assets/{DashboardMeta-LVAL7TtE.js → DashboardMeta-CBckkL_V.js} +1 -1
- package/public/dist/assets/DiffPanel-BHvC0wCX.css +1 -0
- package/public/dist/assets/DiffPanel-DZ4-3QSH.js +3 -0
- package/public/dist/assets/{Display-CFm1UmEo.js → Display-BPbCVOoi.js} +1 -1
- package/public/dist/assets/DocPanel-C1pGgE-S.js +1 -0
- package/public/dist/assets/DocPanel-CL1scIfq.css +1 -0
- package/public/dist/assets/Employees-BL9MAzzx.js +1 -0
- package/public/dist/assets/FolderPanel-DSkanaGN.js +1 -0
- package/public/dist/assets/FolderPanel-XCno5AI9.css +1 -0
- package/public/dist/assets/Heartbeat-D64JCg4t.js +1 -0
- package/public/dist/assets/MarkdownRenderer-CS6jvLpf.js +15 -0
- package/public/dist/assets/{Mcp-9NU4YkKO.js → Mcp-wYwJA_61.js} +1 -1
- package/public/dist/assets/{Memory-uZT30fww.js → Memory-BgN8djV4.js} +1 -1
- package/public/dist/assets/MilkdownWysiwygEditor-Btwmr5Re.js +160 -0
- package/public/dist/assets/{ModelProvider-CsIOyoZP.js → ModelProvider-DHQ1Zvw0.js} +1 -1
- package/public/dist/assets/{Network-D7hGwnyG.js → Network-B-WvB6R5.js} +1 -1
- package/public/dist/assets/NotesGraphWorkspace-CK8kKY8A.js +1 -0
- package/public/dist/assets/{Permissions-DwdU3wi8.js → Permissions-BvtVczZS.js} +1 -1
- package/public/dist/assets/Permissions-QxvByCop.js +1 -0
- package/public/dist/assets/{Profile-BNTKD_Ex.js → Profile-D_6kFj73.js} +1 -1
- package/public/dist/assets/{Prompts-D_mCfYiu.js → Prompts--4CM3enz.js} +1 -1
- package/public/dist/assets/{SpeechKeys-BTXCM-Fs.js → SpeechKeys-Cx4_SXTM.js} +1 -1
- package/public/dist/assets/TerminalPanel-AKKXu8dJ.js +36 -0
- package/public/dist/assets/TerminalPanel-DdE69MNo.css +1 -0
- package/public/dist/assets/TransportStatusChips-BwR7Sq4s.js +1 -0
- package/public/dist/assets/agent-meta-BhEbjy4P.js +1 -0
- package/public/dist/assets/api-30EcU_Lb.js +1 -0
- package/public/dist/assets/app-DLDdZ41k.js +48 -0
- package/public/dist/assets/app-RpnKs-sT.css +1 -0
- package/public/dist/assets/architecture-7EHR7CIX-GHIeXYpv.js +1 -0
- package/public/dist/assets/{architectureDiagram-3BPJPVTR-CJCPEsxo.js → architectureDiagram-3BPJPVTR-ByOUFrxp.js} +1 -1
- package/public/dist/assets/{blockDiagram-GPEHLZMM-CO1bkn0E.js → blockDiagram-GPEHLZMM-BcefwseF.js} +2 -2
- package/public/dist/assets/{c4Diagram-AAUBKEIU-D2R36Xu6.js → c4Diagram-AAUBKEIU-C9FinBRA.js} +1 -1
- package/public/dist/assets/channel-5QxFRU5l.js +1 -0
- package/public/dist/assets/{chunk-2J33WTMH-xiPJWKcl.js → chunk-2J33WTMH-N9wxleFR.js} +1 -1
- package/public/dist/assets/{chunk-3OPIFGDE-DixnEkZw.js → chunk-3OPIFGDE-B1qdy3mP.js} +1 -1
- package/public/dist/assets/{chunk-4BX2VUAB-6lTRwyT0.js → chunk-4BX2VUAB-Dbg5PjGD.js} +1 -1
- package/public/dist/assets/{chunk-4EGX6M5U-DXtAEgX6.js → chunk-4EGX6M5U-BIFnMXqg.js} +1 -1
- package/public/dist/assets/chunk-55IACEB6-C9gRJHcb.js +1 -0
- package/public/dist/assets/{chunk-5DO6E6H7-DDcMHB95.js → chunk-5DO6E6H7-Dc9k92pO.js} +1 -1
- package/public/dist/assets/{chunk-5ZQYHXKU-Bli4k6GI.js → chunk-5ZQYHXKU-BOYB4Qmp.js} +2 -2
- package/public/dist/assets/{chunk-727SXJPM-sp4W8bhf.js → chunk-727SXJPM-2OgKkBMF.js} +1 -1
- package/public/dist/assets/{chunk-AQP2D5EJ-Co6ucdGq.js → chunk-AQP2D5EJ-CIXopxD6.js} +1 -1
- package/public/dist/assets/{chunk-BR22UD5L-CVuYkAd1.js → chunk-BR22UD5L-DlNCrhSA.js} +1 -1
- package/public/dist/assets/{chunk-BSJP7CBP-B47GpxcW.js → chunk-BSJP7CBP-CpgaSqhR.js} +1 -1
- package/public/dist/assets/{chunk-CSCIHK7Q-CAE1p4Em.js → chunk-CSCIHK7Q-R-Y9ue5N.js} +1 -1
- package/public/dist/assets/{chunk-FHYWG6QK-CxZt-yZZ.js → chunk-FHYWG6QK-DVrRFYRd.js} +1 -1
- package/public/dist/assets/{chunk-FMBD7UC4-CwqBlx0l.js → chunk-FMBD7UC4-jn5b6_kv.js} +1 -1
- package/public/dist/assets/{chunk-KSCS5N6A-Beq1s5eO.js → chunk-KSCS5N6A-DayXQgYz.js} +2 -2
- package/public/dist/assets/{chunk-L5ZTLDWV-DfUlBdXN.js → chunk-L5ZTLDWV-CtcQ12uz.js} +1 -1
- package/public/dist/assets/{chunk-LZXEDZCA-B_yP4UKw.js → chunk-LZXEDZCA-BuEa86aU.js} +1 -1
- package/public/dist/assets/{chunk-MPE355IW-Bp4qAOUf.js → chunk-MPE355IW-Be8tT5FQ.js} +1 -1
- package/public/dist/assets/{chunk-MZUSXYTE-DAU-v-0c.js → chunk-MZUSXYTE-bFnwST0F.js} +1 -1
- package/public/dist/assets/{chunk-N66VUXT2-CpPz1L5u.js → chunk-N66VUXT2-BSpsJq6A.js} +1 -1
- package/public/dist/assets/{chunk-ND2GUHAM-3qbNb7I9.js → chunk-ND2GUHAM-CnEcVn6T.js} +1 -1
- package/public/dist/assets/{chunk-NZK2D7GU-CTqFQ8K5.js → chunk-NZK2D7GU-asW9Yrwq.js} +1 -1
- package/public/dist/assets/{chunk-O5CBEL6O-D-jDqsN2.js → chunk-O5CBEL6O-BVoXQ09V.js} +1 -1
- package/public/dist/assets/{chunk-PUPMXCY4-ppZvktf-.js → chunk-PUPMXCY4-BU48euO5.js} +1 -1
- package/public/dist/assets/chunk-QZHKN3VN-CC7ecfZE.js +1 -0
- package/public/dist/assets/{chunk-UIBZB4QT-rJZEVBX0.js → chunk-UIBZB4QT-aXCea_7h.js} +1 -1
- package/public/dist/assets/{chunk-WCWK7LTN-CGvUyB8h.js → chunk-WCWK7LTN-fR0CutHV.js} +1 -1
- package/public/dist/assets/chunk-WU5MYG2G-CDC6hlhk.js +1 -0
- package/public/dist/assets/{chunk-XPW4576I-BaQfzRci.js → chunk-XPW4576I-CFkDqujt.js} +1 -1
- package/public/dist/assets/classDiagram-4FO5ZUOK-Bfu4_8Yk.js +1 -0
- package/public/dist/assets/classDiagram-v2-Q7XG4LA2-_XyS72AY.js +1 -0
- package/public/dist/assets/constants-ahKI_aEG.js +1 -0
- package/public/dist/assets/{cose-bilkent-S5V4N54A-Bt9AAJCx.js → cose-bilkent-S5V4N54A-CZbCTJt4.js} +1 -1
- package/public/dist/assets/{dagre-BM42HDAG-CXEA1wvZ.js → dagre-BM42HDAG-BB0IJKjW.js} +1 -1
- package/public/dist/assets/{dagre-Ve-IAfyz.js → dagre-D4AB5Dyv.js} +1 -1
- package/public/dist/assets/desktop-bridge-CrqidwSb.js +1 -0
- package/public/dist/assets/{diagram-2AECGRRQ-CCB0OKc2.js → diagram-2AECGRRQ-CHUQ78BD.js} +1 -1
- package/public/dist/assets/{diagram-5GNKFQAL-Cki9HABy.js → diagram-5GNKFQAL-onxHMGMn.js} +1 -1
- package/public/dist/assets/{diagram-KO2AKTUF-DNBDjE2o.js → diagram-KO2AKTUF-BlgkTTwi.js} +1 -1
- package/public/dist/assets/{diagram-LMA3HP47-Cy23RDPa.js → diagram-LMA3HP47-BVWYubzU.js} +1 -1
- package/public/dist/assets/{diagram-OG6HWLK6-CT_YF8cA.js → diagram-OG6HWLK6-BM7IcJ6z.js} +1 -1
- package/public/dist/assets/dist-2S2B_MeU.js +1 -0
- package/public/dist/assets/dist-B2d2NOJ3.js +1 -0
- package/public/dist/assets/dist-BSF2Z7j1.js +6 -0
- package/public/dist/assets/dist-BZh7LRrp.js +1 -0
- package/public/dist/assets/dist-BaazPVzw.js +1 -0
- package/public/dist/assets/dist-Bn4kv_Se.js +1 -0
- package/public/dist/assets/dist-CB1fgeSN.js +1 -0
- package/public/dist/assets/dist-CG0XIeov.js +1 -0
- package/public/dist/assets/dist-CG65f_qI.js +1 -0
- package/public/dist/assets/dist-CJwXuDux.js +39 -0
- package/public/dist/assets/dist-CU9b0vPA.js +1 -0
- package/public/dist/assets/dist-CkWMWu5F.js +23 -0
- package/public/dist/assets/dist-CsK9fYYW.js +1 -0
- package/public/dist/assets/dist-CuNACpdD.js +1 -0
- package/public/dist/assets/dist-CzDHA1yv.js +1 -0
- package/public/dist/assets/dist-D0mdXpwq.js +1 -0
- package/public/dist/assets/{dist-3R3GxjCf.js → dist-DCefgfkj.js} +5 -5
- package/public/dist/assets/dist-DJ5byDHS2.js +1 -0
- package/public/dist/assets/dist-DLSl_Nbu.js +1 -0
- package/public/dist/assets/dist-DLa7--1u.js +1 -0
- package/public/dist/assets/dist-DZ1vWpde.js +1 -0
- package/public/dist/assets/dist-D_ULP6ER.js +1 -0
- package/public/dist/assets/dist-Dgo6P711.js +1 -0
- package/public/dist/assets/dist-DtkJvqbT.js +9 -0
- package/public/dist/assets/dist-DwzmyMDC.js +1 -0
- package/public/dist/assets/dist-H3yurMdo.js +11 -0
- package/public/dist/assets/dist-HtoUbUb4.js +1 -0
- package/public/dist/assets/dist-P76w4V8t.js +2 -0
- package/public/dist/assets/{dist-DuuoJfRB.js → dist-SWkyI5gN.js} +2 -2
- package/public/dist/assets/dist-w85EQGWO.js +1 -0
- package/public/dist/assets/{dockerfile-DAfh5qoE.js → dockerfile-O79f3xVO.js} +1 -1
- package/public/dist/assets/employees-DZSPGlaH.js +33 -0
- package/public/dist/assets/{erDiagram-TEJ5UH35-Cq7oHdXg.js → erDiagram-TEJ5UH35-Dr-3ziJG.js} +1 -1
- package/public/dist/assets/eventmodeling-FCH6USID-Du0rADZ8.js +1 -0
- package/public/dist/assets/{factor-BpoYJieo.js → factor-2MJ0aFHQ.js} +1 -1
- package/public/dist/assets/{flowDiagram-I6XJVG4X-D8CdEnfM.js → flowDiagram-I6XJVG4X-COxvv8bU.js} +1 -1
- package/public/dist/assets/{ganttDiagram-6RSMTGT7-B1rzKXi_.js → ganttDiagram-6RSMTGT7-BztWk1Ow.js} +2 -2
- package/public/dist/assets/gitGraph-WXDBUCRP-Cw5oPUI1.js +1 -0
- package/public/dist/assets/{gitGraphDiagram-PVQCEYII-CqLh-joi.js → gitGraphDiagram-PVQCEYII-Dw-pLiB8.js} +1 -1
- package/public/dist/assets/{graphlib-W5bESv3F.js → graphlib-DCNdUnXF.js} +1 -1
- package/public/dist/assets/info-J43DQDTF-bda--3fv.js +1 -0
- package/public/dist/assets/{infoDiagram-5YYISTIA-C1zVxumj.js → infoDiagram-5YYISTIA-BSM5RFYV.js} +1 -1
- package/public/dist/assets/{ishikawaDiagram-YF4QCWOH-x-9J6xPM.js → ishikawaDiagram-YF4QCWOH-DGqEaMN9.js} +1 -1
- package/public/dist/assets/javascript-BIzwdG_f.js +1 -0
- package/public/dist/assets/{journeyDiagram-JHISSGLW-BDYzHrtn.js → journeyDiagram-JHISSGLW-CBGlHr__.js} +1 -1
- package/public/dist/assets/{kanban-definition-UN3LZRKU-BJ-06i6Z.js → kanban-definition-UN3LZRKU-CtvwD90I.js} +1 -1
- package/public/dist/assets/manager-CFxbpg7j.css +1 -0
- package/public/dist/assets/manager-wAHlX68t.js +12 -0
- package/public/dist/assets/memory-B4RpXXJ7.js +20 -0
- package/public/dist/assets/memory-C9EVOb_D.js +1 -0
- package/public/dist/assets/mermaid-loader-BPeAxEES.js +1 -0
- package/public/dist/assets/{mermaid-parser.core-C62NUJRb.js → mermaid-parser.core-BB62R3s0.js} +1 -1
- package/public/dist/assets/mermaid.core-86z3EI0c.js +1 -0
- package/public/dist/assets/{mermaid.core-D8VnfThU.js → mermaid.core-Eh0d41ge.js} +2 -2
- package/public/dist/assets/{mindmap-definition-RKZ34NQL-D8NDuIhn.js → mindmap-definition-RKZ34NQL-Cg1Nirgc.js} +1 -1
- package/public/dist/assets/notes-graph-settings-CznA-Qu0.js +1 -0
- package/public/dist/assets/{nsis-Ch4QINLN.js → nsis-CVYtDIFk.js} +1 -1
- package/public/dist/assets/packet-YPE3B663-CdmMldz9.js +1 -0
- package/public/dist/assets/pie-LRSECV5Y-Bh7evnjl.js +1 -0
- package/public/dist/assets/{pieDiagram-4H26LBE5-CpBePil_.js → pieDiagram-4H26LBE5--PRag7Te.js} +1 -1
- package/public/dist/assets/{provider-icons-ClVd2suJ.js → provider-icons-XEfJPGTe.js} +9 -5
- package/public/dist/assets/{pug-CXYqmmpP.js → pug-DplZiQL-.js} +1 -1
- package/public/dist/assets/{quadrantDiagram-W4KKPZXB-C1WWpn88.js → quadrantDiagram-W4KKPZXB-BTql-Bsn.js} +1 -1
- package/public/dist/assets/radar-GUYGQ44K-Bi6iY53d.js +1 -0
- package/public/dist/assets/render-DnylWKO1.js +28 -0
- package/public/dist/assets/{requirementDiagram-4Y6WPE33-C_D5VbNk.js → requirementDiagram-4Y6WPE33-43_zBMme.js} +1 -1
- package/public/dist/assets/{sankeyDiagram-5OEKKPKP--RH3Es8R.js → sankeyDiagram-5OEKKPKP-Bhvu7fVp.js} +1 -1
- package/public/dist/assets/{sequenceDiagram-3UESZ5HK-CVI4AjhN.js → sequenceDiagram-3UESZ5HK-DiT6UbHL.js} +1 -1
- package/public/dist/assets/settings-DIG_i79X.js +1 -0
- package/public/dist/assets/settings-VCXKhhhz.js +66 -0
- package/public/dist/assets/sidebar-Bi_ktFVw.js +18 -0
- package/public/dist/assets/{skills-DbRVI-zf.js → skills-CW7NEhew.js} +2 -2
- package/public/dist/assets/skills-RjRqvykb.js +1 -0
- package/public/dist/assets/slash-commands-CAydTUgf.js +19 -0
- package/public/dist/assets/slash-commands-DdXu96Zd.js +1 -0
- package/public/dist/assets/{state-xhhyIPlq.js → state-D04-chBy.js} +1 -1
- package/public/dist/assets/{stateDiagram-AJRCARHV-4bx1rPZ3.js → stateDiagram-AJRCARHV-EdHNB699.js} +1 -1
- package/public/dist/assets/stateDiagram-v2-BHNVJYJU-CwXjV0-w.js +1 -0
- package/public/dist/assets/{timeline-definition-PNZ67QCA-DeQoGRE2.js → timeline-definition-PNZ67QCA-DLCG8ciJ.js} +1 -1
- package/public/dist/assets/{trace-drawer-CIVBXyRH.js → trace-drawer-G-KP3IbQ.js} +1 -1
- package/public/dist/assets/treeView-BLDUP644-gIRuNooA.js +1 -0
- package/public/dist/assets/treemap-LRROVOQU-DGFQnuQ3.js +1 -0
- package/public/dist/assets/ui-CIQjTLzc.js +1 -0
- package/public/dist/assets/ui-CkHB9Jmo.js +140 -0
- package/public/dist/assets/vendor-utils-BydMkEGM.js +1 -0
- package/public/dist/assets/{vennDiagram-CIIHVFJN-CejyJK0L.js → vennDiagram-CIIHVFJN-C93tL0id.js} +1 -1
- package/public/dist/assets/wardley-L42UT6IY-D7Pv8rzC.js +1 -0
- package/public/dist/assets/{wardleyDiagram-YWT4CUSO-DqXV0sa1.js → wardleyDiagram-YWT4CUSO-BQQr2bW2.js} +1 -1
- package/public/dist/assets/wiki-link-resolver-CQwLeKpN.js +22 -0
- package/public/dist/assets/wiki-link-suggestions-DnVtu7Jb.js +2 -0
- package/public/dist/assets/{xychartDiagram-2RQKCTM6-CWLoVl2b.js → xychartDiagram-2RQKCTM6-DGZ5VpP9.js} +2 -2
- package/public/dist/index.html +36 -10
- package/public/dist/manager/index.html +2 -2
- package/public/index.html +35 -8
- package/public/js/constants.ts +22 -1
- package/public/js/diagram/iframe-renderer.ts +2 -1
- package/public/js/features/chat-messages.ts +2 -2
- package/public/js/features/chat.ts +144 -17
- package/public/js/features/copy-text.ts +39 -0
- package/public/js/features/employees.ts +5 -5
- package/public/js/features/memory.ts +3 -4
- package/public/js/features/message-actions.ts +3 -2
- package/public/js/features/message-history.ts +2 -2
- package/public/js/features/pending-queue.ts +3 -2
- package/public/js/features/preview-shortcut-bridge.ts +25 -10
- package/public/js/features/settings-channel.ts +3 -0
- package/public/js/features/settings-cli-status.ts +254 -45
- package/public/js/features/settings-core.ts +8 -0
- package/public/js/features/settings.ts +1 -1
- package/public/js/features/slash-commands.ts +34 -2
- package/public/js/features/theme.ts +34 -6
- package/public/js/features/transport-status-row.ts +91 -0
- package/public/js/features/workflow-event-adapter.ts +77 -0
- package/public/js/main.ts +21 -4
- package/public/js/preview-parent-origin.ts +38 -0
- package/public/js/provider-icons.ts +6 -1
- package/public/js/render/code-copy.ts +16 -18
- package/public/js/render/file-links.ts +127 -30
- package/public/js/render/notes-vault-path.ts +64 -0
- package/public/js/render/post-render.ts +2 -2
- package/public/js/render/svg-actions.ts +4 -1
- package/public/js/render.ts +1 -0
- package/public/js/state.ts +19 -1
- package/public/js/ws.ts +121 -8
- package/public/locales/en.json +40 -0
- package/public/locales/ja.json +31 -0
- package/public/locales/ko.json +40 -0
- package/public/locales/zh.json +31 -0
- package/public/manager/src/App.tsx +65 -64
- package/public/manager/src/AppChrome.tsx +14 -5
- package/public/manager/src/InstancePreview.tsx +113 -2
- package/public/manager/src/SidebarRailRouter.tsx +67 -4
- package/public/manager/src/api.ts +46 -0
- package/public/manager/src/browser-panel/BrowserPanel.tsx +445 -0
- package/public/manager/src/browser-panel/browser-panel.css +241 -0
- package/public/manager/src/browser-panel/browser-url.ts +55 -0
- package/public/manager/src/clipboard/copy-text.ts +27 -0
- package/public/manager/src/components/CommandBar.tsx +2 -0
- package/public/manager/src/components/CommandCenter.tsx +3 -1
- package/public/manager/src/components/DesktopPanelControls.tsx +79 -0
- package/public/manager/src/components/SidebarRail.tsx +1 -1
- package/public/manager/src/components/WorkspaceLayout.tsx +71 -1
- package/public/manager/src/dashboard-settings/DashboardDeveloperSettingsSection.tsx +123 -0
- package/public/manager/src/dashboard-settings/DashboardSettingsSidebar.tsx +6 -2
- package/public/manager/src/dashboard-settings/DashboardSettingsWorkspace.tsx +4 -1
- package/public/manager/src/dashboard-settings/dashboard-settings-ui.ts +8 -0
- package/public/manager/src/desktop-link.tsx +6 -1
- package/public/manager/src/diff-panel/DiffPanel.tsx +219 -0
- package/public/manager/src/diff-panel/diff-client.ts +46 -0
- package/public/manager/src/diff-panel/diff-panel.css +163 -0
- package/public/manager/src/diff-panel/diff-root-candidates.ts +54 -0
- package/public/manager/src/doc-panel/DocPanel.tsx +113 -0
- package/public/manager/src/doc-panel/doc-panel.css +57 -0
- package/public/manager/src/folder-panel/FolderPanel.tsx +144 -0
- package/public/manager/src/folder-panel/folder-panel.css +82 -0
- package/public/manager/src/folder-panel/folder-sources.ts +93 -0
- package/public/manager/src/help/helpContent.tsx +3 -0
- package/public/manager/src/hooks/useDashboardView.ts +22 -1
- package/public/manager/src/main.tsx +2 -0
- package/public/manager/src/manager-components.css +12 -0
- package/public/manager/src/manager-dashboard-reminders-priority.css +11 -0
- package/public/manager/src/manager-dashboard-reminders.css +29 -0
- package/public/manager/src/manager-layout.css +68 -22
- package/public/manager/src/manager-notes.css +181 -0
- package/public/manager/src/manager-p0-1-1.css +118 -1
- package/public/manager/src/manager-polish.css +15 -12
- package/public/manager/src/manager-shortcuts.ts +17 -0
- package/public/manager/src/manager-tokens.css +25 -0
- package/public/manager/src/notes/MarkdownEditor.tsx +26 -3
- package/public/manager/src/notes/NotesFileTree.tsx +24 -2
- package/public/manager/src/notes/NotesGraphView.tsx +1 -145
- package/public/manager/src/notes/NotesSidebar.tsx +4 -0
- package/public/manager/src/notes/NotesThemeLoader.tsx +104 -0
- package/public/manager/src/notes/NotesWorkspace.tsx +33 -5
- package/public/manager/src/notes/graph/NotesGraphCanvas.tsx +195 -0
- package/public/manager/src/notes/graph/NotesGraphControlsPanel.tsx +172 -0
- package/public/manager/src/notes/graph/NotesGraphWorkspace.tsx +116 -0
- package/public/manager/src/notes/graph/notes-graph-filter.ts +192 -0
- package/public/manager/src/notes/graph/notes-graph-force.ts +36 -0
- package/public/manager/src/notes/graph/notes-graph-settings.ts +121 -0
- package/public/manager/src/notes/notes-graph.css +382 -0
- package/public/manager/src/notes/rendering/CodeBlock.tsx +5 -4
- package/public/manager/src/notes/rendering/MarkdownRenderer.tsx +3 -0
- package/public/manager/src/notes/useNoteSync.ts +67 -0
- package/public/manager/src/notes/wysiwyg/MilkdownWysiwygEditor.tsx +4 -0
- package/public/manager/src/notes/wysiwyg/milkdown-code-block-view.ts +5 -1
- package/public/manager/src/notes/wysiwyg/milkdown-slash-menu.ts +192 -0
- package/public/manager/src/notes/wysiwyg/milkdown-table-menu.ts +120 -0
- package/public/manager/src/panels/BottomPanel.tsx +61 -0
- package/public/manager/src/panels/BottomPanelTabBar.tsx +71 -0
- package/public/manager/src/panels/PanelLayoutProvider.tsx +288 -0
- package/public/manager/src/panels/PanelResizer.tsx +71 -0
- package/public/manager/src/panels/RightSidebar.tsx +192 -0
- package/public/manager/src/panels/desktop-bridge.ts +112 -0
- package/public/manager/src/panels/panel-capabilities.ts +44 -0
- package/public/manager/src/panels/panel-layout-registry-state.ts +38 -0
- package/public/manager/src/panels/panel-shortcut-bus.ts +15 -0
- package/public/manager/src/panels/panels.css +274 -0
- package/public/manager/src/panels/types.ts +16 -0
- package/public/manager/src/preview.ts +11 -1
- package/public/manager/src/settings/pages/ChannelsDiscord.tsx +3 -1
- package/public/manager/src/settings/pages/ChannelsTelegram.tsx +3 -1
- package/public/manager/src/settings/pages/components/ActiveChannelToggle.tsx +2 -2
- package/public/manager/src/settings/pages/components/TransportStatusChips.tsx +108 -0
- package/public/manager/src/settings/pages/components/agent/agent-meta.ts +22 -3
- package/public/manager/src/settings/pages/components/employees-helpers.ts +1 -0
- package/public/manager/src/settings/pages/components/heartbeat-helpers.ts +1 -0
- package/public/manager/src/settings-controls.css +57 -0
- package/public/manager/src/settings-embedding.css +3 -3
- package/public/manager/src/terminal/TerminalPanel.tsx +362 -0
- package/public/manager/src/terminal/terminal-bridge.ts +12 -0
- package/public/manager/src/terminal/terminal.css +175 -0
- package/public/manager/src/types.ts +66 -2
- package/public/manager/src/usePreviewShortcutMessages.ts +12 -3
- package/scripts/fresh-install-smoke.ts +1 -2
- package/scripts/install-risk-gate.mjs +0 -18
- package/scripts/install-wsl.sh +0 -46
- package/scripts/install.sh +0 -28
- package/scripts/release-gates.mjs +52 -0
- package/scripts/release.sh +9 -1
- package/scripts/require-release-evidence.mjs +0 -2
- package/public/dist/assets/ChannelsDiscord-CbmWms9-.js +0 -1
- package/public/dist/assets/ChannelsTelegram-BD4Eyztg.js +0 -1
- package/public/dist/assets/Employees-DcMChleU.js +0 -1
- package/public/dist/assets/HealthBadge-CfLTPTPW.js +0 -1
- package/public/dist/assets/Heartbeat-BoobN35p.js +0 -1
- package/public/dist/assets/MilkdownWysiwygEditor-Otw40DDF.js +0 -160
- package/public/dist/assets/NotesGraphView-CwdEnL7d.js +0 -1
- package/public/dist/assets/Permissions-CcIBptg3.js +0 -1
- package/public/dist/assets/agent-meta-BC7mLqo6.js +0 -1
- package/public/dist/assets/app-C7MAcAMu.js +0 -39
- package/public/dist/assets/app-CkFBKUf8.css +0 -1
- package/public/dist/assets/architecture-7EHR7CIX-wVaUQezY.js +0 -1
- package/public/dist/assets/channel-CCQujL1n.js +0 -1
- package/public/dist/assets/chunk-55IACEB6-DhWWzzdj.js +0 -1
- package/public/dist/assets/chunk-QZHKN3VN-CBAtPPT7.js +0 -1
- package/public/dist/assets/chunk-WU5MYG2G-DlBJtD7-.js +0 -1
- package/public/dist/assets/classDiagram-4FO5ZUOK-DmPJvqRM.js +0 -1
- package/public/dist/assets/classDiagram-v2-Q7XG4LA2-ECmTUt7U.js +0 -1
- package/public/dist/assets/constants-BXWl7LTi.js +0 -1
- package/public/dist/assets/dist-BLd7xdyq.js +0 -1
- package/public/dist/assets/dist-BaRrwDy3.js +0 -1
- package/public/dist/assets/dist-Bbsp4OF7.js +0 -1
- package/public/dist/assets/dist-BkBGlG70.js +0 -1
- package/public/dist/assets/dist-BkJ_1mj9.js +0 -1
- package/public/dist/assets/dist-BxCRVW5D.js +0 -1
- package/public/dist/assets/dist-C-v7Rm67.js +0 -23
- package/public/dist/assets/dist-CNgDEAy8.js +0 -1
- package/public/dist/assets/dist-CO_W5rr2.js +0 -1
- package/public/dist/assets/dist-ChAUfTbO.js +0 -1
- package/public/dist/assets/dist-D-k-lzQT.js +0 -1
- package/public/dist/assets/dist-D1hPukqY.js +0 -1
- package/public/dist/assets/dist-D5Qx-jQQ.js +0 -1
- package/public/dist/assets/dist-D7VNzYBv.js +0 -6
- package/public/dist/assets/dist-DAxnodoa.js +0 -1
- package/public/dist/assets/dist-DHSyODkR.js +0 -1
- package/public/dist/assets/dist-DaYTPjbb2.js +0 -1
- package/public/dist/assets/dist-DlWi9tVO.js +0 -1
- package/public/dist/assets/dist-Dv36UUXz.js +0 -1
- package/public/dist/assets/dist-F4CVhitP.js +0 -9
- package/public/dist/assets/dist-LHbJYy3N.js +0 -1
- package/public/dist/assets/dist-VIlx7JdU.js +0 -1
- package/public/dist/assets/dist-cgDt2PmY.js +0 -11
- package/public/dist/assets/dist-eW2LjRIK.js +0 -1
- package/public/dist/assets/dist-vGn3_sWA.js +0 -1
- package/public/dist/assets/employees-BmxY8Mw3.js +0 -33
- package/public/dist/assets/eventmodeling-FCH6USID-Cq0nylxO.js +0 -1
- package/public/dist/assets/gitGraph-WXDBUCRP-DDq6-3D3.js +0 -1
- package/public/dist/assets/info-J43DQDTF-OUnqwpUV.js +0 -1
- package/public/dist/assets/javascript-CZjRNq5R.js +0 -1
- package/public/dist/assets/manager-B2NWzG7j.css +0 -1
- package/public/dist/assets/manager-q68thm66.js +0 -25
- package/public/dist/assets/memory-BqqibBIE.js +0 -1
- package/public/dist/assets/memory-CRL72HB-.js +0 -20
- package/public/dist/assets/mermaid-loader-Dqb4ZUz6.js +0 -1
- package/public/dist/assets/mermaid.core-DYHvk6Pd.js +0 -1
- package/public/dist/assets/packet-YPE3B663-Bb9hBQ06.js +0 -1
- package/public/dist/assets/pie-LRSECV5Y-CNRQnRNZ.js +0 -1
- package/public/dist/assets/radar-GUYGQ44K-BxngU2v0.js +0 -1
- package/public/dist/assets/render-o_YEiCEO.js +0 -28
- package/public/dist/assets/settings-B0RlyAkI.js +0 -1
- package/public/dist/assets/settings-CCXRL5Ar.js +0 -46
- package/public/dist/assets/sidebar-DRJffqO1.js +0 -14
- package/public/dist/assets/skills-CFdzXbtK.js +0 -1
- package/public/dist/assets/slash-commands-BUM6u-Ex.js +0 -1
- package/public/dist/assets/slash-commands-C2YBMaQV.js +0 -14
- package/public/dist/assets/stateDiagram-v2-BHNVJYJU-CrfGPzHb.js +0 -1
- package/public/dist/assets/treeView-BLDUP644-cXRzPGzz.js +0 -1
- package/public/dist/assets/treemap-LRROVOQU-BsZE5HPE.js +0 -1
- package/public/dist/assets/ui-C3ArwMhv.js +0 -140
- package/public/dist/assets/ui-CboUuc_E.js +0 -1
- package/public/dist/assets/vendor-utils-rVejrfMR.js +0 -1
- package/public/dist/assets/wardley-L42UT6IY-D_qm0cZD.js +0 -1
- package/public/dist/assets/wiki-link-suggestions-e5BzJAZH.js +0 -23
- /package/public/dist/assets/{DashboardEmbeddingSection-6F8zSSja.js → DashboardEmbeddingSection-ChF63KXJ.js} +0 -0
- /package/public/dist/assets/{InlineWarn-C7ISyzDI.js → InlineWarn-CY6dBBMq.js} +0 -0
- /package/public/dist/assets/{apl-CieDeb7B.js → apl-CQGZdmVU.js} +0 -0
- /package/public/dist/assets/{asciiarmor-BRTyulZY.js → asciiarmor-6rdc1JOx.js} +0 -0
- /package/public/dist/assets/{asn1-DoNAtQ5o.js → asn1-D8iCH-On.js} +0 -0
- /package/public/dist/assets/{asterisk-CR7oKPxi.js → asterisk-ChqZLgq_.js} +0 -0
- /package/public/dist/assets/{brainfuck-abzPcrOz.js → brainfuck-CDmGO_27.js} +0 -0
- /package/public/dist/assets/{chunk-AGHRB4JF-CYdXVA2-.js → chunk-AGHRB4JF-BgIXD8KY.js} +0 -0
- /package/public/dist/assets/{chunk-NNHCCRGN-BaiX9a5F.js → chunk-NNHCCRGN-BPmsUfnh.js} +0 -0
- /package/public/dist/assets/{clike-B71Zq38G.js → clike-CSGpadKW.js} +0 -0
- /package/public/dist/assets/{clojure-Zm0UzHPq.js → clojure-CST35Ic-.js} +0 -0
- /package/public/dist/assets/{cmake-D3UNdg6L.js → cmake-BVvLLL-M.js} +0 -0
- /package/public/dist/assets/{cobol-4fYvwQR0.js → cobol-Ck6DkJOz.js} +0 -0
- /package/public/dist/assets/{coffeescript-Ct6bZdRU.js → coffeescript-D_Wxovbg.js} +0 -0
- /package/public/dist/assets/{commonlisp-CrgXVPcd.js → commonlisp-B8ANOF1p.js} +0 -0
- /package/public/dist/assets/{crystal-bGOl67VM.js → crystal-Daoo63FI.js} +0 -0
- /package/public/dist/assets/{css-B_EV3Xq2.js → css-BLiiJuyL.js} +0 -0
- /package/public/dist/assets/{cypher-DXDlHTYf.js → cypher-BMqftmWo.js} +0 -0
- /package/public/dist/assets/{cytoscape.esm-BK7ao2Ti.js → cytoscape.esm-Dgu56jtY.js} +0 -0
- /package/public/dist/assets/{d-RL5ynsiz.js → d-DOGkwbDi.js} +0 -0
- /package/public/dist/assets/{diff-B5McBGjz.js → diff-VsLDmRbo.js} +0 -0
- /package/public/dist/assets/{dist-DrIWh2fi.js → dist-DJlNCT5R.js} +0 -0
- /package/public/dist/assets/{dtd-l3sK4p_C.js → dtd-CxrLPib8.js} +0 -0
- /package/public/dist/assets/{dylan-WjJGY-rW.js → dylan-QB82VE9N.js} +0 -0
- /package/public/dist/assets/{ebnf-BGY79HOS.js → ebnf-B6cp6Red.js} +0 -0
- /package/public/dist/assets/{ecl-BKh7OE1d.js → ecl-zYbBq-k7.js} +0 -0
- /package/public/dist/assets/{eiffel-Bzvlg3oK.js → eiffel-DnQZC9e4.js} +0 -0
- /package/public/dist/assets/{elm-5_BqNmKu.js → elm-Cx44SA5e.js} +0 -0
- /package/public/dist/assets/{erlang-BdVwz8I8.js → erlang-CEHBsR_g.js} +0 -0
- /package/public/dist/assets/{fcl-B9cnfODD.js → fcl-D0vOEWq5.js} +0 -0
- /package/public/dist/assets/{fields-BwD_NGxe.js → fields-C-y_8RgA.js} +0 -0
- /package/public/dist/assets/{forth-wZbbnGzb.js → forth-KL0mdDBU.js} +0 -0
- /package/public/dist/assets/{fortran-BAJZrRfU.js → fortran-Dq4mvV2Z.js} +0 -0
- /package/public/dist/assets/{gas-D60ZhBat.js → gas-C1IQIiP2.js} +0 -0
- /package/public/dist/assets/{gherkin-B8tKjAAi.js → gherkin-DJavHCGq.js} +0 -0
- /package/public/dist/assets/{groovy-BAG9eJUD.js → groovy-DYXu3zX-.js} +0 -0
- /package/public/dist/assets/{haskell-Cj4TmWbg.js → haskell-CEbLR9qt.js} +0 -0
- /package/public/dist/assets/{haxe-8chnvz-o.js → haxe-BpJF7A4A.js} +0 -0
- /package/public/dist/assets/{http-DDYeO71z.js → http-DWdENtd1.js} +0 -0
- /package/public/dist/assets/{idl-D1hY-Gp_.js → idl-CE1kS3NQ.js} +0 -0
- /package/public/dist/assets/{javascript-Sh0ZUMP2.js → javascript-CJNkmBfh.js} +0 -0
- /package/public/dist/assets/{julia-BibioBF2.js → julia-BJgPYrDa.js} +0 -0
- /package/public/dist/assets/{livescript-CSZrB6F4.js → livescript-DsrJVqPX.js} +0 -0
- /package/public/dist/assets/{lua-BvTlo5w3.js → lua-C7UuQSXZ.js} +0 -0
- /package/public/dist/assets/{mathematica-Bexv8BWZ.js → mathematica-DUerNKxF.js} +0 -0
- /package/public/dist/assets/{mbox-BAhbA8z2.js → mbox-l0MV8RAb.js} +0 -0
- /package/public/dist/assets/{mirc-BzT5Kh4S.js → mirc-Bs-bacTk.js} +0 -0
- /package/public/dist/assets/{mllike-DeoJnUZQ.js → mllike-DDa-ra-x.js} +0 -0
- /package/public/dist/assets/{modelica-FD_-Fxlc.js → modelica-DorVekoh.js} +0 -0
- /package/public/dist/assets/{mscgen-C-OyhbwB.js → mscgen-Bu9Rmf5j.js} +0 -0
- /package/public/dist/assets/{mumps-BxkCDTK7.js → mumps-BERv0OoY.js} +0 -0
- /package/public/dist/assets/{nginx-2JaV__gC.js → nginx-Bsa-KRWy.js} +0 -0
- /package/public/dist/assets/{ntriples--rhhCzqb.js → ntriples-CQMTRhrZ.js} +0 -0
- /package/public/dist/assets/{octave-rS4nMzRe.js → octave-Bl83K6Ag.js} +0 -0
- /package/public/dist/assets/{oz-I4fMb_NC.js → oz-CCTboWOh.js} +0 -0
- /package/public/dist/assets/{page-shell-uNOxwdbr.js → page-shell-k5-hYhKb.js} +0 -0
- /package/public/dist/assets/{pascal-BEghJs8t.js → pascal-D-i7gVLf.js} +0 -0
- /package/public/dist/assets/{path-utils-h2GAj3hH.js → path-utils-ztBHV7MX.js} +0 -0
- /package/public/dist/assets/{perl-BRO9ZFo9.js → perl-BiLLXF9c.js} +0 -0
- /package/public/dist/assets/{pig-L4Ii6KI0.js → pig-D_F2azNe.js} +0 -0
- /package/public/dist/assets/{powershell-BBeqUCRp.js → powershell-AJ59gf0u.js} +0 -0
- /package/public/dist/assets/{properties-Boi0jF2J.js → properties-CPYgUZZu.js} +0 -0
- /package/public/dist/assets/{protobuf-fB2aGypX.js → protobuf-BTkGCn64.js} +0 -0
- /package/public/dist/assets/{puppet-BRmsErtO.js → puppet-CQcFSvge.js} +0 -0
- /package/public/dist/assets/{python-Be4P9Dgp.js → python-txj4co98.js} +0 -0
- /package/public/dist/assets/{q-DZGhDLYt.js → q-D48iiS-J.js} +0 -0
- /package/public/dist/assets/{r-B4NERjRM.js → r-KvgSjvcw.js} +0 -0
- /package/public/dist/assets/{rough.esm-C0Gkx4O1.js → rough.esm-DEk5_dnJ.js} +0 -0
- /package/public/dist/assets/{rpm-e-QbHJ1q.js → rpm-BcHYZFkz.js} +0 -0
- /package/public/dist/assets/{ruby-BSVP_v59.js → ruby-C_Hj_59H.js} +0 -0
- /package/public/dist/assets/{sas-DHlU4v4g.js → sas-iqYBvleh.js} +0 -0
- /package/public/dist/assets/{scheme-BGXbz5Hz.js → scheme-BIcb4en6.js} +0 -0
- /package/public/dist/assets/{shell-yonx6xY2.js → shell-CJbQRqgD.js} +0 -0
- /package/public/dist/assets/{sieve-ClPJUZyi.js → sieve-CEVqHONw.js} +0 -0
- /package/public/dist/assets/{simple-mode-CjViblDK.js → simple-mode-CyEi8-qy.js} +0 -0
- /package/public/dist/assets/{smalltalk-CHXubeqS.js → smalltalk-CzJ9RPAW.js} +0 -0
- /package/public/dist/assets/{solr-C6q6YwPz.js → solr-DhrIF5tD.js} +0 -0
- /package/public/dist/assets/{sparql-CcspZvEd.js → sparql-p9uHdCLs.js} +0 -0
- /package/public/dist/assets/{spreadsheet-DH3a4LBS.js → spreadsheet-BEYojJ7u.js} +0 -0
- /package/public/dist/assets/{sql-meoY6gNi.js → sql-CnA4GIza.js} +0 -0
- /package/public/dist/assets/{stex-D2bn6Zsh.js → stex-6IVJg-2X.js} +0 -0
- /package/public/dist/assets/{stylus-DbXGih0S.js → stylus-fqPouKsv.js} +0 -0
- /package/public/dist/assets/{swift-Ch391uOd.js → swift-DHXFQ55a.js} +0 -0
- /package/public/dist/assets/{tcl-CQBgGWDP.js → tcl-DI621_2I.js} +0 -0
- /package/public/dist/assets/{textile-4i3oG3tg.js → textile-CpiPRB46.js} +0 -0
- /package/public/dist/assets/{tiddlywiki-CXG1-CcK.js → tiddlywiki-DASPoia0.js} +0 -0
- /package/public/dist/assets/{tiki-DJqKUhA-.js → tiki-H2_-xfcb.js} +0 -0
- /package/public/dist/assets/{toml-C1FnyICQ.js → toml-BLGegqRu.js} +0 -0
- /package/public/dist/assets/{troff-Cp8NvRO0.js → troff-BH_j1MPi.js} +0 -0
- /package/public/dist/assets/{ttcn-cfg-BVuxfGZf.js → ttcn-cfg-kxhuYjqY.js} +0 -0
- /package/public/dist/assets/{ttcn-NlmW_fji.js → ttcn-q84VxP8I.js} +0 -0
- /package/public/dist/assets/{turtle-Ba9ERlnm.js → turtle-COu2Ajrp.js} +0 -0
- /package/public/dist/assets/{vb-DDs4gjJb.js → vb-7GRadaxb.js} +0 -0
- /package/public/dist/assets/{vbscript-gOFmdMJN.js → vbscript-Bibo3Rcb.js} +0 -0
- /package/public/dist/assets/{velocity-DtSNZA7i.js → velocity-CRfDkZn8.js} +0 -0
- /package/public/dist/assets/{verilog-Pldmtxe7.js → verilog-B1kgqsBR.js} +0 -0
- /package/public/dist/assets/{vhdl-BFfSgWGp.js → vhdl-qL7iOc7c.js} +0 -0
- /package/public/dist/assets/{w3c-keyname-BggQEPNo.js → w3c-keyname-BkTDclMX.js} +0 -0
- /package/public/dist/assets/{webidl-B6ZFYE2L.js → webidl-Bpu8XQq2.js} +0 -0
- /package/public/dist/assets/{xquery-DhxUT98N.js → xquery-C_ocxvPR.js} +0 -0
- /package/public/dist/assets/{yacas-jSkQeF1Q.js → yacas-DByFiVRK.js} +0 -0
- /package/public/dist/assets/{z80-D7Lt6v61.js → z80-CKuzqVbN.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./memory-CRL72HB-.js";export{e as refreshMemorySidebar};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import{i as e,n as t}from"./api-tVoG39dL.js";import{c as n,p as r,y as i}from"./render-o_YEiCEO.js";import{r as a}from"./locale-DT1WRaeJ.js";function o(e){return document.getElementById(e)}function s(e,t){let n=o(e);n&&(n.textContent=t==null?``:String(t))}function c(e,t){let n=o(e);n&&(n.value=t==null?``:String(t))}function l(e,t){let s=o(`memorySidebarBtn`);if(!s)return;if(e?.enabled&&e?.hasSoul===!1){s.innerHTML=`${n.brain} Memory · <span style="color:var(--accent)">${a(`updateNeeded`)}</span>`;return}if(e?.enabled&&e?.hasSoul&&!e?.soulSynthesized){s.innerHTML=`${n.brain} Memory · <span style="color:var(--accent)">${i(`memory.banner.soulOptimize`)}</span>`;return}let c=e?.indexState===`ready`?`Ready`:e?.state===`not_initialized`?`Indexing`:e?.state||`(${t})`;s.innerHTML=`${n.brain} Memory · ${r(c)}`}function u(e){let t=o(`advStatusBanner`);if(t){if(!e?.enabled){t.style.display=`none`,t.textContent=``;return}if(t.style.display=``,e.hasSoul===!1){t.innerHTML=`<span>Memory structure upgrade available.</span>
|
|
2
|
-
<button id="advUpgradeSoulBtn" class="btn-sm" style="margin-left:8px">${a(`memoryUpdateBtn`)}</button>`;return}if(e.hasSoul&&!e.soulSynthesized){t.innerHTML=`<span>Soul identity can be personalized with your active CLI.</span>
|
|
3
|
-
<button id="advSynthesizeSoulBtn" class="btn-sm" style="margin-left:8px">${i(`memory.banner.soulOptimize`)}</button>`;return}if(e.state===`not_initialized`){t.textContent=`Integrated memory is preparing its index. Temporary fallback memory context is active until initialization completes.`;return}if(e.indexState===`not_indexed`){t.textContent=`Integrated memory is configured. Indexed search/read will activate after indexing becomes available.`;return}t.textContent=`Memory active. search/read=${e.routing?.searchRead||`basic`} / save=${e.routing?.save||`basic`}`}}function d(e,t=!0){let n=o(`advStatusBanner`);n&&(n.style.display=t?``:`none`,n.textContent=e)}function f(e){for(let t of[`advBootstrapBtn`,`advReindexBtn`,`advReimportBtn`,`advOpenCorruptedBtn`]){let n=o(t);n&&(n.disabled=e)}}function p(e){o(`memOn`)?.classList.toggle(`active`,e.enabled),o(`memOff`)?.classList.toggle(`active`,!e.enabled),c(`memFlushEvery`,e.flushEvery),c(`memRetention`,e.retentionDays),c(`memFlushLang`,e.flushLanguage||`en`),s(`memPath`,e.path),s(`memCounter`,e.counter),s(`memThreshold`,e.flushEvery)}function m(e){let t=o(`memTabBtnSettings`),n=o(`memTabSettings`);!t||!n||(t.style.display=``,n.style.display||(n.style.display=``))}function h(e){s(`advIndexState`,e?.indexState||e?.state||`-`),s(`advStorageRoot`,e?.storageRoot||`-`),s(`advIndexedFiles`,e?.indexedFiles||0),s(`advIndexedChunks`,e?.indexedChunks||0),s(`advLastIndexedAt`,e?.lastIndexedAt||`-`),s(`advImportStatus`,e?.importStatus||`-`),s(`advCorruptedCount`,e?.corruptedCount||0),s(`advLastExpansion`,(e?.lastExpansion||[]).join(`, `)||`-`),s(`advLastError`,e?.lastError||`-`);let t=e?.importedCounts||{};s(`advImportStatus`,`${e?.importStatus||`-`} (core:${t.core||0} md:${t.markdown||0} kv:${t.kv||0} claude:${t.claude||0})`),s(`advProfileFresh`,e?.profileFresh===!1?`⚠ stale`:`✓ fresh`),s(`advLastReflectedAt`,e?.lastReflectedAt||`never`),s(`advFlushRunning`,e?.flushRunning?`running`:`idle`),s(`advMigrationLock`,e?.migrationLocked?`⚠ locked`:`none`);let n=e?.staleWarnings||[];s(`advWarnings`,n.length?n.join(`, `):`none`),s(`advSoulStatus`,e?.hasSoul?`✓ active`:`⚠ not created`)}function g(e){let t=o(`basicMemoryFiles`);if(t){if(!e?.length){t.innerHTML=`<p style="color:var(--text-dim);font-size:12px;text-align:center">No memory files yet</p>`;return}t.innerHTML=e.map(e=>`
|
|
4
|
-
<div style="display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border:1px solid var(--border);border-radius:4px;margin-bottom:4px;cursor:pointer"
|
|
5
|
-
data-mem-view="${r(e.name)}">
|
|
6
|
-
<div>
|
|
7
|
-
<span style="font-size:12px;font-family:monospace">${r(e.name)}</span>
|
|
8
|
-
<span style="font-size:10px;color:var(--accent);margin-left:6px">${e.entries} entries</span>
|
|
9
|
-
</div>
|
|
10
|
-
<button data-mem-delete="${r(e.name)}" style="background:none;border:none;color:#f55;cursor:pointer;font-size:14px">${n.trash}</button>
|
|
11
|
-
</div>
|
|
12
|
-
`).join(``)}}function _(e,t){let n=o(e);if(n){if(!t?.length){n.innerHTML=`<p style="color:var(--text-dim);font-size:12px;text-align:center">No files</p>`;return}n.innerHTML=t.map(e=>`<div style="padding:6px 8px;border:1px solid var(--border);border-radius:4px;margin-bottom:4px">
|
|
13
|
-
<span style="font-size:12px;font-family:monospace">${r(e)}</span>
|
|
14
|
-
</div>`).join(``)}}function v(e){_(`advancedMemoryFiles`,[...e?.sections?.profile||[],...e?.sections?.shared||[],...e?.sections?.episodes||[],...e?.sections?.semantic||[],...e?.sections?.procedures||[],...e?.sections?.sessions||[]]),_(`corruptedMemoryFiles`,e?.sections?.corrupted||[]),_(`legacyUnmappedFiles`,e?.sections?.legacyUnmapped||[])}function y(){return{importCore:o(`advImportCore`)?.checked!==!1,importMarkdown:o(`advImportMarkdown`)?.checked!==!1,importKv:o(`advImportKv`)?.checked!==!1,importClaudeSession:o(`advImportClaudeSession`)?.checked!==!1}}async function b(){let[e,n,r]=await Promise.all([t(`/api/memory-files`),t(`/api/memory/status`),t(`/api/memory/files`)]);return{basic:e,status:n,files:r}}async function x(){let{basic:e,status:t,files:n}=await b();e&&(p(e),m(t),u(t),h(t),g(e.files),v(n),l(t,e.files.length),o(`memoryModal`)?.classList.add(`open`),C(`status`))}function S(e){e&&e.target!==e.currentTarget||o(`memoryModal`)?.classList.remove(`open`)}function C(e){let t={settings:`memTabSettings`,status:`memTabAdvOps`,files:`memTabFiles`};for(let n of Object.values(t)){let r=o(n);r&&(r.style.display=n===t[e]?``:`none`)}o(`memTabBtnSettings`)?.classList.toggle(`active`,e===`settings`),o(`memTabBtnAdvOps`)?.classList.toggle(`active`,e===`status`),o(`memTabBtnFiles`)?.classList.toggle(`active`,e===`files`),o(`memTabBtnSettings`)?.setAttribute(`aria-selected`,String(e===`settings`)),o(`memTabBtnAdvOps`)?.setAttribute(`aria-selected`,String(e===`status`)),o(`memTabBtnFiles`)?.setAttribute(`aria-selected`,String(e===`files`))}async function w(t){o(`memOn`)?.classList.toggle(`active`,t),o(`memOff`)?.classList.toggle(`active`,!t),await e(`/api/memory-files/settings`,`PUT`,{enabled:t})}async function T(){let t=o(`memFlushEvery`),n=o(`memRetention`),r=o(`memFlushLang`);await e(`/api/memory-files/settings`,`PUT`,{flushEvery:+(t?.value||10),retentionDays:+(n?.value||30),flushLanguage:r?.value||`en`});let i=o(`memThreshold`);i&&t&&(i.textContent=t.value)}async function E(){f(!0),d(i(`memory.banner.bootstrapRerun`),!0);let t=await e(`/api/memory/bootstrap`,`POST`,y());f(!1),t?.message&&alert(t.message),await x(),C(`status`)}async function D(){f(!0),d(a(`memoryUpdating`),!0);let n=await e(`/api/jaw-memory/soul/activate`,`POST`,{});f(!1),n?.created?d(`✓ Soul identity created.`):d(`✓ Soul already active.`),await x(),C(`status`);let r=await t(`/api/memory/status`);l(r,0),u(r)}async function O(){f(!0),d(i(`memory.banner.soulOptimizing`),!0);let n=await e(`/api/soul/bootstrap`,`POST`,{});if(f(!1),!n?.ok){d(n?.reason===`already_synthesized`?`✓ Soul already optimized.`:n?.reason===`no_active_agent`?`No active CLI agent. Please start an agent first.`:`Soul optimization failed: ${n?.reason||`unknown`}`);return}d(i(`memory.banner.soulPromptSent`)),await x(),C(`status`);let r=await t(`/api/memory/status`);l(r,0),u(r)}async function k(){f(!0),d(i(`memory.banner.reindexing`),!0);let t=await e(`/api/memory/reindex`,`POST`,{});f(!1),t?.message&&alert(t.message),await x(),C(`status`)}function A(){let e=o(`advStorageRoot`)?.textContent||``,t=e?`${e}/corrupted`:`JAW_HOME/memory/structured/corrupted`;navigator.clipboard?.writeText&&navigator.clipboard.writeText(t).catch(()=>{}),alert(`Corrupted folder path copied/shown:\n${t}`)}async function j(t){confirm(`Delete `+t+`?`)&&(await e(`/api/memory-file?path=`+encodeURIComponent(t),`DELETE`,{}),x())}async function M(e){let i=await t(`/api/memory-file?path=`+encodeURIComponent(e));if(!i)return;let a=o(`basicMemoryFiles`);a&&(a.innerHTML=`
|
|
15
|
-
<div style="margin-bottom:8px;display:flex;justify-content:space-between;align-items:center">
|
|
16
|
-
<span style="font-size:12px;font-weight:600">${r(i.name)}</span>
|
|
17
|
-
<button data-mem-back style="background:none;border:none;color:var(--accent);cursor:pointer;font-size:11px">${n.arrowLeft} back</button>
|
|
18
|
-
</div>
|
|
19
|
-
<pre style="background:var(--bg);padding:8px;border-radius:4px;font-size:11px;white-space:pre-wrap;max-height:50vh;overflow-y:auto;color:var(--text)">${r(i.content)}</pre>
|
|
20
|
-
`)}async function N(){try{let[e,n]=await Promise.all([t(`/api/memory-files`),t(`/api/memory/status`)]);l(n,e?.files?.length||0),u(n)}catch{}}async function P(){let t=o(`memFlushNowBtn`);t&&(t.disabled=!0),await e(`/api/jaw-memory/flush`,`POST`,{})?(t&&(t.textContent=`✅ Triggered`),setTimeout(()=>{t&&(t.textContent=`🧠 Flush Now`,t.disabled=!1)},2e3)):t&&(t.textContent=`❌ Failed`,t.disabled=!1)}export{N as a,T as c,O as d,P as f,x as i,w as l,M as m,j as n,k as o,D as p,A as r,E as s,S as t,C as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./mermaid.core-D8VnfThU.js";function t(){return e.setParseErrorHandler(()=>{}),e}export{t as loadMermaid};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./mermaid.core-D8VnfThU.js";export{e as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-NNHCCRGN-BaiX9a5F.js";import{n as e}from"./chunk-MPE355IW-Bp4qAOUf.js";export{e as createPacketServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-NNHCCRGN-BaiX9a5F.js";import{n as e}from"./chunk-MZUSXYTE-DAU-v-0c.js";export{e as createPieServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-NNHCCRGN-BaiX9a5F.js";import{n as e}from"./chunk-FHYWG6QK-CxZt-yZZ.js";export{e as createRadarServices};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/vendor-render-Bjnw0wQ6.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{A as e,L as t,R as n,S as r,_ as i,a,b as o,c as s,d as c,f as l,g as u,h as d,i as f,l as p,m as ee,o as m,p as h,s as te,u as ne,v as g,x as _,y as v}from"./vendor-render-DCb9B75Q.js";import{i as re}from"./api-tVoG39dL.js";import{t as y}from"./preload-helper-DuH3-WbD.js";import{A as ie,B as ae,C as oe,D as se,E as ce,F as le,G as ue,H as de,I as fe,J as pe,K as me,L as he,M as ge,N as _e,O as ve,P as ye,Q as be,R as xe,S as Se,T as Ce,U as we,V as Te,W as Ee,X as De,Y as Oe,Z as ke,_ as Ae,a as je,b as Me,c as Ne,d as Pe,f as Fe,g as Ie,h as Le,i as Re,j as ze,k as Be,l as Ve,m as He,n as Ue,o as We,p as Ge,q as Ke,r as qe,s as Je,t as Ye,u as Xe,v as Ze,w as Qe,x as $e,y as et,z as tt}from"./vendor-icons-D2l6ddC0.js";import{n as b,t as x}from"./mermaid-preprocess-p7OIpOon.js";var S=[`en`,`ko`,`zh`,`ja`],C=`ko`,w={},T={};async function nt(){let e=null;try{e=localStorage.getItem(`claw_locale`)}catch{}if(!e){let t=(navigator.language||`ko`).split(/[-_]/)[0].toLowerCase();e=S.includes(t)?t:`ko`}T=await E(`ko`),w=e===`ko`?T:await E(e),C=e,document.documentElement.lang=C,O()}async function E(e){try{let{api:t}=await y(async()=>{let{api:e}=await import(`./api-DNnX8m0u.js`);return{api:e}},[]);return await t(`/api/i18n/${e}`)||{}}catch{return{}}}function D(e,t={}){let n=w[e]??T[e]??e;for(let[e,r]of Object.entries(t))n=n.replaceAll(`{${e}}`,String(r));return n}function O(){document.querySelectorAll(`[data-i18n]`).forEach(e=>{let t=e.getAttribute(`data-i18n`);t&&(e.textContent=D(t))}),document.querySelectorAll(`[data-i18n-placeholder]`).forEach(e=>{let t=e.getAttribute(`data-i18n-placeholder`);t&&(e.placeholder=D(t))}),document.querySelectorAll(`[data-i18n-title]`).forEach(e=>{let t=e.getAttribute(`data-i18n-title`);t&&(e.title=D(t))}),document.querySelectorAll(`[data-i18n-aria]`).forEach(e=>{let t=e.getAttribute(`data-i18n-aria`);t&&e.setAttribute(`aria-label`,D(t))})}async function rt(e){if(e!==C){S.includes(e)||(e=`ko`),w=e===`ko`?T:await E(e),C=e,document.documentElement.lang=C;try{localStorage.setItem(`claw_locale`,e)}catch{}O();try{let{loadEmployees:e}=await y(async()=>{let{loadEmployees:e}=await import(`./employees-BmxY8Mw3.js`);return{loadEmployees:e}},[]);e()}catch{}try{let{loadSkills:e}=await y(async()=>{let{loadSkills:e}=await import(`./skills-CFdzXbtK.js`);return{loadSkills:e}},[]);e()}catch{}try{let{loadCommands:e}=await y(async()=>{let{loadCommands:e}=await import(`./slash-commands-BUM6u-Ex.js`);return{loadCommands:e}},[]);e()}catch{}try{let{loadSettings:e}=await y(async()=>{let{loadSettings:e}=await import(`./settings-B0RlyAkI.js`);return{loadSettings:e}},[]);e()}catch{}}}function it(){return C}function at(e,t={}){let n=new URL(e,location.origin);return n.searchParams.has(`locale`)||n.searchParams.set(`locale`,C),fetch(n.toString(),t)}function ot(e){let t=[],n=e.replace(/```[\s\S]*?```/g,e=>(t.push(e),`\x00P${t.length-1}\x00`)).replace(/`[^`]+`/g,e=>(t.push(e),`\x00P${t.length-1}\x00`));return n=n.replace(/([\p{P}])\*\*(?=[^\s\p{P}])/gu,(e,t)=>t===`*`?e:t+`**`),n=n.replace(/\x00P(\d+)\x00/g,(e,n)=>t[Number(n)]),n}var k=0;function st(e){let t=new Map;return{text:e.replace(/^ {0,3}(`{3,}|~{3,})[^\n]*\n[\s\S]*?\n {0,3}\1[ \t]*$/gm,e=>{let n=`\x00FENCE-${k++}\x00`;return t.set(n,e),n}),fences:t}}function ct(e,t){for(let[n,r]of t)e=e.replace(n,()=>r);return e}function lt(e,t=!1){let n=[],r=``,i=0;for(;i<e.length;){let a=e.indexOf(`<svg`,i);if(a===-1){r+=e.slice(i);break}let o=e[a+4];if(o&&!/[\s\/>]/.test(o)){r+=e.slice(i,a+4),i=a+4;continue}r+=e.slice(i,a);let s=0,c=a,l=!1;for(;c<e.length;){let t=e.indexOf(`<svg`,c+1),o=e.indexOf(`</svg>`,c+(c===a?0:1));if(o===-1)break;if(t!==-1&&t<o){let n=e[t+4];n&&/[\s\/>]/.test(n)&&s++,c=t+4}else if(s===0){let t=o+6,s=e.slice(a,t),c=k++,u=`\n\n<div data-jaw-svg="${c}"></div>\n\n`;n.push({id:c,index:a,length:s.length,svg:s,kind:`complete`,placeholder:u}),r+=u,i=t,l=!0;break}else s--,c=o+6}if(!l){let o=k++;if(t){let t=e.slice(a),s=`\n\n<div data-jaw-svg="${o}" data-jaw-kind="partial"></div>\n\n`;n.push({id:o,index:a,length:t.length,svg:``,kind:`partial`,placeholder:s}),r+=s,i=e.length}else{let t=`\n\n<div data-jaw-svg="${o}" data-jaw-kind="error"></div>\n\n`,s=e.slice(a),c=s.search(/\n\s*\n/),l=c===-1?s.length:c;n.push({id:o,index:a,length:l,svg:``,kind:`error`,placeholder:t}),r+=t,i=a+l}}}return{text:r,blocks:n}}function A(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}var ut=/["'](?:subtasks|employee_config|agent_phases|orchestration_plan)["']\s*:/,dt=/(^|\n)(?:## Approved Plan \((?:authoritative|auto-injected by orchestrator)[^\n]*\)|\[PABCD — [A-Z]:[^\n]*\]|\[PLANNING MODE[^\n]*\]|\[PLAN AUDIT[^\n]*\]|The approved plan is already injected above)/m;function ft(e){let t=dt.exec(e);return!t||t.index<0?e:e.slice(0,t.index).trim()}function j(e){let t=e.replace(/```json\n([\s\S]*?)\n```/g,(e,t)=>ut.test(t)?``:e);return t=t.replace(/\{[^{}]*"subtasks"\s*:\s*\[[\s\S]*?\]\s*\}/g,``).trim(),ft(t)}function pt(e){let t=[],n=[],r=e.replace(/```[\s\S]*?```/g,e=>(n.push(e),`\x00C${n.length-1}\x00`)).replace(/`[^`]+`/g,e=>(n.push(e),`\x00C${n.length-1}\x00`));return r=r.replace(/\$\$([\s\S]+?)\$\$/g,(e,n)=>(t.push({tex:n.trim(),displayMode:!0}),`\x00MATH-${t.length-1}\x00`)),r=r.replace(/\\\[([\s\S]+?)\\\]/g,(e,n)=>(t.push({tex:n.trim(),displayMode:!0}),`\x00MATH-${t.length-1}\x00`)),r=r.replace(/(?<!\$)\$(?!\$)([^\n$]+?)\$(?!\$)/g,(e,n)=>(t.push({tex:n.trim(),displayMode:!1}),`\x00MATH-${t.length-1}\x00`)),r=r.replace(/\\\((.+?)\\\)/g,(e,n)=>(t.push({tex:n.trim(),displayMode:!1}),`\x00MATH-${t.length-1}\x00`)),r=r.replace(/\x00C(\d+)\x00/g,(e,t)=>n[Number(t)]),{text:r,blocks:t}}function mt(t,n,r=!1){return t.replace(/\x00MATH-(\d+)\x00/g,(t,i)=>{let a=n[Number(i)];if(!a)return`<code title="math placeholder error">[math error]</code>`;if(r)return a.displayMode?`<div class="math-placeholder">${A(a.tex)}</div>`:`<code class="math-placeholder">${A(a.tex)}</code>`;try{return e.renderToString(a.tex,{displayMode:a.displayMode,throwOnError:!1})}catch{return a.displayMode?`<pre><code>${A(a.tex)}</code></pre>`:`<code>${A(a.tex)}</code>`}})}var ht=`http://www.w3.org/2000/svg`,gt=new Set([`a`,`area`,`link`]),_t=[`fill`,`stroke`,`filter`,`mask`,`clip-path`,`marker-start`,`marker-mid`,`marker-end`,`cursor`],M=null;function vt(){let e=r;return typeof e.sanitize==`function`&&typeof e.addHook==`function`?e:typeof window<`u`?e(window):{sanitize:e=>e,addHook:()=>void 0}}function yt(e){e.addHook(`afterSanitizeAttributes`,e=>{let t=e.tagName.toLowerCase();if(e.namespaceURI===ht||!gt.has(t)){let t=e.getAttribute(`href`)||``;t&&!t.startsWith(`#`)&&e.removeAttribute(`href`)}let n=e.getAttributeNS(`http://www.w3.org/1999/xlink`,`href`)||e.getAttribute(`xlink:href`)||``;if(n&&!n.startsWith(`#`)&&(e.removeAttributeNS(`http://www.w3.org/1999/xlink`,`href`),e.removeAttribute(`xlink:href`)),t===`image`||t===`feimage`){let t=e.getAttribute(`src`)||``;t&&!t.startsWith(`#`)&&e.removeAttribute(`src`)}if(e.hasAttribute(`style`)){let t=e.style?.cssText||``;if(/url\s*\(/i.test(t)){let n=t.replace(/url\s*\(\s*(?!['"]?#)[^)]*\)/gi,`none`);e.style.cssText=n}}for(let t of _t){if(!e.hasAttribute(t))continue;let n=e.getAttribute(t)||``;if(/url\s*\(/i.test(n)){let r=n.replace(/url\s*\(\s*(?!['"]?#)[^)]*\)/gi,`none`);e.setAttribute(t,r)}}})}function bt(){return M||(M=vt(),yt(M),M)}function N(){return bt()}function P(e){let t=N().sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:[`script`,`iframe`,`object`,`embed`,`form`,`input`,`foreignObject`,`animate`,`set`,`animateTransform`,`animateMotion`],FORBID_ATTR:[`onerror`,`onclick`,`onload`,`onmouseover`,`onfocus`,`onblur`,`background`]}),n=document.createElement(`div`);n.innerHTML=t;for(let e of n.querySelectorAll(`style`)){let t=e.textContent||``;t=t.replace(/@import\b[^;]*;?/gi,`/* stripped */`),t=t.replace(/@font-face\s*\{[^}]*\}/gi,`/* stripped */`),t=t.replace(/url\s*\(\s*(?!['"]?#)[^)]*\)/gi,`none`),e.textContent=t}return n.innerHTML}function F(e){return N().sanitize(e,{USE_PROFILES:{html:!0,svg:!0,svgFilters:!0},FORBID_TAGS:[`script`,`style`,`iframe`,`object`,`embed`,`form`,`input`,`foreignObject`,`animate`,`set`,`animateTransform`,`animateMotion`],FORBID_ATTR:[`onerror`,`onclick`,`onload`,`onmouseover`,`onfocus`,`onblur`,`background`],ADD_TAGS:[`use`],ADD_ATTR:[`aria-hidden`,`xmlns`,`viewBox`,`role`,`aria-label`,`data-jaw-svg`,`data-jaw-kind`,`data-mermaid-code-raw`,`href`,`xlink:href`]})}var xt=`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 12c0 0 2-4 6-4 1 0 2 .5 3 1l3-6c0 0 1 5 3 7 1.5 1.5 5 2 5 2s-1 4-5 4c-1 0-2-.3-3-.8L12 18c0 0-2-1-4-1-4 0-6-5-6-5z"/><circle cx="17" cy="11" r="0.5" fill="currentColor" stroke="none"/><path d="M7 12l1 2"/><path d="M9.5 12l1 2"/></svg>`,I=14,St=16;function L(e,t=St){return be(e,{size:t})}var R={check:L(Te),error:L(tt),warning:L(Re),skip:L(Ne),tool:L(qe),thinking:L(Se),search:L(Pe),web:L(ge),exec:L(Ye),compacting:L(et),plan:L(Me),brain:L(Ke),heartPulse:L(ie),lock:L(oe),lockOpen:L(Qe),key:L(se),settings:L(Ve),file:L(le),trash:L(je),lightbulb:L(ce),refresh:L(Ge),mic:L($e),clipboard:L(xe),robot:L(pe),palette:L(Ze),link:L(Ce),salute:L(ze),shark:xt,user:L(ae),paperclip:L(Ae),save:L(Fe),gamepad:L(_e),house:L(ve),radio:L(He),folder:L(ye),pencil:L(Ie),chart:L(me),hourglass:L(Be),target:L(We),ban:L(Oe),play:L(Le),stop:L(Je),close:L(Ue,I),send:L(Xe),copy:L(he,I),download:L(fe,I),checkSimple:L(ue,I),chevronLeft:L(we,I),chevronRight:L(de,I),chevronDown:L(Ee,I),arrowLeft:L(ke,I),arrowRight:L(De,I)},Ct={"✅":`check`,"❌":`error`,"🔧":`tool`,"⏭":`skip`,"🧠":`brain`,"💓":`heartPulse`,"🔒":`lock`,"🔓":`lockOpen`,"🔑":`key`,"⚙":`settings`,"⚙️":`settings`,"📄":`file`,"🗑":`trash`,"🗑️":`trash`,"⚠":`warning`,"⚠️":`warning`,"💡":`lightbulb`,"🦈":`shark`,"👤":`user`,"💭":`thinking`,"🔍":`search`,"🌐":`web`,"⚡":`exec`,"🗜":`compacting`,"🗜️":`compacting`,"📝":`plan`,"📑":`clipboard`,"🤖":`robot`,"📋":`clipboard`,"🔄":`refresh`,"🎨":`palette`,"🎤":`mic`,"🔗":`link`,"🫡":`salute`,"📎":`paperclip`,"💾":`save`,"🎮":`gamepad`,"🏠":`house`,"📡":`radio`,"📂":`folder`,"✏️":`pencil`,"📊":`chart`,"🎙️":`mic`,"⏳":`hourglass`,"🎯":`target`,"📨":`send`,"🚫":`ban`,"▶":`play`};function wt(e){let t=Ct[e];return t?R[t]:e}function Tt(e){return e===`✅`?`done`:e===`❌`?`error`:null}function Et(e=document.body){let t=e.querySelectorAll(`[data-icon]`);for(let e of t){let t=e.dataset.icon;t&&R[t]&&(e.innerHTML=R[t],e.classList.add(`icon-hydrated`))}}function z(e){e.querySelector(`.mermaid-zoom-btn`)?.remove(),e.querySelector(`.mermaid-copy-btn`)?.remove(),e.querySelector(`.mermaid-save-btn`)?.remove();let t=document.createElement(`button`);t.className=`mermaid-zoom-btn`,t.type=`button`,t.ariaLabel=`Expand diagram`,t.title=`Expand`,t.textContent=`⤢`,e.appendChild(t);let n=document.createElement(`button`);n.className=`mermaid-save-btn`,n.type=`button`,n.ariaLabel=`Save as image`,n.title=`Save`,n.innerHTML=R.download,e.appendChild(n);let r=document.createElement(`button`);r.className=`mermaid-copy-btn`,r.type=`button`,r.ariaLabel=`Copy source`,r.title=`Copy`,r.innerHTML=R.copy,e.appendChild(r)}var B=!1;function Dt(){B||(B=!0,document.addEventListener(`click`,e=>{let t=e.target,n=t?.closest(`.diagram-copy-btn`);if(n){let e=n.closest(`.diagram-container`);if(!e)return;let t=``;if(e.dataset.widgetHtml)try{t=decodeURIComponent(escape(atob(e.dataset.widgetHtml)))}catch{return}else{let n=e.querySelector(`svg`);n&&(t=n.outerHTML)}t&&V(n,t,`copy`);return}let r=t?.closest(`.mermaid-copy-btn`);if(r){let e=r.closest(`.mermaid-container`);if(!e)return;let t=e.dataset.mermaidCode||``;t&&V(r,t,`copy`);return}let i=t?.closest(`.diagram-save-btn`);if(i){let e=i.closest(`.diagram-container`);if(!e)return;if(e.dataset.widgetHtml){let t=e.querySelector(`iframe`);t?.contentWindow&&(t.contentWindow.postMessage({type:`jaw-request-screenshot`},`*`),V(i,``,`save`));return}let t=e.querySelector(`svg`);t&&Ot(t,i);return}let a=t?.closest(`.mermaid-save-btn`);if(a){let e=a.closest(`.mermaid-container`);if(!e)return;let t=e.querySelector(`svg`);t&&Ot(t,a);return}}))}function V(e,t,n){let r=()=>{let t=e.innerHTML;e.innerHTML=R.checkSimple,e.classList.add(`copied`),setTimeout(()=>{e.innerHTML=t,e.classList.remove(`copied`)},1500)};n===`copy`?navigator.clipboard.writeText(t).then(r).catch(()=>{}):r()}function H(e,t){let n=e.children,r=t.children,i=[`fill`,`stroke`,`stroke-width`,`color`,`opacity`,`rx`,`ry`,`font-size`,`font-weight`,`font-family`,`text-anchor`,`dominant-baseline`];for(let e=0;e<n.length;e++){let t=n[e],a=r[e];if(!t||!a)continue;let o=getComputedStyle(t);for(let e of i){let t=o.getPropertyValue(e);t&&a.style.setProperty(e,t)}t.children.length&&H(t,a)}}function Ot(e,t){let n=e.cloneNode(!0);H(e,n);let r=e.getBoundingClientRect();n.getAttribute(`width`)||n.setAttribute(`width`,String(r.width)),n.getAttribute(`height`)||n.setAttribute(`height`,String(r.height));let i=new XMLSerializer().serializeToString(n),a=`data:image/svg+xml;charset=utf-8,`+encodeURIComponent(i),o=new Image;o.onload=()=>{let e=document.createElement(`canvas`);e.width=o.naturalWidth*2,e.height=o.naturalHeight*2;let n=e.getContext(`2d`);n.scale(2,2),n.drawImage(o,0,0),e.toBlob(e=>{e&&(kt(e,`diagram-${Date.now()}.png`),V(t,``,`save`))},`image/png`)},o.onerror=()=>{kt(new Blob([i],{type:`image/svg+xml;charset=utf-8`}),`diagram-${Date.now()}.svg`),V(t,``,`save`)},o.src=a}function kt(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,r.click(),setTimeout(()=>URL.revokeObjectURL(n),1e3)}function At(e){return e.kind===`partial`?`<div class="diagram-container diagram-loading" role="status"
|
|
3
|
-
aria-label="Diagram loading"><div class="diagram-spinner"></div></div>`:e.kind===`error`?`<div class="diagram-container diagram-error" role="alert">
|
|
4
|
-
Malformed SVG: unclosed element</div>`:`<div class="diagram-container diagram-svg" tabindex="0"
|
|
5
|
-
role="figure" aria-label="SVG diagram">
|
|
6
|
-
${F(e.svg)}
|
|
7
|
-
<button class="diagram-save-btn" type="button"
|
|
8
|
-
aria-label="Save as image" title="Save">${R.download}</button>
|
|
9
|
-
<button class="diagram-copy-btn" type="button"
|
|
10
|
-
aria-label="Copy source" title="Copy">${R.copy}</button>
|
|
11
|
-
<button class="diagram-zoom-btn" type="button"
|
|
12
|
-
aria-label="Expand diagram" title="Expand">⤢</button>
|
|
13
|
-
</div>`}function jt(e,t){for(let n of t){let t=`<div\\b[^>]*?\\bdata-jaw-svg="${n.id}"[^>]*></div>`,r=new RegExp(t,`g`),i=At(n);e=e.replace(r,()=>i)}return e}function U(e){(e||document).querySelectorAll(`.diagram-zoom-btn, .mermaid-zoom-btn`).forEach(e=>{e.dataset.bound||(e.dataset.bound=`1`,e.addEventListener(`click`,()=>{if(e.closest(`.diagram-widget`))return;let t=e.closest(`.diagram-container`),n=e.closest(`.mermaid-container`),r=t||n;if(!r)return;let i=r.cloneNode(!0);i.querySelectorAll(`.diagram-zoom-btn, .mermaid-zoom-btn, .diagram-copy-btn, .diagram-save-btn, .mermaid-copy-btn, .mermaid-save-btn`).forEach(e=>e.remove());let a=n&&!t?`mermaid`:`inline-svg`;Mt(i.innerHTML,a)}))})}function Mt(e,t=`inline-svg`){let n=document.activeElement,r=document.createElement(`div`);r.className=`diagram-overlay`,r.setAttribute(`role`,`dialog`),r.setAttribute(`aria-modal`,`true`),r.setAttribute(`aria-label`,`Expanded diagram`);let i=F(e);r.innerHTML=[`<div class="`,t===`inline-svg`?`diagram-overlay-content diagram-svg-overlay`:`diagram-overlay-content`,`">`,i,`</div>`,`<button class="diagram-overlay-close" type="button" aria-label="Close">✕</button>`].join(``),r.querySelectorAll(`.diagram-overlay-content svg`).forEach(e=>{if(!e.getAttribute(`viewBox`)){let t=e.getAttribute(`width`)||e.getBBox?.()?.width,n=e.getAttribute(`height`)||e.getBBox?.()?.height;t&&n&&e.setAttribute(`viewBox`,`0 0 `+parseFloat(String(t))+` `+parseFloat(String(n)))}e.removeAttribute(`width`),e.removeAttribute(`height`)});let a=r.querySelector(`.diagram-overlay-close`),o=()=>{r.remove(),document.removeEventListener(`keydown`,s),n&&n.isConnected&&n.focus()},s=e=>{if(e.key===`Escape`){o();return}if(e.key===`Tab`){let t=r.querySelectorAll(`button, [href], [tabindex]:not([tabindex="-1"])`);if(t.length===0)return;let n=t[0],i=t[t.length-1];e.shiftKey&&document.activeElement===n?(e.preventDefault(),i.focus()):!e.shiftKey&&document.activeElement===i&&(e.preventDefault(),n.focus())}};a.addEventListener(`click`,o),document.addEventListener(`keydown`,s),document.body.appendChild(r),a.focus()}var Nt=!1;function W(){Nt||(Nt=!0,_.registerLanguage(`javascript`,o),_.registerLanguage(`js`,o),_.registerLanguage(`typescript`,v),_.registerLanguage(`ts`,v),_.registerLanguage(`python`,g),_.registerLanguage(`py`,g),_.registerLanguage(`bash`,i),_.registerLanguage(`shell`,u),_.registerLanguage(`sh`,u),_.registerLanguage(`json`,d),_.registerLanguage(`css`,ee),_.registerLanguage(`xml`,h),_.registerLanguage(`html`,h),_.registerLanguage(`markdown`,l),_.registerLanguage(`md`,l),_.registerLanguage(`yaml`,c),_.registerLanguage(`yml`,c),_.registerLanguage(`sql`,ne),_.registerLanguage(`rust`,p),_.registerLanguage(`rs`,p),_.registerLanguage(`go`,s),_.registerLanguage(`java`,te),_.registerLanguage(`cpp`,m),_.registerLanguage(`c`,m),_.registerLanguage(`diff`,a),_.registerLanguage(`plaintext`,f),_.registerLanguage(`text`,f))}function Pt(e,t){if(W(),t&&_.getLanguage(t))try{return _.highlight(e,{language:t}).value}catch{return A(e)}try{return _.highlightAuto(e).value}catch{return A(e)}}function Ft(e){W(),(e||document).querySelectorAll(`.code-block pre code, .code-block-wrapper pre code`).forEach(e=>{if(e.dataset.highlighted===`yes`)return;let t=[...e.classList].find(e=>e.startsWith(`language-`))?.replace(`language-`,``),n=e.textContent||``;try{t&&_.getLanguage(t)?e.innerHTML=_.highlight(n,{language:t}).value:e.innerHTML=_.highlightAuto(n).value,e.dataset.highlighted=`yes`}catch{}})}var G=null,K=Promise.resolve();function It(){return document.documentElement.getAttribute(`data-theme`)===`light`?{primaryColor:`#e2e8f0`,primaryTextColor:`#1a202c`,primaryBorderColor:`#a0aec0`,lineColor:`#718096`,secondaryColor:`#ebf8ff`,tertiaryColor:`#f7fafc`,background:`transparent`,mainBkg:`#e2e8f0`,nodeBorder:`#a0aec0`,clusterBkg:`#f7fafc`,clusterBorder:`#cbd5e0`,titleColor:`#1a202c`,edgeLabelBackground:`#f7fafc`}:{primaryColor:`#2d3748`,primaryTextColor:`#e2e8f0`,primaryBorderColor:`#4a5568`,lineColor:`#718096`,secondaryColor:`#1a365d`,tertiaryColor:`#1a202c`,background:`transparent`,mainBkg:`#2d3748`,nodeBorder:`#4a5568`,clusterBkg:`#1a202c`,clusterBorder:`#2d3748`,titleColor:`#e2e8f0`,edgeLabelBackground:`#1a202c`}}async function q(){return G||=(await y(()=>import(`./mermaid-loader-Dqb4ZUz6.js`),__vite__mapDeps([0]))).loadMermaid(),G}function J(){G.initialize({startOnLoad:!1,theme:`base`,htmlLabels:!1,themeVariables:It(),securityLevel:`strict`,suppressErrorRendering:!0})}var Lt=0;async function Rt(){let e=document.querySelectorAll(`.mermaid-rendered`);e.length&&(K=K.then(async()=>{let t=await q();for(let n of e){let e=n,r=e.dataset.mermaidCode;if(!r||!e.isConnected)continue;let i=x(r),a=`mermaid-${++Lt}`;try{J();let n;try{({svg:n}=await t.render(a,i))}catch{let e=b(i);if(!e)continue;J(),{svg:n}=await t.render(`${a}-retry`,e)}if(!e.isConnected)continue;e.innerHTML=P(n),z(e),U(e)}catch{}}}).catch(e=>{console.error(`[mermaid:queue] rerender failed, keeping queue alive:`,e)}),await K)}var Y=null;function zt(){Y||=new IntersectionObserver(e=>{for(let t of e){if(!t.isIntersecting)continue;let e=t.target;e.classList.contains(`mermaid-pending`)&&(Y.unobserve(e),Ht(e))}},{rootMargin:`200px`})}function Bt(e,t,n){e.classList.remove(`mermaid-rendered`),e.innerHTML=`
|
|
14
|
-
<div class="mermaid-error">
|
|
15
|
-
<div class="mermaid-error-title">${R.warning} ${A(D(`mermaid.renderFail`)||`Mermaid render failed`)}</div>
|
|
16
|
-
<div class="mermaid-error-msg">${A(n.slice(0,200))}</div>
|
|
17
|
-
<pre class="mermaid-error-code"><code>${A(t)}</code></pre>
|
|
18
|
-
</div>`}async function Vt(e){if(!e.isConnected){delete e.dataset.mermaidQueued,delete e.dataset.mermaidInflight;return}e.classList.remove(`mermaid-pending`);let t=e.dataset.mermaidCodeRaw||``,n=x(t?decodeURIComponent(t):e.textContent||``);e.dataset.mermaidCode=n;let r=`mermaid-${++Lt}`;e.dataset.mermaidInflight=`1`;try{let t=await q();J();let i;try{({svg:i}=await t.render(r,n))}catch(e){let a=b(n);if(!a)throw e;J(),{svg:i}=await t.render(`${r}-retry`,a)}if(!e.isConnected)return;e.innerHTML=P(i),e.classList.add(`mermaid-rendered`),delete e.dataset.mermaidCodeRaw,z(e),U(e)}catch(t){Bt(e,n,t?.message||t?.str||`Unknown error`)}finally{delete e.dataset.mermaidQueued,delete e.dataset.mermaidInflight}}function Ht(e){e.dataset.mermaidQueued!==`1`&&(e.dataset.mermaidQueued=`1`,K=K.then(()=>Vt(e)).catch(e=>{console.error(`[mermaid:queue] render failed, keeping queue alive:`,e)}))}async function X(e,t={}){let n=(e||document).querySelectorAll(`.mermaid-pending`);if(n.length){zt();for(let e of n)if(e.dataset.mermaidQueued!==`1`){if(t.immediate){let t=e.getBoundingClientRect(),n=window.innerHeight||document.documentElement.clientHeight;if(t.bottom>=-200&&t.top<=n+200){Y.unobserve(e),Ht(e);continue}}Y.observe(e)}}}function Ut(e){if(!Y)return;let t=[`.mermaid-pending`,`[data-mermaid-queued="1"]`,`[data-mermaid-inflight="1"]`].join(`,`),n=[];e.matches(t)&&n.push(e),e.querySelectorAll(t).forEach(e=>n.push(e));for(let e of n)Y.unobserve(e),delete e.dataset.mermaidQueued,delete e.dataset.mermaidQueuedAt,delete e.dataset.mermaidInflight,!e.classList.contains(`mermaid-rendered`)&&(e.dataset.mermaidCodeRaw||e.dataset.mermaidCode)&&e.classList.add(`mermaid-pending`)}function Wt(){if(G)return;let e=()=>{q().catch(()=>{})};typeof window.requestIdleCallback==`function`?window.requestIdleCallback(e,{timeout:2e3}):setTimeout(e,500)}var Gt=/(?:~\/[^\s)`\]"'<>]+|\/(?:Users|home|tmp|var|opt|private)\/[^\s)`\]"'<>]+)/g,Kt=/[.,!?:;]+$/,qt=/^(?:~\/|\/(?:Users|home|tmp|var|opt|private)\/)/;function Jt(e){return qt.test(e)}function Yt(e,t){t&&t.classList.add(`opening`),re(`/api/file/open`,`POST`,{path:e}).then(e=>{t?.classList.remove(`opening`),e?.ok===!1?(t?.classList.add(`open-failed`),t&&(t.title=e?.error||`Failed to open`),setTimeout(()=>{t?.classList.remove(`open-failed`),t&&(t.title=``)},2e3)):(t?.classList.add(`opened`),setTimeout(()=>t?.classList.remove(`opened`),1500))}).catch(()=>{t?.classList.remove(`opening`),t?.classList.add(`open-failed`),setTimeout(()=>t?.classList.remove(`open-failed`),2e3)})}function Xt(e){let t=new Set([`PRE`,`A`,`BUTTON`,`TEXTAREA`,`INPUT`,`SCRIPT`,`STYLE`]),n=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,{acceptNode(n){let r=n.parentElement;for(;r&&r!==e;){if(t.has(r.tagName)||r.classList.contains(`file-path-link`)||r.tagName===`CODE`&&r.parentElement?.tagName===`PRE`)return NodeFilter.FILTER_REJECT;r=r.parentElement}return NodeFilter.FILTER_ACCEPT}}),r=new Map,i;for(;i=n.nextNode();){let e=i.textContent||``;Gt.lastIndex=0;let t,n=[];for(;t=Gt.exec(e);){let e=t[0],r=e.replace(Kt,``);r.length<4||n.push({index:t.index,raw:e,clean:r})}n.length&&r.set(i,n)}for(let[e,t]of r){let n=e.textContent||``,r=e.parentNode;if(!r)continue;let i=document.createDocumentFragment(),a=0;for(let{index:e,raw:r,clean:o}of t){e>a&&i.appendChild(document.createTextNode(n.slice(a,e)));let t=document.createElement(`span`);t.className=`file-path-link`,t.setAttribute(`data-file-path`,o),t.setAttribute(`role`,`button`),t.setAttribute(`tabindex`,`0`),t.textContent=o,i.appendChild(t);let s=r.slice(o.length);s&&i.appendChild(document.createTextNode(s)),a=e+r.length}a<n.length&&i.appendChild(document.createTextNode(n.slice(a))),r.replaceChild(i,e)}}var Zt=!1;function Qt(){Zt||(Zt=!0,document.addEventListener(`click`,e=>{let t=e.target,n=t?.closest(`a`),r=n?.getAttribute(`href`)||``;if(n&&Jt(r)){e.preventDefault(),n.classList.add(`file-path-link`),Yt(r,n);return}let i=t?.closest(`.file-path-link`);if(!i)return;let a=i.getAttribute(`data-file-path`);a&&Yt(a,i)}),document.addEventListener(`keydown`,e=>{if(e.key!==`Enter`&&e.key!==` `)return;let t=e.target;t?.classList.contains(`file-path-link`)&&(e.preventDefault(),t.click())}))}var Z=null,Q=null;function $t(){Q&&clearTimeout(Q),Z&&=(cancelAnimationFrame(Z),null),Q=setTimeout(()=>{Q=null,Z=requestAnimationFrame(()=>{Z=null,X(),Ft(),U();let e=document.getElementById(`chatMessages`);e&&Xt(e)})},100)}function en(){Q&&=(clearTimeout(Q),null),Z&&=(cancelAnimationFrame(Z),null)}var tn=!1;function nn(){tn||(tn=!0,document.addEventListener(`click`,e=>{let t=e.target,n=t?.closest(`.code-copy-btn`);if(n){let e=n.closest(`.code-block`);if(!e)return;let t=e.querySelector(`pre code`);if(!t)return;navigator.clipboard.writeText(t.textContent||``).then(()=>{let e=n.textContent||``;n.textContent=D(`code.copied`),n.classList.add(`copied`),setTimeout(()=>{n.textContent=e,n.classList.remove(`copied`)},1500)}).catch(()=>{});return}let r=t?.closest(`.code-lang-label`);if(!r)return;let i=r.closest(`.code-block-wrapper`);if(!i)return;let a=i.querySelector(`pre code`);a&&navigator.clipboard.writeText(a.textContent||``).then(()=>{let e=r.textContent||``;r.textContent=D(`code.copied`),r.classList.add(`copied`),setTimeout(()=>{r.textContent=e,r.classList.remove(`copied`)},1500)}).catch(()=>{})}))}function rn(){nn(),Dt(),Qt()}var $=!1;function an(){if($)return!0;let e=new n;return e.code=function({text:e,lang:t}){if(t===`mermaid`)return`<div class="mermaid-container mermaid-pending" data-mermaid-code-raw="${encodeURIComponent(e)}" role="status" aria-label="Diagram loading">
|
|
19
|
-
<div class="mermaid-skeleton">
|
|
20
|
-
<div class="mermaid-skeleton-spinner"></div>
|
|
21
|
-
<div class="mermaid-skeleton-text">Rendering diagram…</div>
|
|
22
|
-
</div>
|
|
23
|
-
</div>`;if(t?.trim().toLowerCase()===`diagram-html`)return`<div class="diagram-widget-pending" data-diagram-html="${btoa(unescape(encodeURIComponent(e)))}"
|
|
24
|
-
role="status" aria-label="Interactive widget loading">
|
|
25
|
-
<div class="diagram-spinner"></div>
|
|
26
|
-
</div>`;let n=Pt(e,t),r=t?A(t):``,i=D(`code.copy`)||`Copy`;return`<div class="code-block"><div class="code-header"><span class="code-lang">${r}</span><button class="code-copy-btn" type="button" aria-label="${A(i)}">${A(i)}</button></div><pre><code class="hljs${t?` language-${A(t)}`:``}">${n}</code></pre></div>`},e.link=function({href:e,title:t,text:n}){return`<a href="${A(e||``)}" target="_blank" rel="noopener noreferrer"${t?` title="${A(t)}"`:``}>${n}</a>`},t.setOptions({renderer:e,gfm:!0,breaks:!1}),$=!0,!0}function on(e,n=!1){let r=j(e);if(!r)return`<em class="text-dim orchestrate-placeholder">`+A(D(`orchestrator.dispatching`))+`</em>`;let{text:i,fences:a}=st(r.replace(/\n{3,}/g,`
|
|
27
|
-
|
|
28
|
-
`)),{text:o,blocks:s}=lt(i,n),{text:c,blocks:l}=pt(ct(o,a));W(),an();let u=ot(c),d=t.parse(u);return d=d.replace(/<table/g,`<div class="table-wrapper"><table`).replace(/<\/table>/g,`</table></div>`),d=mt(d,l,n),d=F(d),d=jt(d,s),n||$t(),rn(),d}export{nt as _,Ut as a,R as c,Et as d,F as f,it as g,at as h,Wt as i,wt as l,j as m,en as n,X as o,A as p,Xt as r,Rt as s,on as t,Tt as u,rt as v,D as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{E as e,w as t,y as n}from"./settings-CCXRL5Ar.js";export{n as loadSettings,t as savePerCli,e as updateSettings};
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./state-xhhyIPlq.js";import{i as t,n,r}from"./api-tVoG39dL.js";import{c as i,p as a,y as o}from"./render-o_YEiCEO.js";import{n as s,r as c}from"./provider-icons-ClVd2suJ.js";import{n as l,r as u}from"./locale-DT1WRaeJ.js";import{a as d,i as f,n as p,o as m,t as h}from"./constants-BXWl7LTi.js";function g(e){let n=document.getElementById(`sttEngine`),r=document.getElementById(`sttGeminiKey`),i=document.getElementById(`sttGeminiModel`),a=document.getElementById(`sttGeminiModelCustom`),o=document.getElementById(`sttWhisperModel`),s=document.getElementById(`sttOpenaiBaseUrl`),c=document.getElementById(`sttOpenaiKey`),l=document.getElementById(`sttOpenaiModel`),u=document.getElementById(`sttVertexJson`);if(n&&(n.value=e.engine||`auto`),r&&(r.placeholder=e.geminiKeySet?_(e.geminiKeyLast4):`AIza...`),i){let t=e.geminiModel||`gemini-2.5-flash-lite`;Array.from(i.options).some(e=>e.value===t)?i.value=t:(i.value=`__custom__`,a&&(a.value=t,a.style.display=``))}o&&(o.value=e.whisperModel||`mlx-community/whisper-large-v3-turbo`),s&&(s.value=e.openaiBaseUrl||``),c&&(c.placeholder=e.openaiKeySet?_(e.openaiKeyLast4):`sk-...`),l&&(l.value=e.openaiModel||``),u&&(u.value=e.vertexConfig||``);function d(){let e=n?.value||`auto`,t=e===`auto`||e===`gemini`,r=e===`openai`,i=e===`vertex`,a=e===`auto`||e===`whisper`;document.querySelectorAll(`.stt-gemini`).forEach(e=>e.style.display=t?``:`none`),document.querySelectorAll(`.stt-openai`).forEach(e=>e.style.display=r?``:`none`),document.querySelectorAll(`.stt-vertex`).forEach(e=>e.style.display=i?``:`none`),document.querySelectorAll(`.stt-whisper`).forEach(e=>e.style.display=a?``:`none`)}d();async function f(){let e={stt:{engine:n?.value||`auto`,geminiModel:(i?.value===`__custom__`?a?.value:i?.value)||`gemini-2.5-flash-lite`,whisperModel:o?.value||``,openaiBaseUrl:s?.value||``,openaiModel:l?.value||``,vertexConfig:u?.value||``}};r?.value&&(e.stt.geminiApiKey=r.value),c?.value&&(e.stt.openaiApiKey=c.value),console.log(`[stt] saving:`,{engine:e.stt.engine,hasGeminiKey:!!e.stt.geminiApiKey,hasOpenaiKey:!!e.stt.openaiApiKey});try{if(await t(`/api/settings`,`PUT`,e),r?.value){let e=r.value.slice(-4);r.value=``,r.placeholder=_(e)}if(c?.value){let e=c.value.slice(-4);c.value=``,c.placeholder=_(e)}}catch(e){console.error(`[stt] save failed:`,e)}}n?.addEventListener(`change`,()=>{d(),f()}),i?.addEventListener(`change`,()=>{a&&(a.style.display=i.value===`__custom__`?``:`none`),i.value!==`__custom__`&&f()}),a?.addEventListener(`blur`,f),r?.addEventListener(`blur`,()=>{r.value&&f()}),c?.addEventListener(`blur`,()=>{c.value&&f()}),s?.addEventListener(`blur`,f),l?.addEventListener(`blur`,f),o?.addEventListener(`blur`,f),u?.addEventListener(`blur`,f)}function _(e){return o(`stt.key.savedPlaceholder`,{last4:e||``})}async function ee(){let e=document.getElementById(`tgToken`)?.value.trim()||``,n=document.getElementById(`tgChatIds`)?.value.trim()||``;await t(`/api/settings`,`PUT`,{telegram:{token:e,allowedChatIds:n?n.split(`,`).map(e=>parseInt(e.trim(),10)).filter(e=>!isNaN(e)):[]}})}async function te(e){document.getElementById(`tgOn`)?.classList.toggle(`active`,e),document.getElementById(`tgOff`)?.classList.toggle(`active`,!e),await t(`/api/settings`,`PUT`,{telegram:{enabled:e}})}async function ne(e){document.getElementById(`tgForwardOn`)?.classList.toggle(`active`,e),document.getElementById(`tgForwardOff`)?.classList.toggle(`active`,!e),await t(`/api/settings`,`PUT`,{telegram:{forwardAll:e}})}async function re(e){document.getElementById(`tgMentionOn`)?.classList.toggle(`active`,e),document.getElementById(`tgMentionOff`)?.classList.toggle(`active`,!e),await t(`/api/settings`,`PUT`,{telegram:{mentionOnly:e}})}function ie(e){if(!e.telegram)return;let t=e.telegram;document.getElementById(`tgOn`)?.classList.toggle(`active`,!!t.enabled),document.getElementById(`tgOff`)?.classList.toggle(`active`,!t.enabled);let n=document.getElementById(`tgToken`);t.token&&n&&(n.value=t.token);let r=document.getElementById(`tgChatIds`);t.allowedChatIds?.length&&r&&(r.value=t.allowedChatIds.join(`, `));let i=t.forwardAll!==!1;document.getElementById(`tgForwardOn`)?.classList.toggle(`active`,i),document.getElementById(`tgForwardOff`)?.classList.toggle(`active`,!i);let a=t.mentionOnly!==!1;document.getElementById(`tgMentionOn`)?.classList.toggle(`active`,a),document.getElementById(`tgMentionOff`)?.classList.toggle(`active`,!a)}async function ae(){let e=document.getElementById(`dcToken`)?.value.trim()||``,n=document.getElementById(`dcGuildId`)?.value.trim()||``,r=document.getElementById(`dcChannelIds`)?.value.trim()||``;await t(`/api/settings`,`PUT`,{discord:{token:e,guildId:n,channelIds:r?r.split(`,`).map(e=>e.trim()).filter(Boolean):[]}})}async function oe(e){document.getElementById(`dcOn`)?.classList.toggle(`active`,e),document.getElementById(`dcOff`)?.classList.toggle(`active`,!e),await t(`/api/settings`,`PUT`,{discord:{enabled:e}})}async function se(e){document.getElementById(`dcForwardOn`)?.classList.toggle(`active`,e),document.getElementById(`dcForwardOff`)?.classList.toggle(`active`,!e),await t(`/api/settings`,`PUT`,{discord:{forwardAll:e}})}async function ce(e){document.getElementById(`dcAllowBotsOn`)?.classList.toggle(`active`,e),document.getElementById(`dcAllowBotsOff`)?.classList.toggle(`active`,!e),await t(`/api/settings`,`PUT`,{discord:{allowBots:e}})}async function le(e){document.getElementById(`dcMentionOn`)?.classList.toggle(`active`,e),document.getElementById(`dcMentionOff`)?.classList.toggle(`active`,!e),await t(`/api/settings`,`PUT`,{discord:{mentionOnly:e}})}function ue(e){if(!e.discord)return;let t=e.discord;document.getElementById(`dcOn`)?.classList.toggle(`active`,!!t.enabled),document.getElementById(`dcOff`)?.classList.toggle(`active`,!t.enabled);let n=document.getElementById(`dcToken`);t.token&&n&&(n.value=t.token);let r=document.getElementById(`dcGuildId`);t.guildId&&r&&(r.value=t.guildId);let i=document.getElementById(`dcChannelIds`);t.channelIds?.length&&i&&(i.value=t.channelIds.join(`, `));let a=t.forwardAll!==!1;document.getElementById(`dcForwardOn`)?.classList.toggle(`active`,a),document.getElementById(`dcForwardOff`)?.classList.toggle(`active`,!a);let o=!!t.allowBots;document.getElementById(`dcAllowBotsOn`)?.classList.toggle(`active`,o),document.getElementById(`dcAllowBotsOff`)?.classList.toggle(`active`,!o);let s=!!t.mentionOnly;document.getElementById(`dcMentionOn`)?.classList.toggle(`active`,s),document.getElementById(`dcMentionOff`)?.classList.toggle(`active`,!s)}async function de(e){document.getElementById(`chTelegram`)?.classList.toggle(`active`,e===`telegram`),document.getElementById(`chDiscord`)?.classList.toggle(`active`,e===`discord`),document.getElementById(`channelTelegramSettings`)?.style.setProperty(`display`,e===`telegram`?``:`none`),document.getElementById(`channelDiscordSettings`)?.style.setProperty(`display`,e===`discord`?``:`none`),await t(`/api/settings`,`PUT`,{channel:e})}function fe(e){let t=e.channel||`telegram`;document.getElementById(`chTelegram`)?.classList.toggle(`active`,t===`telegram`),document.getElementById(`chDiscord`)?.classList.toggle(`active`,t===`discord`),document.getElementById(`channelTelegramSettings`)?.style.setProperty(`display`,t===`telegram`?``:`none`),document.getElementById(`channelDiscordSettings`)?.style.setProperty(`display`,t===`discord`?``:`none`)}function v(e){let t=document.getElementById(`fallbackOrderList`);if(!t)return;let n=Object.keys(e.perCli||{}),r=e.fallbackOrder||[],i=Math.min(n.length-1,3),s=``;for(let e=0;e<i;e++){let t=r[e]||``,i=n.map(e=>`<option value="${a(e)}" ${e===t?`selected`:``}>${a(d(e)?.label||c(e))}</option>`).join(``);s+=`
|
|
2
|
-
<div class="settings-row sub-row">
|
|
3
|
-
<label style="min-width:60px">Fallback ${e+1}</label>
|
|
4
|
-
<select id="fallback${e}"
|
|
5
|
-
style="font-size:11px;padding:4px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:4px;flex:1">
|
|
6
|
-
<option value="">${o(`settings.none`)}</option>
|
|
7
|
-
${i}
|
|
8
|
-
</select>
|
|
9
|
-
</div>`}t.innerHTML=s}async function pe(){await t(`/api/settings`,`PUT`,{fallbackOrder:[...document.querySelectorAll(`#fallbackOrderList select`)].map(e=>e.value).filter(Boolean)})}async function y(){try{let e=await n(`/api/mcp`);if(!e)return;let t=document.getElementById(`mcpServerList`);if(!t)return;let r=Object.entries(e.servers||{});if(!r.length){t.textContent=o(`mcp.noServers`);return}t.innerHTML=r.map(([e,t])=>`<div style="padding:2px 0">• <b>${a(e)}</b> <span style="opacity:.6">${a(t.command)} ${(t.args||[]).slice(0,2).map(e=>a(e)).join(` `)}</span></div>`).join(``)}catch{}}async function me(){let e=document.getElementById(`mcpSyncResult`);if(e){e.style.display=`block`,e.textContent=o(`mcp.syncing`);try{let n=await t(`/api/mcp/sync`,`POST`,{});if(!n){e.innerHTML=`${i.error} sync failed`;return}let r=n.results||{};e.innerHTML=Object.entries(r).map(([e,t])=>`${t?i.check:i.skip} ${a(e)}`).join(` `)}catch(t){e.innerHTML=`${i.error} ${a(t.message)}`}}}async function he(){let e=document.getElementById(`mcpSyncResult`);if(e){e.style.display=`block`,e.textContent=o(`mcp.installing`);try{let n=await t(`/api/mcp/install`,`POST`,{});if(!n){e.innerHTML=`${i.error} install failed`;return}e.innerHTML=Object.entries(n.results||{}).map(([e,t])=>`${t.status===`installed`?i.check:t.status===`skip`?i.skip:i.error} <b>${a(e)}</b>: ${a(t.status)}${t.bin?` ${i.arrowRight} `+a(t.bin):``}`).join(`<br>`),y()}catch(t){e.innerHTML=`${i.error} ${a(t.message)}`}}}var b=null;function x(e){let t=document.getElementById(`headerCli`);if(!t)return;let n=s(e),r=S(e);t.innerHTML=n?`${n} ${a(r)}`:a(r)}function S(e){return d(e)?.label||c(e)||e}function ge(e){let t=e.finally(()=>{b===t&&(b=null)});return b=t,t}async function _e(){let e=b;e&&await e}function C(e){return e.split(/[^a-zA-Z0-9]+/).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(``)}function w(e){return document.getElementById(`model`+C(e))}function T(e){return document.getElementById(`customModel`+C(e))}function E(e){return document.getElementById(`effort`+C(e))}function D(e,t,{includeCustom:n=!1,includeDefault:r=!1,selected:i=``}={}){if(!e)return;let s=r?`<option value="default">default</option>`:``,c=n?`<option value="__custom__">${o(`model.customOption`)}</option>`:``;e.innerHTML=s+(t||[]).map(e=>`<option value="${a(e)}">${a(e)}</option>`).join(``)+c,i&&Array.from(e.options).some(e=>e.value===i)&&(e.value=i)}function O(e,t){if(!e||!t||Array.from(e.options).some(e=>e.value===t))return;let n=document.createElement(`option`);n.value=t,n.textContent=t;let r=e.querySelector(`option[value="__custom__"]`);r?e.insertBefore(n,r):e.appendChild(n)}function k(e=null){let t=f(),n=document.getElementById(`selCli`);if(n){let r=e?.cli||n.value||t[0]||`claude`,i=e=>p.includes(e),s=!i(r)&&t.includes(r),c=n.dataset.expanded===`1`,l=t.filter(i),u=t.filter(e=>!i(e)),f=l.length===0||s||c,m=l.map(e=>{let t=d(e)?.label||e;return`<option value="${a(e)}">${a(t)}</option>`}).join(``);u.length>0&&(f?(m+=`<option disabled>──────</option>`,m+=u.map(e=>{let t=d(e)?.label||e;return`<option value="${a(e)}">${a(t)}</option>`}).join(``)):m+=`<option value="__show_more__">${o(`cli.showMore`)}</option>`),n.innerHTML=m,Array.from(n.options).some(e=>e.value===r)&&(n.value=r)}let r=document.getElementById(`flushCli`);if(r){let n=e?.memory?.cli||r.value||``;r.innerHTML=`<option value="">(active CLI)</option>`+t.map(e=>`<option value="${a(e)}">${a(S(e))}</option>`).join(``),Array.from(r.options).some(e=>e.value===n)&&(r.value=n)}}function A(e,t){return(t||``).trim()}function j(e=null){for(let t of f()){let n=d(t),r=t===`ai-e`?P():``,i=w(t);if(i)if(n?.modelNote)i.innerHTML=`<option value="">${a(n.modelNote)}</option>`,i.title=n.modelNote,i.disabled=!0;else{let a=A(t,e?.perCli?.[t]?.model||i.value||``);D(i,t===`ai-e`?n?.modelsByProvider?.[r]||h[t]||[]:h[t]||[],{includeCustom:!0,selected:a}),a&&!Array.from(i.options).some(e=>e.value===a)&&(O(i,a),i.value=a),i.disabled=!1}let o=E(t);if(o){let i=t===`ai-e`&&r?n?.effortsByProvider?.[r]||[]:null,s=[``].concat(i||n?.efforts||[]),c=e?.perCli?.[t]?.effort||o.value||``,l=[...new Set(s)],u=l.length===1&&!l[0]&&n?.effortNote?n.effortNote:`— none`;o.innerHTML=l.map(e=>e?`<option value="${a(e)}">${a(e)}</option>`:`<option value="">${a(u)}</option>`).join(``),n?.effortNote&&(o.title=n.effortNote),o.disabled=l.length===1&&!l[0]&&!!n?.effortNote,Array.from(o.options).some(e=>e.value===c)&&(o.value=c)}}}function M(e,t=``){let n=document.getElementById(`selEffort`);if(!n)return;let r=d(e),i=P(),o=e===`ai-e`&&i?r?.effortsByProvider?.[i]||[]:null;if(r?.effortNote){n.innerHTML=`<option value="">${a(r.effortNote)}</option>`,n.title=r.effortNote,n.disabled=!0;return}let s=[``].concat(o||r?.efforts||[]);n.innerHTML=[...new Set(s)].map(e=>e?`<option value="${a(e)}">${a(e)}</option>`:`<option value="">— none</option>`).join(``),n.disabled=!1,n.title=``,Array.from(n.options).some(e=>e.value===t)&&(n.value=t)}function N(e,t,n){return e?(e.innerHTML=n.map(e=>`<option value="${a(e)}">${a(c(e)||e)}</option>`).join(``),Array.from(e.options).some(e=>e.value===t)?e.value=t:e.options.length>0&&(e.value=e.options[0]?.value||t),e.value||t):t}function P(){let e=document.getElementById(`selAiEProvider`),t=document.getElementById(`providerAiE`);return e?.value||t?.value||d(`ai-e`)?.defaultProvider||`claude`}function F(){return document.getElementById(`providerAiE`)?.value||P()}function I(e,t){let n=document.getElementById(`aiEProviderWrap`),r=document.getElementById(`selAiEProvider`),i=document.getElementById(`providerAiE`),a=d(`ai-e`);if(!a?.providers?.length)return`claude`;let o=N(r,e?.perCli?.[`ai-e`]?.provider||i?.value||r?.value||a.defaultProvider||`claude`,a.providers);return N(i,o,a.providers),n&&(n.style.display=t===`ai-e`?``:`none`),o}async function L(){await m();let e=await n(`/api/settings`);if(!e)return;l(e.locale??``),k(e),I(e,e.cli||``),j(e);let t=document.getElementById(`selCli`);t&&Array.from(t.options).some(t=>t.value===e.cli)&&(t.value=e.cli,t.dataset.prev=e.cli);let r=document.getElementById(`inpCwd`);r&&(r.textContent=e.workingDir);let i=document.getElementById(`headerCli`);if(i){let t=s(e.cli),n=S(e.cli);i.innerHTML=t?`${t} ${a(n)}`:a(n)}if(z(e.permissions,!1),e.perCli)for(let[t,n]of Object.entries(e.perCli)){let e=w(t),r=E(t);if(e&&n.model){let r=A(t,n.model);O(e,r),e.value=r}if(r&&(r.value=n.effort||``),t===`codex`&&n.fastMode!==void 0&&(document.getElementById(`codexFastOn`)?.classList.toggle(`active`,n.fastMode),document.getElementById(`codexFastOff`)?.classList.toggle(`active`,!n.fastMode)),t===`codex`){let e=!!n.contextWindow;document.getElementById(`codexCtxOn`)?.classList.toggle(`active`,e),document.getElementById(`codexCtxOff`)?.classList.toggle(`active`,!e);let t=document.getElementById(`codexCtxValues`);t&&(t.style.display=e?``:`none`);let r=document.getElementById(`codexCtxWindow`),i=document.getElementById(`codexCtxCompact`);r&&n.contextWindowSize&&(r.value=String(n.contextWindowSize)),i&&n.contextCompactLimit&&(i.value=String(n.contextCompactLimit))}if(t===`claude`){let e=!!(n.model&&String(n.model).endsWith(`[1m]`));document.getElementById(`claude1mOn`)?.classList.toggle(`active`,e),document.getElementById(`claude1mOff`)?.classList.toggle(`active`,!e)}}U(!1);let o=e.activeOverrides?.[e.cli]||{},c=e.perCli?.[e.cli]||{},u=o.model||c.model,d=o.effort||c.effort||``,f=document.getElementById(`selModel`);if(u&&f){let t=A(e.cli,u);t&&!Array.from(f.options).some(e=>e.value===t)&&O(f,t),f.value=t}M(e.cli,d),ie(e),ue(e),fe(e),v(e),y(),g(e.stt||{})}async function R(){let e=document.getElementById(`selCli`)?.value||`claude`,n={cli:e};return e===`ai-e`&&(n.perCli={"ai-e":{provider:P()}}),ge((async()=>{let r=await t(`/api/settings`,`PUT`,n);if(!r){await L();return}let i=r.cli||e,a=document.getElementById(`selCli`);a&&Array.from(a.options).some(e=>e.value===i)&&(a.value=i,a.dataset.prev=i),x(i)})())}function z(e,t=!0){t&&r(`/api/settings`,`PUT`,{permissions:`auto`})}function B(e){let t=w(e);return t?t.value===`__custom__`?T(e)?.value?.trim()||t.options[0]?.value||`default`:t.value:`default`}function ve(e,t){let n=T(e);n&&(t.value===`__custom__`?(n.style.display=`block`,n.focus()):(n.style.display=`none`,e===`claude`&&V(t.value),H()))}function V(e){let t=!!(e&&e.endsWith(`[1m]`));document.getElementById(`claude1mOn`)?.classList.toggle(`active`,t),document.getElementById(`claude1mOff`)?.classList.toggle(`active`,!t)}function ye(e,t){let n=t.value.trim();if(!n)return;let r=w(e);r&&(O(r,n),r.value=n,t.style.display=`none`,e===`claude`&&V(n),H())}function be(){let e=F(),t=document.getElementById(`selAiEProvider`);t&&Array.from(t.options).some(t=>t.value===e)&&(t.value=e),j(null),(document.getElementById(`selCli`)?.value||``)===`ai-e`&&U(!1),H()}async function H(){let e={};for(let t of f()){if(!w(t))continue;let n=E(t),r={model:B(t),effort:n?n.value:``};if(t===`ai-e`&&(r.provider=F()),t===`codex`){r.fastMode=document.getElementById(`codexFastOn`)?.classList.contains(`active`)??!1,r.contextWindow=document.getElementById(`codexCtxOn`)?.classList.contains(`active`)??!1;let e=document.getElementById(`codexCtxWindow`),t=document.getElementById(`codexCtxCompact`);r.contextWindowSize=parseInt(e?.value||`1000000`,10),r.contextCompactLimit=parseInt(t?.value||`900000`,10)}e[t]=r}await t(`/api/settings`,`PUT`,{perCli:e})}function U(e=!0){let t=document.getElementById(`selCli`);if(!t)return;if(t.value===`__show_more__`){let e=t.dataset.prev||f()[0]||`claude`;t.dataset.expanded=`1`,k(null),Array.from(t.options).some(t=>t.value===e)&&(t.value=e);try{t.showPicker()}catch{}return}t.dataset.prev=t.value;let r=t.value||`claude`,i=I(null,r),s=d(r),c=r===`ai-e`?s?.modelsByProvider?.[i]||h[r]||[]:h[r]||[],l=document.getElementById(`selModel`);s?.modelNote&&l?(l.innerHTML=`<option value="">${a(s.modelNote)}</option>`,l.title=s.modelNote,l.disabled=!0):(D(l,c,{includeCustom:!0,includeDefault:!0}),l&&(l.disabled=!1,l.title=``)),x(r),M(r);let u=document.getElementById(`selModelCustom`);u&&u.remove();let p=document.createElement(`input`);if(p.type=`text`,p.id=`selModelCustom`,p.className=`custom-model-input`,p.placeholder=o(`model.placeholder`),p.style.display=`none`,p.onchange=function(){let e=this.value.trim();!e||!l||(O(l,e),l.value=e,this.style.display=`none`,W())},!l){e&&R();return}l.parentElement?.appendChild(p),l.onchange=function(){this.value===`__custom__`?(p.style.display=`block`,p.focus()):(p.style.display=`none`,W())},n(`/api/settings`).then(e=>{if(!e)return;let t=e.activeOverrides?.[r]||{},n=e.perCli?.[r]||{},i=t.model||n.model,a=t.effort||n.effort||``;if(i&&l){let e=A(r,i);O(l,e),l.value=e}M(r,a)}),e&&R()}async function W(){let e=document.getElementById(`selCli`)?.value||`claude`,n=document.getElementById(`selModel`)?.value||`default`;n===`__custom__`&&(n=document.getElementById(`selModelCustom`)?.value?.trim()||`default`);let r=document.getElementById(`selEffort`),i={};i[e]={model:n},r&&!r.disabled&&(i[e].effort=r.value||``);let a={activeOverrides:i};e===`ai-e`&&(a.perCli={"ai-e":{provider:P()}}),await t(`/api/settings`,`PUT`,a)}function xe(){let e=h[document.getElementById(`flushCli`)?.value||document.getElementById(`selCli`)?.value||`claude`]||[];D(document.getElementById(`flushModel`),e,{includeDefault:!0}),G(),Ce()}async function Se(){let e=await n(`/api/memory-files`);if(!e)return;let t=document.getElementById(`flushCli`),r=document.getElementById(`flushModel`);t&&e.cli&&(t.value=e.cli),D(r,h[e.cli||document.getElementById(`selCli`)?.value||`claude`]||[],{includeDefault:!0}),r&&e.model&&(O(r,e.model),r.value=e.model),G()}async function Ce(){await t(`/api/memory-files/settings`,`PUT`,{cli:document.getElementById(`flushCli`)?.value||``,model:document.getElementById(`flushModel`)?.value||``})}function G(){let e=document.getElementById(`flushAgentBadge`);if(!e)return;let t=document.getElementById(`flushCli`)?.value||``,n=document.getElementById(`flushModel`)?.value||``,r=t||document.getElementById(`selCli`)?.value||``,i=[];r&&i.push(t?S(r):`${S(r)}*`),n&&n!==`default`&&i.push(n),e.textContent=i.length?`(${i.join(` / `)})`:``}var we=new Set([0,600,1800]),K=0,Te=new Set([`ai-e`,`codex-app`]),Ee={claude:`Currently subscribed, by June with credit`},q=null,De=`cliStatusCollapsed`;function Oe(){try{return localStorage.getItem(De)===`true`}catch{return!1}}function ke(e){try{localStorage.setItem(De,e?`true`:`false`)}catch{}}var J=!Oe();function Ae(){return J}function je(){J=!0;let e=document.getElementById(`cliStatusList`),t=document.getElementById(`cliStatusHeader`);e&&(e.style.display=`block`),t&&t.classList.add(`expanded`),ke(!1),X(!0)}function Me(){let e=document.getElementById(`cliStatusHeader`),t=document.getElementById(`cliStatusList`);!e||!t||(J?(t.style.display=`block`,e.classList.add(`expanded`)):t.style.display=`none`,e.addEventListener(`click`,()=>{J=!J,t.style.display=J?`block`:`none`,e.classList.toggle(`expanded`,J),ke(!J),J&&X(!0)}))}function Y(){let e=Number(localStorage.getItem(`cliStatusInterval`)||K);return we.has(e)?e:K}function Ne(e=Y()){let t=document.getElementById(`cliStatusInterval`);if(!t)return;let n=String(e);t.value=Array.from(t.options).some(e=>e.value===n)?n:String(K)}function Pe(){q!=null&&(window.clearInterval(q),q=null);let e=Y();Ne(e),!(e<=0)&&(q=window.setInterval(()=>{document.hidden||!document.hasFocus()||!J||X(!0)},e*1e3))}function Fe(e){let t=Number(e),n=we.has(t)?t:K;localStorage.setItem(`cliStatusInterval`,String(n)),Ne(n),Pe()}function Ie(e,t){return e===`gemini`?t===`Pro`||t===`P`?`P`:t===`Flash`||t===`F`?`F`:t:e===`copilot`&&(t===`Premium`||t===`Prem`||t.includes(`plus monthly subscriber quota`))?`30d`:t.replace(`-hour`,`h`).replace(`-day`,`d`).replace(` Sonnet`,``).replace(` Opus`,``)}function Le(e,t){if(t.delegatedProvider)return`Delegates quota/status to ${t.delegatedProvider}`;let n=t.quotaSource?.match(/^not-exposed-by-(.*?)-cli$/);return n?`Quota not exposed by ${n[1].toUpperCase()} CLI`:t.quotaSource?t.quotaSource:e===`opencode`?`Auth/status only`:`Usage data not exposed by this CLI`}async function X(t=!1){if(!J&&!t)return;let r=Y();if(!t&&e.cliStatusCache&&r>0&&Date.now()-e.cliStatusTs<r*1e3){Re({cliStatus:e.cliStatusCache?.cliStatus,quota:e.cliStatusCache?.quota});return}let i=document.getElementById(`cliStatusList`);i&&(i.innerHTML=`<div style="color:var(--text-dim);font-size:11px">Loading...</div>`);let[a,o]=await Promise.all([n(`/api/cli-status`),n(`/api/quota`)]);e.cliStatusCache={cliStatus:a,quota:o},e.cliStatusTs=Date.now(),Re({cliStatus:a,quota:o})}function Re(e){let{cliStatus:t,quota:r}=e,l=document.getElementById(`cliStatusList`),u={agy:{install:`curl -fsSL https://antigravity.google/cli/install.sh | bash`,auth:`agy auth is checked by the CLI at run time`},"ai-e":{install:`Install AI-E helper`,auth:`delegates to selected AI-E provider`},claude:{install:`npm i -g @anthropic-ai/claude-code`,auth:`claude auth`},"claude-e":{install:`Install claude-e helper`,auth:`claude auth`},codex:{install:`npm i -g @openai/codex`,auth:`codex login`},"codex-app":{install:`npm i -g @openai/codex`,auth:`codex login`},gemini:{install:`npm i -g @google/gemini-cli`,auth:`gemini (${o(`cli.gemini.auth`)})`},grok:{install:`curl -fsSL https://x.ai/cli/install.sh | bash`,auth:`grok login --oauth`},opencode:{install:`npm i -g opencode-ai`,auth:`opencode auth`},copilot:{install:`npm i -g copilot`,auth:o(`cli.copilot.authHint`)}},d=``;if(!t||typeof t!=`object`){l&&(l.innerHTML=`<div style="color:var(--text-dim);font-size:11px">Failed to load CLI status</div>`);return}for(let[e,n]of Object.entries(t)){let t=r?.[e],l;l=n.available?!t||t.error?`ok`:t.authenticated===!1?`warn`:`ok`:`missing`;let f=``;if(t?.account){let e=[];t.account.email&&e.push(t.account.email),t.account.type&&e.push(t.account.type),t.account.plan&&e.push(t.account.plan),t.account.tier&&e.push(t.account.tier),e.length&&(f=`<div style="font-size:10px;color:var(--text-dim);margin:2px 0 4px 16px">${a(e.join(` · `))}</div>`)}let p=``;if(!n.available||l===`warn`){let t=u[e];if(t){let e=!n.available,r=o(e?`cli.authRequired`:`cli.notAuthenticated`),i=e?`#ef4444`:`#fbbf24`;p=`
|
|
10
|
-
<div style="font-size:10px;margin:4px 0 2px 16px;padding:6px 8px;background:var(--bg-dim, #1e1e2e);border-radius:4px;border-left:2px solid ${i}">
|
|
11
|
-
<div style="color:${i};margin-bottom:3px">${r}</div>
|
|
12
|
-
${e?`<div style="color:var(--text-dim)"><code style="font-size:10px;background:var(--border);padding:1px 4px;border-radius:2px">${a(t.install)}</code></div>`:``}
|
|
13
|
-
<div style="color:var(--text-dim)${e?`;margin-top:2px`:``}"><code style="font-size:10px;background:var(--border);padding:1px 4px;border-radius:2px">${a(t.auth)}</code></div>
|
|
14
|
-
</div>
|
|
15
|
-
`}}let m=``,h=Ee[e];if(!Te.has(e)){if(h&&n.available)m=`
|
|
16
|
-
<div style="font-size:10px;color:var(--text-dim);margin:4px 0 0 16px;padding:5px 7px;background:var(--bg-dim, #1e1e2e);border:1px solid var(--border);border-radius:5px">
|
|
17
|
-
${a(h)}
|
|
18
|
-
</div>
|
|
19
|
-
`;else if(t?.quotaCapable===!1&&t.authenticated!==!1&&n.available){let n=t.sessionUsage,r=n?.contextTokensUsed&&n?.contextWindowTokens?`Session context: ${Math.round(n.contextTokensUsed).toLocaleString()} / ${Math.round(n.contextWindowTokens).toLocaleString()} tokens`:n?.turnCount?`Session turns: ${Math.round(n.turnCount).toLocaleString()}`:``,i=[n?.primaryModelId?`Model: ${n.primaryModelId}`:``,r,Le(e,t)].filter(Boolean).join(` · `);m=`
|
|
20
|
-
<div style="font-size:10px;color:var(--text-dim);margin:4px 0 0 16px;padding:5px 7px;background:var(--bg-dim, #1e1e2e);border:1px solid var(--border);border-radius:5px">
|
|
21
|
-
<div style="color:var(--text);font-weight:600">${a(t.displayTier||c(e))}</div>
|
|
22
|
-
<div style="margin-top:2px">${a(i||`Auth/status only`)}</div>
|
|
23
|
-
</div>
|
|
24
|
-
`}else if(t?.windows?.length)m=t.windows.map(t=>{let n=Math.round(t.percent),r=n>80?`#ef4444`:n>50?`#fbbf24`:`#38bdf8`,i=Ie(e,t.label),o=``;if(t.resetsAt){let e=new Date(typeof t.resetsAt==`number`?t.resetsAt*1e3:t.resetsAt),n=new Date;o=e.toDateString()===n.toDateString()?`${e.getHours()}:${String(e.getMinutes()).padStart(2,`0`)}`:`${e.getMonth()+1}/${e.getDate()}`}return`
|
|
25
|
-
<div style="display:flex;align-items:center;gap:4px;margin-left:16px;font-size:10px;color:var(--text-dim)">
|
|
26
|
-
<span style="min-width:18px;max-width:48px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis">${a(i)}</span>
|
|
27
|
-
<div style="flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden">
|
|
28
|
-
<div style="width:${n}%;height:100%;background:${r};border-radius:2px"></div>
|
|
29
|
-
</div>
|
|
30
|
-
<span style="width:24px;text-align:right">${n}%</span>
|
|
31
|
-
${o?`<span style="width:30px;text-align:right;opacity:0.6">${o}</span>`:``}
|
|
32
|
-
</div>
|
|
33
|
-
`}).join(``);else if(t?.error&&n.available){let e=t.reason===`rate_limited`?`Rate limited — retry in a moment`:`Usage data unavailable`;m=`<div style="font-size:10px;color:var(--text-dim);margin:2px 0 0 16px;opacity:0.7">${i.warning} ${e}</div>`}}d+=`
|
|
34
|
-
<div class="settings-group" style="margin-bottom:6px;padding:8px 10px">
|
|
35
|
-
<div class="cli-status-row">
|
|
36
|
-
<span class="cli-dot ${l}"></span>
|
|
37
|
-
<span class="cli-provider-icon" aria-hidden="true">${s(e)||``}</span>
|
|
38
|
-
<span class="cli-name" style="font-weight:600">${a(c(e))}</span>${e===`copilot`?`<button id="copilotKeychainBtn" style="font-size:9px;margin-left:6px;padding:1px 5px;background:var(--border);color:var(--text-dim);border:1px solid var(--text-dim);border-radius:3px;cursor:pointer;vertical-align:middle;line-height:1" title="${o(`copilot.keychainHint`)}">${i.key}</button>`:``}
|
|
39
|
-
</div>
|
|
40
|
-
${f}
|
|
41
|
-
${p}
|
|
42
|
-
${m}
|
|
43
|
-
</div>
|
|
44
|
-
`}l&&(l.innerHTML=d);let f=Object.entries(t);!f.some(([e,t])=>{if(!t.available)return!1;let n=r?.[e];return!n||n.authenticated!==!1})&&f.length>0&&l&&l.insertAdjacentHTML(`afterbegin`,`<div style="padding:8px 10px;margin-bottom:8px;background:#fbbf2422;border:1px solid #fbbf24;border-radius:6px;font-size:11px;color:#fbbf24">
|
|
45
|
-
${i.warning} ${o(`cli.noReadyCli`)}
|
|
46
|
-
</div>`);let p=document.getElementById(`copilotKeychainBtn`);p&&p.addEventListener(`click`,async()=>{let e=p;e.disabled=!0,e.innerHTML=i.hourglass;try{let t=await n(`/api/copilot/refresh`,{method:`POST`});e.innerHTML=t?.ok?i.check:i.error,t?.ok&&await X(!0)}catch{e.innerHTML=i.error}setTimeout(()=>{e.innerHTML=i.key,e.disabled=!1},2e3)})}function ze(){n(`/api/prompt`).then(e=>{if(!e)return;let t=document.getElementById(`modalPromptEditor`);t&&(t.value=e.content||``),document.getElementById(`promptModal`)?.classList.add(`open`)})}function Be(e){e&&e.target!==e.currentTarget||document.getElementById(`promptModal`)?.classList.remove(`open`)}async function Ve(){await t(`/api/prompt`,`PUT`,{content:document.getElementById(`modalPromptEditor`)?.value||``}),document.getElementById(`promptModal`)?.classList.remove(`open`)}var Z=[],Q=!1;async function He(){let e=await n(`/api/prompt-templates`);e&&(Z=e.templates,Q=!1,Ue(e.tree),$(`tree`),document.getElementById(`templateModal`)?.classList.add(`open`))}function Ue(e){let t=document.getElementById(`templateTree`);if(t){t.innerHTML=``;for(let n of e){let e=document.createElement(`div`);e.style.cssText=`background:var(--bg);border:1px solid var(--accent);border-radius:6px;padding:8px 10px;margin:8px 0 4px;font-size:12px;color:var(--accent);font-weight:600`,e.textContent=`${n.emoji} ${n.label}`,t.appendChild(e);for(let e of n.children){let n=Z.find(t=>t.id===e);if(!n)continue;let r=document.createElement(`div`);r.style.cssText=`background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px 10px;margin:2px 0 2px 24px;font-size:12px;cursor:pointer;transition:border-color .15s`,r.innerHTML=`${i.file} ${a(n.filename)}`,r.addEventListener(`mouseenter`,()=>{r.style.borderColor=`var(--accent2)`}),r.addEventListener(`mouseleave`,()=>{r.style.borderColor=`var(--border)`}),r.addEventListener(`click`,()=>{We(n)}),t.appendChild(r)}}}}function We(e){let t=document.getElementById(`templateEditor`);t.value=e.content,t.dataset.templateId=e.id,t.readOnly=!0,Q=!1;let n=document.getElementById(`templateEditorLabel`);n&&(n.innerHTML=`${i.file} ${a(e.filename)}`);let r=e.content.match(/\{\{[A-Z_]+\}\}/g),o=document.getElementById(`templateVars`);o&&(o.textContent=r?`vars: ${[...new Set(r)].join(`, `)}`:`no variables`);let s=document.getElementById(`templateSaveBtn`);s&&(s.style.display=`none`);let c=document.getElementById(`templateDevToggle`);c&&(c.style.color=`var(--text-dim)`,c.style.borderColor=`var(--border)`,c.innerHTML=`${i.tool} ${u(`devMode`)}`);let l=document.getElementById(`templateModalTitle`);l&&(l.innerHTML=`${i.file} ${a(e.filename)}`),$(`editor`)}function Ge(){if(!Q&&!confirm(u(`promptEditWarning`)))return;Q=!Q;let e=document.getElementById(`templateEditor`);e.readOnly=!Q;let t=document.getElementById(`templateSaveBtn`);t&&(t.style.display=Q?``:`none`);let n=document.getElementById(`templateDevToggle`);n&&(n.style.color=Q?`var(--stop-btn)`:`var(--text-dim)`,n.style.borderColor=Q?`var(--stop-btn)`:`var(--border)`,n.innerHTML=Q?`${i.lockOpen} ${u(`devModeOn`)}`:`${i.tool} ${u(`devMode`)}`)}async function Ke(){let e=document.getElementById(`templateEditor`),n=e.dataset.templateId;if(!n)return;await t(`/api/prompt-templates/${n}`,`PUT`,{content:e.value});let r=document.getElementById(`templateEditorLabel`);r&&(r.innerHTML=`${i.check} ${u(`savedAndReloaded`)}`,setTimeout(()=>{r.innerHTML=`${i.file} ${a(n)}.md`},2e3));let o=Z.find(e=>e.id===n);o&&(o.content=e.value)}function $(e){let t=document.getElementById(`templateTreeView`),n=document.getElementById(`templateEditorView`);t&&(t.style.display=e===`tree`?``:`none`),n&&(n.style.display=e===`editor`?`flex`:`none`);let r=document.getElementById(`templateModalTitle`);r&&e===`tree`&&(r.innerHTML=`${i.plan} ${u(`promptStructure`)}`)}function qe(){$(`tree`)}function Je(e){e&&e.target!==e.currentTarget||document.getElementById(`templateModal`)?.classList.remove(`open`)}export{me as A,ne as B,W as C,_e as D,R as E,oe as F,re as H,ce as I,se as L,pe as M,de as N,he as O,ae as P,le as R,be as S,z as T,g as U,te as V,ve as _,Ve as a,U as b,Ge as c,Ae as d,X as f,B as g,ye as h,He as i,v as j,y as k,je as l,Fe as m,Je as n,Ke as o,Pe as p,ze as r,qe as s,Be as t,Me as u,Se as v,H as w,xe as x,L as y,ee as z};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/vendor-render-Bjnw0wQ6.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{t as e}from"./state-xhhyIPlq.js";import{i as t,t as n}from"./api-tVoG39dL.js";import{t as r}from"./preload-helper-DuH3-WbD.js";import{c as i,g as a,n as o,p as s,y as c}from"./render-o_YEiCEO.js";import{C as ee,E as te,T as ne,c as l,g as u,h as re,i as ie,l as ae,m as d,n as oe,o as se,p as f,r as ce,t as le}from"./ui-C3ArwMhv.js";import{r as p}from"./provider-icons-ClVd2suJ.js";var ue=3e3,m=new Map,h=[],g=(e,t)=>`${e}:${t}`;function _(e=[]){let t=document.getElementById(`pendingQueue`);if(t){if(h=e.slice(),!e.length){b(new Set),t.classList.remove(`visible`),t.innerHTML=``;return}t.classList.add(`visible`),t.innerHTML=`
|
|
3
|
-
<div class="pending-queue-header">
|
|
4
|
-
<span class="pending-queue-title">${i.hourglass} <span data-i18n="queue.pendingTitle">${s(c(`queue.pendingTitle`))}</span> <span class="pending-queue-count">${e.length}</span></span>
|
|
5
|
-
</div>
|
|
6
|
-
<div class="pending-queue-list">
|
|
7
|
-
${e.map(de).join(``)}
|
|
8
|
-
</div>
|
|
9
|
-
`,b(new Set(e.map(e=>e.id))),pe()}}function de(e){let t=(e.prompt||``).replace(/\s+/g,` `).trim(),n=t.length>140?t.slice(0,140)+`…`:t,r=e.source?`<span class="pending-row-source">${s(e.source)}</span>`:``,a=s(c(`queue.steer`)),o=s(c(`queue.delete`));return`<div class="pending-row" data-pending-id="${s(e.id)}" title="${s(t)}">
|
|
10
|
-
<span class="pending-row-text">${s(n)}</span>
|
|
11
|
-
${r}
|
|
12
|
-
<button class="pending-row-btn pending-row-steer" data-pending-action="steer" data-i18n-title="queue.steer" title="${a}" aria-label="${a}"><span class="pending-arm-fill" aria-hidden="true"></span><span class="pending-btn-content"><span class="pending-steer-arrow" aria-hidden="true">↳</span><span class="pending-steer-label">${a}</span></span></button>
|
|
13
|
-
<button class="pending-row-btn pending-row-delete" data-pending-action="delete" data-i18n-title="queue.delete" title="${o}" aria-label="${o}"><span class="pending-arm-fill" aria-hidden="true"></span><span class="pending-btn-content">${i.trash}</span></button>
|
|
14
|
-
</div>`}function v(e,t){let n=document.querySelector(`.pending-row[data-pending-id="${CSS.escape(e)}"]`);return n?n.querySelector(`[data-pending-action="${t}"]`):null}function fe(e,t){let n=v(e,t);if(!n)return;n.classList.add(`armed`),n.setAttribute(`title`,c(`queue.cancelArm`));let r=n.querySelector(`.pending-arm-fill`);r&&(r.style.animation=`none`,r.offsetWidth,r.style.animation=``)}function y(e,t){let n=v(e,t);n&&(n.classList.remove(`armed`),n.setAttribute(`title`,c(t===`steer`?`queue.steer`:`queue.delete`)))}function pe(){for(let e of m.values()){let t=v(e.id,e.action);t&&(t.classList.add(`armed`),t.setAttribute(`title`,c(`queue.cancelArm`)))}}function b(e){for(let[t,n]of m)e.has(n.id)||(clearTimeout(n.timerId),m.delete(t))}function me(e,n){let r=g(e,n),i=setTimeout(()=>ge(e,n),ue);m.set(r,{id:e,action:n,timerId:i}),fe(e,n),n===`steer`&&t(`/api/orchestrate/queue/${encodeURIComponent(e)}/hold`,`POST`,{}).catch(()=>{})}function he(e,n){let r=g(e,n),i=m.get(r);i&&(clearTimeout(i.timerId),m.delete(r),y(e,n),n===`steer`&&t(`/api/orchestrate/queue/${encodeURIComponent(e)}/hold`,`DELETE`,{}).catch(()=>{}))}async function ge(e,n){if(m.delete(g(e,n)),await t(n===`steer`?`/api/orchestrate/queue/${encodeURIComponent(e)}/steer`:`/api/orchestrate/queue/${encodeURIComponent(e)}`,n===`steer`?`POST`:`DELETE`,{})==null){y(e,n);return}h=h.filter(t=>t.id!==e),_(h)}function _e(e,t){if(m.has(g(e,t))){he(e,t);return}me(e,t)}function ve(){let e=document.getElementById(`pendingQueue`);e&&e.addEventListener(`click`,e=>{let t=e.target?.closest(`[data-pending-action]`);if(!t)return;let n=t.closest(`.pending-row`)?.dataset.pendingId;n&&_e(n,t.dataset.pendingAction===`steer`?`steer`:`delete`)})}var ye=800,x=64,be=`CLI-JAW`,S=!1,C=0,w=be,T=null,E=``,D=!1,O=0;function xe(){return navigator}function Se(){return document.visibilityState!==`visible`||!document.hasFocus()}function Ce(e){return e-O<ye}function we(){if(T)return T;let e=document.querySelector(`link[rel~="icon"]`);if(e)return T=e,E=e.href||e.getAttribute(`href`)||``,e;let t=document.createElement(`link`);return t.rel=`icon`,document.head.appendChild(t),T=t,D=!0,t}function Te(e){let t=document.createElement(`canvas`);t.width=x,t.height=x;let n=t.getContext(`2d`);return n?(n.clearRect(0,0,x,x),n.font=`44px "Apple Color Emoji", "Segoe UI Emoji", sans-serif`,n.textAlign=`center`,n.textBaseline=`middle`,n.fillText(`🦈`,28,36),n.beginPath(),n.arc(50,15,e>1?12:9,0,Math.PI*2),n.fillStyle=`#ff335f`,n.fill(),n.lineWidth=4,n.strokeStyle=`#ffffff`,n.stroke(),e>1&&(n.fillStyle=`#ffffff`,n.font=`bold 15px sans-serif`,n.textAlign=`center`,n.textBaseline=`middle`,n.fillText(String(Math.min(e,9)),50,16)),t.toDataURL(`image/png`)):E}async function Ee(e){let t=xe();if(typeof t.setAppBadge==`function`)try{await t.setAppBadge(e)}catch{}}async function De(){let e=xe();if(typeof e.clearAppBadge==`function`)try{await e.clearAppBadge()}catch{}}function Oe(){document.title=`(${C}) ${w}`;let e=we();e&&(e.href=Te(C)),Ee(C)}function ke(){document.title=w}function Ae(){if(T){if(D){T.remove(),T=null,D=!1;return}T.href=E}}function je(){S||(S=!0,w=document.title||be,we(),document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&k()}),window.addEventListener(`focus`,()=>k()))}function Me(){if(!S||!Se())return;let e=Date.now();Ce(e)||(O=e,C+=1,Oe())}function k(){!S||C===0||(C=0,O=0,ke(),Ae(),De())}function Ne(e,t){return!e||!t?!0:e===`all`||e===t}var A=[`P`,`A`,`B`,`C`],j=null;function M(e,t,n){let r=A.indexOf(n);if(r<0)return;let i=e.getBoundingClientRect(),a=t.offsetWidth||36,o=document.getElementById(`dot-${n}`);if(!o)return;let s=A[r+1],c=s?document.getElementById(`dot-${s}`):null;if(c){let e=o.getBoundingClientRect(),n=c.getBoundingClientRect(),r=(e.right+n.left)/2;t.style.left=r-i.left-a/2+`px`}else{let e=o.getBoundingClientRect();t.style.left=e.left-i.left+e.width/2-a/2+`px`}}var N={},P=``,F=0,I=null,L=0,R=!1,z=0,Pe=750,Fe=750;async function B(e={}){let t=await(await fetch(`${n}/api/orchestrate/snapshot`)).json();P=String(t.orc.scope||``),G(t.orc.state),W(t.orc.ctx||null),U(t.heartbeat||{pending:0,deferredPending:0}),Re(t.workers),d(t.runtime.queuePending),oe(t.queued||[]),_(t.queued||[]),e.hydrateRun&&se(t.activeRun),f(t.runtime.busy?`running`:`idle`),t.runtime.busy&&t.activeRun?.cli===`agy`&&l(`${p(t.activeRun.cli)} working...`),r(()=>import(`./employees-BmxY8Mw3.js`).then(e=>{typeof e.renderEmployees==`function`&&e.renderEmployees()}),__vite__mapDeps([0]))}function V(e=`manual`,t={}){let n=Date.now();return t.hydrateRun?B(t):I||(n-L<Pe?Promise.resolve():(L=n,I=B(t).catch(t=>{throw console.warn(`[ws] orchestrate snapshot sync failed (${e})`,t),t}).finally(()=>{I=null}),I))}function Ie(e){ne(e),V(e,{hydrateRun:!0}).finally(()=>{ee(e)}).catch(()=>{})}function H(e){let t=Date.now();e!==`discard`&&t-z<Fe||(z=t,Ie(e))}function Le(){R||(R=!0,window.addEventListener(`focus`,()=>{H(`focus`)}),window.addEventListener(`pageshow`,e=>{e.persisted&&H(`pageshow`)}),document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&H(`visibilitychange`)}),document.addEventListener(`resume`,()=>{H(`resume`)}),`wasDiscarded`in document&&document.wasDiscarded&&H(`discard`),window.addEventListener(`message`,e=>{e.data?.type===`jaw-preview-visibility`&&e.data.visible&&H(`iframe-visible`)}))}function Re(e){for(let e of Object.keys(N))delete N[e];for(let t of e)t.state===`running`&&t.phase&&(N[t.agentId]={phase:t.phase,phaseLabel:t.phaseLabel||``})}function U(t){let n={pending:Number(t?.pending||0),deferredPending:Number(t?.deferredPending||0),...t?.reason?{reason:t.reason}:{},...t?.policy?{policy:t.policy}:{},...t?.jobId?{jobId:t.jobId}:{},...t?.jobName?{jobName:t.jobName}:{}};e.heartbeatRuntime=n;let r=document.getElementById(`pabcHeartbeatStatus`);if(r)if(n.reason===`pabcd_active`&&n.deferredPending>0){let e=n.jobName?`: ${n.jobName}`:``;r.textContent=`heartbeat deferred (${n.deferredPending})${e}`,r.hidden=!1}else r.textContent=``,r.hidden=!0}function W(t){e.orcTaskAnchor=String(t?.taskAnchor||``).trim(),e.orcResolvedSelection=t?.resolvedSelection||null;let n=document.getElementById(`pabcTaskAnchor`);n&&(e.orcTaskAnchor?(n.textContent=`anchor: ${e.orcResolvedSelection?.index?`${e.orcResolvedSelection.index}. `:``}${e.orcTaskAnchor}`,n.hidden=!1):(n.textContent=``,n.hidden=!0))}function G(t,n){let r=new Set([`IDLE`,`P`,`A`,`B`,`C`,`D`]).has(t)?t:`IDLE`;if(e.orcState=r,r===`IDLE`||r===`D`)document.body.removeAttribute(`data-orc-state`),document.body.style.removeProperty(`--orc-glow`);else{document.body.setAttribute(`data-orc-state`,r);let e=`--orc-glow-${r}`,t=getComputedStyle(document.documentElement).getPropertyValue(e).trim();document.body.style.setProperty(`--orc-glow`,t)}document.body.classList.add(`orc-pulse`),setTimeout(()=>document.body.classList.remove(`orc-pulse`),700);let i=document.getElementById(`orcStateBadge`);i&&(i.textContent={IDLE:``,P:`PLAN`,A:`AUDIT`,B:`BUILD`,C:`CHECK`,D:`DONE`}[r],i.style.display=r===`IDLE`?`none`:`inline-block`);let a=document.getElementById(`pabcRoadmap`),o=document.getElementById(`sharkRunner`),s=document.getElementById(`pabcBrand`);if(a&&o){if(!a.dataset.resizeObserved){a.dataset.resizeObserved=`1`,new ResizeObserver(()=>{j&&o.classList.contains(`running`)&&M(a,o,j)}).observe(a);let e=0;window.addEventListener(`resize`,()=>{cancelAnimationFrame(e),e=requestAnimationFrame(()=>{j&&o.classList.contains(`running`)&&M(a,o,j)})})}if(r===`IDLE`)a.classList.remove(`visible`,`shimmer-out`),o.classList.remove(`running`),j=null;else if(r===`D`){A.forEach(e=>{let t=document.getElementById(`dot-${e}`);t&&(t.className=`pabc-dot done`,t.setAttribute(`data-phase`,e))});for(let e=0;e<4;e++){let t=document.getElementById(`pabc-conn-${e}`);t&&(t.className=`pabc-connector done`)}o.classList.remove(`running`),j=null,a.classList.add(`shimmer-out`),setTimeout(()=>a.classList.remove(`visible`,`shimmer-out`),1e3)}else{a.classList.remove(`shimmer-out`),a.classList.add(`visible`),o.classList.add(`running`);let e=A.indexOf(r);A.forEach((t,n)=>{let r=document.getElementById(`dot-${t}`);r&&(r.className=`pabc-dot ${n<e?`done`:n===e?`active`:`future`}`,r.setAttribute(`data-phase`,t))});for(let t=0;t<4;t++){let n=document.getElementById(`pabc-conn-${t}`);n&&(n.className=`pabc-connector ${t<e?`done`:``}`)}j=r,requestAnimationFrame(()=>M(a,o,r))}s&&n&&(s.textContent=n)}}function K(){Le();let t=`ws://${location.host}`;e.ws=new WebSocket(`${t}${n}/?lang=${a()}`),e.ws.onmessage=e=>{let t;try{t=JSON.parse(e.data)}catch{console.warn(`[ws] malformed message:`,e.data);return}if(!t||typeof t!=`object`||typeof t.type!=`string`){console.warn(`[ws] invalid message shape:`,t);return}if(t.type===`agent_status`)t.running===void 0?(f(t.status||`idle`),t.status===`running`&&t.cli===`agy`&&l(`${p(t.cli)} working...`)):(f(t.running?`running`:`idle`),t.running&&t.cli===`agy`&&l(`${p(t.cli)} working...`)),t.agentId&&t.phase&&(N[t.agentId]={phase:t.phase,phaseLabel:t.phaseLabel||``},r(()=>import(`./employees-BmxY8Mw3.js`).then(e=>e.loadEmployees()),__vite__mapDeps([0])));else if(t.type===`queue_update`)d(t.pending||0),V(`queue_update`).catch(()=>{});else if(t.type===`worklog_created`)u(`${i.clipboard} Worklog: ${s(t.path||``)}`);else if(t.type===`round_start`){let e=t.agentPhases||t.subtasks||[],n=e.map(e=>s(e.agent||e.name||``)).join(`, `);u(c(`ws.roundStart`,{round:t.round||0,count:e.length,names:n}))}else if(t.type===`round_done`)t.action===`complete`?u(c(`ws.roundDone`,{round:t.round||0})):t.action===`next`?u(c(`ws.roundNext`,{round:t.round||0})):u(c(`ws.roundRetry`,{round:t.round||0}));else if(t.type===`agent_tool`){let e=t.toolType===`thinking`?`thinking`:t.toolType===`search`?`search`:t.toolType===`subagent`?`subagent`:`tool`;ae({id:`step-${Date.now()}-${Math.random().toString(36).slice(2,6)}`,type:e,icon:t.icon||i.tool,rawIcon:t.rawIcon||t.icon||``,label:t.label||``,isEmployee:t.isEmployee===!0,detail:t.detail||``,stepRef:t.stepRef||``,traceRunId:t.traceRunId||``,traceSeq:t.traceSeq,detailAvailable:t.detailAvailable,detailBytes:t.detailBytes,rawRetentionStatus:t.rawRetentionStatus,status:t.status||`running`,startTime:Date.now()})}else if(t.type===`agent_output`)le(t.text||``);else if(t.type===`agent_retry`){let e=Number(t.delay??0),n=t.reason,r=s(String(n||`429`));u(c(e>0?`ws.retry`:`ws.retryNow`,{cli:s(t.cli||``),reason:r,delay:e}),`tool-activity`)}else if(t.type===`agent_fallback`)u(c(`ws.fallback`,{from:s(t.from||``),to:s(t.to||``)}),`tool-activity`);else if(t.type===`agent_smoke`)u(`${i.warning} ${s(t.cli||`agent`)}: smoke response detected — auto-continuing`,`tool-activity`);else if(t.type===`agent_done`)ie(t.text||``,t.toolLog),Me();else if(t.type===`orchestrate_done`)ie(t.text||``),Me();else if(t.type===`clear`){o(),ce(),te().clear();let e=document.getElementById(`chatMessages`);e&&(e.innerHTML=``),r(()=>import(`./idb-cache-BnZfG5FD.js`).then(e=>e.clearCache()),[]).catch(()=>{})}else if(t.type===`session_reset`)u(`${i.refresh} Session reset — history preserved`,`tool-activity`);else if(t.type===`agent_added`||t.type===`agent_updated`||t.type===`agent_deleted`)r(()=>import(`./employees-BmxY8Mw3.js`).then(e=>e.loadEmployees()),__vite__mapDeps([0]));else if(t.type===`heartbeat_pending`){let e={pending:t.pending||0,deferredPending:t.deferredPending||0};t.reason!==void 0&&(e.reason=t.reason),t.policy!==void 0&&(e.policy=t.policy),t.jobId!==void 0&&(e.jobId=t.jobId),t.jobName!==void 0&&(e.jobName=t.jobName),U(e)}else if(t.type===`orc_state`){if(!Ne(t.scope,P))return;G(typeof t.state==`string`?t.state:`IDLE`,t.title),W({taskAnchor:t.taskAnchor||null,resolvedSelection:t.resolvedSelection||null})}else t.type===`memory_status`?r(()=>import(`./memory-BqqibBIE.js`).then(e=>e.refreshMemorySidebar()),__vite__mapDeps([0])):t.type===`new_message`&&(t.source===`telegram`||t.source===`discord`||t.fromQueue===!0)&&re(t.role===`assistant`?`agent`:t.role||`user`,t.content||``,t.cli)},e.ws.onopen=()=>{console.log(`[ws] connected`);let e=Date.now()-F<1e4;r(()=>import(`./ui-CboUuc_E.js`).then(async t=>{if(t.cleanupToolActivity(),!e)try{await t.loadMessages(),F=Date.now()}catch(e){console.error(`[ws] loadMessages failed`,e)}V(`reconnect`,{hydrateRun:!0}).catch(()=>{}).finally(()=>t.reconcileChatBottomAfterRestore(`reconnect`))}),__vite__mapDeps([0]))},e.ws.onclose=()=>{console.log(`[ws] disconnected, reconnecting in 2s...`),r(()=>import(`./ui-CboUuc_E.js`).then(e=>e.cleanupToolActivity()),__vite__mapDeps([0])),f(`idle`),u(`${i.exec} ${c(`ws.disconnected`)}`,`tool-activity`),setTimeout(K,2e3)}}function ze(e){return N[e]||null}var q=`sidebarState`,J=900,Be=768;function Y(){return window.innerWidth<=Be}function X(){document.body.classList.remove(`left-expanded`,`right-expanded`)}function Ve(e){let t=`${e}-expanded`,n=e===`left`?`right-expanded`:`left-expanded`,r=!document.body.classList.contains(t);document.body.classList.remove(n),document.body.classList.toggle(t,r)}function He(){let e={};try{e=JSON.parse(localStorage.getItem(q)||`{}`)}catch{}e.left&&document.body.classList.add(`left-collapsed`),e.right&&document.body.classList.add(`right-collapsed`);let t=Y();document.getElementById(`toggleLeft`)?.addEventListener(`click`,Ue),document.getElementById(`toggleRight`)?.addEventListener(`click`,We),window.addEventListener(`resize`,()=>{let e=Y();if(window.innerWidth>J){X();let e={};try{e=JSON.parse(localStorage.getItem(q)||`{}`)}catch{}document.body.classList.toggle(`left-collapsed`,!!e.left),document.body.classList.toggle(`right-collapsed`,!!e.right)}else document.body.classList.remove(`left-collapsed`,`right-collapsed`),e!==t&&X();t=e,$()}),window.innerWidth<=J&&(document.body.classList.remove(`left-collapsed`,`right-collapsed`),Y()&&X()),$()}function Z(){return window.innerWidth<=J}function Ue(){Z()?Ve(`left`):document.body.classList.toggle(`left-collapsed`),Ke(),$()}function We(){Z()?Ve(`right`):document.body.classList.toggle(`right-collapsed`),Q()&&document.getElementById(`tabAgents`)?.classList.contains(`active`)&&r(()=>import(`./employees-BmxY8Mw3.js`).then(e=>e.loadEmployees(!0)),__vite__mapDeps([0])),Ke(),$()}function Ge(){return Z()?document.body.classList.contains(`left-expanded`):!document.body.classList.contains(`left-collapsed`)}function Q(){return Z()?document.body.classList.contains(`right-expanded`):!document.body.classList.contains(`right-collapsed`)}function $(){let e=document.getElementById(`toggleLeft`),t=document.getElementById(`toggleRight`);e&&(e.innerHTML=Ge()?i.chevronLeft:i.chevronRight),t&&(t.innerHTML=Q()?i.chevronRight:i.chevronLeft)}function Ke(){localStorage.setItem(q,JSON.stringify({left:document.body.classList.contains(`left-collapsed`),right:document.body.classList.contains(`right-collapsed`)}))}export{K as a,k as c,We as i,je as l,Q as n,ze as o,Ue as r,V as s,He as t,ve as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./skills-DbRVI-zf.js";export{e as loadSkills};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./slash-commands-C2YBMaQV.js";export{e as loadCommands};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./api-tVoG39dL.js";import{p as t,y as n}from"./render-o_YEiCEO.js";import{t as r}from"./locale-DT1WRaeJ.js";var i=[],a=[],o=-1,s=!1,c=null;function l(e){let t=String(e||``).slice(1).trim().split(/\s+/)[0]||``;return t.includes(`/`)||t.includes(`\\`)}var u=()=>document.getElementById(`cmdDropdown`),d=()=>document.getElementById(`chatInput`);function f(e){let t=String(e||``).toLowerCase();return i.filter(e=>`/${e.name}`.startsWith(t))}function p(){let e=u(),t=d();!e||!t||(c&&=(clearTimeout(c),null),e.style.display=`block`,requestAnimationFrame(()=>e.classList.add(`visible`)),s=!0,t.setAttribute(`aria-expanded`,`true`))}function m(){let e=u(),r=d();if(!e||!r)return;if(!a.length){if(!r.value.startsWith(`/`)||l(r.value)){_();return}e.innerHTML=`
|
|
2
|
-
<div class="cmd-item cmd-empty" role="option" aria-disabled="true">
|
|
3
|
-
${n(`cmd.noMatch`)}
|
|
4
|
-
</div>
|
|
5
|
-
`,p(),r.setAttribute(`aria-activedescendant`,``);return}e.innerHTML=a.map((e,n)=>{let r=n===o;return`<div class="cmd-item${r?` selected`:``}"
|
|
6
|
-
role="option"
|
|
7
|
-
id="cmd-item-${n}"
|
|
8
|
-
aria-selected="${r}"
|
|
9
|
-
data-index="${n}">
|
|
10
|
-
<span class="cmd-name">/${t(e.name)}</span>
|
|
11
|
-
<span class="cmd-desc">${t(e.desc)}</span>
|
|
12
|
-
${e.args?`<span class="cmd-args">${t(e.args)}</span>`:``}
|
|
13
|
-
</div>`}).join(``),p(),r.setAttribute(`aria-activedescendant`,o>=0?`cmd-item-${o}`:``);let i=e.querySelector(`.selected`);i&&i.scrollIntoView({block:`nearest`})}function h(e){let t=a[o],n=d();if(!t||!n){_();return}if(_(),t.args||!e){n.value=`/${t.name} `,n.focus(),n.selectionStart=n.selectionEnd=n.value.length;return}n.value=`/${t.name}`,n.dispatchEvent(new Event(`cmd-execute`,{bubbles:!0}))}async function g(){try{let t=r();i=await e(`/api/commands?interface=web&locale=${encodeURIComponent(t)}`,{headers:{"Accept-Language":t}})||[]}catch(e){console.warn(`[slash-commands] loadCommands failed:`,e.message),i=[]}}function _(){let e=u();c&&=(clearTimeout(c),null),e&&(e.classList.remove(`visible`),c=setTimeout(()=>{e.classList.contains(`visible`)||(e.style.display=`none`,e.innerHTML=``)},150)),s=!1,o=-1,a=[];let t=d();t&&(t.setAttribute(`aria-expanded`,`false`),t.setAttribute(`aria-activedescendant`,``))}function v(e){let t=String(e||``);if(!t.startsWith(`/`)||t.includes(` `)||t.includes(`
|
|
14
|
-
`)||l(t)){_();return}a=f(t),o=a.length?0:-1,m()}function y(e){return s?a.length?e.key===`ArrowDown`?(e.preventDefault(),o=Math.min(a.length-1,o+1),m(),!0):e.key===`ArrowUp`?(e.preventDefault(),o=Math.max(0,o-1),m(),!0):e.key===`Tab`?(e.preventDefault(),h(!1),!0):e.key===`Enter`&&!e.shiftKey&&!e.isComposing?(e.preventDefault(),h(!0),!0):e.key===`Escape`?(e.preventDefault(),_(),!0):!1:e.key===`Escape`?(e.preventDefault(),_(),!0):!1:(e.key===`ArrowDown`||e.key===`ArrowUp`)&&!e.isComposing?(v(d()?.value||``),s?(o=e.key===`ArrowUp`?a.length-1:0,m(),e.preventDefault(),!0):!1):!1}function b(e){let t=e.target.closest(`.cmd-item`);if(!t)return;let n=parseInt(t.dataset.index||`-1`,10);Number.isNaN(n)||n<0||(o=Math.min(n,a.length-1),h(!0))}function x(e){if(!s)return;let t=u(),n=d();if(!t||!n)return;let r=e.target;!t.contains(r)&&r!==n&&_()}export{g as a,x as i,b as n,v as o,y as r,_ as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./chunk-AGHRB4JF-CYdXVA2-.js";import"./chunk-CSCIHK7Q-CAE1p4Em.js";import"./chunk-5ZQYHXKU-Bli4k6GI.js";import"./chunk-O5CBEL6O-D-jDqsN2.js";import"./chunk-BSJP7CBP-B47GpxcW.js";import"./chunk-L5ZTLDWV-DfUlBdXN.js";import"./chunk-55IACEB6-DhWWzzdj.js";import"./chunk-2J33WTMH-xiPJWKcl.js";import"./chunk-NZK2D7GU-CTqFQ8K5.js";import"./chunk-3OPIFGDE-DixnEkZw.js";import"./chunk-KSCS5N6A-Beq1s5eO.js";import"./chunk-LZXEDZCA-B_yP4UKw.js";import{i as t,n,r,t as i}from"./chunk-AQP2D5EJ-Co6ucdGq.js";var a={parser:n,get db(){return new i(2)},renderer:r,styles:t,init:e(e=>{e.state||={},e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-NNHCCRGN-BaiX9a5F.js";import{n as e}from"./chunk-WCWK7LTN-CGvUyB8h.js";export{e as createTreeViewServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-NNHCCRGN-BaiX9a5F.js";import{n as e}from"./chunk-BR22UD5L-CVuYkAd1.js";export{e as createTreemapServices};
|