@humwick/server 0.0.0-stage → 0.130.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLA.md +66 -0
- package/CONTRIBUTING.md +144 -0
- package/LICENSE +167 -0
- package/README.md +511 -2
- package/SECURITY.md +67 -0
- package/THIRD_PARTY_NOTICES.md +144 -0
- package/bundled/prompts/README.md +10 -0
- package/bundled/prompts/context.advisory.compact.md +1 -0
- package/bundled/prompts/context.advisory.warn.md +1 -0
- package/bundled/prompts/continuation.envelope.md +18 -0
- package/bundled/prompts/manifest.json +838 -0
- package/bundled/prompts/memory.capture.boundary.post.md +1 -0
- package/bundled/prompts/memory.capture.boundary.pre.md +1 -0
- package/bundled/prompts/memory.charter.md +3 -0
- package/bundled/prompts/memory.native-off.md +0 -0
- package/bundled/prompts/notify.agent.exited.md +1 -0
- package/bundled/prompts/notify.agent.never-ready.md +1 -0
- package/bundled/prompts/notify.agent.ready.md +1 -0
- package/bundled/prompts/notify.automation.budget-warning.md +1 -0
- package/bundled/prompts/notify.land.failure.md +1 -0
- package/bundled/prompts/notify.land.steward-taken.coordinator.md +1 -0
- package/bundled/prompts/notify.land.steward-taken.md +1 -0
- package/bundled/prompts/notify.land.success.md +1 -0
- package/bundled/prompts/notify.routing.policy-changed.md +2 -0
- package/bundled/prompts/notify.spawn.failed.md +1 -0
- package/bundled/prompts/notify.spawn.queued.md +1 -0
- package/bundled/prompts/notify.spawn.recovered.md +1 -0
- package/bundled/prompts/notify.spawn.unconfirmed.md +1 -0
- package/bundled/prompts/profile.coordinator.charter.md +17 -0
- package/bundled/prompts/profile.debugger.system.md +12 -0
- package/bundled/prompts/profile.device-qa.system.md +10 -0
- package/bundled/prompts/profile.image-gen.append.0.md +2 -0
- package/bundled/prompts/profile.image-gen.system.md +4 -0
- package/bundled/prompts/profile.ops-assistant.brief.md +4 -0
- package/bundled/prompts/profile.probe.system.md +5 -0
- package/bundled/prompts/profile.qa.system.md +10 -0
- package/bundled/prompts/profile.sec-ops.system.md +14 -0
- package/bundled/prompts/profile.social-media.system.md +7 -0
- package/bundled/prompts/profile.software-design.system.md +26 -0
- package/bundled/prompts/profile.sub-coordinator.charter.md +2 -0
- package/bundled/prompts/profile.worker-gui.system.md +7 -0
- package/bundled/prompts/profile.worker.system.md +2 -0
- package/bundled/prompts/relay.agent-core.delivery.md +13 -0
- package/bundled/prompts/relay.agent-core.engineering.md +13 -0
- package/bundled/prompts/relay.agent-core.md +22 -0
- package/bundled/prompts/relay.context.claude.md +1 -0
- package/bundled/prompts/relay.context.claude.readonly.md +3 -0
- package/bundled/prompts/relay.context.codex.md +1 -0
- package/bundled/prompts/relay.context.opencode.md +1 -0
- package/bundled/prompts/relay.manual.claude.md +8 -0
- package/bundled/prompts/relay.search.fff.md +1 -0
- package/bundled/prompts/relay.temp-dir.md +1 -0
- package/bundled/prompts/relay.web.brave.md +1 -0
- package/bundled/prompts/relay.web.fetch.md +1 -0
- package/bundled/prompts/skill.device-lane.md +20 -0
- package/bundled/prompts/skill.security-code-review.md +10 -0
- package/bundled/prompts/skill.security-hardening.md +10 -0
- package/bundled/prompts/skill.security-host-audit.md +11 -0
- package/bundled/prompts/spawn.primer.md +6 -0
- package/bundled/prompts/spawn.reportup.child.md +3 -0
- package/bundled/prompts/spawn.reportup.coordinator.md +2 -0
- package/bundled/prompts/spawn.reportup.workflow-step.md +4 -0
- package/bundled/prompts/spawn.validation.delivery.md +1 -0
- package/bundled/prompts/spawn.validation.iterate.generic.md +1 -0
- package/bundled/prompts/spawn.validation.iterate.imperative.md +1 -0
- package/bundled/prompts/spawn.validation.landgates.header.md +1 -0
- package/bundled/prompts/steward.merge-stall.md +1 -0
- package/bundled/prompts/steward.prompt.md +20 -0
- package/bundled/prompts/steward.wake.md +1 -0
- package/bundled/prompts/task.claim.instruction.md +1 -0
- package/bundled/prompts/task.hydration.md +23 -0
- package/bundled/prompts/user.response.brief.md +1 -0
- package/bundled/prompts/user.response.normal.md +1 -0
- package/bundled/prompts/user.style.neutral.md +1 -0
- package/bundled/prompts/user.style.warm.md +1 -0
- package/bundled/prompts/workspace.deps.command.md +1 -0
- package/bundled/prompts/workspace.deps.none.md +1 -0
- package/bundled/prompts/workspace.deps.symlink.md +1 -0
- package/bundled/prompts/workspace.lifecycle.md +4 -0
- package/bundled/prompts/workspace.mcp.instructions.md +7 -0
- package/bundled/prompts/workspace.phase.abandoned.headline.md +1 -0
- package/bundled/prompts/workspace.phase.abandoned.hint.md +1 -0
- package/bundled/prompts/workspace.phase.active.headline.md +1 -0
- package/bundled/prompts/workspace.phase.active.hint.md +1 -0
- package/bundled/prompts/workspace.phase.conflict.headline.md +1 -0
- package/bundled/prompts/workspace.phase.conflict.hint.md +1 -0
- package/bundled/prompts/workspace.phase.merge-planned.headline.md +1 -0
- package/bundled/prompts/workspace.phase.merge-planned.hint.md +1 -0
- package/bundled/prompts/workspace.phase.merged.headline.md +1 -0
- package/bundled/prompts/workspace.phase.merged.hint.md +1 -0
- package/bundled/prompts/workspace.phase.ready.headline.md +1 -0
- package/bundled/prompts/workspace.phase.ready.hint.md +1 -0
- package/bundled/prompts/workspace.ready.contract.md +6 -0
- package/bundled/prompts/workspace.symlinks.md +1 -0
- package/bundled/roles/builder.md +18 -0
- package/bundled/roles/design-reviewer.md +13 -0
- package/bundled/roles/designer.md +11 -0
- package/bundled/roles/plan-auditor.md +29 -0
- package/bundled/roles/reviewer.md +36 -0
- package/bundled/roles/slice-qa.md +13 -0
- package/bundled/roles/verifier.md +13 -0
- package/bundled/skills/agent-browser/SKILL.md +72 -0
- package/bundled/skills/test-audit/SKILL.md +75 -0
- package/bundled/workflows/build-review.yaml +8 -0
- package/bundled/workflows/design-review.yaml +60 -0
- package/bundled/workflows/plan-conformance.yaml +5 -0
- package/bundled/workflows/slice-proof.yaml +85 -0
- package/bundled/workflows/verify-deployed.yaml +140 -0
- package/docs/guides/sub-coordinators.md +114 -0
- package/docs/guides/tools-administration.md +84 -0
- package/docs/guides/tools-agents.md +137 -0
- package/docs/guides/tools-coordination.md +228 -0
- package/docs/guides/tools-execution.md +48 -0
- package/docs/guides/tools-issues.md +69 -0
- package/docs/guides/tools-memory.md +150 -0
- package/docs/guides/tools-messages.md +192 -0
- package/docs/guides/tools-operations.md +133 -0
- package/docs/guides/tools-tasks.md +235 -0
- package/docs/guides/workflows.md +324 -0
- package/docs/license-faq.md +37 -0
- package/docs/openapi.json +18531 -0
- package/examples/integrations/github-issue.ts +48 -0
- package/examples/integrations/ops-alert.sh +27 -0
- package/examples/integrations/prometheus-alertmanager.ts +55 -0
- package/examples/integrations/support-ticket.sh +28 -0
- package/node_modules/@humwick/kernel/LICENSE +167 -0
- package/node_modules/@humwick/kernel/async-entity-persistence.ts +344 -0
- package/node_modules/@humwick/kernel/async-event-log.ts +107 -0
- package/node_modules/@humwick/kernel/automations.pilot.ts +147 -0
- package/node_modules/@humwick/kernel/config.ts +111 -0
- package/node_modules/@humwick/kernel/contract.ts +572 -0
- package/node_modules/@humwick/kernel/control-authz.ts +281 -0
- package/node_modules/@humwick/kernel/control.ts +645 -0
- package/node_modules/@humwick/kernel/effects.ts +493 -0
- package/node_modules/@humwick/kernel/event-log.ts +319 -0
- package/node_modules/@humwick/kernel/http-transport.ts +384 -0
- package/node_modules/@humwick/kernel/identity-grammar.ts +20 -0
- package/node_modules/@humwick/kernel/identity.ts +248 -0
- package/node_modules/@humwick/kernel/index.ts +28 -0
- package/node_modules/@humwick/kernel/kernel-persistence.ts +181 -0
- package/node_modules/@humwick/kernel/landing-incident.ts +306 -0
- package/node_modules/@humwick/kernel/landing.ts +953 -0
- package/node_modules/@humwick/kernel/manifest-validation.ts +460 -0
- package/node_modules/@humwick/kernel/mcp-transport.ts +109 -0
- package/node_modules/@humwick/kernel/message-authority-chaos-worker.ts +200 -0
- package/node_modules/@humwick/kernel/message-authority.ts +281 -0
- package/node_modules/@humwick/kernel/module-host.ts +722 -0
- package/node_modules/@humwick/kernel/openapi-init.ts +14 -0
- package/node_modules/@humwick/kernel/package.json +39 -0
- package/node_modules/@humwick/kernel/persistence-schema.ts +248 -0
- package/node_modules/@humwick/kernel/persistence.ts +510 -0
- package/node_modules/@humwick/kernel/registry.ts +60 -0
- package/node_modules/@humwick/kernel/sqlite-kernel-persistence.ts +499 -0
- package/node_modules/@humwick/kernel/sqlite-module-host.ts +87 -0
- package/node_modules/@humwick/kernel/timers-chaos-worker.ts +186 -0
- package/node_modules/@humwick/kernel/timers.pilot.ts +1411 -0
- package/node_modules/@humwick/kernel/workflow-activation.ts +25 -0
- package/node_modules/@humwick/kernel/workflow-backstop.ts +40 -0
- package/node_modules/@humwick/kernel/workflow-cancel-tree.ts +20 -0
- package/node_modules/@humwick/kernel/workflow-chaos-worker.ts +213 -0
- package/node_modules/@humwick/kernel/workflow-composition.ts +231 -0
- package/node_modules/@humwick/kernel/workflow-container.ts +72 -0
- package/node_modules/@humwick/kernel/workflow-control.test-fixture.ts +42 -0
- package/node_modules/@humwick/kernel/workflow-control.ts +178 -0
- package/node_modules/@humwick/kernel/workflow-definition.ts +507 -0
- package/node_modules/@humwick/kernel/workflow-dispatch.ts +60 -0
- package/node_modules/@humwick/kernel/workflow-foreach.ts +167 -0
- package/node_modules/@humwick/kernel/workflow-journal-codec.ts +339 -0
- package/node_modules/@humwick/kernel/workflow-journal.ts +922 -0
- package/node_modules/@humwick/kernel/workflow-lane.ts +48 -0
- package/node_modules/@humwick/kernel/workflow-lease-owner.ts +60 -0
- package/node_modules/@humwick/kernel/workflow-recovery.test-fixture.ts +19 -0
- package/node_modules/@humwick/kernel/workflow-runtime.ts +938 -0
- package/node_modules/@humwick/kernel/workflow-script.ts +11 -0
- package/node_modules/@humwick/kernel/workflow-state.ts +299 -0
- package/node_modules/@humwick/kernel/workflow-step-commit.ts +195 -0
- package/node_modules/@humwick/kernel/workflow-transitions.ts +317 -0
- package/node_modules/@humwick/kernel/workflow-values.ts +153 -0
- package/node_modules/@humwick/kernel/workflow.pilot.ts +376 -0
- package/node_modules/@humwick/offload/LICENSE +167 -0
- package/node_modules/@humwick/offload/README.md +57 -0
- package/node_modules/@humwick/offload/dist/async-runner.d.ts +18 -0
- package/node_modules/@humwick/offload/dist/async-runner.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/async-runner.js +158 -0
- package/node_modules/@humwick/offload/dist/async-runner.js.map +1 -0
- package/node_modules/@humwick/offload/dist/envelope.d.ts +25 -0
- package/node_modules/@humwick/offload/dist/envelope.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/envelope.js +80 -0
- package/node_modules/@humwick/offload/dist/envelope.js.map +1 -0
- package/node_modules/@humwick/offload/dist/fixtures/worker-task.d.ts +10 -0
- package/node_modules/@humwick/offload/dist/fixtures/worker-task.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/fixtures/worker-task.js +59 -0
- package/node_modules/@humwick/offload/dist/fixtures/worker-task.js.map +1 -0
- package/node_modules/@humwick/offload/dist/index.d.ts +5 -0
- package/node_modules/@humwick/offload/dist/index.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/index.js +5 -0
- package/node_modules/@humwick/offload/dist/index.js.map +1 -0
- package/node_modules/@humwick/offload/dist/subprocess-runner.d.ts +62 -0
- package/node_modules/@humwick/offload/dist/subprocess-runner.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/subprocess-runner.js +295 -0
- package/node_modules/@humwick/offload/dist/subprocess-runner.js.map +1 -0
- package/node_modules/@humwick/offload/dist/types.d.ts +111 -0
- package/node_modules/@humwick/offload/dist/types.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/types.js +176 -0
- package/node_modules/@humwick/offload/dist/types.js.map +1 -0
- package/node_modules/@humwick/offload/dist/worker-pool.d.ts +23 -0
- package/node_modules/@humwick/offload/dist/worker-pool.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/worker-pool.js +435 -0
- package/node_modules/@humwick/offload/dist/worker-pool.js.map +1 -0
- package/node_modules/@humwick/offload/dist/worker-runtime.d.ts +2 -0
- package/node_modules/@humwick/offload/dist/worker-runtime.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/worker-runtime.js +27 -0
- package/node_modules/@humwick/offload/dist/worker-runtime.js.map +1 -0
- package/node_modules/@humwick/offload/dist/worker.d.ts +5 -0
- package/node_modules/@humwick/offload/dist/worker.d.ts.map +1 -0
- package/node_modules/@humwick/offload/dist/worker.js +1 -0
- package/node_modules/@humwick/offload/dist/worker.js.map +1 -0
- package/node_modules/@humwick/offload/package.json +42 -0
- package/node_modules/@humwick/offload/src/async-runner.ts +170 -0
- package/node_modules/@humwick/offload/src/envelope.ts +92 -0
- package/node_modules/@humwick/offload/src/fixtures/worker-task.ts +49 -0
- package/node_modules/@humwick/offload/src/index.ts +4 -0
- package/node_modules/@humwick/offload/src/subprocess-runner.ts +334 -0
- package/node_modules/@humwick/offload/src/types.ts +235 -0
- package/node_modules/@humwick/offload/src/worker-pool.ts +463 -0
- package/node_modules/@humwick/offload/src/worker-runtime.ts +32 -0
- package/node_modules/@humwick/offload/src/worker.ts +5 -0
- package/package.json +229 -4
- package/public/assets/MessageBubble-BWpoBjl4.js +4 -0
- package/public/assets/PlanGraphPanel-C0auck3n.js +2 -0
- package/public/assets/TraceView-DBnOx7AQ.js +5 -0
- package/public/assets/VaultDecisionCard-0kp2oNBC.js +2 -0
- package/public/assets/activity-TMzFOdh2.js +2 -0
- package/public/assets/activity-yLztXEBt.js +2 -0
- package/public/assets/agent-lineage-BbJDR1dW.js +2 -0
- package/public/assets/agent-liveness-DyqxfB-t.js +2 -0
- package/public/assets/agent-name-CTZBrSD9.js +2 -0
- package/public/assets/agent-profiles-BpI_jTxq.js +2 -0
- package/public/assets/agent-project-badge-9TqzUUYE.js +2 -0
- package/public/assets/agent-tools-D4n40pn8.js +2 -0
- package/public/assets/agent-type-icon-D6FUarOf.js +2 -0
- package/public/assets/agents-BYDslkJc.js +2 -0
- package/public/assets/analytics-B-XSbEMC.js +910 -0
- package/public/assets/andromeeda-vGVdxbeo.js +2 -0
- package/public/assets/angular-html-BVBpGdXr.js +2 -0
- package/public/assets/angular-ts-BfdufMKP.js +2 -0
- package/public/assets/api-CIIVBtAV.js +10 -0
- package/public/assets/archive-CIuPSvmx.js +2 -0
- package/public/assets/arrow-right-vFsRqG8V.js +2 -0
- package/public/assets/arrow-up-a-z-CKC2RCjD.js +2 -0
- package/public/assets/artifact-viewer-DdWIfV6M.js +2 -0
- package/public/assets/artifacts-DPN1q4pA.js +2 -0
- package/public/assets/artifacts-oBOqks-2.js +2 -0
- package/public/assets/astro-JKRPP03v.js +2 -0
- package/public/assets/aurora-x-CDeNXAV0.js +2 -0
- package/public/assets/automation-4KcRFXEu.js +2 -0
- package/public/assets/ayu-dark-DluEY0Gj.js +2 -0
- package/public/assets/ayu-light-C3h-C4tm.js +2 -0
- package/public/assets/ayu-mirage-Bqwy1Gya.js +2 -0
- package/public/assets/backlog-Cw9xPTCF.js +2 -0
- package/public/assets/badge-DqJRtj_p.js +2 -0
- package/public/assets/bell-_Yzbxxrt.js +2 -0
- package/public/assets/blade-DA8yMPsw.js +2 -0
- package/public/assets/bot-B0NpDNhr.js +2 -0
- package/public/assets/boxes-Cv7Wq3h4.js +2 -0
- package/public/assets/braces-BOks9SsY.js +2 -0
- package/public/assets/brain-CagXMEKE.js +2 -0
- package/public/assets/brain-circuit-CpQeSmp3.js +2 -0
- package/public/assets/bundle-web-ifbJd0t-.js +14 -0
- package/public/assets/busy-health-CTu32MZt.js +2 -0
- package/public/assets/button-Do6Z3vvn.js +2 -0
- package/public/assets/c-Wt1voDr2.js +2 -0
- package/public/assets/calendar-QJjoZ1JU.js +2 -0
- package/public/assets/calendar-clock-CDG_KBhx.js +2 -0
- package/public/assets/card-C4QJ4hCW.js +2 -0
- package/public/assets/catppuccin-frappe-3VR1Za6u.js +2 -0
- package/public/assets/catppuccin-latte-DwIHMF0Q.js +2 -0
- package/public/assets/catppuccin-macchiato-DYnBP6_5.js +2 -0
- package/public/assets/catppuccin-mocha-DYhrFGRu.js +2 -0
- package/public/assets/channels-BiXzg1G9.js +2 -0
- package/public/assets/chart-column-S02ZGfTR.js +2 -0
- package/public/assets/chat-Ctk2qwvA.js +6 -0
- package/public/assets/check-B3M9Ug1P.js +2 -0
- package/public/assets/chevron-down-BoG3JCZn.js +2 -0
- package/public/assets/chevron-right-iljytE0x.js +2 -0
- package/public/assets/chevron-up-Bv3yC5ma.js +2 -0
- package/public/assets/circle-UESLMi2-.js +2 -0
- package/public/assets/circle-alert-CryagaZd.js +2 -0
- package/public/assets/circle-arrow-up-B432r0Kk.js +2 -0
- package/public/assets/circle-check-CkUkN96J.js +2 -0
- package/public/assets/circle-x-CZ0erS7Q.js +2 -0
- package/public/assets/clipboard-list-W2YeUsxT.js +2 -0
- package/public/assets/clock-3-BH47318N.js +2 -0
- package/public/assets/clock-BWPPBh1_.js +2 -0
- package/public/assets/code-preview-Bm1wWqAp.js +3 -0
- package/public/assets/coffee-CThvmt4R.js +2 -0
- package/public/assets/connectors-C36ax4Vw.js +2 -0
- package/public/assets/copy-DFxhHRtV.js +2 -0
- package/public/assets/copy-button-CjOj4HEf.js +2 -0
- package/public/assets/cosmos-Dn8XrlnS.css +1 -0
- package/public/assets/cosmos-Jj9LK2Wf.js +3993 -0
- package/public/assets/cpp-C5WNSHb9.js +2 -0
- package/public/assets/cpu-Dndy84IU.js +2 -0
- package/public/assets/crate-agent-H6S7-B9T.js +2 -0
- package/public/assets/css-DJp_X0uY.js +2 -0
- package/public/assets/csv-Dx-8-gkx.js +2 -0
- package/public/assets/dark-plus-Cs2F2srj.js +2 -0
- package/public/assets/dependency-graph-Cd1E23wa.js +2 -0
- package/public/assets/deploys-Bwfq146q.js +2 -0
- package/public/assets/dialog-uuJ9_geR.js +6 -0
- package/public/assets/display-CfO7rTuF.js +3 -0
- package/public/assets/dist-B2h2GeWt.js +2 -0
- package/public/assets/dist-BeVYU67E.js +2 -0
- package/public/assets/dist-Bmm-RKub.js +2 -0
- package/public/assets/dist-C1xmD7qJ.js +2 -0
- package/public/assets/dist-C2J943E6.js +2 -0
- package/public/assets/dist-C6lpJDoA.js +2 -0
- package/public/assets/dist-CoWL6B0c.js +2 -0
- package/public/assets/dist-D93SmTNC.js +2 -0
- package/public/assets/dist-Da7HrHNA.js +2 -0
- package/public/assets/dist-DeW2Y1R5.js +2 -0
- package/public/assets/dist-DwBdqQ6H.js +2 -0
- package/public/assets/dist-Dz182zaW.js +2 -0
- package/public/assets/dist-H3DLHJ0C.js +2 -0
- package/public/assets/dist-RrY9C4SI.js +2 -0
- package/public/assets/download-KgtpDbt5.js +2 -0
- package/public/assets/dracula-BHWKrbxM.js +2 -0
- package/public/assets/dracula-soft-5eyTD99u.js +2 -0
- package/public/assets/dropdown-menu-BXiNephE.js +2 -0
- package/public/assets/es2015-DMmZ8vbD.js +42 -0
- package/public/assets/esm-ZSuD7QuY.js +2 -0
- package/public/assets/everforest-dark-sB-x3p7T.js +2 -0
- package/public/assets/everforest-light-Df2xbC6M.js +2 -0
- package/public/assets/external-link-BRfu-fHG.js +2 -0
- package/public/assets/eye-BAP6fHrX.js +2 -0
- package/public/assets/file-code-corner-CXhIR1vB.js +2 -0
- package/public/assets/file-pen-Crunre5f.js +2 -0
- package/public/assets/file-text-CKuoMR2U.js +2 -0
- package/public/assets/files-DhhZI2Ih.js +3 -0
- package/public/assets/flag-CnEG9PH-.js +2 -0
- package/public/assets/flame-CxBuz46L.js +2 -0
- package/public/assets/fleet-B_rFEbnL.js +2 -0
- package/public/assets/fleet-metrics-BkHP-P3R.js +2 -0
- package/public/assets/folder-git-2-CJOmTT06.js +2 -0
- package/public/assets/folder-open-CBUCMSlu.js +2 -0
- package/public/assets/folder-tree-BG3Y9nqH.js +2 -0
- package/public/assets/formatted-body-Cm1RrzmN.js +3 -0
- package/public/assets/formatted-body-impl-DQiOuOD1.js +3 -0
- package/public/assets/gauge-BIODY-BQ.js +2 -0
- package/public/assets/geist-cyrillic-wght-normal-CHSlOQsW.woff2 +0 -0
- package/public/assets/geist-latin-ext-wght-normal-DMtmJ5ZE.woff2 +0 -0
- package/public/assets/geist-latin-wght-normal-Dm3htQBi.woff2 +0 -0
- package/public/assets/git-branch-yxhV0m8E.js +2 -0
- package/public/assets/git-commit-horizontal-DS1pJ_SS.js +2 -0
- package/public/assets/git-merge-C7eIG425.js +2 -0
- package/public/assets/github-dark-C-LZuMrd.js +2 -0
- package/public/assets/github-dark-default-DXG-b-1a.js +2 -0
- package/public/assets/github-dark-dimmed-Bx1FflLF.js +2 -0
- package/public/assets/github-dark-high-contrast-B_tTalzw.js +2 -0
- package/public/assets/github-light-EUqPIrTm.js +2 -0
- package/public/assets/github-light-default-BXViO-2h.js +2 -0
- package/public/assets/github-light-high-contrast-B68TUdTA.js +2 -0
- package/public/assets/globe-Cl5fXtqs.js +2 -0
- package/public/assets/glsl-Dv5r7kPw.js +2 -0
- package/public/assets/graphql-CcFwQwm0.js +2 -0
- package/public/assets/gruvbox-dark-hard-C820rvS2.js +2 -0
- package/public/assets/gruvbox-dark-medium-BPjhmG05.js +2 -0
- package/public/assets/gruvbox-dark-soft-MrdJrrXF.js +2 -0
- package/public/assets/gruvbox-light-hard-BC_s9l72.js +2 -0
- package/public/assets/gruvbox-light-medium-BAWPOn9u.js +2 -0
- package/public/assets/gruvbox-light-soft-BSMLrYjP.js +2 -0
- package/public/assets/haml-Bg4I2hiD.js +2 -0
- package/public/assets/handlebars-DnwbnL5R.js +2 -0
- package/public/assets/hash-CbtKih3g.js +2 -0
- package/public/assets/horizon-CE9ld1lL.js +2 -0
- package/public/assets/horizon-bright-DSNQnXHK.js +2 -0
- package/public/assets/host-mTgRw7xh.js +2 -0
- package/public/assets/host-providers-dialog-CHqwXTov.js +2 -0
- package/public/assets/hourglass-txu4ax6n.js +2 -0
- package/public/assets/houston-CsvMBhTu.js +2 -0
- package/public/assets/html-C8UlPnhE.js +2 -0
- package/public/assets/html-derivative-CY6NRz-J.js +2 -0
- package/public/assets/http-CoW620Fi.js +2 -0
- package/public/assets/humwick-lockup-on-dark-Ds44Y7BK.svg +19 -0
- package/public/assets/humwick-lockup-on-light-ClALZAHt.svg +19 -0
- package/public/assets/hurl-CSSETujw.js +2 -0
- package/public/assets/imba-DsUTQ-LC.js +2 -0
- package/public/assets/inbox-Dfwk3Gt8.js +2 -0
- package/public/assets/index-B7ZerHLY.css +2 -0
- package/public/assets/index-BU3uWo2t.js +15 -0
- package/public/assets/input-CsTB6jIx.js +2 -0
- package/public/assets/insights-fH1EL-qZ.js +2 -0
- package/public/assets/integrations-C5Oix6ng.js +2 -0
- package/public/assets/issue-ref-chip-ODyondIa.js +3 -0
- package/public/assets/java-CGc3VwQr.js +2 -0
- package/public/assets/javascript-CUt1pgmJ.js +2 -0
- package/public/assets/jinja-CD-Z-FLd.js +2 -0
- package/public/assets/jison-imPNup1l.js +2 -0
- package/public/assets/json-qhed-kSA.js +2 -0
- package/public/assets/json5-BR5RXkoi.js +2 -0
- package/public/assets/jsonc-CYpm1nAK.js +2 -0
- package/public/assets/jsonl-CmCQp5Yx.js +2 -0
- package/public/assets/jsx-CY6oMTks.js +2 -0
- package/public/assets/julia-CjffhBEM.js +2 -0
- package/public/assets/kanagawa-dragon-CXtmUGW6.js +2 -0
- package/public/assets/kanagawa-lotus-BN08jTvb.js +2 -0
- package/public/assets/kanagawa-wave-CTweb8Dz.js +2 -0
- package/public/assets/kernel-Bqr0CZGv.js +2 -0
- package/public/assets/key-round-CcSxl5qr.js +2 -0
- package/public/assets/keyboard-DcmEulph.js +2 -0
- package/public/assets/label-BPBzm9FJ.js +2 -0
- package/public/assets/laserwave-C_8bwKvT.js +2 -0
- package/public/assets/layers-DEfClY-v.js +2 -0
- package/public/assets/legacy-storage-carry-C-tBSxRA.js +2 -0
- package/public/assets/less-DVTAwKKz.js +2 -0
- package/public/assets/lib-D7DTGM1F.js +2 -0
- package/public/assets/lib-G-25QXXf.js +30 -0
- package/public/assets/light-plus-DVQuIRkW.js +2 -0
- package/public/assets/lightbulb-RDhZ4p-D.js +2 -0
- package/public/assets/link-2-off-DfRF9Hwb.js +2 -0
- package/public/assets/link-6RR7Hy3-.js +2 -0
- package/public/assets/list-checks-CwnS3hly.js +2 -0
- package/public/assets/list-ordered-D8nCM7rT.js +2 -0
- package/public/assets/list-todo-9qT0fgxZ.js +2 -0
- package/public/assets/loader-circle-BfPd4kOD.js +2 -0
- package/public/assets/lock-BW8MPKw_.js +2 -0
- package/public/assets/log-viewer-Cvfy6PW7.js +4 -0
- package/public/assets/mail-DyaDmwfY.js +2 -0
- package/public/assets/maintenance-D8CDH5wZ.js +2 -0
- package/public/assets/managed-agents-egllbpij.js +4 -0
- package/public/assets/markdown-BYOwaDjH.js +2 -0
- package/public/assets/markdown-preview-CYSFgVgK.js +3 -0
- package/public/assets/markdown-preview-impl-BteVIjX4.js +2 -0
- package/public/assets/marko-DvhNOisQ.js +2 -0
- package/public/assets/material-theme-Bm3Qr25_.js +2 -0
- package/public/assets/material-theme-darker-2IIEA8gg.js +2 -0
- package/public/assets/material-theme-lighter-uhdI0v04.js +2 -0
- package/public/assets/material-theme-ocean-CHQ94UKr.js +2 -0
- package/public/assets/material-theme-palenight-B5W6OYN7.js +2 -0
- package/public/assets/mdc-CazklSAj.js +2 -0
- package/public/assets/mdx-DQZ5AkYe.js +2 -0
- package/public/assets/memory-C8WmXsyr.js +2 -0
- package/public/assets/message-circle-wjztgHBe.js +2 -0
- package/public/assets/message-square-C-1G8dMM.js +2 -0
- package/public/assets/message-square-reply-B9Z4cbQx.js +2 -0
- package/public/assets/messages-BzQdqlO6.js +2 -0
- package/public/assets/messages-square-DVM1ZtcI.js +2 -0
- package/public/assets/min-dark-BSWPekZh.js +2 -0
- package/public/assets/min-light-DDpmG2fV.js +2 -0
- package/public/assets/minimize-2-BkK6XoMP.js +2 -0
- package/public/assets/monokai-CdkpiU2Y.js +2 -0
- package/public/assets/night-owl-DhmEMT88.js +2 -0
- package/public/assets/night-owl-light-eJ-hLW7d.js +2 -0
- package/public/assets/nord-Cb4Vim4T.js +2 -0
- package/public/assets/octagon-x-B5lnUY-8.js +2 -0
- package/public/assets/one-dark-pro-CLwyXe_n.js +2 -0
- package/public/assets/one-light-D7Lr4KcI.js +2 -0
- package/public/assets/orchestrators-B1HxzkNw.js +2 -0
- package/public/assets/overview-DCUnI4Z7.js +2 -0
- package/public/assets/package-open-ckPgcjpv.js +2 -0
- package/public/assets/package-plus-C1AKMjsl.js +2 -0
- package/public/assets/pairs-ftCd2XcD.js +2 -0
- package/public/assets/paperclip-CNpKZKum.js +2 -0
- package/public/assets/pause-DttnHD4c.js +2 -0
- package/public/assets/pencil-B1Hf2V_J.js +2 -0
- package/public/assets/php-CBqsN0ai.js +2 -0
- package/public/assets/pin-DcsKeXxr.js +2 -0
- package/public/assets/plastic-DQwYfKfQ.js +2 -0
- package/public/assets/play-BbT8m7A0.js +2 -0
- package/public/assets/plug-vIyO9_P8.js +2 -0
- package/public/assets/plug-zap-V0wMDJ-G.js +2 -0
- package/public/assets/plus-D5Ek4e2S.js +2 -0
- package/public/assets/poimandres-DRFjx7u4.js +2 -0
- package/public/assets/popover-8w1TWKMG.js +2 -0
- package/public/assets/postcss-BXeXVLqQ.js +2 -0
- package/public/assets/power-6tZOhYPg.js +2 -0
- package/public/assets/preload-helper-HclGiUj8.js +1 -0
- package/public/assets/profile-icon-B2zH8DMH.js +2 -0
- package/public/assets/projects-B_lmcqfO.js +2 -0
- package/public/assets/prompt-settings-Bftq9czX.js +2 -0
- package/public/assets/provider-brand-icon-_67JR7Zh.js +2 -0
- package/public/assets/provider-display-DbLWpP3j.js +2 -0
- package/public/assets/pug-C5hz5LQ7.js +2 -0
- package/public/assets/python-gzcpVVnB.js +2 -0
- package/public/assets/r-Dzep-lPg.js +2 -0
- package/public/assets/radio-Bn0_qc0G.js +2 -0
- package/public/assets/react-dom-DSFxiC7T.js +2 -0
- package/public/assets/red-CJ3rzSJv.js +2 -0
- package/public/assets/refresh-cw-CfpvQcUn.js +2 -0
- package/public/assets/regexp-Omp9DhTb.js +2 -0
- package/public/assets/registry-DWCU5c8q.js +4 -0
- package/public/assets/repeat-hl4p_Klo.js +2 -0
- package/public/assets/rocket-BmO1qSu-.js +2 -0
- package/public/assets/rolldown-runtime-QTnfLwEv.js +1 -0
- package/public/assets/rose-pine-BthvhNj6.js +2 -0
- package/public/assets/rose-pine-dawn-Dg85fqjY.js +2 -0
- package/public/assets/rose-pine-moon-hon4tzzS.js +2 -0
- package/public/assets/rotate-ccw-CtD77qkX.js +2 -0
- package/public/assets/rotate-cw-FPtkDewA.js +2 -0
- package/public/assets/run-card-CO_bguQf.js +2 -0
- package/public/assets/sass-DXrisJhu.js +2 -0
- package/public/assets/save-B_PGqSm4.js +2 -0
- package/public/assets/scroll-area-CIN4KQse.js +2 -0
- package/public/assets/scss-DdSxiZKl.js +2 -0
- package/public/assets/search-DjzbnTbf.js +2 -0
- package/public/assets/secrets-C7GIUATz.js +2 -0
- package/public/assets/security-BUFau5-N.js +3 -0
- package/public/assets/select-DTQMP4Dk.js +2 -0
- package/public/assets/separator-t1cLZErD.js +2 -0
- package/public/assets/server-CZIRjFyY.js +2 -0
- package/public/assets/service-access-settings-C3aujqTG.js +2 -0
- package/public/assets/settings-C6sZ9eBa.js +6 -0
- package/public/assets/shellscript-CLZ0U2zV.js +2 -0
- package/public/assets/shield-CtXNUA0i.js +2 -0
- package/public/assets/shield-alert-B9jCWcKW.js +2 -0
- package/public/assets/shipping-Bu8p1gEw.js +2 -0
- package/public/assets/shipping-stats-BiMTsA4A.js +2 -0
- package/public/assets/slack-dark-DnToyrRv.js +2 -0
- package/public/assets/slack-ochin-B2OO5cIa.js +2 -0
- package/public/assets/smile-plus-q6EQBXHZ.js +2 -0
- package/public/assets/snazzy-light-4G7pJPwS.js +2 -0
- package/public/assets/solarized-dark-DV17i1UV.js +2 -0
- package/public/assets/solarized-light-DSh2HLQt.js +2 -0
- package/public/assets/sparkles-CzwR10ZU.js +2 -0
- package/public/assets/sql-DNssxck8.js +2 -0
- package/public/assets/square-Bqly37YM.js +2 -0
- package/public/assets/stats-V9Z-GxUd.js +2 -0
- package/public/assets/status-dot-CVv0iGHL.js +2 -0
- package/public/assets/stethoscope-SCBrnQQ8.js +2 -0
- package/public/assets/store-BvtFdlGX.js +9 -0
- package/public/assets/stylus-B6D30XZt.js +2 -0
- package/public/assets/svelte-DOdLCIlh.js +2 -0
- package/public/assets/switch-DuCA7mrB.js +2 -0
- package/public/assets/synthwave-84-nFMaYfgc.js +2 -0
- package/public/assets/tabs-jZgNvNHr.js +2 -0
- package/public/assets/task-chip-CYj0mpoL.js +2 -0
- package/public/assets/tasks-BIyeAaPC.js +2 -0
- package/public/assets/tasks-CXU75HRF.js +11 -0
- package/public/assets/teams-BPf976zb.js +2 -0
- package/public/assets/terminal-Bl2u7KxT.js +2 -0
- package/public/assets/terminal-viewer-DE9BOe-8.js +3 -0
- package/public/assets/terminal-viewer-impl-BrP-ENHg.css +1 -0
- package/public/assets/terminal-viewer-impl-D04pjmGh.js +143 -0
- package/public/assets/textarea-hs6Mpyfl.js +2 -0
- package/public/assets/themes-G5j9m1Ji.js +2 -0
- package/public/assets/tokyo-night-oM2G3aXe.js +2 -0
- package/public/assets/trash-2-FbcSq927.js +2 -0
- package/public/assets/triangle-alert-BBNhfgMi.js +2 -0
- package/public/assets/ts-tags-Ca73dJJY.js +2 -0
- package/public/assets/tsx-5Eka4NBX.js +2 -0
- package/public/assets/typescript-DOu2WMV5.js +2 -0
- package/public/assets/use-agent-terminal-B1yR456R.js +2 -0
- package/public/assets/use-decisions-D-S4tpDf.js +2 -0
- package/public/assets/use-project-list-B-T2Bnnn.js +2 -0
- package/public/assets/use-selectors-CnrAk2YP.js +6 -0
- package/public/assets/user-avatar-nBFIcR4M.js +2 -0
- package/public/assets/user-cog-CKcouW1J.js +2 -0
- package/public/assets/user-plus-D9749q73.js +2 -0
- package/public/assets/users-C7B3u9jv.js +2 -0
- package/public/assets/versioned-prompt-editor-Diu8BIaM.js +8 -0
- package/public/assets/vesper-DdrHHSXu.js +2 -0
- package/public/assets/vitesse-black-fwtXNY1n.js +2 -0
- package/public/assets/vitesse-dark-BZCL-v6S.js +2 -0
- package/public/assets/vitesse-light-VbXTXTou.js +2 -0
- package/public/assets/volume-2-XrcRKD9Z.js +2 -0
- package/public/assets/vue-Bfx0ffIq.js +2 -0
- package/public/assets/vue-html-BeluIYX0.js +2 -0
- package/public/assets/vue-vine-DGUAbOCX.js +2 -0
- package/public/assets/warehouse-BanzOanY.js +2 -0
- package/public/assets/wasm-BnjxR4X6.js +2 -0
- package/public/assets/wasm-ByWQv1Qj.js +2 -0
- package/public/assets/waypoints-CIzINtLT.js +2 -0
- package/public/assets/wgsl-BsKzXJz4.js +2 -0
- package/public/assets/wit-DdvCle-K.js +2 -0
- package/public/assets/work-queue-TCjJxeT-.js +2 -0
- package/public/assets/workflow-marker-Cf3Hf2fN.js +2 -0
- package/public/assets/workflows-CXQX20Qj.js +6 -0
- package/public/assets/workspaces-qSYzKYMA.js +3 -0
- package/public/assets/wrench-C7-4CgnY.js +2 -0
- package/public/assets/x-Bge17hWJ.js +2 -0
- package/public/assets/xml-DIqSwXR3.js +2 -0
- package/public/assets/yaml-rwi0_p6S.js +2 -0
- package/public/assets/zap-DGuDTw4w.js +2 -0
- package/public/assets/zoom-in-Bs8Qv8VL.js +2 -0
- package/public/assets/zoomable-image-B3Og53nj.js +2 -0
- package/public/cosmos/audio/README.md +50 -0
- package/public/cosmos/audio/alert.mp3 +0 -0
- package/public/cosmos/audio/ambient-bed.mp3 +0 -0
- package/public/cosmos/audio/comet.mp3 +0 -0
- package/public/cosmos/audio/cross-galaxy.mp3 +0 -0
- package/public/cosmos/audio/deploy.mp3 +0 -0
- package/public/cosmos/audio/galaxy-dissipate.mp3 +0 -0
- package/public/cosmos/audio/galaxy-form.mp3 +0 -0
- package/public/cosmos/audio/land.mp3 +0 -0
- package/public/cosmos/audio/reap.mp3 +0 -0
- package/public/cosmos/audio/spawn.mp3 +0 -0
- package/public/cosmos.html +34 -0
- package/public/favicon.ico +0 -0
- package/public/favicon.svg +10 -0
- package/public/icons/apple-touch-icon.png +0 -0
- package/public/icons/humwick-192.png +0 -0
- package/public/icons/humwick-512.png +0 -0
- package/public/icons/humwick.svg +19 -0
- package/public/index.html +188 -0
- package/public/manifest.webmanifest +45 -0
- package/public/sw.js +160 -0
- package/recipes/code-review.yaml +26 -0
- package/recipes/debug.yaml +20 -0
- package/recipes/feature.yaml +26 -0
- package/recipes/refactor.yaml +20 -0
- package/recipes/test.yaml +20 -0
- package/runner/LICENSE +167 -0
- package/runner/agent-bin/agent-relay-browser +10 -0
- package/runner/agent-bin/humwick +10 -0
- package/runner/hooks/fff-search-redirect/fff-search-redirect.cjs +161 -0
- package/runner/hooks/fff-search-redirect/hooks.json +13 -0
- package/runner/hooks/rg-r-guard/hooks.json +18 -0
- package/runner/hooks/rg-r-guard/rg-r-guard.cjs +144 -0
- package/runner/hooks/web-tools-redirect/hooks.json +13 -0
- package/runner/hooks/web-tools-redirect/web-tools-redirect.cjs +84 -0
- package/runner/plugins/browser/skills/playwright-cli/SKILL.md +53 -0
- package/runner/plugins/claude/.claude-plugin/plugin.json +8 -0
- package/runner/plugins/claude/claude-statusline-probe.cjs +144 -0
- package/runner/plugins/claude/hooks/gate-run-guard.provisioned.mjs +914 -0
- package/runner/plugins/claude/hooks/gate-run-guard.sh +9 -0
- package/runner/plugins/claude/hooks/gate-run-guard.ts +237 -0
- package/runner/plugins/claude/hooks/hooks.json +158 -0
- package/runner/plugins/claude/hooks/kill-guard.provisioned.mjs +7027 -0
- package/runner/plugins/claude/hooks/kill-guard.sh +341 -0
- package/runner/plugins/claude/hooks/kill-guard.ts +337 -0
- package/runner/plugins/claude/hooks/permission-request.sh +22 -0
- package/runner/plugins/claude/hooks/post-compact.sh +10 -0
- package/runner/plugins/claude/hooks/post-tool-use.sh +8 -0
- package/runner/plugins/claude/hooks/pre-compact.sh +12 -0
- package/runner/plugins/claude/hooks/read-only-bash-guard.sh +587 -0
- package/runner/plugins/claude/hooks/relay-status.sh +373 -0
- package/runner/plugins/claude/hooks/session-end.sh +26 -0
- package/runner/plugins/claude/hooks/session-start.sh +31 -0
- package/runner/plugins/claude/hooks/shell-trust.ts +28 -0
- package/runner/plugins/claude/hooks/stop-failure.sh +47 -0
- package/runner/plugins/claude/hooks/stop.sh +48 -0
- package/runner/plugins/claude/hooks/subagent-guard.cjs +26 -0
- package/runner/plugins/claude/hooks/subagent-skill-policy.cjs +160 -0
- package/runner/plugins/claude/hooks/subagent-start.sh +13 -0
- package/runner/plugins/claude/hooks/subagent-stop.sh +19 -0
- package/runner/plugins/claude/hooks/user-prompt-submit.sh +18 -0
- package/runner/plugins/claude/hooks/wait-loop-guard.ts +120 -0
- package/runner/plugins/claude/monitors/monitors.json +7 -0
- package/runner/plugins/claude/monitors/relay-monitor.provisioned.mjs +786 -0
- package/runner/plugins/claude/monitors/relay-monitor.ts +58 -0
- package/runner/plugins/claude/skills/disconnect/SKILL.md +16 -0
- package/runner/plugins/claude/skills/label/SKILL.md +23 -0
- package/runner/plugins/claude/skills/message/SKILL.md +40 -0
- package/runner/plugins/claude/skills/pair/SKILL.md +30 -0
- package/runner/plugins/claude/skills/react/SKILL.md +18 -0
- package/runner/plugins/claude/skills/read-message/SKILL.md +24 -0
- package/runner/plugins/claude/skills/reply/SKILL.md +44 -0
- package/runner/plugins/claude/skills/send-claimable/SKILL.md +39 -0
- package/runner/plugins/claude/skills/slice-first/SKILL.md +32 -0
- package/runner/plugins/claude/skills/slice-first/references/plan-recipe.md +46 -0
- package/runner/plugins/claude/skills/status/SKILL.md +16 -0
- package/runner/plugins/claude/skills/tags/SKILL.md +25 -0
- package/runner/plugins/claude/skills/task/SKILL.md +28 -0
- package/runner/plugins/claude-output-style/.claude-plugin/plugin.json +5 -0
- package/runner/plugins/claude-output-style/output-styles/agent-relay.md +5 -0
- package/runner/plugins/codex/skills/disconnect/SKILL.md +15 -0
- package/runner/plugins/codex/skills/guide/SKILL.md +15 -0
- package/runner/plugins/codex/skills/label/SKILL.md +22 -0
- package/runner/plugins/codex/skills/message/SKILL.md +40 -0
- package/runner/plugins/codex/skills/pair/SKILL.md +29 -0
- package/runner/plugins/codex/skills/react/SKILL.md +17 -0
- package/runner/plugins/codex/skills/read-message/SKILL.md +23 -0
- package/runner/plugins/codex/skills/reply/SKILL.md +44 -0
- package/runner/plugins/codex/skills/send-claimable/SKILL.md +39 -0
- package/runner/plugins/codex/skills/slice-first/SKILL.md +32 -0
- package/runner/plugins/codex/skills/slice-first/references/plan-recipe.md +46 -0
- package/runner/plugins/codex/skills/status/SKILL.md +15 -0
- package/runner/plugins/codex/skills/tags/SKILL.md +24 -0
- package/runner/plugins/codex/skills/task/SKILL.md +28 -0
- package/runner/src/adapter.ts +1061 -0
- package/runner/src/adapters/__fixtures__/codex-app-server.ts +47 -0
- package/runner/src/adapters/claude-api.ts +243 -0
- package/runner/src/adapters/claude-context-command.ts +16 -0
- package/runner/src/adapters/claude-credentials.ts +22 -0
- package/runner/src/adapters/claude-delivery-lanes.ts +28 -0
- package/runner/src/adapters/claude-delivery.ts +166 -0
- package/runner/src/adapters/claude-effort.ts +94 -0
- package/runner/src/adapters/claude-exit.ts +290 -0
- package/runner/src/adapters/claude-headless-mirror.ts +88 -0
- package/runner/src/adapters/claude-headless-refusal.ts +51 -0
- package/runner/src/adapters/claude-headless.ts +617 -0
- package/runner/src/adapters/claude-monitor-delivery-plan.ts +317 -0
- package/runner/src/adapters/claude-permission.ts +243 -0
- package/runner/src/adapters/claude-prompt-gates.ts +269 -0
- package/runner/src/adapters/claude-prompt-hook.ts +145 -0
- package/runner/src/adapters/claude-session-capture.ts +293 -0
- package/runner/src/adapters/claude-session-probe.ts +414 -0
- package/runner/src/adapters/claude-shutdown.ts +190 -0
- package/runner/src/adapters/claude-status-detectors.ts +426 -0
- package/runner/src/adapters/claude-subagents.ts +93 -0
- package/runner/src/adapters/claude-submit-confirmation.ts +287 -0
- package/runner/src/adapters/claude-tmux.ts +548 -0
- package/runner/src/adapters/claude-token-usage-capture.ts +253 -0
- package/runner/src/adapters/claude-tool-policy.ts +165 -0
- package/runner/src/adapters/claude-transcript-tail.ts +193 -0
- package/runner/src/adapters/claude-transcript.ts +812 -0
- package/runner/src/adapters/claude.ts +1097 -0
- package/runner/src/adapters/codex-agent-message-capture.ts +189 -0
- package/runner/src/adapters/codex-app-server.ts +70 -0
- package/runner/src/adapters/codex-client.ts +362 -0
- package/runner/src/adapters/codex-effective-config.ts +87 -0
- package/runner/src/adapters/codex-launch-config.ts +153 -0
- package/runner/src/adapters/codex-rollout-context.ts +272 -0
- package/runner/src/adapters/codex-skill-discovery.ts +18 -0
- package/runner/src/adapters/codex-token-usage-capture.ts +163 -0
- package/runner/src/adapters/codex-tool-output.ts +53 -0
- package/runner/src/adapters/codex-turn-outcome.ts +27 -0
- package/runner/src/adapters/codex-version.ts +64 -0
- package/runner/src/adapters/codex.ts +1442 -0
- package/runner/src/adapters/incremental-file.ts +110 -0
- package/runner/src/adapters/opencode-api.ts +71 -0
- package/runner/src/adapters/opencode-context.ts +277 -0
- package/runner/src/adapters/opencode-model-registry.ts +126 -0
- package/runner/src/adapters/opencode-provider.ts +169 -0
- package/runner/src/adapters/opencode-server-retry.ts +50 -0
- package/runner/src/adapters/opencode-soft-steer.ts +302 -0
- package/runner/src/adapters/opencode-spawn.ts +145 -0
- package/runner/src/adapters/opencode-subscribe.ts +62 -0
- package/runner/src/adapters/opencode-token-usage-capture.ts +187 -0
- package/runner/src/adapters/opencode-tool-events.ts +302 -0
- package/runner/src/adapters/opencode-tools-config.ts +17 -0
- package/runner/src/adapters/opencode.ts +2264 -0
- package/runner/src/adapters/project-shell.ts +80 -0
- package/runner/src/adapters/provider-launch-config.ts +21 -0
- package/runner/src/adapters/provider-quota-harvest.ts +127 -0
- package/runner/src/adapters/service-access.ts +153 -0
- package/runner/src/adapters/tmux-offload.ts +207 -0
- package/runner/src/adapters/tool-summary.ts +214 -0
- package/runner/src/agent-redact.ts +75 -0
- package/runner/src/agent-runner/commands/dispatch.ts +185 -0
- package/runner/src/agent-runner/commands/lifecycle.ts +84 -0
- package/runner/src/agent-runner/commands/prompt.ts +284 -0
- package/runner/src/agent-runner/credentials.ts +208 -0
- package/runner/src/agent-runner/http-liveness.ts +85 -0
- package/runner/src/agent-runner/lifecycle-milestones.ts +207 -0
- package/runner/src/agent-runner/lifecycle-phase.ts +80 -0
- package/runner/src/agent-runner/registration.ts +163 -0
- package/runner/src/agent-runner/runner-context.ts +158 -0
- package/runner/src/agent-runner/session-mirror.ts +278 -0
- package/runner/src/agent-runner/task-claims.ts +116 -0
- package/runner/src/agent-runner/token-usage-coverage.ts +54 -0
- package/runner/src/agent-runner/turn-report.ts +269 -0
- package/runner/src/api-budget-accounting.ts +91 -0
- package/runner/src/area-memory.ts +255 -0
- package/runner/src/artifact-path-materialize.ts +52 -0
- package/runner/src/async-guard.ts +35 -0
- package/runner/src/attachment-cache-sweep.ts +31 -0
- package/runner/src/attachment-cache.ts +195 -0
- package/runner/src/background-script-reconcile.ts +106 -0
- package/runner/src/bounded-log.ts +59 -0
- package/runner/src/bounded-spawn-sync.ts +18 -0
- package/runner/src/busy-reconciler.ts +282 -0
- package/runner/src/claim-tracker.ts +140 -0
- package/runner/src/claude-settings.ts +167 -0
- package/runner/src/claude-workspace-trust.ts +289 -0
- package/runner/src/config.ts +547 -0
- package/runner/src/context-boundary.ts +101 -0
- package/runner/src/context-command.ts +151 -0
- package/runner/src/context-probe-state.ts +6 -0
- package/runner/src/continuation-archive.ts +179 -0
- package/runner/src/control-server.ts +730 -0
- package/runner/src/delivery-policy.ts +9 -0
- package/runner/src/delivery-result.ts +24 -0
- package/runner/src/effort-command.ts +125 -0
- package/runner/src/empty-turn.ts +816 -0
- package/runner/src/free-port.ts +25 -0
- package/runner/src/fs-offload.ts +26 -0
- package/runner/src/gate-run-config.ts +35 -0
- package/runner/src/gate-run-lease-probe.ts +38 -0
- package/runner/src/host-asset-plan.ts +450 -0
- package/runner/src/host-claude-config-worker.ts +34 -0
- package/runner/src/host-sources.ts +40 -0
- package/runner/src/inbox-carrier.ts +7 -0
- package/runner/src/index.ts +386 -0
- package/runner/src/launch-assembly.ts +955 -0
- package/runner/src/liveness.ts +105 -0
- package/runner/src/logger.ts +108 -0
- package/runner/src/mcp-outbox.ts +204 -0
- package/runner/src/mcp-preflight.ts +86 -0
- package/runner/src/mcp-source-selection.ts +54 -0
- package/runner/src/mcp-tool-deferral.ts +35 -0
- package/runner/src/mcp-vault-env.ts +25 -0
- package/runner/src/message-body-config/config.ts +16 -0
- package/runner/src/message-body-config.ts +1 -0
- package/runner/src/mid-turn-delivery.ts +43 -0
- package/runner/src/native-memory-lever.ts +329 -0
- package/runner/src/native-self-resume.ts +244 -0
- package/runner/src/outbox.ts +453 -0
- package/runner/src/park-post.ts +17 -0
- package/runner/src/pending-permission-store.ts +148 -0
- package/runner/src/process-meta.ts +9 -0
- package/runner/src/profile-home.ts +419 -0
- package/runner/src/profile-projection.ts +411 -0
- package/runner/src/project-hooks.ts +65 -0
- package/runner/src/project-instructions.ts +119 -0
- package/runner/src/provider-double.ts +59 -0
- package/runner/src/provider-hold.ts +228 -0
- package/runner/src/provider-home-marker.ts +3 -0
- package/runner/src/provider-home-tombstone.ts +4 -0
- package/runner/src/provider-input-queue.ts +134 -0
- package/runner/src/provider-integration.ts +93 -0
- package/runner/src/provider-processes.ts +17 -0
- package/runner/src/provider-submit-failure.ts +15 -0
- package/runner/src/providers.ts +35 -0
- package/runner/src/provisioning.ts +703 -0
- package/runner/src/question-decision.ts +18 -0
- package/runner/src/quota.ts +22 -0
- package/runner/src/rate-limit.ts +351 -0
- package/runner/src/refused-prompt-store.ts +36 -0
- package/runner/src/relay-injection-events.ts +161 -0
- package/runner/src/relay-instructions.ts +107 -0
- package/runner/src/relay-mcp-proxy.long-turn-e2e.ts +183 -0
- package/runner/src/relay-mcp-proxy.ts +704 -0
- package/runner/src/relay-mcp.ts +583 -0
- package/runner/src/reply-obligation-cache.ts +211 -0
- package/runner/src/response-capture-report.ts +111 -0
- package/runner/src/response-routing.ts +6 -0
- package/runner/src/runner-core.ts +2955 -0
- package/runner/src/runner-exit.ts +12 -0
- package/runner/src/runner-helpers.ts +582 -0
- package/runner/src/runner-insights.ts +105 -0
- package/runner/src/runner-mcp-proxy.ts +46 -0
- package/runner/src/runner-spawn-config.ts +68 -0
- package/runner/src/runner-stale-scratch-sweep.ts +21 -0
- package/runner/src/runner.ts +9 -0
- package/runner/src/runtime-token-file.ts +45 -0
- package/runner/src/runtime-token-remint.ts +56 -0
- package/runner/src/service-access.ts +88 -0
- package/runner/src/session-destroy.ts +27 -0
- package/runner/src/session-insights.ts +118 -0
- package/runner/src/session-scratch.ts +296 -0
- package/runner/src/spawn-input.ts +147 -0
- package/runner/src/startup-config-fetch.ts +48 -0
- package/runner/src/subreaper.ts +113 -0
- package/runner/src/template-resolver.ts +29 -0
- package/runner/src/test-run-dedup.ts +435 -0
- package/runner/src/transcript-context.ts +99 -0
- package/runner/src/transport-errors.ts +48 -0
- package/runner/src/turn-opener.ts +55 -0
- package/runner/src/turn-reconcile-event.ts +88 -0
- package/runner/src/vault-proxy-hop.ts +99 -0
- package/runner/src/version.ts +44 -0
- package/runner/src/web-tool-call-proxy.ts +128 -0
- package/runner/src/web-tools.ts +59 -0
- package/runner/test-support/codex-web-config-proof.ts +149 -0
- package/runner/test-support/effective-launch.ts +189 -0
- package/runner/test-support/native-context-sources.ts +77 -0
- package/runner/test-support/provisioning-context.ts +55 -0
- package/runner/test-support/recorder-double.ts +130 -0
- package/runner/test-support/recording-provider.ts +242 -0
- package/runner/test-support/runner-harness.ts +249 -0
- package/runner/test-support/service-access-fixture.ts +12 -0
- package/scripts/agent-vault/bootstrap.py +87 -0
- package/scripts/agent-vault/install.py +200 -0
- package/scripts/agent-vault/install_refresh.py +98 -0
- package/scripts/agent-vault/refresh.py +116 -0
- package/scripts/agent-vault/refresh_provision.py +109 -0
- package/scripts/agent-vault/refresh_store.py +54 -0
- package/scripts/agent-vault/runtime.py +253 -0
- package/scripts/agent-vault/sec-ops-activation.json +23 -0
- package/scripts/artifact-checkout-gc.ts +51 -0
- package/scripts/cd-config.ts +237 -0
- package/scripts/cd-deploy-debounce.ts +94 -0
- package/scripts/cd-deploy-worktree-gc.ts +235 -0
- package/scripts/cd-fleet-membership.ts +48 -0
- package/scripts/cd-host-epochs.ts +101 -0
- package/scripts/cd-hub-wake.ts +40 -0
- package/scripts/cd-land-boundary.ts +49 -0
- package/scripts/cd-watcher.ts +985 -0
- package/scripts/dashboard-build-marker.ts +71 -0
- package/scripts/fleet-sha-coverage.ts +66 -0
- package/scripts/gate-run-lease.ts +329 -0
- package/scripts/gate-slot +9 -0
- package/scripts/gate-slot-fleet-health.ts +60 -0
- package/scripts/gate.sh +6 -0
- package/scripts/install-bin-shim.cjs +149 -0
- package/scripts/orchestrator-spawn-smoke.ts +398 -0
- package/scripts/provisioning-matrix.ts +72 -0
- package/scripts/release-cd-stamp.ts +146 -0
- package/scripts/release-health.ts +133 -0
- package/scripts/release-report.ts +102 -0
- package/scripts/release-upgrade.ts +1296 -0
- package/scripts/steward-policy-cleanup.ts +73 -0
- package/scripts/wait-for-deploy.ts +43 -0
- package/src/agent-authz.ts +219 -0
- package/src/agent-branch-state.ts +45 -0
- package/src/agent-busy-health.ts +158 -0
- package/src/agent-card-projection.ts +86 -0
- package/src/agent-channel-binding.ts +49 -0
- package/src/agent-command-activity.ts +39 -0
- package/src/agent-core.ts +29 -0
- package/src/agent-death-diagnosis.ts +314 -0
- package/src/agent-drive-arbiter.ts +112 -0
- package/src/agent-exit-alarm.ts +10 -0
- package/src/agent-exit-cleanup-async.ts +69 -0
- package/src/agent-exit-cleanup.ts +99 -0
- package/src/agent-exit-report.ts +28 -0
- package/src/agent-issue-repo.ts +53 -0
- package/src/agent-launch-shape-redaction.ts +72 -0
- package/src/agent-lifecycle-events.ts +428 -0
- package/src/agent-principal.ts +14 -0
- package/src/agent-profile-catalog.ts +188 -0
- package/src/agent-ref.ts +340 -0
- package/src/agent-spawn.ts +45 -0
- package/src/agent-status-events.ts +41 -0
- package/src/agent-system-tags.ts +38 -0
- package/src/artifact-media.ts +34 -0
- package/src/artifact-storage.ts +245 -0
- package/src/artifact-text.ts +31 -0
- package/src/async-deadline.ts +59 -0
- package/src/auth/admin-routes.ts +36 -0
- package/src/auth/index.ts +23 -0
- package/src/auth/login-rate-limiter.ts +153 -0
- package/src/auth/password.ts +142 -0
- package/src/auth/provider.ts +60 -0
- package/src/auth/role-scopes.ts +15 -0
- package/src/auth/session-cookie.ts +35 -0
- package/src/auth/session-refresh.ts +61 -0
- package/src/auth/session.test-fixture.ts +10 -0
- package/src/auth/session.ts +107 -0
- package/src/authority-audit.ts +56 -0
- package/src/authz-meta-keys.ts +64 -0
- package/src/auto-spawn-dispatch.ts +154 -0
- package/src/automations/constants.ts +14 -0
- package/src/automations/cron.ts +129 -0
- package/src/automations/crud.ts +129 -0
- package/src/automations/dispatch.ts +299 -0
- package/src/automations/index.ts +5 -0
- package/src/automations/precheck.ts +124 -0
- package/src/automations/reconcile.ts +314 -0
- package/src/automations/storage.ts +200 -0
- package/src/automations/types.ts +16 -0
- package/src/automations/validation.ts +216 -0
- package/src/automations.ts +1 -0
- package/src/branch-landed.ts +761 -0
- package/src/browser-authz.ts +18 -0
- package/src/browser-config.ts +31 -0
- package/src/bundled-workflows.ts +48 -0
- package/src/bus-outbox-async.ts +16 -0
- package/src/bus-outbox.ts +265 -0
- package/src/bus-resume-commands.ts +18 -0
- package/src/bus.ts +792 -0
- package/src/canonical-repo-root.ts +131 -0
- package/src/cd-deploy-notify.ts +59 -0
- package/src/cd-host-deferrals.ts +23 -0
- package/src/cd-host-lag-notify.ts +36 -0
- package/src/cd-repository.ts +49 -0
- package/src/channel-output-control.ts +43 -0
- package/src/channel-output-validation.ts +11 -0
- package/src/channel-policy-health.ts +20 -0
- package/src/channel-target.ts +40 -0
- package/src/channels-host-service.ts +219 -0
- package/src/ci/bun-test-log.ts +41 -0
- package/src/ci/failed-test-files.ts +52 -0
- package/src/ci/gate-history.ts +66 -0
- package/src/ci/github-actions.ts +145 -0
- package/src/ci/incidents.ts +175 -0
- package/src/ci/index.ts +6 -0
- package/src/ci/job-verdict.ts +27 -0
- package/src/ci/land-boundary-ci.ts +104 -0
- package/src/ci/monitor.ts +528 -0
- package/src/ci/not-triggered.ts +116 -0
- package/src/ci/notifications.ts +234 -0
- package/src/ci/provider.ts +87 -0
- package/src/ci/root-missing.ts +35 -0
- package/src/ci/transition-notify.ts +279 -0
- package/src/ci-monitor.ts +7 -0
- package/src/claude-api-budget-async.ts +11 -0
- package/src/claude-api-budget-config.ts +23 -0
- package/src/claude-api-expiry.ts +70 -0
- package/src/claude-api-overflow.ts +146 -0
- package/src/claude-app/config.ts +13 -0
- package/src/claude-app/oauth-http.ts +127 -0
- package/src/claude-app/oauth-provider.ts +136 -0
- package/src/claude-app/passphrase.ts +14 -0
- package/src/claude-app-auth.ts +65 -0
- package/src/claude-app-gateway.ts +68 -0
- package/src/cli/_shared.ts +136 -0
- package/src/cli/agent-detect.ts +175 -0
- package/src/cli/agent-guide.ts +152 -0
- package/src/cli/agent-keep.ts +37 -0
- package/src/cli/agent-meta.ts +111 -0
- package/src/cli/artifact.ts +154 -0
- package/src/cli/browser.ts +56 -0
- package/src/cli/channel-output.ts +17 -0
- package/src/cli/channels-host.ts +13 -0
- package/src/cli/channels.ts +16 -0
- package/src/cli/claude-api-budget.ts +41 -0
- package/src/cli/context-probe.ts +90 -0
- package/src/cli/credentials.ts +1 -0
- package/src/cli/daemon.ts +125 -0
- package/src/cli/dev.ts +185 -0
- package/src/cli/ephemeral.ts +159 -0
- package/src/cli/hosts.ts +41 -0
- package/src/cli/index.ts +442 -0
- package/src/cli/introspect.ts +74 -0
- package/src/cli/maintenance.ts +24 -0
- package/src/cli/merges.ts +78 -0
- package/src/cli/message.ts +229 -0
- package/src/cli/orchestrator.ts +384 -0
- package/src/cli/pair.ts +135 -0
- package/src/cli/profile.ts +35 -0
- package/src/cli/project.ts +52 -0
- package/src/cli/prompts.ts +23 -0
- package/src/cli/provider-enablement.ts +42 -0
- package/src/cli/provider.ts +230 -0
- package/src/cli/recipe.ts +110 -0
- package/src/cli/reply.ts +130 -0
- package/src/cli/roles.ts +60 -0
- package/src/cli/routing-policy.ts +20 -0
- package/src/cli/run.ts +96 -0
- package/src/cli/secrets-backup.ts +85 -0
- package/src/cli/secrets.ts +55 -0
- package/src/cli/service-access.ts +23 -0
- package/src/cli/setup.ts +57 -0
- package/src/cli/shutdown.ts +16 -0
- package/src/cli/spawn.ts +31 -0
- package/src/cli/state.ts +73 -0
- package/src/cli/steward.ts +58 -0
- package/src/cli/task.ts +151 -0
- package/src/cli/team.ts +18 -0
- package/src/cli/timers.ts +53 -0
- package/src/cli/token.ts +72 -0
- package/src/cli/upgrade.ts +200 -0
- package/src/cli/web-tool-calls.ts +17 -0
- package/src/cli/workflow.ts +46 -0
- package/src/cli/workspace.ts +544 -0
- package/src/cli.ts +4 -0
- package/src/codex-reset-consume.ts +274 -0
- package/src/codex-wham-quota.ts +177 -0
- package/src/command-events.ts +69 -0
- package/src/command-secrets.ts +198 -0
- package/src/command-ttl.ts +63 -0
- package/src/commands-db.ts +1200 -0
- package/src/commands-landing-async.ts +166 -0
- package/src/commands-write.ts +168 -0
- package/src/comment-blocks.ts +84 -0
- package/src/compaction-watch.ts +259 -0
- package/src/config-model-selection.ts +14 -0
- package/src/config-store-write.ts +39 -0
- package/src/config-store.ts +1253 -0
- package/src/config.ts +939 -0
- package/src/connector-boot-health.ts +27 -0
- package/src/connector-paths.ts +47 -0
- package/src/connectors.ts +547 -0
- package/src/content-security.ts +12 -0
- package/src/context-advisory.ts +279 -0
- package/src/context-block-rendered-at.ts +33 -0
- package/src/context-injection-channel.ts +49 -0
- package/src/context-router.ts +121 -0
- package/src/context-threshold-config.ts +52 -0
- package/src/continuation-replay-edge.ts +30 -0
- package/src/continuity-working-state.ts +107 -0
- package/src/contracts.ts +109 -0
- package/src/coordinator-authority.ts +100 -0
- package/src/coordinator-digest-config.ts +20 -0
- package/src/cosmos-events.ts +164 -0
- package/src/daemon.ts +570 -0
- package/src/dashboard-notifications.ts +169 -0
- package/src/dashboard-presence.ts +86 -0
- package/src/db/activity-async.ts +58 -0
- package/src/db/activity-read-ops.ts +42 -0
- package/src/db/activity-write-ops.ts +44 -0
- package/src/db/activity.ts +454 -0
- package/src/db/agent-card-read.ts +98 -0
- package/src/db/agent-effort-state.ts +146 -0
- package/src/db/agent-exit-cleanup.ts +94 -0
- package/src/db/agent-exit-report.ts +33 -0
- package/src/db/agent-gate-runs-write-ops.ts +7 -0
- package/src/db/agent-gate-runs.ts +96 -0
- package/src/db/agent-identity-archive.test-fixture.ts +12 -0
- package/src/db/agent-identity-archive.ts +75 -0
- package/src/db/agent-keep.ts +21 -0
- package/src/db/agent-lifecycle-write-ops.ts +93 -0
- package/src/db/agent-meta.ts +74 -0
- package/src/db/agent-outstanding-work.ts +154 -0
- package/src/db/agent-ownership-async.ts +45 -0
- package/src/db/agent-ownership-read-ops.ts +12 -0
- package/src/db/agent-ownership-write-ops.ts +54 -0
- package/src/db/agent-ownership.ts +200 -0
- package/src/db/agent-predicates.ts +64 -0
- package/src/db/agent-read.ts +39 -0
- package/src/db/agent-search-async.ts +21 -0
- package/src/db/agent-search-read-ops.ts +8 -0
- package/src/db/agent-search.ts +162 -0
- package/src/db/agent-shutdown-in-flight.ts +21 -0
- package/src/db/agents-async.ts +337 -0
- package/src/db/agents-prune-write-op.ts +37 -0
- package/src/db/agents-read-ops.ts +33 -0
- package/src/db/agents-write-ops.ts +188 -0
- package/src/db/agents.ts +1284 -0
- package/src/db/api-budget-schema.ts +144 -0
- package/src/db/api-budget-usage-migration.ts +31 -0
- package/src/db/api-budget-usage.ts +40 -0
- package/src/db/artifact-browse.ts +145 -0
- package/src/db/artifact-retention.ts +115 -0
- package/src/db/artifacts-async.ts +81 -0
- package/src/db/artifacts-read-ops.ts +24 -0
- package/src/db/artifacts-write-ops.ts +51 -0
- package/src/db/artifacts.ts +307 -0
- package/src/db/auth-identities.ts +128 -0
- package/src/db/backlog.ts +172 -0
- package/src/db/blackboard.ts +171 -0
- package/src/db/broadcast-scope.ts +63 -0
- package/src/db/broker-memory-migration.ts +71 -0
- package/src/db/browser-sessions.ts +89 -0
- package/src/db/budget-lineage.ts +26 -0
- package/src/db/bus-outbox-read-ops.ts +29 -0
- package/src/db/bus-outbox-write-ops.ts +58 -0
- package/src/db/bus-prune-async.ts +16 -0
- package/src/db/busy-regression.worker.ts +48 -0
- package/src/db/caller-lifecycle.ts +24 -0
- package/src/db/carry-pending-marker.ts +129 -0
- package/src/db/carry-pending.ts +145 -0
- package/src/db/channel-binding-delete.ts +15 -0
- package/src/db/channel-egress-allowlist.ts +200 -0
- package/src/db/channel-identity.ts +38 -0
- package/src/db/channel-runtime.ts +19 -0
- package/src/db/channels-async.ts +55 -0
- package/src/db/channels-read-ops.ts +13 -0
- package/src/db/channels-session-fence.ts +18 -0
- package/src/db/channels-write-ops.ts +46 -0
- package/src/db/channels.ts +654 -0
- package/src/db/checkout-refresh.ts +36 -0
- package/src/db/ci-gate-runs.ts +92 -0
- package/src/db/ci-incidents-async.ts +76 -0
- package/src/db/ci-incidents-read-ops.ts +15 -0
- package/src/db/ci-incidents-write-ops.ts +57 -0
- package/src/db/ci-incidents.ts +667 -0
- package/src/db/ci-sha-observations-schema.ts +33 -0
- package/src/db/claim-sql.ts +44 -0
- package/src/db/claude-api-budget-ops.ts +15 -0
- package/src/db/claude-api-budget-reconcile.ts +39 -0
- package/src/db/claude-api-budget.ts +198 -0
- package/src/db/claude-app-oauth.ts +74 -0
- package/src/db/claude-catalog-reconcile.ts +27 -0
- package/src/db/codex-reset-consumes-async.ts +9 -0
- package/src/db/codex-reset-consumes-read-ops.ts +5 -0
- package/src/db/codex-reset-consumes-write-ops.ts +22 -0
- package/src/db/codex-reset-consumes.ts +122 -0
- package/src/db/command-agent-profiles.ts +58 -0
- package/src/db/command-row.ts +88 -0
- package/src/db/command-terminal-status.ts +33 -0
- package/src/db/command-vault-pruning.ts +30 -0
- package/src/db/commands-cancel-write.ts +45 -0
- package/src/db/commands-claim-admission.ts +144 -0
- package/src/db/commands-effort-read.ts +58 -0
- package/src/db/commands-host-land-admission.ts +106 -0
- package/src/db/commands-kernel-landing.ts +268 -0
- package/src/db/commands-land-occupancy.ts +40 -0
- package/src/db/commands-land-wait.ts +38 -0
- package/src/db/commands-landing-completeness.ts +66 -0
- package/src/db/commands-landing-tuples.ts +22 -0
- package/src/db/commands-landing.ts +1046 -0
- package/src/db/commands-leaseless-sweep.ts +72 -0
- package/src/db/commands-list-query.ts +47 -0
- package/src/db/commands-planner-stats.test-fixture.ts +97 -0
- package/src/db/commands-read-ops.ts +49 -0
- package/src/db/commands-scheduler-recovery.ts +71 -0
- package/src/db/commands-spawn-read.ts +33 -0
- package/src/db/commands-write-ops.ts +307 -0
- package/src/db/config-store-write-ops.ts +60 -0
- package/src/db/connection-instrumentation.ts +76 -0
- package/src/db/connection.ts +532 -0
- package/src/db/context-reset-carry.ts +144 -0
- package/src/db/continuation-archive-purge.ts +48 -0
- package/src/db/continuation-archive-search.ts +249 -0
- package/src/db/continuation-archives-async.ts +59 -0
- package/src/db/continuation-archives-read-ops.ts +10 -0
- package/src/db/continuation-archives-write-ops.ts +17 -0
- package/src/db/continuation-archives.ts +158 -0
- package/src/db/continuations.ts +201 -0
- package/src/db/coordinator-delivery.ts +10 -0
- package/src/db/coordinator-digest-async.ts +13 -0
- package/src/db/coordinator-digest-flush.ts +6 -0
- package/src/db/coordinator-digest.ts +145 -0
- package/src/db/coordinator-seat.ts +130 -0
- package/src/db/crash-reports.ts +115 -0
- package/src/db/db-error-registry.ts +290 -0
- package/src/db/db-reader-worker.ts +91 -0
- package/src/db/db-writer-worker.ts +66 -0
- package/src/db/deferred-lineage-report-queries.ts +28 -0
- package/src/db/deferred-lineage-reports.ts +44 -0
- package/src/db/delivery-async.ts +102 -0
- package/src/db/delivery-expiration-health.ts +97 -0
- package/src/db/delivery-expiration.ts +52 -0
- package/src/db/delivery-quality-async.ts +23 -0
- package/src/db/delivery-quality.ts +116 -0
- package/src/db/delivery-read-ops.ts +26 -0
- package/src/db/delivery-report-echo.ts +53 -0
- package/src/db/delivery-write-ops.ts +77 -0
- package/src/db/delivery.ts +545 -0
- package/src/db/deploy-events-async.ts +66 -0
- package/src/db/deploy-events-read-ops.ts +25 -0
- package/src/db/deploy-events-write-ops.ts +81 -0
- package/src/db/deploy-events.ts +554 -0
- package/src/db/deploy-task-completion.ts +48 -0
- package/src/db/drive-leases.ts +165 -0
- package/src/db/durable-payloads.ts +92 -0
- package/src/db/fixtures/writer-shutdown.ts +28 -0
- package/src/db/fts-query.ts +8 -0
- package/src/db/gate-policy.ts +27 -0
- package/src/db/gate-runs.ts +181 -0
- package/src/db/gateway.ts +513 -0
- package/src/db/generation-launch.ts +82 -0
- package/src/db/guides-search.ts +18 -0
- package/src/db/history-delivery-settle.ts +57 -0
- package/src/db/hosts-async.ts +150 -0
- package/src/db/hosts-backfill.ts +91 -0
- package/src/db/hosts-read-ops.ts +21 -0
- package/src/db/hosts-registration.ts +452 -0
- package/src/db/hosts-views.ts +259 -0
- package/src/db/hosts-write-ops.ts +108 -0
- package/src/db/hosts.ts +251 -0
- package/src/db/human-address.ts +6 -0
- package/src/db/idle-digest.ts +54 -0
- package/src/db/idle-self-care.ts +100 -0
- package/src/db/inbox-async.ts +29 -0
- package/src/db/inbox-read-ops.ts +8 -0
- package/src/db/inbox-write-ops.ts +29 -0
- package/src/db/inbox.ts +197 -0
- package/src/db/index.ts +147 -0
- package/src/db/injection-attempts.ts +41 -0
- package/src/db/insights-read-ops.ts +12 -0
- package/src/db/insights-write-ops.ts +16 -0
- package/src/db/integrations.ts +297 -0
- package/src/db/issue-associations.ts +136 -0
- package/src/db/issue-lifecycle.ts +199 -0
- package/src/db/issue-refs.ts +312 -0
- package/src/db/kernel-event-log-schema.ts +14 -0
- package/src/db/kernel-landing-admission.ts +15 -0
- package/src/db/kernel-landing-command-authority.ts +222 -0
- package/src/db/kernel-persistence-async.ts +48 -0
- package/src/db/kernel-persistence-read-ops.ts +24 -0
- package/src/db/kernel-persistence-write-ops.ts +43 -0
- package/src/db/land-boundaries.ts +138 -0
- package/src/db/land-executing.ts +147 -0
- package/src/db/land-gate-attestations.ts +161 -0
- package/src/db/land-incident-eligibility.ts +44 -0
- package/src/db/land-queue-trace.ts +28 -0
- package/src/db/land-stack.ts +80 -0
- package/src/db/land-telemetry-schema.ts +50 -0
- package/src/db/land-telemetry-write-ops.ts +16 -0
- package/src/db/land-telemetry.ts +114 -0
- package/src/db/land-withdrawal-state.ts +26 -0
- package/src/db/landed-merge-evidence.ts +72 -0
- package/src/db/landed-task-attribution.ts +23 -0
- package/src/db/landing-audit.ts +18 -0
- package/src/db/landing-controllers.ts +67 -0
- package/src/db/landing-ingress-async.ts +102 -0
- package/src/db/landing-ingress-read-ops.ts +8 -0
- package/src/db/landing-ingress-write-ops.ts +42 -0
- package/src/db/landing-ingress.ts +380 -0
- package/src/db/landing-read-ops.ts +18 -0
- package/src/db/landing-receipts.ts +206 -0
- package/src/db/landing-schema.ts +479 -0
- package/src/db/launch-facts.ts +60 -0
- package/src/db/legacy-landing-publication.ts +103 -0
- package/src/db/legacy-message-backfill.ts +90 -0
- package/src/db/lifecycle-seq.ts +127 -0
- package/src/db/lifecycle-write-window.ts +216 -0
- package/src/db/lineage-pair-dedupe-sql.ts +80 -0
- package/src/db/lineage-startup-captures.ts +43 -0
- package/src/db/long-running-work-async.ts +12 -0
- package/src/db/long-running-work-write-ops.ts +8 -0
- package/src/db/long-running-work.ts +78 -0
- package/src/db/macos-privacy.ts +72 -0
- package/src/db/main-connection-writes.ts +44 -0
- package/src/db/main-thread-state.ts +38 -0
- package/src/db/maintenance-health.ts +560 -0
- package/src/db/maintenance-indexes.ts +37 -0
- package/src/db/maintenance-job-runs-async.ts +15 -0
- package/src/db/maintenance-job-runs.ts +62 -0
- package/src/db/maintenance-job-write-ops.ts +10 -0
- package/src/db/maintenance-pauses.ts +224 -0
- package/src/db/maintenance-worker.ts +111 -0
- package/src/db/mappers.ts +422 -0
- package/src/db/memory-preamble-read.ts +13 -0
- package/src/db/memory-resolve.ts +209 -0
- package/src/db/memory-retirement-plan.ts +31 -0
- package/src/db/memory-retirement.ts +15 -0
- package/src/db/merge-drain-async.ts +8 -0
- package/src/db/merge-lease.ts +225 -0
- package/src/db/message-claims.ts +16 -0
- package/src/db/message-queries.ts +16 -0
- package/src/db/message-read-mark.ts +32 -0
- package/src/db/message-reads-async.ts +46 -0
- package/src/db/message-reads-read-ops.ts +35 -0
- package/src/db/message-reads-write-ops.ts +27 -0
- package/src/db/message-reads.ts +553 -0
- package/src/db/message-send-suppression.ts +58 -0
- package/src/db/message-send.ts +76 -0
- package/src/db/message-thread.ts +15 -0
- package/src/db/message-write-ops.ts +100 -0
- package/src/db/messages-async.ts +31 -0
- package/src/db/messages-read-ops.ts +14 -0
- package/src/db/messages.ts +1201 -0
- package/src/db/migration-marker.ts +13 -0
- package/src/db/migrations.ts +1761 -0
- package/src/db/notification-subscriptions.ts +282 -0
- package/src/db/on-loop-write-transaction.ts +34 -0
- package/src/db/operator-actions-schema.ts +10 -0
- package/src/db/operator-decisions.ts +180 -0
- package/src/db/orchestrators-async.ts +61 -0
- package/src/db/orchestrators-read-ops.ts +7 -0
- package/src/db/orchestrators-write-ops.ts +58 -0
- package/src/db/orchestrators.ts +497 -0
- package/src/db/outbox-codec.ts +16 -0
- package/src/db/pair-maintenance.ts +9 -0
- package/src/db/pairs-async.ts +10 -0
- package/src/db/pairs-write-ops.ts +8 -0
- package/src/db/pairs.ts +264 -0
- package/src/db/pending-relay-runs.ts +73 -0
- package/src/db/plan-blurb-migration.ts +158 -0
- package/src/db/plan-ci-blocks.ts +28 -0
- package/src/db/plan-completion.ts +55 -0
- package/src/db/plan-conformance.ts +104 -0
- package/src/db/plan-dispatch-schema.ts +17 -0
- package/src/db/plan-dispatch-store.ts +112 -0
- package/src/db/plan-external.ts +79 -0
- package/src/db/plan-graph-async.ts +23 -0
- package/src/db/plan-graph-read-ops.ts +16 -0
- package/src/db/plan-graph-write-ops.ts +37 -0
- package/src/db/plan-graph.ts +403 -0
- package/src/db/plan-import-schema.ts +19 -0
- package/src/db/plan-import.ts +211 -0
- package/src/db/plan-task-create.ts +44 -0
- package/src/db/planner-stats.ts +123 -0
- package/src/db/plans-async.ts +22 -0
- package/src/db/plans-read-ops.ts +11 -0
- package/src/db/plans-write-ops.ts +9 -0
- package/src/db/plans.ts +385 -0
- package/src/db/policy-runtime.ts +14 -0
- package/src/db/presence-buffer.ts +111 -0
- package/src/db/presence-loop.ts +58 -0
- package/src/db/presence-write-ops.ts +28 -0
- package/src/db/presence-write.ts +38 -0
- package/src/db/profile-artifact-backfill-migration.ts +32 -0
- package/src/db/profile-host-sources-migration.ts +150 -0
- package/src/db/profile-legacy-project-instructions-migration.ts +41 -0
- package/src/db/profile-name-case-migration.ts +46 -0
- package/src/db/profile-override-migration.ts +200 -0
- package/src/db/profile-project-ack-migration.ts +55 -0
- package/src/db/profile-slim-migration.ts +125 -0
- package/src/db/profile-slim-plan.ts +190 -0
- package/src/db/project-entries-async.ts +18 -0
- package/src/db/project-entries-read-ops.ts +28 -0
- package/src/db/project-entries.ts +514 -0
- package/src/db/project-entry-search.ts +63 -0
- package/src/db/project-identity.ts +16 -0
- package/src/db/project-journal.ts +256 -0
- package/src/db/project-lifecycle.ts +80 -0
- package/src/db/project-memory-group-migration.ts +76 -0
- package/src/db/project-phantom-merge.ts +228 -0
- package/src/db/project-root-schema.ts +30 -0
- package/src/db/project-trust-approvals.ts +98 -0
- package/src/db/projects-async.ts +50 -0
- package/src/db/projects-read-ops.ts +59 -0
- package/src/db/projects-write-ops.ts +74 -0
- package/src/db/projects.ts +629 -0
- package/src/db/prompt-templates-schema.ts +23 -0
- package/src/db/prompt-templates.ts +138 -0
- package/src/db/prompt-version-migration.ts +115 -0
- package/src/db/prompt-versions-ops.ts +17 -0
- package/src/db/prompt-versions.ts +167 -0
- package/src/db/provider-catalog-async.ts +31 -0
- package/src/db/provider-catalog-read-ops.ts +8 -0
- package/src/db/provider-catalog-write-ops.ts +16 -0
- package/src/db/provider-config-history.ts +49 -0
- package/src/db/provider-config-secrets.ts +117 -0
- package/src/db/provider-flap-messages-async.ts +6 -0
- package/src/db/provider-flap-messages-write-ops.ts +13 -0
- package/src/db/provider-flap-messages.ts +19 -0
- package/src/db/provider-quota-advisory-types.ts +39 -0
- package/src/db/provider-quota-burn.ts +322 -0
- package/src/db/provider-quota-effect-occurrences.ts +13 -0
- package/src/db/provider-quota-lease-write-ops.ts +24 -0
- package/src/db/provider-quota-leases-async.ts +35 -0
- package/src/db/provider-quota-leases.ts +174 -0
- package/src/db/provider-quota-matrix-cache.ts +85 -0
- package/src/db/provider-quota-matrix-fetch.ts +85 -0
- package/src/db/provider-quota-merge.ts +90 -0
- package/src/db/provider-quota-notification-write.ts +98 -0
- package/src/db/provider-quota-prune.ts +35 -0
- package/src/db/provider-quota-read-async.ts +77 -0
- package/src/db/provider-quota-read-ops.ts +56 -0
- package/src/db/provider-quota-recipients.ts +38 -0
- package/src/db/provider-quota-state.ts +139 -0
- package/src/db/provider-quota-visibility.ts +22 -0
- package/src/db/provider-quota-write-ops.ts +71 -0
- package/src/db/provider-quotas.ts +726 -0
- package/src/db/provider-secret-scrub.ts +64 -0
- package/src/db/provisioning-assets-migration.ts +85 -0
- package/src/db/provisioning-async.ts +116 -0
- package/src/db/provisioning-callmux.ts +184 -0
- package/src/db/provisioning-github-api.ts +16 -0
- package/src/db/provisioning-github-import-target.ts +29 -0
- package/src/db/provisioning-mcp-validation.ts +103 -0
- package/src/db/provisioning-read-ops.ts +23 -0
- package/src/db/provisioning-registry.ts +1122 -0
- package/src/db/provisioning-resolve.ts +321 -0
- package/src/db/provisioning-write-ops.ts +44 -0
- package/src/db/qa-skill-seed.ts +27 -0
- package/src/db/quota-lease-busy.worker.ts +62 -0
- package/src/db/read-op-marshaling-fixtures.ts +724 -0
- package/src/db/read-ops.ts +266 -0
- package/src/db/reader-pool.ts +252 -0
- package/src/db/recipe-read-ops.ts +15 -0
- package/src/db/recipe-write-ops.ts +68 -0
- package/src/db/reply-obligations.ts +265 -0
- package/src/db/report-suppression.ts +126 -0
- package/src/db/restart-epoch-admin-async.ts +14 -0
- package/src/db/restart-epoch-admin.ts +67 -0
- package/src/db/restart-epoch-admission.ts +114 -0
- package/src/db/restart-epoch-async.ts +80 -0
- package/src/db/restart-epoch-begin.ts +177 -0
- package/src/db/restart-epoch-read-ops.ts +40 -0
- package/src/db/restart-epoch-release.ts +248 -0
- package/src/db/restart-epoch-write-ops.ts +117 -0
- package/src/db/restart-epoch.test-fixture.ts +37 -0
- package/src/db/restart-epoch.ts +623 -0
- package/src/db/restart-sensitive.ts +81 -0
- package/src/db/retention.ts +423 -0
- package/src/db/review-ref-cleanups.ts +306 -0
- package/src/db/routing-policy.ts +64 -0
- package/src/db/scheduled-timer-projection.ts +123 -0
- package/src/db/scheduled-timer-quota-chaos-worker.ts +84 -0
- package/src/db/scheduled-timers.ts +521 -0
- package/src/db/schema.ts +1472 -0
- package/src/db/scoped-message-reads.ts +31 -0
- package/src/db/secrets-broker-async.ts +31 -0
- package/src/db/secrets-broker-read-ops.ts +8 -0
- package/src/db/secrets-broker-write-ops.ts +23 -0
- package/src/db/secrets-broker.ts +221 -0
- package/src/db/secrets-vault-import.ts +37 -0
- package/src/db/secrets-vault-key-lifecycle.ts +64 -0
- package/src/db/secrets-vault-metadata.ts +37 -0
- package/src/db/secrets-vault-migration.ts +53 -0
- package/src/db/secrets-vault-write.ts +97 -0
- package/src/db/secrets-vault.ts +69 -0
- package/src/db/self-effort-permissions.ts +50 -0
- package/src/db/service-access-read-ops.ts +10 -0
- package/src/db/services-async.ts +29 -0
- package/src/db/services-read-ops.ts +134 -0
- package/src/db/services-write-ops.ts +74 -0
- package/src/db/shared.ts +7 -0
- package/src/db/shipping-board-async.ts +6 -0
- package/src/db/shipping-board.ts +319 -0
- package/src/db/shipping-stats-async.ts +24 -0
- package/src/db/shipping-stats-histogram.ts +45 -0
- package/src/db/shipping-stats-schema.ts +8 -0
- package/src/db/shipping-stats.ts +265 -0
- package/src/db/snapshot-ledger-prune.ts +53 -0
- package/src/db/spawn-budget.ts +145 -0
- package/src/db/spawn-command-busy.worker.ts +71 -0
- package/src/db/spawn-delegation-state.ts +124 -0
- package/src/db/spawn-delegation.ts +114 -0
- package/src/db/spawn-host-cap.ts +29 -0
- package/src/db/spawn-in-flight-count.ts +37 -0
- package/src/db/spawn-in-flight.ts +15 -0
- package/src/db/spawn-process-evidence.ts +68 -0
- package/src/db/spawn-project-target.ts +57 -0
- package/src/db/spawn-registration-confirmed-backfill.ts +71 -0
- package/src/db/spawn-request-id-migration.ts +36 -0
- package/src/db/spawn-request-id.ts +35 -0
- package/src/db/spawn-request-reuse.ts +28 -0
- package/src/db/spawn-tree-cleanup.ts +92 -0
- package/src/db/spawn-tree.ts +29 -0
- package/src/db/sql-audit-indexes.ts +77 -0
- package/src/db/stalled-message-delivery.ts +52 -0
- package/src/db/startup-write-lock.ts +36 -0
- package/src/db/stats-async.ts +235 -0
- package/src/db/stats-health-read-model.ts +225 -0
- package/src/db/stats-read-ops.ts +25 -0
- package/src/db/stats.ts +633 -0
- package/src/db/target-host.ts +25 -0
- package/src/db/task-async.ts +165 -0
- package/src/db/task-comment-through-async.ts +14 -0
- package/src/db/task-comment-through-read-ops.ts +4 -0
- package/src/db/task-comment-through-write-ops.ts +7 -0
- package/src/db/task-comment-through.ts +123 -0
- package/src/db/task-core.ts +44 -0
- package/src/db/task-deliverables-async.ts +60 -0
- package/src/db/task-deliverables-read-ops.ts +4 -0
- package/src/db/task-deliverables-write-ops.ts +37 -0
- package/src/db/task-deliverables.ts +387 -0
- package/src/db/task-dependency-cycle.worker.ts +43 -0
- package/src/db/task-detail-projection.ts +91 -0
- package/src/db/task-entity-async.ts +252 -0
- package/src/db/task-entity-read-ops.ts +51 -0
- package/src/db/task-entity-write-ops.ts +197 -0
- package/src/db/task-entity.ts +1143 -0
- package/src/db/task-execution.ts +20 -0
- package/src/db/task-issue-relation.ts +23 -0
- package/src/db/task-issue-source.ts +46 -0
- package/src/db/task-land-withdraw-async.ts +10 -0
- package/src/db/task-land-withdraw-read-ops.ts +13 -0
- package/src/db/task-land-withdraw-read.ts +47 -0
- package/src/db/task-land-withdraw-write-ops.ts +31 -0
- package/src/db/task-land-withdraw.ts +423 -0
- package/src/db/task-list.ts +113 -0
- package/src/db/task-maintenance.ts +25 -0
- package/src/db/task-memory-async.ts +19 -0
- package/src/db/task-memory-read-ops.ts +9 -0
- package/src/db/task-memory-write-ops.ts +23 -0
- package/src/db/task-memory.ts +170 -0
- package/src/db/task-owner.ts +126 -0
- package/src/db/task-read-ops.ts +44 -0
- package/src/db/task-review-hold-async.ts +20 -0
- package/src/db/task-review-hold-delivery.ts +58 -0
- package/src/db/task-review-hold-write-ops.ts +26 -0
- package/src/db/task-review-hold.ts +615 -0
- package/src/db/task-state-reconcile-async.ts +12 -0
- package/src/db/task-state-reconcile.ts +163 -0
- package/src/db/task-validation.ts +71 -0
- package/src/db/task-write-ops.ts +145 -0
- package/src/db/tasks.ts +528 -0
- package/src/db/team-epics.ts +37 -0
- package/src/db/team-idle.ts +35 -0
- package/src/db/team-project.ts +69 -0
- package/src/db/team-spawn-delegation-read.ts +36 -0
- package/src/db/team-spawn-delegation.ts +49 -0
- package/src/db/teams-async.ts +58 -0
- package/src/db/teams-read-ops.ts +27 -0
- package/src/db/teams-write-ops.ts +17 -0
- package/src/db/teams.ts +504 -0
- package/src/db/terminal-events.ts +113 -0
- package/src/db/timer-async.ts +523 -0
- package/src/db/timer-cutover-core.ts +545 -0
- package/src/db/timer-cutover-report-read-ops.ts +211 -0
- package/src/db/timer-cutover-write-ops.ts +282 -0
- package/src/db/timer-ingress-payload.ts +160 -0
- package/src/db/timer-ingress-read-ops.ts +39 -0
- package/src/db/timer-ingress-request-keys.ts +282 -0
- package/src/db/timer-ingress-write-ops.ts +154 -0
- package/src/db/timer-ingress.ts +515 -0
- package/src/db/timer-message-cutover.ts +322 -0
- package/src/db/timer-message-fire-deadletter.ts +136 -0
- package/src/db/timer-message-fire.ts +209 -0
- package/src/db/timer-message-flip-chaos-worker.ts +89 -0
- package/src/db/timer-message-flip-consistency.ts +147 -0
- package/src/db/timer-message-flip.ts +676 -0
- package/src/db/timer-message-participant.ts +138 -0
- package/src/db/timer-migrate-input.ts +92 -0
- package/src/db/timer-operator-async.ts +177 -0
- package/src/db/timer-operator-read-ops.ts +21 -0
- package/src/db/timer-operator-stage10.ts +119 -0
- package/src/db/timer-operator-write-ops.ts +116 -0
- package/src/db/timer-operator.ts +393 -0
- package/src/db/timer-read-ops.ts +147 -0
- package/src/db/timer-transfer-errors.ts +10 -0
- package/src/db/timer-transfer-write-ops.ts +43 -0
- package/src/db/timer-verifier-schema.ts +29 -0
- package/src/db/timer-verifier.ts +379 -0
- package/src/db/timer-write-ops.ts +291 -0
- package/src/db/token-db-write-ops.ts +96 -0
- package/src/db/token-standing.ts +84 -0
- package/src/db/token-usage-read-ops.ts +8 -0
- package/src/db/token-usage-write-ops.ts +35 -0
- package/src/db/token-usage.ts +338 -0
- package/src/db/tool-groups-empty-migration.ts +59 -0
- package/src/db/urgent-intake.ts +30 -0
- package/src/db/user-invites.ts +107 -0
- package/src/db/user-settings-read-ops.ts +19 -0
- package/src/db/user-settings-write-ops.ts +43 -0
- package/src/db/users.ts +173 -0
- package/src/db/vault-backup.ts +59 -0
- package/src/db/vault-expiry.ts +71 -0
- package/src/db/vault-health.ts +99 -0
- package/src/db/vault-token-launch.ts +77 -0
- package/src/db/vault-token-ops.ts +14 -0
- package/src/db/vault-tokens.ts +101 -0
- package/src/db/viewer-scope.ts +117 -0
- package/src/db/wal-checkpointer-worker.ts +48 -0
- package/src/db/wal-checkpointer.ts +107 -0
- package/src/db/wal-index.ts +53 -0
- package/src/db/wal-live-log.ts +68 -0
- package/src/db/wal-reclaim-async.ts +45 -0
- package/src/db/wal-reclaim.ts +140 -0
- package/src/db/web-tool-call-ops.ts +15 -0
- package/src/db/web-tool-calls.ts +87 -0
- package/src/db/withdraw-land-error.ts +18 -0
- package/src/db/work-evidence.ts +43 -0
- package/src/db/workflow-budget.ts +44 -0
- package/src/db/workflow-contact.ts +173 -0
- package/src/db/workflow-execution.ts +10 -0
- package/src/db/workflow-journal-async.ts +64 -0
- package/src/db/workflow-journal-prune.ts +71 -0
- package/src/db/workflow-journal-read-ops.ts +21 -0
- package/src/db/workflow-journal-schema.ts +9 -0
- package/src/db/workflow-journal-write-ops.ts +33 -0
- package/src/db/workflow-journal.ts +324 -0
- package/src/db/workflow-spawn-quota.ts +57 -0
- package/src/db/workflow-stats-read-ops.ts +177 -0
- package/src/db/workflow-step-tasks.ts +74 -0
- package/src/db/workflow-task-read-ops.ts +187 -0
- package/src/db/workspace-land-state.ts +65 -0
- package/src/db/workspace-merge-hold.ts +28 -0
- package/src/db/workspace-persistence.ts +77 -0
- package/src/db/workspace-rekey-write-ops.ts +11 -0
- package/src/db/workspace-rekey.ts +148 -0
- package/src/db/workspace-steward-cancel.ts +85 -0
- package/src/db/workspace-steward-fence.ts +30 -0
- package/src/db/workspace-write-ops.ts +26 -0
- package/src/db/workspace-writes-async.ts +46 -0
- package/src/db/workspace-writes.ts +196 -0
- package/src/db/workspaces.ts +617 -0
- package/src/db/write-ops.ts +602 -0
- package/src/db/writer-drain.ts +27 -0
- package/src/db/writer-fault-seam.ts +104 -0
- package/src/db/writer-gateway.ts +843 -0
- package/src/db/writer-ledger.ts +56 -0
- package/src/db.ts +4 -0
- package/src/deploy-executor.ts +139 -0
- package/src/dev.ts +541 -0
- package/src/dispatch-availability.ts +55 -0
- package/src/dispatch-match.ts +21 -0
- package/src/ephemeral/host-landing-slots-proof-worker.ts +45 -0
- package/src/ephemeral/index.ts +58 -0
- package/src/ephemeral/instance.ts +832 -0
- package/src/ephemeral/landing-ingress-proof-worker.ts +30 -0
- package/src/ephemeral/ports.ts +40 -0
- package/src/ephemeral/profile.ts +323 -0
- package/src/ephemeral/rehearsal-stamps.ts +149 -0
- package/src/ephemeral/rehearsal.ts +213 -0
- package/src/ephemeral/snapshot-kernel.ts +41 -0
- package/src/ephemeral/snapshot.ts +753 -0
- package/src/ephemeral/sweep.ts +40 -0
- package/src/event-loop-lag.ts +584 -0
- package/src/event-loop-yield.ts +27 -0
- package/src/events.ts +140 -0
- package/src/execution-mode.ts +63 -0
- package/src/fleet-convergence.ts +123 -0
- package/src/gate-resolver.ts +151 -0
- package/src/gate-run-capture.ts +71 -0
- package/src/git-sha.ts +58 -0
- package/src/guides.ts +73 -0
- package/src/host/capacity.ts +79 -0
- package/src/host/gate-capacity-alert.ts +90 -0
- package/src/host/identity.ts +128 -0
- package/src/host/presentation.ts +234 -0
- package/src/host/pressure-details.ts +89 -0
- package/src/host/pressure.ts +216 -0
- package/src/host/state.ts +132 -0
- package/src/host/utilization-buffer.ts +71 -0
- package/src/host-awareness.ts +57 -0
- package/src/host-identity.ts +39 -0
- package/src/host-provider-enablement.ts +75 -0
- package/src/host-provider-store.ts +102 -0
- package/src/host-tools.ts +39 -0
- package/src/http-body.ts +49 -0
- package/src/http-compression.ts +16 -0
- package/src/hub-metrics-report.ts +67 -0
- package/src/hub-metrics.ts +166 -0
- package/src/idle-digest-config.ts +40 -0
- package/src/idle-self-care.ts +58 -0
- package/src/index.ts +35 -0
- package/src/injection-sweep-pacing.ts +24 -0
- package/src/insights-async.ts +16 -0
- package/src/insights-db.ts +188 -0
- package/src/internal-spawn-model.ts +18 -0
- package/src/invite-link.ts +11 -0
- package/src/issue-tracker/adapter.ts +58 -0
- package/src/issue-tracker/github.ts +342 -0
- package/src/issue-tracker/index.ts +12 -0
- package/src/issue-tracker/registry.ts +26 -0
- package/src/journal-preamble.ts +350 -0
- package/src/kernel-correlation.ts +28 -0
- package/src/land-authorization.ts +73 -0
- package/src/land-block.ts +59 -0
- package/src/land-failure-event-key.ts +8 -0
- package/src/land-gate-failure-routing.ts +69 -0
- package/src/land-gate-notifications.ts +173 -0
- package/src/land-gate-queue-progress.ts +54 -0
- package/src/land-gates-source.ts +126 -0
- package/src/land-gates.ts +29 -0
- package/src/land-lifecycle-drives.ts +15 -0
- package/src/land-settle-dispatch.ts +134 -0
- package/src/land-stack-depth.ts +11 -0
- package/src/land-telemetry.ts +40 -0
- package/src/landing-base-ref.ts +3 -0
- package/src/landing-host-safety.ts +38 -0
- package/src/landing-lane-key.ts +74 -0
- package/src/launch-mode-support.ts +11 -0
- package/src/launch-mode.ts +58 -0
- package/src/legacy-landing.test-fixture.ts +56 -0
- package/src/lifecycle-context-pressure.ts +134 -0
- package/src/lifecycle-manager.ts +831 -0
- package/src/lifecycle-signal-registry.ts +87 -0
- package/src/live-runs-section.ts +38 -0
- package/src/loop-block-attribution.ts +442 -0
- package/src/loop-block-regression-alarm.ts +156 -0
- package/src/loop-task-stamps.ts +62 -0
- package/src/main-thread-clock.ts +95 -0
- package/src/maintenance/agent-identity-archive-job.ts +15 -0
- package/src/maintenance/artifact-checkout-gc-job.ts +14 -0
- package/src/maintenance/artifact-checkout-gc.ts +33 -0
- package/src/maintenance/artifact-sweep.ts +23 -0
- package/src/maintenance/breaker.ts +200 -0
- package/src/maintenance/cd-watcher.ts +176 -0
- package/src/maintenance/checkout-refresh.ts +83 -0
- package/src/maintenance/ci-monitor.ts +14 -0
- package/src/maintenance/claude-api-budget-job.ts +16 -0
- package/src/maintenance/constants.ts +134 -0
- package/src/maintenance/continuation-archive-search-job.ts +27 -0
- package/src/maintenance/critical-job-watchdog.ts +252 -0
- package/src/maintenance/db-planner-stats-job.ts +19 -0
- package/src/maintenance/db-wal-reclaim-job.ts +82 -0
- package/src/maintenance/events.ts +28 -0
- package/src/maintenance/gate-capacity-sample-job.ts +16 -0
- package/src/maintenance/index.ts +10 -0
- package/src/maintenance/jobs.ts +857 -0
- package/src/maintenance/long-running-work.ts +41 -0
- package/src/maintenance/orphaned-sessions.ts +126 -0
- package/src/maintenance/pauses.ts +174 -0
- package/src/maintenance/provider-secret-scrub-job.ts +16 -0
- package/src/maintenance/queued-message-expiration.ts +23 -0
- package/src/maintenance/red-main-controller-job.ts +22 -0
- package/src/maintenance/reply-obligation-parity-job.ts +27 -0
- package/src/maintenance/restart-epoch-hold-health.ts +62 -0
- package/src/maintenance/run-registry.ts +194 -0
- package/src/maintenance/scheduler.ts +778 -0
- package/src/maintenance/service-access-job.ts +31 -0
- package/src/maintenance/shipping-stats-rollup-job.ts +23 -0
- package/src/maintenance/snapshot-ledger-prune-job.ts +17 -0
- package/src/maintenance/stalled-delivery-pager.ts +125 -0
- package/src/maintenance/steward-handback.ts +11 -0
- package/src/maintenance/task-state-reconcile-job.ts +22 -0
- package/src/maintenance/teams.ts +426 -0
- package/src/maintenance/types.ts +124 -0
- package/src/maintenance/vault-backup-job.ts +34 -0
- package/src/maintenance/vault-expiry-job.ts +29 -0
- package/src/maintenance/web-tool-call-prune-job.ts +13 -0
- package/src/maintenance/workflow-backstop-job.ts +12 -0
- package/src/maintenance/workflow-journal-prune-job.ts +29 -0
- package/src/maintenance/workspaces.ts +784 -0
- package/src/maintenance.ts +1 -0
- package/src/managed-policy-escalation.ts +123 -0
- package/src/managed-policy.ts +236 -0
- package/src/managed-provider-gate.ts +27 -0
- package/src/managed-spawn-reservation.ts +23 -0
- package/src/markdown-frontmatter.ts +14 -0
- package/src/mcp/activity-output.ts +57 -0
- package/src/mcp/artifact-upload.ts +53 -0
- package/src/mcp/context-output.ts +73 -0
- package/src/mcp/dispatch-shape-schema.ts +13 -0
- package/src/mcp/guides.ts +33 -0
- package/src/mcp/http.ts +27 -0
- package/src/mcp/identity-projection.ts +121 -0
- package/src/mcp/identity.ts +235 -0
- package/src/mcp/index.ts +355 -0
- package/src/mcp/issue-selector-schema.ts +12 -0
- package/src/mcp/message-read.ts +87 -0
- package/src/mcp/output-descriptions.ts +72 -0
- package/src/mcp/output-levels.ts +71 -0
- package/src/mcp/output-projection.ts +88 -0
- package/src/mcp/plan-presentation.ts +166 -0
- package/src/mcp/presentation-values.ts +11 -0
- package/src/mcp/presentation.ts +653 -0
- package/src/mcp/project-entry-search-schema.ts +7 -0
- package/src/mcp/prompts.ts +36 -0
- package/src/mcp/runtime-output.ts +84 -0
- package/src/mcp/schema-budget.ts +28 -0
- package/src/mcp/self-care-visibility.ts +23 -0
- package/src/mcp/service-access.ts +18 -0
- package/src/mcp/spawn-targets-matrix.ts +68 -0
- package/src/mcp/spawn-targets.test-fixture.ts +21 -0
- package/src/mcp/task-validation-presentation.ts +19 -0
- package/src/mcp/tool-generation.ts +8 -0
- package/src/mcp/tool-groups.ts +136 -0
- package/src/mcp/tools-artifacts.ts +82 -0
- package/src/mcp/tools-messaging.ts +541 -0
- package/src/mcp/tools-permission.ts +88 -0
- package/src/mcp/tools-run.ts +73 -0
- package/src/mcp/tools-scheduler.ts +156 -0
- package/src/mcp/tools-spawn.ts +418 -0
- package/src/mcp/tools-web-tool-calls.ts +28 -0
- package/src/mcp/tools-workspace.ts +260 -0
- package/src/mcp/types.ts +68 -0
- package/src/mcp/validation.ts +66 -0
- package/src/mcp-agent-action.ts +96 -0
- package/src/mcp-agent-keep.ts +37 -0
- package/src/mcp-backlog-tools.ts +137 -0
- package/src/mcp-blackboard-tools.ts +131 -0
- package/src/mcp-channel-binding-tools.ts +27 -0
- package/src/mcp-claude-api-budget.ts +35 -0
- package/src/mcp-codex-reset.ts +43 -0
- package/src/mcp-decision-tools.ts +96 -0
- package/src/mcp-dispatch-tools.ts +142 -0
- package/src/mcp-egress-tools.ts +168 -0
- package/src/mcp-errors.ts +7 -0
- package/src/mcp-host-tools.ts +61 -0
- package/src/mcp-interrupt-agent.ts +47 -0
- package/src/mcp-issue-activity-tools.ts +114 -0
- package/src/mcp-issue-association-tools.ts +103 -0
- package/src/mcp-issue-lifecycle-tools.ts +49 -0
- package/src/mcp-issue-ref-tools.ts +214 -0
- package/src/mcp-maintenance-tools.ts +113 -0
- package/src/mcp-merge-tools.ts +66 -0
- package/src/mcp-notification-subscription-tools.ts +297 -0
- package/src/mcp-output-levels.test-fixture.ts +95 -0
- package/src/mcp-plan-tools.ts +347 -0
- package/src/mcp-profile-trust-tools.ts +47 -0
- package/src/mcp-project-journal-tools.ts +160 -0
- package/src/mcp-project-tools.ts +420 -0
- package/src/mcp-provider-catalog.ts +9 -0
- package/src/mcp-release-tools.ts +33 -0
- package/src/mcp-routing-policy-tools.ts +35 -0
- package/src/mcp-secrets-tools.ts +87 -0
- package/src/mcp-task-deliver-tools.ts +166 -0
- package/src/mcp-task-land-withdraw-tools.ts +49 -0
- package/src/mcp-task-memory-tools.ts +119 -0
- package/src/mcp-task-review-hold-tools.ts +57 -0
- package/src/mcp-task-tools.ts +342 -0
- package/src/mcp-task-validation-tools.ts +30 -0
- package/src/mcp-task-weave-tools.ts +63 -0
- package/src/mcp-team-template-tools.ts +141 -0
- package/src/mcp-team-tools.ts +197 -0
- package/src/mcp-tool-allowlist.ts +88 -0
- package/src/mcp-workflow-tools.ts +158 -0
- package/src/mcp.ts +1 -0
- package/src/memory-admission-rank.ts +55 -0
- package/src/memory-area-injection.ts +216 -0
- package/src/memory-boundary-capture.ts +206 -0
- package/src/memory-entry-safety.ts +28 -0
- package/src/memory-inject-filter.ts +190 -0
- package/src/memory-injection.ts +954 -0
- package/src/memory-preamble-admission.ts +158 -0
- package/src/memory-preamble-async.ts +13 -0
- package/src/memory-preamble.ts +1142 -0
- package/src/memory-retirement.ts +11 -0
- package/src/memory-seam.ts +273 -0
- package/src/memory-tokens.ts +91 -0
- package/src/merge-drain.ts +101 -0
- package/src/merge-pause-maintenance.ts +19 -0
- package/src/message-visibility.ts +50 -0
- package/src/messaging-policy.ts +94 -0
- package/src/native-memory.ts +59 -0
- package/src/notification-prefs.ts +25 -0
- package/src/notification-role-policy.ts +14 -0
- package/src/notification-router.ts +329 -0
- package/src/notification-rules.ts +390 -0
- package/src/notification-settings-store.ts +47 -0
- package/src/notification-settings.ts +166 -0
- package/src/notification-subscription-rules.ts +11 -0
- package/src/notification-types.ts +312 -0
- package/src/notify.ts +55 -0
- package/src/observed-reset-boundary.ts +23 -0
- package/src/observed-reset-refresh.ts +21 -0
- package/src/operator-alarm.ts +41 -0
- package/src/operator-decisions-section.ts +29 -0
- package/src/orchestrator-lookup.ts +29 -0
- package/src/orchestrator-self-report-authz.ts +34 -0
- package/src/package-pack.ts +249 -0
- package/src/post-bind-startup.ts +58 -0
- package/src/process-guard.ts +31 -0
- package/src/profile-cells.ts +305 -0
- package/src/profile-effective-survey.ts +121 -0
- package/src/profile-host-sources.ts +73 -0
- package/src/profile-instruction-blocks.ts +11 -0
- package/src/profile-project-validation.ts +23 -0
- package/src/profile-provider-options.ts +59 -0
- package/src/profile-role-templates.ts +26 -0
- package/src/profile-workflow-policy.ts +14 -0
- package/src/project-claudemd-sweep.ts +176 -0
- package/src/project-file-source.ts +54 -0
- package/src/project-ingest.ts +195 -0
- package/src/project-instructions.ts +700 -0
- package/src/project-mcp.ts +18 -0
- package/src/project-role-assets.ts +109 -0
- package/src/project-roles-validate.ts +53 -0
- package/src/project-roles.ts +364 -0
- package/src/project-settings.ts +5 -0
- package/src/project-skills.ts +5 -0
- package/src/project-toolchain.ts +58 -0
- package/src/project-trust-fingerprint.ts +174 -0
- package/src/project-trust.ts +262 -0
- package/src/project-workflows.ts +185 -0
- package/src/prompt-resolver.ts +697 -0
- package/src/prompt-template-fallback.ts +15 -0
- package/src/prompt-version-errors.ts +13 -0
- package/src/provider-catalog-store.ts +393 -0
- package/src/provider-config-store.ts +308 -0
- package/src/provider-enablement.ts +36 -0
- package/src/provider-home-gc.ts +58 -0
- package/src/provider-model-seed.ts +18 -0
- package/src/provider-quota-async.ts +152 -0
- package/src/provider-quota-config-store.ts +60 -0
- package/src/provider-secrets.test-fixture.ts +34 -0
- package/src/provider-state.ts +93 -0
- package/src/provider-timeline-event.ts +76 -0
- package/src/quota-advisory.ts +359 -0
- package/src/quota-band-delivery.ts +13 -0
- package/src/quota-band-projection.ts +149 -0
- package/src/quota-band-transition.ts +316 -0
- package/src/quota-pacing.ts +46 -0
- package/src/quota-threshold-config.ts +46 -0
- package/src/quota.ts +61 -0
- package/src/ratchet-files.ts +202 -0
- package/src/recipe-async.ts +50 -0
- package/src/recipe-db.ts +260 -0
- package/src/recipe-loader.ts +132 -0
- package/src/recipe-runner.ts +259 -0
- package/src/recipe-validator.ts +107 -0
- package/src/relay-event-drain.ts +39 -0
- package/src/relay-host-locality.ts +20 -0
- package/src/relay-run-lease.ts +17 -0
- package/src/repo-config-source.ts +209 -0
- package/src/report-verbosity.ts +5 -0
- package/src/restart-epoch-deploy-hold.ts +221 -0
- package/src/retention-config-store.ts +32 -0
- package/src/retention-config.ts +70 -0
- package/src/reviewer-pipeline.ts +238 -0
- package/src/routes/_route.ts +70 -0
- package/src/routes/_shared.ts +513 -0
- package/src/routes/activity.ts +70 -0
- package/src/routes/agent-effort.ts +69 -0
- package/src/routes/agent-keep.ts +27 -0
- package/src/routes/agent-profiles.ts +169 -0
- package/src/routes/agent-reporting.ts +19 -0
- package/src/routes/agent-self-effort.ts +51 -0
- package/src/routes/agent-sessions.ts +650 -0
- package/src/routes/agent-sharing.ts +23 -0
- package/src/routes/agents-spawn.ts +258 -0
- package/src/routes/agents.ts +452 -0
- package/src/routes/artifacts.ts +340 -0
- package/src/routes/auth.ts +123 -0
- package/src/routes/authority-audit.ts +14 -0
- package/src/routes/automations.ts +83 -0
- package/src/routes/backlog.ts +112 -0
- package/src/routes/blackboard.ts +54 -0
- package/src/routes/browser.ts +73 -0
- package/src/routes/channel-binding-delete.ts +21 -0
- package/src/routes/channel-output.ts +17 -0
- package/src/routes/claude-api-budget.ts +65 -0
- package/src/routes/commands-listing.ts +50 -0
- package/src/routes/commands.ts +586 -0
- package/src/routes/config.ts +75 -0
- package/src/routes/connectors.ts +108 -0
- package/src/routes/context-resets.ts +35 -0
- package/src/routes/continuation-archives.ts +37 -0
- package/src/routes/coordinator-teams.ts +14 -0
- package/src/routes/decisions.ts +82 -0
- package/src/routes/deploys.ts +15 -0
- package/src/routes/fleet-convergence.ts +5 -0
- package/src/routes/guides.ts +13 -0
- package/src/routes/host-providers.ts +73 -0
- package/src/routes/host-resource-control.ts +48 -0
- package/src/routes/host-secret-files.ts +38 -0
- package/src/routes/hosts.ts +240 -0
- package/src/routes/inbox.ts +151 -0
- package/src/routes/index.ts +614 -0
- package/src/routes/insights.ts +86 -0
- package/src/routes/integrations.ts +636 -0
- package/src/routes/issue-activity.ts +78 -0
- package/src/routes/issue-associations.ts +76 -0
- package/src/routes/issue-lifecycle.ts +34 -0
- package/src/routes/issue-refs.ts +163 -0
- package/src/routes/kernel-timers-operator.ts +57 -0
- package/src/routes/memory.ts +25 -0
- package/src/routes/merges.ts +109 -0
- package/src/routes/message-viewer.ts +4 -0
- package/src/routes/messages.ts +621 -0
- package/src/routes/notifications.ts +36 -0
- package/src/routes/orchestrator-bootstrap.ts +101 -0
- package/src/routes/orchestrator-host-registration.ts +125 -0
- package/src/routes/orchestrator-host-utilization.ts +255 -0
- package/src/routes/orchestrator-proxy.ts +174 -0
- package/src/routes/orchestrator.ts +699 -0
- package/src/routes/pairs.ts +214 -0
- package/src/routes/plans.ts +98 -0
- package/src/routes/project-onboarding.ts +56 -0
- package/src/routes/project-trust.ts +73 -0
- package/src/routes/projects.ts +296 -0
- package/src/routes/prompt-templates.ts +106 -0
- package/src/routes/provider-config.ts +233 -0
- package/src/routes/provider-quota-config.ts +48 -0
- package/src/routes/provider-quotas.ts +312 -0
- package/src/routes/provisioning-registry.ts +192 -0
- package/src/routes/recipes.ts +129 -0
- package/src/routes/restart-epochs.ts +98 -0
- package/src/routes/routing-policy.ts +30 -0
- package/src/routes/run-command.ts +25 -0
- package/src/routes/secrets-backup.ts +53 -0
- package/src/routes/secrets-import.ts +32 -0
- package/src/routes/secrets-page.ts +98 -0
- package/src/routes/secrets-vault.ts +121 -0
- package/src/routes/secrets.ts +165 -0
- package/src/routes/service-access.ts +57 -0
- package/src/routes/settings.ts +191 -0
- package/src/routes/shipping.ts +56 -0
- package/src/routes/spawn-policy.ts +299 -0
- package/src/routes/spec.ts +58 -0
- package/src/routes/sse.ts +18 -0
- package/src/routes/stats.ts +159 -0
- package/src/routes/steward.ts +49 -0
- package/src/routes/task-graph.ts +30 -0
- package/src/routes/task-http.ts +27 -0
- package/src/routes/task-issues.ts +81 -0
- package/src/routes/task-reads.ts +139 -0
- package/src/routes/task-validation.ts +22 -0
- package/src/routes/tasks.ts +553 -0
- package/src/routes/team-templates.ts +65 -0
- package/src/routes/teams-config.ts +15 -0
- package/src/routes/teams.ts +141 -0
- package/src/routes/token-usage.ts +167 -0
- package/src/routes/tokens.ts +393 -0
- package/src/routes/users.ts +248 -0
- package/src/routes/viewer-read.ts +27 -0
- package/src/routes/web-tool-calls.ts +38 -0
- package/src/routes/workflows.ts +142 -0
- package/src/routes/workspaces.ts +642 -0
- package/src/routes.ts +3 -0
- package/src/routing-eligibility.ts +42 -0
- package/src/routing-model-aliases.ts +21 -0
- package/src/routing-policy-normalize.ts +412 -0
- package/src/routing-policy-push.ts +154 -0
- package/src/routing-policy-service.ts +19 -0
- package/src/routing-policy-store.ts +16 -0
- package/src/routing-preferences.ts +82 -0
- package/src/routing-step-defaults.ts +31 -0
- package/src/runtime-grant.ts +164 -0
- package/src/runtime-prefix.ts +8 -0
- package/src/runtime-tokens.ts +404 -0
- package/src/search-query.ts +10 -0
- package/src/secret-keys.ts +24 -0
- package/src/secrets-broker/config.ts +53 -0
- package/src/secrets-broker/error.ts +8 -0
- package/src/secrets-broker/infisical.ts +259 -0
- package/src/secrets-broker/reader-infisical.ts +41 -0
- package/src/secrets-broker/reader.ts +101 -0
- package/src/secrets-broker/service.ts +242 -0
- package/src/secrets-broker/tool-credentials.ts +9 -0
- package/src/secrets-vault/backend-conformance.ts +26 -0
- package/src/secrets-vault/backend.ts +102 -0
- package/src/secrets-vault/backup.ts +103 -0
- package/src/secrets-vault/config.ts +7 -0
- package/src/secrets-vault/expiry.ts +10 -0
- package/src/secrets-vault/identity.ts +27 -0
- package/src/secrets-vault/import.ts +90 -0
- package/src/secrets-vault/key-files.ts +91 -0
- package/src/secrets-vault/keys.ts +79 -0
- package/src/secrets-vault/metadata.ts +51 -0
- package/src/secrets-vault/provider-env.ts +25 -0
- package/src/secrets-vault/resolve.ts +101 -0
- package/src/secrets-vault/restore.ts +57 -0
- package/src/secrets-vault/scope.ts +25 -0
- package/src/secrets-vault/service.ts +192 -0
- package/src/secrets-vault/shared.ts +10 -0
- package/src/security.ts +772 -0
- package/src/self-effort-rule.ts +36 -0
- package/src/self-resume-carry.ts +131 -0
- package/src/self-resume-command.ts +24 -0
- package/src/self-resume-config.ts +54 -0
- package/src/self-resume-identity.ts +40 -0
- package/src/self-resume-supersede.ts +19 -0
- package/src/self-resume.ts +884 -0
- package/src/server-background.ts +24 -0
- package/src/server.ts +726 -0
- package/src/service-access/config.ts +3 -0
- package/src/service-access/health.ts +151 -0
- package/src/service-access/host-health.ts +62 -0
- package/src/service-access/host.ts +63 -0
- package/src/service-access/operations.ts +21 -0
- package/src/service-access/policy.ts +30 -0
- package/src/service-access/probe.ts +62 -0
- package/src/service-access/request-logs.ts +93 -0
- package/src/service-access/scope.ts +7 -0
- package/src/service-access/service.ts +185 -0
- package/src/service-access/tokens.ts +174 -0
- package/src/service-access/validation.ts +75 -0
- package/src/service-access/vault.ts +59 -0
- package/src/services/agent-action.ts +238 -0
- package/src/services/agent-control-host.ts +74 -0
- package/src/services/agent-effort.ts +60 -0
- package/src/services/agent-hang-watchdog-job.ts +513 -0
- package/src/services/agent-hang-watchdog-wiring.ts +487 -0
- package/src/services/agent-hang-watchdog.ts +395 -0
- package/src/services/agent-keep.ts +72 -0
- package/src/services/agent-message-fanout.ts +91 -0
- package/src/services/agent-outstanding-work.ts +66 -0
- package/src/services/agent-reporting.ts +27 -0
- package/src/services/artifact-access.ts +39 -0
- package/src/services/artifact-multipart.ts +70 -0
- package/src/services/artifact-path-host.ts +55 -0
- package/src/services/artifact-read.ts +88 -0
- package/src/services/artifact-write.ts +25 -0
- package/src/services/auth-context.ts +117 -0
- package/src/services/automatic-disposal.ts +33 -0
- package/src/services/backlog.ts +149 -0
- package/src/services/browser-inventory.ts +52 -0
- package/src/services/browser-session-state.ts +41 -0
- package/src/services/browser-session.ts +167 -0
- package/src/services/bus-command-update.ts +84 -0
- package/src/services/bus-expiration-death.ts +57 -0
- package/src/services/canonical-root.ts +284 -0
- package/src/services/captured-delivery-gate.ts +12 -0
- package/src/services/carry-pending.ts +5 -0
- package/src/services/channel-binding-delete.ts +20 -0
- package/src/services/channel-suppression-receipt.ts +28 -0
- package/src/services/checkout-refresh-state.ts +18 -0
- package/src/services/checkout-refresh.test-fixture.ts +12 -0
- package/src/services/child-work-evidence.ts +77 -0
- package/src/services/claude-app.ts +91 -0
- package/src/services/command-claim-rejection.ts +23 -0
- package/src/services/command-host.ts +42 -0
- package/src/services/coordinator-digest.ts +30 -0
- package/src/services/decision-audience.ts +26 -0
- package/src/services/delivery-gate-policy.ts +98 -0
- package/src/services/delivery-tip.test-fixture.ts +25 -0
- package/src/services/diff-gate.ts +110 -0
- package/src/services/dispatch-command.ts +388 -0
- package/src/services/effective-launch-driver.ts +240 -0
- package/src/services/effective-launch-harness.ts +257 -0
- package/src/services/errors.ts +31 -0
- package/src/services/git-process.ts +176 -0
- package/src/services/git-remote.ts +100 -0
- package/src/services/harness-subagents.ts +12 -0
- package/src/services/host-changed-paths.test-fixture.ts +134 -0
- package/src/services/host-landing-placement.ts +65 -0
- package/src/services/host-project-readiness.ts +49 -0
- package/src/services/host-providers.ts +114 -0
- package/src/services/host-utilization.ts +70 -0
- package/src/services/idle-agent-digest.ts +318 -0
- package/src/services/idle-epics.ts +105 -0
- package/src/services/idle-self-care.ts +47 -0
- package/src/services/interrupt-agent.ts +146 -0
- package/src/services/isolated-workspace-placement.ts +258 -0
- package/src/services/issue-activity.ts +23 -0
- package/src/services/issue-associations.ts +72 -0
- package/src/services/issue-completion-drain.ts +24 -0
- package/src/services/issue-completion.ts +24 -0
- package/src/services/issue-lifecycle-comments.ts +12 -0
- package/src/services/issue-lifecycle.ts +620 -0
- package/src/services/issue-refs.ts +65 -0
- package/src/services/kernel-command-bridge.ts +219 -0
- package/src/services/kernel-control-host.ts +78 -0
- package/src/services/kernel-control-http.ts +119 -0
- package/src/services/kernel-control-mcp.ts +193 -0
- package/src/services/kernel-landing-command.ts +28 -0
- package/src/services/kernel-landing-ingress.ts +65 -0
- package/src/services/kernel-timers-authoritative-ingress.ts +48 -0
- package/src/services/kernel-timers-authz.ts +229 -0
- package/src/services/kernel-timers-command.ts +182 -0
- package/src/services/kernel-timers-cutover-chaos-worker.ts +211 -0
- package/src/services/kernel-timers-cutover.ts +39 -0
- package/src/services/kernel-timers-ingress-apply.ts +39 -0
- package/src/services/kernel-timers-ingress-chaos-worker.ts +312 -0
- package/src/services/kernel-timers-ingress.ts +702 -0
- package/src/services/kernel-timers-message-authority-chaos-worker.ts +97 -0
- package/src/services/kernel-timers-migrate.ts +158 -0
- package/src/services/kernel-timers-operator-chaos-worker.ts +259 -0
- package/src/services/kernel-timers-operator-preflight.ts +18 -0
- package/src/services/kernel-timers-operator.ts +424 -0
- package/src/services/kernel-timers-outbox.ts +138 -0
- package/src/services/kernel-timers-request-key-migration-chaos-worker.ts +80 -0
- package/src/services/kernel-timers-stage10-operator.ts +210 -0
- package/src/services/kernel-timers-stage10.ts +85 -0
- package/src/services/kernel-timers-stage9.ts +57 -0
- package/src/services/kernel-timers-transfer-chaos-worker.ts +118 -0
- package/src/services/kernel-timers-transfer.ts +525 -0
- package/src/services/kernel-timers-verifier.ts +39 -0
- package/src/services/kernel-timers.ts +247 -0
- package/src/services/land-boundary-settle.ts +32 -0
- package/src/services/land-gate-placement.ts +60 -0
- package/src/services/land-issue-relations.ts +46 -0
- package/src/services/land-restart-retry.ts +77 -0
- package/src/services/landed-ancestry.ts +417 -0
- package/src/services/landed-task-attribution.ts +14 -0
- package/src/services/landing-terminal-report.ts +119 -0
- package/src/services/legacy-landing-backfill.ts +159 -0
- package/src/services/legacy-landing-host.ts +291 -0
- package/src/services/legacy-landing-publication.ts +35 -0
- package/src/services/legacy-landing-recovery.ts +111 -0
- package/src/services/macos-privacy.ts +34 -0
- package/src/services/managed-running.ts +189 -0
- package/src/services/memory-areas.ts +172 -0
- package/src/services/memory-identity.ts +162 -0
- package/src/services/merge-pause.ts +37 -0
- package/src/services/message-delivery-actions.ts +11 -0
- package/src/services/operator-decisions.ts +260 -0
- package/src/services/orchestrator-landing-recovery.ts +55 -0
- package/src/services/orchestrator-registration-recovery.ts +12 -0
- package/src/services/orchestrator-upgrade.ts +83 -0
- package/src/services/parity-harness.ts +141 -0
- package/src/services/permission-decision.ts +129 -0
- package/src/services/plan-ci-recovery.ts +76 -0
- package/src/services/plan-conformance.ts +105 -0
- package/src/services/plan-dispatch-policy.ts +79 -0
- package/src/services/plan-dispatch.ts +372 -0
- package/src/services/plan-external-view.ts +7 -0
- package/src/services/plan-frontier.ts +34 -0
- package/src/services/plan-graph.ts +703 -0
- package/src/services/plan-import.ts +66 -0
- package/src/services/plan-live-bindings.ts +139 -0
- package/src/services/plan-task-create.ts +80 -0
- package/src/services/plan-terminal-refs.ts +83 -0
- package/src/services/plan-wake-digest.ts +88 -0
- package/src/services/plan-wake-policy.ts +12 -0
- package/src/services/profile-trust.ts +54 -0
- package/src/services/project-checkout-binding.ts +65 -0
- package/src/services/project-checkout-enrollment.ts +27 -0
- package/src/services/project-cwd.ts +41 -0
- package/src/services/project-onboarding.ts +165 -0
- package/src/services/project-repo-create.ts +27 -0
- package/src/services/project-role.test-fixture.ts +74 -0
- package/src/services/project.ts +191 -0
- package/src/services/prompt-templates.ts +46 -0
- package/src/services/prompt-version-writer.ts +42 -0
- package/src/services/provider-catalog.ts +7 -0
- package/src/services/provider-hold-flap.ts +130 -0
- package/src/services/provider-hold-nudge.ts +191 -0
- package/src/services/provider-hold-record.ts +137 -0
- package/src/services/provider-state-audit.ts +214 -0
- package/src/services/provisioning-harness/analyze.ts +285 -0
- package/src/services/provisioning-harness/budget-baseline.json +391 -0
- package/src/services/provisioning-harness/capture.ts +197 -0
- package/src/services/provisioning-harness/config.ts +55 -0
- package/src/services/provisioning-harness/context-sources.ts +85 -0
- package/src/services/provisioning-harness/driver.ts +156 -0
- package/src/services/provisioning-harness/expect.ts +81 -0
- package/src/services/provisioning-harness/fixture-matrix.ts +38 -0
- package/src/services/provisioning-harness/fixtures/project/.agent-relay/land-gates.json +1 -0
- package/src/services/provisioning-harness/fixtures/project/.claude/skills/harness-skill/SKILL.md +6 -0
- package/src/services/provisioning-harness/fixtures/project/.mcp.json +1 -0
- package/src/services/provisioning-harness/fixtures/project/AGENTS.md +1 -0
- package/src/services/provisioning-harness/fixtures/project/CLAUDE.md +1 -0
- package/src/services/provisioning-harness/fixtures/project/mcp-server.ts +33 -0
- package/src/services/provisioning-harness/fixtures/provider-home/AGENTS.md +1 -0
- package/src/services/provisioning-harness/fixtures/provider-home/CLAUDE.md +1 -0
- package/src/services/provisioning-harness/host-fixtures.ts +25 -0
- package/src/services/provisioning-harness/index.ts +4 -0
- package/src/services/provisioning-harness/inventory-types.ts +8 -0
- package/src/services/provisioning-harness/inventory.ts +33 -0
- package/src/services/provisioning-harness/lifecycle.ts +193 -0
- package/src/services/provisioning-harness/live.ts +61 -0
- package/src/services/provisioning-harness/manifests.ts +118 -0
- package/src/services/provisioning-harness/prepare.ts +113 -0
- package/src/services/provisioning-harness/redundancy-report.ts +32 -0
- package/src/services/provisioning-harness/redundancy.ts +137 -0
- package/src/services/provisioning-harness/report.ts +129 -0
- package/src/services/provisioning-harness/types.ts +174 -0
- package/src/services/provisioning-registry.ts +15 -0
- package/src/services/rate-limit-resume.ts +220 -0
- package/src/services/reap-verdict.ts +52 -0
- package/src/services/red-main-auto-revert.ts +103 -0
- package/src/services/red-main-controller-deps.ts +80 -0
- package/src/services/red-main-controller.ts +262 -0
- package/src/services/red-main-incident.ts +44 -0
- package/src/services/red-main-quarantine.ts +92 -0
- package/src/services/register-agent.ts +447 -0
- package/src/services/release-readiness.ts +219 -0
- package/src/services/reported-exit-death.ts +29 -0
- package/src/services/response-report-admission.ts +17 -0
- package/src/services/restart-epoch-driver.ts +290 -0
- package/src/services/restart-epoch-reconciler.ts +326 -0
- package/src/services/restart-epoch-stale-command-recovery.ts +133 -0
- package/src/services/restart-instructions.ts +86 -0
- package/src/services/restart-project-role.ts +74 -0
- package/src/services/restart-secret-refs.ts +14 -0
- package/src/services/restart-spawn.ts +510 -0
- package/src/services/review-publish.ts +76 -0
- package/src/services/review-ref-reconcile.ts +337 -0
- package/src/services/run-command-input.ts +22 -0
- package/src/services/run-command.ts +510 -0
- package/src/services/run-completion-message.ts +70 -0
- package/src/services/run-log.ts +212 -0
- package/src/services/run-queue.ts +63 -0
- package/src/services/scheduler-command-cancel.ts +49 -0
- package/src/services/scheduler-command.ts +590 -0
- package/src/services/scheduler-create.ts +25 -0
- package/src/services/scheduler-plan.ts +202 -0
- package/src/services/scheduler-recovery.ts +31 -0
- package/src/services/scheduler.ts +406 -0
- package/src/services/self-care-state.ts +10 -0
- package/src/services/self-effort-grant.ts +93 -0
- package/src/services/self-effort.ts +152 -0
- package/src/services/send-message.ts +548 -0
- package/src/services/server-credentials.ts +53 -0
- package/src/services/shipping-board.ts +111 -0
- package/src/services/shipping-project-config.ts +86 -0
- package/src/services/shipping-stats.ts +86 -0
- package/src/services/shutdown-agent.ts +463 -0
- package/src/services/shutdown-watchdog.ts +119 -0
- package/src/services/spawn-agent.ts +967 -0
- package/src/services/spawn-approval.ts +26 -0
- package/src/services/spawn-brief.ts +39 -0
- package/src/services/spawn-chain-inspector.ts +286 -0
- package/src/services/spawn-cwd-placement.ts +250 -0
- package/src/services/spawn-identity.ts +127 -0
- package/src/services/spawn-instruction-inputs.ts +114 -0
- package/src/services/spawn-issue-activity.ts +102 -0
- package/src/services/spawn-launch-decision.ts +32 -0
- package/src/services/spawn-launch.ts +116 -0
- package/src/services/spawn-loss-escalation.ts +253 -0
- package/src/services/spawn-placement.test-fixture.ts +30 -0
- package/src/services/spawn-project-role.ts +133 -0
- package/src/services/spawn-registration-watchdog.ts +352 -0
- package/src/services/spawn-replay.ts +61 -0
- package/src/services/spawn-repo-probe.ts +118 -0
- package/src/services/spawn-tree-cleanup.ts +37 -0
- package/src/services/spawn-warnings.ts +13 -0
- package/src/services/steward-reaper.ts +244 -0
- package/src/services/task-context-hydration.ts +413 -0
- package/src/services/task-delivery-close.ts +26 -0
- package/src/services/task-delivery-event.ts +11 -0
- package/src/services/task-delivery-land-policy.ts +35 -0
- package/src/services/task-delivery-summary.ts +38 -0
- package/src/services/task-delivery.ts +762 -0
- package/src/services/task-dependency-graph.ts +116 -0
- package/src/services/task-dispatch.ts +178 -0
- package/src/services/task-done-when.ts +45 -0
- package/src/services/task-entity.ts +758 -0
- package/src/services/task-from-issue.ts +80 -0
- package/src/services/task-issue-digest.ts +45 -0
- package/src/services/task-issue-link.ts +158 -0
- package/src/services/task-issue-weave.ts +570 -0
- package/src/services/task-land-withdraw.ts +462 -0
- package/src/services/task-lifecycle.ts +668 -0
- package/src/services/task-nothing-to-land.ts +37 -0
- package/src/services/task-plan-view.ts +172 -0
- package/src/services/task-review-hold.ts +244 -0
- package/src/services/task-semantic-events.ts +396 -0
- package/src/services/task-stage-wake.ts +15 -0
- package/src/services/task-state-reconcile.ts +169 -0
- package/src/services/task-validation.ts +42 -0
- package/src/services/team-claim-race.worker.ts +72 -0
- package/src/services/team-spawn-delegation.ts +30 -0
- package/src/services/team-templates.ts +172 -0
- package/src/services/team.ts +320 -0
- package/src/services/terminal-provider-exit.ts +57 -0
- package/src/services/timer-message-fire-chaos-worker.ts +29 -0
- package/src/services/timer-message-fire-outbox.ts +184 -0
- package/src/services/transient-agent-reaper.ts +412 -0
- package/src/services/turn-reconcile-audit.ts +236 -0
- package/src/services/user-onboarding.ts +98 -0
- package/src/services/user-profile.ts +57 -0
- package/src/services/web-search.ts +83 -0
- package/src/services/web-tool-calls.ts +65 -0
- package/src/services/withdraw-steward.ts +57 -0
- package/src/services/work-finality.ts +34 -0
- package/src/services/workflow-agent-obligation.ts +35 -0
- package/src/services/workflow-auto-start.ts +126 -0
- package/src/services/workflow-backstop.ts +38 -0
- package/src/services/workflow-budget.test-fixture.ts +10 -0
- package/src/services/workflow-caller.ts +32 -0
- package/src/services/workflow-catalog.ts +43 -0
- package/src/services/workflow-child-proof-worker.ts +76 -0
- package/src/services/workflow-child.test-fixture.ts +51 -0
- package/src/services/workflow-ci-main.ts +93 -0
- package/src/services/workflow-control-proof-worker.ts +149 -0
- package/src/services/workflow-coordinator-decision-proof-worker.ts +123 -0
- package/src/services/workflow-coordinator.ts +8 -0
- package/src/services/workflow-decision-answer.ts +18 -0
- package/src/services/workflow-decision-proof-worker.ts +92 -0
- package/src/services/workflow-decision.test-fixture.ts +58 -0
- package/src/services/workflow-decisions.ts +107 -0
- package/src/services/workflow-deferred-cleanup.ts +40 -0
- package/src/services/workflow-dispatch-result.ts +20 -0
- package/src/services/workflow-effect-driver.ts +165 -0
- package/src/services/workflow-effects.ts +544 -0
- package/src/services/workflow-foreach-proof-worker.ts +209 -0
- package/src/services/workflow-land-notice.ts +18 -0
- package/src/services/workflow-land.ts +105 -0
- package/src/services/workflow-notice.ts +32 -0
- package/src/services/workflow-overdue-notice.ts +19 -0
- package/src/services/workflow-pins.ts +162 -0
- package/src/services/workflow-reconcile.ts +210 -0
- package/src/services/workflow-resume-pins.ts +30 -0
- package/src/services/workflow-run-chaos-worker.ts +67 -0
- package/src/services/workflow-run-view.ts +71 -0
- package/src/services/workflow-run.test-fixture.ts +165 -0
- package/src/services/workflow-runs.ts +370 -0
- package/src/services/workflow-scripts.ts +100 -0
- package/src/services/workflow-slice-proof.ts +14 -0
- package/src/services/workflow-stats.ts +208 -0
- package/src/services/workflow-supervisor-state.ts +117 -0
- package/src/services/workflow-supervisor.ts +122 -0
- package/src/services/workflow-verification.ts +68 -0
- package/src/services/workspace-recovery.ts +168 -0
- package/src/services/workspace-task-binding.ts +22 -0
- package/src/settings/modules.ts +149 -0
- package/src/settings/registry.ts +629 -0
- package/src/settings/user-settings.ts +81 -0
- package/src/setup.ts +199 -0
- package/src/shared-mcp.ts +87 -0
- package/src/shutdown.ts +33 -0
- package/src/spawn-admission.ts +48 -0
- package/src/spawn-budget.ts +18 -0
- package/src/spawn-command.ts +373 -0
- package/src/spawn-env.ts +27 -0
- package/src/spawn-intent.ts +17 -0
- package/src/spawn-lease.ts +41 -0
- package/src/spawn-models.ts +22 -0
- package/src/spawn-placement.ts +348 -0
- package/src/spawn-profile-errors.ts +9 -0
- package/src/spawn-quota.ts +15 -0
- package/src/spawn-targets.ts +679 -0
- package/src/sse-agent-status.ts +35 -0
- package/src/sse-outbox-cursor.ts +28 -0
- package/src/sse-visibility.ts +36 -0
- package/src/sse.ts +684 -0
- package/src/startup-context-injection.ts +518 -0
- package/src/startup-timing.ts +30 -0
- package/src/state-adoption/artifacts.ts +27 -0
- package/src/state-adoption/cd-cutover.ts +125 -0
- package/src/state-adoption/files.ts +31 -0
- package/src/state-adoption/index.ts +166 -0
- package/src/state-adoption/linux-plan.ts +67 -0
- package/src/state-adoption/linux.ts +104 -0
- package/src/state-adoption/macos-plan.ts +58 -0
- package/src/state-adoption/macos.ts +112 -0
- package/src/steward-claim-release.ts +38 -0
- package/src/steward-handoff.ts +28 -0
- package/src/steward-identity.ts +54 -0
- package/src/steward-policy-cleanup.ts +222 -0
- package/src/steward-policy-model-reconcile.ts +33 -0
- package/src/steward-policy-name.ts +13 -0
- package/src/steward-provenance.ts +59 -0
- package/src/steward-queue.ts +85 -0
- package/src/steward-slot-recovery.ts +34 -0
- package/src/steward-spawn-guard.ts +344 -0
- package/src/steward.test-fixture.ts +11 -0
- package/src/steward.ts +199 -0
- package/src/stream-proxy.ts +84 -0
- package/src/task-authz.ts +40 -0
- package/src/task-completion.ts +39 -0
- package/src/task-dispatch-live.ts +70 -0
- package/src/task-dispatcher-ranking.ts +136 -0
- package/src/task-dispatcher.ts +841 -0
- package/src/task-owner-notices.ts +35 -0
- package/src/task-owner.ts +63 -0
- package/src/task-plan-status.ts +21 -0
- package/src/task-verification.ts +35 -0
- package/src/team-idle-tracker.ts +39 -0
- package/src/team-template-config.ts +100 -0
- package/src/teams-config-store.ts +22 -0
- package/src/terminal-authz.ts +49 -0
- package/src/token-db-write.ts +44 -0
- package/src/token-db.ts +487 -0
- package/src/token-usage-async.ts +40 -0
- package/src/transport-subscriptions.ts +57 -0
- package/src/types.ts +1 -0
- package/src/upgrade-install-verify.ts +179 -0
- package/src/upgrade-local-id.ts +3 -0
- package/src/upgrade-services.ts +125 -0
- package/src/upgrade.ts +1006 -0
- package/src/user-awaiting-reply.ts +42 -0
- package/src/user-path.ts +246 -0
- package/src/user-settings-async.ts +33 -0
- package/src/user-settings-store.ts +106 -0
- package/src/user-style.ts +83 -0
- package/src/utils.ts +42 -0
- package/src/validation.ts +324 -0
- package/src/vault-backup-config.ts +28 -0
- package/src/vault-expiry-config.ts +12 -0
- package/src/versioned-prompts.ts +57 -0
- package/src/workflow-capabilities.ts +10 -0
- package/src/workflow-prompt-templates.ts +20 -0
- package/src/workspace-action-audit.ts +42 -0
- package/src/workspace-actions.ts +689 -0
- package/src/workspace-auto-merge.ts +1055 -0
- package/src/workspace-changed-paths-client.ts +97 -0
- package/src/workspace-claim.ts +45 -0
- package/src/workspace-cleanup-settle.ts +51 -0
- package/src/workspace-cleanup-stale.ts +231 -0
- package/src/workspace-command-settle.ts +589 -0
- package/src/workspace-config.ts +7 -0
- package/src/workspace-conflict-resolver.ts +182 -0
- package/src/workspace-dead-owner-recovery.ts +19 -0
- package/src/workspace-delivery-tip.ts +51 -0
- package/src/workspace-escalation.ts +107 -0
- package/src/workspace-git-state-client.ts +42 -0
- package/src/workspace-host-client.ts +86 -0
- package/src/workspace-host-target.ts +5 -0
- package/src/workspace-host.ts +61 -0
- package/src/workspace-human-escalation.ts +70 -0
- package/src/workspace-land-gate-watchdog.ts +76 -0
- package/src/workspace-land-gate.ts +99 -0
- package/src/workspace-land-result.ts +12 -0
- package/src/workspace-land-retry.ts +82 -0
- package/src/workspace-land-stopped.ts +57 -0
- package/src/workspace-merge-dispatch.ts +27 -0
- package/src/workspace-merge-progress.ts +369 -0
- package/src/workspace-merge-retry-policy.ts +59 -0
- package/src/workspace-merge.ts +614 -0
- package/src/workspace-nothing-to-land-notice.ts +27 -0
- package/src/workspace-orphans.ts +927 -0
- package/src/workspace-phase.ts +507 -0
- package/src/workspace-pr-completion.ts +285 -0
- package/src/workspace-probe.ts +212 -0
- package/src/workspace-recorded-land.ts +47 -0
- package/src/workspace-recovery-authz.ts +88 -0
- package/src/workspace-rekey.ts +106 -0
- package/src/workspace-steward-authority.ts +16 -0
- package/src/workspace-steward-failure.ts +42 -0
- package/src/workspace-steward-wake.ts +150 -0
- package/src/workspace-steward-watchdog.ts +240 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var e=Object.freeze(JSON.parse(`{"colors":{"activityBar.activeBackground":"#00000000","activityBar.activeBorder":"#00000000","activityBar.activeFocusBorder":"#00000000","activityBar.background":"#11111b","activityBar.border":"#00000000","activityBar.dropBorder":"#cba6f733","activityBar.foreground":"#cba6f7","activityBar.inactiveForeground":"#6c7086","activityBarBadge.background":"#cba6f7","activityBarBadge.foreground":"#11111b","activityBarTop.activeBorder":"#00000000","activityBarTop.dropBorder":"#cba6f733","activityBarTop.foreground":"#cba6f7","activityBarTop.inactiveForeground":"#6c7086","badge.background":"#45475a","badge.foreground":"#cdd6f4","banner.background":"#45475a","banner.foreground":"#cdd6f4","banner.iconForeground":"#cdd6f4","breadcrumb.activeSelectionForeground":"#cba6f7","breadcrumb.background":"#1e1e2e","breadcrumb.focusForeground":"#cba6f7","breadcrumb.foreground":"#cdd6f4cc","breadcrumbPicker.background":"#181825","button.background":"#cba6f7","button.border":"#00000000","button.foreground":"#11111b","button.hoverBackground":"#dec7fa","button.secondaryBackground":"#585b70","button.secondaryBorder":"#cba6f7","button.secondaryForeground":"#cdd6f4","button.secondaryHoverBackground":"#686b84","button.separator":"#00000000","charts.blue":"#89b4fa","charts.foreground":"#cdd6f4","charts.green":"#a6e3a1","charts.lines":"#bac2de","charts.orange":"#fab387","charts.purple":"#cba6f7","charts.red":"#f38ba8","charts.yellow":"#f9e2af","checkbox.background":"#45475a","checkbox.border":"#00000000","checkbox.foreground":"#cba6f7","commandCenter.activeBackground":"#585b7033","commandCenter.activeBorder":"#cba6f7","commandCenter.activeForeground":"#cba6f7","commandCenter.background":"#181825","commandCenter.border":"#00000000","commandCenter.foreground":"#bac2de","commandCenter.inactiveBorder":"#00000000","commandCenter.inactiveForeground":"#bac2de","debugConsole.errorForeground":"#f38ba8","debugConsole.infoForeground":"#89b4fa","debugConsole.sourceForeground":"#f5e0dc","debugConsole.warningForeground":"#fab387","debugConsoleInputIcon.foreground":"#cdd6f4","debugExceptionWidget.background":"#11111b","debugExceptionWidget.border":"#cba6f7","debugIcon.breakpointCurrentStackframeForeground":"#585b70","debugIcon.breakpointDisabledForeground":"#f38ba899","debugIcon.breakpointForeground":"#f38ba8","debugIcon.breakpointStackframeForeground":"#585b70","debugIcon.breakpointUnverifiedForeground":"#a6738c","debugIcon.continueForeground":"#a6e3a1","debugIcon.disconnectForeground":"#585b70","debugIcon.pauseForeground":"#89b4fa","debugIcon.restartForeground":"#94e2d5","debugIcon.startForeground":"#a6e3a1","debugIcon.stepBackForeground":"#585b70","debugIcon.stepIntoForeground":"#cdd6f4","debugIcon.stepOutForeground":"#cdd6f4","debugIcon.stepOverForeground":"#cba6f7","debugIcon.stopForeground":"#f38ba8","debugTokenExpression.boolean":"#cba6f7","debugTokenExpression.error":"#f38ba8","debugTokenExpression.number":"#fab387","debugTokenExpression.string":"#a6e3a1","debugToolBar.background":"#11111b","debugToolBar.border":"#00000000","descriptionForeground":"#cdd6f4","diffEditor.border":"#585b70","diffEditor.diagonalFill":"#585b7099","diffEditor.insertedLineBackground":"#a6e3a126","diffEditor.insertedTextBackground":"#a6e3a133","diffEditor.removedLineBackground":"#f38ba826","diffEditor.removedTextBackground":"#f38ba833","diffEditorOverview.insertedForeground":"#a6e3a1cc","diffEditorOverview.removedForeground":"#f38ba8cc","disabledForeground":"#a6adc8","dropdown.background":"#181825","dropdown.border":"#cba6f7","dropdown.foreground":"#cdd6f4","dropdown.listBackground":"#585b70","editor.background":"#1e1e2e","editor.findMatchBackground":"#5e3f53","editor.findMatchBorder":"#f38ba833","editor.findMatchHighlightBackground":"#3e5767","editor.findMatchHighlightBorder":"#89dceb33","editor.findRangeHighlightBackground":"#3e5767","editor.findRangeHighlightBorder":"#89dceb33","editor.focusedStackFrameHighlightBackground":"#a6e3a126","editor.foldBackground":"#89dceb40","editor.foreground":"#cdd6f4","editor.hoverHighlightBackground":"#89dceb40","editor.lineHighlightBackground":"#cdd6f412","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#89dceb40","editor.rangeHighlightBorder":"#00000000","editor.selectionBackground":"#9399b240","editor.selectionHighlightBackground":"#9399b233","editor.selectionHighlightBorder":"#9399b233","editor.stackFrameHighlightBackground":"#f9e2af26","editor.wordHighlightBackground":"#9399b233","editor.wordHighlightStrongBackground":"#89b4fa33","editorBracketHighlight.foreground1":"#f38ba8","editorBracketHighlight.foreground2":"#fab387","editorBracketHighlight.foreground3":"#f9e2af","editorBracketHighlight.foreground4":"#a6e3a1","editorBracketHighlight.foreground5":"#74c7ec","editorBracketHighlight.foreground6":"#cba6f7","editorBracketHighlight.unexpectedBracket.foreground":"#eba0ac","editorBracketMatch.background":"#9399b21a","editorBracketMatch.border":"#9399b2","editorCodeLens.foreground":"#7f849c","editorCursor.background":"#1e1e2e","editorCursor.foreground":"#f5e0dc","editorError.background":"#00000000","editorError.border":"#00000000","editorError.foreground":"#f38ba8","editorGroup.border":"#585b70","editorGroup.dropBackground":"#cba6f733","editorGroup.emptyBackground":"#1e1e2e","editorGroupHeader.tabsBackground":"#11111b","editorGutter.addedBackground":"#a6e3a1","editorGutter.background":"#1e1e2e","editorGutter.commentGlyphForeground":"#cba6f7","editorGutter.commentRangeForeground":"#313244","editorGutter.deletedBackground":"#f38ba8","editorGutter.foldingControlForeground":"#9399b2","editorGutter.modifiedBackground":"#f9e2af","editorHoverWidget.background":"#181825","editorHoverWidget.border":"#585b70","editorHoverWidget.foreground":"#cdd6f4","editorIndentGuide.activeBackground":"#585b70","editorIndentGuide.background":"#45475a","editorInfo.background":"#00000000","editorInfo.border":"#00000000","editorInfo.foreground":"#89b4fa","editorInlayHint.background":"#181825bf","editorInlayHint.foreground":"#585b70","editorInlayHint.parameterBackground":"#181825bf","editorInlayHint.parameterForeground":"#a6adc8","editorInlayHint.typeBackground":"#181825bf","editorInlayHint.typeForeground":"#bac2de","editorLightBulb.foreground":"#f9e2af","editorLineNumber.activeForeground":"#cba6f7","editorLineNumber.foreground":"#7f849c","editorLink.activeForeground":"#cba6f7","editorMarkerNavigation.background":"#181825","editorMarkerNavigationError.background":"#f38ba8","editorMarkerNavigationInfo.background":"#89b4fa","editorMarkerNavigationWarning.background":"#fab387","editorOverviewRuler.background":"#181825","editorOverviewRuler.border":"#cdd6f412","editorOverviewRuler.modifiedForeground":"#f9e2af","editorRuler.foreground":"#585b70","editorStickyScrollHover.background":"#313244","editorSuggestWidget.background":"#181825","editorSuggestWidget.border":"#585b70","editorSuggestWidget.foreground":"#cdd6f4","editorSuggestWidget.highlightForeground":"#cba6f7","editorSuggestWidget.selectedBackground":"#313244","editorWarning.background":"#00000000","editorWarning.border":"#00000000","editorWarning.foreground":"#fab387","editorWhitespace.foreground":"#9399b266","editorWidget.background":"#181825","editorWidget.foreground":"#cdd6f4","editorWidget.resizeBorder":"#585b70","errorForeground":"#f38ba8","errorLens.errorBackground":"#f38ba826","errorLens.errorBackgroundLight":"#f38ba826","errorLens.errorForeground":"#f38ba8","errorLens.errorForegroundLight":"#f38ba8","errorLens.errorMessageBackground":"#f38ba826","errorLens.hintBackground":"#a6e3a126","errorLens.hintBackgroundLight":"#a6e3a126","errorLens.hintForeground":"#a6e3a1","errorLens.hintForegroundLight":"#a6e3a1","errorLens.hintMessageBackground":"#a6e3a126","errorLens.infoBackground":"#89b4fa26","errorLens.infoBackgroundLight":"#89b4fa26","errorLens.infoForeground":"#89b4fa","errorLens.infoForegroundLight":"#89b4fa","errorLens.infoMessageBackground":"#89b4fa26","errorLens.statusBarErrorForeground":"#f38ba8","errorLens.statusBarHintForeground":"#a6e3a1","errorLens.statusBarIconErrorForeground":"#f38ba8","errorLens.statusBarIconWarningForeground":"#fab387","errorLens.statusBarInfoForeground":"#89b4fa","errorLens.statusBarWarningForeground":"#fab387","errorLens.warningBackground":"#fab38726","errorLens.warningBackgroundLight":"#fab38726","errorLens.warningForeground":"#fab387","errorLens.warningForegroundLight":"#fab387","errorLens.warningMessageBackground":"#fab38726","extensionBadge.remoteBackground":"#89b4fa","extensionBadge.remoteForeground":"#11111b","extensionButton.prominentBackground":"#cba6f7","extensionButton.prominentForeground":"#11111b","extensionButton.prominentHoverBackground":"#dec7fa","extensionButton.separator":"#1e1e2e","extensionIcon.preReleaseForeground":"#585b70","extensionIcon.sponsorForeground":"#f5c2e7","extensionIcon.starForeground":"#f9e2af","extensionIcon.verifiedForeground":"#a6e3a1","focusBorder":"#cba6f7","foreground":"#cdd6f4","gitDecoration.addedResourceForeground":"#a6e3a1","gitDecoration.conflictingResourceForeground":"#cba6f7","gitDecoration.deletedResourceForeground":"#f38ba8","gitDecoration.ignoredResourceForeground":"#6c7086","gitDecoration.modifiedResourceForeground":"#f9e2af","gitDecoration.stageDeletedResourceForeground":"#f38ba8","gitDecoration.stageModifiedResourceForeground":"#f9e2af","gitDecoration.submoduleResourceForeground":"#89b4fa","gitDecoration.untrackedResourceForeground":"#a6e3a1","gitlens.closedAutolinkedIssueIconColor":"#cba6f7","gitlens.closedPullRequestIconColor":"#f38ba8","gitlens.decorations.branchAheadForegroundColor":"#a6e3a1","gitlens.decorations.branchBehindForegroundColor":"#fab387","gitlens.decorations.branchDivergedForegroundColor":"#f9e2af","gitlens.decorations.branchMissingUpstreamForegroundColor":"#fab387","gitlens.decorations.branchUnpublishedForegroundColor":"#a6e3a1","gitlens.decorations.statusMergingOrRebasingConflictForegroundColor":"#eba0ac","gitlens.decorations.statusMergingOrRebasingForegroundColor":"#f9e2af","gitlens.decorations.workspaceCurrentForegroundColor":"#cba6f7","gitlens.decorations.workspaceRepoMissingForegroundColor":"#a6adc8","gitlens.decorations.workspaceRepoOpenForegroundColor":"#cba6f7","gitlens.decorations.worktreeHasUncommittedChangesForegroundColor":"#fab387","gitlens.decorations.worktreeMissingForegroundColor":"#eba0ac","gitlens.graphChangesColumnAddedColor":"#a6e3a1","gitlens.graphChangesColumnDeletedColor":"#f38ba8","gitlens.graphLane10Color":"#f5c2e7","gitlens.graphLane1Color":"#cba6f7","gitlens.graphLane2Color":"#f9e2af","gitlens.graphLane3Color":"#89b4fa","gitlens.graphLane4Color":"#f2cdcd","gitlens.graphLane5Color":"#a6e3a1","gitlens.graphLane6Color":"#b4befe","gitlens.graphLane7Color":"#f5e0dc","gitlens.graphLane8Color":"#f38ba8","gitlens.graphLane9Color":"#94e2d5","gitlens.graphMinimapMarkerHeadColor":"#a6e3a1","gitlens.graphMinimapMarkerHighlightsColor":"#f9e2af","gitlens.graphMinimapMarkerLocalBranchesColor":"#89b4fa","gitlens.graphMinimapMarkerRemoteBranchesColor":"#71a4f9","gitlens.graphMinimapMarkerStashesColor":"#cba6f7","gitlens.graphMinimapMarkerTagsColor":"#f2cdcd","gitlens.graphMinimapMarkerUpstreamColor":"#93dd8d","gitlens.graphScrollMarkerHeadColor":"#a6e3a1","gitlens.graphScrollMarkerHighlightsColor":"#f9e2af","gitlens.graphScrollMarkerLocalBranchesColor":"#89b4fa","gitlens.graphScrollMarkerRemoteBranchesColor":"#71a4f9","gitlens.graphScrollMarkerStashesColor":"#cba6f7","gitlens.graphScrollMarkerTagsColor":"#f2cdcd","gitlens.graphScrollMarkerUpstreamColor":"#93dd8d","gitlens.gutterBackgroundColor":"#3132444d","gitlens.gutterForegroundColor":"#cdd6f4","gitlens.gutterUncommittedForegroundColor":"#cba6f7","gitlens.lineHighlightBackgroundColor":"#cba6f726","gitlens.lineHighlightOverviewRulerColor":"#cba6f7cc","gitlens.mergedPullRequestIconColor":"#cba6f7","gitlens.openAutolinkedIssueIconColor":"#a6e3a1","gitlens.openPullRequestIconColor":"#a6e3a1","gitlens.trailingLineBackgroundColor":"#00000000","gitlens.trailingLineForegroundColor":"#cdd6f44d","gitlens.unpublishedChangesIconColor":"#a6e3a1","gitlens.unpublishedCommitIconColor":"#a6e3a1","gitlens.unpulledChangesIconColor":"#fab387","icon.foreground":"#cba6f7","input.background":"#313244","input.border":"#00000000","input.foreground":"#cdd6f4","input.placeholderForeground":"#cdd6f473","inputOption.activeBackground":"#585b70","inputOption.activeBorder":"#cba6f7","inputOption.activeForeground":"#cdd6f4","inputValidation.errorBackground":"#f38ba8","inputValidation.errorBorder":"#11111b33","inputValidation.errorForeground":"#11111b","inputValidation.infoBackground":"#89b4fa","inputValidation.infoBorder":"#11111b33","inputValidation.infoForeground":"#11111b","inputValidation.warningBackground":"#fab387","inputValidation.warningBorder":"#11111b33","inputValidation.warningForeground":"#11111b","issues.closed":"#cba6f7","issues.newIssueDecoration":"#f5e0dc","issues.open":"#a6e3a1","list.activeSelectionBackground":"#313244","list.activeSelectionForeground":"#cdd6f4","list.dropBackground":"#cba6f733","list.focusAndSelectionBackground":"#45475a","list.focusBackground":"#313244","list.focusForeground":"#cdd6f4","list.focusOutline":"#00000000","list.highlightForeground":"#cba6f7","list.hoverBackground":"#31324480","list.hoverForeground":"#cdd6f4","list.inactiveSelectionBackground":"#313244","list.inactiveSelectionForeground":"#cdd6f4","list.warningForeground":"#fab387","listFilterWidget.background":"#45475a","listFilterWidget.noMatchesOutline":"#f38ba8","listFilterWidget.outline":"#00000000","menu.background":"#1e1e2e","menu.border":"#1e1e2e80","menu.foreground":"#cdd6f4","menu.selectionBackground":"#585b70","menu.selectionBorder":"#00000000","menu.selectionForeground":"#cdd6f4","menu.separatorBackground":"#585b70","menubar.selectionBackground":"#45475a","menubar.selectionForeground":"#cdd6f4","merge.commonContentBackground":"#45475a","merge.commonHeaderBackground":"#585b70","merge.currentContentBackground":"#a6e3a133","merge.currentHeaderBackground":"#a6e3a166","merge.incomingContentBackground":"#89b4fa33","merge.incomingHeaderBackground":"#89b4fa66","minimap.background":"#18182580","minimap.errorHighlight":"#f38ba8bf","minimap.findMatchHighlight":"#89dceb4d","minimap.selectionHighlight":"#585b70bf","minimap.selectionOccurrenceHighlight":"#585b70bf","minimap.warningHighlight":"#fab387bf","minimapGutter.addedBackground":"#a6e3a1bf","minimapGutter.deletedBackground":"#f38ba8bf","minimapGutter.modifiedBackground":"#f9e2afbf","minimapSlider.activeBackground":"#cba6f799","minimapSlider.background":"#cba6f733","minimapSlider.hoverBackground":"#cba6f766","notificationCenter.border":"#cba6f7","notificationCenterHeader.background":"#181825","notificationCenterHeader.foreground":"#cdd6f4","notificationLink.foreground":"#89b4fa","notificationToast.border":"#cba6f7","notifications.background":"#181825","notifications.border":"#cba6f7","notifications.foreground":"#cdd6f4","notificationsErrorIcon.foreground":"#f38ba8","notificationsInfoIcon.foreground":"#89b4fa","notificationsWarningIcon.foreground":"#fab387","panel.background":"#1e1e2e","panel.border":"#585b70","panelSection.border":"#585b70","panelSection.dropBackground":"#cba6f733","panelTitle.activeBorder":"#cba6f7","panelTitle.activeForeground":"#cdd6f4","panelTitle.inactiveForeground":"#a6adc8","peekView.border":"#cba6f7","peekViewEditor.background":"#181825","peekViewEditor.matchHighlightBackground":"#89dceb4d","peekViewEditor.matchHighlightBorder":"#00000000","peekViewEditorGutter.background":"#181825","peekViewResult.background":"#181825","peekViewResult.fileForeground":"#cdd6f4","peekViewResult.lineForeground":"#cdd6f4","peekViewResult.matchHighlightBackground":"#89dceb4d","peekViewResult.selectionBackground":"#313244","peekViewResult.selectionForeground":"#cdd6f4","peekViewTitle.background":"#1e1e2e","peekViewTitleDescription.foreground":"#bac2deb3","peekViewTitleLabel.foreground":"#cdd6f4","pickerGroup.border":"#cba6f7","pickerGroup.foreground":"#cba6f7","problemsErrorIcon.foreground":"#f38ba8","problemsInfoIcon.foreground":"#89b4fa","problemsWarningIcon.foreground":"#fab387","progressBar.background":"#cba6f7","pullRequests.closed":"#f38ba8","pullRequests.draft":"#9399b2","pullRequests.merged":"#cba6f7","pullRequests.notification":"#cdd6f4","pullRequests.open":"#a6e3a1","sash.hoverBorder":"#cba6f7","scmGraph.foreground1":"#f9e2af","scmGraph.foreground2":"#f38ba8","scmGraph.foreground3":"#a6e3a1","scmGraph.foreground4":"#cba6f7","scmGraph.foreground5":"#94e2d5","scmGraph.historyItemBaseRefColor":"#fab387","scmGraph.historyItemRefColor":"#89b4fa","scmGraph.historyItemRemoteRefColor":"#cba6f7","scrollbar.shadow":"#11111b","scrollbarSlider.activeBackground":"#31324466","scrollbarSlider.background":"#585b7080","scrollbarSlider.hoverBackground":"#6c7086","selection.background":"#cba6f766","settings.dropdownBackground":"#45475a","settings.dropdownListBorder":"#00000000","settings.focusedRowBackground":"#585b7033","settings.headerForeground":"#cdd6f4","settings.modifiedItemIndicator":"#cba6f7","settings.numberInputBackground":"#45475a","settings.numberInputBorder":"#00000000","settings.textInputBackground":"#45475a","settings.textInputBorder":"#00000000","sideBar.background":"#181825","sideBar.border":"#00000000","sideBar.dropBackground":"#cba6f733","sideBar.foreground":"#cdd6f4","sideBarSectionHeader.background":"#181825","sideBarSectionHeader.foreground":"#cdd6f4","sideBarTitle.foreground":"#cba6f7","statusBar.background":"#11111b","statusBar.border":"#00000000","statusBar.debuggingBackground":"#fab387","statusBar.debuggingBorder":"#00000000","statusBar.debuggingForeground":"#11111b","statusBar.foreground":"#cdd6f4","statusBar.noFolderBackground":"#11111b","statusBar.noFolderBorder":"#00000000","statusBar.noFolderForeground":"#cdd6f4","statusBarItem.activeBackground":"#585b7066","statusBarItem.errorBackground":"#00000000","statusBarItem.errorForeground":"#f38ba8","statusBarItem.hoverBackground":"#585b7033","statusBarItem.prominentBackground":"#00000000","statusBarItem.prominentForeground":"#cba6f7","statusBarItem.prominentHoverBackground":"#585b7033","statusBarItem.remoteBackground":"#89b4fa","statusBarItem.remoteForeground":"#11111b","statusBarItem.warningBackground":"#00000000","statusBarItem.warningForeground":"#fab387","symbolIcon.arrayForeground":"#fab387","symbolIcon.booleanForeground":"#cba6f7","symbolIcon.classForeground":"#f9e2af","symbolIcon.colorForeground":"#f5c2e7","symbolIcon.constantForeground":"#fab387","symbolIcon.constructorForeground":"#b4befe","symbolIcon.enumeratorForeground":"#f9e2af","symbolIcon.enumeratorMemberForeground":"#f9e2af","symbolIcon.eventForeground":"#f5c2e7","symbolIcon.fieldForeground":"#cdd6f4","symbolIcon.fileForeground":"#cba6f7","symbolIcon.folderForeground":"#cba6f7","symbolIcon.functionForeground":"#89b4fa","symbolIcon.interfaceForeground":"#f9e2af","symbolIcon.keyForeground":"#94e2d5","symbolIcon.keywordForeground":"#cba6f7","symbolIcon.methodForeground":"#89b4fa","symbolIcon.moduleForeground":"#cdd6f4","symbolIcon.namespaceForeground":"#f9e2af","symbolIcon.nullForeground":"#eba0ac","symbolIcon.numberForeground":"#fab387","symbolIcon.objectForeground":"#f9e2af","symbolIcon.operatorForeground":"#94e2d5","symbolIcon.packageForeground":"#f2cdcd","symbolIcon.propertyForeground":"#eba0ac","symbolIcon.referenceForeground":"#f9e2af","symbolIcon.snippetForeground":"#f2cdcd","symbolIcon.stringForeground":"#a6e3a1","symbolIcon.structForeground":"#94e2d5","symbolIcon.textForeground":"#cdd6f4","symbolIcon.typeParameterForeground":"#eba0ac","symbolIcon.unitForeground":"#cdd6f4","symbolIcon.variableForeground":"#cdd6f4","tab.activeBackground":"#1e1e2e","tab.activeBorder":"#00000000","tab.activeBorderTop":"#cba6f7","tab.activeForeground":"#cba6f7","tab.activeModifiedBorder":"#f9e2af","tab.border":"#181825","tab.hoverBackground":"#28283d","tab.hoverBorder":"#00000000","tab.hoverForeground":"#cba6f7","tab.inactiveBackground":"#181825","tab.inactiveForeground":"#6c7086","tab.inactiveModifiedBorder":"#f9e2af4d","tab.lastPinnedBorder":"#cba6f7","tab.unfocusedActiveBackground":"#181825","tab.unfocusedActiveBorder":"#00000000","tab.unfocusedActiveBorderTop":"#cba6f74d","tab.unfocusedInactiveBackground":"#0e0e16","table.headerBackground":"#313244","table.headerForeground":"#cdd6f4","terminal.ansiBlack":"#45475a","terminal.ansiBlue":"#89b4fa","terminal.ansiBrightBlack":"#585b70","terminal.ansiBrightBlue":"#74a8fc","terminal.ansiBrightCyan":"#6bd7ca","terminal.ansiBrightGreen":"#89d88b","terminal.ansiBrightMagenta":"#f2aede","terminal.ansiBrightRed":"#f37799","terminal.ansiBrightWhite":"#bac2de","terminal.ansiBrightYellow":"#ebd391","terminal.ansiCyan":"#94e2d5","terminal.ansiGreen":"#a6e3a1","terminal.ansiMagenta":"#f5c2e7","terminal.ansiRed":"#f38ba8","terminal.ansiWhite":"#a6adc8","terminal.ansiYellow":"#f9e2af","terminal.border":"#585b70","terminal.dropBackground":"#cba6f733","terminal.foreground":"#cdd6f4","terminal.inactiveSelectionBackground":"#585b7080","terminal.selectionBackground":"#585b70","terminal.tab.activeBorder":"#cba6f7","terminalCommandDecoration.defaultBackground":"#585b70","terminalCommandDecoration.errorBackground":"#f38ba8","terminalCommandDecoration.successBackground":"#a6e3a1","terminalCursor.background":"#1e1e2e","terminalCursor.foreground":"#f5e0dc","testing.coverCountBadgeBackground":"#00000000","testing.coverCountBadgeForeground":"#cba6f7","testing.coveredBackground":"#a6e3a14d","testing.coveredBorder":"#00000000","testing.coveredGutterBackground":"#a6e3a14d","testing.iconErrored":"#f38ba8","testing.iconErrored.retired":"#f38ba8","testing.iconFailed":"#f38ba8","testing.iconFailed.retired":"#f38ba8","testing.iconPassed":"#a6e3a1","testing.iconPassed.retired":"#a6e3a1","testing.iconQueued":"#89b4fa","testing.iconQueued.retired":"#89b4fa","testing.iconSkipped":"#a6adc8","testing.iconSkipped.retired":"#a6adc8","testing.iconUnset":"#cdd6f4","testing.iconUnset.retired":"#cdd6f4","testing.message.error.lineBackground":"#f38ba826","testing.message.info.decorationForeground":"#a6e3a1cc","testing.message.info.lineBackground":"#a6e3a126","testing.messagePeekBorder":"#cba6f7","testing.messagePeekHeaderBackground":"#585b70","testing.peekBorder":"#cba6f7","testing.peekHeaderBackground":"#585b70","testing.runAction":"#cba6f7","testing.uncoveredBackground":"#f38ba833","testing.uncoveredBorder":"#00000000","testing.uncoveredBranchBackground":"#f38ba833","testing.uncoveredGutterBackground":"#f38ba840","textBlockQuote.background":"#181825","textBlockQuote.border":"#11111b","textCodeBlock.background":"#181825","textLink.activeForeground":"#89dceb","textLink.foreground":"#89b4fa","textPreformat.foreground":"#cdd6f4","textSeparator.foreground":"#cba6f7","titleBar.activeBackground":"#11111b","titleBar.activeForeground":"#cdd6f4","titleBar.border":"#00000000","titleBar.inactiveBackground":"#11111b","titleBar.inactiveForeground":"#cdd6f480","tree.inactiveIndentGuidesStroke":"#45475a","tree.indentGuidesStroke":"#9399b2","walkThrough.embeddedEditorBackground":"#1e1e2e4d","welcomePage.progress.background":"#11111b","welcomePage.progress.foreground":"#cba6f7","welcomePage.tileBackground":"#181825","widget.shadow":"#18182580"},"displayName":"Catppuccin Mocha","name":"catppuccin-mocha","semanticHighlighting":true,"semanticTokenColors":{"boolean":{"foreground":"#fab387"},"builtinAttribute.attribute.library:rust":{"foreground":"#89b4fa"},"class.builtin:python":{"foreground":"#cba6f7"},"class:python":{"foreground":"#f9e2af"},"constant.builtin.readonly:nix":{"foreground":"#cba6f7"},"enumMember":{"foreground":"#94e2d5"},"function.decorator:python":{"foreground":"#fab387"},"generic.attribute:rust":{"foreground":"#cdd6f4"},"heading":{"foreground":"#f38ba8"},"number":{"foreground":"#fab387"},"pol":{"foreground":"#f2cdcd"},"property.readonly:javascript":{"foreground":"#cdd6f4"},"property.readonly:javascriptreact":{"foreground":"#cdd6f4"},"property.readonly:typescript":{"foreground":"#cdd6f4"},"property.readonly:typescriptreact":{"foreground":"#cdd6f4"},"selfKeyword":{"foreground":"#f38ba8"},"text.emph":{"fontStyle":"italic","foreground":"#f38ba8"},"text.math":{"foreground":"#f2cdcd"},"text.strong":{"fontStyle":"bold","foreground":"#f38ba8"},"tomlArrayKey":{"fontStyle":"","foreground":"#89b4fa"},"tomlTableKey":{"fontStyle":"","foreground":"#89b4fa"},"type.defaultLibrary:go":{"foreground":"#cba6f7"},"variable.defaultLibrary":{"foreground":"#eba0ac"},"variable.readonly.defaultLibrary:go":{"foreground":"#cba6f7"},"variable.readonly:javascript":{"foreground":"#cdd6f4"},"variable.readonly:javascriptreact":{"foreground":"#cdd6f4"},"variable.readonly:scala":{"foreground":"#cdd6f4"},"variable.readonly:typescript":{"foreground":"#cdd6f4"},"variable.readonly:typescriptreact":{"foreground":"#cdd6f4"},"variable.typeHint:python":{"foreground":"#f9e2af"}},"tokenColors":[{"scope":["text","source","variable.other.readwrite","punctuation.definition.variable"],"settings":{"foreground":"#cdd6f4"}},{"scope":"punctuation","settings":{"fontStyle":"","foreground":"#9399b2"}},{"scope":["comment","punctuation.definition.comment"],"settings":{"fontStyle":"italic","foreground":"#9399b2"}},{"scope":["string","punctuation.definition.string"],"settings":{"foreground":"#a6e3a1"}},{"scope":"constant.character.escape","settings":{"foreground":"#f5c2e7"}},{"scope":["constant.numeric","variable.other.constant","entity.name.constant","constant.language.boolean","constant.language.false","constant.language.true","keyword.other.unit.user-defined","keyword.other.unit.suffix.floating-point"],"settings":{"foreground":"#fab387"}},{"scope":["keyword","keyword.operator.word","keyword.operator.new","variable.language.super","support.type.primitive","storage.type","storage.modifier","punctuation.definition.keyword"],"settings":{"fontStyle":"","foreground":"#cba6f7"}},{"scope":"entity.name.tag.documentation","settings":{"foreground":"#cba6f7"}},{"scope":["keyword.operator","punctuation.accessor","punctuation.definition.generic","meta.function.closure punctuation.section.parameters","punctuation.definition.tag","punctuation.separator.key-value"],"settings":{"foreground":"#94e2d5"}},{"scope":["entity.name.function","meta.function-call.method","support.function","support.function.misc","variable.function"],"settings":{"fontStyle":"italic","foreground":"#89b4fa"}},{"scope":["entity.name.class","entity.other.inherited-class","support.class","meta.function-call.constructor","entity.name.struct"],"settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":"entity.name.enum","settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":["meta.enum variable.other.readwrite","variable.other.enummember"],"settings":{"foreground":"#94e2d5"}},{"scope":"meta.property.object","settings":{"foreground":"#94e2d5"}},{"scope":["meta.type","meta.type-alias","support.type","entity.name.type"],"settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":["meta.annotation variable.function","meta.annotation variable.annotation.function","meta.annotation punctuation.definition.annotation","meta.decorator","punctuation.decorator"],"settings":{"foreground":"#fab387"}},{"scope":["variable.parameter","meta.function.parameters"],"settings":{"fontStyle":"italic","foreground":"#eba0ac"}},{"scope":["constant.language","support.function.builtin"],"settings":{"foreground":"#f38ba8"}},{"scope":"entity.other.attribute-name.documentation","settings":{"foreground":"#f38ba8"}},{"scope":["keyword.control.directive","punctuation.definition.directive"],"settings":{"foreground":"#f9e2af"}},{"scope":"punctuation.definition.typeparameters","settings":{"foreground":"#89dceb"}},{"scope":"entity.name.namespace","settings":{"foreground":"#f9e2af"}},{"scope":["support.type.property-name.css","support.type.property-name.less"],"settings":{"fontStyle":"","foreground":"#89b4fa"}},{"scope":["variable.language.this","variable.language.this punctuation.definition.variable"],"settings":{"foreground":"#f38ba8"}},{"scope":"variable.object.property","settings":{"foreground":"#cdd6f4"}},{"scope":["string.template variable","string variable"],"settings":{"foreground":"#cdd6f4"}},{"scope":"keyword.operator.new","settings":{"fontStyle":"bold"}},{"scope":"storage.modifier.specifier.extern.cpp","settings":{"foreground":"#cba6f7"}},{"scope":["entity.name.scope-resolution.template.call.cpp","entity.name.scope-resolution.parameter.cpp","entity.name.scope-resolution.cpp","entity.name.scope-resolution.function.definition.cpp"],"settings":{"foreground":"#f9e2af"}},{"scope":"storage.type.class.doxygen","settings":{"fontStyle":""}},{"scope":["storage.modifier.reference.cpp"],"settings":{"foreground":"#94e2d5"}},{"scope":"meta.interpolation.cs","settings":{"foreground":"#cdd6f4"}},{"scope":"comment.block.documentation.cs","settings":{"foreground":"#cdd6f4"}},{"scope":["source.css entity.other.attribute-name.class.css","entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css"],"settings":{"foreground":"#f9e2af"}},{"scope":"punctuation.separator.operator.css","settings":{"foreground":"#94e2d5"}},{"scope":"source.css entity.other.attribute-name.pseudo-class","settings":{"foreground":"#94e2d5"}},{"scope":"source.css constant.other.unicode-range","settings":{"foreground":"#fab387"}},{"scope":"source.css variable.parameter.url","settings":{"fontStyle":"","foreground":"#a6e3a1"}},{"scope":["support.type.vendored.property-name"],"settings":{"foreground":"#89dceb"}},{"scope":["source.css meta.property-value variable","source.css meta.property-value variable.other.less","source.css meta.property-value variable.other.less punctuation.definition.variable.less","meta.definition.variable.scss"],"settings":{"foreground":"#eba0ac"}},{"scope":["source.css meta.property-list variable","meta.property-list variable.other.less","meta.property-list variable.other.less punctuation.definition.variable.less"],"settings":{"foreground":"#89b4fa"}},{"scope":"keyword.other.unit.percentage.css","settings":{"foreground":"#fab387"}},{"scope":"source.css meta.attribute-selector","settings":{"foreground":"#a6e3a1"}},{"scope":["keyword.other.definition.ini","punctuation.support.type.property-name.json","support.type.property-name.json","punctuation.support.type.property-name.toml","support.type.property-name.toml","entity.name.tag.yaml","punctuation.support.type.property-name.yaml","support.type.property-name.yaml"],"settings":{"fontStyle":"","foreground":"#89b4fa"}},{"scope":["constant.language.json","constant.language.yaml"],"settings":{"foreground":"#fab387"}},{"scope":["entity.name.type.anchor.yaml","variable.other.alias.yaml"],"settings":{"fontStyle":"","foreground":"#f9e2af"}},{"scope":["support.type.property-name.table","entity.name.section.group-title.ini"],"settings":{"foreground":"#f9e2af"}},{"scope":"constant.other.time.datetime.offset.toml","settings":{"foreground":"#f5c2e7"}},{"scope":["punctuation.definition.anchor.yaml","punctuation.definition.alias.yaml"],"settings":{"foreground":"#f5c2e7"}},{"scope":"entity.other.document.begin.yaml","settings":{"foreground":"#f5c2e7"}},{"scope":"markup.changed.diff","settings":{"foreground":"#fab387"}},{"scope":["meta.diff.header.from-file","meta.diff.header.to-file","punctuation.definition.from-file.diff","punctuation.definition.to-file.diff"],"settings":{"foreground":"#89b4fa"}},{"scope":"markup.inserted.diff","settings":{"foreground":"#a6e3a1"}},{"scope":"markup.deleted.diff","settings":{"foreground":"#f38ba8"}},{"scope":["variable.other.env"],"settings":{"foreground":"#89b4fa"}},{"scope":["string.quoted variable.other.env"],"settings":{"foreground":"#cdd6f4"}},{"scope":"support.function.builtin.gdscript","settings":{"foreground":"#89b4fa"}},{"scope":"constant.language.gdscript","settings":{"foreground":"#fab387"}},{"scope":"comment meta.annotation.go","settings":{"foreground":"#eba0ac"}},{"scope":"comment meta.annotation.parameters.go","settings":{"foreground":"#fab387"}},{"scope":"constant.language.go","settings":{"foreground":"#fab387"}},{"scope":"variable.graphql","settings":{"foreground":"#cdd6f4"}},{"scope":"string.unquoted.alias.graphql","settings":{"foreground":"#f2cdcd"}},{"scope":"constant.character.enum.graphql","settings":{"foreground":"#94e2d5"}},{"scope":"meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql","settings":{"foreground":"#f2cdcd"}},{"scope":["keyword.other.doctype","meta.tag.sgml.doctype punctuation.definition.tag","meta.tag.metadata.doctype entity.name.tag","meta.tag.metadata.doctype punctuation.definition.tag"],"settings":{"foreground":"#cba6f7"}},{"scope":["entity.name.tag"],"settings":{"fontStyle":"","foreground":"#89b4fa"}},{"scope":["text.html constant.character.entity","text.html constant.character.entity punctuation","constant.character.entity.xml","constant.character.entity.xml punctuation","constant.character.entity.js.jsx","constant.charactger.entity.js.jsx punctuation","constant.character.entity.tsx","constant.character.entity.tsx punctuation"],"settings":{"foreground":"#f38ba8"}},{"scope":["entity.other.attribute-name"],"settings":{"foreground":"#f9e2af"}},{"scope":["support.class.component","support.class.component.jsx","support.class.component.tsx","support.class.component.vue"],"settings":{"fontStyle":"","foreground":"#f5c2e7"}},{"scope":["punctuation.definition.annotation","storage.type.annotation"],"settings":{"foreground":"#fab387"}},{"scope":"constant.other.enum.java","settings":{"foreground":"#94e2d5"}},{"scope":"storage.modifier.import.java","settings":{"foreground":"#cdd6f4"}},{"scope":"comment.block.javadoc.java keyword.other.documentation.javadoc.java","settings":{"fontStyle":""}},{"scope":"meta.export variable.other.readwrite.js","settings":{"foreground":"#eba0ac"}},{"scope":["variable.other.constant.js","variable.other.constant.ts","variable.other.property.js","variable.other.property.ts"],"settings":{"foreground":"#cdd6f4"}},{"scope":["variable.other.jsdoc","comment.block.documentation variable.other"],"settings":{"fontStyle":"","foreground":"#eba0ac"}},{"scope":"storage.type.class.jsdoc","settings":{"fontStyle":""}},{"scope":"support.type.object.console.js","settings":{"foreground":"#cdd6f4"}},{"scope":["support.constant.node","support.type.object.module.js"],"settings":{"foreground":"#cba6f7"}},{"scope":"storage.modifier.implements","settings":{"foreground":"#cba6f7"}},{"scope":["constant.language.null.js","constant.language.null.ts","constant.language.undefined.js","constant.language.undefined.ts","support.type.builtin.ts"],"settings":{"foreground":"#cba6f7"}},{"scope":"variable.parameter.generic","settings":{"foreground":"#f9e2af"}},{"scope":["keyword.declaration.function.arrow.js","storage.type.function.arrow.ts"],"settings":{"foreground":"#94e2d5"}},{"scope":"punctuation.decorator.ts","settings":{"fontStyle":"italic","foreground":"#89b4fa"}},{"scope":["keyword.operator.expression.in.js","keyword.operator.expression.in.ts","keyword.operator.expression.infer.ts","keyword.operator.expression.instanceof.js","keyword.operator.expression.instanceof.ts","keyword.operator.expression.is","keyword.operator.expression.keyof.ts","keyword.operator.expression.of.js","keyword.operator.expression.of.ts","keyword.operator.expression.typeof.ts"],"settings":{"foreground":"#cba6f7"}},{"scope":"support.function.macro.julia","settings":{"fontStyle":"italic","foreground":"#94e2d5"}},{"scope":"constant.language.julia","settings":{"foreground":"#fab387"}},{"scope":"constant.other.symbol.julia","settings":{"foreground":"#eba0ac"}},{"scope":"text.tex keyword.control.preamble","settings":{"foreground":"#94e2d5"}},{"scope":"text.tex support.function.be","settings":{"foreground":"#89dceb"}},{"scope":"constant.other.general.math.tex","settings":{"foreground":"#f2cdcd"}},{"scope":"variable.language.liquid","settings":{"foreground":"#f5c2e7"}},{"scope":"comment.line.double-dash.documentation.lua storage.type.annotation.lua","settings":{"fontStyle":"","foreground":"#cba6f7"}},{"scope":["comment.line.double-dash.documentation.lua entity.name.variable.lua","comment.line.double-dash.documentation.lua variable.lua"],"settings":{"foreground":"#cdd6f4"}},{"scope":["heading.1.markdown punctuation.definition.heading.markdown","heading.1.markdown","heading.1.quarto punctuation.definition.heading.quarto","heading.1.quarto","markup.heading.atx.1.mdx","markup.heading.atx.1.mdx punctuation.definition.heading.mdx","markup.heading.setext.1.markdown","markup.heading.heading-0.asciidoc"],"settings":{"foreground":"#f38ba8"}},{"scope":["heading.2.markdown punctuation.definition.heading.markdown","heading.2.markdown","heading.2.quarto punctuation.definition.heading.quarto","heading.2.quarto","markup.heading.atx.2.mdx","markup.heading.atx.2.mdx punctuation.definition.heading.mdx","markup.heading.setext.2.markdown","markup.heading.heading-1.asciidoc"],"settings":{"foreground":"#fab387"}},{"scope":["heading.3.markdown punctuation.definition.heading.markdown","heading.3.markdown","heading.3.quarto punctuation.definition.heading.quarto","heading.3.quarto","markup.heading.atx.3.mdx","markup.heading.atx.3.mdx punctuation.definition.heading.mdx","markup.heading.heading-2.asciidoc"],"settings":{"foreground":"#f9e2af"}},{"scope":["heading.4.markdown punctuation.definition.heading.markdown","heading.4.markdown","heading.4.quarto punctuation.definition.heading.quarto","heading.4.quarto","markup.heading.atx.4.mdx","markup.heading.atx.4.mdx punctuation.definition.heading.mdx","markup.heading.heading-3.asciidoc"],"settings":{"foreground":"#a6e3a1"}},{"scope":["heading.5.markdown punctuation.definition.heading.markdown","heading.5.markdown","heading.5.quarto punctuation.definition.heading.quarto","heading.5.quarto","markup.heading.atx.5.mdx","markup.heading.atx.5.mdx punctuation.definition.heading.mdx","markup.heading.heading-4.asciidoc"],"settings":{"foreground":"#74c7ec"}},{"scope":["heading.6.markdown punctuation.definition.heading.markdown","heading.6.markdown","heading.6.quarto punctuation.definition.heading.quarto","heading.6.quarto","markup.heading.atx.6.mdx","markup.heading.atx.6.mdx punctuation.definition.heading.mdx","markup.heading.heading-5.asciidoc"],"settings":{"foreground":"#b4befe"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f38ba8"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f38ba8"}},{"scope":"markup.strikethrough","settings":{"fontStyle":"strikethrough","foreground":"#a6adc8"}},{"scope":["punctuation.definition.link","markup.underline.link"],"settings":{"foreground":"#89b4fa"}},{"scope":["text.html.markdown punctuation.definition.link.title","text.html.quarto punctuation.definition.link.title","string.other.link.title.markdown","string.other.link.title.quarto","markup.link","punctuation.definition.constant.markdown","punctuation.definition.constant.quarto","constant.other.reference.link.markdown","constant.other.reference.link.quarto","markup.substitution.attribute-reference"],"settings":{"foreground":"#b4befe"}},{"scope":["punctuation.definition.raw.markdown","punctuation.definition.raw.quarto","markup.inline.raw.string.markdown","markup.inline.raw.string.quarto","markup.raw.block.markdown","markup.raw.block.quarto"],"settings":{"foreground":"#a6e3a1"}},{"scope":"fenced_code.block.language","settings":{"foreground":"#89dceb"}},{"scope":["markup.fenced_code.block punctuation.definition","markup.raw support.asciidoc"],"settings":{"foreground":"#9399b2"}},{"scope":["markup.quote","punctuation.definition.quote.begin"],"settings":{"foreground":"#f5c2e7"}},{"scope":"meta.separator.markdown","settings":{"foreground":"#94e2d5"}},{"scope":["punctuation.definition.list.begin.markdown","punctuation.definition.list.begin.quarto","markup.list.bullet"],"settings":{"foreground":"#94e2d5"}},{"scope":"markup.heading.quarto","settings":{"fontStyle":"bold"}},{"scope":["entity.other.attribute-name.multipart.nix","entity.other.attribute-name.single.nix"],"settings":{"foreground":"#89b4fa"}},{"scope":"variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#cdd6f4"}},{"scope":"meta.embedded variable.parameter.name.nix","settings":{"fontStyle":"","foreground":"#b4befe"}},{"scope":"string.unquoted.path.nix","settings":{"fontStyle":"","foreground":"#f5c2e7"}},{"scope":["support.attribute.builtin","meta.attribute.php"],"settings":{"foreground":"#f9e2af"}},{"scope":"meta.function.parameters.php punctuation.definition.variable.php","settings":{"foreground":"#eba0ac"}},{"scope":"constant.language.php","settings":{"foreground":"#cba6f7"}},{"scope":"text.html.php support.function","settings":{"foreground":"#89dceb"}},{"scope":"keyword.other.phpdoc.php","settings":{"fontStyle":""}},{"scope":["support.variable.magic.python","meta.function-call.arguments.python"],"settings":{"foreground":"#cdd6f4"}},{"scope":["support.function.magic.python"],"settings":{"fontStyle":"italic","foreground":"#89dceb"}},{"scope":["variable.parameter.function.language.special.self.python","variable.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#f38ba8"}},{"scope":["keyword.control.flow.python","keyword.operator.logical.python"],"settings":{"foreground":"#cba6f7"}},{"scope":"storage.type.function.python","settings":{"foreground":"#cba6f7"}},{"scope":["support.token.decorator.python","meta.function.decorator.identifier.python"],"settings":{"foreground":"#89dceb"}},{"scope":["meta.function-call.python"],"settings":{"foreground":"#89b4fa"}},{"scope":["entity.name.function.decorator.python","punctuation.definition.decorator.python"],"settings":{"fontStyle":"italic","foreground":"#fab387"}},{"scope":"constant.character.format.placeholder.other.python","settings":{"foreground":"#f5c2e7"}},{"scope":["support.type.exception.python","support.function.builtin.python"],"settings":{"foreground":"#fab387"}},{"scope":["support.type.python"],"settings":{"foreground":"#cba6f7"}},{"scope":"constant.language.python","settings":{"foreground":"#fab387"}},{"scope":["meta.indexed-name.python","meta.item-access.python"],"settings":{"fontStyle":"italic","foreground":"#eba0ac"}},{"scope":"storage.type.string.python","settings":{"fontStyle":"italic","foreground":"#a6e3a1"}},{"scope":"meta.function.parameters.python","settings":{"fontStyle":""}},{"scope":"meta.function-call.r","settings":{"foreground":"#89b4fa"}},{"scope":"meta.function-call.arguments.r","settings":{"foreground":"#cdd6f4"}},{"scope":["string.regexp punctuation.definition.string.begin","string.regexp punctuation.definition.string.end"],"settings":{"foreground":"#f5c2e7"}},{"scope":"keyword.control.anchor.regexp","settings":{"foreground":"#cba6f7"}},{"scope":"string.regexp.ts","settings":{"foreground":"#cdd6f4"}},{"scope":["punctuation.definition.group.regexp","keyword.other.back-reference.regexp"],"settings":{"foreground":"#a6e3a1"}},{"scope":"punctuation.definition.character-class.regexp","settings":{"foreground":"#f9e2af"}},{"scope":"constant.other.character-class.regexp","settings":{"foreground":"#f5c2e7"}},{"scope":"constant.other.character-class.range.regexp","settings":{"foreground":"#f5e0dc"}},{"scope":"keyword.operator.quantifier.regexp","settings":{"foreground":"#94e2d5"}},{"scope":"constant.character.numeric.regexp","settings":{"foreground":"#fab387"}},{"scope":["punctuation.definition.group.no-capture.regexp","meta.assertion.look-ahead.regexp","meta.assertion.negative-look-ahead.regexp"],"settings":{"foreground":"#89b4fa"}},{"scope":["meta.annotation.rust","meta.annotation.rust punctuation","meta.attribute.rust","punctuation.definition.attribute.rust"],"settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":["meta.attribute.rust string.quoted.double.rust","meta.attribute.rust string.quoted.single.char.rust"],"settings":{"fontStyle":""}},{"scope":["entity.name.function.macro.rules.rust","storage.type.module.rust","storage.modifier.rust","storage.type.struct.rust","storage.type.enum.rust","storage.type.trait.rust","storage.type.union.rust","storage.type.impl.rust","storage.type.rust","storage.type.function.rust","storage.type.type.rust"],"settings":{"fontStyle":"","foreground":"#cba6f7"}},{"scope":"entity.name.type.numeric.rust","settings":{"fontStyle":"","foreground":"#cba6f7"}},{"scope":"meta.generic.rust","settings":{"foreground":"#fab387"}},{"scope":"entity.name.impl.rust","settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":"entity.name.module.rust","settings":{"foreground":"#fab387"}},{"scope":"entity.name.trait.rust","settings":{"fontStyle":"italic","foreground":"#f9e2af"}},{"scope":"storage.type.source.rust","settings":{"foreground":"#f9e2af"}},{"scope":"entity.name.union.rust","settings":{"foreground":"#f9e2af"}},{"scope":"meta.enum.rust storage.type.source.rust","settings":{"foreground":"#94e2d5"}},{"scope":["support.macro.rust","meta.macro.rust support.function.rust","entity.name.function.macro.rust"],"settings":{"fontStyle":"italic","foreground":"#89b4fa"}},{"scope":["storage.modifier.lifetime.rust","entity.name.type.lifetime"],"settings":{"fontStyle":"italic","foreground":"#89b4fa"}},{"scope":"string.quoted.double.rust constant.other.placeholder.rust","settings":{"foreground":"#f5c2e7"}},{"scope":"meta.function.return-type.rust meta.generic.rust storage.type.rust","settings":{"foreground":"#cdd6f4"}},{"scope":"meta.function.call.rust","settings":{"foreground":"#89b4fa"}},{"scope":"punctuation.brackets.angle.rust","settings":{"foreground":"#89dceb"}},{"scope":"constant.other.caps.rust","settings":{"foreground":"#fab387"}},{"scope":["meta.function.definition.rust variable.other.rust"],"settings":{"foreground":"#eba0ac"}},{"scope":"meta.function.call.rust variable.other.rust","settings":{"foreground":"#cdd6f4"}},{"scope":"variable.language.self.rust","settings":{"foreground":"#f38ba8"}},{"scope":["variable.other.metavariable.name.rust","meta.macro.metavariable.rust keyword.operator.macro.dollar.rust"],"settings":{"foreground":"#f5c2e7"}},{"scope":["comment.line.shebang","comment.line.shebang punctuation.definition.comment","comment.line.shebang","punctuation.definition.comment.shebang.shell","meta.shebang.shell"],"settings":{"fontStyle":"italic","foreground":"#f5c2e7"}},{"scope":"comment.line.shebang constant.language","settings":{"fontStyle":"italic","foreground":"#94e2d5"}},{"scope":["meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation","meta.function-call.arguments.shell punctuation.definition.variable.shell","meta.function-call.arguments.shell punctuation.section.interpolation"],"settings":{"foreground":"#f38ba8"}},{"scope":"meta.string meta.interpolation.parameter.shell variable.other.readwrite","settings":{"fontStyle":"italic","foreground":"#fab387"}},{"scope":["source.shell punctuation.section.interpolation","punctuation.definition.evaluation.backticks.shell"],"settings":{"foreground":"#94e2d5"}},{"scope":"entity.name.tag.heredoc.shell","settings":{"foreground":"#cba6f7"}},{"scope":"string.quoted.double.shell variable.other.normal.shell","settings":{"foreground":"#cdd6f4"}},{"scope":["markup.heading.typst"],"settings":{"foreground":"#f38ba8"}}],"type":"dark"}`));export{e as default};
|
|
2
|
+
//# sourceMappingURL=catppuccin-mocha-DYhrFGRu.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{u as e}from"./dist-DeW2Y1R5.js";import{t,wt as n}from"./store-BvtFdlGX.js";import{c as r,et as i,l as a,nt as o,rt as s}from"./display-CfO7rTuF.js";import{t as c}from"./activity-TMzFOdh2.js";import{n as l,t as u}from"./bell-_Yzbxxrt.js";import{n as d,t as f}from"./radio-Bn0_qc0G.js";import{t as p}from"./arrow-right-vFsRqG8V.js";import{t as m}from"./circle-alert-CryagaZd.js";import{t as h}from"./circle-check-CkUkN96J.js";import{t as g}from"./external-link-BRfu-fHG.js";import{t as _}from"./eye-BAP6fHrX.js";import{t as v}from"./message-circle-wjztgHBe.js";import{t as y}from"./messages-square-DVM1ZtcI.js";import{t as b}from"./plug-zap-V0wMDJ-G.js";import{t as x}from"./button-Do6Z3vvn.js";import{t as S}from"./badge-DqJRtj_p.js";import{o as C,r as w,s as T,t as E}from"./card-C4QJ4hCW.js";var D=e(),O={MessagesSquare:y,PlugZap:b,AlertCircle:m,Activity:c,Eye:_,CircleCheck:h,Radio:f,MessageCircle:v,Bell:u};function k({direction:e}){return e===`inbound`?(0,D.jsx)(d,{className:`w-3 h-3`}):e===`outbound`?(0,D.jsx)(p,{className:`w-3 h-3`}):(0,D.jsx)(l,{className:`w-3 h-3`})}function A({channel:e,integration:r}){let c=n(),l=t(e=>e.openChannelDetail),u=a(e),d=e.status!==`offline`,f=e.direction===`outbound`,p=r?.displayName||e.name||e.id,m=(r?.icon?O[r.icon]:null)??y;return(0,D.jsxs)(E,{className:`${d?``:`opacity-60`} hover:border-tone-neutral transition-colors${r?.accentColor?` border-l-2`:``}`,style:r?.accentColor?{borderLeftColor:r.accentColor}:void 0,children:[(0,D.jsx)(C,{className:`pb-2 pt-4 px-4`,children:(0,D.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,D.jsx)(`div`,{className:`p-1.5 rounded-md ${d?`bg-tone-info/10`:`bg-muted`}`,children:(0,D.jsx)(m,{className:`w-4 h-4 ${d?`text-tone-info-fg`:`text-tone-neutral-fg`}`})}),(0,D.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,D.jsx)(T,{className:`text-sm font-medium truncate`,children:p}),(0,D.jsxs)(`div`,{className:`text-xs text-muted-foreground mt-0.5`,children:[e.type,` · `,e.transport]})]}),(0,D.jsx)(S,{className:`text-[10px] shrink-0 ${o(u.tone)}`,children:u.label})]})}),(0,D.jsxs)(w,{className:`px-4 pb-4 space-y-2.5`,children:[(0,D.jsxs)(`div`,{className:`flex items-center gap-1.5 text-xs text-muted-foreground`,children:[(0,D.jsx)(k,{direction:e.direction}),(0,D.jsx)(`span`,{className:`capitalize`,children:e.direction}),!f&&e.target&&(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`span`,{children:`·`}),(0,D.jsx)(`span`,{className:`truncate text-foreground`,children:e.target})]})]}),!f&&e.targetHealth&&e.targetHealth.status!==`ok`&&(0,D.jsx)(`div`,{className:`text-xs px-2 py-1 rounded ${e.targetHealth.status===`error`?`bg-tone-danger/10 text-tone-danger-fg`:`bg-tone-yellow/10 text-tone-yellow-fg`}`,children:e.targetHealth.detail}),s(e.capabilities).length>0&&(0,D.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:s(e.capabilities).map(e=>(0,D.jsx)(S,{variant:`secondary`,className:`text-[9px] px-1 py-0 h-4`,children:e},e))}),e.tags.length>0&&(0,D.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:e.tags.map(e=>(0,D.jsx)(S,{variant:`outline`,className:`text-[9px] px-1 py-0 h-4`,children:e},e))}),(0,D.jsxs)(`div`,{className:`flex items-center justify-between pt-0.5`,children:[(0,D.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:i(c,e.lastSeen)}),(0,D.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[r?.docsUrl&&(0,D.jsxs)(`a`,{href:r.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors h-7 px-2 rounded border border-input hover:bg-accent`,children:[(0,D.jsx)(g,{className:`w-3 h-3`}),`Docs`]}),(0,D.jsxs)(x,{size:`sm`,variant:`outline`,className:`h-7 text-xs gap-1`,onClick:()=>l(e),children:[(0,D.jsx)(g,{className:`w-3 h-3`}),`Details`]})]})]})]})]})}function j(){let e=t(e=>e.channels),n=t(e=>e.integrations),i=t(e=>e.switchView),a=new Map(n.map(e=>[e.name,e])),o=e.filter(r).length,s=e.filter(e=>e.direction!==`outbound`&&e.targetHealth?.status===`error`).length,c=e.filter(e=>e.direction!==`outbound`&&e.targetHealth?.status===`warning`).length;return(0,D.jsxs)(`div`,{className:`space-y-4`,children:[(0,D.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,D.jsxs)(`div`,{children:[(0,D.jsx)(`h2`,{className:`text-base font-semibold`,children:`Channels`}),(0,D.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Inbound / outbound message integrations`})]}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2 ml-auto`,children:[o>0&&(0,D.jsxs)(S,{className:`text-xs bg-tone-success/15 text-tone-success-fg border-tone-success/30`,children:[o,` ready`]}),c>0&&(0,D.jsxs)(S,{className:`text-xs bg-tone-yellow/15 text-tone-yellow-fg border-tone-yellow/30`,children:[c,` warning`]}),s>0&&(0,D.jsxs)(S,{className:`text-xs bg-tone-danger/15 text-tone-danger-fg border-tone-danger/30`,children:[s,` error`]}),(0,D.jsxs)(x,{variant:`ghost`,size:`sm`,className:`h-7 text-xs gap-1.5 text-muted-foreground`,onClick:()=>void i(`integrations`),children:[(0,D.jsx)(b,{className:`w-3 h-3`}),`API Integrations`]})]})]}),e.length===0?(0,D.jsx)(`div`,{className:`text-center py-16 text-muted-foreground text-sm`,children:`No channels registered.`}):(0,D.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4`,children:e.map(e=>(0,D.jsx)(A,{channel:e,integration:a.get(e.type)},e.id))})]})}export{j as ChannelsView};
|
|
2
|
+
//# sourceMappingURL=channels-BiXzg1G9.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{n as e}from"./dist-DeW2Y1R5.js";var t=e(`chart-column`,[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`M18 17V9`,key:`2bz60n`}],[`path`,{d:`M13 17V5`,key:`1frdt8`}],[`path`,{d:`M8 17v-3`,key:`17ska0`}]]);export{t};
|
|
2
|
+
//# sourceMappingURL=chart-column-S02ZGfTR.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{o as t,p as n,u as r}from"./dist-DeW2Y1R5.js";import{t as i}from"./react-dom-DSFxiC7T.js";import{At as a,C as o,Ct as s,Dt as c,K as l,S as u,T as d,Vt as f,_ as p,b as m,bt as h,ct as g,g as _,h as v,jt as y,kt as b,lt as x,m as S,ot as C,st as w,t as T,v as E,w as ee,x as te,xt as D,y as O,yt as ne}from"./store-BvtFdlGX.js";import{O as k,b as A,i as j,m as M,o as re,p as ie,r as ae,t as oe,w as N}from"./provider-display-DbLWpP3j.js";import{F as P,G as se,I as ce,R as le,S as F,Z as ue,et as I,f as L,i as R,it as de,j as fe,o as pe,q as me,r as z,rt as B,s as V,st as H,tt as U,v as he,y as W}from"./display-CfO7rTuF.js";import{n as ge,r as G,t as _e}from"./PlanGraphPanel-C0auck3n.js";import{g as ve,o as ye,t as be}from"./api-CIIVBtAV.js";import{r as xe,s as Se,t as Ce}from"./dialog-uuJ9_geR.js";import{a as we,c as Te,n as Ee,o as De,r as K,s as q,t as Oe}from"./dropdown-menu-BXiNephE.js";import{t as ke}from"./label-BPBzm9FJ.js";import{a as Ae,n as je,t as Me}from"./popover-8w1TWKMG.js";import{t as Ne}from"./switch-DuCA7mrB.js";import{_ as Pe,a as Fe,c as Ie,d as Le,f as Re,g as ze,h as J,l as Be,n as Ve,o as He,s as Ue,t as We,u as Ge,v as Ke}from"./files-DhhZI2Ih.js";import{_ as qe,c as Je,d as Ye,h as Xe,l as Ze,o as Qe,t as $e,u as et,v as tt}from"./agent-lineage-BbJDR1dW.js";import{n as nt}from"./radio-Bn0_qc0G.js";import{A as rt,C as it,E as at,F as ot,G as st,L as ct,M as lt,P as ut,R as dt,S as Y,T as ft,U as pt,_ as mt,a as ht,b as gt,c as _t,d as vt,f as yt,g as bt,i as xt,l as St,m as X,n as Ct,o as wt,r as Tt,s as Et,t as Dt,u as Ot,x as kt,y as At,z as jt}from"./TraceView-DBnOx7AQ.js";import{t as Mt}from"./bot-B0NpDNhr.js";import{t as Nt}from"./check-B3M9Ug1P.js";import{t as Pt}from"./chevron-down-BoG3JCZn.js";import{t as Ft}from"./chevron-right-iljytE0x.js";import{t as It}from"./chevron-up-Bv3yC5ma.js";import{t as Lt}from"./circle-alert-CryagaZd.js";import{t as Rt}from"./circle-check-CkUkN96J.js";import{n as zt}from"./zap-DGuDTw4w.js";import{t as Bt}from"./download-KgtpDbt5.js";import{t as Vt}from"./eye-BAP6fHrX.js";import{t as Ht}from"./file-text-CKuoMR2U.js";import{t as Ut}from"./flag-CnEG9PH-.js";import{t as Wt}from"./folder-open-CBUCMSlu.js";import{t as Gt}from"./gauge-BIODY-BQ.js";import{t as Kt}from"./hourglass-txu4ax6n.js";import{t as qt}from"./list-checks-CwnS3hly.js";import{t as Jt}from"./loader-circle-BfPd4kOD.js";import{t as Yt}from"./message-square-C-1G8dMM.js";import{t as Xt}from"./minimize-2-BkK6XoMP.js";import{t as Zt}from"./paperclip-CNpKZKum.js";import{t as Qt}from"./pencil-B1Hf2V_J.js";import{t as $t}from"./plus-D5Ek4e2S.js";import{t as en}from"./power-6tZOhYPg.js";import{r as tn}from"./workflow-marker-Cf3Hf2fN.js";import{t as nn}from"./search-DjzbnTbf.js";import{t as rn}from"./terminal-Bl2u7KxT.js";import{t as an}from"./triangle-alert-BBNhfgMi.js";import{t as on}from"./agent-type-icon-D6FUarOf.js";import{t as sn}from"./volume-2-XrcRKD9Z.js";import{t as cn}from"./x-Bge17hWJ.js";import{t as ln}from"./zoom-in-Bs8Qv8VL.js";import{t as Z}from"./button-Do6Z3vvn.js";import{t as un}from"./badge-DqJRtj_p.js";import{t as dn}from"./copy-button-CjOj4HEf.js";import{t as fn}from"./agent-name-CTZBrSD9.js";import{f as pn,n as mn,s as hn}from"./use-selectors-CnrAk2YP.js";import{t as gn}from"./input-CsTB6jIx.js";import{t as _n}from"./status-dot-CVv0iGHL.js";import{t as vn}from"./terminal-viewer-DE9BOe-8.js";import{n as yn,t as bn}from"./profile-icon-B2zH8DMH.js";import{t as xn}from"./textarea-hs6Mpyfl.js";import{t as Sn}from"./formatted-body-Cm1RrzmN.js";import{a as Cn,i as wn,n as Tn,o as En,r as Dn,t as On}from"./MessageBubble-BWpoBjl4.js";import{t as kn}from"./use-agent-terminal-B1yR456R.js";import{i as An,n as jn,r as Mn,t as Nn}from"./use-decisions-D-S4tpDf.js";import{n as Pn}from"./run-card-CO_bguQf.js";import{n as Fn,r as In,t as Ln}from"./esm-ZSuD7QuY.js";var Q=e(n(),1);function Rn(e,t,n,r,i){if(i.includes(e))return!1;if(r.includes(e)||n)return!0;let a=t[e];return!!(a&&k(a.spawnedBy??``))}function zn(){let e=T(e=>e.agents),t=T(e=>e.agentsById),n=T(e=>e.showBuiltIns),r=T(e=>e.showOffline),i=T(e=>e.chatAgentSearch),a=T(e=>e.chatAgentProviderFilter),o=T(e=>e.chatAgentStatusFilter),s=T(e=>e.chatAgentTagFilter),c=T(e=>e.chatAgentCapFilter),l=T(e=>e.chatAgentHostFilter),u=T(e=>e.chatAgentSort),d=T(e=>e.chatAgentSortDir),f=T(e=>e.managedPolicies),p=T(e=>e.feedObserveAll),m=T(e=>e.coordinatorFollows),h=T(e=>e.coordinatorMutes),g=hn();return(0,Q.useMemo)(()=>{let _=new Set(g.map(e=>e.peer)),v=de(e,n,f);if(r||(v=v.filter(e=>e.status!==`offline`)),v=p?v.filter(e=>!h.includes(e.id)):v.filter(e=>Rn(e.id,t,_.has(e.id),m,h)),i){let e=i.toLowerCase();v=v.filter(t=>t.id.toLowerCase().includes(e)||(t.name||``).toLowerCase().includes(e)||(t.label||``).toLowerCase().includes(e)||(t.tags||[]).some(t=>t.toLowerCase().includes(e))||(t.capabilities||[]).some(t=>t.toLowerCase().includes(e)))}a&&(v=v.filter(e=>V(e)===a)),o&&(v=v.filter(e=>e.status===o)),s&&(v=v.filter(e=>(e.tags||[]).includes(s))),c&&(v=v.filter(e=>(e.capabilities||[]).includes(c))),l&&(v=v.filter(e=>(e.machine||``)===l));let y=d===`desc`?-1:1;return[...v].sort((e,t)=>u===`name`?L(e).localeCompare(L(t))*y:u===`lastSeen`?at(U(e.lastSeen),U(t.lastSeen),y)||L(e).localeCompare(L(t)):((H[e.status]??9)-(H[t.status]??9))*y||L(e).localeCompare(L(t)))},[e,t,n,r,f,i,a,o,s,c,l,u,d,p,m,h,g])}var $=r();function Bn({agents:e,now:t}){return(0,$.jsx)(`span`,{"data-testid":`child-agent-strip`,className:`ml-auto flex min-w-0 flex-1 justify-end overflow-hidden py-0.5 pl-2`,children:e.map(e=>{let n=yn(e);return(0,$.jsxs)(`span`,{title:n?`${L(e)} · ${n}`:L(e),className:`relative h-3.5 min-w-[7px] shrink basis-[18px] last:shrink-0 last:basis-3.5`,children:[(0,$.jsx)(on,{agent:e,className:`h-3.5 w-3.5 border-0 bg-transparent`}),n&&(0,$.jsx)(bn,{profile:n,className:`absolute -left-px -top-1 text-[9px]`}),(0,$.jsx)(_n,{agent:e,now:t,className:`absolute -bottom-0.5 left-0 h-1.5 w-1.5 ring-1 ring-background`})]},e.id)})})}function Vn({agentId:e}){let t=jn(e),n=T(e=>e.decisionsDockCollapsed),r=T(e=>e.setDecisionsDockCollapsed),i=s();if(!t.length)return null;let a=l(t,i);return(0,$.jsxs)(`div`,{"data-testid":`decisions-dock`,className:`shrink-0 border-t border-border/60 bg-background/95 px-3 py-2`,children:[(0,$.jsxs)(`button`,{type:`button`,onClick:()=>{r(!n)},className:`flex w-full items-center gap-1.5 text-xs font-medium text-tone-warning-fg`,children:[n?(0,$.jsx)(Ft,{className:`h-3.5 w-3.5`}):(0,$.jsx)(Pt,{className:`h-3.5 w-3.5`}),(0,$.jsx)(zt,{className:`h-3.5 w-3.5`}),a>0?`Waiting on you (${a})`:`Expired requests`]}),!n&&(0,$.jsx)(`div`,{className:`mt-2 flex max-h-[45vh] flex-col gap-2 overflow-y-auto`,children:t.map(e=>(0,$.jsx)(An,{decision:e},Nn(e)))})]})}function Hn({count:e}){return e?(0,$.jsxs)(un,{"data-testid":`decisions-badge`,title:`${e} waiting on you`,className:`bg-tone-warning/20 text-tone-warning-fg border border-tone-warning/40 h-[18px] gap-0.5 px-1 rounded-full text-[11px] leading-none`,children:[(0,$.jsx)(zt,{className:`h-2.5 w-2.5`}),e]}):null}var Un=[{re:/`([^`]+)`/,recurse:!1,wrap:(e,t)=>(0,$.jsx)(`code`,{className:`rounded bg-muted px-1 font-mono text-[0.9em]`,children:e},t)},{re:/\*\*([^*]+)\*\*/,recurse:!0,wrap:(e,t)=>(0,$.jsx)(`strong`,{className:`font-semibold text-foreground/90`,children:e},t)},{re:/__([^_]+)__/,recurse:!0,wrap:(e,t)=>(0,$.jsx)(`strong`,{className:`font-semibold text-foreground/90`,children:e},t)},{re:/~~([^~]+)~~/,recurse:!0,wrap:(e,t)=>(0,$.jsx)(`s`,{children:e},t)},{re:/\*([^*]+)\*/,recurse:!0,wrap:(e,t)=>(0,$.jsx)(`em`,{children:e},t)},{re:/_([^_]+)_/,recurse:!0,wrap:(e,t)=>(0,$.jsx)(`em`,{children:e},t)},{re:/\[([^\]]+)\]\([^)]+\)/,recurse:!0,wrap:(e,t)=>(0,$.jsx)(`span`,{className:`underline decoration-dotted underline-offset-2`,children:e},t)}];function Wn(e,t=`i`){let n=null;for(let t of Un){let r=t.re.exec(e);r&&r[1]&&(n===null||r.index<n.index)&&(n={index:r.index,length:r[0].length,inner:r[1],pattern:t})}if(!n)return[e];let r=[];n.index>0&&r.push(e.slice(0,n.index));let i=n.pattern.recurse?Wn(n.inner,`${t}x`):n.inner;r.push(n.pattern.wrap(i,`${t}m`));let a=e.slice(n.index+n.length);return a&&r.push(...Wn(a,`${t}r`)),r}var Gn=`sub-coordinator`,Kn=(0,Q.memo)(function({agent:e,depth:n,parent:r,childCount:i,foldedChildren:a,childrenCollapsed:o,thread:s,selected:c,muted:l,followed:u,decisionCount:d,now:f}){let p=T(e=>e.openInboxThread),m=T(e=>e.toggleChatChildrenCollapsed),h=T(e=>e.toggleCoordinatorFollow),g=T(e=>e.toggleCoordinatorMute),_=s?.attention.unread||0,v=R(e),y=s?.previewMessage,b=rt(s)||jt(s),x=Ye(e),S=et(e),C=x.Icon,w=i>0,E=yn(e)===Gn;return(0,$.jsxs)(`li`,{className:`relative group`,style:{paddingLeft:n*16},children:[n>0&&(0,$.jsx)(`div`,{className:`absolute left-2 top-3.5 text-muted-foreground/55`,children:(0,$.jsx)(J,{className:`h-3.5 w-3.5`})}),(0,$.jsxs)(`div`,{className:`absolute right-1.5 top-1.5 z-10 hidden items-center gap-0.5 rounded-md border border-border/60 bg-popover/95 px-0.5 py-0.5 shadow-sm backdrop-blur-sm group-hover:flex`,children:[(0,$.jsx)(`button`,{type:`button`,title:u?`Unfollow (stop pinning into scoped view)`:`Follow (keep visible even in scoped view)`,onClick:t=>{t.stopPropagation(),h(e.id)},className:t(`rounded p-1 transition-colors`,u?`text-primary bg-primary/15 hover:bg-primary/25`:`text-muted-foreground hover:text-foreground hover:bg-muted`),children:(0,$.jsx)(He,{className:`h-3 w-3`})}),(0,$.jsx)(`button`,{type:`button`,title:l?`Unmute`:`Mute (hide from all views)`,onClick:t=>{t.stopPropagation(),g(e.id)},className:t(`rounded p-1 transition-colors`,l?`text-tone-orange-fg bg-tone-orange/15 hover:bg-tone-orange/20`:`text-muted-foreground hover:text-foreground hover:bg-muted`),children:(0,$.jsx)(Pe,{className:`h-3 w-3`})})]}),(0,$.jsxs)(`button`,{className:t(`w-full text-left px-3 py-2.5 flex items-start gap-2.5 hover:bg-muted/50 transition-colors border-b border-border/50`,n>0&&`bg-muted/15`,c&&`bg-muted/60`,l&&`opacity-50`),onClick:()=>p(e.id,s?.messages),children:[(0,$.jsxs)(`div`,{className:`relative shrink-0 mt-0.5`,children:[(0,$.jsx)(on,{agent:e}),e.id!==N&&(0,$.jsx)(_n,{agent:e,now:f,className:`absolute -bottom-0.5 -right-0.5 w-2 h-2`})]}),(0,$.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-1 mb-0.5`,children:[(0,$.jsxs)(`span`,{className:`flex items-center gap-1 min-w-0`,children:[(0,$.jsx)(bn,{profile:yn(e),className:`text-xs shrink-0`}),(0,$.jsx)(fn,{agent:e,className:`text-xs font-medium`}),E&&(0,$.jsxs)(un,{variant:`outline`,"data-testid":`sub-coordinator-badge`,className:`h-4 shrink-0 px-1 text-[9px] text-muted-foreground`,title:`Sub-coordinator · ${i} ${i===1?`worker`:`workers`}`,children:[`sub-coord · `,i]})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1 shrink-0 transition-opacity group-hover:opacity-0`,children:[u&&(0,$.jsx)(He,{className:`h-3 w-3 text-primary`,"aria-label":`Followed`}),b>0&&(0,$.jsx)(`span`,{className:`text-[10px] text-muted-foreground tabular-nums`,title:he(b),children:I(f,b)}),(0,$.jsx)(Hn,{count:d}),_>0&&(0,$.jsx)(un,{className:`bg-tone-danger-fg text-background text-[11px] font-semibold leading-none tabular-nums min-w-[18px] h-[18px] flex items-center justify-center shrink-0 px-1 rounded-full`,children:_}),!_&&v&&(0,$.jsx)(un,{className:`bg-tone-warning text-black min-w-[18px] h-[18px] flex items-center justify-center shrink-0 px-1 rounded-full`,title:`Needs response`,children:(0,$.jsx)(Lt,{className:`h-3 w-3`})})]})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5 mb-0.5 text-[10px] text-muted-foreground`,children:[e.id!==N&&(0,$.jsx)(`span`,{title:x.title,className:`inline-flex shrink-0`,children:(0,$.jsx)(C,{className:t(`h-3 w-3`,x.iconColor)})}),(0,$.jsx)(`span`,{className:`truncate`,children:e.id===N?`Checks messages on request`:S||x.label}),Ze(e)&&(0,$.jsx)(`span`,{className:`ml-auto shrink-0`,children:(0,$.jsx)(Je,{context:e.context,expected:!0,size:18})})]}),n===0&&e.spawnedBy&&(0,$.jsx)(`div`,{className:`mb-0.5`,children:(0,$.jsx)(un,{variant:`outline`,className:`max-w-full text-[9px] h-4 px-1.5 text-muted-foreground`,children:(0,$.jsxs)(`span`,{className:`truncate`,children:[`spawned by `,(0,$.jsx)(fn,{agent:r,fallback:e.spawnedBy})]})})}),y&&(0,$.jsxs)(`p`,{className:`text-xs text-muted-foreground truncate leading-tight`,children:[k(y.from)?`You: `:``,Wn(le(y).replace(/\s+/g,` `))]})]})]}),w&&(0,$.jsxs)(`button`,{type:`button`,onClick:t=>{t.stopPropagation(),m(e.id)},className:`flex w-full items-center gap-1.5 border-b border-border/50 bg-muted/20 py-1 pl-8 pr-3 text-[10px] text-muted-foreground transition-colors hover:bg-muted/40 hover:text-foreground`,"aria-expanded":!o,title:o?`Show ${i} child ${i===1?`agent`:`agents`}`:`Hide children`,children:[o?(0,$.jsx)(Ft,{className:`h-3.5 w-3.5 shrink-0`}):(0,$.jsx)(Pt,{className:`h-3.5 w-3.5 shrink-0`}),(0,$.jsxs)(`span`,{className:`shrink-0 font-medium`,children:[i,` child `,i===1?`agent`:`agents`]}),a&&(0,$.jsx)(Bn,{agents:a,now:f})]})]})});function qn(e){return[e.chatAgentProviderFilter,e.chatAgentStatusFilter,e.chatAgentTagFilter,e.chatAgentCapFilter,e.chatAgentHostFilter].filter(Boolean).length}var Jn=(0,Q.memo)(function({tagsKey:e,capsKey:n}){let r=T(e=>e.set),i=T(e=>e.openAgentSpawn),a=T(e=>e.chatAgentSearch),o=T(e=>e.chatAgentSort),s=T(e=>e.chatAgentSortDir),c=T(e=>e.chatAgentProviderFilter),l=T(e=>e.chatAgentStatusFilter),u=T(e=>e.chatAgentTagFilter),d=T(e=>e.chatAgentCapFilter),f=T(e=>e.chatAgentHostFilter),p=T(e=>e.chatAgentGroupBy),m=T(e=>e.chatAgentFiltersCollapsed),h=T(e=>e.feedObserveAll),g=T(e=>e.setFeedObserveAll),_=T(qn),v=pn(),y=(0,Q.useMemo)(()=>e?e.split(`
|
|
2
|
+
`):[],[e]),b=(0,Q.useMemo)(()=>n?n.split(`
|
|
3
|
+
`):[],[n]);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`p-3 border-b border-border space-y-2`,children:[(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(nn,{className:`absolute left-2.5 top-1/2 -translate-y-1/2 w-3.5 h-3.5 text-muted-foreground pointer-events-none`}),(0,$.jsx)(gn,{placeholder:`Search agents...`,value:a,onChange:e=>r({chatAgentSearch:e.target.value}),className:`pl-8 h-7 text-xs`})]}),(0,$.jsxs)(`div`,{className:`flex h-7 items-center rounded-md border border-border bg-background p-0.5 text-xs`,children:[(0,$.jsxs)(`button`,{type:`button`,onClick:()=>g(!1),title:`Show only conversations where you're in the audience (agents you spawned or messaged)`,"aria-pressed":!h,className:t(`flex h-full flex-1 items-center justify-center gap-1.5 rounded-[5px] transition-colors`,h?`text-muted-foreground hover:text-foreground`:`bg-primary/15 text-primary font-medium`),children:[(0,$.jsx)(Re,{className:`h-3.5 w-3.5`}),`Scoped`]}),(0,$.jsxs)(`button`,{type:`button`,onClick:()=>g(!0),title:`Show every agent conversation, including agent-to-agent chatter`,"aria-pressed":h,className:t(`flex h-full flex-1 items-center justify-center gap-1.5 rounded-[5px] transition-colors`,h?`bg-primary/15 text-primary font-medium`:`text-muted-foreground hover:text-foreground`),children:[(0,$.jsx)(Vt,{className:`h-3.5 w-3.5`}),`All`]})]}),(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r({chatAgentFiltersCollapsed:!m}),className:`sm:hidden flex w-full items-center justify-between h-6 px-1.5 text-xs rounded-md border border-border bg-background text-muted-foreground`,children:[(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,$.jsx)(q,{className:`w-3.5 h-3.5`}),`Filters & sort`,_>0&&(0,$.jsx)(un,{className:`bg-primary/20 text-primary text-[10px] h-4 min-w-4 px-1 flex items-center justify-center`,children:_})]}),m?(0,$.jsx)(Pt,{className:`w-3.5 h-3.5`}):(0,$.jsx)(It,{className:`w-3.5 h-3.5`})]}),(0,$.jsxs)(`div`,{className:t(`space-y-2`,m?`hidden`:`block`,`sm:block`),children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,$.jsxs)(`select`,{value:o,onChange:e=>r({chatAgentSort:e.target.value}),className:`flex-1 h-6 text-xs rounded-md border border-border bg-background px-1.5 text-foreground`,children:[(0,$.jsx)(`option`,{value:`status`,children:`By status`}),(0,$.jsx)(`option`,{value:`name`,children:`By name`}),(0,$.jsx)(`option`,{value:`lastSeen`,children:`By last seen`}),(0,$.jsx)(`option`,{value:`lastMessage`,children:`By last activity`})]}),(0,$.jsx)(Z,{variant:`ghost`,size:`icon-xs`,onClick:()=>r({chatAgentSortDir:s===`asc`?`desc`:`asc`}),children:s===`asc`?(0,$.jsx)(qe,{className:`w-3.5 h-3.5`}):(0,$.jsx)(tt,{className:`w-3.5 h-3.5`})})]}),(0,$.jsxs)(`select`,{value:p,onChange:e=>r({chatAgentGroupBy:e.target.value}),className:`w-full h-6 text-xs rounded-md border border-border bg-background px-1.5 text-foreground`,children:[(0,$.jsx)(`option`,{value:``,children:`No grouping`}),(0,$.jsx)(`option`,{value:`project`,children:`Group by project`})]}),(0,$.jsxs)(`div`,{className:`flex gap-1`,children:[(0,$.jsxs)(`select`,{value:c,onChange:e=>r({chatAgentProviderFilter:e.target.value}),className:`flex-1 h-6 text-xs rounded-md border border-border bg-background px-1.5 text-foreground`,children:[(0,$.jsx)(`option`,{value:``,children:`All types`}),oe().map(e=>(0,$.jsx)(`option`,{value:e,children:ae(e)},e)),(0,$.jsx)(`option`,{value:`agent`,children:`Agent`}),(0,$.jsx)(`option`,{value:`user`,children:`User`})]}),(0,$.jsxs)(`select`,{value:l,onChange:e=>r({chatAgentStatusFilter:e.target.value}),className:`flex-1 h-6 text-xs rounded-md border border-border bg-background px-1.5 text-foreground`,children:[(0,$.jsx)(`option`,{value:``,children:`All status`}),(0,$.jsx)(`option`,{value:`online`,children:`Online`}),(0,$.jsx)(`option`,{value:`idle`,children:`Idle`}),(0,$.jsx)(`option`,{value:`busy`,children:`Busy`}),(0,$.jsx)(`option`,{value:`offline`,children:`Offline`})]}),v.length>1&&(0,$.jsxs)(`select`,{value:f,onChange:e=>r({chatAgentHostFilter:e.target.value}),className:`flex-1 h-6 text-xs rounded-md border border-border bg-background px-1.5 text-foreground`,children:[(0,$.jsx)(`option`,{value:``,children:`All hosts`}),v.map(e=>(0,$.jsx)(`option`,{value:e,children:e},e))]})]}),(y.length>0||b.length>0)&&(0,$.jsxs)(`div`,{className:`flex gap-1`,children:[y.length>0&&(0,$.jsxs)(`select`,{value:u,onChange:e=>r({chatAgentTagFilter:e.target.value}),className:`flex-1 h-6 text-xs rounded-md border border-border bg-background px-1.5 text-foreground`,children:[(0,$.jsx)(`option`,{value:``,children:`All tags`}),y.map(e=>(0,$.jsxs)(`option`,{value:e,children:[`#`,e]},e))]}),b.length>0&&(0,$.jsxs)(`select`,{value:d,onChange:e=>r({chatAgentCapFilter:e.target.value}),className:`flex-1 h-6 text-xs rounded-md border border-border bg-background px-1.5 text-foreground`,children:[(0,$.jsx)(`option`,{value:``,children:`All caps`}),b.map(e=>(0,$.jsx)(`option`,{value:e,children:e},e))]})]})]})]}),(0,$.jsxs)(`button`,{type:`button`,className:`flex w-full shrink-0 items-center gap-2.5 border-b border-border px-3 py-2 text-left transition-colors hover:bg-muted/50`,onClick:i,children:[(0,$.jsx)(`div`,{className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-full border border-dashed border-primary/50 bg-primary/10 text-primary`,children:(0,$.jsx)($t,{className:`h-3.5 w-3.5`})}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:`text-xs font-medium`,children:`New Agent`}),(0,$.jsx)(`div`,{className:`truncate text-[10px] text-muted-foreground`,children:`Spawn a fresh chat agent`})]})]})]})});function Yn({threads:e}){let t=T(e=>e.selectedInboxThread),n=T(e=>e.chatAgentSearch),r=T(e=>e.chatAgentSort),i=T(e=>e.chatAgentSortDir),a=T(e=>e.chatAgentGroupBy),o=T(qn),c=T(e=>e.agentsById),l=T(e=>e.chatCollapsedChildren),u=T(e=>e.feedObserveAll),d=T(e=>e.setFeedObserveAll),f=T(e=>e.coordinatorFollows),p=T(e=>e.coordinatorMutes),m=s(),h=zn(),g=(0,Q.useMemo)(()=>new Set(l),[l]),_=(0,Q.useMemo)(()=>{let t=new Map;for(let n of e)t.set(n.peer,n);return t},[e]),v=(0,Q.useMemo)(()=>{if(r!==`lastMessage`)return h;let e=i===`desc`?-1:1;return[...h].sort((t,n)=>at(jt(_.get(t.id)),jt(_.get(n.id)),e)||L(t).localeCompare(L(n)))},[h,r,i,_]),y=(0,Q.useMemo)(()=>[...new Set(h.flatMap(e=>e.tags||[]))].join(`
|
|
4
|
+
`),[h]),b=(0,Q.useMemo)(()=>[...new Set(h.flatMap(e=>B(e.capabilities||[])))].join(`
|
|
5
|
+
`),[h]),x=(0,Q.useMemo)(()=>{if(a!==`project`)return null;let e=new Map;for(let t of v){let n=et(t)||`No project`,r=e.get(n);r?r.push(t):e.set(n,[t])}return[...e.entries()].sort((e,t)=>e[0].localeCompare(t[0]))},[v,a]),S=(0,Q.useMemo)(()=>$e(v,c,m,g),[v,c,m,g]),C=Mn();function w(e){let{agent:n}=e,r=g.has(n.id);return(0,$.jsx)(Kn,{agent:n,depth:e.depth,parent:e.parent,childCount:e.children.length,foldedChildren:e.folded,childrenCollapsed:r,thread:_.get(n.id),selected:t===n.id,muted:p.includes(n.id),followed:f.includes(n.id),decisionCount:C.get(n.id),now:m},n.id)}return(0,$.jsxs)(`div`,{className:`flex flex-col h-full border-r border-border min-w-0`,children:[(0,$.jsx)(Jn,{tagsKey:y,capsKey:b}),(0,$.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:v.length===0?!u&&!n&&o===0?(0,$.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-10 text-center px-6`,children:[(0,$.jsx)(He,{className:`w-8 h-8 text-muted-foreground/40 mb-3`}),(0,$.jsx)(`p`,{className:`text-xs font-medium text-foreground/80`,children:`No conversations in your audience`}),(0,$.jsx)(`p`,{className:`mt-1 text-[11px] text-muted-foreground`,children:`Agents you spawn or message show up here.`}),(0,$.jsxs)(`button`,{type:`button`,onClick:()=>d(!0),className:`mt-3 inline-flex items-center gap-1.5 rounded-md border border-border bg-background px-2.5 py-1 text-[11px] text-muted-foreground transition-colors hover:bg-muted/50 hover:text-foreground`,children:[(0,$.jsx)(Vt,{className:`h-3.5 w-3.5`}),` Show all agents`]})]}):(0,$.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-10 text-center px-4`,children:[(0,$.jsx)(Mt,{className:`w-8 h-8 text-muted-foreground/40 mb-2`}),(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No agents match filters`})]}):x?x.map(([e,t])=>(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center gap-1.5 border-b border-border/50 bg-background/95 px-3 py-1 text-[10px] font-medium uppercase tracking-wide text-muted-foreground backdrop-blur`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:e}),(0,$.jsx)(`span`,{className:`text-muted-foreground/50`,children:t.length})]}),(0,$.jsx)(`ul`,{children:$e(t,c,m,g).map(w)})]},e)):(0,$.jsx)(`ul`,{children:S.map(w)})})]})}function Xn(e,t,n,r){let i=T(e=>e.loadOlder),a=T(e=>e.loadChatAround),o=T(e=>e.loadNewer);return{loadOlderForAgent:(0,Q.useCallback)(()=>{!e||!t||n||i(e)},[e,t,n,i]),loadNewerForAgent:(0,Q.useCallback)(()=>{!e||!r||o(e)},[e,o,r]),loadAroundForAgent:(0,Q.useCallback)(t=>e?a(e,t):Promise.resolve(),[e,a])}}var Zn=[{name:`/reply`,source:`skill`,description:`Reply to a relay message by id`,argumentHint:`<messageId> <body>`},{name:`/message`,source:`skill`,description:`Send a relay message to an agent, label, tag, or broadcast`,argumentHint:`<target> <body>`},{name:`/pair`,source:`skill`,description:`Start or manage a two-agent pair session`},{name:`/react`,source:`skill`,description:`Add a reaction to a relay message`,argumentHint:`<messageId> <emoji>`},{name:`/read-message`,source:`skill`,description:`Fetch a full relay message by id`,argumentHint:`<messageId>`},{name:`/send-claimable`,source:`skill`,description:`Enqueue a claimable work item for one agent to claim`},{name:`/status`,source:`skill`,description:`Show this agent's relay status`},{name:`/tags`,source:`skill`,description:`List or update this agent's relay tags`},{name:`/label`,source:`skill`,description:`Read, set, or clear this agent's relay label`},{name:`/disconnect`,source:`skill`,description:`End the current relay pair session`}],Qn={"/clear":{description:`Clear conversation history and free up context`},"/compact":{description:`Compact the conversation to reclaim context`,argumentHint:`[instructions]`},"/model":{description:`Switch the active model`,argumentHint:`[model]`},"/help":{description:`Show help`},"/new":{description:`Start a new thread`}};function $n(e,t=!1){return[...((e?j(e):void 0)?.slashCommands??[]).map(e=>({name:e,source:`builtin`,...Qn[e],...e===`/compact`&&!t?{argumentHint:void 0}:{}})),...Zn]}var er=15e3;function tr({agentId:e,className:n,now:r=Date.now()}){let i=T(t=>t.presenceByAgent[e]),a=T(e=>e.usersById),o=ve(),s=(i??[]).filter(e=>e.clientId!==o);if(s.length===0)return null;let c=Array.from(new Set(s.map(e=>F(e.userId,a)))),l=s.some(e=>e.typing&&r-e.lastSeen<er),u=c.length===1?c[0]:`${c.length} viewers`,d=l?Qt:Vt;return(0,$.jsxs)(`span`,{title:`${c.join(`, `)}${l?` · typing`:` · viewing`}`,className:t(`inline-flex items-center gap-1 rounded-full bg-muted/40 px-2 py-0.5 text-[11px] text-muted-foreground`,n),children:[(0,$.jsx)(d,{className:t(`h-3 w-3 shrink-0`,l&&`text-tone-success-fg`)}),(0,$.jsxs)(`span`,{className:`truncate max-w-[12ch]`,children:[u,l&&c.length===1?` is typing…`:``]})]})}function nr({runs:e}){let t=T(e=>e.agentsById),n=Date.now();return(0,$.jsx)($.Fragment,{children:e.map(e=>(0,$.jsx)(Pn,{run:e,agentsById:t,now:n},e.runId))})}function rr({agentId:e}){let t=T(e=>e.workflowLiveRuns),n=(0,Q.useMemo)(()=>t.filter(t=>t.coordinator===e),[t,e]),[r,i]=(0,Q.useState)(!1);if(!n.length)return null;let a=n.length===1?`Running workflow: ${n[0].workflow}`:`${n.length} running workflows`;return(0,$.jsxs)(Me,{open:r,onOpenChange:i,children:[(0,$.jsx)(Ae,{asChild:!0,children:(0,$.jsxs)(Z,{variant:`ghost`,size:`icon-sm`,"data-testid":`chat-workflow-runs`,"aria-label":a,title:a,className:`wf-marker relative`,children:[(0,$.jsx)(tn,{className:`w-3.5 h-3.5`}),n.length>1&&(0,$.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 font-mono text-[9px] font-semibold tabular-nums leading-none`,children:n.length})]})}),(0,$.jsx)(je,{align:`end`,collisionPadding:16,"data-testid":`chat-workflow-run-views`,"aria-label":`Running workflows`,className:`max-h-[70vh] w-[min(46rem,calc(100vw-2rem))] gap-2 overflow-y-auto`,children:r&&(0,$.jsx)(nr,{runs:n})})]})}var ir=[{title:`Agent activity`,items:[[`narration`,`Progress notes`],[`tools`,`Tool calls`],[`reasoning`,`Reasoning`]]},{title:`Injected context`,items:[[`memories`,`Project memories`],[`startup`,`Startup context`],[`injected`,`Other injected context`]]},{title:`Messages`,items:[[`agentMessages`,`Agent-to-agent messages`]]},{title:`Notices`,items:[[`workflow`,`Workflow runs`],[`land`,`Land & merge`],[`task`,`Tasks`],[`agents`,`Agents & spawns`],[`other`,`Other notices`]]},{title:`Delivery`,items:[[`undelivered`,`Not delivered to the agent (FYI)`]]}],ar={calm:`Calm`,everything:`Everything`};function or({category:e,label:t}){let n=(0,Q.useId)(),r=T(e=>e.chatFilters),i=T(e=>e.setChatFilters);return(0,$.jsxs)(`div`,{className:`flex min-h-9 items-center justify-between gap-3`,children:[(0,$.jsx)(`label`,{htmlFor:n,className:`min-w-0 flex-1 text-sm`,children:t}),(0,$.jsx)(Ne,{id:n,checked:r[e],onCheckedChange:t=>Cn(()=>void i({...r,[e]:t}))})]})}function sr(){let e=T(e=>e.chatFilters),n=T(e=>e.setChatFilters),r=M(e);return(0,$.jsxs)(Me,{children:[(0,$.jsx)(Ae,{asChild:!0,children:(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,"aria-label":`Chat filters`,title:`Chat filters: ${r?ar[r]:`custom`}`,className:t(`relative`,r!==`calm`&&`text-primary`),children:(0,$.jsx)(q,{className:`w-3.5 h-3.5`})})}),(0,$.jsxs)(je,{align:`end`,collisionPadding:16,"aria-label":`Chat filters`,className:`max-h-[min(75vh,var(--radix-popover-content-available-height))] w-[min(22rem,calc(100vw-2rem))] gap-3 overflow-y-auto overscroll-contain`,children:[(0,$.jsx)(`div`,{className:`grid grid-cols-2 gap-1 rounded-lg bg-muted p-1`,role:`group`,"aria-label":`Presets`,children:Object.keys(ie).map(e=>(0,$.jsx)(`button`,{type:`button`,"aria-pressed":r===e,onClick:()=>Cn(()=>void n(ie[e])),className:t(`min-h-9 rounded-md text-sm font-medium transition-colors`,r===e?`bg-background shadow-sm`:`text-muted-foreground hover:text-foreground`),children:ar[e]},e))}),(0,$.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[r===`calm`?`Only the notices that woke the agent.`:r===`everything`?`Every step, tool call, injected context and FYI.`:`Your own mix.`,` Your messages and the agent's replies always show.`]}),ir.map(e=>(0,$.jsxs)(`section`,{"aria-label":e.title,children:[(0,$.jsx)(`h3`,{className:`mb-0.5 text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:e.title}),e.items.map(([e,t])=>(0,$.jsx)(or,{category:e,label:t},e))]},e.title))]})]})}function cr({selectedInboxThread:e,agent:n,now:r,blockedState:i,thread:a,exportableThread:o,importedHistory:s,showBackButton:c,onBack:l,openAgentDetail:u,openWorkspaceFocus:d,voiceTtsEnabled:f,setVoiceTtsEnabled:p,canOpenTerminal:m,terminalOpening:h,handleOpenTerminal:g,canInterrupt:_,interruptAgent:v,canCompact:b,canClearContext:x,canShutdown:S,openConfirm:C,workspaceAction:w,doAgentAction:T,openFilesForAgent:E,forkFromAgent:ee,markInboxThreadUnread:te,markInboxThreadRead:D,exportThread:O,onOpenSearch:ne}){return(0,$.jsxs)(`div`,{"data-testid":`chat-header`,className:`flex items-center justify-between px-3 md:px-4 py-2.5 md:py-3 border-b border-border shrink-0`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 md:gap-2.5 min-w-0`,children:[c&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,onClick:l,className:`shrink-0 -ml-1`,children:(0,$.jsx)(nt,{className:`w-4 h-4`})}),(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-2 md:gap-2.5 min-w-0 hover:opacity-80 transition-opacity`,onClick:()=>n&&u(n),disabled:!n,children:[(0,$.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,$.jsx)(on,{agent:n}),n?.id!==N&&(0,$.jsx)(_n,{agent:n,now:r,className:`absolute -bottom-0.5 -right-0.5 w-2 h-2`})]}),(0,$.jsxs)(`div`,{className:`min-w-0 text-left`,children:[(0,$.jsxs)(`p`,{className:`flex items-center gap-1 text-sm font-medium truncate`,children:[n&&(0,$.jsx)(bn,{profile:yn(n),className:`shrink-0`}),(0,$.jsx)(fn,{agent:n,fallback:e})]}),n&&(0,$.jsxs)(`p`,{className:`text-xs text-muted-foreground truncate`,children:[n.id===N?`Checks messages on request`:i?`blocked: ${i.label}`:n.status,n.machine&&` · ${n.machine}`,typeof n.meta?.cwd==`string`&&n.meta.cwd&&` · ${ue(n.meta.cwd,1)}`]})]})]}),n&&(0,$.jsx)(Qe,{agent:n,compact:!0,className:`hidden @4xl/chat:flex shrink-0`}),n&&Ze(n)&&(0,$.jsx)(Je,{context:n.context,expected:!0}),n?.landState&&(0,$.jsxs)(un,{variant:`outline`,className:t(`shrink-0 border-tone-violet/30 text-tone-violet-fg text-[10px]`,n.branchWorkspaceId&&`cursor-pointer hover:brightness-125 focus:outline-none focus:ring-1 focus:ring-current`),title:n.branchWorkspaceId?`Workspace lifecycle state — click to open this workspace.`:`Workspace lifecycle state`,role:n.branchWorkspaceId?`button`:void 0,tabIndex:n.branchWorkspaceId?0:void 0,onClick:n.branchWorkspaceId?()=>void d(n.branchWorkspaceId):void 0,onKeyDown:n.branchWorkspaceId?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),d(n.branchWorkspaceId))}:void 0,children:[n.landState,n.landWaitReason?` · ${n.landWaitReason}`:``,n.landStateAt?` (${I(r,n.landStateAt)})`:``]}),a?.attention.unread?(0,$.jsxs)(un,{className:`bg-tone-danger/20 text-tone-danger-fg text-xs shrink-0 hidden @2xl/chat:flex`,children:[a.attention.unread,` unread`]}):null,n&&(0,$.jsx)(tr,{agentId:n.id,className:`shrink-0 hidden @3xl/chat:inline-flex`})]}),(0,$.jsx)(`div`,{className:`flex items-center gap-0.5 md:gap-1 shrink-0`,children:n&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(rr,{agentId:n.id}),(0,$.jsx)(dn,{value:n.id,label:`Copy agent ID`,size:`icon-sm`}),(0,$.jsx)(sr,{}),ne&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,title:`Search this chat`,onClick:ne,children:(0,$.jsx)(nn,{className:`w-3.5 h-3.5`})}),y.available&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,title:f?`Speaking agent responses aloud — click to mute (engine & voice in Settings)`:`Speak agent responses aloud (active chat) — engine & voice in Settings`,className:f?`text-primary`:``,onClick:()=>p(!f),children:f?(0,$.jsx)(sn,{className:`w-3.5 h-3.5`}):(0,$.jsx)(Fe,{className:`w-3.5 h-3.5`})}),m&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,disabled:h,title:`Terminal`,onClick:()=>void g(),children:(0,$.jsx)(rn,{className:`w-3.5 h-3.5`})}),_&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`text-tone-danger-fg hover:text-tone-danger-fg`,title:`Interrupt`,onClick:v,children:(0,$.jsx)(st,{className:`w-3.5 h-3.5`})}),(n.branchState===`changes`||n.branchState===`idle`)&&n.branchWorkspaceId&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex text-tone-warning-fg hover:text-tone-warning-fg`,title:`Mark workspace ready — hand off to the auto-merge`,onClick:()=>C(`Mark Workspace Ready`,`Mark ${L(n)}'s branch ready to land? The relay auto-merge will rebase and land it.`,()=>w(n.branchWorkspaceId,`ready`)),children:(0,$.jsx)(Ut,{className:`w-3.5 h-3.5`})}),b&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,title:`Compact`,onClick:()=>C(`Compact Agent`,`Compact context for ${L(n)}?`,()=>T(n,`compact`)),children:(0,$.jsx)(Xt,{className:`w-3.5 h-3.5`})}),x&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,title:`Clear context`,onClick:()=>C(`Clear Context`,`Clear context for ${L(n)}?`,()=>T(n,`clearContext`)),children:(0,$.jsx)(Xe,{className:`w-3.5 h-3.5`})}),S&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,title:`Shutdown`,onClick:()=>C(`Shutdown Agent`,`Shutdown ${L(n)}?`,()=>T(n,`shutdown`)),children:(0,$.jsx)(en,{className:`w-3.5 h-3.5`})}),n&&typeof n.meta?.cwd==`string`&&n.meta.cwd&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,title:`Open ${n.meta.cwd} in Files`,onClick:()=>void E(n),children:(0,$.jsx)(Wt,{className:`w-3.5 h-3.5`})}),n&&a&&a.messages.length>0&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,title:`Fork — spawn new agent with this chat history`,onClick:()=>ee(n.id,a.messages),children:(0,$.jsx)(pt,{className:`w-3.5 h-3.5`})}),a&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,title:`Mark unread`,onClick:()=>te(e),children:(0,$.jsx)(Ge,{className:`w-3.5 h-3.5`})}),a&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,title:`Mark read`,onClick:()=>D(a.peer,a.messages),children:(0,$.jsx)(Le,{className:`w-3.5 h-3.5`})}),o&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`hidden @4xl/chat:inline-flex`,title:`Export thread`,onClick:()=>O({...o,importedHistory:s},`json`),children:(0,$.jsx)(Bt,{className:`w-3.5 h-3.5`})}),(0,$.jsxs)(Oe,{children:[(0,$.jsx)(De,{asChild:!0,children:(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,className:`@4xl/chat:hidden`,children:(0,$.jsx)(Te,{className:`w-3.5 h-3.5`})})}),(0,$.jsxs)(Ee,{align:`end`,children:[m&&(0,$.jsxs)(K,{disabled:h,onClick:()=>void g(),children:[(0,$.jsx)(rn,{className:`w-3.5 h-3.5`}),`Terminal`]}),_&&(0,$.jsxs)(K,{onClick:v,children:[(0,$.jsx)(st,{className:`w-3.5 h-3.5`}),`Interrupt`]}),(n.branchState===`changes`||n.branchState===`idle`)&&n.branchWorkspaceId&&(0,$.jsxs)(K,{onClick:()=>C(`Mark Workspace Ready`,`Mark ${L(n)}'s branch ready to land? The relay auto-merge will rebase and land it.`,()=>w(n.branchWorkspaceId,`ready`)),children:[(0,$.jsx)(Ut,{className:`w-3.5 h-3.5`}),`Mark Ready`]}),b&&(0,$.jsxs)(K,{onClick:()=>C(`Compact Agent`,`Compact context for ${L(n)}?`,()=>T(n,`compact`)),children:[(0,$.jsx)(Xt,{className:`w-3.5 h-3.5`}),`Compact`]}),x&&(0,$.jsxs)(K,{onClick:()=>C(`Clear Context`,`Clear context for ${L(n)}?`,()=>T(n,`clearContext`)),children:[(0,$.jsx)(Xe,{className:`w-3.5 h-3.5`}),`Clear Context`]}),S&&(0,$.jsxs)(K,{onClick:()=>C(`Shutdown Agent`,`Shutdown ${L(n)}?`,()=>T(n,`shutdown`)),children:[(0,$.jsx)(en,{className:`w-3.5 h-3.5`}),`Shutdown`]}),n&&typeof n.meta?.cwd==`string`&&n.meta.cwd&&(0,$.jsxs)(K,{onClick:()=>void E(n),children:[(0,$.jsx)(Wt,{className:`w-3.5 h-3.5`}),`Open Files`]}),n&&a&&a.messages.length>0&&(0,$.jsxs)(K,{onClick:()=>ee(n.id,a.messages),children:[(0,$.jsx)(pt,{className:`w-3.5 h-3.5`}),`Fork`]}),(m||b||x||S)&&(0,$.jsx)(we,{}),a&&(0,$.jsxs)(K,{onClick:()=>te(e),children:[(0,$.jsx)(Ge,{className:`w-3.5 h-3.5`}),`Mark Unread`]}),a&&(0,$.jsxs)(K,{onClick:()=>D(a.peer,a.messages),children:[(0,$.jsx)(Le,{className:`w-3.5 h-3.5`}),`Mark Read`]}),o&&(0,$.jsxs)(K,{onClick:()=>O({...o,importedHistory:s},`json`),children:[(0,$.jsx)(Bt,{className:`w-3.5 h-3.5`}),`Download`]})]})]})]})})]})}var lr=(0,Q.memo)(cr);function ur({query:e,position:t,total:n,onQueryChange:r,onNext:i,onPrev:a,onClose:o}){let s=(0,Q.useRef)(null),c=e.trim().length>0,l=c&&n===0;function u(e){if(e.key===`Escape`){e.preventDefault(),o();return}e.key===`Enter`&&(e.preventDefault(),e.shiftKey?a():i())}return(0,$.jsxs)(`section`,{className:`flex shrink-0 items-center gap-2 border-b border-border bg-card/45 px-3 py-2`,children:[(0,$.jsx)(nn,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(gn,{ref:s,autoFocus:!0,value:e,onChange:e=>r(e.target.value),onKeyDown:u,placeholder:`Search this chat…`,"aria-label":`Search this chat`,className:`h-7 flex-1 text-sm`}),(0,$.jsx)(`span`,{className:`shrink-0 tabular-nums text-xs `+(l?`text-tone-danger-fg`:`text-muted-foreground`),children:c?l?`No results`:`${t}/${n}`:``}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[(0,$.jsx)(Z,{type:`button`,variant:`ghost`,size:`icon-sm`,title:`Previous match (Shift+Enter)`,disabled:n===0,onClick:a,children:(0,$.jsx)(It,{className:`h-3.5 w-3.5`})}),(0,$.jsx)(Z,{type:`button`,variant:`ghost`,size:`icon-sm`,title:`Next match (Enter)`,disabled:n===0,onClick:i,children:(0,$.jsx)(Pt,{className:`h-3.5 w-3.5`})}),(0,$.jsx)(Z,{type:`button`,variant:`ghost`,size:`icon-sm`,title:`Close search (Esc)`,onClick:o,children:(0,$.jsx)(cn,{className:`h-3.5 w-3.5`})})]})]})}function dr({open:e,onOpenChange:t,src:n,title:r,actions:i}){return(0,$.jsx)(Ce,{open:e,onOpenChange:t,children:(0,$.jsxs)(xe,{className:`max-w-[95vw] w-auto p-0 bg-black/95 border-white/10 gap-0`,showCloseButton:!1,children:[(0,$.jsx)(Se,{className:`sr-only`,children:r}),(0,$.jsxs)(`div`,{className:`relative flex items-center justify-center min-h-[200px]`,children:[(0,$.jsx)(`img`,{src:n,alt:r,className:`max-w-[93vw] max-h-(--dialog-max-h) object-contain`}),(0,$.jsxs)(`div`,{className:`absolute top-2 right-2 flex gap-1`,children:[i,(0,$.jsx)(`button`,{type:`button`,onClick:()=>t(!1),className:`rounded-md bg-black/60 hover:bg-black/80 p-2 text-white transition-colors`,title:`Close`,children:(0,$.jsx)(cn,{className:`w-4 h-4`})})]})]})]})})}function fr({matches:e,activeIndex:n,onAccept:r,onHover:i}){return e.length===0?null:(0,$.jsx)(`div`,{className:`absolute bottom-full left-3 right-3 md:left-4 md:right-4 mb-2 z-20 max-h-64 overflow-auto rounded-xl border border-border bg-popover shadow-lg`,children:e.map((e,a)=>(0,$.jsxs)(`button`,{onMouseDown:t=>{t.preventDefault(),r(e)},onMouseEnter:()=>i(a),className:t(`flex w-full items-baseline gap-2 px-3 py-1.5 text-left text-sm`,a===n?`bg-accent`:`hover:bg-accent/50`),children:[(0,$.jsx)(`span`,{className:`font-medium shrink-0`,children:e.name}),e.argumentHint&&(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground shrink-0`,children:e.argumentHint}),e.description&&(0,$.jsx)(`span`,{className:`ml-auto truncate text-xs text-muted-foreground/70`,children:e.description})]},e.name))})}var pr=e=>`/agents/`+encodeURIComponent(e)+`/self-effort`,mr=f((e,t)=>{let n=(n,r)=>e({grants:{...t().grants,[n]:r}});return{grants:{},async load(e){try{let{selfEffort:t}=await be(`GET`,pr(e));n(e,{policy:t??null})}catch(r){n(e,{...t().grants[e],error:r.message})}},async save(e,r){let i=t().grants[e];n(e,{policy:i?.policy,saving:!0});let a=r?r===`band`?{selfEffort:!0}:{selfEffort:!0,selfEffortCeiling:r}:{selfEffort:!1};try{let{selfEffort:t}=await be(`PUT`,pr(e),{...a,surface:{component:`composer-self-effort`}});n(e,{policy:t??null})}catch(t){n(e,{policy:i?.policy,error:t.message})}}}});function hr(e){return e.band?`${e.floor} to ${e.ceiling}`:`up to ${e.ceiling}`}function gr({agentId:e,efforts:t,className:n}){let[r,i]=(0,Q.useState)(!1),a=mr(t=>t.grants[e]),o=mr(e=>e.load),s=mr(e=>e.save),c=a?.policy,l=!!c,u=c?c.band?x:c.ceiling:``,d=c&&!c.band&&!t.includes(c.ceiling)?[...t,c.ceiling]:t,f=c===void 0||!!a?.saving,p=c===void 0?``:c?c.band?`${c.floor}–${c.ceiling}`:`≤ ${c.ceiling}`:`off`;return(0,$.jsxs)(Me,{open:r,onOpenChange:t=>{i(t),t&&o(e)},children:[(0,$.jsx)(Ae,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,"aria-label":`Agent's own effort`,title:`Let the agent change its own effort`,className:n,children:[`self`,p&&(0,$.jsxs)(`span`,{className:`max-md:sr-only`,children:[` `,p]})]})}),r&&(0,$.jsxs)(je,{align:`end`,className:`w-64 text-left text-xs`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,$.jsx)(ke,{htmlFor:`self-effort-${e}`,className:`text-xs`,children:`Let the agent change its own effort`}),(0,$.jsx)(Ne,{id:`self-effort-${e}`,size:`sm`,checked:l,disabled:f,onCheckedChange:t=>void s(e,t?`band`:null)})]}),c&&(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(ke,{htmlFor:`self-effort-ceiling-${e}`,className:`shrink-0 text-xs text-muted-foreground`,children:`Range`}),(0,$.jsxs)(`select`,{id:`self-effort-ceiling-${e}`,value:u,disabled:f,onChange:t=>void s(e,t.target.value),className:`w-full rounded-md border border-input bg-background px-2 py-1 text-xs`,children:[(0,$.jsx)(`option`,{value:`band`,children:`One step from base`}),d.map(e=>(0,$.jsxs)(`option`,{value:e,children:[`Up to `,e]},e))]})]}),(0,$.jsx)(`p`,{className:`text-muted-foreground`,children:c===void 0?`Loading…`:c?`From its next turn it can set its own effort ${hr(c)}${c.band?` (base ${c.base})`:``}. You can still set any level. This holds across restarts; for a managed agent it applies to the whole policy.`:`Only you and its coordinator can change its effort.`}),a?.error&&(0,$.jsx)(`p`,{role:`alert`,className:`text-tone-danger-fg`,children:a.error})]})]})}var _r=`min-w-0 max-w-full text-right text-[11px] text-muted-foreground`,vr=`min-h-11 min-w-11 shrink-0 text-center cursor-pointer appearance-none field-sizing-content rounded bg-background px-1 text-[11px] text-muted-foreground underline decoration-dotted underline-offset-2 hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring md:min-h-0 md:min-w-0 md:px-0.5`;function yr({agent:e}){let n=T(e=>e.providerCatalog),r=D(t=>e?t.states[e.id]:void 0),i=D(t=>e?t.refused[e.id]:void 0),a=D(e=>e.request),o=D(e=>e.load),s=D(e=>e.dismiss),c=e?.providerCapabilities?.model,l=c?.effortSwitch===!0?e?.id:void 0;(0,Q.useEffect)(()=>{l&&o(l).catch(()=>{})},[l,o]);let u=re(c,n);if(!e||!c||!u)return null;let{label:d,entry:f}=u,p=c.effortSwitch===!0&&e.status!==`offline`?f?.efforts??[]:[];if(!p.length)return(0,$.jsxs)(`p`,{"data-testid":`composer-model`,className:`${_r} break-words`,children:[d,c.effort?` (${c.effort})`:``]});let m=c.effort??``,g=h(r),_=m&&!p.includes(m)?[m,...p]:p;return(0,$.jsxs)(`div`,{className:_r,children:[(0,$.jsxs)(`p`,{"data-testid":`composer-model`,className:`flex min-w-0 items-center justify-end gap-1`,children:[(0,$.jsxs)(`span`,{className:`min-w-0 truncate`,children:[d,` ·`]}),(0,$.jsxs)(`select`,{"aria-label":`Effort`,title:g?`Effort ${g} applies when the current turn ends; pick again to replace it`:`Change effort for the next turn; the prompt cache is kept`,value:g??m,onChange:t=>{t.target.value&&a(e.id,t.target.value)},className:t(vr,g&&`max-md:animate-pulse`),children:[!m&&(0,$.jsx)(`option`,{value:``,children:`default`}),_.map(e=>(0,$.jsx)(`option`,{value:e,children:e},e))]}),g&&(0,$.jsx)(`span`,{"data-testid":`effort-pending`,className:`shrink-0 max-md:sr-only`,children:e.status===`busy`?`pending until the turn ends`:`switching`}),(0,$.jsx)(`span`,{"aria-hidden":!0,children:`·`}),(0,$.jsx)(gr,{agentId:e.id,efforts:p,className:vr})]}),i&&(0,$.jsxs)(`p`,{role:`alert`,className:`mt-0.5 flex items-start justify-end gap-1 text-tone-danger-fg`,children:[(0,$.jsxs)(`span`,{children:[`Effort not changed to `,i.effort,`: `,i.error]}),(0,$.jsx)(`button`,{type:`button`,title:`Dismiss`,onClick:()=>s(e.id),className:`shrink-0 hover:text-foreground`,children:(0,$.jsx)(cn,{className:`h-3 w-3`})})]})]})}var br=`size-11 shrink-0 rounded-xl md:size-[42px]`;function xr({inputRef:e,value:n,onChange:r,onKeyDown:i,onPaste:a,onBlur:o,placeholder:s,className:c}){return(0,Q.useLayoutEffect)(()=>{let t=e.current,n=t?.parentElement;!t||!n||(n.style.minHeight=`${n.offsetHeight}px`,t.style.height=`auto`,t.style.height=Math.min(t.scrollHeight,200)+`px`,n.style.minHeight=``)},[n,e]),(0,$.jsx)(`div`,{className:t(`min-w-0`,c),children:(0,$.jsx)(`textarea`,{ref:e,value:n,onChange:r,onKeyDown:i,onPaste:a,onBlur:o,placeholder:s,rows:1,className:t(`block w-full resize-none rounded-xl border border-border bg-background px-3.5 py-2.5 text-sm`,`placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,`min-h-[42px] max-h-[200px] overflow-y-auto`)})})}function Sr({item:e,onRemove:n}){let[r,i]=(0,Q.useState)(!1),a=!!(e.previewUrl&&!e.error);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 rounded-md border border-border bg-card px-2.5 py-2 text-xs`,children:[(0,$.jsx)(`button`,{type:`button`,disabled:!a,onClick:()=>i(!0),className:`group/pending relative flex h-9 w-9 shrink-0 items-center justify-center overflow-hidden rounded bg-muted disabled:cursor-default`,title:a?`Preview image`:e.fileName,children:e.previewUrl?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`img`,{src:e.previewUrl,alt:e.fileName,className:`h-full w-full object-cover`}),(0,$.jsx)(`span`,{className:`absolute inset-0 flex items-center justify-center bg-black/0 group-hover/pending:bg-black/30 transition-colors`,children:(0,$.jsx)(ln,{className:`h-3.5 w-3.5 text-white opacity-0 group-hover/pending:opacity-100 transition-opacity drop-shadow-md`})})]}):e.error?(0,$.jsx)(Lt,{className:`h-4 w-4 text-tone-danger-fg`}):e.uploading?(0,$.jsx)(Jt,{className:`h-4 w-4 animate-spin text-muted-foreground`}):(0,$.jsx)(Ht,{className:`h-4 w-4 text-muted-foreground`})}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate font-medium`,children:e.fileName}),(0,$.jsx)(`p`,{className:t(`truncate text-muted-foreground`,e.error&&`text-tone-danger-fg`),children:e.error||(e.uploading?`Uploading`:W(e.size))})]}),(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,title:`Remove attachment`,onClick:n,children:(0,$.jsx)(cn,{className:`h-3.5 w-3.5`})})]}),e.previewUrl&&(0,$.jsx)(dr,{open:r,onOpenChange:i,src:e.previewUrl,title:e.fileName})]})}function Cr({draft:e,placeholder:n,chatSending:r,disabled:i,hasPendingUploads:a,readyAttachmentCount:o,pendingAttachments:s,micAvailable:c,micState:l,slashMatches:u,slashActiveIndex:d,onDraftChange:f,onDraftBlur:p,onKeyDown:m,onPaste:h,onUploadFiles:g,onRemovePendingAttachment:_,onSend:v,onAcceptSlash:y,onSlashHover:b,onStartPtt:x,onStopPtt:S,footerText:C,agent:w}){let T=(0,Q.useRef)(null),E=(0,Q.useRef)(null),ee=(0,Q.useRef)(!1),[te,D]=(0,Q.useState)(!1),O=!e.trim()&&o===0||a||r||i;return(0,$.jsxs)(`div`,{className:t(`relative shrink-0 border-t border-border px-3 md:px-4 py-2.5 md:py-3 safe-area-bottom`,te&&`bg-primary/5 ring-1 ring-primary/40`),onDragOver:e=>{e.preventDefault(),D(!0)},onDragLeave:()=>D(!1),onDrop:e=>{e.preventDefault(),D(!1),g(e.dataTransfer.files)},children:[w?.id===N&&(0,$.jsx)(`p`,{className:`mb-2 text-xs text-muted-foreground`,children:`Messages wait here until you ask Claude in the app: "Any messages for me?"`}),s.length>0&&(0,$.jsx)(`div`,{className:`mb-2 grid gap-2 sm:grid-cols-2`,children:s.map(e=>(0,$.jsx)(Sr,{item:e,onRemove:()=>_(e.id)},e.id))}),(0,$.jsx)(`input`,{ref:T,type:`file`,multiple:!0,className:`hidden`,onChange:e=>{e.target.files&&g(e.target.files),e.currentTarget.value=``}}),(0,$.jsx)(fr,{matches:u,activeIndex:d,onAccept:y,onHover:b}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-end gap-x-1 gap-y-1.5 md:gap-2`,children:[(0,$.jsx)(Z,{variant:`ghost`,size:`icon`,title:`Attach files`,disabled:r,onClick:()=>T.current?.click(),className:br,children:(0,$.jsx)(Zt,{className:`w-4 h-4`})}),c&&(0,$.jsx)(Z,{variant:`ghost`,size:`icon`,title:l===`recording`?`Release to transcribe`:`Hold to talk`,disabled:r||l===`transcribing`,onPointerDown:e=>{e.preventDefault(),e.currentTarget.setPointerCapture(e.pointerId),x()},onPointerUp:e=>{e.preventDefault();try{e.currentTarget.releasePointerCapture(e.pointerId)}catch{}S()},className:t(br,`md:order-1`,l===`recording`&&`text-tone-danger-fg animate-pulse`),children:l===`transcribing`?(0,$.jsx)(Jt,{className:`w-4 h-4 animate-spin`}):(0,$.jsx)(Ie,{className:`w-4 h-4`})}),(0,$.jsx)(xr,{inputRef:E,value:e,onChange:e=>f(e.target.value),onKeyDown:m,onPaste:h,onBlur:p,placeholder:n,className:`order-first basis-full md:order-none md:min-w-48 md:flex-1 md:basis-0`}),(0,$.jsx)(`div`,{className:`flex min-h-11 min-w-0 flex-1 basis-0 flex-col items-end justify-center md:min-h-[42px] md:max-w-64 md:flex-none md:basis-auto`,children:(0,$.jsx)(yr,{agent:w})}),(0,$.jsx)(Z,{size:`icon`,"aria-label":`Send message`,title:`Send (Enter) · Shift+Enter for a new line`,disabled:O,onPointerDown:e=>{ee.current=e.pointerType!==`mouse`},onMouseDown:e=>e.preventDefault(),onClick:()=>{v(),ee.current&&E.current?.blur(),ee.current=!1},className:t(br,`md:order-2`),children:(0,$.jsx)(Ue,{className:`w-4 h-4`})})]}),C&&(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground mt-1.5`,children:C})]})}var wr=e(i(),1);function Tr({preview:e,error:t,onReadError:n,onMouseEnter:r,onMouseLeave:i}){let{anchor:a}=e,o=Math.min(560,window.innerWidth-24),s=Math.min(380,window.innerHeight-24),c=Math.max(12,Math.min(a.left,window.innerWidth-o-12));return(0,wr.createPortal)((0,$.jsxs)(`div`,{className:`fixed z-50 flex flex-col overflow-hidden rounded-lg border border-border bg-background shadow-xl`,style:{top:window.innerHeight-a.bottom>=s+8?a.bottom+8:a.top-8-s>=12?a.top-8-s:Math.max(12,window.innerHeight-s-12),left:c,width:o,height:s},onMouseEnter:r,onMouseLeave:i,children:[(0,$.jsxs)(`div`,{className:`flex h-8 shrink-0 items-center gap-2 border-b border-border px-2.5`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] font-medium text-muted-foreground`,children:e.path}),t&&(0,$.jsx)(`span`,{className:`max-w-[12rem] truncate text-[11px] text-tone-danger-fg`,children:t}),(0,$.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/70`,children:`click to pin`})]}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1`,children:e.type===`directory`?(0,$.jsx)(We,{orchestratorId:e.orchestratorId,selectedPath:e.path,onReadError:n}):(0,$.jsx)(Ve,{orchestratorId:e.orchestratorId,selectedPath:e.path,line:e.line,onReadError:n})})]}),document.body)}var Er=[];function Dr(e){return T(t=>t.chatStatusEvents[e]??Er)}function Or(e,t){let n=(0,Q.useRef)(!1);(0,Q.useEffect)(()=>{if(!e)return;n.current||=(window.history.pushState({chatGuard:!0},``),!0);function r(e){(e.state?.chatGuard!==void 0||!n.current)&&(window.history.pushState({chatGuard:!0},``),t())}function i(e){e.preventDefault()}return window.addEventListener(`popstate`,r),window.addEventListener(`beforeunload`,i),()=>{window.removeEventListener(`popstate`,r),window.removeEventListener(`beforeunload`,i)}},[e,t]),(0,Q.useEffect)(()=>{!e&&n.current&&(n.current=!1)},[e])}function kr(e,t){let n=e.toLowerCase(),r=t.trim().toLowerCase();return r?n.includes(r)?!0:/\s/.test(r)||r.length<4?!1:Ar(n,r):!1}function Ar(e,t,n=4){let r=0,i=-1;for(let a=0;a<e.length&&r<t.length;a+=1)if(e[a]===t[r]){if(i!==-1&&a-i-1>n)return!1;i=a,r+=1}return r===t.length}function jr(e,t){let n=t.trim();if(!n)return[];let r=[];for(let t of e){let e=it(t);e&&kr(e,n)&&r.push(Y(t))}return r}function Mr(e){let[t,n]=(0,Q.useState)(!1),[r,i]=(0,Q.useState)(``),[a,o]=(0,Q.useState)(0),s=(0,Q.useMemo)(()=>t?jr(e,r):[],[t,r,e]),c=(0,Q.useMemo)(()=>new Set(s),[s]),l=s.length,u=l?Math.min(a,l-1):0,d=l?s[u]??null:null,f=(0,Q.useCallback)(()=>n(!0),[]),p=(0,Q.useCallback)(()=>{n(!1),i(``),o(0)},[]),m=(0,Q.useCallback)(e=>{i(e),o(0)},[]),h=(0,Q.useCallback)(()=>{o(e=>l?(e+1)%l:0)},[l]),g=(0,Q.useCallback)(()=>{o(e=>l?(e-1+l)%l:0)},[l]);return{open:t,query:r,matchKeys:s,matchKeySet:c,total:l,position:l?u+1:0,currentKey:d,openSearch:f,close:p,setQuery:m,next:h,prev:g}}function Nr(e,t,n){let[r,i]=(0,Q.useState)(e),a=(0,Q.useRef)(null),o=(0,Q.useRef)(e),s=(0,Q.useRef)(e),c=(0,Q.useRef)(n);return(0,Q.useEffect)(()=>{if(o.current=e,s.current===e)return;s.current=e;let r=c.current!==n;if(c.current=n,a.current!==null){if(!r)return;clearTimeout(a.current)}i(e),a.current=setTimeout(()=>{a.current=null,i(e=>e===o.current?e:o.current)},t)},[e,t,n]),(0,Q.useEffect)(()=>()=>{a.current!==null&&clearTimeout(a.current)},[]),r}function Pr({agentId:e,filters:t,threadMessages:n,statusEvents:r,effortChanges:i,createdAt:a,importedHistory:o,spawnedById:s,spawnedByProvider:c,window:l}){let u=l?.loading??!1,d=l?.loadedInitial??!1,f=l?.hasMore??!1,p=_(l),m=d&&!f,h=Nr((0,Q.useMemo)(()=>({threadMessages:n,statusEvents:r,effortChanges:i,createdAt:a,importedHistory:o,spawnedById:s,spawnedByProvider:c,historyStart:m,loading:u,loadedInitial:d,hasMore:f,hasNewer:p}),[n,r,i,a,o,s,c,m,u,d,f,p]),120,`${u}:${d}:${f}:${p}`);return{timeline:(0,Q.useMemo)(()=>bt(h.threadMessages,h.statusEvents,h.createdAt,h.importedHistory,{...h.spawnedById?{spawnedBy:{agentId:h.spawnedById,provider:h.spawnedByProvider}}:{},historyStart:h.historyStart,historyEnd:!h.hasNewer,effortChanges:h.effortChanges,include:n=>Dn(n,e,t)}),[h.threadMessages,h.statusEvents,h.effortChanges,h.createdAt,h.importedHistory,h.spawnedById,h.spawnedByProvider,h.historyStart,h.hasNewer,e,t]),loading:h.loading,loadedInitial:h.loadedInitial,hasMore:h.hasMore,hasNewer:h.hasNewer}}var Fr=1e4;function Ir(e,t){let n=T(e=>e.announcePresence),r=(0,Q.useRef)(t);r.current=t,(0,Q.useEffect)(()=>{if(!e)return;n(e,r.current);let t=setInterval(()=>{n(e,r.current)},Fr);return()=>{clearInterval(t),n(e,!1,!0)}},[e,n]),(0,Q.useEffect)(()=>{e&&n(e,t)},[e,t,n])}function Lr(e,t){switch(e.type){case`message`:return[0,!k(e.msg.from)&&!k(e.msg.to)?.375:.75];case`initial-prompt`:case`imported-message`:case`work-final`:return[0,.75];case`activity`:return e.steps.some(e=>t||e.kind!==`reasoning`)?[0,.5]:null;case`prompt-resolution`:return[0,0];default:return[.25,.25]}}function Rr(e,t,n){let r=0,i=null,a=e.map(e=>{let a=Lr(e,t);if(!a)return{paddingTop:`0rem`};let o=Math.max(r,a[0]),s=o;if(n){let t=Y(e),r=n.get(t);r!==void 0&&r<=o&&i?s=r:n.set(t,o)}return s<o&&(i.paddingBottom=`${o-s}rem`),r=a[1],i={paddingTop:`${s}rem`}});return n&&n.size>2*e.length&&zr(n,e),{rows:a,end:`${r}rem`}}function zr(e,t){let n=new Set(t.map(Y));for(let t of e.keys())n.has(t)||e.delete(t)}var Br={"workspace-ready":`workspace ready`,"task-deliver":`task deliver`,"task-done":`task done`,"explicit-reply":`explicit reply`,"report-final":`report final`,"edge-fallback":`inferred at exit`};function Vr({windowId:e,members:t,issueRepo:n}){let r=t[0],i=T(e=>r?e.agentsById[r.msg.from]:void 0);if(!r)return null;let a=ft(r.msg.occurredAt??r.msg.createdAt),o=r.source===`edge-fallback`,s=r.source?Br[r.source]:void 0,c=A(r.msg),l=P(r.msg).trim()||`Final report`,u=o?`border-tone-warning/40 bg-tone-warning/[0.06] text-tone-warning-fg`:`border-tone-success/40 bg-tone-success/[0.06] text-tone-success-fg`;return(0,$.jsx)(`div`,{"data-msg-id":r.msg.id,"data-window-id":e,className:`flex justify-start mb-3`,children:(0,$.jsx)(X,{id:`work-final-${e}`,icon:Rt,label:(0,$.jsxs)($.Fragment,{children:[`Final report from `,(0,$.jsx)(fn,{agent:i,fallback:r.msg.from,className:`whitespace-normal text-clip [overflow-wrap:anywhere]`})]}),summary:l,trailing:(0,$.jsxs)(`span`,{className:`inline-flex flex-wrap items-center gap-x-1.5 gap-y-1`,children:[o&&(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full border border-tone-warning/40 bg-tone-warning/10 px-1.5 py-0.5 text-[10px] font-medium text-tone-warning-fg`,title:`This work window was closed by a crash/idle-exit edge, not an explicit workspace-ready or task-done signal.`,children:[(0,$.jsx)(an,{className:`h-3 w-3`}),`inferred at exit`]}),!o&&s&&(0,$.jsxs)(`span`,{children:[`via `,s]}),c&&(0,$.jsx)(`span`,{className:`rounded border border-tone-success/40 px-1.5 py-0.5 text-[10px]`,children:`Final turn`}),r.msg.sourceMessageId&&(0,$.jsxs)(`a`,{className:`text-[10px] underline`,href:`#message-${r.msg.sourceMessageId}`,children:[`source #`,r.msg.sourceMessageId]}),(0,$.jsx)(`span`,{children:a})]}),tone:u,wrapHeader:!0,className:`max-w-[85%] md:max-w-[75%]`,children:(0,$.jsx)(`div`,{className:`space-y-2`,children:t.map(e=>(0,$.jsxs)(`div`,{"data-msg-id":e.msg.id,children:[(0,$.jsx)(Sn,{text:P(e.msg),rawBody:e.msg.body,issueRepo:n,className:`text-sm leading-relaxed text-foreground`}),e.confidence===`reconstructed`&&(0,$.jsx)(`p`,{className:`mt-0.5 text-[10px] italic text-muted-foreground/50`,title:`This report was reconstructed from persisted state (e.g. after a relay restart), not captured live.`,children:`reconstructed`})]},e.msg.id))})})})}function Hr(){return(0,$.jsxs)(`div`,{className:`mt-1.5 flex items-center gap-1.5 text-[11px] text-muted-foreground`,children:[(0,$.jsx)(Kt,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{children:`Thinking may still be arriving…`})]})}function Ur({agentId:e,approval:t}){let n=T(e=>e.sendPermissionDecision),[r,i]=(0,Q.useState)(null);if(!t)return null;if(t.questions&&t.questions.length)return(0,$.jsx)(Kr,{agentId:e,approval:t,questions:t.questions});let a=t,o=t.choices.length?t.choices:[{id:`approve`,label:`Approve`},{id:`deny`,label:`Deny`}];async function s(t){if(!r){i(t.id);try{await n(e,a.id,t.id)}finally{i(null)}}}let c=t.kind===`plan`;return(0,$.jsx)(`div`,{className:`flex justify-start mb-3`,children:(0,$.jsx)(`div`,{className:`max-w-[92%] md:max-w-[78%] rounded-2xl rounded-bl-sm bg-card ring-1 ring-tone-warning/35 px-3.5 py-3 text-sm`,children:(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[c?(0,$.jsx)(qt,{className:`mt-0.5 h-4 w-4 shrink-0 text-tone-warning-fg`}):(0,$.jsx)(Lt,{className:`mt-0.5 h-4 w-4 shrink-0 text-tone-warning-fg`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:`text-sm font-medium text-tone-warning-fg`,children:t.title}),t.reasoningSettled===!1&&(0,$.jsx)(Hr,{}),t.body&&(c?(0,$.jsx)(`div`,{className:`mt-2 max-h-72 overflow-auto rounded-md bg-background/60 p-2.5 text-xs leading-relaxed`,children:(0,$.jsx)(Sn,{text:t.body,rawBody:t.body,className:`leading-relaxed`})}):(0,$.jsx)(`pre`,{className:`mt-2 max-h-44 overflow-auto whitespace-pre-wrap break-words rounded-md bg-background/80 p-2 font-mono text-xs leading-relaxed text-muted-foreground`,children:t.body})),(0,$.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:o.map(e=>(0,$.jsxs)(Z,{size:`sm`,variant:e.id===`deny`||e.id===`abort`?`outline`:`default`,disabled:!!r,onClick:()=>void s(e),className:`h-7 px-2 text-xs`,children:[r===e.id&&(0,$.jsx)(Jt,{className:`mr-1.5 h-3 w-3 animate-spin`}),e.label]},e.id))})]})]})})})}function Wr(e){return e?e.otherActive&&e.other.trim()?!0:e.labels.length>0:!1}function Gr(e){let t=[...e.labels];return e.otherActive&&e.other.trim()&&t.push(e.other.trim()),t.join(`, `)}function Kr({agentId:e,approval:n,questions:r}){let i=T(e=>e.sendPermissionDecision),[a,o]=(0,Q.useState)(0),[s,c]=(0,Q.useState)({}),[l,u]=(0,Q.useState)(null),d=r[Math.min(a,r.length-1)],f=s[a];if(!d)return null;let p=!!d.multiSelect,m=r.length,h=a===m-1,g=Wr(f),_=r.every((e,t)=>Wr(s[t])),v=!!l;function y(e){c(t=>{let n=t[a]??{labels:[],other:``,otherActive:!1};return{...t,[a]:{...n,...e}}})}function b(e){if(p){let t=f?.labels.includes(e);y({labels:t?(f?.labels??[]).filter(t=>t!==e):[...f?.labels??[],e]})}else y({labels:[e],otherActive:!1})}function x(){y(p?{otherActive:!f?.otherActive}:{labels:[],otherActive:!0})}async function S(){if(!(!_||v)){u(`answer`);try{let t={};r.forEach((e,n)=>{let r=s[n];r&&(t[e.question]=Gr(r))}),await i(e,n.id,`answer`,t)}finally{u(null)}}}async function C(){if(!v){u(`dismiss`);try{await i(e,n.id,`deny`)}finally{u(null)}}}let w=!!f?.otherActive;return(0,$.jsx)(`div`,{className:`flex justify-start mb-3`,children:(0,$.jsxs)(`div`,{className:`w-full max-w-[92%] md:max-w-[78%] rounded-2xl rounded-bl-sm bg-card ring-1 ring-tone-warning/35 px-3.5 py-3 text-sm`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Be,{className:`h-4 w-4 shrink-0 text-tone-warning-fg`}),(0,$.jsx)(`div`,{className:`text-sm font-medium text-tone-warning-fg`,children:n.title}),m>1&&(0,$.jsxs)(un,{variant:`outline`,className:`ml-auto h-5 px-1.5 text-[10px] text-muted-foreground`,children:[a+1,` / `,m]})]}),n.reasoningSettled===!1&&(0,$.jsx)(Hr,{}),(0,$.jsxs)(`div`,{className:`mt-3`,children:[d.header&&(0,$.jsx)(`div`,{className:`text-[11px] font-semibold uppercase tracking-wide text-tone-warning-fg`,children:d.header}),(0,$.jsx)(`div`,{className:`mt-0.5 text-sm text-foreground whitespace-pre-wrap break-words`,children:d.question}),p&&(0,$.jsx)(`div`,{className:`mt-0.5 text-[11px] text-muted-foreground`,children:`Select all that apply`}),(0,$.jsxs)(`div`,{className:`mt-2 flex flex-col gap-1.5`,children:[d.options.map(e=>{let n=!!f?.labels.includes(e.label);return(0,$.jsxs)(`button`,{type:`button`,disabled:v,onClick:()=>b(e.label),className:t(`flex items-start gap-2 rounded-lg border px-2.5 py-2 text-left transition-colors`,n?`border-tone-warning/60 bg-tone-warning/10`:`border-border bg-background/60 hover:bg-background`,v&&`opacity-60`),children:[(0,$.jsx)(`span`,{className:t(`mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center border text-tone-warning-fg`,p?`rounded`:`rounded-full`,n?`border-tone-warning bg-tone-warning/20`:`border-muted-foreground/40`),children:n&&(0,$.jsx)(Nt,{className:`h-3 w-3`})}),(0,$.jsxs)(`span`,{className:`min-w-0`,children:[(0,$.jsx)(`span`,{className:`text-sm text-foreground`,children:e.label}),e.description&&(0,$.jsx)(`span`,{className:`block text-xs text-muted-foreground`,children:e.description})]})]},e.label)}),(0,$.jsxs)(`button`,{type:`button`,disabled:v,onClick:x,className:t(`flex items-start gap-2 rounded-lg border px-2.5 py-2 text-left transition-colors`,w?`border-tone-warning/60 bg-tone-warning/10`:`border-border bg-background/60 hover:bg-background`,v&&`opacity-60`),children:[(0,$.jsx)(`span`,{className:t(`mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center border text-tone-warning-fg`,p?`rounded`:`rounded-full`,w?`border-tone-warning bg-tone-warning/20`:`border-muted-foreground/40`),children:w&&(0,$.jsx)(Nt,{className:`h-3 w-3`})}),(0,$.jsx)(`span`,{className:`text-sm text-foreground`,children:`Other…`})]}),w&&(0,$.jsx)(xn,{autoFocus:!0,rows:2,disabled:v,value:f?.other??``,onChange:e=>y({other:e.target.value,otherActive:!0}),placeholder:`Type your answer`,className:`mt-1 text-sm`})]})]}),(0,$.jsxs)(`div`,{className:`mt-3 flex items-center gap-1.5`,children:[a>0&&(0,$.jsxs)(Z,{size:`sm`,variant:`outline`,disabled:v,onClick:()=>o(e=>e-1),className:`h-7 px-2 text-xs`,children:[(0,$.jsx)(ze,{className:`mr-1 h-3 w-3`}),`Back`]}),h?(0,$.jsxs)(Z,{size:`sm`,disabled:v||!_,onClick:()=>void S(),className:`h-7 px-2 text-xs`,children:[l===`answer`&&(0,$.jsx)(Jt,{className:`mr-1.5 h-3 w-3 animate-spin`}),`Send answer`,m>1?`s`:``]}):(0,$.jsxs)(Z,{size:`sm`,disabled:v||!g,onClick:()=>o(e=>e+1),className:`h-7 px-2 text-xs`,children:[`Next`,(0,$.jsx)(Ft,{className:`ml-1 h-3 w-3`})]}),(0,$.jsxs)(Z,{size:`sm`,variant:`ghost`,disabled:v,onClick:()=>void C(),className:`ml-auto h-7 px-2 text-xs text-muted-foreground`,children:[l===`dismiss`&&(0,$.jsx)(Jt,{className:`mr-1.5 h-3 w-3 animate-spin`}),`Dismiss`]})]})]})})}function qr({actor:e}){let t=T(e=>e.usersById);return e.role===`self`?(0,$.jsx)(`span`,{children:`the agent itself`}):e.role===`operator`?(0,$.jsx)(`span`,{children:e.user?F(e.user,t):`the operator`}):e.id?(0,$.jsxs)(`span`,{className:`inline-flex items-center`,children:[(0,$.jsx)(Ct,{agentId:e.id,noIcon:!0,className:`px-0.5`}),(0,$.jsx)(`span`,{className:`opacity-70`,children:`(coordinator)`})]}):(0,$.jsx)(`span`,{children:`its coordinator`})}function Jr({change:e}){return(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-2 my-1`,children:[(0,$.jsx)(`div`,{className:`h-px flex-1 bg-border`}),(0,$.jsxs)(`div`,{className:`flex max-w-[85%] flex-wrap items-center justify-center gap-x-1.5 gap-y-0.5 border border-border bg-muted/30 px-2.5 py-1 text-xs text-muted-foreground md:max-w-[75%] ${e.reason?`rounded-xl`:`rounded-full`}`,children:[(0,$.jsx)(Gt,{className:`h-3 w-3 shrink-0`}),(0,$.jsxs)(`span`,{children:[`Effort `,e.previousEffort,` → `,e.effort]}),(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,$.jsx)(`span`,{className:`opacity-70`,children:`by`}),(0,$.jsx)(qr,{actor:e.actor})]}),e.reason&&(0,$.jsxs)(`span`,{className:`min-w-0 break-words text-muted-foreground/80`,children:[`· '`,e.reason,`'`]}),(0,$.jsx)(`span`,{className:`text-muted-foreground/60`,children:ft(e.at)})]}),(0,$.jsx)(`div`,{className:`h-px flex-1 bg-border`})]})}var Yr=`px-3 md:px-4`;function Xr({context:e}){if(!e)return null;let{agentId:t,busy:n,latestKey:r,pendingApproval:i,blockedLabel:a,canInterrupt:o,onInterrupt:s,endGap:c}=e,l=n&&(!i||i.reasoningSettled===!1);return!i&&!l?(0,$.jsx)(`div`,{"data-timeline-end":!0,style:{paddingTop:c}}):(0,$.jsxs)(`div`,{"data-timeline-end":!0,className:`${Yr} pb-3 md:pb-4`,style:{paddingTop:c},children:[i&&(0,$.jsx)(Ur,{agentId:t,approval:i},i.id),l&&(0,$.jsx)(Tt,{blockedLabel:a,onInterrupt:o?s:void 0,activityKey:r})]})}function Zr({context:e}){return e?(0,$.jsx)(`div`,{className:Yr,children:(0,$.jsx)(ei,{hasMore:e.hasMore,loading:e.loading,loadedInitial:e.loadedInitial,hasItems:e.hasItems})}):null}function Qr({context:e}){let t=e?.loading??!1;return(0,$.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center text-center`,children:[t?(0,$.jsx)(Jt,{className:`mb-2 h-5 w-5 animate-spin text-muted-foreground`}):(0,$.jsx)(Yt,{className:`mb-2 h-8 w-8 text-tone-neutral-fg`}),(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:t?`Loading messages`:`No messages yet`})]})}function $r({entry:e,dataIndex:n,timeline:r,rowSpacing:i,agentId:a,showReasoning:o,searchActive:s,searchCurrentKey:c,searchMatchKeys:l,originalHighlightKey:u,onOpenReferencedPath:d,onPreviewReferencedPath:f,onPreviewReferencedPathEnd:p}){let m=s||u?Y(e):``,h=s&&l?.has(m),g=h&&m===c,_=u!==null&&m===u,v=e.type===`message`||e.type===`initial-prompt`?e.msg.from:null,y=r[n+1],b=y?.type===`message`||y?.type===`initial-prompt`?y.msg.from:null,x=v!==null&&v!==b;return(0,$.jsx)(`div`,{className:`flow-root [&>div>div]:my-0 ${Yr}`,style:i[n],children:(0,$.jsx)(`div`,{className:t(h&&`rounded-xl ring-1 ring-tone-warning/40 transition-shadow`,g&&`ring-2 ring-tone-warning bg-tone-warning/5`,_&&`rounded-xl ring-2 ring-primary bg-primary/5 transition-shadow`),children:(0,$.jsx)(ri,{entry:e,agentId:a,showReasoning:o,showAvatar:x,onOpenReferencedPath:d,onPreviewReferencedPath:f,onPreviewReferencedPathEnd:p})})})}function ei({hasMore:e,loading:t,loadedInitial:n,hasItems:r}){return t?(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-2 pb-3 text-xs text-muted-foreground`,children:[(0,$.jsx)(Jt,{className:`h-3.5 w-3.5 animate-spin`}),(0,$.jsx)(`span`,{children:`Loading earlier messages`})]}):!e&&n&&r?(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-2 pb-3 text-xs text-muted-foreground/70`,children:[(0,$.jsx)(`div`,{className:`h-px flex-1 bg-border`}),(0,$.jsx)(`span`,{children:`Beginning of conversation`}),(0,$.jsx)(`div`,{className:`h-px flex-1 bg-border`})]}):(0,$.jsx)(`div`,{"aria-hidden":!0,className:`pb-3`,children:(0,$.jsx)(`div`,{className:`h-4`})})}function ti({entry:e,agentId:t,showReasoning:n,showAvatar:r,onOpenReferencedPath:i,onPreviewReferencedPath:a,onPreviewReferencedPathEnd:o}){let s=T(e=>e.agentsById[t]?.issueRepo);return e.type===`message`?(0,$.jsx)(On,{msg:e.msg,peer:t,showAvatar:r,onOpenReferencedPath:i,onPreviewReferencedPath:a,onPreviewReferencedPathEnd:o}):e.type===`initial-prompt`?(0,$.jsx)(_t,{msg:e.msg,issueRepo:s}):e.type===`notice`?(0,$.jsx)(Tn,{msg:e.msg}):e.type===`relay-injection`?(0,$.jsx)(Ot,{entry:e}):e.type===`prompt-resolution`?(0,$.jsx)(St,{entry:e}):e.type===`agent-action`?(0,$.jsx)(Dt,{entry:e}):e.type===`activity`?(0,$.jsx)(wn,{steps:e.steps,showReasoning:n,issueRepo:s}):e.type===`import-boundary`?(0,$.jsx)(wt,{history:e.history}):e.type===`imported-message`?(0,$.jsx)(Et,{entry:e.entry,sourceLabel:e.history.sourceAgentLabel||e.history.sourcePeerId,issueRepo:s}):e.type===`status`?(0,$.jsx)(vt,{event:e.event}):e.type===`effort-change`?(0,$.jsx)(Jr,{change:e.change}):e.type===`date`?(0,$.jsx)(ht,{date:e.date}):e.type===`work-final`?(0,$.jsx)(Vr,{windowId:e.windowId,members:e.members,issueRepo:s}):(0,$.jsx)(xt,{timestamp:e.timestamp})}function ni(e,t){return e.agentId===t.agentId&&e.showReasoning===t.showReasoning&&e.showAvatar===t.showAvatar&&e.onOpenReferencedPath===t.onOpenReferencedPath&&e.onPreviewReferencedPath===t.onPreviewReferencedPath&&e.onPreviewReferencedPathEnd===t.onPreviewReferencedPathEnd&>(e.entry,t.entry)}var ri=(0,Q.memo)(ti,ni);function ii({newCount:e,onClick:t}){return(0,$.jsxs)(Z,{type:`button`,size:`sm`,variant:`secondary`,className:`absolute bottom-3 right-4 z-20 h-8 gap-1.5 rounded-full border border-border/70 bg-background/95 px-3 text-xs shadow-lg backdrop-blur`,onClick:t,children:[(0,$.jsx)(Ke,{className:`h-3.5 w-3.5`}),`Latest`,e>0&&(0,$.jsx)(`span`,{className:`ml-0.5 min-w-4 rounded-full bg-primary px-1.5 py-0.5 text-[10px] font-medium leading-none text-primary-foreground`,children:e>99?`99+`:e})]})}function ai(e,t){if(!t)return null;let n=e.findIndex(e=>Y(e)===t.firstKey),r=e.findIndex(e=>Y(e)===t.lastKey);return n<0||r<0?null:[Math.min(n,r),Math.max(n,r)]}function oi(e,t){let n=(e?.nodeType===Node.ELEMENT_NODE?e:e?.parentElement)?.closest(`[data-row-key]`);return n&&t.contains(n)?n.dataset.rowKey??null:null}function si(e,t,n){let[r,i]=(0,Q.useState)(null),a=(0,Q.useRef)(!1),o=(0,Q.useRef)(new Map).current,s=(0,Q.useCallback)(()=>{let e=document.getSelection(),n=t.current;n&&(n.contains(e?.anchorNode??null)||n.contains(e?.focusNode??null))&&e?.removeAllRanges(),a.current=!1,o.clear(),i(null)},[t,o]);(0,Q.useLayoutEffect)(()=>{let e=()=>{let e=document.getSelection(),r=t.current,s=r&&oi(e?.anchorNode??null,r),c=r&&oi(e?.focusNode??null,r);if(!e||e.isCollapsed||!s||!c){a.current=!1,o.clear(),i(null);return}a.current||n(),a.current=!0,i(e=>e?.firstKey===s&&e.lastKey===c?e:{firstKey:s,lastKey:c})};return document.addEventListener(`selectionchange`,e),()=>document.removeEventListener(`selectionchange`,e)},[t,s,n]);let c=(0,Q.useMemo)(()=>ai(e,r),[e,r]);r&&!c&&(a.current=!1,i(null));let l=new Set;if(c)for(let t=c[0];t<=c[1];t++){let n=e[t],r=Y(n);l.add(r),o.has(r)||o.set(r,n)}for(let e of o.keys())l.has(e)||o.delete(e);return{held:c!==null,heldRef:a,span:r,indexes:c,heldEntries:o,clearSelection:s}}var ci=new Map,li=new WeakMap;function ui(e){return e.type===`message`?[e.msg]:e.type===`work-final`?e.members.map(e=>e.msg):null}function di(e,t){for(let n of e)for(let e of ui(n)??[])t(e)}var fi=(e,t)=>e.id>t&&!k(e.from);function pi(e){let t=li.get(e);return t===void 0?(t=-1,di(e,e=>{e.id>t&&(t=e.id)}),li.set(e,t),t):t}function mi(e,t){let n=pi(t),r=ci.get(e);if(!r){n>=0&&ci.set(e,{seen:n,unseen:new Set,noted:null,counted:null});return}n>r.seen&&(r.seen=n),r.unseen.size&&r.unseen.clear()}function hi(e,t){let n=ci.get(e);!n||n.noted?.deref()===t||(n.noted=new WeakRef(t),di(t,e=>{fi(e,n.seen)&&n.unseen.add(e.id)}))}function gi(e,t){let n=ci.get(e);if(!n)return 0;let r=n.counted;if(r?.timeline.deref()===t&&r.seen===n.seen&&r.unseen===n.unseen.size)return r.count;let i=n.unseen.size;return di(t,e=>{fi(e,n.seen)&&!n.unseen.has(e.id)&&i++}),n.counted={timeline:new WeakRef(t),seen:n.seen,unseen:n.unseen.size,count:i},i}var _i=120,vi=100,yi=_i,bi=0;function xi(e){e>0&&(bi=Math.min(bi+1,vi),yi+=(e-yi)/bi)}function Si(e,t){let n=e.get(t);return n===void 0&&e.set(t,n=Math.round(yi)),n}function Ci(e,t,n){if(e.size<=2*t)return;let r=new Set(n());for(let t of e.keys())r.has(t)||e.delete(t)}var wi=.25;function Ti(e,t,n,r){let i=new Map;e.forEach((e,t)=>i.set(e,t));let a=[],o=-1;for(let e=0;e<t.length;e++){let s=i.get(t[e]);if(s===void 0){o<0&&(o=e);continue}if(o>0&&i.get(t[o-1])===s-1&&Ei(o,e,r)&&n(s))for(let n=o;n<e;n++)a.push(t[n]);o=-1}return a}function Ei(e,t,n){for(let r=e;r<t;r++)if(n(r))return!0;return!1}function Di(e,t){let n=[];for(let r of Array.from(e.querySelectorAll(`[data-item-index]`))){let e=Number(r.dataset.itemIndex);if(e<0||e>=t)continue;let i=r.getBoundingClientRect();n.push({dataIndex:e,top:i.top,bottom:i.bottom})}return n.sort((e,t)=>e.dataIndex-t.dataIndex)}function Oi(e,t,n,r,i,a){if(!e||!n.keys.length)return null;let o=null,s=()=>{if(o)return o;let{top:t,bottom:r,height:i}=e.getBoundingClientRect(),a=Di(e,n.timeline.length).filter(e=>e.bottom>t&&e.top<r);return o={top:t,rows:a,reader:(a.find(e=>e.top>=t+i*wi)??a[a.length-1])?.dataIndex??-1}},c=e=>{let{top:t,rows:n,reader:r}=s();return e<=r&&n.some(n=>n.dataIndex===e&&n.top>t)},l=null,u=Ti(n.keys,r.keys,c,e=>{if(l===null){l=1/0;for(let e of n.timeline)l=Math.min(l,kt(e)?.messageId??l)}let t=kt(r.timeline[e]);return!!t&&t.messageId<l});for(let e of u)i.set(e,0),t?.itemSizeCache.delete(e);if(!a||!u.length&&r.keys.indexOf(n.keys[0])<=0)return null;let{top:d,rows:f,reader:p}=s();return mt(n.timeline,u.length?f.filter(e=>e.dataIndex>=p):f,d)}var ki=e=>e.length,Ai=16,ji=2,Mi=6,Ni=6;function Pi(e){let{agentId:t,timeline:n,loadedInitial:r,loading:i,latestKey:a,onScrollerRef:s}=e,c=(0,Q.useRef)(null),l=(0,Q.useRef)(n);l.current=n;let d=(0,Q.useRef)(e);d.current=e;let[f,h]=(0,Q.useState)(null),_=(0,Q.useRef)(null),[y,b]=(0,Q.useState)(null),x=(0,Q.useRef)(`idle`),[,T]=(0,Q.useReducer)(e=>e+1,0),[,D]=(0,Q.useReducer)(e=>e+1,0),ne=(0,Q.useRef)(!1),k=(0,Q.useRef)(null),A=(0,Q.useRef)(`start`),j=(0,Q.useRef)(null),M=(0,Q.useRef)(O()),re=(0,Q.useRef)(0),[ie,ae]=(0,Q.useState)(Ai),oe=(0,Q.useRef)(null),N=(0,Q.useCallback)(()=>{oe.current?.cancelScroll(),A.current=`start`,ne.current=!0,k.current=null},[]),{held:P,heldRef:se,indexes:ce,heldEntries:le,clearSelection:F}=si(n,c,N);ki(n);let ue=(0,Q.useRef)(new Map);Ci(ue.current,n.length,()=>n.map(Y));let I=(0,Q.useRef)(null),L=(0,Q.useRef)(null);if(I.current?.timeline!==n){let e=n.map(Y);I.current&&(L.current=Oi(c.current,oe.current,I.current,{timeline:n,keys:e},ue.current,_.current?.kind===`anchored`)),I.current={timeline:n,keys:e}}let R=!P&&f?.kind===`follow`,de=k.current&&_.current?.kind===`anchored`?Li(n,_.current.anchor):-1,fe=(0,Q.useRef)(null),pe=fe.current?Ii(n,fe.current).join(`,`):``,me=(0,Q.useCallback)(e=>{let t=Fn(e),n=[];if(ce)for(let e=ce[0];e<=ce[1];e++)n.push(e);if(de>=0&&n.push(de),pe)for(let e of pe.split(`,`))n.push(Number(e));let r=R?Fi(oe.current,e.count):null;if(r&&(r[0]<e.startIndex||r[1]>e.endIndex))for(let e=r[0];e<=r[1];e++)n.push(e);return n.length?[...new Set([...t,...n])].sort((e,t)=>e-t):t},[de,pe,ce,R]),z=Ln({count:n.length+1,getScrollElement:()=>c.current,getItemKey:e=>{let t=l.current[e];return t?Y(t):`footer:${a??``}`},estimateSize:e=>{let t=l.current[e];return t?Si(ue.current,Y(t)):re.current},measureElement:(e,t,n)=>{let r=In(e,t,n),i=n.indexFromElement(e);return i===n.options.count-1?re.current=r:n.itemSizeCache.has(n.options.getItemKey(i))||xi(r),r},indexAttribute:`data-item-index`,paddingStart:ie,overscan:Ni,rangeExtractor:me,anchorTo:`end`,followOnAppend:R,scrollEndThreshold:R?ji:-1/0,scrollPaddingStart:f?.kind===`anchored`&&A.current===`start`?-f.anchor.offset:0});oe.current=z,z.shouldAdjustScrollPositionOnItemSizeChange??=(e,t,n)=>{let r=n.scrollOffset??0;return n.itemSizeCache.has(e.key)?e.end<=r&&n.scrollDirection!==`backward`:e.start<r||ue.current.get(String(e.key))===0};let B=(0,Q.useCallback)(()=>{A.current=`start`,M.current={commands:M.current.commands+1},z.scrollToEnd()},[z]),V=(0,Q.useCallback)(e=>{let t=_.current;if(t?.kind!==`anchored`)return;let n=Li(l.current,t.anchor);if(n<0)return;e&&(ne.current=!1,k.current=O());let r=k.current;r&&(k.current={commands:r.commands+1},z.scrollToIndex(n,{align:A.current}))},[z]),H=(0,Q.useCallback)(e=>{let n=_.current;if(!n)return;let r=o(n,e);r!==n&&(_.current=r,h(r),g(t,m(r)),r.kind===`follow`&&n.kind!==`follow`&&(k.current=null,M.current=O(),d.current.hasNewer&&d.current.onLoadNewer?.()))},[t]);(0,Q.useLayoutEffect)(()=>{let e=!1;return w().then(()=>{e||b(te(C(t)))}),()=>{e=!0}},[t]),(0,Q.useLayoutEffect)(()=>{if(_.current||!y||!r)return;let e=y.kind===`anchored`&&Li(l.current,y.anchor)>=0,n=d.current.onLoadAround?x.current:`unavailable`,a=u(y,{settled:!i,resolves:e,around:n});if(a.kind!==`wait`){if(a.kind===`fetch-around`){x.current=`requested`,d.current.onLoadAround(a.messageId).catch(()=>{}).then(()=>{x.current=`settled`,T()});return}a.mode!==y&&g(t,m(a.mode)),_.current=a.mode,h(a.mode)}});let U=f!==null;(0,Q.useLayoutEffect)(()=>{if(_.current?.kind!==`follow`)return V(!0);B(),d.current.hasNewer&&d.current.onLoadNewer?.()},[U]);let he=(e,t,n)=>{if(j.current===null){let t=n.querySelector(`[data-item-index="${e}"]`);t&&(j.current=t.offsetHeight)}return((j.current??t)-n.clientHeight)/2},W=(0,Q.useCallback)(()=>{let e=c.current;return e&&mt(l.current,Di(e,l.current.length),e.getBoundingClientRect().top)},[]);(0,Q.useLayoutEffect)(()=>{if(!U||_.current?.kind!==`follow`)return;let e=c.current,t=z.isAtEnd(ji)||!!e&&e.scrollHeight-e.clientHeight-e.scrollTop<=ji;if(se.current){t||H({type:`selection-held`,fold:W()});return}let n=E(M.current,t);n===`reset`?M.current=O():n===`command`&&B()});let ge=(0,Q.useRef)(null),G=(0,Q.useRef)(!1);(0,Q.useLayoutEffect)(()=>{let e=L.current;L.current=null,!(!e||!U||_.current?.kind!==`anchored`||G.current||A.current!==`start`)&&(H({type:`scrolled`,fold:e}),k.current=O())}),(0,Q.useLayoutEffect)(()=>{let e=_.current;if(!U||e?.kind!==`anchored`)return void(ge.current=null);let t=Li(l.current,e.anchor),n=ge.current;ge.current={anchor:e.anchor,index:t},!(n?.anchor!==e.anchor||n.index===t||t<0||G.current)&&(k.current=O())}),(0,Q.useLayoutEffect)(()=>{let e=k.current,t=_.current;if(!U||!e||t?.kind!==`anchored`)return;let n=Li(l.current,t.anchor),r=n>=0?z.measurementsCache[n]:void 0,i=A.current,a=n>=0?z.getOffsetForIndex(n,i)?.[0]:void 0,o=c.current;if(!r||a===void 0||!o)return;let s=z.getVirtualItems().find(e=>e.index===n),u=o.scrollTop+(s?r.start-s.start:0),d=i===`center`?he(n,r.size,o):t.anchor.offset,f=ee(e,u,r.start+d,a);f===`retire`?k.current=null:f===`command`?V(!1):e.commands&&(k.current=O())});let _e=(0,Q.useRef)(null),ve=(0,Q.useCallback)(e=>{if(_e.current?.disconnect(),_e.current=null,!e)return;let t=()=>ae(e.offsetHeight);t(),!(typeof ResizeObserver>`u`)&&(_e.current=new ResizeObserver(t),_e.current.observe(e))},[]);(0,Q.useLayoutEffect)(()=>(v(t,()=>{let e=_.current;if(!e)return null;if(e.kind===`follow`)return{kind:`follow`};let t=c.current,n=k.current?e.anchor:t&&t.scrollHeight-t.clientHeight-t.scrollTop<=ji?null:W()??e.anchor;return n?{kind:`anchored`,anchorId:n.anchorMessageId??-1/0}:{kind:`at-end`}}),S(t,()=>{if(F(),_.current){H({type:`own-prompt-sent`}),B();return}g(t,m(p)),b(p)}),()=>{v(t,null),S(t,null)}),[t,W,H,F,B]);let ye=(0,Q.useRef)(null),be=(0,Q.useCallback)(e=>{if(ye.current?.(),ye.current=null,c.current=e,s?.(e),!e)return;let t=()=>{let{hasMore:e,loading:t,onLoadOlder:n}=d.current,r=oe.current?.calculateRange()?.startIndex;e&&!t&&!k.current&&r!==void 0&&r<=Ni&&n()},n=0,r=!1,i=()=>{n||=(G.current=!0,requestAnimationFrame(()=>{n=0,G.current=!1;let e=_.current?.kind===`anchored`?W():null;e&&H({type:`scrolled`,fold:e}),r&&t(),r=!1}))},a=()=>{N(),H({type:`gesture-up`,fold:W()}),t()},o=()=>e.scrollHeight-e.clientHeight-e.scrollTop<=ji,l=()=>{k.current=null,i();let{hasNewer:e,onLoadNewer:t}=d.current;e&&t?.(),H({type:`reached-end`,tailDetached:e})},u=()=>{N(),_.current?.kind===`anchored`&&o()&&l()},f=e.scrollTop,p=()=>{let t=e.scrollTop,n=t>f,a=t<f,s=a&&o();if(f=t,_.current?.kind===`anchored`){if(s)return V(!0);if(ne.current){if(n&&o())return l();r||=a,i()}}},m=e=>{e.deltaY<0?a():e.deltaY>0?u():N()},h=0,g=e=>{h=e.touches[0]?.clientY??0},v=e=>{let t=(e.touches[0]?.clientY??0)-h;t>Mi?a():t<-6&&u()},y=e=>{let t=e.key===`ArrowUp`||e.key===`PageUp`||e.key===`Home`||e.key===` `&&e.shiftKey,n=e.key===`ArrowDown`||e.key===`PageDown`||e.key===`End`||e.key===` `;t?a():n&&u()},b=t=>{t.target===e&&t.pointerType===`mouse`&&a()};e.addEventListener(`scroll`,p,{passive:!0}),e.addEventListener(`wheel`,m,{passive:!0}),e.addEventListener(`touchstart`,g,{passive:!0}),e.addEventListener(`touchmove`,v,{passive:!0}),e.addEventListener(`keydown`,y),e.addEventListener(`pointerdown`,b,{passive:!0});let x=e.clientHeight,S=typeof ResizeObserver>`u`?null:new ResizeObserver(()=>{e.clientHeight!==x&&(x=e.clientHeight,k.current?D():_.current?.kind===`follow`&&!se.current&&!o()&&(M.current=O(),B()))});S?.observe(e);let C=En(e,{nudge(t){oe.current?.cancelScroll(),k.current=null,e.scrollTop+=t,i()},pin(e){fe.current=e}});ye.current=()=>{C(),S?.disconnect(),cancelAnimationFrame(n),G.current=!1,e.removeEventListener(`scroll`,p),e.removeEventListener(`wheel`,m),e.removeEventListener(`touchstart`,g),e.removeEventListener(`touchmove`,v),e.removeEventListener(`keydown`,y),e.removeEventListener(`pointerdown`,b)}},[W,H,s,V,N,D,se,B]),xe=(0,Q.useCallback)(e=>{if(!_.current)return!1;F();let t=l.current.findIndex(t=>Y(t)===e);if(t<0)return!1;let n=l.current[t],r=kt(n);return A.current=`center`,j.current=null,H({type:`jump-to`,anchor:{topKey:e,anchorMessageId:r?.messageId,anchorEndMessageId:r?.endMessageId,offset:((z.measurementsCache[t]?.size??0)-(c.current?.clientHeight??0))/2}}),V(!0),!0},[H,z,F,V]);(0,Q.useLayoutEffect)(()=>{let e=_.current;if(A.current!==`center`||e?.kind!==`anchored`)return;let t=Li(l.current,e.anchor),n=z.measurementsCache[t],r=c.current;n&&r&&H({type:`scrolled`,fold:{...e.anchor,offset:he(t,n.size,r)}})});let Se=(0,Q.useCallback)(()=>{F(),H({type:`latest-click`}),B()},[F,H,B]),Ce=!e.hasNewer&&z.isAtEnd(ji);return(0,Q.useLayoutEffect)(()=>hi(t,n),[t,n]),(0,Q.useLayoutEffect)(()=>{let r=c.current;U&&!e.hasNewer&&r&&r.scrollHeight-r.clientHeight-r.scrollTop<=ji&&mi(t,n)}),{virtualizer:z,scrollerRef:be,headerRef:ve,mode:f??{kind:`follow`},opened:U,latestClick:Se,jumpTo:xe,atEnd:Ce,newCount:gi(t,n),held:P,heldEntries:le}}function Fi(e,t){let n=e?.scrollRect?.height;if(!e||!n||t===0)return null;let r=e.getVirtualItemForOffset(Math.max(0,e.getTotalSize()-n))?.index??0;return[Math.max(0,r-Ni),t-1]}function Ii(e,t){let n=[];return e.forEach((e,r)=>{let i=kt(e);i&&t.some(e=>e>=i.messageId&&e<=i.endMessageId)&&n.push(r)}),n}function Li(e,{topKey:t,anchorMessageId:n,anchorEndMessageId:r}){return At(e,{topKey:t,messageId:n,endMessageId:r})}function Ri(e){return(0,$.jsx)(zi,{...e},e.agentId)}function zi({agentId:e,agentStatus:t,timeline:n,hasMore:r,loading:i,loadedInitial:a,showReasoning:o,pendingApproval:s,blockedLabel:c,canInterrupt:l,searchActive:u,searchCurrentKey:d,searchMatchKeys:f,scrollToOriginalKey:p,scrollToOriginalNonce:m,onScrollerRef:h,hasNewer:g=!1,onLoadOlder:_,onLoadNewer:v,onLoadAround:y,onInterrupt:b,onOpenReferencedPath:x,onPreviewReferencedPath:S,onPreviewReferencedPathEnd:C}){let w=n.length>0?n[n.length-1]:null,T=w?Y(w):null,{virtualizer:E,scrollerRef:ee,headerRef:te,mode:D,opened:O,latestClick:ne,jumpTo:k,atEnd:A,newCount:j,held:M,heldEntries:re}=Pi({agentId:e,timeline:n,loadedInitial:a,hasMore:r,loading:i,latestKey:T,hasNewer:g,onLoadOlder:_,onLoadNewer:v,onLoadAround:y,onScrollerRef:h}),[ie,ae]=(0,Q.useState)(null);(0,Q.useLayoutEffect)(()=>{u&&d&&k(d)},[O,u,d,k]),(0,Q.useLayoutEffect)(()=>{if(!p||!m||!k(p))return;ae(p);let e=setTimeout(()=>ae(null),1600);return()=>clearTimeout(e)},[O,p,m,k]);let oe=(0,Q.useRef)(new Map),N=(0,Q.useMemo)(()=>Rr(n,o,oe.current),[n,o]),P=n.length>0,se=(0,Q.useMemo)(()=>({agentId:e,hasMore:r,loading:i,loadedInitial:a,hasItems:P,latestKey:T,busy:t===`busy`,pendingApproval:s,blockedLabel:c,canInterrupt:l,onInterrupt:b,endGap:N.end}),[e,r,i,a,P,T,t,s,c,l,b,N.end]),ce=ki(n);return(0,$.jsxs)(`div`,{className:`relative min-h-0 flex-1`,children:[(0,$.jsx)(`div`,{ref:ee,"data-testid":`chat-scroller`,"data-selecting":M||void 0,"data-scroll-mode":O?D.kind:void 0,className:`h-full`,style:{overflowY:`auto`,overflowX:`hidden`,overscrollBehavior:`contain`,overflowAnchor:`none`},children:(0,$.jsxs)(`div`,{style:{position:`relative`,height:E.getTotalSize(),visibility:O?void 0:`hidden`},children:[(0,$.jsx)(`div`,{ref:te,className:`pt-3 md:pt-4`,style:{position:`absolute`,top:0,left:0,width:`100%`},children:(0,$.jsx)(Zr,{context:se})}),E.getVirtualItems().map(t=>{let r=t.index===ce,i=re.get(String(t.key))??n[t.index];return(0,$.jsx)(`div`,{ref:E.measureElement,"data-item-index":t.index,"data-row-key":r?void 0:String(t.key),style:{position:`absolute`,top:0,left:0,width:`100%`,transform:`translateY(${t.start}px)`},children:r||!i?(0,$.jsx)(`div`,{className:`pb-3 md:pb-4`,children:(0,$.jsx)(Xr,{context:se})}):$r({entry:i,dataIndex:t.index,timeline:n,rowSpacing:N.rows,agentId:e,showReasoning:o,searchActive:u,searchCurrentKey:d,searchMatchKeys:f,originalHighlightKey:ie,onOpenReferencedPath:x,onPreviewReferencedPath:S,onPreviewReferencedPathEnd:C})},r?`footer`:String(t.key))})]})}),!P&&(0,$.jsx)(`div`,{className:`pointer-events-none absolute inset-0`,children:(0,$.jsx)(Qr,{context:se})}),P&&!A&&(D.kind===`anchored`||g)&&(0,$.jsx)(ii,{newCount:j,onClick:ne})]})}var Bi=[],Vi=15e3;function Hi(e){return e.kind===`session`&&e.payload?.session?.type===`prompt`}function Ui(e){let t=e.filter(e=>e.kind===`chat`&&k(e.from));return t.length?e.filter(e=>{if(!Hi(e)||!k(e.from))return!0;let n=P(e).trim();if(!n)return!0;let r=U(e.createdAt);return!t.some(e=>P(e).trim()===n&&Math.abs(U(e.createdAt)-r)<=Vi)}):e}var Wi=(0,Q.memo)(function({thread:e=null,onBack:t,showBackButton:n}){let r=T(e=>e.selectedInboxThread),i=T(e=>e.selectedInboxThread?e.agentsById[e.selectedInboxThread]:void 0)||null,o=T(e=>e.inboxDrafts),l=s(),u=T(e=>e.sendChatMessage),f=T(e=>e.openFilesAt),p=T(e=>e.openFilesForAgent),m=T(e=>e.openAgentDetail),h=T(e=>e.chatSending),g=T(e=>e.markInboxThreadRead),v=T(e=>e.markInboxThreadUnread),x=T(e=>e.setReplyDraft),S=T(e=>e.exportThread),C=T(e=>e.doAgentAction),w=T(e=>e.workspaceAction),E=T(e=>e.openWorkspaceFocus),ee=T(e=>e.forkFromAgent),te=T(e=>e.chatHistoryImports),D=T(e=>e.agentChatByAgent[e.selectedInboxThread]),O=D?.messages??Bi,k=T(e=>e.openConfirm),A=T(e=>e.showError),j=T(e=>e.orchestrators),M=T(e=>e.fetchOrchestrators),re=T(e=>e.chatFilters.reasoning),ie=T(e=>e.voiceTtsEnabled),ae=T(e=>e.setVoiceTtsEnabled),oe=T(e=>e.voiceInputMode),N=T(e=>e.plansByThread);(0,Q.useRef)(null);let P=(0,Q.useRef)(null),[le,F]=(0,Q.useState)(`idle`),ue=(0,Q.useRef)([]),[I,R]=(0,Q.useState)([]),[de,B]=(0,Q.useState)(!1),[V,H]=(0,Q.useState)(null),[he,W]=(0,Q.useState)(null),[G,ve]=(0,Q.useState)(``),xe=(0,Q.useRef)(null),Se=(0,Q.useRef)(0),[Ce,we]=(0,Q.useState)(null),[Te,Ee]=(0,Q.useState)(null),De=(0,Q.useCallback)(e=>Ee(t=>({key:e,nonce:(t?.nonce??0)+1})),[]),K=Dr(r),q=(0,Q.useMemo)(()=>Ui(O.filter(e=>ce(r,e)&&!fe(e)).sort((e,t)=>e.id-t.id)),[O,r]),Oe=typeof i?.meta?.lifecycleAction==`string`&&i.meta.lifecycleAction.startsWith(`finalizing-`),{terminalOpen:ke,terminalTarget:Ae,terminalOpening:je,openTerminal:Me,closeTerminal:Ne}=kn(i?.id),Pe=typeof i?.meta?.spawnRequestId==`string`?i.meta.spawnRequestId:``,Fe=(0,Q.useMemo)(()=>te.filter(e=>e.targetAgentId===r||!!(Pe&&e.targetSpawnRequestId===Pe)),[Pe,te,r]),Ie=(0,Q.useMemo)(()=>se(i),[me(i)]),Le=Ie?.pendingApproval,Re=(0,Q.useMemo)(()=>{if(!r||!e&&q.length===0)return null;let t=q[q.length-1]??e?.lastMessage??null,n=e?.previewMessage&&q.some(t=>t.id===e.previewMessage?.id)?e.previewMessage:t;return{id:e?.id??r,peer:r,messages:q,lastMessage:t,previewMessage:n,attention:e?.attention??{unread:0,needsHumanResponse:!1,score:0},archived:e?.archived??!1,draft:e?.draft??``}},[r,e,q]),ze=Re||(Fe.length>0?{peer:r,messages:[],importedHistory:Fe}:null),J=o[r]||``,Be=typeof i?.meta?.tmuxSession==`string`&&i.meta.tmuxSession.trim()?i.meta.tmuxSession:null,He=Be?j.find(e=>e.managedAgents?.some(e=>e.agentId===i.id||e.tmuxSession===Be))??null:null,Ue=!!(Be&&He?.status===`online`&&i?.providerCapabilities?.terminal?.live?.read),Ge=z(i,Ue),Ke=i?.providerCapabilities?.terminal?.attach?.create===!0,qe=Ue||Ke,Je=pe(i,`compact`),Ye=pe(i,`clearContext`),Xe=pe(i,`shutdown`),Ze=pe(i,`interrupt`),Qe=(0,Q.useCallback)(()=>{i&&C(i,`interrupt`)},[i,C]),[$e,et]=(0,Q.useState)(0),[tt,nt]=(0,Q.useState)(!1),rt=i?.providerCapabilities?.liveSession?.slashCommands===!0,it=i?.providerCapabilities?.model?.provider??(typeof i?.meta?.provider==`string`?i.meta.provider:void 0),at=rt&&!tt&&/^\/\S*$/.test(J)?$n(it,i?.providerCapabilities?.context?.compactInstructions===!0).filter(e=>e.name.toLowerCase().startsWith(J.toLowerCase())):[],st=at.length?Math.min($e,at.length-1):0;function Y(e){x(r,`${e.name} `),et(0)}function ft(e){x(r,e),tt&&nt(!1),et(0)}let pt=I.some(e=>e.uploading),mt=I.filter(e=>e.artifact),ht=J.trim().length>0||I.length>0;Ir(i?.id??``,J.trim().length>0),Or(ht,(0,Q.useCallback)(()=>{},[])),ue.current=I,(0,Q.useEffect)(()=>()=>{ct(ue.current)},[]),(0,Q.useEffect)(()=>{i?.meta?.tmuxSession&&j.length===0&&M()},[i?.id,i?.meta?.tmuxSession,j.length]),(0,Q.useEffect)(()=>()=>{xe.current!==null&&window.clearTimeout(xe.current)},[]);let gt=typeof i?.spawnedBy==`string`?i.spawnedBy:void 0,_t=T(e=>gt?e.agentsById[gt]?.meta?.provider:void 0),vt=ne(r,D?.loadedInitial?D.hasMore?q[0]?U(q[0].occurredAt??q[0].createdAt):null:0:null),bt=Pr({agentId:r,filters:T(e=>e.chatFilters),threadMessages:q,statusEvents:K,effortChanges:vt,createdAt:i?.createdAt,importedHistory:Fe,spawnedById:gt,spawnedByProvider:_t,window:D}),xt=bt.timeline,St=(0,Q.useMemo)(()=>ot(i,q,Re?.lastMessage,N),[i,Re?.lastMessage,N,q]),X=Mr(xt),Ct=Xn(r,D?.hasMore??!1,D?.loading??!1,_(D)),wt=(0,Q.useCallback)(()=>{xe.current!==null&&(window.clearTimeout(xe.current),xe.current=null)},[]),Tt=(0,Q.useCallback)(async e=>{let t=lt(j,e);if(!t)return null;try{let n=await be(`GET`,`/orchestrators/${encodeURIComponent(t.id)}/files/stat?path=${encodeURIComponent(e)}`);return{orchestratorId:t.id,path:n.path,type:n.type}}catch{return null}},[j]),Et=(0,Q.useCallback)((e,t,n)=>{if(!dt()||!n)return;let r=++Se.current;Tt(e).then(e=>{Se.current===r&&e&&(wt(),W({...e,line:t||0,anchor:n}),ve(``))})},[wt,Tt]),Dt=(0,Q.useCallback)(()=>{Se.current+=1,wt(),xe.current=window.setTimeout(()=>{W(null)},250)},[wt]),Ot=(0,Q.useCallback)((e,t)=>{Tt(e).then(n=>{if(!n){A(`File Not Found`,e);return}if(dt()){Se.current+=1,wt(),W(null),H({...n,line:t||0}),ve(``);return}n.type===`directory`?f({orchestratorId:n.orchestratorId,path:n.path,overlay:!0}):f({orchestratorId:n.orchestratorId,path:ut(n.path),selectedPath:n.path,line:t,overlay:!0})})},[wt,f,Tt,A]);function kt(){H(null),ve(``)}async function At(e){let t=Array.from(e).filter(e=>e.size>0);if(!t.length)return;let n=t.map(e=>({id:`${Date.now()}-${e.name}-${Math.random().toString(16).slice(2)}`,fileName:e.name,size:e.size,previewUrl:e.type.startsWith(`image/`)?URL.createObjectURL(e):void 0,uploading:!0}));R(e=>[...e,...n]);for(let e=0;e<t.length;e+=1){let r=t[e],i=n[e];try{let e=await ye(`/artifacts`,r,{filename:r.name,sensitivity:`normal`});R(t=>t.map(t=>t.id===i.id?{...t,artifact:e,uploading:!1}:t))}catch(e){R(t=>t.map(t=>t.id===i.id?{...t,error:e.message,uploading:!1}:t))}}}function jt(e){R(t=>{let n=t.find(t=>t.id===e);return n?.previewUrl&&URL.revokeObjectURL(n.previewUrl),t.filter(t=>t.id!==e)})}function Mt(){ct(I),R([])}function Nt(){if(!J.trim()&&mt.length===0||!r||h||pt||Oe)return;let e=mt.map(e=>({artifactId:e.artifact.id,kind:e.artifact.kind,role:`media`,title:e.artifact.filename||e.fileName}));u(J,{peer:r,lastMessage:Re?.lastMessage||null},e),Mt()}function Pt(e){if(at.length){if(e.key===`ArrowDown`){e.preventDefault(),et(e=>Math.min(e+1,at.length-1));return}if(e.key===`ArrowUp`){e.preventDefault(),et(e=>Math.max(e-1,0));return}if(e.key===`Escape`){e.preventDefault(),nt(!0);return}if(e.key===`Enter`||e.key===`Tab`){e.preventDefault();let t=at[st];t&&Y(t);return}}e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),Nt())}function Ft(e){let t=Array.from(e.clipboardData.files).filter(e=>e.type.startsWith(`image/`));t.length&&(e.preventDefault(),At(t))}async function It(){if(!b||le!==`idle`||!r)return;y.bargeIn();let e=new c;try{await e.start(),P.current=e,F(`recording`)}catch(e){P.current=null,F(`idle`),A(`Microphone unavailable`,e?.message||`Could not access the microphone.`)}}async function Lt(){let e=P.current;if(!(!e||le!==`recording`)){P.current=null,F(`transcribing`);try{let t=await e.stop();if(!t)return;let n=await a(t);if(!n)return;let i=J?`${J} ${n}`:n;if(oe===`autosend`&&!h&&!pt){let e=mt.map(e=>({artifactId:e.artifact.id,kind:e.artifact.kind,role:`media`,title:e.artifact.filename||e.fileName}));u(i,{peer:r,lastMessage:Re?.lastMessage||null},e),Mt()}else x(r,i)}catch(e){A(`Transcription failed`,e?.message||`Could not transcribe audio.`,e)}finally{F(`idle`)}}}return r?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex h-full min-w-0`,children:[(0,$.jsxs)(`div`,{className:`@container/chat flex h-full min-w-0 flex-1 flex-col`,children:[(0,$.jsx)(lr,{selectedInboxThread:r,agent:i,now:l,blockedState:Ie,thread:Re,exportableThread:ze,importedHistory:Fe,showBackButton:n,onBack:t,openAgentDetail:m,openWorkspaceFocus:E,voiceTtsEnabled:ie,setVoiceTtsEnabled:ae,canOpenTerminal:qe,terminalOpening:je,handleOpenTerminal:Me,canInterrupt:Ze,interruptAgent:Qe,canCompact:Je,canClearContext:Ye,canShutdown:Xe,openConfirm:k,workspaceAction:w,doAgentAction:C,openFilesForAgent:p,forkFromAgent:ee,markInboxThreadUnread:v,markInboxThreadRead:g,exportThread:S,onOpenSearch:X.openSearch}),(0,$.jsx)(_e,{threadId:St&&`threadId`in St?St.threadId:null,teamId:St&&`teamId`in St?St.teamId:void 0,channel:St?.channel}),r&&(0,$.jsx)(ge,{agentId:r}),X.open&&(0,$.jsx)(ur,{query:X.query,position:X.position,total:X.total,onQueryChange:X.setQuery,onNext:X.next,onPrev:X.prev,onClose:X.close}),(0,$.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 flex-col`,children:[(0,$.jsx)(yt,{scrollEl:Ce,timeline:xt,issueRepo:i?.issueRepo,onScrollToOriginal:De}),(0,$.jsx)(Ri,{agentId:r,agentStatus:i?.status,timeline:xt,hasMore:bt.hasMore,loading:bt.loading,loadedInitial:bt.loadedInitial,showReasoning:re,pendingApproval:Le,blockedLabel:Ie?.label,canInterrupt:Ze,searchActive:X.open,searchCurrentKey:X.currentKey,searchMatchKeys:X.matchKeySet,scrollToOriginalKey:Te?.key??null,scrollToOriginalNonce:Te?.nonce??0,onScrollerRef:we,hasNewer:bt.hasNewer,onLoadOlder:Ct.loadOlderForAgent,onLoadNewer:Ct.loadNewerForAgent,onLoadAround:Ct.loadAroundForAgent,onInterrupt:Qe,onOpenReferencedPath:Ot,onPreviewReferencedPath:Et,onPreviewReferencedPathEnd:Dt})]}),(0,$.jsx)(Vn,{agentId:r}),(0,$.jsx)(Cr,{agent:i,draft:J,placeholder:`Message ${i?L(i):r}…`,chatSending:h,disabled:Oe,hasPendingUploads:pt,readyAttachmentCount:mt.length,pendingAttachments:I,micAvailable:b,micState:le,slashMatches:at,slashActiveIndex:st,onDraftChange:ft,onDraftBlur:()=>d(r),onKeyDown:Pt,onPaste:Ft,onUploadFiles:e=>{At(e)},onRemovePendingAttachment:jt,onSend:Nt,onAcceptSlash:Y,onSlashHover:et,onStartPtt:()=>{It()},onStopPtt:()=>{Lt()},footerText:Oe?`${i?L(i):`Agent`} is wrapping up (${(i?.meta?.lifecycleAction).slice(11)}) — messaging paused`:void 0})]}),V&&(0,$.jsxs)(`aside`,{className:`hidden h-full w-[min(44vw,720px)] min-w-[360px] shrink-0 flex-col border-l border-border bg-background xl:flex`,children:[(0,$.jsxs)(`div`,{className:`flex h-10 shrink-0 items-center gap-2 border-b border-border px-3`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 text-xs font-medium text-muted-foreground`,children:`File preview`}),G&&(0,$.jsx)(`span`,{className:`max-w-[18rem] truncate text-xs text-tone-danger-fg`,children:G}),(0,$.jsx)(Z,{variant:`ghost`,size:`icon-sm`,title:`Close preview`,onClick:kt,children:(0,$.jsx)(cn,{className:`h-3.5 w-3.5`})})]}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1`,children:V.type===`directory`?(0,$.jsx)(We,{orchestratorId:V.orchestratorId,selectedPath:V.path,onReadError:ve}):(0,$.jsx)(Ve,{orchestratorId:V.orchestratorId,selectedPath:V.path,line:V.line,onReadError:ve})})]})]}),he&&(0,$.jsx)(Tr,{preview:he,error:G,onReadError:ve,onMouseEnter:wt,onMouseLeave:Dt}),Ae&&(0,$.jsx)(vn,{open:ke,onOpenChange:Ne,orchestratorId:Ae.orchestratorId,session:Ae.session,interactive:Ae.interactive||Ge,canWrite:Ge,onSessionChanged:()=>void Me()})]}):(0,$.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full text-center px-4`,children:[(0,$.jsx)(Yt,{className:`w-12 h-12 text-tone-neutral-fg mb-3`}),(0,$.jsx)(`p`,{className:`text-muted-foreground text-sm`,children:`Select an agent to start chatting`})]})});function Gi(){(0,Q.useEffect)(()=>{let{inboxDrafts:e,agentsById:t,set:n}=T.getState(),r=Object.keys(e);if(r.length===0)return;let i=r.filter(e=>!t[e]&&!k(e));if(i.length===0)return;let a=setTimeout(()=>{let e=T.getState().agentsById,t={...T.getState().inboxDrafts},r=!1;for(let n of i)e[n]||(delete t[n],r=!0);r&&n({inboxDrafts:t})},3e4);return()=>clearTimeout(a)},[])}function Ki(e,t){(0,Q.useEffect)(()=>{if(typeof window>`u`||!e||!window.matchMedia(`(max-width: 767px)`).matches)return;window.history.pushState({chatOpen:!0},``);function n(e){e.state?.chatOpen||t()}return window.addEventListener(`popstate`,n),()=>{window.removeEventListener(`popstate`,n),window.history.state?.chatOpen&&window.history.back()}},[e,t])}function qi(){let e=mn(),t=T(e=>e.selectedInboxThread),n=T(e=>e.closeInboxThread),r=T(e=>e.loadAgentChat),i=!!t,a=(0,Q.useMemo)(()=>e.find(e=>e.peer===t)??null,[e,t]),o=G();return Gi(),(0,Q.useEffect)(()=>{t&&r(t)},[t,r]),Ki(i,n),(0,$.jsx)(`div`,{className:`flex h-full min-h-0`,children:o?(0,$.jsx)(`div`,{className:`flex w-full overflow-hidden`,children:i?(0,$.jsx)(Ji,{children:(0,$.jsx)(Wi,{thread:a,onBack:n,showBackButton:!0},t||`empty`)}):(0,$.jsx)(`div`,{className:`w-full flex flex-col overflow-hidden`,children:(0,$.jsx)(Yn,{threads:e})})}):(0,$.jsxs)(`div`,{className:`flex w-full`,children:[(0,$.jsx)(`div`,{className:`w-1/3 min-w-[240px] max-w-xs flex flex-col overflow-hidden`,children:(0,$.jsx)(Yn,{threads:e})}),(0,$.jsx)(`div`,{className:`flex-1 flex flex-col overflow-hidden`,children:(0,$.jsx)(Wi,{thread:a},t||`empty`)})]})})}function Ji({children:e}){return(0,$.jsx)(`div`,{className:`fixed inset-x-0 top-0 z-40 flex h-[var(--app-h)] flex-col bg-background pt-[var(--sat)]`,children:e})}export{qi as ChatView};
|
|
6
|
+
//# sourceMappingURL=chat-Ctk2qwvA.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{n as e}from"./dist-DeW2Y1R5.js";var t=e(`circle-alert`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]);export{t};
|
|
2
|
+
//# sourceMappingURL=circle-alert-CryagaZd.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{n as e}from"./dist-DeW2Y1R5.js";var t=e(`clipboard-list`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]);export{t};
|
|
2
|
+
//# sourceMappingURL=clipboard-list-W2YeUsxT.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./bundle-web-ifbJd0t-.js","./rolldown-runtime-QTnfLwEv.js","./preload-helper-HclGiUj8.js","./lib-D7DTGM1F.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{p as t,u as n}from"./dist-DeW2Y1R5.js";import{t as r}from"./store-BvtFdlGX.js";import{t as i}from"./themes-G5j9m1Ji.js";import{t as a}from"./loader-circle-BfPd4kOD.js";import{t as o}from"./copy-button-CjOj4HEf.js";import{t as s}from"./preload-helper-HclGiUj8.js";var c=e(t(),1),l=n(),u=500*1024,d={bash:`bash`,c:`c`,conf:`properties`,cpp:`cpp`,cs:`csharp`,css:`css`,csv:`csv`,cts:`typescript`,diff:`diff`,dockerfile:`dockerfile`,env:`dotenv`,gemspec:`ruby`,go:`go`,graphql:`graphql`,h:`c`,hcl:`hcl`,hpp:`cpp`,html:`html`,ini:`ini`,java:`java`,js:`javascript`,json:`json`,jsonc:`jsonc`,jsx:`jsx`,kt:`kotlin`,less:`less`,log:`log`,lua:`lua`,mjs:`javascript`,mts:`typescript`,patch:`diff`,php:`php`,plist:`xml`,podspec:`ruby`,properties:`properties`,py:`python`,rake:`ruby`,rb:`ruby`,rs:`rust`,scss:`scss`,sh:`bash`,sql:`sql`,svelte:`svelte`,swift:`swift`,toml:`toml`,ts:`typescript`,tsx:`tsx`,txt:`text`,vue:`vue`,webmanifest:`json`,xml:`xml`,yaml:`yaml`,yml:`yaml`,zsh:`bash`},f={".bashrc":`bash`,".env":`dotenv`,".eslintrc":`json`,".gitignore":`gitignore`,".npmrc":`properties`,".prettierrc":`json`,".swiftformat":`properties`,".swiftlint.yml":`yaml`,".watchmanconfig":`json`,"app.config":`json`,"app.webmanifest":`json`,berksfile:`ruby`,brewfile:`ruby`,"bun.lock":`json`,capfile:`ruby`,cartfile:`ruby`,"composer.lock":`json`,dangerfile:`ruby`,"deno.lock":`json`,fastfile:`ruby`,"flake.lock":`json`,gemfile:`ruby`,guardfile:`ruby`,podfile:`ruby`,rakefile:`ruby`,dockerfile:`dockerfile`,makefile:`make`},p=null;function m(){return p??=s(()=>import(`./bundle-web-ifbJd0t-.js`),__vite__mapDeps([0,1,2,3]),import.meta.url),p}function h(e){return new TextEncoder().encode(e).length}function g(e){return e.split(`/`).filter(Boolean).pop()||e}function _(e){let t=e?.slice(0,240).split(/\r?\n/,1)[0]?.toLowerCase()||``;return t.startsWith(`#!`)?/\b(bash|dash|ksh|sh|zsh)\b/.test(t)?`bash`:/\bfish\b/.test(t)?`fish`:/\b(ts-node|tsx)\b/.test(t)?`typescript`:/\b(node|bun|deno)\b/.test(t)?`javascript`:/\bpython[0-9.]*\b/.test(t)?`python`:/\bruby\b/.test(t)?`ruby`:/\bswift\b/.test(t)?`swift`:/\bperl\b/.test(t)?`perl`:/\bphp\b/.test(t)?`php`:null:null}function v(e,t,n,r){if(n)return n;let i=g(e).toLowerCase();if(f[i])return f[i];if(i.endsWith(`.d.ts`))return`typescript`;let a=_(r);if(a)return a;let o=i.includes(`.`)?i.slice(i.lastIndexOf(`.`)+1):``;return o&&d[o]?d[o]:t?.includes(`json`)?`json`:t?.includes(`javascript`)?`javascript`:t?.includes(`typescript`)?`typescript`:t?.includes(`xml`)?`xml`:t?.includes(`yaml`)||t?.includes(`yml`)?`yaml`:t?.includes(`shellscript`)?`bash`:null}function y(e,t,n,r){let i=v(e,t,n,r);return!!(i&&i!==`text`&&i!==`log`)}var b=(0,c.memo)(function({content:e,path:t,mediaType:n,languageHint:s,compact:d=!1}){let f=r(e=>e.theme),p=i.find(e=>e.id===f)?.dark??!0,g=(0,c.useMemo)(()=>v(t,n,s,e)||`text`,[e,s,n,t]),_=h(e)>u,[y,b]=(0,c.useState)(``),[x,S]=(0,c.useState)(!1),[C,w]=(0,c.useState)(!1);function T(){return(0,l.jsx)(o,{value:e,label:`Copy code`,copiedLabel:`Copied code`,size:`icon`,variant:`ghost`,className:`absolute right-2 top-2 h-7 w-7 bg-background/80 opacity-0 shadow-sm backdrop-blur transition-opacity hover:bg-muted group-hover/code:opacity-100 focus-visible:opacity-100`})}return(0,c.useEffect)(()=>{if(_||g===`text`||g===`log`){b(``),S(!1),w(!1);return}let t=!1;return S(!0),w(!1),m().then(({codeToHtml:t})=>t(e,{lang:g,theme:p?`github-dark-default`:`github-light-default`})).then(e=>{t||b(e)}).catch(()=>{t||(b(``),w(!0))}).finally(()=>{t||S(!1)}),()=>{t=!0}},[e,p,g,_]),x?(0,l.jsxs)(`div`,{className:`flex items-center gap-2 p-4 text-sm text-muted-foreground`,children:[(0,l.jsx)(a,{className:`h-4 w-4 animate-spin`}),`Highlighting`]}):_||C||!y?(0,l.jsxs)(`div`,{className:`group/code relative`,children:[T(),(0,l.jsx)(`pre`,{className:`overflow-auto whitespace-pre-wrap break-words font-mono text-xs leading-5 ${d?`p-3`:`p-4`}`,children:e||` `})]}):(0,l.jsxs)(`div`,{className:`group/code relative`,children:[T(),(0,l.jsx)(`div`,{className:`code-preview overflow-auto font-mono text-xs leading-5 ${d?`p-3`:`p-4`}`,dangerouslySetInnerHTML:{__html:y}})]})});export{y as n,b as t};
|
|
3
|
+
//# sourceMappingURL=code-preview-Bm1wWqAp.js.map
|