cli-jaw 2.1.1 → 2.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ja.md +8 -6
- package/README.ko.md +8 -6
- package/README.md +12 -6
- package/README.zh-CN.md +8 -6
- package/dist/bin/cli-jaw.js +5 -1
- package/dist/bin/cli-jaw.js.map +1 -1
- package/dist/bin/commands/browser.js +1 -1
- package/dist/bin/commands/browser.js.map +1 -1
- package/dist/bin/commands/chat.js +98 -58
- package/dist/bin/commands/chat.js.map +1 -1
- package/dist/bin/commands/dispatch.js +130 -5
- package/dist/bin/commands/dispatch.js.map +1 -1
- package/dist/bin/commands/goal.js +18 -6
- package/dist/bin/commands/goal.js.map +1 -1
- package/dist/bin/commands/orchestrate.js.map +1 -1
- package/dist/bin/commands/tui/fullscreen-mode.js +237 -0
- package/dist/bin/commands/tui/fullscreen-mode.js.map +1 -0
- package/dist/bin/commands/tui/input-handler.js +139 -52
- package/dist/bin/commands/tui/input-handler.js.map +1 -1
- package/dist/bin/commands/tui/overlays.js +177 -70
- package/dist/bin/commands/tui/overlays.js.map +1 -1
- package/dist/bin/commands/tui/renderer.js +70 -20
- package/dist/bin/commands/tui/renderer.js.map +1 -1
- package/dist/bin/commands/tui/simple-mode.js +1 -1
- package/dist/bin/commands/tui/simple-mode.js.map +1 -1
- package/dist/bin/commands/tui/tui-io.js +8 -0
- package/dist/bin/commands/tui/tui-io.js.map +1 -0
- package/dist/bin/commands/tui/types.js +9 -0
- package/dist/bin/commands/tui/types.js.map +1 -1
- package/dist/bin/commands/tui/ws-handler.js +115 -23
- package/dist/bin/commands/tui/ws-handler.js.map +1 -1
- package/dist/bin/commands/worker.js +159 -0
- package/dist/bin/commands/worker.js.map +1 -0
- package/dist/bin/postinstall.js +0 -76
- package/dist/bin/postinstall.js.map +1 -1
- package/dist/lib/mcp/format-converters.js +21 -2
- package/dist/lib/mcp/format-converters.js.map +1 -1
- package/dist/lib/mcp/mcp-registry.js +75 -0
- package/dist/lib/mcp/mcp-registry.js.map +1 -0
- package/dist/lib/stt.js +1 -1
- package/dist/lib/stt.js.map +1 -1
- package/dist/scripts/fresh-install-smoke.js +1 -1
- package/dist/scripts/fresh-install-smoke.js.map +1 -1
- package/dist/server.js +27 -6
- package/dist/server.js.map +1 -1
- package/dist/src/agent/args.js +33 -1
- package/dist/src/agent/args.js.map +1 -1
- package/dist/src/agent/claude-e-runtime.js +1 -1
- package/dist/src/agent/claude-e-runtime.js.map +1 -1
- package/dist/src/agent/codex-app-client.js +1 -1
- package/dist/src/agent/error-classifier.js +6 -1
- package/dist/src/agent/error-classifier.js.map +1 -1
- package/dist/src/agent/events/claude.js +1 -0
- package/dist/src/agent/events/claude.js.map +1 -1
- package/dist/src/agent/events/codex.js +0 -44
- package/dist/src/agent/events/codex.js.map +1 -1
- package/dist/src/agent/events/helpers.js +52 -5
- package/dist/src/agent/events/helpers.js.map +1 -1
- package/dist/src/agent/events/opencode.js +6 -2
- package/dist/src/agent/events/opencode.js.map +1 -1
- package/dist/src/agent/events/summary.js +3 -2
- package/dist/src/agent/events/summary.js.map +1 -1
- package/dist/src/agent/events/tool-labels.js +8 -5
- package/dist/src/agent/events/tool-labels.js.map +1 -1
- package/dist/src/agent/kiro-auth.js +213 -0
- package/dist/src/agent/kiro-auth.js.map +1 -0
- package/dist/src/agent/kiro-models.js +79 -0
- package/dist/src/agent/kiro-models.js.map +1 -0
- package/dist/src/agent/kiro-runtime.js +306 -0
- package/dist/src/agent/kiro-runtime.js.map +1 -0
- package/dist/src/agent/lifecycle-handler.js +190 -12
- package/dist/src/agent/lifecycle-handler.js.map +1 -1
- package/dist/src/agent/memory-flush-controller.js +1 -3
- package/dist/src/agent/memory-flush-controller.js.map +1 -1
- package/dist/src/agent/resume-classifier.js +18 -1
- package/dist/src/agent/resume-classifier.js.map +1 -1
- package/dist/src/agent/session-persistence.js +1 -1
- package/dist/src/agent/session-persistence.js.map +1 -1
- package/dist/src/agent/smoke-detector.js +3 -0
- package/dist/src/agent/smoke-detector.js.map +1 -1
- package/dist/src/agent/spawn/queue.js +10 -4
- package/dist/src/agent/spawn/queue.js.map +1 -1
- package/dist/src/agent/spawn/resume.js +6 -1
- package/dist/src/agent/spawn/resume.js.map +1 -1
- package/dist/src/agent/spawn-env.js +1 -1
- package/dist/src/agent/spawn-env.js.map +1 -1
- package/dist/src/agent/spawn.js +188 -28
- package/dist/src/agent/spawn.js.map +1 -1
- package/dist/src/browser/web-ai/grok-live.js +2 -0
- package/dist/src/browser/web-ai/grok-live.js.map +1 -1
- package/dist/src/cli/claude-models.js +2 -2
- package/dist/src/cli/claude-models.js.map +1 -1
- package/dist/src/cli/commands.js +3 -2
- package/dist/src/cli/commands.js.map +1 -1
- package/dist/src/cli/handlers-runtime.js +2 -0
- package/dist/src/cli/handlers-runtime.js.map +1 -1
- package/dist/src/cli/handlers-workflows.js +9 -4
- package/dist/src/cli/handlers-workflows.js.map +1 -1
- package/dist/src/cli/handlers.js +47 -7
- package/dist/src/cli/handlers.js.map +1 -1
- package/dist/src/cli/readiness.js +17 -1
- package/dist/src/cli/readiness.js.map +1 -1
- package/dist/src/cli/registry-live.js +17 -0
- package/dist/src/cli/registry-live.js.map +1 -0
- package/dist/src/cli/registry.js +44 -3
- package/dist/src/cli/registry.js.map +1 -1
- package/dist/src/cli/tui/composer.js +135 -5
- package/dist/src/cli/tui/composer.js.map +1 -1
- package/dist/src/cli/tui/diffview.js +41 -0
- package/dist/src/cli/tui/diffview.js.map +1 -0
- package/dist/src/cli/tui/editor.js +45 -0
- package/dist/src/cli/tui/editor.js.map +1 -0
- package/dist/src/cli/tui/file-mention.js +78 -0
- package/dist/src/cli/tui/file-mention.js.map +1 -0
- package/dist/src/cli/tui/highlight.js +82 -0
- package/dist/src/cli/tui/highlight.js.map +1 -0
- package/dist/src/cli/tui/keymap.js +21 -0
- package/dist/src/cli/tui/keymap.js.map +1 -1
- package/dist/src/cli/tui/markdown.js +124 -0
- package/dist/src/cli/tui/markdown.js.map +1 -0
- package/dist/src/cli/tui/mode.js +26 -0
- package/dist/src/cli/tui/mode.js.map +1 -0
- package/dist/src/cli/tui/overlay.js +121 -98
- package/dist/src/cli/tui/overlay.js.map +1 -1
- package/dist/src/cli/tui/render/frame.js +72 -0
- package/dist/src/cli/tui/render/frame.js.map +1 -0
- package/dist/src/cli/tui/render/layout.js +22 -0
- package/dist/src/cli/tui/render/layout.js.map +1 -0
- package/dist/src/cli/tui/render/mouse.js +25 -0
- package/dist/src/cli/tui/render/mouse.js.map +1 -0
- package/dist/src/cli/tui/render/scheduler.js +37 -0
- package/dist/src/cli/tui/render/scheduler.js.map +1 -0
- package/dist/src/cli/tui/render/viewport.js +82 -0
- package/dist/src/cli/tui/render/viewport.js.map +1 -0
- package/dist/src/cli/tui/renderers.js +37 -0
- package/dist/src/cli/tui/renderers.js.map +1 -1
- package/dist/src/cli/tui/stream.js +48 -0
- package/dist/src/cli/tui/stream.js.map +1 -0
- package/dist/src/cli/tui/text-buffer.js +143 -0
- package/dist/src/cli/tui/text-buffer.js.map +1 -0
- package/dist/src/cli/tui/theme.js +128 -0
- package/dist/src/cli/tui/theme.js.map +1 -0
- package/dist/src/cli/tui/transcript.js +4 -0
- package/dist/src/cli/tui/transcript.js.map +1 -1
- package/dist/src/command-contract/help-renderer.js +1 -1
- package/dist/src/command-contract/help-renderer.js.map +1 -1
- package/dist/src/core/cli-detection.js +14 -0
- package/dist/src/core/cli-detection.js.map +1 -1
- package/dist/src/core/config.js +5 -0
- package/dist/src/core/config.js.map +1 -1
- package/dist/src/core/db.js +7 -0
- package/dist/src/core/db.js.map +1 -1
- package/dist/src/core/employees.js +2 -2
- package/dist/src/core/employees.js.map +1 -1
- package/dist/src/discord/bot.js.map +1 -1
- package/dist/src/discord/discord-file.js +1 -1
- package/dist/src/discord/discord-file.js.map +1 -1
- package/dist/src/discord/send-only-client.js +1 -3
- package/dist/src/discord/send-only-client.js.map +1 -1
- package/dist/src/goal/heartbeat.js +30 -7
- package/dist/src/goal/heartbeat.js.map +1 -1
- package/dist/src/goal/store.js +6 -2
- package/dist/src/goal/store.js.map +1 -1
- package/dist/src/ide/diff.js +37 -0
- package/dist/src/ide/diff.js.map +1 -1
- package/dist/src/manager/launchd-service.js +1 -1
- package/dist/src/manager/launchd-service.js.map +1 -1
- package/dist/src/manager/lifecycle-helpers.js +14 -0
- package/dist/src/manager/lifecycle-helpers.js.map +1 -1
- package/dist/src/manager/lifecycle.js +49 -4
- package/dist/src/manager/lifecycle.js.map +1 -1
- package/dist/src/manager/notes/routes.js +0 -31
- package/dist/src/manager/notes/routes.js.map +1 -1
- package/dist/src/manager/notes/ws.js.map +1 -1
- package/dist/src/manager/registry.js.map +1 -1
- package/dist/src/manager/routes/dashboard-memory.js.map +1 -1
- package/dist/src/manager/scan.js +36 -1
- package/dist/src/manager/scan.js.map +1 -1
- package/dist/src/manager/server.js +21 -2
- package/dist/src/manager/server.js.map +1 -1
- package/dist/src/manager/systemd-service.js +1 -1
- package/dist/src/manager/systemd-service.js.map +1 -1
- package/dist/src/memory/keyword-expand.js +0 -187
- package/dist/src/memory/keyword-expand.js.map +1 -1
- package/dist/src/memory/runtime.js +2 -2
- package/dist/src/memory/runtime.js.map +1 -1
- package/dist/src/memory/shared.js.map +1 -1
- package/dist/src/orchestrator/collect.js +3 -2
- package/dist/src/orchestrator/collect.js.map +1 -1
- package/dist/src/orchestrator/distribute.js +7 -1
- package/dist/src/orchestrator/distribute.js.map +1 -1
- package/dist/src/orchestrator/friction.js +59 -0
- package/dist/src/orchestrator/friction.js.map +1 -0
- package/dist/src/orchestrator/pipeline.js +88 -45
- package/dist/src/orchestrator/pipeline.js.map +1 -1
- package/dist/src/orchestrator/sanitize.js +19 -0
- package/dist/src/orchestrator/sanitize.js.map +1 -0
- package/dist/src/orchestrator/seed.js +50 -0
- package/dist/src/orchestrator/seed.js.map +1 -0
- package/dist/src/orchestrator/state-machine.js +206 -74
- package/dist/src/orchestrator/state-machine.js.map +1 -1
- package/dist/src/orchestrator/worker-monitor.js +1 -1
- package/dist/src/orchestrator/worker-monitor.js.map +1 -1
- package/dist/src/orchestrator/worker-progress.js +29 -0
- package/dist/src/orchestrator/worker-progress.js.map +1 -0
- package/dist/src/orchestrator/worker-registry.js +63 -2
- package/dist/src/orchestrator/worker-registry.js.map +1 -1
- package/dist/src/prompt/builder.js +19 -29
- package/dist/src/prompt/builder.js.map +1 -1
- package/dist/src/prompt/templates/a1-system.md +40 -5
- package/dist/src/prompt/templates/control-system.md +2 -2
- package/dist/src/prompt/templates/employee.md +4 -1
- package/dist/src/prompt/templates/orchestration.md +23 -8
- package/dist/src/routes/employees.js +4 -4
- package/dist/src/routes/employees.js.map +1 -1
- package/dist/src/routes/goal.js +11 -3
- package/dist/src/routes/goal.js.map +1 -1
- package/dist/src/routes/heartbeat.js +1 -1
- package/dist/src/routes/heartbeat.js.map +1 -1
- package/dist/src/routes/i18n.js +1 -1
- package/dist/src/routes/i18n.js.map +1 -1
- package/dist/src/routes/jaw-memory.js +1 -1
- package/dist/src/routes/jaw-memory.js.map +1 -1
- package/dist/src/routes/memory.js.map +1 -1
- package/dist/src/routes/messaging.js.map +1 -1
- package/dist/src/routes/orchestrate.js +265 -116
- package/dist/src/routes/orchestrate.js.map +1 -1
- package/dist/src/routes/quota-agy-reverse.js +0 -5
- package/dist/src/routes/quota-agy-reverse.js.map +1 -1
- package/dist/src/routes/quota-kiro-reverse.js +187 -0
- package/dist/src/routes/quota-kiro-reverse.js.map +1 -0
- package/dist/src/routes/settings.js +31 -2
- package/dist/src/routes/settings.js.map +1 -1
- package/dist/src/routes/skills.js.map +1 -1
- package/dist/src/security/security-audit-log.js.map +1 -1
- package/dist/src/shared/shell-command-display.js +51 -0
- package/dist/src/shared/shell-command-display.js.map +1 -0
- package/dist/src/telegram/bot.js.map +1 -1
- package/dist/src/trace/store.js +32 -0
- package/dist/src/trace/store.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/workflows/employee-boundary.js +7 -7
- package/dist/src/workflows/employee-boundary.js.map +1 -1
- package/dist/src/workflows/handoff.js +16 -16
- package/dist/src/workflows/handoff.js.map +1 -1
- package/dist/src/workflows/scope-sandbox.js +46 -0
- package/dist/src/workflows/scope-sandbox.js.map +1 -0
- package/package.json +1 -1
- package/public/assets/providers/kiro-color.svg +15 -0
- package/public/assets/providers/kiro.svg +14 -0
- package/public/css/modals.css +79 -0
- package/public/css/sidebar.css +85 -0
- package/public/css/variables.css +2 -2
- package/public/dist/assets/{Agent-CIUGaUVn.js → Agent-DkH7eoHd.js} +1 -1
- package/public/dist/assets/{DocPanel-C1pGgE-S.js → DocPanel-BU16GUlB.js} +1 -1
- package/public/dist/assets/DocPanel-gU-WkgyA.css +1 -0
- package/public/dist/assets/Employees-F0ssNuO-.js +1 -0
- package/public/dist/assets/Heartbeat-C3JS6gkF.js +1 -0
- package/public/dist/assets/Mcp-_Yq4N3Sk.js +4 -0
- package/public/dist/assets/{Memory-BgN8djV4.js → Memory-C-EQubN2.js} +1 -1
- package/public/dist/assets/{ModelProvider-DHQ1Zvw0.js → ModelProvider-BD2KrypI.js} +1 -1
- package/public/dist/assets/agent-meta-B1098B_a.js +1 -0
- package/public/dist/assets/app-ByHYOMZE.js +48 -0
- package/public/dist/assets/app-CYdhP6Vh.css +1 -0
- package/public/dist/assets/constants-s2UJodER.js +1 -0
- package/public/dist/assets/{employees-DiNLzEXS.js → employees-_A-p_bZg.js} +7 -7
- package/public/dist/assets/idb-cache-0LNMskFB.js +1 -0
- package/public/dist/assets/idb-cache-5H89a4l8.js +1 -0
- package/public/dist/assets/{manager-DyrwJLZr.css → manager-B2qEQRxN.css} +1 -1
- package/public/dist/assets/manager-CR9BA-wO.js +12 -0
- package/public/dist/assets/memory-D1RKYvyu.js +1 -0
- package/public/dist/assets/{memory-B_nn0A4v.js → memory-D9AUn8fG.js} +9 -9
- package/public/dist/assets/{provider-icons-XEfJPGTe.js → provider-icons-CVVK5xUP.js} +35 -6
- package/public/dist/assets/{render-CgDEBoCX.js → render-DFBujF8n.js} +4 -4
- package/public/dist/assets/settings-B4ZkeaU-.js +1 -0
- package/public/dist/assets/settings-D9jTceN0.js +151 -0
- package/public/dist/assets/sidebar-DPPRNiTc.js +48 -0
- package/public/dist/assets/skills-8nHJkv-r.js +1 -0
- package/public/dist/assets/{skills-COa4iSwL.js → skills-BDVLIrVT.js} +6 -6
- package/public/dist/assets/{slash-commands-C_ePvrPi.js → slash-commands-C5da3q1p.js} +1 -1
- package/public/dist/assets/slash-commands-RJWO8wJZ.js +1 -0
- package/public/dist/assets/{trace-drawer-CY4z_Ie8.js → trace-drawer-5kqBzFMk.js} +1 -1
- package/public/dist/assets/ui-Crnp79bG.js +142 -0
- package/public/dist/assets/ui-HtSKByR3.js +1 -0
- package/public/dist/index.html +113 -86
- package/public/dist/manager/index.html +2 -2
- package/public/index.html +111 -84
- package/public/js/constants.ts +30 -7
- package/public/js/features/chat-search.ts +5 -1
- package/public/js/features/employees.ts +7 -2
- package/public/js/features/idb-cache.ts +4 -0
- package/public/js/features/message-history.ts +55 -7
- package/public/js/features/pending-queue.ts +8 -2
- package/public/js/features/process-block.ts +32 -17
- package/public/js/features/process-log-adapter.ts +11 -2
- package/public/js/features/settings-cli-status-render.ts +163 -0
- package/public/js/features/settings-cli-status.ts +130 -185
- package/public/js/features/settings-core.ts +5 -1
- package/public/js/features/settings-mcp.ts +513 -7
- package/public/js/features/settings.ts +1 -1
- package/public/js/features/tool-ui.ts +18 -4
- package/public/js/features/transport-status-row.ts +3 -0
- package/public/js/main.ts +3 -0
- package/public/js/preview-parent-origin.ts +14 -0
- package/public/js/provider-icons.ts +6 -1
- package/public/js/render/file-links.ts +10 -2
- package/public/js/ui.ts +5 -2
- package/public/js/virtual-scroll.ts +19 -0
- package/public/js/ws.ts +133 -8
- package/public/locales/en.json +8 -2
- package/public/locales/ja.json +8 -2
- package/public/locales/ko.json +8 -2
- package/public/locales/zh.json +8 -2
- package/public/manager/src/App.tsx +13 -70
- package/public/manager/src/InstancePreview.tsx +36 -11
- package/public/manager/src/SidebarRailRouter.tsx +1 -1
- package/public/manager/src/doc-panel/DocPanel.tsx +14 -1
- package/public/manager/src/doc-panel/doc-panel.css +16 -0
- package/public/manager/src/hooks/useInstanceMessageEvents.ts +4 -15
- package/public/manager/src/manager-components.css +1 -1
- package/public/manager/src/manager-polish.css +1 -1
- package/public/manager/src/manager-shortcut-runner.ts +107 -0
- package/public/manager/src/manager-shortcuts.ts +15 -0
- package/public/manager/src/panels/desktop-bridge.ts +2 -0
- package/public/manager/src/settings/SettingsSidebar.tsx +1 -1
- package/public/manager/src/settings/components/sidebar-filter.ts +2 -0
- package/public/manager/src/settings/pages/Mcp.tsx +311 -43
- package/public/manager/src/settings/pages/components/McpServerCard.tsx +89 -55
- package/public/manager/src/settings/pages/components/agent/agent-meta.ts +29 -6
- 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/pages/mcp-helpers.ts +54 -12
- package/public/manager/src/settings/types.ts +1 -0
- package/public/manager/src/types.ts +2 -1
- package/scripts/fresh-install-smoke.ts +1 -1
- package/public/dist/assets/DocPanel-CL1scIfq.css +0 -1
- package/public/dist/assets/Employees-BL9MAzzx.js +0 -1
- package/public/dist/assets/Heartbeat-D64JCg4t.js +0 -1
- package/public/dist/assets/Mcp-wYwJA_61.js +0 -3
- package/public/dist/assets/agent-meta-BhEbjy4P.js +0 -1
- package/public/dist/assets/app-2Rz848bQ.js +0 -48
- package/public/dist/assets/app-BW-Xz2p6.css +0 -1
- package/public/dist/assets/constants-ahKI_aEG.js +0 -1
- package/public/dist/assets/idb-cache-BnZfG5FD.js +0 -1
- package/public/dist/assets/idb-cache-CZ3JdK8r.js +0 -1
- package/public/dist/assets/manager-CfyZloIP.js +0 -12
- package/public/dist/assets/memory-CCjNFWmO.js +0 -1
- package/public/dist/assets/settings-CY_6tGuS.js +0 -1
- package/public/dist/assets/settings-DWW4GzNc.js +0 -66
- package/public/dist/assets/sidebar-DQKE5IA1.js +0 -23
- package/public/dist/assets/skills-DYTlqoke.js +0 -1
- package/public/dist/assets/slash-commands-D7CU5oso.js +0 -1
- package/public/dist/assets/ui-Car1OUvV.js +0 -1
- package/public/dist/assets/ui-DK_9ndj0.js +0 -140
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
// ─── Worker Registry ────────────────────────────────
|
|
2
2
|
// In-memory registry tracking worker ownership and result handoff.
|
|
3
3
|
import { stripUndefined } from '../core/strip-undefined.js';
|
|
4
|
+
import { previewText, sanitizeWorkerProgressTools, } from './worker-progress.js';
|
|
4
5
|
const workers = new Map();
|
|
6
|
+
const previousRuns = new Map();
|
|
5
7
|
// Phase 7: thrown when a worker slot with the same agentId is already running.
|
|
6
8
|
// Prevents double-dispatch from overwriting the in-flight slot and losing results.
|
|
7
9
|
export class WorkerBusyError extends Error {
|
|
@@ -31,6 +33,8 @@ export function claimWorker(emp, task, replayMeta) {
|
|
|
31
33
|
replayClaimed: false,
|
|
32
34
|
replayAttempts: 0,
|
|
33
35
|
result: null,
|
|
36
|
+
tools: [],
|
|
37
|
+
progressUpdatedAt: null,
|
|
34
38
|
replayMeta: replayMeta && Object.keys(replayMeta).length ? { ...replayMeta } : undefined,
|
|
35
39
|
});
|
|
36
40
|
workers.set(emp.id, slot);
|
|
@@ -46,13 +50,42 @@ export function updateWorkerPhase(agentId, phase, phaseLabel) {
|
|
|
46
50
|
slot.phase = phase;
|
|
47
51
|
slot.phaseLabel = phaseLabel;
|
|
48
52
|
}
|
|
49
|
-
|
|
53
|
+
function toProgressRun(slot) {
|
|
54
|
+
const resultPreview = previewText(slot.result, 240);
|
|
55
|
+
return {
|
|
56
|
+
agentId: slot.agentId,
|
|
57
|
+
employeeName: slot.employeeName,
|
|
58
|
+
state: slot.state,
|
|
59
|
+
taskPreview: previewText(slot.task, 200) || '',
|
|
60
|
+
startedAt: slot.startedAt,
|
|
61
|
+
completedAt: slot.completedAt,
|
|
62
|
+
progressUpdatedAt: slot.progressUpdatedAt,
|
|
63
|
+
...(resultPreview ? { resultPreview } : {}),
|
|
64
|
+
tools: slot.tools,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
function rememberCompletedRun(slot) {
|
|
68
|
+
if (slot.state === 'running')
|
|
69
|
+
return;
|
|
70
|
+
previousRuns.set(slot.agentId, toProgressRun(slot));
|
|
71
|
+
}
|
|
72
|
+
export function updateWorkerTools(agentId, tools) {
|
|
73
|
+
const slot = workers.get(agentId);
|
|
74
|
+
if (!slot)
|
|
75
|
+
return;
|
|
76
|
+
slot.tools = sanitizeWorkerProgressTools(tools);
|
|
77
|
+
slot.progressUpdatedAt = Date.now();
|
|
78
|
+
}
|
|
79
|
+
export function finishWorker(agentId, result, tools = []) {
|
|
50
80
|
const slot = workers.get(agentId);
|
|
51
81
|
if (!slot)
|
|
52
82
|
return;
|
|
53
83
|
slot.state = 'done';
|
|
54
84
|
slot.completedAt = Date.now();
|
|
55
85
|
slot.result = result;
|
|
86
|
+
if (tools.length > 0)
|
|
87
|
+
updateWorkerTools(agentId, tools);
|
|
88
|
+
rememberCompletedRun(slot);
|
|
56
89
|
slot.pendingReplay = true;
|
|
57
90
|
}
|
|
58
91
|
export function failWorker(agentId, result) {
|
|
@@ -62,6 +95,7 @@ export function failWorker(agentId, result) {
|
|
|
62
95
|
slot.state = 'failed';
|
|
63
96
|
slot.completedAt = Date.now();
|
|
64
97
|
slot.result = result;
|
|
98
|
+
rememberCompletedRun(slot);
|
|
65
99
|
slot.pendingReplay = false; // Failed workers don't need replay — no result to feed back to Boss
|
|
66
100
|
}
|
|
67
101
|
export function cancelWorker(agentId) {
|
|
@@ -71,8 +105,28 @@ export function cancelWorker(agentId) {
|
|
|
71
105
|
slot.state = 'cancelled';
|
|
72
106
|
slot.completedAt = Date.now();
|
|
73
107
|
slot.pendingReplay = false;
|
|
108
|
+
rememberCompletedRun(slot);
|
|
74
109
|
workers.delete(agentId);
|
|
75
110
|
}
|
|
111
|
+
export function getWorkerProgressSnapshot(agentId) {
|
|
112
|
+
const slot = workers.get(agentId);
|
|
113
|
+
const previous = previousRuns.get(agentId) || null;
|
|
114
|
+
if (!slot && !previous)
|
|
115
|
+
return null;
|
|
116
|
+
return {
|
|
117
|
+
agentId,
|
|
118
|
+
employeeName: slot?.employeeName || previous?.employeeName || agentId,
|
|
119
|
+
current: slot?.state === 'running' ? toProgressRun(slot) : null,
|
|
120
|
+
previous: slot && slot.state !== 'running' ? toProgressRun(slot) : previous,
|
|
121
|
+
generatedAt: Date.now(),
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
export function listWorkerProgressSnapshots() {
|
|
125
|
+
const ids = new Set([...workers.keys(), ...previousRuns.keys()]);
|
|
126
|
+
return [...ids]
|
|
127
|
+
.map(getWorkerProgressSnapshot)
|
|
128
|
+
.filter((value) => Boolean(value));
|
|
129
|
+
}
|
|
76
130
|
export function getActiveWorkers() {
|
|
77
131
|
return [...workers.values()].filter((slot) => slot.state === 'running');
|
|
78
132
|
}
|
|
@@ -94,7 +148,12 @@ export function listPendingWorkerResults() {
|
|
|
94
148
|
const results = [];
|
|
95
149
|
for (const slot of workers.values()) {
|
|
96
150
|
if (slot.state === 'done' && slot.pendingReplay && !slot.replayClaimed && slot.result !== null) {
|
|
97
|
-
results.push(stripUndefined({
|
|
151
|
+
results.push(stripUndefined({
|
|
152
|
+
agentId: slot.agentId,
|
|
153
|
+
text: slot.result,
|
|
154
|
+
tools: slot.tools.length > 0 ? slot.tools : undefined,
|
|
155
|
+
meta: slot.replayMeta,
|
|
156
|
+
}));
|
|
98
157
|
}
|
|
99
158
|
}
|
|
100
159
|
return results;
|
|
@@ -125,9 +184,11 @@ export function releaseWorkerReplay(agentId) {
|
|
|
125
184
|
console.error(`[worker-registry] ${agentId} replay failed 3 times — marking as failed`);
|
|
126
185
|
slot.state = 'failed';
|
|
127
186
|
slot.pendingReplay = false;
|
|
187
|
+
rememberCompletedRun(slot);
|
|
128
188
|
}
|
|
129
189
|
}
|
|
130
190
|
export function clearAllWorkers() {
|
|
131
191
|
workers.clear();
|
|
192
|
+
previousRuns.clear();
|
|
132
193
|
}
|
|
133
194
|
//# sourceMappingURL=worker-registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-registry.js","sourceRoot":"","sources":["../../../src/orchestrator/worker-registry.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,mEAAmE;AAEnE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"worker-registry.js","sourceRoot":"","sources":["../../../src/orchestrator/worker-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ import { stripUndefined } from '../core/strip-undefined.js';
|
|
|
8
8
|
import { getEmployees } from '../core/db.js';
|
|
9
9
|
import { memoryFlushCounter } from '../agent/spawn.js';
|
|
10
10
|
import { describeHeartbeatSchedule, normalizeHeartbeatSchedule } from '../memory/heartbeat-schedule.js';
|
|
11
|
-
import { buildTaskSnapshot,
|
|
11
|
+
import { buildTaskSnapshot, loadProfileSummary } from '../memory/runtime.js';
|
|
12
12
|
import { buildMemoryInjection } from '../memory/injection.js';
|
|
13
13
|
import { loadAndRender, loadTemplate, renderTemplate, parseWorkerContexts, clearTemplateCache } from './template-loader.js';
|
|
14
14
|
import { findStaticEmployee } from '../core/employees.js';
|
|
@@ -148,6 +148,8 @@ const DESKTOP_CONTROL_ANCHOR_OPEN = '<!-- anchor:desktop-control -->';
|
|
|
148
148
|
const DESKTOP_CONTROL_ANCHOR_CLOSE = '<!-- /anchor:desktop-control -->';
|
|
149
149
|
const DASHBOARD_CONNECTOR_ANCHOR_OPEN = '<!-- anchor:dashboard-connector-intent -->';
|
|
150
150
|
const DASHBOARD_CONNECTOR_ANCHOR_CLOSE = '<!-- /anchor:dashboard-connector-intent -->';
|
|
151
|
+
const SESSION_POLL_ANCHOR_OPEN = '<!-- anchor:session-poll -->';
|
|
152
|
+
const SESSION_POLL_ANCHOR_CLOSE = '<!-- /anchor:session-poll -->';
|
|
151
153
|
function extractAnchorBlock(rendered, open, close) {
|
|
152
154
|
const start = rendered.indexOf(open);
|
|
153
155
|
const end = rendered.indexOf(close);
|
|
@@ -164,14 +166,6 @@ function appendAnchorIfMissing(fileContent, rendered, open, close) {
|
|
|
164
166
|
const sep = fileContent.endsWith('\n') ? '\n' : '\n\n';
|
|
165
167
|
return fileContent + sep + block + '\n';
|
|
166
168
|
}
|
|
167
|
-
/**
|
|
168
|
-
* Extract the Desktop/Browser Control anchor block from the rendered A1
|
|
169
|
-
* template. Returns null when the template lacks the anchor pair (keeps
|
|
170
|
-
* future refactors from silently producing empty appends).
|
|
171
|
-
*/
|
|
172
|
-
function extractDesktopControlAnchor(rendered) {
|
|
173
|
-
return extractAnchorBlock(rendered, DESKTOP_CONTROL_ANCHOR_OPEN, DESKTOP_CONTROL_ANCHOR_CLOSE);
|
|
174
|
-
}
|
|
175
169
|
/**
|
|
176
170
|
* Safely append the Desktop/Browser Control anchor block to a user-edited
|
|
177
171
|
* A1 file when the anchor is missing. Returns true when an append was made.
|
|
@@ -182,6 +176,9 @@ function ensureDesktopControlAnchor(fileContent, rendered) {
|
|
|
182
176
|
function ensureDashboardConnectorAnchor(fileContent, rendered) {
|
|
183
177
|
return appendAnchorIfMissing(fileContent, rendered, DASHBOARD_CONNECTOR_ANCHOR_OPEN, DASHBOARD_CONNECTOR_ANCHOR_CLOSE);
|
|
184
178
|
}
|
|
179
|
+
function ensureSessionPollAnchor(fileContent, rendered) {
|
|
180
|
+
return appendAnchorIfMissing(fileContent, rendered, SESSION_POLL_ANCHOR_OPEN, SESSION_POLL_ANCHOR_CLOSE);
|
|
181
|
+
}
|
|
185
182
|
// ─── Initialize prompt files ─────────────────────────
|
|
186
183
|
export function initPromptFiles() {
|
|
187
184
|
const a1Content = getA1Content();
|
|
@@ -217,7 +214,12 @@ export function initPromptFiles() {
|
|
|
217
214
|
userText = appendedConnector;
|
|
218
215
|
console.log('[prompt] A-1.md: appended dashboard-connector-intent anchor (user edits preserved)');
|
|
219
216
|
}
|
|
220
|
-
|
|
217
|
+
const appendedSessionPoll = ensureSessionPollAnchor(userText, a1Content);
|
|
218
|
+
if (appendedSessionPoll) {
|
|
219
|
+
userText = appendedSessionPoll;
|
|
220
|
+
console.log('[prompt] A-1.md: appended session-poll anchor (user edits preserved)');
|
|
221
|
+
}
|
|
222
|
+
if (appendedDesktop || appendedConnector || appendedSessionPoll) {
|
|
221
223
|
fs.writeFileSync(A1_PATH, userText);
|
|
222
224
|
}
|
|
223
225
|
else {
|
|
@@ -335,21 +337,6 @@ function appendLegacyMemoryContext(prompt) {
|
|
|
335
337
|
catch { /* memory not ready */ }
|
|
336
338
|
return next;
|
|
337
339
|
}
|
|
338
|
-
function appendAdvancedMemoryContext(prompt, currentPrompt, providedSnapshot = '') {
|
|
339
|
-
let next = prompt;
|
|
340
|
-
const profile = loadProfileSummary(800);
|
|
341
|
-
const snapshot = providedSnapshot || buildTaskSnapshot(currentPrompt, 2800);
|
|
342
|
-
next += '\n\n---\n## Memory Runtime\n';
|
|
343
|
-
next += '- indexed memory context is active\n';
|
|
344
|
-
next += '- use task snapshot and profile context before assuming missing memory\n';
|
|
345
|
-
if (profile) {
|
|
346
|
-
next += '\n\n## Profile Context\n' + profile;
|
|
347
|
-
}
|
|
348
|
-
if (snapshot) {
|
|
349
|
-
next += '\n\n' + snapshot;
|
|
350
|
-
}
|
|
351
|
-
return next;
|
|
352
|
-
}
|
|
353
340
|
export function shouldIncludeVisionClickHint(activeCli) {
|
|
354
341
|
return activeCli === 'codex';
|
|
355
342
|
}
|
|
@@ -360,7 +347,6 @@ export function getSystemPrompt(opts = {}) {
|
|
|
360
347
|
let prompt = `${a1}\n\n${a2}`;
|
|
361
348
|
const currentPrompt = String(opts.currentPrompt || '').trim();
|
|
362
349
|
const forDisk = opts.forDisk === true;
|
|
363
|
-
const mem = getMemoryStatus();
|
|
364
350
|
// Phase 15: Telegram guidance is now part of A1_CONTENT (hardcoded)
|
|
365
351
|
// No dynamic injection needed — Bot-First policy with curl examples included
|
|
366
352
|
if (!forDisk) {
|
|
@@ -525,12 +511,16 @@ export function getEmployeePrompt(emp) {
|
|
|
525
511
|
return renderTemplate(loadTemplate('employee.md'), vars);
|
|
526
512
|
}
|
|
527
513
|
// ─── Employee Prompt v2 (orchestration phase-aware) ──
|
|
528
|
-
export function getEmployeePromptV2(emp, role, currentPhase) {
|
|
514
|
+
export function getEmployeePromptV2(emp, role, currentPhase, opts) {
|
|
529
515
|
const phase = Number(currentPhase);
|
|
530
|
-
const cacheKey = `${emp.id || emp.name}:${role}:${phase}:${settings["workingDir"] || '~'}`;
|
|
516
|
+
const cacheKey = `${emp.id || emp.name}:${role}:${phase}:${settings["workingDir"] || '~'}:${opts?.mutable ? 'mut' : 'ro'}:${opts?.scope || ''}`;
|
|
531
517
|
if (promptCache.has(cacheKey))
|
|
532
518
|
return promptCache.get(cacheKey);
|
|
533
519
|
let prompt = getEmployeePrompt(emp);
|
|
520
|
+
// --mutable: override the hard read-only block in employee.md
|
|
521
|
+
if (opts?.mutable) {
|
|
522
|
+
prompt = prompt.replace(/- ⛔ Do NOT create, modify, or delete files\..*/, `- ✅ You are authorized to create or modify files${opts.scope ? ` inside \`${opts.scope}\`` : ''}. Protected paths (.git, .env, settings.json) remain blocked.`);
|
|
523
|
+
}
|
|
534
524
|
// Static-employee system prompt patch (Control etc.) injected near the top
|
|
535
525
|
// so role-specific guidance downstream can still override style/tone.
|
|
536
526
|
const staticSpec = findStaticEmployee(emp?.name || '');
|
|
@@ -641,7 +631,7 @@ export function getEmployeePromptV2(emp, role, currentPhase) {
|
|
|
641
631
|
prompt += `\n- Report results clearly with specific file paths and line numbers`;
|
|
642
632
|
prompt += `\n- Your process cwd may be an isolated temporary directory. Do NOT treat process.cwd() as the repository root.`;
|
|
643
633
|
prompt += `\n- Use the task's ## Workspace Context block as the source of truth for Project root and Devlog root.`;
|
|
644
|
-
prompt += `\n- Resolve relative repository paths against Project root, and
|
|
634
|
+
prompt += `\n- Resolve relative repository paths against Project root, and always use absolute paths in commands and reports.`;
|
|
645
635
|
prompt += `\n\n## Delegation Rules`;
|
|
646
636
|
prompt += `\n- Execute the assigned task directly in this employee session.`;
|
|
647
637
|
prompt += `\n- You CAN use CLI sub-agents (Task/Agent tool) for parallel work: research, file reads, code analysis. This is encouraged.`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/prompt/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClI,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAmB,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AACxG,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC5H,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,mBAAmB,IAAI,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAEvF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;AAE9B,SAAS,uBAAuB,CAAC,GAAG,KAAe;IAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAe;IAC1C,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACrD,CAAC;AAED,wDAAwD;AACxD,qFAAqF;AACrF,gEAAgE;AAChE,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACnC,kCAAkC,EAAE,kBAAkB;IACtD,kCAAkC,EAAE,oBAAoB;IACxD,kCAAkC,EAAE,iBAAiB;IACrD,kCAAkC,EAAE,oBAAoB;IACxD,kCAAkC,EAAE,kBAAkB;IACtD,kCAAkC,EAAE,kBAAkB;CACzD,CAAC,CAAC;AAEH,wDAAwD;AAExD,SAAS,wBAAwB,CAAC,OAAe;IAC7C,OAAO,OAAO;SACT,UAAU,CAAC,QAAQ,EAAE,cAAc,CAAC;SACpC,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;AAC7D,CAAC;AAID,MAAM,UAAU,wBAAwB,CAAC,IAIxC;IACG,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,CAAC,iBAAiB;QAAE,OAAO,wBAAwB,CAAC;IACxF,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAAE,OAAO,wBAAwB,CAAC;IACzF,OAAO,sBAAsB,CAAC;AAClC,CAAC;AAED,wDAAwD;AAExD,mDAAmD;AACnD,MAAM,UAAU,gBAAgB;IAC5B,IAAI,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,OAAO,EAAE,CAAC;QAC1C,OAAO,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aACrD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAClE,GAAG,CAAC,CAAC,CAAC,EAAE;YACL,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;gBAAE,OAAO,IAAI,CAAC;YACxC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAClE,OAAO;gBACH,EAAE,EAAE,CAAC,CAAC,IAAI;gBACV,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI;gBACtC,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;gBACzC,OAAO;aACV,CAAC;QACN,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC;IAAC,CAAC;AAC1B,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,iBAAiB;IAC7B,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;QACtD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,EAAE,CAAC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAgB,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5F,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC;IAAC,CAAC;AAC1B,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,eAAe;IAC3B,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAChC,MAAM,MAAM,GAAG,EAAE,CAAC;IAElB,+BAA+B;IAC/B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC;YACR,EAAE,EAAE,CAAE,CAAC,EAAE;YACT,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,CAAE,CAAC,IAAI;YAC9B,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS;YACtC,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS;YACtC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;YAC7B,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,WAAW;YAC1C,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,CAAE,CAAC,WAAW;YACnD,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS;YACtC,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,SAAS;YACtC,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI;YACnC,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI;YACjC,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,CAAE,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;SACpF,CAAC,CAAC;IACP,CAAC;IAED,sCAAsC;IACtC,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC;gBACR,GAAG,CAAC;gBACJ,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,KAAK;aAChB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,wDAAwD;AAExD,iDAAiD;AACjD,SAAS,eAAe;IACpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC;AAC3D,CAAC;AAED,4CAA4C;AAC5C,SAAS,YAAY;IACjB,OAAO,aAAa,CAAC,cAAc,EAAE,eAAe,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,2CAA2C;AAC3C,SAAS,YAAY;IACjB,OAAO,YAAY,CAAC,eAAe,CAAC,CAAC;AACzC,CAAC;AAED,kDAAkD;AAClD,SAAS,mBAAmB;IACxB,OAAO,YAAY,CAAC,sBAAsB,CAAC,CAAC;AAChD,CAAC;AAED,wDAAwD;AAExD,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AACnD,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AACnD,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;AAEhE,MAAM,2BAA2B,GAAG,iCAAiC,CAAC;AACtE,MAAM,4BAA4B,GAAG,kCAAkC,CAAC;AACxE,MAAM,+BAA+B,GAAG,4CAA4C,CAAC;AACrF,MAAM,gCAAgC,GAAG,6CAA6C,CAAC;AAEvF,SAAS,kBAAkB,CAAC,QAAgB,EAAE,IAAY,EAAE,KAAa;IACrE,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,KAAK,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IAC5D,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,qBAAqB,CAC1B,WAAmB,EACnB,QAAgB,EAChB,IAAY,EACZ,KAAa;IAEb,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,KAAK,GAAG,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACxD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IACvD,OAAO,WAAW,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,SAAS,2BAA2B,CAAC,QAAgB;IACjD,OAAO,kBAAkB,CAAC,QAAQ,EAAE,2BAA2B,EAAE,4BAA4B,CAAC,CAAC;AACnG,CAAC;AAED;;;GAGG;AACH,SAAS,0BAA0B,CAAC,WAAmB,EAAE,QAAgB;IACrE,OAAO,qBAAqB,CACxB,WAAW,EACX,QAAQ,EACR,2BAA2B,EAC3B,4BAA4B,CAC/B,CAAC;AACN,CAAC;AAED,SAAS,8BAA8B,CAAC,WAAmB,EAAE,QAAgB;IACzE,OAAO,qBAAqB,CACxB,WAAW,EACX,QAAQ,EACR,+BAA+B,EAC/B,gCAAgC,CACnC,CAAC;AACN,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,eAAe;IAC3B,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;IACnC,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,gBAAgB;QAChB,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACrC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC5C,CAAC;SAAM,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3D,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAC5B,mDAAmD;YACnD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC1F,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzB,sCAAsC;gBACtC,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACrC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACJ,mEAAmE;gBACnE,iEAAiE;gBACjE,IAAI,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAChD,MAAM,eAAe,GAAG,0BAA0B,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;gBACxE,IAAI,eAAe,EAAE,CAAC;oBAClB,QAAQ,GAAG,eAAe,CAAC;oBAC3B,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;gBAC3F,CAAC;gBACD,MAAM,iBAAiB,GAAG,8BAA8B,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;gBAC9E,IAAI,iBAAiB,EAAE,CAAC;oBACpB,QAAQ,GAAG,iBAAiB,CAAC;oBAC7B,OAAO,CAAC,GAAG,CAAC,oFAAoF,CAAC,CAAC;gBACtG,CAAC;gBACD,IAAI,eAAe,IAAI,iBAAiB,EAAE,CAAC;oBACvC,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;gBAC9D,CAAC;gBACD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,yEAAyE;QACzE,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,kBAAkB,GAAG,UAAU,CAAC,KAAK,CAAC;aACvC,MAAM,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC;aAC7C,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,MAAM,iBAAiB,GAAG,UAAU,CAAC,KAAK,CAAC;aACtC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;aACpC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,MAAM,MAAM,GAAG,wBAAwB,CAAC;YACpC,kBAAkB;YAClB,iBAAiB;YACjB,iBAAiB,EAAE,sBAAsB;SAC5C,CAAC,CAAC;QACH,IAAI,MAAM,KAAK,wBAAwB,EAAE,CAAC;YACtC,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YACrC,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACJ,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACtE,CAAC;IACL,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;IACvE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC;QAAE,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,mBAAmB,EAAE,CAAC,CAAC;AAChG,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,YAAY;IACxB,MAAM,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAChF,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,kBAAkB;IAC9B,IAAI,CAAC;QACD,MAAM,WAAW,GAAG,KAAK,CAAC;QAC1B,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACrF,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACzF,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBACvB,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,WAAW;oBAAE,MAAM;gBAClD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACpB,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC;YAC9B,CAAC;YACD,IAAI,SAAS,IAAI,WAAW;gBAAE,MAAM;QACxC,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,CAAC,MAAM,aAAa,SAAS,QAAQ,CAAC,CAAC;QACjG,CAAC;QACD,OAAO,OAAO,CAAC,MAAM;YACjB,CAAC,CAAC,uCAAuC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAChG,CAAC,CAAC,EAAE,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC;IAAC,CAAC;AAC1B,CAAC;AAED,wDAAwD;AAExD,SAAS,yBAAyB,CAAC,MAAc;IAC7C,IAAI,IAAI,GAAG,MAAM,CAAC;IAClB,IAAI,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,IAAI,EAAE,CAAC;QACvD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QAChD,qEAAqE;QACrE,6CAA6C;QAC7C,MAAM,YAAY,GAAG,kBAAkB,GAAG,CAAC,IAAI,kBAAkB,GAAG,cAAc,KAAK,CAAC,CAAC;QACzF,IAAI,YAAY,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;YACtC,IAAI,QAAQ,EAAE,CAAC;gBACX,IAAI,IAAI,QAAQ,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,0BAA0B,kBAAkB,WAAW,cAAc,GAAG,CAAC,CAAC;YAC1F,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,mCAAmC,kBAAkB,IAAI,SAAS,cAAc,cAAc,GAAG,CAAC,CAAC;QACnH,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;QACtC,IAAI,QAAQ;YAAE,IAAI,IAAI,QAAQ,CAAC;IACnC,CAAC;IAED,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YACxD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;gBACjC,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI;oBACnC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,qDAAqD;oBAChF,CAAC,CAAC,OAAO,CAAC;gBACd,IAAI,IAAI,2BAA2B,GAAG,SAAS,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,8BAA8B,SAAS,CAAC,MAAM,QAAQ,CAAC,CAAC;YACxE,CAAC;QACL,CAAC;IACL,CAAC;IAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;IAElC,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAc,EAAE,aAAqB,EAAE,gBAAgB,GAAG,EAAE;IAC7F,IAAI,IAAI,GAAG,MAAM,CAAC;IAClB,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,gBAAgB,IAAI,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAC5E,IAAI,IAAI,8BAA8B,CAAC;IACvC,IAAI,IAAI,sCAAsC,CAAC;IAC/C,IAAI,IAAI,0EAA0E,CAAC;IACnF,IAAI,OAAO,EAAE,CAAC;QACV,IAAI,IAAI,0BAA0B,GAAG,OAAO,CAAC;IACjD,CAAC;IACD,IAAI,QAAQ,EAAE,CAAC;QACX,IAAI,IAAI,MAAM,GAAG,QAAQ,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,SAAyB;IAClE,OAAO,SAAS,KAAK,OAAO,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAmG,EAAE;IACjI,uEAAuE;IACvE,MAAM,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;IACtF,MAAM,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,IAAI,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC;IAC9B,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;IACtC,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;IAE9B,oEAAoE;IACpE,6EAA6E;IAE7E,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,oBAAoB,CAAC,cAAc,CAAC;YACjD,IAAI,EAAE,MAAM;YACZ,aAAa;YACb,gBAAgB,EAAE,IAAI,CAAC,cAAc;SACxC,CAAC,CAAC,CAAC;QACJ,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,MAAM,IAAI,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;QACrC,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;YAC3C,MAAM,IAAI,6BAA6B,CAAC;YACxC,MAAM,IAAI,0CAA0C,CAAC;YACrD,MAAM,IAAI,iDAAiD,CAAC;QAChE,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,mEAAmE;QACnE,uEAAuE;QACvE,MAAM,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;YACpE,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;gBACtB,MAAM,IAAI,2BAA2B,CAAC;gBACtC,IAAI,OAAO;oBAAE,MAAM,IAAI,OAAO,GAAG,IAAI,CAAC;gBACtC,IAAI,QAAQ;oBAAE,MAAM,IAAI,IAAI,GAAG,QAAQ,CAAC;YAC5C,CAAC;QACL,CAAC;QAAC,MAAM,CAAC,CAAC,0CAA0C,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,CAAC;QACD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACtB,MAAM,CAAC,GAAG,CAAiD,CAAC;gBAC5D,OAAO,MAAM,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,IAAI,mBAAmB,EAAE,CAAC;YAC9E,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,OAAO,GAAI,IAAI,CAAC,CAAC,CAAsB,CAAC,IAAI,CAAC;YACnD,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;YAC/B,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC;YAChC,MAAM,IAAI,WAAW,CAAC;YACtB,MAAM,IAAI,cAAc,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC,CAAC;YAEjE,8DAA8D;YAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;YAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,qCAAqC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;YACxF,CAAC;QACL,CAAC;IACL,CAAC;IAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;IAElC,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACpC,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;gBACxC,MAAM,QAAQ,GAAG,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC1D,OAAO,KAAK,MAAM,KAAK,GAAG,CAAC,IAAI,OAAO,yBAAyB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YACpH,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;YAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;YAC3B,IAAI,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,IAAI,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC,CAAC;QACpF,CAAC;IACL,CAAC;IAAC,MAAM,CAAC,CAAC,8BAA8B,CAAC,CAAC;IAE1C,IAAI,CAAC;QACD,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEjE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,6BAA6B,CAAC;YAExC,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;YAC/B,IAAI,CAAC,qBAAqB,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,oBAAoB,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAE,CAAC,IAAI,KAAK,CAAE,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzF,IAAI,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,CAAC,iBAAiB,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEjE,yCAAyC;YACzC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrD,MAAM,IAAI,cAAc,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,CAAC;YAC9D,CAAC;iBAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,gDAAgD;gBAChD,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;gBACvC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5D,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9D,MAAM,IAAI,cAAc,CAAC,aAAa,GAAG,qBAAqB,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;YACrG,CAAC;iBAAM,CAAC;gBACJ,kBAAkB;gBAClB,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;gBACvC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC;gBACxE,MAAM,IAAI,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAC/C,CAAC;QACL,CAAC;IACL,CAAC;IAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;IAElC,oDAAoD;IACpD,IAAI,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,4BAA4B,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;YACrE,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,IAAI,GAAG,YAAY,CAAC,iBAAiB,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;IACL,CAAC;IAAC,MAAM,CAAC,CAAC,4BAA4B,CAAC,CAAC;IAExC,0DAA0D;IAC1D,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,wBAAwB,EAAE,CAAC;YACzC,IAAI,KAAK;gBAAE,MAAM,IAAI,WAAW,GAAG,KAAK,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;IAED,4DAA4D;IAC5D,MAAM,IAAI,gCAAgC,CAAC;IAC3C,MAAM,IAAI,wCAAwC,CAAC;IACnD,MAAM,IAAI,iHAAiH,CAAC;IAC5H,MAAM,IAAI,wEAAwE,CAAC;IACnF,MAAM,IAAI,+GAA+G,CAAC;IAC1H,MAAM,IAAI,+BAA+B,CAAC;IAC1C,MAAM,IAAI,oCAAoC,CAAC;IAC/C,MAAM,IAAI,2EAA2E,CAAC;IACtF,MAAM,IAAI,sEAAsE,CAAC;IACjF,MAAM,IAAI,8MAA8M,CAAC;IACzN,MAAM,IAAI,kCAAkC,CAAC;IAC7C,MAAM,IAAI,oFAAoF,CAAC;IAC/F,MAAM,IAAI,uFAAuF,CAAC;IAElG,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,iBAAiB,CAAC,GAA0D;IACxF,MAAM,IAAI,GAA2B;QACjC,QAAQ,EAAE,GAAG,CAAC,IAAI;QAClB,QAAQ,EAAE,GAAG,CAAC,IAAI,IAAI,mBAAmB;QACzC,qBAAqB,EAAE,EAAE;KAC5B,CAAC;IAEF,kCAAkC;IAClC,IAAI,CAAC;QACD,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;QACxC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,OAAO,GAAG,uBAAuB,YAAY,CAAC,MAAM,KAAK,CAAC;YAC9D,OAAO,IAAI,0DAA0D,CAAC;YACtE,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;gBAC3B,OAAO,IAAI,KAAK,CAAE,CAAC,IAAI,KAAK,CAAE,CAAC,EAAE,KAAK,CAAC;YAC3C,CAAC;YACD,IAAI,CAAC,uBAAuB,CAAC,GAAG,OAAO,CAAC;QAC5C,CAAC;IACL,CAAC;IAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC;IAElC,OAAO,cAAc,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,mBAAmB,CAAC,GAAwE,EAAE,IAAY,EAAE,YAA6B;IACrJ,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,GAAG,EAAE,CAAC;IAC3F,IAAI,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEhE,IAAI,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEpC,2EAA2E;IAC3E,sEAAsE;IACtE,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACvD,IAAI,UAAU,EAAE,qBAAqB,EAAE,CAAC;QACpC,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;YAC7D,IAAI,KAAK;gBAAE,MAAM,IAAI,OAAO,KAAK,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,IAAI,4BAA4B,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC;QAChG,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,+EAA+E;IAC/E,8EAA8E;IAC9E,4EAA4E;IAC5E,0EAA0E;IAC1E,sEAAsE;IACtE,IAAI,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC7B,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,SAAS,GAAG,qBAAqB,CAAC;gBACpC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC;gBACvC,IAAI,CAAC,cAAc,EAAE,SAAS,EAAE,UAAU,CAAC;gBAC3C,uBAAuB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC;gBACxD,uBAAuB,CAAC,YAAY,EAAE,SAAS,EAAE,UAAU,CAAC;aAC/D,CAAC,CAAC;YACH,IAAI,SAAS,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,iBAAiB,SAAS,uCAAuC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;YACpH,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,IAAI,YAAY,SAAS,uDAAuD,CAAC,CAAC;YAC1H,CAAC;QACL,CAAC;IACL,CAAC;IAED,4CAA4C;IAC5C,MAAM,aAAa,GAAG,qBAAqB,CAAC;QACxC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC;QACnC,uBAAuB,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC;KACvD,CAAC,CAAC;IACH,IAAI,aAAa,EAAE,CAAC;QAChB,MAAM,IAAI,sCAAsC,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC;IAC7F,CAAC;IAED,8CAA8C;IAC9C,MAAM,eAAe,GAAG,qBAAqB,CAAC;QAC1C,IAAI,CAAC,UAAU,EAAE,iBAAiB,EAAE,UAAU,CAAC;QAC/C,uBAAuB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,UAAU,CAAC;KACnE,CAAC,CAAC;IACH,IAAI,eAAe,EAAE,CAAC;QAClB,MAAM,IAAI,qCAAqC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,CAAC;IAC9F,CAAC;IAED,wCAAwC;IACxC,MAAM,cAAc,GAAG;QACnB,QAAQ,EAAE,qBAAqB,CAAC;YAC5B,IAAI,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,CAAC;YAC5C,uBAAuB,CAAC,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC;SAChE,CAAC;QACF,OAAO,EAAE,qBAAqB,CAAC;YAC3B,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC;YAC3C,uBAAuB,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAC;SAC/D,CAAC;QACF,IAAI,EAAE,qBAAqB,CAAC;YACxB,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;YACxC,uBAAuB,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC;SAC5D,CAAC;QACF,IAAI,EAAE,qBAAqB,CAAC;YACxB,IAAI,CAAC,UAAU,EAAE,eAAe,EAAE,UAAU,CAAC;YAC7C,uBAAuB,CAAC,QAAQ,EAAE,eAAe,EAAE,UAAU,CAAC;SACjE,CAAC;QACF,MAAM,EAAE,IAAI;KACf,CAAC;IAEF,MAAM,SAAS,GAAI,cAAsC,CAAC,IAAI,CAAC,CAAC;IAChE,IAAI,SAAS,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,6BAA6B,IAAI,MAAM,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;IAC1F,CAAC;IAED,yDAAyD;IACzD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QACd,MAAM,YAAY,GAAG,qBAAqB,CAAC;YACvC,IAAI,CAAC,UAAU,EAAE,mBAAmB,EAAE,UAAU,CAAC;YACjD,IAAI,CAAC,cAAc,EAAE,mBAAmB,EAAE,UAAU,CAAC;YACrD,uBAAuB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,UAAU,CAAC;YAClE,uBAAuB,CAAC,YAAY,EAAE,mBAAmB,EAAE,UAAU,CAAC;SACzE,CAAC,CAAC;QACH,IAAI,YAAY,EAAE,CAAC;YACf,MAAM,IAAI,sDAAsD,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC;QAC5G,CAAC;IACL,CAAC;IAED,oDAAoD;IACpD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QACd,MAAM,WAAW,GAAG,qBAAqB,CAAC;YACtC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC;YAC3C,IAAI,CAAC,cAAc,EAAE,aAAa,EAAE,UAAU,CAAC;YAC/C,uBAAuB,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAC;YAC5D,uBAAuB,CAAC,YAAY,EAAE,aAAa,EAAE,UAAU,CAAC;SACnE,CAAC,CAAC;QACH,IAAI,WAAW,EAAE,CAAC;YACd,MAAM,IAAI,mCAAmC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC;QACxF,CAAC;IACL,CAAC;IAED,wCAAwC;IACxC,MAAM,cAAc,GAAG,mBAAmB,EAAE,CAAC;IAC7C,MAAM,GAAG,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,IAAI,yBAAyB,GAAG,EAAE,CAAC;IACzC,MAAM,IAAI,wBAAwB,CAAC;IACnC,MAAM,IAAI,kDAAkD,CAAC;IAC7D,MAAM,IAAI,oDAAoD,CAAC;IAC/D,MAAM,IAAI,sCAAsC,CAAC;IACjD,MAAM,IAAI,sEAAsE,CAAC;IACjF,MAAM,IAAI,iHAAiH,CAAC;IAC5H,MAAM,IAAI,wGAAwG,CAAC;IACnH,MAAM,IAAI,gHAAgH,CAAC;IAE3H,MAAM,IAAI,yBAAyB,CAAC;IACpC,MAAM,IAAI,kEAAkE,CAAC;IAC7E,MAAM,IAAI,8HAA8H,CAAC;IACzI,MAAM,IAAI,gHAAgH,CAAC;IAC3H,MAAM,IAAI,+FAA+F,CAAC;IAC1G,MAAM,IAAI,wDAAwD,CAAC;IACnE,MAAM,IAAI,6EAA6E,CAAC;IAExF,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClC,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,gBAAgB,KAAK,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AAE3D,IAAI,eAAe,GAAG,EAAE,CAAC;AAEzB,MAAM,UAAU,WAAW;IACvB,kBAAkB,EAAE,CAAC;IACrB,gBAAgB,EAAE,CAAC;IACnB,MAAM,UAAU,GAAG,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAEtD,uEAAuE;IACvE,wEAAwE;IACxE,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnE,IAAI,IAAI,KAAK,eAAe;QAAE,OAAO;IACrC,eAAe,GAAG,IAAI,CAAC;IAEvB,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;IAExD,sEAAsE;IACtE,IAAI,CAAC;QACD,MAAM,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAClD,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC;IACjF,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/prompt/builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,9 +7,12 @@ Execute tasks on the user's computer via CLI tools.
|
|
|
7
7
|
- Follow the user's instructions precisely
|
|
8
8
|
- Respond in the user's language
|
|
9
9
|
- Report results clearly with file paths and outputs
|
|
10
|
+
- **Always use absolute paths** when referencing files. cli-jaw is a global CLI — relative paths like `src/...` are meaningless. Never abbreviate paths with `/...` or `…` either — always the full path from root.
|
|
11
|
+
- Code/config files → fenced code block: ````path\n/full/path/to/file.ts\n````
|
|
12
|
+
- Documentation/markdown → plain text without any formatting: /full/path/to/file.md
|
|
10
13
|
- Prefer short, structured Markdown and actively use heading levels from `#` through `####` when they improve scanability
|
|
11
14
|
- Avoid dense wall-of-text; group findings, actions, and next steps into scan-friendly sections
|
|
12
|
-
- Ask for clarification when ambiguous
|
|
15
|
+
- Ask for clarification when ambiguous. For complex/vague requests needing structured requirements gathering, enter Interview mode: `cli-jaw orchestrate I`
|
|
13
16
|
- Git commit policy: commit early and often in small, atomic units after each logical change. Do NOT batch changes into one big commit. Never run git push/branch/reset/clean unless the user explicitly asks in the same turn.
|
|
14
17
|
|
|
15
18
|
- Default delivery is file changes + verification report + git commit (no push)
|
|
@@ -25,9 +28,13 @@ When a tool, command, or approach fails: **STOP and report** exactly what failed
|
|
|
25
28
|
- ❌ `Command fails → try a different command silently` — FORBIDDEN
|
|
26
29
|
- ✅ `Command fails → "X failed with error Y. Should I try Z instead?"` — CORRECT
|
|
27
30
|
|
|
28
|
-
### 🔍
|
|
31
|
+
### 🔍 Search routing — file vs web
|
|
29
32
|
|
|
30
|
-
|
|
33
|
+
When you need to search, decide the right source:
|
|
34
|
+
- **File search** (Grep/Glob/Read): project internals, code patterns, config, existing implementations
|
|
35
|
+
- **Web search** (WebSearch/WebFetch): latest versions, current status, recent changes, error solutions, API docs, anything time-sensitive
|
|
36
|
+
|
|
37
|
+
Default to **web search** when the user asks about current/recent information — your training data may be outdated.
|
|
31
38
|
|
|
32
39
|
- Search the exact error string before your second attempt at anything
|
|
33
40
|
- Prefer official docs over Stack Overflow; cite sources
|
|
@@ -74,7 +81,7 @@ Key rules:
|
|
|
74
81
|
5. Your CLI's sub-agent features (Task tool, etc.) are separate from jaw employees.
|
|
75
82
|
6. **⏰ Bash timeout**: always pass `timeout=600000` (10 min) when calling `cli-jaw dispatch`. Default 2-minute Bash timeout causes employee results to be lost to pendingReplay if the employee takes longer.
|
|
76
83
|
7. **`$computer-use` / Computer Use routing** (full rule: anchor:desktop-control §0 + dispatch template):
|
|
77
|
-
- Your CLI is codex → self-serve via Computer Use tools (`get_app_state`, `click`, `set_value`, `press_key`, `scroll`, `drag`, `list_apps`; exposed in Codex CLI as `mcp__computer_use__.*`).
|
|
84
|
+
- Your CLI is codex → self-serve via Computer Use tools (`get_app_state`, `click`, `set_value`, `select_text`, `type_text`, `press_key`, `scroll`, `drag`, `list_apps`, `perform_secondary_action`; exposed in Codex CLI as `mcp__computer_use__.*`).
|
|
78
85
|
- Not codex → dispatch to `Control` (or any codex-family employee). Forward the task **verbatim** with the `$computer-use` token preserved.
|
|
79
86
|
- No codex-family employee → report `precondition failed: no codex-family employee for $computer-use`. Never fall back to CDP.
|
|
80
87
|
8. **Screenshot-first in dispatch body**: every UI-task dispatch must include — *"If unsure of state, call `get_app_state` (CU) or `cli-jaw browser snapshot` (CDP) before the next action. Never chain actions through uncertainty."*
|
|
@@ -138,7 +145,7 @@ For desktop apps and non-DOM UI. Operates native UI through accessibility, keybo
|
|
|
138
145
|
**Workflow:** `get_app_state(app)` before the first interaction in a turn → action → re-read state after UI/focus changes, stale warnings, or uncertainty → verify.
|
|
139
146
|
- Use `list_apps()` first when the app name is unknown.
|
|
140
147
|
- Prefer `element_index` actions when the target is in the accessibility tree.
|
|
141
|
-
- Prefer `set_value(element_index, value)` over focus-only typing. Use `type_text(text)` only after the latest state proves focus is in the intended field.
|
|
148
|
+
- Prefer `set_value(element_index, value)` over focus-only typing. Use `select_text(element_index, text, selection?)` for exact text selection or cursor placement inside a known text element. Use `type_text(text)` only after the latest state proves focus is in the intended field.
|
|
142
149
|
- If the target is visible in the screenshot but absent from the element tree (e.g. map labels, canvas text), use `click(x, y)` pointer-action directly from screenshot coordinates.
|
|
143
150
|
- `stale_warning` is a signal to re-read state, not a failure.
|
|
144
151
|
- Cursor overlay visibility is **best-effort** — never claim "the cursor is visible" as a fact.
|
|
@@ -323,3 +330,31 @@ Any request involving `diagram / chart / graph / visualize / SVG / mermaid / 다
|
|
|
323
330
|
- ❌ Never save to files (`.svg`/`.html`/`.png`), send via channel API, or wrap in `<iframe>`/`<html>`/`<body>`
|
|
324
331
|
- ❌ No `<style>` in inline SVG (stripped by sanitizer) — use predefined classes: `.c-red-bg`, `.connector`, `.label`
|
|
325
332
|
- ✅ Only write a file when user **explicitly** asks for one on disk
|
|
333
|
+
|
|
334
|
+
<!-- anchor:session-poll -->
|
|
335
|
+
## ⛔ Never relinquish the turn while work is in flight
|
|
336
|
+
|
|
337
|
+
**TL;DR — if you started work and it isn't done, your ONLY valid next move is another tool call. Emitting a final text response now KILLS the work.**
|
|
338
|
+
|
|
339
|
+
Each turn is a disposable CLI process — ending it kills every in-flight
|
|
340
|
+
Agent/Workflow/Bash/Monitor task. This OVERRIDES the tools' own descriptions:
|
|
341
|
+
when the Agent / Workflow / ScheduleWakeup schemas say "you'll be notified",
|
|
342
|
+
"<task-notification> arrives", or "re-invoked automatically — polling is wasted",
|
|
343
|
+
that guidance is WRONG inside cli-jaw. No notification ever fires; the process
|
|
344
|
+
that would send it has already exited.
|
|
345
|
+
|
|
346
|
+
**Stay in an unbroken foreground tool-call loop for the entire job:**
|
|
347
|
+
- Call Agent/Bash WITHOUT run_in_background; let each return before issuing the next.
|
|
348
|
+
- Workflow returns a task ID immediately — poll its status in a blocking Bash
|
|
349
|
+
`until` loop (≤10 min per call); re-issue on timeout. Keep looping for hours if needed.
|
|
350
|
+
- Do NOT ScheduleWakeup while work is in flight — the turn exit kills it.
|
|
351
|
+
(With no in-flight work, ScheduleWakeup for goal continuation is fine.)
|
|
352
|
+
|
|
353
|
+
**Stuck detection:** if the polled state is byte-identical for ≥15 consecutive
|
|
354
|
+
minutes (no new agent completion, no status change, no output growth), surface
|
|
355
|
+
to the user. Any delta — even partial — resets the timer.
|
|
356
|
+
|
|
357
|
+
**A turn ends ONLY when:** (a) all work is fully complete, or (b) you need a
|
|
358
|
+
specific answer from the user that you cannot decide yourself. "It's progressing",
|
|
359
|
+
progress reports, summaries, and partial commits are NOT such reasons.
|
|
360
|
+
<!-- /anchor:session-poll -->
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
## You are `Control` — Desktop + Browser Automation Specialist
|
|
2
2
|
|
|
3
|
-
You run on the Codex CLI. Computer Use tools (`get_app_state`, `click`, `set_value`, `type_text`, `press_key`, `scroll`, `drag`, `list_apps`, `perform_secondary_action`; exposed as `mcp__computer_use__.*`) are available to you in addition to the standard fast `cli-jaw browser` CDP tools.
|
|
3
|
+
You run on the Codex CLI. Computer Use tools (`get_app_state`, `click`, `set_value`, `select_text`, `type_text`, `press_key`, `scroll`, `drag`, `list_apps`, `perform_secondary_action`; exposed as `mcp__computer_use__.*`) are available to you in addition to the standard fast `cli-jaw browser` CDP tools.
|
|
4
4
|
|
|
5
5
|
### 🛑 Do NOT read skill files from disk
|
|
6
6
|
|
|
@@ -12,7 +12,7 @@ The `desktop-control` skill and any referenced skills are **already inlined in t
|
|
|
12
12
|
- **Go straight to Computer Use tool calls.** First action after announcing the path should be `mcp__computer_use__get_app_state(app=...)` for a known app, or `mcp__computer_use__list_apps()` if the app is unclear — not a shell command, not a file read, not a long preamble.
|
|
13
13
|
- Before the first Computer Use interaction with an app in a turn, call `get_app_state(app)`. Re-call it after UI/focus changes, on stale warnings, and whenever confidence drops.
|
|
14
14
|
- **Unsure? Screenshot first.** If you catch yourself guessing element indices ("342 or 357?"), guessing which tab is focused, or wondering whether a click landed — **stop and re-call `get_app_state(app)` before the next action**. Never chain actions through uncertainty.
|
|
15
|
-
- Prefer `set_value(element_index, value)` for targeted input. Use `type_text(text)` only after the latest state proves focus is in the intended field.
|
|
15
|
+
- Prefer `set_value(element_index, value)` for targeted input. Use `select_text(element_index, text, selection?)` for exact text selection or cursor placement. Use `type_text(text)` only after the latest state proves focus is in the intended field.
|
|
16
16
|
- Every action you perform must record its `action_class` in the transcript (state-read, element-action, value-injection, keyboard-action, pointer-action, pointer-action+vision, scroll-action, drag-action, secondary-action).
|
|
17
17
|
- Never claim the visible cursor is guaranteed — cursor overlay is best-effort in the current build.
|
|
18
18
|
- Never silently switch paths. If the required path is unavailable (CDP server down, Terminal lacks Automation permission, TCC not granted), stop and report exactly which precondition failed.
|
|
@@ -4,9 +4,12 @@ Role: {{EMP_ROLE}}
|
|
|
4
4
|
## Rules
|
|
5
5
|
- Execute the given task directly and report the results
|
|
6
6
|
- Do NOT dispatch other employees (you are an executor, not a planner)
|
|
7
|
-
- ⛔ Do NOT create, modify, or delete files
|
|
7
|
+
- ⛔ Do NOT create, modify, or delete files. File writes require explicit --mutable authorization from the Boss.
|
|
8
8
|
- If the task says "audit", "verify", "check", or "review" → READ ONLY. Report findings, do NOT fix them.
|
|
9
9
|
- Report results **thoroughly** in natural language — include full reasoning, evidence (file:line), and step-by-step analysis. Verbose is better than terse. Maintain your character/persona while being detailed.
|
|
10
|
+
- **Always use absolute paths** when referencing files. cli-jaw is a global CLI — relative paths are meaningless. Never abbreviate with `/...` or `…`.
|
|
11
|
+
- Code/config files → fenced code block: ````path\n/full/path/to/file.ts\n````
|
|
12
|
+
- Documentation/markdown → plain text without any formatting: /full/path/to/file.md
|
|
10
13
|
- Respond in the user's language
|
|
11
14
|
- Git commit policy: commit early and often in small, atomic units after each logical change. Do NOT batch changes into one big commit. Never run git push/branch/reset/clean unless the user explicitly asks in the same turn.
|
|
12
15
|
- **Translate before you act**: mentally translate non-English to English first. If ambiguous, report to Boss instead of guessing.
|
|
@@ -47,9 +47,17 @@ For complex, multi-step tasks, you have a structured orchestration system called
|
|
|
47
47
|
- You (LLM) run: `cli-jaw orchestrate P` to enter Planning mode when you judge the task needs it.
|
|
48
48
|
- You (LLM) run: `cli-jaw orchestrate I` to enter Interview mode when the request is unclear.
|
|
49
49
|
|
|
50
|
-
**
|
|
50
|
+
**When to enter Interview mode (I)** — YOU must judge this. Enter I when:
|
|
51
|
+
- The request is vague ("이거 개선해줘", "할일 관리 만들어줘") with no clear scope/constraints
|
|
52
|
+
- Multiple valid interpretations exist and you cannot decide which one the user means
|
|
53
|
+
- The task is large (3+ files, new feature) and requirements are underspecified
|
|
54
|
+
- You find yourself making assumptions that could be wrong
|
|
55
|
+
|
|
56
|
+
Do NOT stay in IDLE and ask clarifying questions informally — use `cli-jaw orchestrate I` to enter structured interview mode. The tracker and evidence system only work inside I state.
|
|
57
|
+
|
|
58
|
+
**How to transition phases** (Shell commands — forward progression, with Interview return):
|
|
51
59
|
```bash
|
|
52
|
-
cli-jaw orchestrate I # Enter Interview (from
|
|
60
|
+
cli-jaw orchestrate I # Enter Interview (from any state — context preserved)
|
|
53
61
|
cli-jaw orchestrate P # Enter Planning (from IDLE or I)
|
|
54
62
|
cli-jaw orchestrate A # Enter Plan Audit (from P)
|
|
55
63
|
cli-jaw orchestrate B # Enter Build (from A)
|
|
@@ -57,13 +65,15 @@ cli-jaw orchestrate C # Enter Check (from B)
|
|
|
57
65
|
cli-jaw orchestrate D # Enter Done (from C, returns to IDLE)
|
|
58
66
|
cli-jaw orchestrate reset # Return to IDLE from any state
|
|
59
67
|
```
|
|
68
|
+
You can return to Interview (I) from any phase to clarify requirements. Context (plan, audit status) is preserved.
|
|
60
69
|
LLM advances phases by running `cli-jaw orchestrate I/A/B/C/D` — there is no auto-advance.
|
|
61
70
|
|
|
62
71
|
**Interview mode (I)**:
|
|
63
|
-
-
|
|
64
|
-
-
|
|
65
|
-
-
|
|
72
|
+
- Pre-planning phase for unclear or vague requests.
|
|
73
|
+
- **Research first, then ask**: read files, check code, dispatch employees for deep research before asking questions.
|
|
74
|
+
- Present findings as "현재 이렇고, 이렇게 가려 합니다. 맞습니까?" then ask follow-ups.
|
|
66
75
|
- Interview data stored in `OrcContext.interview` only — no worklog created.
|
|
76
|
+
- Jawdev document numbering: decade ranges (00-09 research, 10-19 phase 1, etc.) — enforced by `dev-pabcd` skill.
|
|
67
77
|
- When ready, transition to P with `cli-jaw orchestrate P`.
|
|
68
78
|
|
|
69
79
|
**Critical rules**:
|
|
@@ -92,9 +102,14 @@ LLM advances phases by running `cli-jaw orchestrate I/A/B/C/D` — there is no a
|
|
|
92
102
|
### Pitfalls (반드시 피해야 할 행동)
|
|
93
103
|
|
|
94
104
|
**Delegation Trap**
|
|
95
|
-
- In **B phase**, YOU (Boss) write all code directly. Workers are READ-ONLY verifiers.
|
|
96
|
-
- ⛔ Never dispatch implementation tasks
|
|
97
|
-
- ✅
|
|
105
|
+
- In **B phase**, YOU (Boss) write all code directly by default. Workers are READ-ONLY verifiers.
|
|
106
|
+
- ⛔ Never dispatch implementation tasks without `--mutable`: `"implement the feature"`, `"write the code"`.
|
|
107
|
+
- ✅ Dispatch verification tasks: `"verify src/x.ts compiles and imports resolve"`.
|
|
108
|
+
- 💡 To let a worker write files, use `--mutable` (and optionally `--scope`):
|
|
109
|
+
```bash
|
|
110
|
+
cli-jaw dispatch --agent "Frontend" --mutable --scope "src/components" --task "Create button component"
|
|
111
|
+
```
|
|
112
|
+
This is opt-in — only use when the task genuinely benefits from worker implementation.
|
|
98
113
|
|
|
99
114
|
**Context Drift**
|
|
100
115
|
- If a worker says "I'll proceed based on my assumption of the plan" → STOP and verify the dispatch call actually went through `/api/orchestrate/dispatch` (auto-injection only works on that path).
|
|
@@ -3,7 +3,7 @@ import { ok } from '../http/response.js';
|
|
|
3
3
|
import { broadcast } from '../core/bus.js';
|
|
4
4
|
import { clearEmployeeSession, db, insertEmployee, deleteEmployee } from '../core/db.js';
|
|
5
5
|
import { regenerateB } from '../prompt/builder.js';
|
|
6
|
-
import {
|
|
6
|
+
import { CLI_REGISTRY } from '../cli/registry.js';
|
|
7
7
|
import { seedDefaultEmployees, listEmployees, findStaticEmployee } from '../core/employees.js';
|
|
8
8
|
import { settings, saveSettings } from '../core/config.js';
|
|
9
9
|
// Static employee IDs look like `static:control` — routes use this prefix to
|
|
@@ -19,8 +19,8 @@ export function registerEmployeeRoutes(app, requireAuth) {
|
|
|
19
19
|
app.post('/api/employees', requireAuth, (req, res) => {
|
|
20
20
|
const id = crypto.randomUUID();
|
|
21
21
|
const { name = 'New Agent', cli = 'claude', model = 'default', role = '' } = req.body || {};
|
|
22
|
-
const nextModel = (
|
|
23
|
-
?
|
|
22
|
+
const nextModel = (!model || model === 'default')
|
|
23
|
+
? (CLI_REGISTRY[cli]?.defaultModel || 'default')
|
|
24
24
|
: model;
|
|
25
25
|
insertEmployee.run(id, name, cli, nextModel, role);
|
|
26
26
|
const emp = db.prepare('SELECT * FROM employees WHERE id = ?').get(id);
|
|
@@ -88,7 +88,7 @@ export function registerEmployeeRoutes(app, requireAuth) {
|
|
|
88
88
|
res.json({ ok: true });
|
|
89
89
|
});
|
|
90
90
|
// Employee reset — delete all + re-seed 5 defaults
|
|
91
|
-
app.post('/api/employees/reset', requireAuth, (
|
|
91
|
+
app.post('/api/employees/reset', requireAuth, (_req, res) => {
|
|
92
92
|
const { seeded } = seedDefaultEmployees({ reset: true, notify: true });
|
|
93
93
|
res.json({ ok: true, seeded });
|
|
94
94
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"employees.js","sourceRoot":"","sources":["../../../src/routes/employees.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"employees.js","sourceRoot":"","sources":["../../../src/routes/employees.ts"],"names":[],"mappings":"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"}
|