@chorus-aidlc/chorus 0.16.3 → 0.16.4
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/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-build-manifest.json +386 -386
- package/.next/standalone/.next/app-path-routes-manifest.json +50 -50
- package/.next/standalone/.next/build-manifest.json +5 -5
- package/.next/standalone/.next/prerender-manifest.json +24 -24
- package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +2 -2
- package/.next/standalone/.next/server/app/_not-found.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies/new.html +2 -2
- package/.next/standalone/.next/server/app/admin/companies/new.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/companies.html +2 -2
- package/.next/standalone/.next/server/app/admin/companies.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin.html +2 -2
- package/.next/standalone/.next/server/app/admin.rsc +1 -1
- package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-connections/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
- package/.next/standalone/.next/server/app/api/comments/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/executions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/resume/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/transcript/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/transcript/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-directory-requests/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js +1 -1
- package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/events/notifications/route.js +1 -1
- package/.next/standalone/.next/server/app/api/events/notifications/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/events/route.js +1 -1
- package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/conversational/route.js +1 -1
- package/.next/standalone/.next/server/app/api/ideas/conversational/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mcp/route.js +1 -1
- package/.next/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
- package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
- package/.next/standalone/.next/server/app/api/mentionables/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/preferences/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/preferences/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/read-all/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/read-all/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js +1 -1
- package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-visits/pin/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-visits/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/project-visits/visit/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/index.html +2 -2
- package/.next/standalone/.next/server/app/index.rsc +1 -1
- package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/admin.html +2 -2
- package/.next/standalone/.next/server/app/login/admin.rsc +1 -1
- package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/callback.html +2 -2
- package/.next/standalone/.next/server/app/login/callback.rsc +1 -1
- package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login/pick-workspace.html +2 -2
- package/.next/standalone/.next/server/app/login/pick-workspace.rsc +1 -1
- package/.next/standalone/.next/server/app/login.html +2 -2
- package/.next/standalone/.next/server/app/login.rsc +1 -1
- package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/onboarding.html +2 -2
- package/.next/standalone/.next/server/app/onboarding.rsc +2 -2
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects.html +2 -2
- package/.next/standalone/.next/server/app/projects.rsc +2 -2
- package/.next/standalone/.next/server/app/settings.html +2 -2
- package/.next/standalone/.next/server/app/settings.rsc +3 -3
- package/.next/standalone/.next/server/app-paths-manifest.json +50 -50
- package/.next/standalone/.next/server/chunks/2572.js +1 -1
- package/.next/standalone/.next/server/chunks/2618.js +1 -1
- package/.next/standalone/.next/server/chunks/2961.js +1 -1
- package/.next/standalone/.next/server/chunks/4827.js +1 -1
- package/.next/standalone/.next/server/chunks/5205.js +1 -0
- package/.next/standalone/.next/server/chunks/5245.js +1 -1
- package/.next/standalone/.next/server/chunks/5351.js +3 -2
- package/.next/standalone/.next/server/chunks/6113.js +1 -1
- package/.next/standalone/.next/server/chunks/6506.js +2 -2
- package/.next/standalone/.next/server/chunks/7368.js +1 -1
- package/.next/standalone/.next/server/chunks/7530.js +1 -1
- package/.next/standalone/.next/server/chunks/920.js +1 -1
- package/.next/standalone/.next/server/chunks/9213.js +1 -1
- package/.next/standalone/.next/server/chunks/9378.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/.next/server/middleware-manifest.json +1 -1
- package/.next/standalone/.next/server/pages/404.html +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/{11595.97e534422c57aee1.js → 11595.a6268c75ca8a2163.js} +1 -1
- package/.next/standalone/.next/static/chunks/{19887-c0bb297a78a1c7cd.js → 19887-b805e1dcee8c367b.js} +1 -1
- package/.next/standalone/.next/static/chunks/{33456.6dc44a6aca1a01fd.js → 33456.16ff7edf00137539.js} +1 -1
- package/.next/standalone/.next/static/chunks/{4860.7873ebc9ba435c8c.js → 4860.9e06848eb531e667.js} +1 -1
- package/.next/standalone/.next/static/chunks/{94643-01be319472d751b3.js → 94643-ffa140f765c73daf.js} +1 -1
- package/.next/standalone/.next/static/chunks/{99373.d0e808c18408b8da.js → 99373.81b79c91858f9099.js} +1 -1
- package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/{page-6b3fb08d53826d02.js → page-b9eb4e0692996657.js} +1 -1
- package/.next/standalone/.next/static/chunks/{webpack-fa066d7ff9ab2b29.js → webpack-4d1cc14b13e247b6.js} +1 -1
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
- package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/docs/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/orchestrate/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
- package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +1 -1
- package/.next/standalone/public/dsh-credentials.sh +137 -0
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-docs/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-orchestrate/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +1 -1
- package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +1 -1
- package/.next/standalone/public/skill/brainstorm-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/develop-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/docs-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/idea-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/orchestrate-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/proposal-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/quick-dev-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/review-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +1 -1
- package/.next/standalone/public/skill/yolo-chorus/SKILL.md +1 -1
- package/.next/standalone/public/test-dsh-credentials.sh +55 -0
- package/README.ja.md +3 -1
- package/README.ko.md +3 -1
- package/README.md +3 -1
- package/README.zh.md +3 -1
- package/cli/agent-backend-prompt.mjs +93 -0
- package/cli/client-args.mjs +11 -5
- package/cli/daemon-agent.mjs +6 -5
- package/cli/daemon-banner.mjs +3 -3
- package/cli/daemon-config.mjs +1 -1
- package/cli/daemon-install-config.mjs +21 -14
- package/cli/daemon-rest-client.mjs +31 -8
- package/cli/daemon.mjs +47 -6
- package/cli/dsh-managed-config.mjs +407 -0
- package/cli/dsh-spawner.mjs +438 -0
- package/cli/login.mjs +26 -4
- package/cli/spawner-select.mjs +10 -1
- package/cli/turn-reporter.mjs +5 -2
- package/cli/upload-hooks.mjs +31 -1
- package/cli/waker.mjs +49 -6
- package/package.json +1 -1
- package/prisma/migrations/20260818024700_add_turn_backend_session_id/migration.sql +1 -0
- package/prisma/schema.prisma +3 -0
- package/.next/standalone/.next/server/chunks/1114.js +0 -1
- /package/.next/standalone/.next/static/{K8qIdwvKoIWbwQ_f01mnM → 6sHDgeKioa0SJR1MAbcYG}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{K8qIdwvKoIWbwQ_f01mnM → 6sHDgeKioa0SJR1MAbcYG}/_ssgManifest.js +0 -0
package/.next/standalone/.next/static/chunks/{94643-01be319472d751b3.js → 94643-ffa140f765c73daf.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[94643],{6930:(e,t,n)=>{n.d(t,{Y:()=>c});var a=n(90508),s=n(12790),r=n.n(s),l=n(23675),i=n(26260),o=n(52309),d=n(39268);function c(e){var t,n;let{target:s}=e,c=(0,d.c)("fixedCwdAnchor"),u=(0,l.useParams)();return(0,a.jsxs)("div",{role:"region","aria-label":c("title"),className:"space-y-2 rounded-lg border border-border bg-background p-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium text-foreground",children:[(0,a.jsx)(i.A,{className:"h-4 w-4 text-primary","aria-hidden":!0}),c("title")]}),(0,a.jsxs)("dl",{className:"grid grid-cols-[auto_minmax(0,1fr)] gap-x-3 gap-y-1 text-[11px]",children:[(0,a.jsx)("dt",{className:"text-muted-foreground",children:c("host")}),(0,a.jsx)("dd",{className:"truncate font-mono text-foreground",children:null!=(t=s.host)?t:c("unknown")}),(0,a.jsx)("dt",{className:"text-muted-foreground",children:c("cwd")}),(0,a.jsx)("dd",{className:"break-all font-mono text-foreground",children:null!=(n=s.cwd)?n:c("unknown")}),(0,a.jsx)("dt",{className:"text-muted-foreground",children:c("status")}),(0,a.jsx)("dd",{className:"text-foreground",children:c("availability.".concat(s.availability))})]}),(0,a.jsxs)(r(),{href:"/projects/".concat(u.uuid,"/dashboard?settings=agent-cwds"),className:"inline-flex items-center gap-1.5 text-[11px] font-medium text-primary hover:underline",children:[(0,a.jsx)(o.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),c("manage")]})]})}},16349:(e,t,n)=>{n.d(t,{As:()=>c,OJ:()=>d});var a=n(90508),s=n(1856),r=n(91814),l=n(62990),i=n(67712);let o=(0,s.createContext)(null);function d(e){let{children:t}=e,n=(0,r.r)(),[d,c]=(0,s.useState)(null),[u,x]=(0,s.useState)(null),[m,g]=(0,s.useState)(!0),[f,p]=(0,s.useState)(null),h=(0,s.useCallback)(()=>{c(null),x(null),p("Session expired. Please log in again."),(0,l.cC)(),n.push("/login")},[n]),v=(0,s.useCallback)(async()=>{try{let e=await (0,l.tm)("/api/session");if(401===e.status&&(e=await (0,l.tm)("/api/session"),401===e.status&&await (0,l.IT)()&&(e=await (0,l.tm)("/api/session")),401===e.status))return h(),!1;let t=await e.json();if(t.success)return c(t.data.user),x(t.data.company),!0;return!1}catch(e){return!1}},[h]);(0,s.useEffect)(()=>{(async()=>{g(!0),await v(),g(!1)})()},[v]);let b=(0,s.useRef)(v);b.current=v;let j=(0,s.useRef)(!1);(0,s.useEffect)(()=>{let e=async()=>{if(!j.current){j.current=!0;try{await b.current()}finally{j.current=!1}}},t=t=>{t.persisted&&e()},n=()=>{"visible"===document.visibilityState&&e()};return window.addEventListener("pageshow",t),document.addEventListener("visibilitychange",n),()=>{window.removeEventListener("pageshow",t),document.removeEventListener("visibilitychange",n)}},[]);let w=async()=>{try{await fetch("/api/session",{method:"DELETE"}),await (0,l.ri)(),c(null),x(null),n.push("/login")}catch(e){i.q.error("Logout error:",e),(0,l.w9)(),n.push("/login")}},N=async()=>{await v()};return(0,a.jsx)(o.Provider,{value:{user:d,company:u,loading:m,error:f,logout:w,refreshSession:N},children:t})}function c(){let e=(0,s.useContext)(o);if(!e)throw Error("useAuth must be used within an AuthProvider");return e}},17001:(e,t,n)=>{n.d(t,{AM:()=>l,Wv:()=>i,hl:()=>o});var a=n(90508);n(1856);var s=n(79919),r=n(24377);function l(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"popover",...t})}function i(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"popover-trigger",...t})}function o(e){let{className:t,align:n="center",sideOffset:l=4,...i}=e;return(0,a.jsx)(s.Portal,{children:(0,a.jsx)(s.Content,{"data-slot":"popover-content",align:n,sideOffset:l,className:(0,r.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",t),...i})})}},18277:(e,t,n)=>{n.d(t,{Bs:()=>v});var a=n(90508),s=n(1856),r=n(12790),l=n.n(r),i=n(39268),o=n(60532),d=n(25373),c=n(39180),u=n(22922),x=n(67712);let m="@chorus-aidlc/chorus",g="npx ".concat(m," daemon"),f="npx ".concat(m," login"),p="/onboarding";function h(e){let{command:t}=e,n=(0,i.c)("daemonConnectCta"),[r,l]=(0,s.useState)(!1),c=async()=>{try{var e;await (null==(e=navigator.clipboard)?void 0:e.writeText(t)),l(!0),setTimeout(()=>l(!1),2e3)}catch(e){x.q.error("Failed to copy daemon command:",e)}};return(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("code",{className:"flex-1 overflow-x-auto rounded-md bg-foreground px-3 py-2 font-mono text-[12.5px] leading-relaxed text-background",children:t}),(0,a.jsx)(u.$,{variant:"outline",size:"sm",onClick:c,"aria-label":n(r?"copied":"copy"),"aria-live":"polite",className:"shrink-0",children:r?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.A,{className:"mr-1 h-4 w-4 text-green-500"}),n("copied")]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.A,{className:"mr-1 h-4 w-4"}),n("copy")]})})]})}function v(e){let{variant:t}=e,n=(0,i.c)("daemonConnectCta");return"compact"===t?(0,a.jsxs)("div",{className:"flex flex-col gap-2.5 px-1 py-1.5",children:[(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(c.A,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":!0}),(0,a.jsx)("p",{className:"text-[12.5px] leading-relaxed text-muted-foreground",children:n("body")})]}),(0,a.jsx)(h,{command:g}),(0,a.jsx)("p",{className:"text-[11.5px] leading-relaxed text-muted-foreground",children:n("loginNote",{command:f})}),(0,a.jsx)(l(),{href:p,className:"text-[12px] font-medium text-primary hover:text-[#A65F3C] hover:underline",children:n("learnMore")})]}):(0,a.jsxs)("div",{className:"flex w-full flex-col gap-3 rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] p-5 text-left",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(c.A,{className:"h-4 w-4 text-primary","aria-hidden":!0}),(0,a.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:n("headline")})]}),(0,a.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:n("bodyLong")}),(0,a.jsx)(h,{command:g}),(0,a.jsx)("p",{className:"text-[12px] leading-relaxed text-muted-foreground",children:n("loginNote",{command:f})}),(0,a.jsx)(l(),{href:p,className:"text-[12.5px] font-medium text-primary hover:text-[#A65F3C] hover:underline",children:n("learnMore")})]})}},21180:(e,t,n)=>{n.d(t,{V:()=>u});var a=n(90508),s=n(1856),r=n(39268),l=n(42305),i=n(22922),o=n(97438),d=n(78307),c=n(41837);function u(e){var t;let{open:n,agentName:u,instances:x,onConfirm:m,agentUuid:g,onTemporaryConfirm:f,onCancel:p}=e,h=(0,r.c)("wakeCwdPicker"),[v,b]=(0,s.useState)(null),[j,w]=(0,s.useState)(!1);(0,s.useEffect)(()=>{if(n){var e;b(null!=(e=x[0])?e:null),w(!1)}},[n,x]);let N=new Set(x.map(e=>e.host)).size;return(0,a.jsx)(o.lG,{open:n,onOpenChange:e=>{e||p()},children:(0,a.jsxs)(o.Cf,{className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,a.jsxs)(o.c7,{className:"shrink-0",children:[(0,a.jsx)(o.L3,{children:h("title")}),(0,a.jsx)(o.rr,{children:h("subtitle",{name:u,count:x.length,hosts:N})})]}),(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",onKeyDown:e=>{!(j||"Enter"!==e.key||(0,l.P)(e))&&v&&(e.preventDefault(),m(v))},children:j&&g&&f?(0,a.jsx)(c.e,{agentUuid:g,instances:x,confirmLabel:h("useOnce"),onValidated:e=>f({agentUuid:e.agentUuid,validationRequestUuid:e.validationRequestUuid})}):(0,a.jsx)(d.O,{instances:x,selectedConnectionUuid:null!=(t=null==v?void 0:v.connectionUuid)?t:null,onSelect:b,ariaLabel:h("title")})}),(0,a.jsxs)(o.Es,{className:"shrink-0",children:[(0,a.jsx)(i.$,{variant:"ghost",onClick:p,children:h("cancel")}),g&&f&&(0,a.jsx)(i.$,{variant:"outline",onClick:()=>w(e=>!e),children:h(j?"registeredDirectories":"browseAnother")}),!j&&(0,a.jsx)(i.$,{disabled:!v,onClick:()=>{v&&m(v)},children:h("confirm")})]})]})})}},24900:(e,t,n)=>{n.d(t,{g9:()=>l,kn:()=>r});let a="agentPresence.unknownPath",s="agentPresence.unknownHost";function r(e){var t,n;let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null===e)return{label:a,title:a,isUnknown:!0};let r=null!=(t=s.tailSegments)?t:2,l=null!=(n=s.charBudget)?n:28,i=e.replace(/\\/g,"/").split("/").filter(e=>e.length>0);if(0===i.length)return{label:e,title:e,isUnknown:!1};let o=i.length>r,d=i.slice(-r),c=(e,t)=>{let n=e.join("/");return t?"".concat("…/").concat(n):n},u=d,x=o,m=c(u,x);for(;m.length>l&&u.length>1;)m=c(u=u.slice(1),x=!0);return{label:m,title:e,isUnknown:!1}}function l(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(""===e)return{label:s,title:s,isUnknown:!0};let a=null!=(t=n.charBudget)?t:18;if(e.length<=a)return{label:e,title:e,isUnknown:!1};let r=Math.max(0,a-1);return{label:"".concat(e.slice(0,r)).concat("…"),title:e,isUnknown:!1}}},36550:(e,t,n)=>{n.d(t,{MG:()=>k,lb:()=>C,wL:()=>A,yw:()=>y});var a=n(90508),s=n(1856),r=n(39268),l=n(67587),i=n(12790),o=n.n(i),d=n(13142),c=n(85226),u=n(59133),x=n(88591),m=n(93134),g=n(43057),f=n(20578),p=n(10263),h=n(57731),v=n(22922),b=n(51817),j=n(62990),w=n(67712),N=n(95291);function y(e){var t;let{exec:n}=e,i=(0,r.c)("agentConnections"),o=(0,r.c)("common"),[u,x]=(0,s.useState)(!1),[m,g]=(0,s.useState)(!1),f=(null==(t=n.entityTitle)?void 0:t.trim())||i("execEntityUnknown"),p=async()=>{g(!0);try{let e=await (0,j.tm)("/api/daemon/control",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:"interrupt",targetConnectionUuid:n.connectionUuid,entityType:n.entityType,entityUuid:n.entityUuid})});if(!e.ok){let t=i("interruptError");try{let n=await e.json();n&&"string"==typeof n.error&&n.error&&(t=n.error)}catch(e){}l.oR.error(t);return}l.oR.success(i("interruptSuccess",{title:f})),x(!1)}catch(e){w.q.error("Failed to request daemon interrupt:",e),l.oR.error(i("interruptError"))}finally{g(!1)}};return(0,a.jsxs)(b.Lt,{open:u,onOpenChange:e=>!m&&x(e),children:[(0,a.jsx)(b.tv,{asChild:!0,children:(0,a.jsxs)(v.$,{variant:"ghost",size:"sm","aria-label":i("interruptAria"),className:"h-7 shrink-0 gap-1.5 rounded-lg px-2.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E] hover:bg-[#FEF3C7] dark:hover:bg-[#33270f] hover:text-[#92400E]",children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),i("interrupt")]})}),(0,a.jsxs)(b.EO,{children:[(0,a.jsxs)(b.wd,{children:[(0,a.jsx)(b.r7,{children:i("interruptConfirmTitle")}),(0,a.jsx)(b.$v,{children:i("interruptConfirmBody",{title:f})})]}),(0,a.jsxs)(b.ck,{children:[(0,a.jsx)(b.Zr,{disabled:m,children:o("cancel")}),(0,a.jsx)(b.Rx,{variant:"destructive",disabled:m,onClick:e=>{e.preventDefault(),p()},children:m?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(c.A,{className:"mr-2 h-4 w-4 motion-safe:animate-spin","aria-hidden":!0}),i("interrupting")]}):i("interruptConfirmAction")})]})]})]})}function k(e){var t;let{exec:n}=e,i=(0,r.c)("agentConnections"),[o,d]=(0,s.useState)(!1),x=(null==(t=n.entityTitle)?void 0:t.trim())||i("execEntityUnknown"),m=async()=>{d(!0);try{let e=await (0,j.tm)("/api/daemon/resume",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({connectionUuid:n.connectionUuid,entityType:n.entityType,entityUuid:n.entityUuid})});if(!e.ok){let t=i("resumeError");try{let n=await e.json();n&&"string"==typeof n.error&&n.error&&(t=n.error)}catch(e){}l.oR.error(t);return}l.oR.success(i("resumeSuccess",{title:x}))}catch(e){w.q.error("Failed to request daemon resume:",e),l.oR.error(i("resumeError"))}finally{d(!1)}};return(0,a.jsxs)(v.$,{variant:"ghost",size:"sm",disabled:o,"aria-label":i("resumeAria"),onClick:()=>void m(),className:"h-7 shrink-0 gap-1.5 rounded-lg px-2.5 text-[12px] font-medium text-[#15803D] dark:text-[#4FD07A] hover:bg-[#DCFCE7] dark:hover:bg-[#13291d] hover:text-[#166534]",children:[o?(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,a.jsx)(u.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),o?i("resuming"):i("resume")]})}function C(e){var t,n;let{exec:s,nowMs:l,layout:i="inline"}=e,d=(0,r.c)("agentConnections"),u=(0,N.l5)(),v=(0,N.tN)(),b="running"===s.status,j="interrupted"===s.status,w=j&&"user"===s.interruptedReason,C="stacked"===i,A="daemon_session"===s.entityType,E=A?(null==(t=s.entityTitle)?void 0:t.trim())||d("execConversation"):(null==(n=s.entityTitle)?void 0:n.trim())||d("execEntityUnknown"),S=(0,N.BS)(s),U=C?"line-clamp-2":"truncate",T=(0,a.jsx)("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg ".concat(b?"bg-primary/[0.08]":j?"bg-[#FEF3C7] dark:bg-[#33270f]":"bg-[#F0EDE8] dark:bg-[#1f1e1c]"),"aria-hidden":!0,children:b?(0,a.jsx)(c.A,{className:"h-4 w-4 text-primary motion-safe:animate-spin"}):j?(0,a.jsx)(x.A,{className:"h-4 w-4 text-[#B45309] dark:text-[#E0A34E]"}):(0,a.jsx)(m.A,{className:"h-4 w-4 text-muted-foreground"})}),F=(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[A?(0,a.jsx)(g.A,{className:"h-3.5 w-3.5 shrink-0 text-primary","aria-hidden":!0}):(0,a.jsx)(h.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0 text-[10px] font-medium text-muted-foreground",children:v(s.entityType)}),S?(0,a.jsxs)(o(),{href:S,className:"group inline-flex min-w-0 items-center gap-1.5 ".concat(U," text-[14px] font-medium text-foreground hover:text-primary"),children:[(0,a.jsx)("span",{className:U,children:E}),(0,a.jsx)(f.A,{className:"h-3.5 w-3.5 shrink-0 text-[#C8C3BA] group-hover:text-primary"})]}):(0,a.jsx)("span",{className:"block ".concat(U," text-[14px] font-medium ").concat(A?"text-foreground":"text-muted-foreground"),children:E})]}),s.rootIdeaTitle&&(0,a.jsxs)("div",{className:"mt-1 flex items-center gap-1.5",children:[(0,a.jsx)(p.A,{className:"h-3 w-3 shrink-0 text-[#9A8C7E]","aria-hidden":!0}),(0,a.jsx)("span",{className:"".concat(C?"":"truncate"," text-[11px] text-[#9A8C7E]"),children:d("execSession",{idea:s.rootIdeaTitle})})]})]}),M=b?(0,a.jsxs)(a.Fragment,{children:[s.startedAt&&(0,a.jsx)("span",{className:"font-mono text-[12px] font-medium tabular-nums text-[#15803D] dark:text-[#4FD07A]",title:d("execElapsedLabel"),children:u(s.startedAt,l)}),(0,a.jsx)(y,{exec:s})]}):j?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(h.E,{variant:"secondary",className:"shrink-0 gap-1 border-0 bg-[#FEF3C7] dark:bg-[#33270f] px-2 py-0.5 text-[10px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,a.jsx)(x.A,{className:"h-3 w-3","aria-hidden":!0}),d(w?"execInterruptedUser":"execInterruptedCrash")]}),(0,a.jsx)(k,{exec:s})]}):(0,a.jsx)("span",{className:"text-[11px] font-medium text-muted-foreground",children:d("execWaiting")});return C?(0,a.jsxs)("li",{className:"flex flex-col gap-2 rounded-xl border border-border bg-card px-3.5 py-3",children:[(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[T,F]}),(0,a.jsx)("div",{className:"flex flex-wrap items-center gap-2 pl-11",children:M})]}):(0,a.jsxs)("li",{className:"flex items-center gap-3 rounded-xl border border-border bg-card px-3.5 py-3",children:[T,F,b||j?(0,a.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:M}):(0,a.jsx)("span",{className:"shrink-0 text-[11px] font-medium text-muted-foreground",children:d("execWaiting")})]})}function A(e){let{icon:t,label:n,count:s,children:r}=e;return(0,a.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(t,{className:"h-4 w-4 text-primary","aria-hidden":!0}),(0,a.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-muted-foreground",children:n}),(0,a.jsx)(h.E,{variant:"secondary",className:"border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0 font-mono text-[10px] font-medium text-[#9A8C7E]",children:s})]}),(0,a.jsx)("ul",{className:"flex flex-col gap-2",children:r})]})}},37627:(e,t,n)=>{n.d(t,{m:()=>s});var a=n(90508);function s(e){let{online:t,size:n="sm"}=e,s="md"===n?"h-2.5 w-2.5":"h-2 w-2";return t?(0,a.jsxs)("span",{"aria-hidden":!0,className:"relative inline-flex ".concat(s," items-center justify-center"),children:[(0,a.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-[#22C55E] opacity-30 motion-safe:animate-ping"}),(0,a.jsx)("span",{className:"relative inline-flex ".concat("md"===n?"h-1.5 w-1.5":"h-1 w-1"," rounded-full bg-[#22C55E]")})]}):(0,a.jsx)("span",{"aria-hidden":!0,className:"".concat(s," rounded-full bg-[#9A9A9A] opacity-60")})}n(57731)},41033:(e,t,n)=>{n.d(t,{C:()=>o,z:()=>i});var a=n(90508);n(1856);var s=n(97964),r=n(63197),l=n(24377);function i(e){let{className:t,...n}=e;return(0,a.jsx)(r.Root,{"data-slot":"radio-group",className:(0,l.cn)("grid gap-3",t),...n})}function o(e){let{className:t,...n}=e;return(0,a.jsx)(r.Item,{"data-slot":"radio-group-item",className:(0,l.cn)("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...n,children:(0,a.jsx)(r.Indicator,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center",children:(0,a.jsx)(s.A,{className:"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})})})}},51817:(e,t,n)=>{n.d(t,{$v:()=>f,EO:()=>u,Lt:()=>i,Rx:()=>p,Zr:()=>h,ck:()=>m,r7:()=>g,tv:()=>o,wd:()=>x});var a=n(90508);n(1856);var s=n(90299),r=n(24377),l=n(22922);function i(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"alert-dialog",...t})}function o(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"alert-dialog-trigger",...t})}function d(e){let{...t}=e;return(0,a.jsx)(s.Portal,{"data-slot":"alert-dialog-portal",...t})}function c(e){let{className:t,...n}=e;return(0,a.jsx)(s.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,r.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...n})}function u(e){let{className:t,size:n="default",...l}=e;return(0,a.jsxs)(d,{children:[(0,a.jsx)(c,{}),(0,a.jsx)(s.Content,{"data-slot":"alert-dialog-content","data-size":n,className:(0,r.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",t),...l})]})}function x(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,r.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",t),...n})}function m(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,r.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",t),...n})}function g(e){let{className:t,...n}=e;return(0,a.jsx)(s.Title,{"data-slot":"alert-dialog-title",className:(0,r.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",t),...n})}function f(e){let{className:t,...n}=e;return(0,a.jsx)(s.Description,{"data-slot":"alert-dialog-description",className:(0,r.cn)("text-muted-foreground text-sm",t),...n})}function p(e){let{className:t,variant:n="default",size:i="default",...o}=e;return(0,a.jsx)(l.$,{variant:n,size:i,asChild:!0,children:(0,a.jsx)(s.Action,{"data-slot":"alert-dialog-action",className:(0,r.cn)(t),...o})})}function h(e){let{className:t,variant:n="outline",size:i="default",...o}=e;return(0,a.jsx)(l.$,{variant:n,size:i,asChild:!0,children:(0,a.jsx)(s.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,r.cn)(t),...o})})}},57223:(e,t,n)=>{n.d(t,{E:()=>r});var a=n(90508),s=n(24377);function r(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"skeleton",className:(0,s.cn)("bg-accent animate-pulse rounded-md",t),...n})}},57731:(e,t,n)=>{n.d(t,{E:()=>o});var a=n(90508);n(1856);var s=n(49499),r=n(54154),l=n(24377);let i=(0,s.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:n="default",asChild:s=!1,...o}=e,d=s?r.bL:"span";return(0,a.jsx)(d,{"data-slot":"badge","data-variant":n,className:(0,l.cn)(i({variant:n}),t),...o})}},59208:(e,t,n)=>{n.d(t,{$d:()=>d,Oj:()=>o,kz:()=>c});var a=n(90508),s=n(1856),r=n(62990),l=n(67712);let i=(0,s.createContext)(null);function o(e){let{children:t}=e,[n,o]=(0,s.useState)("loading"),[d,c]=(0,s.useState)([]),[u,x]=(0,s.useState)({}),[m,g]=(0,s.useState)(!1),[f,p]=(0,s.useState)(!1),[h,v]=(0,s.useState)(null),[b,j]=(0,s.useState)(null),w=(0,s.useRef)(new Set),N=(0,s.useRef)({}),y=(0,s.useRef)(0),k=(0,s.useRef)(!1),C=(0,s.useRef)({sawAuth401:!1,sawHealthy:!1}),A=(0,s.useCallback)(async()=>{try{let t=await (0,r.tm)("/api/agent-connections");if(!t.ok){401===t.status&&(C.current.sawAuth401=!0),o("error");return}C.current.sawHealthy=!0;let n=await t.json();if(n.success){var e;c(null!=(e=n.data.connections)?e:[]),o("ok")}else o("error")}catch(e){l.q.error("Failed to fetch agent connections:",e),o("error")}},[]),E=(0,s.useCallback)(async()=>{let e={...N.current};try{let n=await (0,r.tm)("/api/daemon/executions");if(!n.ok){401===n.status&&(C.current.sawAuth401=!0);return}C.current.sawHealthy=!0;let a=await n.json();if(a.success){var t;let n=function(e){let t={};for(let s of e){var n,a;(null!=(a=t[n=s.connectionUuid])?a:t[n]=[]).push(s)}return t}(null!=(t=a.data.executions)?t:[]);x(t=>{let a={...n};for(let n of Object.keys(N.current))N.current[n]!==e[n]&&(void 0===t[n]?delete a[n]:a[n]=t[n]);return a})}}catch(e){l.q.error("Failed to fetch daemon executions:",e)}finally{g(!0)}},[]);(0,s.useEffect)(()=>{let e=null,t=!1,n=async()=>{if(C.current={sawAuth401:!1,sawHealthy:!1},await Promise.all([A(),E()]),t)return;let{sawAuth401:n,sawHealthy:a}=C.current;n&&!a?(y.current+=1,y.current>=2&&e&&(clearInterval(e),e=null,k.current=!0,l.q.warn("Agent-presence poll paused: session appears dead (consecutive 401 ticks). Will re-arm on next visibility."))):a&&(y.current=0)},a=()=>{k.current=!1,y.current=0,n(),e=setInterval(n,15e3)},s=()=>{"visible"===document.visibilityState&&k.current&&!t&&a()};return a(),document.addEventListener("visibilitychange",s),()=>{t=!0,e&&clearInterval(e),document.removeEventListener("visibilitychange",s)}},[A,E]),(0,s.useEffect)(()=>{let e=null;function t(){n(),(e=new EventSource(!h?"/api/events":"/api/events?sessionUuid=".concat(encodeURIComponent(h)))).onmessage=e=>{let t=null;try{t=JSON.parse(e.data)}catch(e){return}if(t&&!function(e,t){if("transcript"!==e.type)return!1;for(let n of t)n(e);return!0}(t,w.current)&&"execution"===t.type){var n;let e=t;N.current[e.connectionUuid]=(null!=(n=N.current[e.connectionUuid])?n:0)+1,x(t=>(function(e,t){let n={...e};return 0===t.executions.length?delete n[t.connectionUuid]:n[t.connectionUuid]=t.executions,n})(t,e))}},e.onerror=()=>{}}function n(){e&&(e.close(),e=null)}function a(){"visible"===document.visibilityState&&(e&&e.readyState===EventSource.OPEN||(t(),E()))}return t(),document.addEventListener("visibilitychange",a),()=>{n(),document.removeEventListener("visibilitychange",a)}},[E,h]);let S=(0,s.useMemo)(()=>d.filter(e=>"online"===e.effectiveStatus).length,[d]),U=(0,s.useCallback)(e=>(w.current.add(e),()=>{w.current.delete(e)}),[]),T=(0,s.useCallback)((e,t)=>{j(t?{agentUuid:e,pin:t}:{agentUuid:e}),p(!0)},[]),F=(0,s.useCallback)(e=>{j({agentUuid:e.agentUuid,sessionUuid:e.uuid,sessionSeed:e}),p(!0)},[]),M=(0,s.useCallback)(()=>{j(null)},[]),z=(0,s.useMemo)(()=>({status:n,connections:d,onlineCount:S,executionsByConnection:u,executionsLoaded:m,modalOpen:f,setModalOpen:p,openSession:h,setOpenSession:v,subscribeTranscript:U,focusTarget:b,openChatForAgent:T,openChatForSession:F,clearChatFocusTarget:M,refreshConnections:A}),[n,d,S,u,m,f,h,U,b,T,F,M,A]);return(0,a.jsx)(i.Provider,{value:z,children:t})}function d(){let e=(0,s.useContext)(i);if(!e)throw Error("useAgentPresence must be used within an AgentPresenceProvider");return e}function c(){return(0,s.useContext)(i)}},64993:(e,t,n)=>{n.d(t,{F:()=>l});var a=n(90508);n(1856);var s=n(65326),r=n(24377);function l(e){let{className:t,children:n,...l}=e;return(0,a.jsxs)(s.Root,{"data-slot":"scroll-area",className:(0,r.cn)("relative",t),...l,children:[(0,a.jsx)(s.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:n}),(0,a.jsx)(i,{}),(0,a.jsx)(s.Corner,{})]})}function i(e){let{className:t,orientation:n="vertical",...l}=e;return(0,a.jsx)(s.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:n,className:(0,r.cn)("flex touch-none p-px transition-colors select-none","vertical"===n&&"h-full w-2.5 border-l border-l-transparent","horizontal"===n&&"h-2.5 flex-col border-t border-t-transparent",t),...l,children:(0,a.jsx)(s.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}},67712:(e,t,n)=>{n.d(t,{q:()=>i});var a=n(55036);let s={debug:0,info:1,warn:2,error:3},r=a.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function l(e){return s[e]>=s[r]}let i={debug:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];l("debug")&&console.debug("[Chorus] ".concat(e),...n)},info:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];l("info")&&console.info("[Chorus] ".concat(e),...n)},warn:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];l("warn")&&console.warn("[Chorus] ".concat(e),...n)},error:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];l("error")&&console.error("[Chorus] ".concat(e),...n)}}},72530:(e,t,n)=>{n.d(t,{HM:()=>p,No:()=>x,wo:()=>m});var a=n(90508),s=n(1856),r=n(39268),l=n(62482),i=n(32470),o=n(37627),d=n(90094),c=n(36550),u=n(18277);function x(e){let{state:t}=e;return"error"===t?(0,a.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 shrink-0 rounded-full bg-[#D97706] opacity-90"}):(0,a.jsx)("span",{className:"shrink-0",children:(0,a.jsx)(o.m,{online:"online"===t,size:"md"})})}function m(e,t){return"loading"===e?"loading":"error"===e?"error":t>0?"online":"idle"}function g(e){let{connection:t,executions:n,showHost:s,nowMs:o}=e,u=(0,r.c)("agentPresence"),x=(0,r.c)("agentConnections"),{text:m,dot:g}=(0,d.c0)(t,n,o),f=n.filter(e=>"running"===e.status),p=n.filter(e=>"queued"===e.status),h=f.length>0||p.length>0,v="online"===t.effectiveStatus;return(0,a.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,a.jsx)(d.A4,{connection:t,showHost:s,activity:m,dot:g}),h?(0,a.jsxs)("div",{className:"flex flex-col gap-4 pl-1",children:[f.length>0&&(0,a.jsx)(c.wL,{icon:l.A,label:x("execRunning"),count:f.length,children:f.map(e=>(0,a.jsx)(c.lb,{exec:e,nowMs:o,layout:"stacked"},e.uuid))}),p.length>0&&(0,a.jsx)(c.wL,{icon:i.A,label:x("execQueued"),count:p.length,children:p.map(e=>(0,a.jsx)(c.lb,{exec:e,nowMs:o,layout:"stacked"},e.uuid))})]}):v&&(0,a.jsx)("p",{className:"pl-1 text-[12px] text-muted-foreground",children:u("connectionIdle")})]})}function f(e){let{group:t,executionsByConnection:n,nowMs:s,expanded:r,onToggle:l}=e;return(0,a.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,a.jsx)(d.u,{group:t,expanded:r,onToggle:l}),r&&(0,a.jsx)("div",{className:"flex flex-col gap-3 pl-7",children:t.connections.map(e=>{var r;return(0,a.jsx)(g,{connection:e,executions:null!=(r=n[e.uuid])?r:[],showHost:t.multiHost,nowMs:s},e.uuid)})})]})}function p(e){let{groups:t,executionsByConnection:n,nowMs:r}=e,[l,i]=(0,s.useState)(new Set);return 0===t.length?(0,a.jsx)(u.Bs,{variant:"compact"}):(0,a.jsx)("div",{className:"flex flex-col gap-5",children:t.map(e=>(0,a.jsx)(f,{group:e,executionsByConnection:n,nowMs:r,expanded:l.has(e.agentUuid),onToggle:()=>{let t;return t=e.agentUuid,i(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n})}},e.agentUuid))})}},78307:(e,t,n)=>{n.d(t,{C:()=>u,O:()=>g});var a=n(90508),s=n(1856),r=n(39268),l=n(71388),i=n(41033),o=n(24377),d=n(24900),c=n(37627);function u(e){return e.filter(e=>"online"===e.effectiveStatus)}function x(e){let{cwd:t,formatOptions:n}=e,s=(0,r.c)(),i=(0,d.kn)(t,n),c=i.isUnknown?s(i.label):i.label,u=i.isUnknown?s(i.title):i.title;return(0,a.jsxs)("span",{title:u,className:(0,o.cn)("inline-flex min-w-0 items-center gap-1.5 rounded-md border border-border bg-background px-2 py-0.5","font-mono text-xs",i.isUnknown?"text-muted-foreground italic":"text-foreground"),children:[(0,a.jsx)(l.A,{className:"size-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,a.jsx)("span",{className:"truncate",children:c})]})}function m(e){let{host:t,formatOptions:n}=e,s=(0,r.c)(),l=(0,d.g9)(t,n),i=l.isUnknown?s(l.label):l.label,o=l.isUnknown?s(l.title):l.title;return(0,a.jsx)("span",{title:o,className:"shrink-0 truncate font-mono text-[10px] text-muted-foreground",children:i})}function g(e){let{instances:t,selectedConnectionUuid:n,onSelect:l,className:d,cwdFormatOptions:u,hostFormatOptions:g,ariaLabel:f}=e,p=(0,r.c)("mentionInstance"),h=(0,s.useMemo)(()=>new Set(t.map(e=>e.host)).size>1,[t]),v=1===t.length?t[0]:null;return((0,s.useEffect)(()=>{v&&n!==v.connectionUuid&&l(v)},[v,n]),0===t.length)?(0,a.jsx)("div",{className:(0,o.cn)("py-2 text-xs text-muted-foreground",d),children:p("noInstances")}):(0,a.jsx)(i.z,{"aria-label":null!=f?f:p("title"),value:null!=n?n:void 0,onValueChange:e=>{let n=t.find(t=>t.connectionUuid===e);n&&l(n)},className:(0,o.cn)("gap-1.5",d),children:t.map(e=>{var t;let s=n===e.connectionUuid;return(0,a.jsxs)("div",{role:"presentation",tabIndex:-1,onClick:()=>l(e),className:(0,o.cn)("flex items-center gap-2.5 rounded-md border px-2.5 py-2 transition-colors","cursor-pointer border-border hover:bg-background",s&&"border-primary bg-background"),children:[(0,a.jsx)("span",{className:"flex shrink-0 items-center","aria-hidden":!0,children:(0,a.jsx)(c.m,{online:!0})}),(0,a.jsxs)("span",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,a.jsx)(x,{cwd:e.cwd,formatOptions:u}),h&&(0,a.jsx)(m,{host:e.host,formatOptions:g})]}),(0,a.jsx)(i.C,{value:e.connectionUuid,"aria-label":null!=(t=e.cwd)?t:void 0,className:"shrink-0"})]},e.connectionUuid)})})}},81750:(e,t,n)=>{n.d(t,{Ke:()=>o,Nt:()=>l,R6:()=>i});var a=n(90508),s=n(38476),r=n(24377);function l(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"collapsible",...t})}function i(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"collapsible-trigger",...t})}function o(e){let{className:t,...n}=e;return(0,a.jsx)(s.Content,{"data-slot":"collapsible-content",className:(0,r.cn)("overflow-hidden data-[state=open]:animate-[collapsible-down_250ms_ease-in-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-in-out]",t),...n})}},90094:(e,t,n)=>{n.d(t,{A4:()=>k,Jk:()=>v,Mn:()=>N,c0:()=>w,fb:()=>b,u:()=>C});var a=n(90508),s=n(39268),r=n(51509),l=n(71388),i=n(68842),o=n(17730),d=n(24900),c=n(91385),u=n(22922),x=n(37627),m=n(95291);function g(e){let t=null==e?void 0:e.trim();return t?t.toLocaleLowerCase("en-US"):""}function f(e){return null===e?"":e}function p(e,t){return e<t?-1:+(e>t)}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return[...e].sort((e,n)=>{var a,s;return j(e,null!=(a=t[e.uuid])?a:[])-j(n,null!=(s=t[n.uuid])?s:[])||p(g(e.agentName),g(n.agentName))||p(e.agentUuid,n.agentUuid)||p(f(e.cwd),f(n.cwd))||p(e.host,n.host)||p(e.clientType,n.clientType)||p(e.uuid,n.uuid)})}function v(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=h(e,t),a=[],s=new Map;for(let e of n)s.has(e.agentUuid)||(s.set(e.agentUuid,[]),a.push(e.agentUuid)),s.get(e.agentUuid).push(e);return a.map(e=>{let t=s.get(e),n=new Set(t.map(e=>e.host)).size>1;return{agentUuid:e,agentName:t[0].agentName,clientType:t[0].clientType,connections:t,onlineCount:t.filter(e=>"online"===e.effectiveStatus).length,multiHost:n,singleHost:n?void 0:t[0].host}})}function b(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return h(e.filter(e=>"online"===e.effectiveStatus),t)}function j(e,t){return"online"!==e.effectiveStatus?3:t.some(e=>"running"===e.status)?0:t.some(e=>"queued"===e.status)?1:2}function w(e,t,n){let r=(0,s.c)("agentPresence.drilldown"),l=(0,m.l5)(),i=(0,m.Vq)(),o=function(e,t){if("online"!==e.effectiveStatus)return{state:"offline",runningStartedAt:null,queuedCount:0};let n=t.filter(e=>"running"===e.status),a=t.filter(e=>"queued"===e.status);if(n.length>0){var s;let e=[...n].sort((e,t)=>{var n,a;return(null!=(n=e.startedAt)?n:e.createdAt).localeCompare(null!=(a=t.startedAt)?a:t.createdAt)})[0];return{state:"running",runningStartedAt:null!=(s=e.startedAt)?s:e.createdAt,queuedCount:a.length}}return a.length>0?{state:"queued",runningStartedAt:null,queuedCount:a.length}:{state:"idle",runningStartedAt:null,queuedCount:0}}(e,t);switch(o.state){case"offline":return{text:r("offlineSince",{time:i(e.lastSeenAt,n)}),dot:(0,a.jsx)(x.m,{online:!1,size:"md"})};case"running":return{text:r("runningFor",{time:o.runningStartedAt?l(o.runningStartedAt,n):""}),dot:(0,a.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 rounded-full bg-primary"})};case"queued":return{text:r("queuedCount",{count:o.queuedCount}),dot:(0,a.jsx)(x.m,{online:!0,size:"md"})};default:return{text:r("idle"),dot:(0,a.jsx)(x.m,{online:!0,size:"md"})}}}function N(e){let{cwd:t,formatOptions:n}=e,i=(0,s.c)("agentPresence"),o=(0,d.kn)(null!=t?t:null,n),c=o.isUnknown?i("unknownPath"):o.label,u=o.isUnknown?i("unknownPath"):o.title,x=o.isUnknown?r.A:l.A;return(0,a.jsxs)("span",{title:u,className:"inline-flex min-w-0 items-center gap-1.5 rounded-md bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-1",children:[(0,a.jsx)(x,{className:"h-3.5 w-3.5 shrink-0 text-[#9A8E7E]","aria-hidden":!0}),(0,a.jsx)("span",{className:"min-w-0 truncate font-mono text-[12px] font-semibold ".concat(o.isUnknown?"text-muted-foreground":"text-[#3A3631]"),children:c})]})}function y(e){let{host:t}=e,n=(0,s.c)("agentPresence"),r=(0,d.g9)(t),l=r.isUnknown?n("unknownHost"):r.label,o=r.isUnknown?n("unknownHost"):r.title;return(0,a.jsxs)("span",{title:o,className:"inline-flex min-w-0 max-w-[140px] shrink items-center gap-1 truncate font-mono text-[11px] text-muted-foreground",children:[(0,a.jsx)(i.A,{className:"h-3 w-3 shrink-0","aria-hidden":!0}),(0,a.jsx)("span",{className:"truncate",children:l})]})}function k(e){let{connection:t,showHost:n,activity:s,dot:r}=e,l="online"===t.effectiveStatus,i=n||!!s;return(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,a.jsx)(N,{cwd:t.cwd}),i&&(0,a.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5 pl-0.5",children:[n&&(0,a.jsx)(y,{host:t.host}),n&&s&&(0,a.jsx)("span",{"aria-hidden":!0,className:"shrink-0 text-[11px] text-[#C9C2B6]",children:"\xb7"}),s&&(0,a.jsx)("span",{className:"min-w-0 truncate text-[11px] text-muted-foreground",children:s})]})]}),(0,a.jsx)("span",{className:"shrink-0",children:null!=r?r:(0,a.jsx)(x.m,{online:l,size:"md"})})]})}function C(e){var t,n;let{group:r,expanded:l,onToggle:i}=e,d=(0,s.c)("agentPresence"),g=(0,s.c)("agentPresence.drilldown"),f=(0,s.c)("agentConnections"),p=(0,m.Z5)(),h=(null==(t=r.agentName)?void 0:t.trim())||f("unknownAgent"),v=r.onlineCount>0,b="function"==typeof i,j=new Set(r.connections.map(e=>e.host)).size,w=""===r.singleHost?d("unknownHost"):null!=(n=r.singleHost)?n:"",N=r.multiHost?"".concat(p(r.clientType)," \xb7 ").concat(g("hostsCount",{count:j})):"".concat(p(r.clientType)," \xb7 ").concat(w),y=(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.A,{className:"h-4 w-4 shrink-0 text-[#B7AE9F] transition-transform ".concat(b&&l?"rotate-180":""),"aria-hidden":!0}),(0,a.jsx)(c.AgentAvatar,{name:h,size:36,className:"rounded-lg"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,a.jsx)("div",{className:"truncate text-[14px] font-semibold text-foreground",children:h}),(0,a.jsx)("div",{className:"mt-0.5 truncate text-[12px] text-muted-foreground",children:N})]}),(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,a.jsx)("span",{className:"text-[12px] text-muted-foreground",children:g("instancesCount",{count:r.connections.length})}),(0,a.jsx)(x.m,{online:v,size:"md"})]})]});return b?(0,a.jsx)(u.$,{type:"button",variant:"ghost",onClick:i,"aria-expanded":l,"aria-label":g(l?"collapseAgent":"expandAgent",{agent:h}),className:"flex h-auto w-full items-center justify-start gap-2.5 rounded-lg px-1.5 py-1 hover:bg-[#FBF4EF] dark:hover:bg-[#26241f]",children:y}):(0,a.jsx)("div",{className:"flex items-center gap-2.5",children:y})}},91846:(e,t,n)=>{n.d(t,{bq:()=>u,eb:()=>m,gC:()=>x,l6:()=>d,yv:()=>c});var a=n(90508);n(1856);var s=n(17730),r=n(60532),l=n(89967),i=n(48218),o=n(24377);function d(e){let{...t}=e;return(0,a.jsx)(i.Root,{"data-slot":"select",...t})}function c(e){let{...t}=e;return(0,a.jsx)(i.Value,{"data-slot":"select-value",...t})}function u(e){let{className:t,size:n="default",children:r,...l}=e;return(0,a.jsxs)(i.Trigger,{"data-slot":"select-trigger","data-size":n,className:(0,o.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...l,children:[r,(0,a.jsx)(i.Icon,{asChild:!0,children:(0,a.jsx)(s.A,{className:"size-4 opacity-50"})})]})}function x(e){let{className:t,children:n,position:s="item-aligned",align:r="center",...l}=e;return(0,a.jsx)(i.Portal,{children:(0,a.jsxs)(i.Content,{"data-slot":"select-content",className:(0,o.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md","popper"===s&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:s,align:r,...l,children:[(0,a.jsx)(g,{}),(0,a.jsx)(i.Viewport,{className:(0,o.cn)("p-1","popper"===s&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:n}),(0,a.jsx)(f,{})]})})}function m(e){let{className:t,children:n,...s}=e;return(0,a.jsxs)(i.Item,{"data-slot":"select-item",className:(0,o.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...s,children:[(0,a.jsx)("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,a.jsx)(i.ItemIndicator,{children:(0,a.jsx)(r.A,{className:"size-4"})})}),(0,a.jsx)(i.ItemText,{children:n})]})}function g(e){let{className:t,...n}=e;return(0,a.jsx)(i.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(l.A,{className:"size-4"})})}function f(e){let{className:t,...n}=e;return(0,a.jsx)(i.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(s.A,{className:"size-4"})})}},94643:(e,t,n)=>{n.d(t,{MH:()=>eP,jQ:()=>f,fF:()=>O,jH:()=>_,Bs:()=>q.Bs,Gm:()=>eK,Jk:()=>c.Jk,fb:()=>c.fb,le:()=>a.le});var a=n(95291),s=n(37627),r=n(90508),l=n(39268),i=n(57731),o=n(91385),d=n(24900),c=n(90094);function u(e){var t,n;let{connection:s,size:u}=e,x=(0,l.c)("agentConnections"),m=(0,a.Z5)(),g=(null==(t=s.agentName)?void 0:t.trim())||x("unknownAgent"),f=null!=(n=s.clientVersion)?n:x("versionUnknown"),p=(0,d.g9)(s.host),h=p.isUnknown?x("hostUnknown"):p.label,v=p.isUnknown?x("hostUnknown"):p.title;return(0,r.jsxs)("div",{className:"flex min-w-0 items-center gap-3",children:[(0,r.jsx)(o.AgentAvatar,{name:g,size:"lg"===u?48:"md"===u?40:36,className:"shrink-0 ".concat("lg"===u?"rounded-xl":"rounded-lg")}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"truncate font-semibold text-foreground ".concat("lg"===u?"text-[20px]":"md"===u?"text-[16px]":"text-[14px]"),children:g}),(0,r.jsxs)("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[(0,r.jsx)(c.Mn,{cwd:s.cwd}),(0,r.jsx)(i.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-0.5 text-[10px] font-medium text-muted-foreground",children:m(s.clientType)}),(0,r.jsxs)("span",{title:v,className:"truncate font-mono text-[11px] text-muted-foreground",children:["v",f," \xb7 ",h]})]})]})]})}var x=n(78307);n(21180);var m=n(71388),g=n(24377);function f(e){let{cwd:t,host:n,showHost:a=!0,className:s}=e,i=(0,l.c)(),o=(0,d.kn)(t),c=o.isUnknown?i(o.label):o.label,u=o.isUnknown?i(o.title):o.title,x=(0,d.g9)(n),f=x.isUnknown?i(x.label):x.label,p=x.isUnknown?i(x.title):x.title;return(0,r.jsxs)("span",{className:(0,g.cn)("inline-flex min-w-0 items-center gap-1.5",s),children:[(0,r.jsxs)("span",{title:u,className:(0,g.cn)("inline-flex min-w-0 items-center gap-1 rounded border border-border bg-background px-1.5 py-0.5","font-mono text-[10px]",o.isUnknown?"italic text-muted-foreground":"text-muted-foreground"),children:[(0,r.jsx)(m.A,{className:"size-2.5 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"truncate",children:c})]}),a&&(0,r.jsx)("span",{title:p,className:"shrink-0 truncate font-mono text-[10px] text-muted-foreground",children:f})]})}var p=n(36550),h=n(1856),v=n(67587),b=n(85226),j=n(88853),w=n(50153),N=n(5329),y=n(22922),k=n(15972),C=n(91846),A=n(62990),E=n(67712),S=n(42305);function U(e){return e.map(e=>{var t,n;return{connectionUuid:e.uuid,host:null!=(t=e.host)?t:"",cwd:null!=(n=e.cwd)?n:null,effectiveStatus:e.effectiveStatus}})}async function T(e,t){return I(e,t)}function F(e){let{value:t,onChange:n,onSend:a,pending:s,disabled:i,disabledReason:o,placeholder:d,sendLabel:c,layout:u,controllableExecution:x}=e,m=(0,l.c)("agentConnections"),g=0===t.trim().length,f=i||s||g,h=(0,r.jsxs)(y.$,{type:"button",size:"sm",onClick:a,disabled:f,"aria-label":c,className:"h-8 shrink-0 gap-1.5 rounded-lg bg-primary px-3.5 text-[13px] font-medium text-white hover:bg-[#B56A44] disabled:bg-border disabled:text-[#9A9A9A]",children:[s?(0,r.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,r.jsx)(j.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),c]}),v=null!=x?x:null,N=v?"running"===v.status?(0,r.jsx)(p.yw,{exec:v}):"interrupted"===v.status&&"user"===v.interruptedReason?(0,r.jsx)(p.MG,{exec:v}):"interrupted"===v.status&&"crash"===v.interruptedReason?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:"text-[11px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:m("execCrashExited")}),(0,r.jsx)(p.MG,{exec:v})]}):null:null,C=(0,r.jsxs)("div",{className:"absolute bottom-2 right-2 z-10 flex shrink-0 items-center gap-2",children:[N,h]}),A=i?(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,r.jsx)(w.A,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0",children:o})]}):null;return(0,r.jsxs)("div",{className:"flex flex-col gap-2.5",children:[A,(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsx)(k.T,{value:t,onChange:e=>n(e.target.value),onKeyDown:e=>{(0,S.P)(e)||"Enter"===e.key&&!e.shiftKey&&(e.preventDefault(),f||a())},disabled:i||s,placeholder:d,rows:3,className:"min-h-[76px] resize-none rounded-xl border-border bg-card pb-12 text-[14px] text-foreground placeholder:text-[#9A9A9A] focus-visible:border-primary focus-visible:ring-primary/30"}),C]})]})}function M(e){let{sessionUuid:t,originOnline:n,layout:a="inline",controllableExecution:s,agentUuid:i,onlineConnections:o=[],onSessionStarted:d}=e,c=(0,l.c)("agentConnections"),u=(0,l.c)("daemonChat"),[x,m]=(0,h.useState)(""),[g,f]=(0,h.useState)(!1),[p,b]=(0,h.useState)(!1),j=!n&&!!i&&o.length>0,w=async()=>{let e=x.trim();if(0!==e.length){f(!0);try{let n=await (0,A.tm)("/api/daemon-sessions/".concat(t,"/instruction"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({instructionText:e})});if(!n.ok)return void v.oR.error(await I(n,c("instructionError")));m("")}catch(e){E.q.error("Failed to send daemon instruction:",e),v.oR.error(c("instructionError"))}finally{f(!1)}}};return(0,r.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,r.jsx)(F,{value:x,onChange:m,onSend:w,pending:g,disabled:!n,disabledReason:n?null:u("originOfflineNote"),placeholder:u("replyPlaceholder"),sendLabel:c("send"),layout:a,controllableExecution:s}),j&&(p?(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,r.jsx)("span",{className:"text-[12px] font-medium text-muted-foreground",children:u("continueOnlineHelp")}),(0,r.jsx)(z,{sessionUuid:t,onlineConnections:o,layout:a,onRepointed:d})]}):(0,r.jsxs)(y.$,{type:"button",variant:"outline",size:"sm",onClick:()=>b(!0),className:"h-8 w-fit gap-1.5 rounded-lg border-[#E5D5C6] dark:border-[#33302a] bg-card text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-[#A65F3C]",children:[(0,r.jsx)(N.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),u("continueOnlineAction")]}))]})}function z(e){var t,n,a;let{sessionUuid:s,onlineConnections:i,layout:o,onRepointed:c}=e,u=(0,l.c)("agentConnections"),m=(0,l.c)("assignInstance"),g=(0,l.c)("daemonChat"),f=(0,h.useMemo)(()=>i.map(e=>{var t,n;return{connectionUuid:e.uuid,host:null!=(t=e.host)?t:"",cwd:null!=(n=e.cwd)?n:null,effectiveStatus:e.effectiveStatus}}),[i]),[p,b]=(0,h.useState)(null!=(n=null==(t=i[0])?void 0:t.uuid)?n:""),[w,N]=(0,h.useState)(""),[y,k]=(0,h.useState)(!1),C=null!=(a=f.find(e=>e.connectionUuid===p&&"online"===e.effectiveStatus))?a:null,S=(0,h.useMemo)(()=>new Set(f.map(e=>e.host)).size>1,[f]),U=async()=>{let e=w.trim();if(p&&0!==e.length){k(!0);try{let n=await (0,A.tm)("/api/daemon-sessions/".concat(s,"/repoint"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({connectionUuid:p,instructionText:e})});if(!n.ok)return void v.oR.error(await I(n,u("instructionError")));let a=null;try{var t;let e=await n.json();(null==e?void 0:e.success)&&(null==(t=e.data)?void 0:t.session)&&(a=e.data.session)}catch(e){}v.oR.success(g("continueOnlineStarted")),N(""),a&&(null==c||c(a))}catch(e){E.q.error("Failed to re-point daemon session:",e),v.oR.error(u("instructionError"))}finally{k(!1)}}},T=(()=>{if(!C)return null;let e=(0,d.kn)(C.cwd),t=e.isUnknown?m(e.label):e.label;if(S){let e=(0,d.g9)(C.host),n=e.isUnknown?m(e.label):e.label;return m("sendingToWithHost",{path:t,host:n})}return m("sendingTo",{path:t})})();return(0,r.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-dashed border-border bg-card p-4",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:m("workingDirectory")}),(0,r.jsx)(x.O,{instances:f,selectedConnectionUuid:p||null,onSelect:e=>b(e.connectionUuid),ariaLabel:u("pickConnection")})]}),T&&(0,r.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[(0,r.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0 truncate",children:T})]}),(0,r.jsx)(F,{value:w,onChange:N,onSend:U,pending:y,disabled:!C,disabledReason:C?null:m("offlineCantRun"),placeholder:u("sendInstructionPlaceholder"),sendLabel:u("send"),layout:o})]})}function B(e){var t,n,a;let{agentUuid:s,onlineConnections:i,layout:o,hideHeader:c=!1,onStarted:u}=e,m=(0,l.c)("agentConnections"),g=(0,l.c)("assignInstance"),f=(0,h.useMemo)(()=>U(i),[i]),[p,b]=(0,h.useState)(null!=(n=null==(t=i[0])?void 0:t.uuid)?n:""),[w,N]=(0,h.useState)(""),[y,k]=(0,h.useState)(!1),C=null!=(a=f.find(e=>e.connectionUuid===p&&"online"===e.effectiveStatus))?a:null,S=(0,h.useMemo)(()=>new Set(f.map(e=>e.host)).size>1,[f]),T=async()=>{let e=w.trim();if(p&&0!==e.length){k(!0);try{let n=await (0,A.tm)("/api/daemon-sessions/ad-hoc",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentUuid:s,connectionUuid:p,instructionText:e})});if(!n.ok)return void v.oR.error(await I(n,m("instructionError")));let a=null;try{var t;let e=await n.json();(null==e?void 0:e.success)&&(null==(t=e.data)?void 0:t.session)&&(a=e.data.session)}catch(e){}v.oR.success(m("adHocSessionStarted")),N(""),a&&(null==u||u(a))}catch(e){E.q.error("Failed to start ad-hoc daemon session:",e),v.oR.error(m("instructionError"))}finally{k(!1)}}},M=(()=>{if(!C)return null;let e=(0,d.kn)(C.cwd),t=e.isUnknown?g(e.label):e.label;if(S){let e=(0,d.g9)(C.host),n=e.isUnknown?g(e.label):e.label;return g("sendingToWithHost",{path:t,host:n})}return g("sendingTo",{path:t})})();return(0,r.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-dashed border-border bg-card p-4",children:[!c&&(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("span",{className:"text-[13px] font-semibold text-foreground",children:m("adHocTitle")}),(0,r.jsx)("span",{className:"text-[12px] leading-relaxed text-muted-foreground",children:g("liveSendNote")})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:g("workingDirectory")}),(0,r.jsx)(x.O,{instances:f,selectedConnectionUuid:p||null,onSelect:e=>b(e.connectionUuid),ariaLabel:m("pickConnection")})]}),M&&(0,r.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[(0,r.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0 truncate",children:M})]}),(0,r.jsx)(F,{value:w,onChange:N,onSend:T,pending:y,disabled:!C,disabledReason:C?null:g("offlineCantRun"),placeholder:m("sendInstructionPlaceholder"),sendLabel:m("startSession"),layout:o})]})}async function I(e,t){try{let t=await e.json();if(t&&"string"==typeof t.error&&t.error)return t.error}catch(e){}return t}var R=n(17475),L=n(59208),q=n(18277),D=n(6930);class O extends Error{constructor(e,t){super(null!=t?t:"Dispatch failed with status ".concat(e)),this.name="ConversationalDispatchError",this.status=e,this.serverMessage=t}}function _(e){var t,n,a,s,i,d,c;let{buildInstruction:u,dispatch:m,offlineFallback:g,onStarted:f,defaultAgentUuid:p,projectUuid:v}=e,w=(0,l.c)("conversationalEntry"),N=(0,L.kz)(),F=(0,h.useMemo)(()=>{var e;return(null!=(e=null==N?void 0:N.connections)?e:[]).filter(e=>"online"===e.effectiveStatus)},[null==N?void 0:N.connections]),[M,z]=(0,h.useState)(new Map),B=(0,h.useMemo)(()=>{let e=function(e){let t=new Map;for(let a of e){let e=t.get(a.agentUuid);if(e)e.connections.push(a);else{var n;t.set(a.agentUuid,{agentUuid:a.agentUuid,agentName:(null==(n=a.agentName)?void 0:n.trim())||a.agentUuid.slice(0,8),connections:[a]})}}return[...t.values()]}(F),t=new Set(e.map(e=>e.agentUuid));for(let[n,a]of M)t.has(n)||e.push({agentUuid:n,agentName:a.agentName,connections:[]});return e},[M,F]),[I,_]=(0,h.useState)(null);(0,h.useEffect)(()=>{if(!v)return void z(new Map);let e=!1;return(0,A.tm)("/api/projects/".concat(encodeURIComponent(v),"/agent-cwds")).then(async t=>{var n,a,s;if(!t.ok)return;let r=await t.json(),l=new Map;for(let e of null!=(a=null==r||null==(n=r.data)?void 0:n.agents)?a:[])e.preference&&l.set(e.agent.uuid,{agentName:e.agent.name,target:{actorUserUuid:"",source:"project_fixed",agentUuid:e.agent.uuid,host:e.preference.host,cwd:e.preference.cwd,availability:"valid"===e.preference.status?"ready":"offline"===e.preference.status?"offline":"invalid",promptPolicy:"suppress",connectionUuid:null,agentInstanceUuid:null!=(s=e.preference.anchorAgentInstanceUuid)?s:null}});e||z(l)}).catch(e=>E.q.error("Failed to load project Agent cwd preferences:",e)),()=>{e=!0}},[v]);let P=null!=(a=null!=(n=B.find(e=>e.agentUuid===I))?n:B.find(e=>e.agentUuid===p))?a:1===B.length?B[0]:null,H=P&&null!=(s=null==(t=M.get(P.agentUuid))?void 0:t.target)?s:null,[$,K]=(0,h.useState)(null),V=(0,h.useMemo)(()=>{var e;return U(null!=(e=null==P?void 0:P.connections)?e:[])},[P]),W=null!=(i=H?V.find(e=>e.host===H.host):V.find(e=>e.connectionUuid===$))?i:null,[J,Z]=(0,h.useState)(""),[G,Y]=(0,h.useState)(!1),[Q,X]=(0,h.useState)(null),ee=J.trim(),et=J.length>3e3,en=G||!P||!W||0===ee.length||et,ea=async e=>{let t=await (0,A.tm)("/api/daemon-sessions/ad-hoc",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentUuid:e.agentUuid,connectionUuid:e.connectionUuid,instructionText:u?u(e.userText):e.userText})});if(!t.ok)throw new O(t.status,await T(t,""));try{var n;let e=await t.json();if((null==e?void 0:e.success)&&(null==(n=e.data)?void 0:n.session))return e.data.session}catch(e){}throw new O(t.status,null)},es=async()=>{if(!en&&P&&W){Y(!0),X(null);try{let e=await (null!=m?m:ea)({agentUuid:P.agentUuid,connectionUuid:W.connectionUuid,userText:ee});Z(""),f(e)}catch(e){if(e instanceof O){X(e.serverMessage||(409===e.status?w("connectionWentOffline"):w("sendError"))),409===e.status&&(null==N||N.refreshConnections());return}E.q.error("Failed to dispatch conversational entry:",e),X(w("sendError"))}finally{Y(!1)}}};if(0===F.length&&0===M.size)return(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,r.jsx)("p",{className:"text-[12.5px] leading-relaxed text-muted-foreground",children:w("noOnlineDaemon")}),null!=g?g:(0,r.jsx)(q.Bs,{variant:"compact"})]});let er=J.length>=2500;return(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:w("agentLabel")}),(0,r.jsxs)(C.l6,{value:null!=(d=null==P?void 0:P.agentUuid)?d:"",onValueChange:e=>{_(e),K(null)},children:[(0,r.jsx)(C.bq,{"aria-label":w("agentLabel"),children:(0,r.jsx)(C.yv,{placeholder:w("agentPlaceholder")})}),(0,r.jsx)(C.gC,{children:B.map(e=>(0,r.jsx)(C.eb,{value:e.agentUuid,children:(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(o.AgentAvatar,{name:e.agentName,size:16,className:"rounded-full"}),(0,r.jsx)("span",{children:e.agentName})]})},e.agentUuid))})]})]}),P&&H&&"ready"!==H.availability?(0,r.jsx)(D.Y,{target:H}):P&&!H?(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:w("instanceLabel")}),(0,r.jsx)(x.O,{instances:V,selectedConnectionUuid:null!=(c=null==W?void 0:W.connectionUuid)?c:null,onSelect:e=>K(e.connectionUuid),ariaLabel:w("instanceLabel")})]}):P?null:(0,r.jsx)("p",{className:"text-[12px] text-muted-foreground",children:w("pickAgentFirst")}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(k.T,{value:J,onChange:e=>Z(e.target.value),onKeyDown:e=>{(0,S.P)(e)||"Enter"===e.key&&!e.shiftKey&&(e.preventDefault(),en||es())},disabled:G,placeholder:w("placeholder"),rows:5,className:"min-h-[120px] resize-none rounded-xl border-border bg-card text-[14px] text-foreground placeholder:text-[#9A9A9A] focus-visible:border-primary focus-visible:ring-primary/30"}),er&&(0,r.jsx)("span",{"aria-live":"polite",className:et?"self-end text-[11px] font-medium text-[#B3261E] dark:text-[#F08078]":"self-end text-[11px] text-muted-foreground",children:w("charCounter",{count:J.length,max:3e3})})]}),Q&&(0,r.jsxs)("div",{className:"flex items-start gap-1.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,r.jsx)(R.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0",children:Q})]}),(0,r.jsxs)(y.$,{type:"button",onClick:es,disabled:en,className:"gap-1.5 self-end rounded-lg bg-primary px-4 text-[13px] font-medium text-white hover:bg-[#B56A44] disabled:bg-border disabled:text-[#9A9A9A]",children:[G?(0,r.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,r.jsx)(j.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),Q?w("retry"):w("send")]})]})}var P=n(48416),H=n(78134),$=n(97438),K=n(37915),V=n(6748),W=n(88591),J=n(10263),Z=n(57223);function G(e){let{status:t}=e;return"running"===t?(0,r.jsxs)("span",{"aria-hidden":!0,className:"relative inline-flex h-2.5 w-2.5 items-center justify-center",children:[(0,r.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-primary opacity-30 motion-safe:animate-ping"}),(0,r.jsx)("span",{className:"relative inline-flex h-1.5 w-1.5 rounded-full bg-primary"})]}):"interrupted"===t?(0,r.jsx)(W.A,{"aria-hidden":!0,className:"h-3.5 w-3.5 text-[#B45309] dark:text-[#E0A34E]"}):"error"===t?(0,r.jsx)(R.A,{"aria-hidden":!0,className:"h-3.5 w-3.5 text-[#DC2626] dark:text-[#F08078]"}):(0,r.jsx)("span",{"aria-hidden":!0,className:"h-2 w-2 rounded-full bg-[#D7D2C9] dark:bg-[#2a2822]"})}function Y(e){let{row:t,selected:n,onSelect:s,nowMs:o}=e,d=(0,l.c)("daemonChat"),c=(0,a.Vq)(),u="running"===t.status?d("running"):"interrupted"===t.status?d("statusInterrupted"):"error"===t.status?d("statusError"):null;return(0,r.jsxs)(y.$,{variant:"ghost",onClick:s,"aria-current":n?"true":void 0,className:"relative h-auto w-full justify-start gap-0 rounded-none px-0 py-0 text-left transition-colors ".concat(n?"bg-[#FBF4EF] dark:bg-[#221e1b] hover:bg-[#FBF4EF] dark:hover:bg-[#26241f]":"bg-card hover:bg-background"),children:[n&&(0,r.jsx)("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-primary"}),(0,r.jsxs)("span",{className:"flex w-full items-center gap-3 px-4 py-3.5",children:[(0,r.jsx)("span",{className:"flex w-2.5 shrink-0 justify-center",children:(0,r.jsx)(G,{status:t.status})}),(0,r.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("span",{className:"flex items-center gap-1.5",children:[t.ideaAnchored&&(0,r.jsxs)(i.E,{variant:"secondary",className:"shrink-0 gap-1 border-0 bg-[#F3ECFB] dark:bg-[#221a30] px-1.5 py-0 text-[10px] font-medium text-[#7C5BC0] dark:text-[#B79AF0]",children:[(0,r.jsx)(J.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),d("badgeIdea")]}),(0,r.jsx)("span",{className:"truncate text-[14px] font-semibold text-foreground",children:t.title})]}),(0,r.jsxs)("span",{className:"mt-0.5 flex items-center gap-1.5",children:[u&&(0,r.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-wide ".concat("running"===t.status?"text-primary":"error"===t.status?"text-[#DC2626] dark:text-[#F08078]":"text-[#B45309] dark:text-[#E0A34E]"),children:u}),(0,r.jsx)("span",{className:"truncate font-mono text-[10px] text-muted-foreground",children:c(t.session.lastTurnAt,o)})]})]})]})]})}function Q(){return(0,r.jsxs)("div",{"aria-hidden":!0,className:"flex w-full items-center gap-3 px-4 py-3.5",children:[(0,r.jsx)("span",{className:"flex w-2.5 shrink-0 justify-center",children:(0,r.jsx)(Z.E,{className:"h-2.5 w-2.5 rounded-full"})}),(0,r.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,r.jsx)(Z.E,{className:"h-3.5 w-3/4 rounded"}),(0,r.jsx)(Z.E,{className:"mt-1.5 h-2.5 w-1/3 rounded"})]})]})}function X(e){let{agents:t,selectedAgentUuid:n,onSelectAgent:s,rows:i,selectedSessionUuid:d,onSelectSession:c,onNewConversation:u,visibleCount:x,onLoadMore:m,loading:g=!1}=e,f=(0,l.c)("daemonChat"),p=(0,a.le)(),h=i.slice(0,x),v=i.length>x,b=null===d;return(0,r.jsxs)("div",{className:"flex h-full flex-col gap-3",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5 px-1",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:f("agentSelectLabel")}),(0,r.jsxs)(C.l6,{value:null!=n?n:void 0,onValueChange:s,children:[(0,r.jsx)(C.bq,{"aria-label":f("agentSelectLabel"),className:"w-full rounded-lg border-border bg-card text-[13px] text-foreground",children:(0,r.jsx)(C.yv,{placeholder:f("agentSelectPlaceholder")})}),(0,r.jsx)(C.gC,{children:t.map(e=>(0,r.jsx)(C.eb,{value:e.agentUuid,children:(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(o.AgentAvatar,{name:e.agentName,size:16,className:"rounded-full"}),(0,r.jsx)("span",{children:e.agentName})]})},e.agentUuid))})]})]}),(0,r.jsx)("div",{className:"px-1",children:(0,r.jsxs)(y.$,{type:"button",onClick:u,"aria-current":b?"true":void 0,className:"h-9 w-full justify-center gap-1.5 rounded-lg text-[13px] font-medium ".concat(b?"bg-primary text-white hover:bg-[#B56A44]":"border border-[#E5D2C2] dark:border-[#33302a] bg-[#FBF4EF] dark:bg-[#221e1b] text-primary hover:bg-[#F6E9DF] dark:hover:bg-[#26241f]"),children:[(0,r.jsx)(N.A,{className:"h-4 w-4","aria-hidden":!0}),f("newConversationButton")]})}),(0,r.jsxs)(P.Zp,{"aria-busy":g,className:"flex min-h-0 flex-1 flex-col gap-0 overflow-hidden rounded-2xl border-border bg-card p-0 shadow-none",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-3.5",children:[(0,r.jsx)("span",{className:"font-mono text-[11px] font-medium uppercase tracking-[1px] text-muted-foreground",children:f("listHeader")}),g?(0,r.jsx)(Z.E,{"aria-hidden":!0,className:"h-3 w-4 rounded"}):(0,r.jsx)("span",{className:"font-mono text-[11px] font-medium text-muted-foreground",children:i.length})]}),(0,r.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),g?(0,r.jsx)("div",{"data-testid":"conversation-list-skeleton",className:"flex min-h-0 flex-1 flex-col overflow-y-auto",children:Array.from({length:5}).map((e,t)=>(0,r.jsxs)("div",{children:[(0,r.jsx)(Q,{}),t<4&&(0,r.jsx)("div",{className:"h-px w-full bg-[#F2EEE7] dark:bg-[#201e1a]"})]},t))}):0===i.length?(0,r.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-1.5 p-8 text-center",children:[(0,r.jsx)("p",{className:"text-[13px] font-medium text-muted-foreground",children:f("noSessions.title")}),(0,r.jsx)("p",{className:"max-w-[220px] text-[12px] leading-relaxed text-muted-foreground",children:f("noSessions.body")})]}):(0,r.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto",children:[h.map((e,t)=>(0,r.jsxs)("div",{children:[(0,r.jsx)(Y,{row:e,selected:d===e.session.uuid,onSelect:()=>c(e.session.uuid),nowMs:p}),t<h.length-1&&(0,r.jsx)("div",{className:"h-px w-full bg-[#F2EEE7] dark:bg-[#201e1a]"})]},e.session.uuid)),v&&(0,r.jsx)("div",{className:"px-4 py-3",children:(0,r.jsx)(y.$,{variant:"ghost",size:"sm",onClick:m,className:"h-8 w-full rounded-lg text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:f("loadMore")})})]})]})]})}var ee=n(94599),et=n(60532),en=n(25373),ea=n(30028),es=n(17730),er=n(44575),el=n(89967),ei=n(64993),eo=n(81750),ed=n(94310),ec=n(17001);function eu(e){if("number"!=typeof e||!Number.isFinite(e)||e<0)return"0";if(e<1e3)return String(Math.round(e));let t=(e,t)=>{let n=e.toFixed(1).replace(/\.0$/,"");return"".concat(n).concat(t)};return e<1e6?t(e/1e3,"k"):t(e/1e6,"M")}function ex(e){let{label:t,ariaLabel:n,rows:a}=e;return(0,r.jsxs)(ec.AM,{children:[(0,r.jsx)(ec.Wv,{asChild:!0,children:(0,r.jsxs)("button",{type:"button",className:"inline-flex cursor-pointer items-center gap-1 rounded-md bg-secondary px-1.5 py-0 text-[10px] font-medium tabular-nums text-muted-foreground outline-none focus-visible:ring-1 focus-visible:ring-ring","aria-label":n,children:[(0,r.jsx)(ed.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),t]})}),(0,r.jsx)(ec.hl,{align:"start",className:"w-fit min-w-[8rem] rounded-md p-2",children:(0,r.jsx)("div",{className:"flex flex-col gap-0.5 text-[11px]",children:a.map(e=>(0,r.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,r.jsx)("span",{className:"opacity-70",children:e.label}),(0,r.jsx)("span",{className:"font-mono tabular-nums",children:e.value})]},e.label))})})]})}function em(e){var t,n,a,s,i,o;let{usage:d}=e,c=(0,l.c)("daemonChat");if(!(d&&(null!=(t=d.inputTokens)?t:0)+(null!=(n=d.outputTokens)?n:0)+(null!=(a=d.cacheCreationTokens)?a:0)+(null!=(s=d.cacheReadTokens)?s:0)>0))return null;let u=(null!=(i=d.inputTokens)?i:0)+(null!=(o=d.outputTokens)?o:0),x=[];return null!=d.inputTokens&&x.push({label:c("usageInput"),value:d.inputTokens.toLocaleString()}),null!=d.outputTokens&&x.push({label:c("usageOutput"),value:d.outputTokens.toLocaleString()}),null!=d.cacheReadTokens&&x.push({label:c("usageCacheRead"),value:d.cacheReadTokens.toLocaleString()}),null!=d.cacheCreationTokens&&x.push({label:c("usageCacheWrite"),value:d.cacheCreationTokens.toLocaleString()}),d.model&&x.push({label:c("usageModel"),value:d.model}),(0,r.jsx)(ex,{label:c("usageBadgeLabel",{total:eu(u)}),ariaLabel:c("usageBadgeAria",{total:u}),rows:x})}function eg(e){let{totalInputTokens:t,totalOutputTokens:n,totalCacheReadTokens:a,totalCacheCreationTokens:s}=e,i=(0,l.c)("daemonChat"),o=t+n;if(o<=0)return null;let d=[{label:i("usageInput"),value:t.toLocaleString()},{label:i("usageOutput"),value:n.toLocaleString()}];return a>0&&d.push({label:i("usageCacheRead"),value:a.toLocaleString()}),s>0&&d.push({label:i("usageCacheWrite"),value:s.toLocaleString()}),(0,r.jsx)(ex,{label:i("usageBadgeLabel",{total:eu(o)}),ariaLabel:i("conversationUsageAria",{total:o}),rows:d})}var ef=n(12790),ep=n.n(ef),eh=n(32470),ev=n(83553),eb=n(69011),ej=n(77770),ew=n(84052),eN=n(4459),ey=n(23380),ek=n(72256),eC=n(20578),eA=n(16045),eE=n(97261);function eS(e){let{message:t,agentName:n}=e,a=(0,l.c)("daemonChat"),s="user"===t.role,i=s?a("roleYou"):n||a("roleAgent"),d=function(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})}(t.createdAt);return(0,r.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[!s&&(0,r.jsx)(o.AgentAvatar,{name:n||a("roleAgent"),size:"xs",className:"rounded-md"}),(0,r.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide ".concat(s?"text-primary":"text-muted-foreground"),children:i}),d&&(0,r.jsx)("span",{className:"font-mono text-[10px] tabular-nums text-muted-foreground",children:d})]}),s?(0,r.jsx)("p",{className:"whitespace-pre-wrap break-words text-[13px] leading-relaxed text-foreground",children:t.text}):(0,r.jsx)("div",{className:"prose prose-sm w-full min-w-0 max-w-full break-words text-[13px] leading-relaxed text-foreground [&_a]:break-all [&_code]:[overflow-wrap:anywhere] [&_img]:h-auto [&_img]:max-w-full [&_pre]:max-w-full [&_pre]:overflow-x-auto [&_table]:block [&_table]:max-w-full [&_table]:overflow-x-auto",children:(0,r.jsx)(eE.MarkdownContent,{children:t.text})})]})}let eU={task_assigned:{icon:eh.A,labelKey:"triggerTask"},mentioned:{icon:ev.A,labelKey:"triggerMention"},elaboration:{icon:eb.A,labelKey:"triggerElaboration"},elaboration_verified:{icon:ej.A,labelKey:"triggerElaborationVerified"},start_development:{icon:ew.A,labelKey:"triggerStartDevelopment"},yolo_requested:{icon:eN.A,labelKey:"triggerYoloRequested"},human_instruction:{icon:ey.A,labelKey:"triggerInstruction"},resume:{icon:ek.A,labelKey:"triggerResume"}};function eT(e){var t,n,s,o,d;let{turn:c,agentName:u,linkedExecution:x,mergedEvents:m=[]}=e,g=(0,l.c)("daemonChat"),f=eU[c.trigger],p=null!=(s=null==f?void 0:f.icon)?s:eh.A,h=g(f?f.labelKey:"triggerUnknown"),v="running"===c.status,j="pending"===c.status,w="interrupted"===c.status,N="merged"===c.status,y="ended"===c.status||w,k=g("running"===c.status?"turnStatusRunning":"pending"===c.status?"turnStatusPending":w?"turnStatusInterrupted":N?"turnStatusMerged":"turnStatusEnded"),C=c.messages.filter(e=>!e.uuid.startsWith("synthetic:")),A=x?(0,a.BS)(x):null,E=g((null==x?void 0:x.entityType)==="idea"?"openIdea":"openTask"),S=null!=(o=null==(t=c.promptText)?void 0:t.trim())?o:"",U=y&&"human_instruction"===c.trigger&&0===C.length&&S.length>0,T=null!=(d=null==(n=c.relayError)?void 0:n.trim())?d:"",F=y&&0===C.length&&T.length>0;return(0,r.jsxs)("div",{className:"flex gap-3",children:[(0,r.jsx)("div",{"aria-hidden":!0,className:"relative w-[3px] shrink-0 rounded-full ".concat(v||j?"bg-primary":"bg-[#EFEBE4] dark:bg-[#201e1b]"),children:v&&(0,r.jsx)("span",{className:"absolute inset-0 rounded-full bg-primary opacity-40 motion-safe:animate-pulse"})}),(0,r.jsxs)("div",{className:"min-w-0 flex-1 pb-2",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1",children:[(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,r.jsx)(p,{className:"h-3.5 w-3.5 text-primary","aria-hidden":!0}),(0,r.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-foreground",children:h})]}),(0,r.jsx)("span",{className:"font-mono text-[10px] uppercase tracking-wide text-muted-foreground",children:g("turnLabel",{seq:c.seq})}),(0,r.jsxs)(i.E,{variant:"secondary",className:"gap-1 border-0 px-1.5 py-0 text-[10px] font-medium ".concat(v?"bg-[#FBF0E8] dark:bg-[#221e1b] text-primary":j?"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-[#9A8C7E]":w?"bg-[#F5EEE3] dark:bg-[#221e19] text-[#A8763E] dark:text-[#E0B070]":"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground"),title:w&&c.interruptedReason?c.interruptedReason:void 0,children:[v&&(0,r.jsx)(b.A,{className:"h-2.5 w-2.5 motion-safe:animate-spin","aria-hidden":!0}),k]}),(0,r.jsx)(em,{usage:c.usage}),A&&(0,r.jsxs)(ep(),{href:A,className:"group inline-flex items-center gap-1 text-[11px] font-medium text-primary hover:text-[#B56A44]",children:[E,(0,r.jsx)(eC.A,{className:"h-3 w-3","aria-hidden":!0})]})]}),c.promptText&&c.promptText.trim().length>0&&(0,r.jsx)("p",{className:"mt-2 whitespace-pre-wrap break-words rounded-lg bg-[#FCFBF8] dark:bg-[#1e1d1b] px-3 py-2 text-[13px] leading-relaxed text-muted-foreground",children:c.promptText}),(0,r.jsx)("div",{className:"mt-3 flex min-w-0 flex-col gap-3",children:C.length>0?C.map(e=>(0,r.jsx)(eS,{message:e,agentName:u},e.uuid)):N?(0,r.jsx)("p",{className:"text-[12px] italic text-muted-foreground",children:g("turnMergedNote")}):F?(0,r.jsxs)("div",{className:"flex flex-col gap-1 rounded-lg border border-[#EADFCB] dark:border-[#3a3222] bg-[#FBF5EA] dark:bg-[#221d14] px-3 py-2.5",children:[(0,r.jsx)("p",{className:"text-[12px] leading-relaxed text-[#8A6D3B] dark:text-[#D9B473]",children:g("turnRelayFailed")}),(0,r.jsx)("p",{className:"whitespace-pre-wrap break-words font-mono text-[11px] leading-relaxed text-[#A98B54] dark:text-[#B89355]",children:T})]}):U?(0,r.jsx)("div",{className:"flex flex-col gap-2 rounded-lg border border-[#EADFCB] dark:border-[#3a3222] bg-[#FBF5EA] dark:bg-[#221d14] px-3 py-2.5",children:(0,r.jsx)("p",{className:"text-[12px] leading-relaxed text-[#8A6D3B] dark:text-[#D9B473]",children:g("turnEndedNoReply")})}):(0,r.jsx)("p",{className:"text-[12px] italic text-muted-foreground",children:g("turnNoMessages")})}),m.length>0&&(0,r.jsxs)(eo.Nt,{className:"mt-3",children:[(0,r.jsxs)(eo.R6,{className:"group inline-flex items-center gap-1.5 rounded-md text-[12px] font-medium text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[(0,r.jsx)(eA.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),g("turnMergedCount",{count:m.length}),(0,r.jsx)(es.A,{className:"h-3.5 w-3.5 transition-transform group-data-[state=open]:rotate-180","aria-hidden":!0})]}),(0,r.jsx)(eo.Ke,{className:"mt-2 flex flex-col gap-2.5",children:m.map(e=>(0,r.jsx)(eF,{turn:e.turn,linkedExecution:e.linkedExecution},e.turn.uuid))})]})]})]})}function eF(e){var t,n,s;let{turn:i,linkedExecution:o}=e,d=(0,l.c)("daemonChat"),c=eU[i.trigger],u=null!=(n=null==c?void 0:c.icon)?n:eh.A,x=d(c?c.labelKey:"triggerUnknown"),m=o?(0,a.BS)(o):null,g=d((null==o?void 0:o.entityType)==="idea"?"openIdea":"openTask"),f=null!=(s=null==(t=i.promptText)?void 0:t.trim())?s:"";return(0,r.jsxs)("div",{className:"flex min-w-0 flex-col gap-1 border-l border-border pl-3",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-0.5",children:[(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,r.jsx)(u,{className:"h-3 w-3 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:x})]}),(0,r.jsx)("span",{className:"font-mono text-[10px] uppercase tracking-wide text-muted-foreground",children:d("turnLabel",{seq:i.seq})}),m&&(0,r.jsxs)(ep(),{href:m,className:"group inline-flex items-center gap-1 text-[11px] font-medium text-primary hover:text-primary/80",children:[g,(0,r.jsx)(eC.A,{className:"h-3 w-3","aria-hidden":!0})]})]}),f.length>0&&(0,r.jsx)("p",{className:"whitespace-pre-wrap break-words text-[12px] leading-relaxed text-muted-foreground",children:f})]})}function eM(e){let{label:t,value:n,mono:a}=e;return(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-medium uppercase tracking-wide text-muted-foreground",children:t}),(0,r.jsx)("div",{className:"mt-0.5 truncate text-[13px] font-medium text-foreground ".concat(a?"font-mono":""),children:n})]})}function ez(e){let{cwd:t,host:n,crossHost:a}=e,s=(0,l.c)(),i=(0,l.c)("transcriptHeader"),o=(0,d.kn)(t),c=o.isUnknown?s(o.label):o.label,u=o.isUnknown?s(o.title):o.title,x=a?(0,d.g9)(n):null,g=x?x.isUnknown?s(x.label):x.label:null,f=x?x.isUnknown?s(x.title):x.title:null;return(0,r.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[(0,r.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md bg-[#F1ECE3] dark:bg-[#201e1a] px-2 py-0.5 ".concat(o.isUnknown?"italic text-muted-foreground":"text-muted-foreground"),title:"".concat(i("cwdAriaLabel"),": ").concat(u),"aria-label":"".concat(i("cwdAriaLabel"),": ").concat(u),children:[(0,r.jsx)(m.A,{className:"h-3 w-3 shrink-0 text-[#9A8C7E]","aria-hidden":!0}),(0,r.jsx)("span",{className:"truncate font-mono text-[11px] font-medium",children:c})]}),null!==g&&(0,r.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 text-[11px] font-medium text-muted-foreground",title:"".concat(i("hostAriaLabel"),": ").concat(f),"aria-label":"".concat(i("hostAriaLabel"),": ").concat(f),children:[(0,r.jsx)(ee.A,{className:"h-3 w-3 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{className:"truncate ".concat((null==x?void 0:x.isUnknown)?"italic":""),children:g})]})]})}function eB(e){let{backendSessionId:t}=e,n=(0,l.c)("daemonChat"),[a,s]=(0,h.useState)(!1),i=n(a?"sessionIdCopied":"copySessionId"),o=async()=>{try{var e;await (null==(e=navigator.clipboard)?void 0:e.writeText(t)),s(!0),setTimeout(()=>s(!1),2e3)}catch(e){E.q.error("Failed to copy session id:",e)}};return(0,r.jsxs)(y.$,{variant:"ghost",size:"sm",onClick:o,title:i,"aria-label":i,"aria-live":"polite",className:"inline-flex h-auto items-center gap-1.5 px-1.5 py-0.5 text-[12px] font-medium text-muted-foreground hover:bg-transparent hover:text-foreground",children:[a?(0,r.jsx)(et.A,{className:"h-3.5 w-3.5 text-green-600","aria-hidden":!0}):(0,r.jsx)(en.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),(0,r.jsx)("span",{className:a?"inline":"hidden lg:inline",children:i})]})}function eI(e){var t,n,s,o,d,c,x,m,g;let{session:f,turns:p,title:v,loading:j,error:N,originConnection:k,originOnline:C,originCrossHost:A=!1,sessionExecutions:E,executionsByUuid:S,footerLayout:U="inline",hasMoreEarlier:T,loadingEarlier:F,onLoadEarlier:z,originAgentOnlineConnections:B=[],onSessionStarted:I}=e,R=(0,l.c)("daemonChat"),L=(0,a.le)(),q=(0,a.Vq)(),D=(0,a.pb)(),O=(0,a.l5)(),_=(null==k||null==(t=k.agentName)?void 0:t.trim())||R("roleAgent"),H=k&&(null==f?void 0:f.runtimeCwd)?{...k,cwd:f.runtimeCwd}:k,$=(0,h.useMemo)(()=>{var e;let t=p.find(e=>"running"===e.status);return null!=(e=null!=t?t:p[p.length-1])?e:null},[p]),K=(0,h.useMemo)(()=>(function(e){let t=[];for(let n of e){let e=t[t.length-1];"merged"===n.status&&e&&"merged"!==e.absorbing.status?e.merged.push(n):t.push({absorbing:n,merged:[]})}return t})(p),[p]),V=null!=(o=null==f?void 0:f.totalInputTokens)?o:0,W=null!=(d=null==f?void 0:f.totalOutputTokens)?d:0,J=null!=(c=null==f?void 0:f.totalCacheReadTokens)?c:0,Z=null!=(x=null==f?void 0:f.totalCacheCreationTokens)?x:0,G=(0,h.useMemo)(()=>{let e=E.find(e=>"running"===e.status);if(e)return e;let t=E.find(e=>"interrupted"===e.status&&"user"===e.interruptedReason);if(t)return t;let n=E.find(e=>"interrupted"===e.status&&"crash"===e.interruptedReason);return null!=n?n:null},[E]),Y=(0,h.useMemo)(()=>G&&"running"===G.status?G:null,[G]),Q=(0,h.useRef)(null),X=null==(n=p[p.length-1])?void 0:n.uuid,ee=null!=(m=null==(s=p[p.length-1])?void 0:s.messages.length)?m:0;(0,h.useEffect)(()=>{var e;null==(e=Q.current)||e.scrollIntoView({block:"end"})},[X,ee]);let et=(null==f?void 0:f.status)==="ended";return(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-2 px-6 py-2.5 lg:gap-3 lg:py-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,r.jsx)("h3",{className:"truncate text-[17px] font-semibold text-foreground min-w-0",children:v}),H&&(0,r.jsx)("div",{className:"shrink-0",children:(0,r.jsx)(ez,{cwd:H.cwd,host:H.host,crossHost:A})})]}),(0,r.jsxs)(eo.Nt,{children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,r.jsx)(i.E,{variant:"secondary",className:"border-0 px-2 py-0.5 text-[10px] font-medium ".concat(et?"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground":"bg-[#DCFCE7] dark:bg-[#13291d] text-[#15803D] dark:text-[#4FD07A]"),children:R(et?"statusEnded":"statusActive")}),$&&"running"===$.status&&(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-[11px] font-medium text-primary",children:[(0,r.jsxs)("span",{className:"relative inline-flex h-2 w-2 items-center justify-center",children:[(0,r.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-primary opacity-40 motion-safe:animate-ping"}),(0,r.jsx)("span",{className:"relative inline-flex h-1 w-1 rounded-full bg-primary"})]}),(0,r.jsx)("span",{className:"hidden sm:inline",children:R("running")}),(null==Y?void 0:Y.startedAt)&&(0,r.jsx)("span",{className:"font-mono tabular-nums text-primary",title:R("runningElapsedLabel"),children:O(Y.startedAt,L)})]}),(0,r.jsx)(eg,{totalInputTokens:V,totalOutputTokens:W,totalCacheReadTokens:J,totalCacheCreationTokens:Z}),((null==f?void 0:f.backendSessionId)||k)&&(0,r.jsxs)("div",{className:"ml-auto flex items-center gap-1",children:[(null==f?void 0:f.backendSessionId)&&(0,r.jsx)(eB,{backendSessionId:f.backendSessionId}),k&&(0,r.jsxs)(eo.R6,{className:"group inline-flex items-center gap-1.5 text-[12px] font-medium text-muted-foreground hover:text-foreground",children:[(0,r.jsx)(ea.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),R("detailsLabel"),(0,r.jsx)(es.A,{className:"h-3.5 w-3.5 transition-transform group-data-[state=open]:rotate-180","aria-hidden":!0})]})]})]}),H&&(0,r.jsx)(eo.Ke,{children:(0,r.jsxs)("div",{className:"mt-3 flex flex-col gap-3 rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] p-4",children:[(0,r.jsx)(u,{connection:H,size:"sm"}),(0,r.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[C&&(0,r.jsx)(eM,{label:R("detailUptime"),value:D(H.connectedAt,L),mono:!0}),(0,r.jsx)(eM,{label:R("detailHost"),value:""===H.host?R("detailsHostUnknown"):H.host,mono:!0}),H.startedAt&&(0,r.jsx)(eM,{label:R("detailStarted"),value:q(H.startedAt,L)})]})]})})]})]}),(0,r.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),N?(0,r.jsx)("div",{className:"flex flex-1 items-center justify-center p-8",children:(0,r.jsxs)(P.Zp,{className:"items-center gap-3 rounded-2xl border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center shadow-none",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,r.jsx)(w.A,{className:"h-6 w-6 text-[#B45309] dark:text-[#E0A34E]"})}),(0,r.jsx)("h4",{className:"text-base font-semibold text-[#92400E] dark:text-[#E0A34E]",children:R("loadErrorTitle")}),(0,r.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:R("loadErrorBody")})]})}):j?(0,r.jsx)("div",{className:"flex flex-1 items-center justify-center p-8 text-[13px] text-muted-foreground",children:R("transcriptLoading")}):(0,r.jsx)(ei.F,{className:"daemon-transcript-scroll min-h-0 w-full flex-1",children:(0,r.jsxs)("div",{className:"flex w-full min-w-0 flex-col gap-3 px-6 py-3 lg:gap-5 lg:py-5",children:[(0,r.jsxs)("p",{className:"flex items-start gap-1.5 text-[11px] leading-relaxed text-muted-foreground",children:[(0,r.jsx)(er.A,{className:"mt-0.5 h-3 w-3 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{children:R("privacyNote")})]}),T&&(0,r.jsx)("div",{className:"flex justify-center",children:(0,r.jsxs)(y.$,{variant:"ghost",size:"sm",onClick:z,disabled:F,className:"h-8 gap-1.5 rounded-lg text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:[F?(0,r.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,r.jsx)(el.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),R(F?"loadingEarlier":"loadEarlier")]})}),K.map(e=>{var t;return(0,r.jsx)(eT,{turn:e.absorbing,agentName:_,linkedExecution:e.absorbing.executionUuid&&null!=(t=S.get(e.absorbing.executionUuid))?t:null,mergedEvents:e.merged.map(e=>{var t;return{turn:e,linkedExecution:e.executionUuid&&null!=(t=S.get(e.executionUuid))?t:null}})},e.absorbing.uuid)}),(0,r.jsx)("div",{ref:Q})]})}),!N&&f&&(0,r.jsx)("div",{className:"flex flex-col gap-3 border-t border-[#EFEBE4] dark:border-[#2a2a2e] bg-background px-6 py-2.5 lg:py-4",children:(0,r.jsx)(M,{sessionUuid:f.uuid,originOnline:C,layout:U,controllableExecution:G,agentUuid:null!=(g=null==k?void 0:k.agentUuid)?g:null,onlineConnections:B,onSessionStarted:I})})]})}function eR(e){let{agentUuid:t,agentName:n,onlineConnections:a,onStarted:s}=e,i=(0,l.c)("daemonChat"),o=null!==t&&a.length>0;return(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5 px-6 py-4",children:[(0,r.jsxs)("h3",{className:"flex items-center gap-2 text-[17px] font-semibold text-foreground",children:[(0,r.jsx)(N.A,{className:"h-[18px] w-[18px] text-primary","aria-hidden":!0}),i("newConversationTitle")]}),(0,r.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:t?i("newConversationBody",{agent:n}):i("newConversationNoAgent")})]}),(0,r.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),(0,r.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto px-6 py-5",children:o?(0,r.jsx)(B,{agentUuid:t,onlineConnections:a,layout:"inline",hideHeader:!0,onStarted:s}):(0,r.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-2.5 rounded-xl border border-dashed border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center",children:[(0,r.jsx)("div",{className:"flex h-11 w-11 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,r.jsx)(w.A,{className:"h-5 w-5 text-[#B45309] dark:text-[#E0A34E]","aria-hidden":!0})}),(0,r.jsx)("p",{className:"text-[13px] font-medium text-[#92400E] dark:text-[#E0A34E]",children:i("newConversationNoOnlineTitle")}),(0,r.jsx)("p",{className:"max-w-[300px] text-[12px] leading-relaxed text-muted-foreground",children:i("newConversationNoOnlineBody")})]})})]})}function eL(e,t){return e.filter(e=>(function(e,t){var n;let a=null!=(n=t.directIdeaUuid)?n:t.sessionId.includes("::")?t.sessionId.split("::")[0]:null;return a?"idea"===e.entityType&&e.entityUuid===a||e.directIdeaUuid===a:"daemon_session"===e.entityType&&e.entityUuid===t.sessionId})(e,t))}function eq(e,t){var n;let a=eL(null!=(n=e[t.originConnectionUuid])?n:[],t);return a.length>0?a:eL(Object.values(e).flat(),t)}function eD(e,t){if(0===e.length||t.seq>e[e.length-1].seq)return[...e,t];let n=e.findIndex(e=>e.seq>t.seq),a=-1===n?e.length:n;return[...e.slice(0,a),t,...e.slice(a)]}function eO(e,t){let n=new Map;for(let t of e)n.set(t.uuid,t);for(let e of t){let t=n.get(e.uuid);if(!t){n.set(e.uuid,e);continue}let a=new Set(t.messages.map(e=>e.uuid)),s=e.messages.filter(e=>!a.has(e.uuid));n.set(e.uuid,{...e,messages:[...t.messages,...s]})}return[...n.values()].sort((e,t)=>e.seq-t.seq)}function e_(){var e,t,n;let a=(0,l.c)("daemonChat"),{status:s,connections:i,executionsByConnection:o,setOpenSession:d,subscribeTranscript:c,focusTarget:u,clearChatFocusTarget:x}=(0,L.$d)(),[m,g]=(0,h.useState)([]),[f,p]=(0,h.useState)("loading"),v=(0,h.useCallback)(async()=>{try{let t=await (0,A.tm)("/api/daemon-sessions");if(!t.ok)return void p("error");let n=await t.json();if(n.success){var e;g(null!=(e=n.data.sessions)?e:[]),p("ok")}else p("error")}catch(e){E.q.error("Failed to fetch daemon sessions:",e),p("error")}},[]);(0,h.useEffect)(()=>{v();let e=setInterval(v,15e3);return()=>clearInterval(e)},[v]);let b=(0,h.useMemo)(()=>{let e=new Map;for(let n of i){var t;!e.has(n.agentUuid)&&(null==(t=n.agentName)?void 0:t.trim())&&e.set(n.agentUuid,n.agentName.trim())}return[...new Set([...i.map(e=>e.agentUuid),...m.map(e=>e.agentUuid)])].map(t=>{var n;return{agentUuid:t,agentName:null!=(n=e.get(t))?n:a("roleAgent")}})},[i,m,a]),j=(0,h.useMemo)(()=>{var e,t,n;let a=null;for(let e of m)(!a||e.lastTurnAt>a.lastTurnAt)&&(a={agentUuid:e.agentUuid,lastTurnAt:e.lastTurnAt});return null!=(n=null!=(t=null==a?void 0:a.agentUuid)?t:null==(e=b[0])?void 0:e.agentUuid)?n:null},[m,b]),[N,k]=(0,h.useState)(null),C=N&&b.some(e=>e.agentUuid===N)?N:j;(0,h.useEffect)(()=>{!N&&"ok"===s&&"ok"===f&&j&&k(j)},[N,s,f,j]);let S=(0,h.useCallback)(e=>{var t,n,s;if(null==(t=e.title)?void 0:t.trim())return e.title.trim();if(e.directIdeaUuid)return(null==(s=e.ideaTitle)?void 0:s.trim())?e.ideaTitle.trim():a("conversationIdea",{id:e.directIdeaUuid.slice(0,8)});let r=null==(n=e.firstInstruction)?void 0:n.trim();if(r){let e=r.replace(/\s+/g," ").trim();return e.length>60?"".concat(e.slice(0,60).trimEnd(),"…"):e}return a("conversationAdHoc",{id:e.sessionId.slice(0,8)})},[a]),U=(0,h.useMemo)(()=>C?m.filter(e=>e.agentUuid===C).sort((e,t)=>e.lastTurnAt<t.lastTurnAt?1:-1).map(e=>({session:e,title:S(e),ideaAnchored:null!=e.directIdeaUuid,status:function(e,t){let n=eL(eq(e,t),t);if(n.some(e=>"running"===e.status))return"running";let a=n.find(e=>"interrupted"===e.status);return a?"user"===a.interruptedReason?"interrupted":"error":null}(o,e)})):[],[m,C,o,S]),[T,F]=(0,h.useState)(12);(0,h.useEffect)(()=>{F(12)},[C]);let[M,z]=(0,h.useState)(null),B=(0,h.useMemo)(()=>{var e;return null!=(e=U.find(e=>e.session.uuid===M))?e:null},[U,M]),[I,R]=(0,h.useState)(null),[D,O]=(0,h.useState)([]),[_,H]=(0,h.useState)(!1),[$,W]=(0,h.useState)(!1),[J,Z]=(0,h.useState)(!1),[G,Y]=(0,h.useState)(!1),[Q,ee]=(0,h.useState)(null),et=(0,h.useRef)(0),en=(0,h.useRef)(new Set),ea=null!=(t=null==B?void 0:B.session.uuid)?t:null;(0,h.useEffect)(()=>(d(ea),()=>d(null)),[ea,d]),(0,h.useEffect)(()=>{if(!ea){R(null),O([]),W(!1),Z(!1),ee(null),en.current=new Set;return}let e=++et.current;en.current=new Set,H(!0),W(!1),Z(!1),ee(null),O([]),(async()=>{try{let n=await (0,A.tm)("/api/daemon-sessions/".concat(ea));if(e!==et.current)return;if(!n.ok)return void W(!0);let a=await n.json();if(e!==et.current)return;if(a.success){var t;let e=a.data;for(let n of(R(e),null!=(t=e.turns)?t:[]))("ended"===n.status||"interrupted"===n.status)&&en.current.add(n.uuid);O(t=>{var n;return eO(t,null!=(n=e.turns)?n:[])}),Z(!!e.hasMore),ee(null!==e.oldestTurnSeq&&null!==e.oldestMsgSeq?{turnSeq:e.oldestTurnSeq,msgSeq:e.oldestMsgSeq}:null)}else W(!0)}catch(t){if(e!==et.current)return;E.q.error("Failed to fetch daemon session detail:",t),W(!0)}finally{e===et.current&&H(!1)}})()},[ea]);let es=(0,h.useCallback)(async()=>{if(!ea||G||!Q)return;let{turnSeq:e,msgSeq:t}=Q,n=et.current;Y(!0);try{let a=await (0,A.tm)("/api/daemon-sessions/".concat(ea,"?beforeTurnSeq=").concat(e,"&beforeMsgSeq=").concat(t));if(n!==et.current||!a.ok)return;let s=await a.json();if(n!==et.current)return;if(s.success){let e=s.data;O(t=>{var n;return eO(null!=(n=e.turns)?n:[],t)}),Z(!!e.hasMore),null!==e.oldestTurnSeq&&null!==e.oldestMsgSeq&&ee({turnSeq:e.oldestTurnSeq,msgSeq:e.oldestMsgSeq})}}catch(e){E.q.error("Failed to load earlier transcript turns:",e)}finally{Y(!1)}},[ea,G,Q]);(0,h.useEffect)(()=>{if(ea)return c(e=>{if(O(t=>(function(e,t){var n,a;let s=e.findIndex(e=>e.uuid===t.turn.uuid);if("turn_created"===t.trigger){let n={...t.turn,messages:[]};if(-1===s)return eD(e,n);let a=[...e];return a[s]={...n,messages:e[s].messages},a}if(-1===s)return eD(e,{...t.turn,messages:null!=(n=t.messages)?n:[]});let r=[...e];if("turn_status_changed"===t.trigger)return r[s]={...r[s],...t.turn},r;let l=new Set(r[s].messages.map(e=>e.uuid)),i=(null!=(a=t.messages)?a:[]).filter(e=>!l.has(e.uuid));return r[s]={...r[s],...t.turn,messages:[...r[s].messages,...i]},r})(t,e)),"turn_status_changed"===e.trigger){let t=function(e,t){var n,a,s,r,l;if("ended"!==t.status&&"interrupted"!==t.status)return null;let i=null!=(n=t.usage)?n:null;if(!i||e.has(t.uuid))return null;let o=null!=(a=i.inputTokens)?a:0,d=null!=(s=i.outputTokens)?s:0,c=null!=(r=i.cacheReadTokens)?r:0,u=null!=(l=i.cacheCreationTokens)?l:0;return 0===o&&0===d&&0===c&&0===u?null:{addInput:o,addOutput:d,addCacheRead:c,addCacheWrite:u}}(en.current,e.turn);t&&R(n=>n?(en.current.add(e.turn.uuid),{...n,session:{...n.session,totalInputTokens:n.session.totalInputTokens+t.addInput,totalOutputTokens:n.session.totalOutputTokens+t.addOutput,totalCacheReadTokens:n.session.totalCacheReadTokens+t.addCacheRead,totalCacheCreationTokens:n.session.totalCacheCreationTokens+t.addCacheWrite}}):n)}})},[ea,c]);let er=(0,h.useMemo)(()=>{var e;let t=null==I?void 0:I.session.originConnectionUuid;return t&&null!=(e=i.find(e=>e.uuid===t))?e:null},[I,i]),el=(null==er?void 0:er.effectiveStatus)==="online",ei=(0,h.useMemo)(()=>{let e=null==er?void 0:er.agentUuid;if(!e)return!1;let t=new Set;for(let n of i)n.agentUuid===e&&""!==n.host&&t.add(n.host);return t.size>1},[er,i]),eo=(0,h.useMemo)(()=>C?i.filter(e=>e.agentUuid===C&&"online"===e.effectiveStatus):[],[i,C]),ed=(0,h.useMemo)(()=>{let e=null==er?void 0:er.agentUuid;return e?i.filter(t=>t.agentUuid===e&&"online"===t.effectiveStatus):[]},[er,i]),ec=null!=(n=null==(e=b.find(e=>e.agentUuid===C))?void 0:e.agentName)?n:a("roleAgent"),eu=(0,h.useMemo)(()=>{let e=null==I?void 0:I.session;return e?eq(o,e):[]},[I,o]),ex=(0,h.useMemo)(()=>{let e=new Map;for(let t of eu)e.set(t.uuid,t);return e},[eu]),em=B?B.title:I?S(I.session):"",[eg,ef]=(0,h.useState)(!1);(0,h.useEffect)(()=>{eg&&M&&!U.some(e=>e.session.uuid===M)&&ef(!1)},[U,eg,M]);let ep=(0,h.useCallback)(e=>{z(e)},[]),eh=(0,h.useCallback)(()=>{z(null),ef(!0)},[]),ev=(0,h.useCallback)(e=>{let t={uuid:e.uuid,agentUuid:e.agentUuid,sessionId:e.sessionId,directIdeaUuid:e.directIdeaUuid,originConnectionUuid:e.originConnectionUuid,status:e.status,title:e.title,lastTurnAt:e.lastTurnAt,originOnline:!0,firstInstruction:null,ideaTitle:null};g(n=>{let a=n.findIndex(e=>e.uuid===t.uuid);if(-1===a)return[t,...n];let s=[...n];return s[a]={...s[a],originConnectionUuid:e.originConnectionUuid,originOnline:!0,status:e.status,lastTurnAt:e.lastTurnAt},s}),R(t=>t&&t.session.uuid===e.uuid?{...t,session:{...t.session,originConnectionUuid:e.originConnectionUuid,status:e.status,lastTurnAt:e.lastTurnAt}}:t),z(e.uuid),v()},[v]);(0,h.useEffect)(()=>{u&&(k(u.agentUuid),u.sessionSeed?(ev(u.sessionSeed),ef(!0)):u.sessionUuid?(z(u.sessionUuid),ef(!0)):z(null),x())},[u,x,ev]);let{body:eb,listLoading:ej}=function(e){let t="loading"===e.listStatus,n="error"===e.listStatus&&0===e.sessionCount,a="ok"===e.listStatus&&0===e.sessionCount&&0===e.agentCount;return{body:n?"error":a?"no-agents":"body",listLoading:t}}({listStatus:f,sessionCount:m.length,agentCount:b.length}),ew=e=>{var t;return(0,r.jsx)(eI,{session:null!=(t=null==I?void 0:I.session)?t:null,turns:D,title:em,loading:_,error:$,originConnection:er,originOnline:el,originCrossHost:ei,sessionExecutions:eu,executionsByUuid:ex,footerLayout:e,hasMoreEarlier:J,loadingEarlier:G,onLoadEarlier:es,originAgentOnlineConnections:ed,onSessionStarted:ev})},eN=ew("inline"),ey=(0,r.jsx)(eR,{agentUuid:C,agentName:ec,onlineConnections:eo,onStarted:ev}),ek=B?ew("stacked"):ey;return(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col bg-background",children:[eg&&(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col lg:hidden",children:[(0,r.jsx)("div",{className:"flex shrink-0 items-center gap-1 border-b border-[#EFEBE4] dark:border-[#2a2a2e] bg-background px-3 py-2.5",children:(0,r.jsxs)(y.$,{variant:"ghost",size:"sm",onClick:()=>ef(!1),className:"h-9 gap-1 px-2 text-[15px] font-normal text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:[(0,r.jsx)(K.A,{className:"h-5 w-5"}),a("mobileBack")]})}),(0,r.jsx)("div",{className:"min-h-0 flex-1",children:ek})]}),(0,r.jsxs)("div",{className:"".concat(eg?"hidden lg:flex":"flex"," h-full min-h-0 flex-col gap-3 overflow-y-auto px-4 py-3 lg:overflow-hidden md:px-8 md:py-4 lg:gap-3 lg:px-8 lg:py-4"),children:[(0,r.jsx)("header",{className:"flex flex-col",children:(0,r.jsx)("h2",{className:"text-[22px] font-semibold text-foreground lg:text-[24px]",children:a("title")})}),"error"===eb?(0,r.jsxs)(P.Zp,{className:"items-center gap-3 rounded-2xl border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center shadow-none md:p-12",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,r.jsx)(w.A,{className:"h-6 w-6 text-[#B45309] dark:text-[#E0A34E]"})}),(0,r.jsx)("h3",{className:"text-base font-semibold text-[#92400E] dark:text-[#E0A34E]",children:a("loadErrorTitle")}),(0,r.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:a("loadErrorBody")})]}):"no-agents"===eb?(0,r.jsxs)(P.Zp,{className:"items-center gap-4 rounded-2xl border-border bg-card p-8 text-center shadow-none md:p-12",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-primary/[0.08]",children:(0,r.jsx)(V.A,{className:"h-6 w-6 text-primary"})}),(0,r.jsx)("h3",{className:"text-base font-semibold text-foreground",children:a("noAgents.title")}),(0,r.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:a("noAgents.body")}),(0,r.jsx)("div",{className:"w-full max-w-md text-left",children:(0,r.jsx)(q.Bs,{variant:"prominent"})})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"flex flex-col gap-3 lg:hidden",children:(0,r.jsx)(X,{agents:b,selectedAgentUuid:C,onSelectAgent:e=>{k(e),z(null)},rows:U,selectedSessionUuid:M,onSelectSession:e=>{ep(e),ef(!0)},onNewConversation:eh,visibleCount:T,onLoadMore:()=>F(e=>e+12),loading:ej})}),(0,r.jsxs)("div",{className:"hidden min-h-0 flex-1 gap-5 lg:flex",children:[(0,r.jsx)("div",{className:"flex w-[320px] shrink-0 flex-col",children:(0,r.jsx)(X,{agents:b,selectedAgentUuid:C,onSelectAgent:e=>{k(e),z(null)},rows:U,selectedSessionUuid:M,onSelectSession:ep,onNewConversation:eh,visibleCount:T,onLoadMore:()=>F(e=>e+12),loading:ej})}),(0,r.jsx)(P.Zp,{className:"flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border-border bg-card p-0 shadow-none",children:B?eN:ey})]})]})]})]})}function eP(){let e=(0,l.c)("daemonChat"),{modalOpen:t,setModalOpen:n}=(0,L.$d)();return(0,r.jsx)($.lG,{open:t,onOpenChange:n,children:(0,r.jsxs)($.Cf,{className:"flex h-dvh max-h-dvh w-screen max-w-none flex-col gap-0 overflow-hidden rounded-none border-0 p-0 sm:h-[92vh] sm:max-h-[92vh] sm:w-[min(96vw,1100px)] sm:max-w-[min(96vw,1100px)] sm:rounded-lg sm:border",children:[(0,r.jsxs)(H.bL,{children:[(0,r.jsx)($.L3,{children:e("title")}),(0,r.jsx)($.rr,{children:e("subtitle")})]}),(0,r.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:(0,r.jsx)(e_,{})})]})})}var eH=n(43057),e$=n(16349);function eK(e){let{mention:t,displayName:n}=e,a=(0,l.c)("mention"),c=(0,l.c)("agentPresence"),{openChatForAgent:u}=(0,L.$d)(),{user:x}=(0,e$.As)(),{pinned:m,online:g,ownerUuid:f,host:p,cwd:v}=function(e){let{connections:t}=(0,L.$d)(),{uuid:n,pinnedHost:a,pinnedCwd:s,runtimeCwd:r}=e,l="pinnedHost"in e||"pinnedCwd"in e;return(0,h.useMemo)(()=>(function(e,t){var n,a,s,r,l,i;let o=void 0!==e.pinnedHost||void 0!==e.pinnedCwd,d=t.filter(t=>t.agentUuid===e.uuid);if(o){let t=null!=(s=e.pinnedHost)?s:null,n=null!=(r=e.pinnedCwd)?r:null,i=d.find(a=>e.runtimeCwd?a.host===t&&"online"===a.effectiveStatus:a.host===t&&a.cwd===n);return i?{pinned:!0,online:"online"===i.effectiveStatus,ownerUuid:i.ownerUuid,host:e.runtimeCwd?t:i.host,cwd:e.runtimeCwd?n:i.cwd}:{pinned:!0,online:!1,ownerUuid:null!=(l=null==(a=d[0])?void 0:a.ownerUuid)?l:null,host:t,cwd:n}}let c=d.find(e=>"online"===e.effectiveStatus);return{pinned:!1,online:void 0!==c,ownerUuid:null!=(i=null==(n=null!=c?c:d[0])?void 0:n.ownerUuid)?i:null,host:null,cwd:null}})(l?{uuid:n,pinnedHost:a,pinnedCwd:s,runtimeCwd:r}:{uuid:n},t),[t,n,a,s,r,l])}(void 0!==t.pinnedHost||void 0!==t.pinnedCwd?{uuid:t.uuid,pinnedHost:t.pinnedHost,pinnedCwd:t.pinnedCwd}:{uuid:t.uuid}),b=(null==x?void 0:x.uuid)!=null&&x.uuid===f&&g,j=a(g?"online":"offline"),w=m?(0,d.kn)(v):null,N=m?(0,d.g9)(null!=p?p:""):null;return(0,r.jsxs)(ec.AM,{children:[(0,r.jsx)(ec.Wv,{asChild:!0,children:(0,r.jsxs)(i.E,{variant:"secondary",className:"cursor-pointer gap-1 align-baseline","aria-label":a("badgeAria",{name:n,status:j}),children:[(0,r.jsx)(s.m,{online:g}),(0,r.jsxs)("span",{children:["@",n]})]})}),(0,r.jsx)(ec.hl,{className:"w-64",align:"start",children:(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(o.AgentAvatar,{name:n,size:"sm",className:"rounded-full"}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("p",{className:"truncate text-sm font-semibold text-foreground",children:n}),(0,r.jsxs)("p",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,r.jsx)(s.m,{online:g}),j]})]})]}),m&&w&&N&&(0,r.jsxs)("dl",{className:"flex flex-col gap-1.5 text-xs",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,r.jsx)("dt",{className:"text-muted-foreground",children:a("workingDirectory")}),(0,r.jsx)("dd",{className:"truncate font-mono text-foreground",title:w.isUnknown?c("unknownPath"):w.title,children:w.isUnknown?c("unknownPath"):w.label})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,r.jsx)("dt",{className:"text-muted-foreground",children:a("host")}),(0,r.jsx)("dd",{className:"truncate font-mono text-foreground",title:N.isUnknown?c("unknownHost"):N.title,children:N.isUnknown?c("unknownHost"):N.label})]})]}),b&&(0,r.jsxs)(y.$,{size:"sm",variant:"outline",className:"w-full",onClick:()=>{u(t.uuid,m?{host:null!=p?p:"",cwd:null!=v?v:null}:void 0)},children:[(0,r.jsx)(eH.A,{}),a("openConversation")]})]})})]})}n(72530)},95291:(e,t,n)=>{n.d(t,{BS:()=>m,Vq:()=>l,Z5:()=>u,l5:()=>c,le:()=>r,pb:()=>d,tN:()=>x});var a=n(1856),s=n(39268);function r(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3,[t,n]=(0,a.useState)(()=>Date.now());return(0,a.useEffect)(()=>{let t=setInterval(()=>n(Date.now()),e);return()=>clearInterval(t)},[e]),t}function l(){let e=(0,s.c)("time");return(0,a.useCallback)((t,n)=>{let a=n-new Date(t).getTime(),s=Math.floor(a/6e4),r=Math.floor(a/36e5),l=Math.floor(a/864e5);return s<1?e("justNow"):s<60?e("minutesAgo",{minutes:s}):r<24?e("hoursAgo",{hours:r}):e("daysAgo",{days:l})},[e])}function i(e){return e<10?"0".concat(e):String(e)}function o(){let e=(0,s.c)("agentConnections");return(0,a.useCallback)((t,n)=>{let a=Math.floor(Math.max(0,n-new Date(t).getTime())/1e3),s=Math.floor(a/86400),r=Math.floor(a%86400/3600),l=Math.floor(a%3600/60),o="".concat(i(r),":").concat(i(l),":").concat(i(a%60));return s>0?e("uptimeMonoDays",{days:s,time:o}):o},[e])}let d=o,c=o;function u(){let e=(0,s.c)("agentConnections");return(0,a.useCallback)(t=>{switch(t){case"claude_code":return e("clientClaudeCode");case"openclaw":return e("clientOpenclaw");case"codex":return e("clientCodex");case"kiro":return e("clientKiro");default:return e("clientUnknown")}},[e])}function x(){let e=(0,s.c)("agentConnections");return(0,a.useCallback)(t=>{switch(t){case"task":return e("entityTask");case"idea":return e("entityIdea");case"proposal":return e("entityProposal");case"document":return e("entityDocument");case"daemon_session":return e("entityConversation");default:return e("entityUnknown")}},[e])}function m(e){if(!e.projectUuid)return null;switch(e.entityType){case"task":return"/projects/".concat(e.projectUuid,"/tasks/").concat(e.entityUuid);case"idea":return"/projects/".concat(e.projectUuid,"/dashboard?panel=").concat(e.entityUuid);case"proposal":return"/projects/".concat(e.projectUuid,"/proposals/").concat(e.entityUuid);case"document":return"/projects/".concat(e.projectUuid,"/documents/").concat(e.entityUuid);default:return null}}},97261:(e,t,n)=>{n.d(t,{MarkdownContent:()=>u});var a=n(90508),s=n(1856),r=n(65700),l=n(19169),i=n(26190);let o=l.a,d=(0,l.V)({themes:["github-dark","github-dark"]});l.a,i.a;let c={mermaid:{fullscreen:!0,download:!0,copy:!0,panZoom:!0}};function u(e){let{children:t,components:n,allowedTags:l,literalTagContent:u}=e,x=function(){let[e,t]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{let e=document.documentElement,n=()=>t(e.classList.contains("dark"));n();let a=new MutationObserver(n);return a.observe(e,{attributes:!0,attributeFilter:["class"]}),()=>a.disconnect()},[]),e}(),m=(0,s.useMemo)(()=>({config:{theme:x?"dark":"default"}}),[x]),g=(0,s.useMemo)(()=>({code:x?d:o,mermaid:i.a}),[x]);return(0,a.jsx)(r.jH,{plugins:g,controls:c,mermaid:m,components:n,allowedTags:l,literalTagContent:u,children:t},x?"dark":"light")}}}]);
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[94643],{6930:(e,t,n)=>{n.d(t,{Y:()=>c});var a=n(90508),s=n(12790),r=n.n(s),l=n(23675),i=n(26260),o=n(52309),d=n(39268);function c(e){var t,n;let{target:s}=e,c=(0,d.c)("fixedCwdAnchor"),u=(0,l.useParams)();return(0,a.jsxs)("div",{role:"region","aria-label":c("title"),className:"space-y-2 rounded-lg border border-border bg-background p-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium text-foreground",children:[(0,a.jsx)(i.A,{className:"h-4 w-4 text-primary","aria-hidden":!0}),c("title")]}),(0,a.jsxs)("dl",{className:"grid grid-cols-[auto_minmax(0,1fr)] gap-x-3 gap-y-1 text-[11px]",children:[(0,a.jsx)("dt",{className:"text-muted-foreground",children:c("host")}),(0,a.jsx)("dd",{className:"truncate font-mono text-foreground",children:null!=(t=s.host)?t:c("unknown")}),(0,a.jsx)("dt",{className:"text-muted-foreground",children:c("cwd")}),(0,a.jsx)("dd",{className:"break-all font-mono text-foreground",children:null!=(n=s.cwd)?n:c("unknown")}),(0,a.jsx)("dt",{className:"text-muted-foreground",children:c("status")}),(0,a.jsx)("dd",{className:"text-foreground",children:c("availability.".concat(s.availability))})]}),(0,a.jsxs)(r(),{href:"/projects/".concat(u.uuid,"/dashboard?settings=agent-cwds"),className:"inline-flex items-center gap-1.5 text-[11px] font-medium text-primary hover:underline",children:[(0,a.jsx)(o.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),c("manage")]})]})}},16349:(e,t,n)=>{n.d(t,{As:()=>c,OJ:()=>d});var a=n(90508),s=n(1856),r=n(91814),l=n(62990),i=n(67712);let o=(0,s.createContext)(null);function d(e){let{children:t}=e,n=(0,r.r)(),[d,c]=(0,s.useState)(null),[u,x]=(0,s.useState)(null),[m,g]=(0,s.useState)(!0),[f,p]=(0,s.useState)(null),h=(0,s.useCallback)(()=>{c(null),x(null),p("Session expired. Please log in again."),(0,l.cC)(),n.push("/login")},[n]),v=(0,s.useCallback)(async()=>{try{let e=await (0,l.tm)("/api/session");if(401===e.status&&(e=await (0,l.tm)("/api/session"),401===e.status&&await (0,l.IT)()&&(e=await (0,l.tm)("/api/session")),401===e.status))return h(),!1;let t=await e.json();if(t.success)return c(t.data.user),x(t.data.company),!0;return!1}catch(e){return!1}},[h]);(0,s.useEffect)(()=>{(async()=>{g(!0),await v(),g(!1)})()},[v]);let b=(0,s.useRef)(v);b.current=v;let j=(0,s.useRef)(!1);(0,s.useEffect)(()=>{let e=async()=>{if(!j.current){j.current=!0;try{await b.current()}finally{j.current=!1}}},t=t=>{t.persisted&&e()},n=()=>{"visible"===document.visibilityState&&e()};return window.addEventListener("pageshow",t),document.addEventListener("visibilitychange",n),()=>{window.removeEventListener("pageshow",t),document.removeEventListener("visibilitychange",n)}},[]);let w=async()=>{try{await fetch("/api/session",{method:"DELETE"}),await (0,l.ri)(),c(null),x(null),n.push("/login")}catch(e){i.q.error("Logout error:",e),(0,l.w9)(),n.push("/login")}},N=async()=>{await v()};return(0,a.jsx)(o.Provider,{value:{user:d,company:u,loading:m,error:f,logout:w,refreshSession:N},children:t})}function c(){let e=(0,s.useContext)(o);if(!e)throw Error("useAuth must be used within an AuthProvider");return e}},17001:(e,t,n)=>{n.d(t,{AM:()=>l,Wv:()=>i,hl:()=>o});var a=n(90508);n(1856);var s=n(79919),r=n(24377);function l(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"popover",...t})}function i(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"popover-trigger",...t})}function o(e){let{className:t,align:n="center",sideOffset:l=4,...i}=e;return(0,a.jsx)(s.Portal,{children:(0,a.jsx)(s.Content,{"data-slot":"popover-content",align:n,sideOffset:l,className:(0,r.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",t),...i})})}},18277:(e,t,n)=>{n.d(t,{Bs:()=>v});var a=n(90508),s=n(1856),r=n(12790),l=n.n(r),i=n(39268),o=n(60532),d=n(25373),c=n(39180),u=n(22922),x=n(67712);let m="@chorus-aidlc/chorus",g="npx ".concat(m," daemon"),f="npx ".concat(m," login"),p="/onboarding";function h(e){let{command:t}=e,n=(0,i.c)("daemonConnectCta"),[r,l]=(0,s.useState)(!1),c=async()=>{try{var e;await (null==(e=navigator.clipboard)?void 0:e.writeText(t)),l(!0),setTimeout(()=>l(!1),2e3)}catch(e){x.q.error("Failed to copy daemon command:",e)}};return(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("code",{className:"flex-1 overflow-x-auto rounded-md bg-foreground px-3 py-2 font-mono text-[12.5px] leading-relaxed text-background",children:t}),(0,a.jsx)(u.$,{variant:"outline",size:"sm",onClick:c,"aria-label":n(r?"copied":"copy"),"aria-live":"polite",className:"shrink-0",children:r?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.A,{className:"mr-1 h-4 w-4 text-green-500"}),n("copied")]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.A,{className:"mr-1 h-4 w-4"}),n("copy")]})})]})}function v(e){let{variant:t}=e,n=(0,i.c)("daemonConnectCta");return"compact"===t?(0,a.jsxs)("div",{className:"flex flex-col gap-2.5 px-1 py-1.5",children:[(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(c.A,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":!0}),(0,a.jsx)("p",{className:"text-[12.5px] leading-relaxed text-muted-foreground",children:n("body")})]}),(0,a.jsx)(h,{command:g}),(0,a.jsx)("p",{className:"text-[11.5px] leading-relaxed text-muted-foreground",children:n("loginNote",{command:f})}),(0,a.jsx)(l(),{href:p,className:"text-[12px] font-medium text-primary hover:text-[#A65F3C] hover:underline",children:n("learnMore")})]}):(0,a.jsxs)("div",{className:"flex w-full flex-col gap-3 rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] p-5 text-left",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(c.A,{className:"h-4 w-4 text-primary","aria-hidden":!0}),(0,a.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:n("headline")})]}),(0,a.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:n("bodyLong")}),(0,a.jsx)(h,{command:g}),(0,a.jsx)("p",{className:"text-[12px] leading-relaxed text-muted-foreground",children:n("loginNote",{command:f})}),(0,a.jsx)(l(),{href:p,className:"text-[12.5px] font-medium text-primary hover:text-[#A65F3C] hover:underline",children:n("learnMore")})]})}},21180:(e,t,n)=>{n.d(t,{V:()=>u});var a=n(90508),s=n(1856),r=n(39268),l=n(42305),i=n(22922),o=n(97438),d=n(78307),c=n(41837);function u(e){var t;let{open:n,agentName:u,instances:x,onConfirm:m,agentUuid:g,onTemporaryConfirm:f,onCancel:p}=e,h=(0,r.c)("wakeCwdPicker"),[v,b]=(0,s.useState)(null),[j,w]=(0,s.useState)(!1);(0,s.useEffect)(()=>{if(n){var e;b(null!=(e=x[0])?e:null),w(!1)}},[n,x]);let N=new Set(x.map(e=>e.host)).size;return(0,a.jsx)(o.lG,{open:n,onOpenChange:e=>{e||p()},children:(0,a.jsxs)(o.Cf,{className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,a.jsxs)(o.c7,{className:"shrink-0",children:[(0,a.jsx)(o.L3,{children:h("title")}),(0,a.jsx)(o.rr,{children:h("subtitle",{name:u,count:x.length,hosts:N})})]}),(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",onKeyDown:e=>{!(j||"Enter"!==e.key||(0,l.P)(e))&&v&&(e.preventDefault(),m(v))},children:j&&g&&f?(0,a.jsx)(c.e,{agentUuid:g,instances:x,confirmLabel:h("useOnce"),onValidated:e=>f({agentUuid:e.agentUuid,validationRequestUuid:e.validationRequestUuid})}):(0,a.jsx)(d.O,{instances:x,selectedConnectionUuid:null!=(t=null==v?void 0:v.connectionUuid)?t:null,onSelect:b,ariaLabel:h("title")})}),(0,a.jsxs)(o.Es,{className:"shrink-0",children:[(0,a.jsx)(i.$,{variant:"ghost",onClick:p,children:h("cancel")}),g&&f&&(0,a.jsx)(i.$,{variant:"outline",onClick:()=>w(e=>!e),children:h(j?"registeredDirectories":"browseAnother")}),!j&&(0,a.jsx)(i.$,{disabled:!v,onClick:()=>{v&&m(v)},children:h("confirm")})]})]})})}},24900:(e,t,n)=>{n.d(t,{g9:()=>l,kn:()=>r});let a="agentPresence.unknownPath",s="agentPresence.unknownHost";function r(e){var t,n;let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null===e)return{label:a,title:a,isUnknown:!0};let r=null!=(t=s.tailSegments)?t:2,l=null!=(n=s.charBudget)?n:28,i=e.replace(/\\/g,"/").split("/").filter(e=>e.length>0);if(0===i.length)return{label:e,title:e,isUnknown:!1};let o=i.length>r,d=i.slice(-r),c=(e,t)=>{let n=e.join("/");return t?"".concat("…/").concat(n):n},u=d,x=o,m=c(u,x);for(;m.length>l&&u.length>1;)m=c(u=u.slice(1),x=!0);return{label:m,title:e,isUnknown:!1}}function l(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(""===e)return{label:s,title:s,isUnknown:!0};let a=null!=(t=n.charBudget)?t:18;if(e.length<=a)return{label:e,title:e,isUnknown:!1};let r=Math.max(0,a-1);return{label:"".concat(e.slice(0,r)).concat("…"),title:e,isUnknown:!1}}},36550:(e,t,n)=>{n.d(t,{MG:()=>k,lb:()=>C,wL:()=>A,yw:()=>y});var a=n(90508),s=n(1856),r=n(39268),l=n(67587),i=n(12790),o=n.n(i),d=n(13142),c=n(85226),u=n(59133),x=n(88591),m=n(93134),g=n(43057),f=n(20578),p=n(10263),h=n(57731),v=n(22922),b=n(51817),j=n(62990),w=n(67712),N=n(95291);function y(e){var t;let{exec:n}=e,i=(0,r.c)("agentConnections"),o=(0,r.c)("common"),[u,x]=(0,s.useState)(!1),[m,g]=(0,s.useState)(!1),f=(null==(t=n.entityTitle)?void 0:t.trim())||i("execEntityUnknown"),p=async()=>{g(!0);try{let e=await (0,j.tm)("/api/daemon/control",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:"interrupt",targetConnectionUuid:n.connectionUuid,entityType:n.entityType,entityUuid:n.entityUuid})});if(!e.ok){let t=i("interruptError");try{let n=await e.json();n&&"string"==typeof n.error&&n.error&&(t=n.error)}catch(e){}l.oR.error(t);return}l.oR.success(i("interruptSuccess",{title:f})),x(!1)}catch(e){w.q.error("Failed to request daemon interrupt:",e),l.oR.error(i("interruptError"))}finally{g(!1)}};return(0,a.jsxs)(b.Lt,{open:u,onOpenChange:e=>!m&&x(e),children:[(0,a.jsx)(b.tv,{asChild:!0,children:(0,a.jsxs)(v.$,{variant:"ghost",size:"sm","aria-label":i("interruptAria"),className:"h-7 shrink-0 gap-1.5 rounded-lg px-2.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E] hover:bg-[#FEF3C7] dark:hover:bg-[#33270f] hover:text-[#92400E]",children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),i("interrupt")]})}),(0,a.jsxs)(b.EO,{children:[(0,a.jsxs)(b.wd,{children:[(0,a.jsx)(b.r7,{children:i("interruptConfirmTitle")}),(0,a.jsx)(b.$v,{children:i("interruptConfirmBody",{title:f})})]}),(0,a.jsxs)(b.ck,{children:[(0,a.jsx)(b.Zr,{disabled:m,children:o("cancel")}),(0,a.jsx)(b.Rx,{variant:"destructive",disabled:m,onClick:e=>{e.preventDefault(),p()},children:m?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(c.A,{className:"mr-2 h-4 w-4 motion-safe:animate-spin","aria-hidden":!0}),i("interrupting")]}):i("interruptConfirmAction")})]})]})]})}function k(e){var t;let{exec:n}=e,i=(0,r.c)("agentConnections"),[o,d]=(0,s.useState)(!1),x=(null==(t=n.entityTitle)?void 0:t.trim())||i("execEntityUnknown"),m=async()=>{d(!0);try{let e=await (0,j.tm)("/api/daemon/resume",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({connectionUuid:n.connectionUuid,entityType:n.entityType,entityUuid:n.entityUuid})});if(!e.ok){let t=i("resumeError");try{let n=await e.json();n&&"string"==typeof n.error&&n.error&&(t=n.error)}catch(e){}l.oR.error(t);return}l.oR.success(i("resumeSuccess",{title:x}))}catch(e){w.q.error("Failed to request daemon resume:",e),l.oR.error(i("resumeError"))}finally{d(!1)}};return(0,a.jsxs)(v.$,{variant:"ghost",size:"sm",disabled:o,"aria-label":i("resumeAria"),onClick:()=>void m(),className:"h-7 shrink-0 gap-1.5 rounded-lg px-2.5 text-[12px] font-medium text-[#15803D] dark:text-[#4FD07A] hover:bg-[#DCFCE7] dark:hover:bg-[#13291d] hover:text-[#166534]",children:[o?(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,a.jsx)(u.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),o?i("resuming"):i("resume")]})}function C(e){var t,n;let{exec:s,nowMs:l,layout:i="inline"}=e,d=(0,r.c)("agentConnections"),u=(0,N.l5)(),v=(0,N.tN)(),b="running"===s.status,j="interrupted"===s.status,w=j&&"user"===s.interruptedReason,C="stacked"===i,A="daemon_session"===s.entityType,E=A?(null==(t=s.entityTitle)?void 0:t.trim())||d("execConversation"):(null==(n=s.entityTitle)?void 0:n.trim())||d("execEntityUnknown"),S=(0,N.BS)(s),U=C?"line-clamp-2":"truncate",T=(0,a.jsx)("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg ".concat(b?"bg-primary/[0.08]":j?"bg-[#FEF3C7] dark:bg-[#33270f]":"bg-[#F0EDE8] dark:bg-[#1f1e1c]"),"aria-hidden":!0,children:b?(0,a.jsx)(c.A,{className:"h-4 w-4 text-primary motion-safe:animate-spin"}):j?(0,a.jsx)(x.A,{className:"h-4 w-4 text-[#B45309] dark:text-[#E0A34E]"}):(0,a.jsx)(m.A,{className:"h-4 w-4 text-muted-foreground"})}),F=(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[A?(0,a.jsx)(g.A,{className:"h-3.5 w-3.5 shrink-0 text-primary","aria-hidden":!0}):(0,a.jsx)(h.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0 text-[10px] font-medium text-muted-foreground",children:v(s.entityType)}),S?(0,a.jsxs)(o(),{href:S,className:"group inline-flex min-w-0 items-center gap-1.5 ".concat(U," text-[14px] font-medium text-foreground hover:text-primary"),children:[(0,a.jsx)("span",{className:U,children:E}),(0,a.jsx)(f.A,{className:"h-3.5 w-3.5 shrink-0 text-[#C8C3BA] group-hover:text-primary"})]}):(0,a.jsx)("span",{className:"block ".concat(U," text-[14px] font-medium ").concat(A?"text-foreground":"text-muted-foreground"),children:E})]}),s.rootIdeaTitle&&(0,a.jsxs)("div",{className:"mt-1 flex items-center gap-1.5",children:[(0,a.jsx)(p.A,{className:"h-3 w-3 shrink-0 text-[#9A8C7E]","aria-hidden":!0}),(0,a.jsx)("span",{className:"".concat(C?"":"truncate"," text-[11px] text-[#9A8C7E]"),children:d("execSession",{idea:s.rootIdeaTitle})})]})]}),M=b?(0,a.jsxs)(a.Fragment,{children:[s.startedAt&&(0,a.jsx)("span",{className:"font-mono text-[12px] font-medium tabular-nums text-[#15803D] dark:text-[#4FD07A]",title:d("execElapsedLabel"),children:u(s.startedAt,l)}),(0,a.jsx)(y,{exec:s})]}):j?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(h.E,{variant:"secondary",className:"shrink-0 gap-1 border-0 bg-[#FEF3C7] dark:bg-[#33270f] px-2 py-0.5 text-[10px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,a.jsx)(x.A,{className:"h-3 w-3","aria-hidden":!0}),d(w?"execInterruptedUser":"execInterruptedCrash")]}),(0,a.jsx)(k,{exec:s})]}):(0,a.jsx)("span",{className:"text-[11px] font-medium text-muted-foreground",children:d("execWaiting")});return C?(0,a.jsxs)("li",{className:"flex flex-col gap-2 rounded-xl border border-border bg-card px-3.5 py-3",children:[(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[T,F]}),(0,a.jsx)("div",{className:"flex flex-wrap items-center gap-2 pl-11",children:M})]}):(0,a.jsxs)("li",{className:"flex items-center gap-3 rounded-xl border border-border bg-card px-3.5 py-3",children:[T,F,b||j?(0,a.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:M}):(0,a.jsx)("span",{className:"shrink-0 text-[11px] font-medium text-muted-foreground",children:d("execWaiting")})]})}function A(e){let{icon:t,label:n,count:s,children:r}=e;return(0,a.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(t,{className:"h-4 w-4 text-primary","aria-hidden":!0}),(0,a.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-muted-foreground",children:n}),(0,a.jsx)(h.E,{variant:"secondary",className:"border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0 font-mono text-[10px] font-medium text-[#9A8C7E]",children:s})]}),(0,a.jsx)("ul",{className:"flex flex-col gap-2",children:r})]})}},37627:(e,t,n)=>{n.d(t,{m:()=>s});var a=n(90508);function s(e){let{online:t,size:n="sm"}=e,s="md"===n?"h-2.5 w-2.5":"h-2 w-2";return t?(0,a.jsxs)("span",{"aria-hidden":!0,className:"relative inline-flex ".concat(s," items-center justify-center"),children:[(0,a.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-[#22C55E] opacity-30 motion-safe:animate-ping"}),(0,a.jsx)("span",{className:"relative inline-flex ".concat("md"===n?"h-1.5 w-1.5":"h-1 w-1"," rounded-full bg-[#22C55E]")})]}):(0,a.jsx)("span",{"aria-hidden":!0,className:"".concat(s," rounded-full bg-[#9A9A9A] opacity-60")})}n(57731)},41033:(e,t,n)=>{n.d(t,{C:()=>o,z:()=>i});var a=n(90508);n(1856);var s=n(97964),r=n(63197),l=n(24377);function i(e){let{className:t,...n}=e;return(0,a.jsx)(r.Root,{"data-slot":"radio-group",className:(0,l.cn)("grid gap-3",t),...n})}function o(e){let{className:t,...n}=e;return(0,a.jsx)(r.Item,{"data-slot":"radio-group-item",className:(0,l.cn)("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...n,children:(0,a.jsx)(r.Indicator,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center",children:(0,a.jsx)(s.A,{className:"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})})})}},51817:(e,t,n)=>{n.d(t,{$v:()=>f,EO:()=>u,Lt:()=>i,Rx:()=>p,Zr:()=>h,ck:()=>m,r7:()=>g,tv:()=>o,wd:()=>x});var a=n(90508);n(1856);var s=n(90299),r=n(24377),l=n(22922);function i(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"alert-dialog",...t})}function o(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"alert-dialog-trigger",...t})}function d(e){let{...t}=e;return(0,a.jsx)(s.Portal,{"data-slot":"alert-dialog-portal",...t})}function c(e){let{className:t,...n}=e;return(0,a.jsx)(s.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,r.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...n})}function u(e){let{className:t,size:n="default",...l}=e;return(0,a.jsxs)(d,{children:[(0,a.jsx)(c,{}),(0,a.jsx)(s.Content,{"data-slot":"alert-dialog-content","data-size":n,className:(0,r.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",t),...l})]})}function x(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,r.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",t),...n})}function m(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,r.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",t),...n})}function g(e){let{className:t,...n}=e;return(0,a.jsx)(s.Title,{"data-slot":"alert-dialog-title",className:(0,r.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",t),...n})}function f(e){let{className:t,...n}=e;return(0,a.jsx)(s.Description,{"data-slot":"alert-dialog-description",className:(0,r.cn)("text-muted-foreground text-sm",t),...n})}function p(e){let{className:t,variant:n="default",size:i="default",...o}=e;return(0,a.jsx)(l.$,{variant:n,size:i,asChild:!0,children:(0,a.jsx)(s.Action,{"data-slot":"alert-dialog-action",className:(0,r.cn)(t),...o})})}function h(e){let{className:t,variant:n="outline",size:i="default",...o}=e;return(0,a.jsx)(l.$,{variant:n,size:i,asChild:!0,children:(0,a.jsx)(s.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,r.cn)(t),...o})})}},57223:(e,t,n)=>{n.d(t,{E:()=>r});var a=n(90508),s=n(24377);function r(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"skeleton",className:(0,s.cn)("bg-accent animate-pulse rounded-md",t),...n})}},57731:(e,t,n)=>{n.d(t,{E:()=>o});var a=n(90508);n(1856);var s=n(49499),r=n(54154),l=n(24377);let i=(0,s.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:n="default",asChild:s=!1,...o}=e,d=s?r.bL:"span";return(0,a.jsx)(d,{"data-slot":"badge","data-variant":n,className:(0,l.cn)(i({variant:n}),t),...o})}},59208:(e,t,n)=>{n.d(t,{$d:()=>d,Oj:()=>o,kz:()=>c});var a=n(90508),s=n(1856),r=n(62990),l=n(67712);let i=(0,s.createContext)(null);function o(e){let{children:t}=e,[n,o]=(0,s.useState)("loading"),[d,c]=(0,s.useState)([]),[u,x]=(0,s.useState)({}),[m,g]=(0,s.useState)(!1),[f,p]=(0,s.useState)(!1),[h,v]=(0,s.useState)(null),[b,j]=(0,s.useState)(null),w=(0,s.useRef)(new Set),N=(0,s.useRef)({}),y=(0,s.useRef)(0),k=(0,s.useRef)(!1),C=(0,s.useRef)({sawAuth401:!1,sawHealthy:!1}),A=(0,s.useCallback)(async()=>{try{let t=await (0,r.tm)("/api/agent-connections");if(!t.ok){401===t.status&&(C.current.sawAuth401=!0),o("error");return}C.current.sawHealthy=!0;let n=await t.json();if(n.success){var e;c(null!=(e=n.data.connections)?e:[]),o("ok")}else o("error")}catch(e){l.q.error("Failed to fetch agent connections:",e),o("error")}},[]),E=(0,s.useCallback)(async()=>{let e={...N.current};try{let n=await (0,r.tm)("/api/daemon/executions");if(!n.ok){401===n.status&&(C.current.sawAuth401=!0);return}C.current.sawHealthy=!0;let a=await n.json();if(a.success){var t;let n=function(e){let t={};for(let s of e){var n,a;(null!=(a=t[n=s.connectionUuid])?a:t[n]=[]).push(s)}return t}(null!=(t=a.data.executions)?t:[]);x(t=>{let a={...n};for(let n of Object.keys(N.current))N.current[n]!==e[n]&&(void 0===t[n]?delete a[n]:a[n]=t[n]);return a})}}catch(e){l.q.error("Failed to fetch daemon executions:",e)}finally{g(!0)}},[]);(0,s.useEffect)(()=>{let e=null,t=!1,n=async()=>{if(C.current={sawAuth401:!1,sawHealthy:!1},await Promise.all([A(),E()]),t)return;let{sawAuth401:n,sawHealthy:a}=C.current;n&&!a?(y.current+=1,y.current>=2&&e&&(clearInterval(e),e=null,k.current=!0,l.q.warn("Agent-presence poll paused: session appears dead (consecutive 401 ticks). Will re-arm on next visibility."))):a&&(y.current=0)},a=()=>{k.current=!1,y.current=0,n(),e=setInterval(n,15e3)},s=()=>{"visible"===document.visibilityState&&k.current&&!t&&a()};return a(),document.addEventListener("visibilitychange",s),()=>{t=!0,e&&clearInterval(e),document.removeEventListener("visibilitychange",s)}},[A,E]),(0,s.useEffect)(()=>{let e=null;function t(){n(),(e=new EventSource(!h?"/api/events":"/api/events?sessionUuid=".concat(encodeURIComponent(h)))).onmessage=e=>{let t=null;try{t=JSON.parse(e.data)}catch(e){return}if(t&&!function(e,t){if("transcript"!==e.type)return!1;for(let n of t)n(e);return!0}(t,w.current)&&"execution"===t.type){var n;let e=t;N.current[e.connectionUuid]=(null!=(n=N.current[e.connectionUuid])?n:0)+1,x(t=>(function(e,t){let n={...e};return 0===t.executions.length?delete n[t.connectionUuid]:n[t.connectionUuid]=t.executions,n})(t,e))}},e.onerror=()=>{}}function n(){e&&(e.close(),e=null)}function a(){"visible"===document.visibilityState&&(e&&e.readyState===EventSource.OPEN||(t(),E()))}return t(),document.addEventListener("visibilitychange",a),()=>{n(),document.removeEventListener("visibilitychange",a)}},[E,h]);let S=(0,s.useMemo)(()=>d.filter(e=>"online"===e.effectiveStatus).length,[d]),U=(0,s.useCallback)(e=>(w.current.add(e),()=>{w.current.delete(e)}),[]),T=(0,s.useCallback)((e,t)=>{j(t?{agentUuid:e,pin:t}:{agentUuid:e}),p(!0)},[]),F=(0,s.useCallback)(e=>{j({agentUuid:e.agentUuid,sessionUuid:e.uuid,sessionSeed:e}),p(!0)},[]),M=(0,s.useCallback)(()=>{j(null)},[]),z=(0,s.useMemo)(()=>({status:n,connections:d,onlineCount:S,executionsByConnection:u,executionsLoaded:m,modalOpen:f,setModalOpen:p,openSession:h,setOpenSession:v,subscribeTranscript:U,focusTarget:b,openChatForAgent:T,openChatForSession:F,clearChatFocusTarget:M,refreshConnections:A}),[n,d,S,u,m,f,h,U,b,T,F,M,A]);return(0,a.jsx)(i.Provider,{value:z,children:t})}function d(){let e=(0,s.useContext)(i);if(!e)throw Error("useAgentPresence must be used within an AgentPresenceProvider");return e}function c(){return(0,s.useContext)(i)}},64993:(e,t,n)=>{n.d(t,{F:()=>l});var a=n(90508);n(1856);var s=n(65326),r=n(24377);function l(e){let{className:t,children:n,...l}=e;return(0,a.jsxs)(s.Root,{"data-slot":"scroll-area",className:(0,r.cn)("relative",t),...l,children:[(0,a.jsx)(s.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:n}),(0,a.jsx)(i,{}),(0,a.jsx)(s.Corner,{})]})}function i(e){let{className:t,orientation:n="vertical",...l}=e;return(0,a.jsx)(s.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:n,className:(0,r.cn)("flex touch-none p-px transition-colors select-none","vertical"===n&&"h-full w-2.5 border-l border-l-transparent","horizontal"===n&&"h-2.5 flex-col border-t border-t-transparent",t),...l,children:(0,a.jsx)(s.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}},67712:(e,t,n)=>{n.d(t,{q:()=>i});var a=n(55036);let s={debug:0,info:1,warn:2,error:3},r=a.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function l(e){return s[e]>=s[r]}let i={debug:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];l("debug")&&console.debug("[Chorus] ".concat(e),...n)},info:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];l("info")&&console.info("[Chorus] ".concat(e),...n)},warn:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];l("warn")&&console.warn("[Chorus] ".concat(e),...n)},error:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];l("error")&&console.error("[Chorus] ".concat(e),...n)}}},72530:(e,t,n)=>{n.d(t,{HM:()=>p,No:()=>x,wo:()=>m});var a=n(90508),s=n(1856),r=n(39268),l=n(62482),i=n(32470),o=n(37627),d=n(90094),c=n(36550),u=n(18277);function x(e){let{state:t}=e;return"error"===t?(0,a.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 shrink-0 rounded-full bg-[#D97706] opacity-90"}):(0,a.jsx)("span",{className:"shrink-0",children:(0,a.jsx)(o.m,{online:"online"===t,size:"md"})})}function m(e,t){return"loading"===e?"loading":"error"===e?"error":t>0?"online":"idle"}function g(e){let{connection:t,executions:n,showHost:s,nowMs:o}=e,u=(0,r.c)("agentPresence"),x=(0,r.c)("agentConnections"),{text:m,dot:g}=(0,d.c0)(t,n,o),f=n.filter(e=>"running"===e.status),p=n.filter(e=>"queued"===e.status),h=f.length>0||p.length>0,v="online"===t.effectiveStatus;return(0,a.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,a.jsx)(d.A4,{connection:t,showHost:s,activity:m,dot:g}),h?(0,a.jsxs)("div",{className:"flex flex-col gap-4 pl-1",children:[f.length>0&&(0,a.jsx)(c.wL,{icon:l.A,label:x("execRunning"),count:f.length,children:f.map(e=>(0,a.jsx)(c.lb,{exec:e,nowMs:o,layout:"stacked"},e.uuid))}),p.length>0&&(0,a.jsx)(c.wL,{icon:i.A,label:x("execQueued"),count:p.length,children:p.map(e=>(0,a.jsx)(c.lb,{exec:e,nowMs:o,layout:"stacked"},e.uuid))})]}):v&&(0,a.jsx)("p",{className:"pl-1 text-[12px] text-muted-foreground",children:u("connectionIdle")})]})}function f(e){let{group:t,executionsByConnection:n,nowMs:s,expanded:r,onToggle:l}=e;return(0,a.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,a.jsx)(d.u,{group:t,expanded:r,onToggle:l}),r&&(0,a.jsx)("div",{className:"flex flex-col gap-3 pl-7",children:t.connections.map(e=>{var r;return(0,a.jsx)(g,{connection:e,executions:null!=(r=n[e.uuid])?r:[],showHost:t.multiHost,nowMs:s},e.uuid)})})]})}function p(e){let{groups:t,executionsByConnection:n,nowMs:r}=e,[l,i]=(0,s.useState)(new Set);return 0===t.length?(0,a.jsx)(u.Bs,{variant:"compact"}):(0,a.jsx)("div",{className:"flex flex-col gap-5",children:t.map(e=>(0,a.jsx)(f,{group:e,executionsByConnection:n,nowMs:r,expanded:l.has(e.agentUuid),onToggle:()=>{let t;return t=e.agentUuid,i(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n})}},e.agentUuid))})}},78307:(e,t,n)=>{n.d(t,{C:()=>u,O:()=>g});var a=n(90508),s=n(1856),r=n(39268),l=n(71388),i=n(41033),o=n(24377),d=n(24900),c=n(37627);function u(e){return e.filter(e=>"online"===e.effectiveStatus)}function x(e){let{cwd:t,formatOptions:n}=e,s=(0,r.c)(),i=(0,d.kn)(t,n),c=i.isUnknown?s(i.label):i.label,u=i.isUnknown?s(i.title):i.title;return(0,a.jsxs)("span",{title:u,className:(0,o.cn)("inline-flex min-w-0 items-center gap-1.5 rounded-md border border-border bg-background px-2 py-0.5","font-mono text-xs",i.isUnknown?"text-muted-foreground italic":"text-foreground"),children:[(0,a.jsx)(l.A,{className:"size-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,a.jsx)("span",{className:"truncate",children:c})]})}function m(e){let{host:t,formatOptions:n}=e,s=(0,r.c)(),l=(0,d.g9)(t,n),i=l.isUnknown?s(l.label):l.label,o=l.isUnknown?s(l.title):l.title;return(0,a.jsx)("span",{title:o,className:"shrink-0 truncate font-mono text-[10px] text-muted-foreground",children:i})}function g(e){let{instances:t,selectedConnectionUuid:n,onSelect:l,className:d,cwdFormatOptions:u,hostFormatOptions:g,ariaLabel:f}=e,p=(0,r.c)("mentionInstance"),h=(0,s.useMemo)(()=>new Set(t.map(e=>e.host)).size>1,[t]),v=1===t.length?t[0]:null;return((0,s.useEffect)(()=>{v&&n!==v.connectionUuid&&l(v)},[v,n]),0===t.length)?(0,a.jsx)("div",{className:(0,o.cn)("py-2 text-xs text-muted-foreground",d),children:p("noInstances")}):(0,a.jsx)(i.z,{"aria-label":null!=f?f:p("title"),value:null!=n?n:void 0,onValueChange:e=>{let n=t.find(t=>t.connectionUuid===e);n&&l(n)},className:(0,o.cn)("gap-1.5",d),children:t.map(e=>{var t;let s=n===e.connectionUuid;return(0,a.jsxs)("div",{role:"presentation",tabIndex:-1,onClick:()=>l(e),className:(0,o.cn)("flex items-center gap-2.5 rounded-md border px-2.5 py-2 transition-colors","cursor-pointer border-border hover:bg-background",s&&"border-primary bg-background"),children:[(0,a.jsx)("span",{className:"flex shrink-0 items-center","aria-hidden":!0,children:(0,a.jsx)(c.m,{online:!0})}),(0,a.jsxs)("span",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,a.jsx)(x,{cwd:e.cwd,formatOptions:u}),h&&(0,a.jsx)(m,{host:e.host,formatOptions:g})]}),(0,a.jsx)(i.C,{value:e.connectionUuid,"aria-label":null!=(t=e.cwd)?t:void 0,className:"shrink-0"})]},e.connectionUuid)})})}},81750:(e,t,n)=>{n.d(t,{Ke:()=>o,Nt:()=>l,R6:()=>i});var a=n(90508),s=n(38476),r=n(24377);function l(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"collapsible",...t})}function i(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"collapsible-trigger",...t})}function o(e){let{className:t,...n}=e;return(0,a.jsx)(s.Content,{"data-slot":"collapsible-content",className:(0,r.cn)("overflow-hidden data-[state=open]:animate-[collapsible-down_250ms_ease-in-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-in-out]",t),...n})}},90094:(e,t,n)=>{n.d(t,{A4:()=>k,Jk:()=>v,Mn:()=>N,c0:()=>w,fb:()=>b,u:()=>C});var a=n(90508),s=n(39268),r=n(51509),l=n(71388),i=n(68842),o=n(17730),d=n(24900),c=n(91385),u=n(22922),x=n(37627),m=n(95291);function g(e){let t=null==e?void 0:e.trim();return t?t.toLocaleLowerCase("en-US"):""}function f(e){return null===e?"":e}function p(e,t){return e<t?-1:+(e>t)}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return[...e].sort((e,n)=>{var a,s;return j(e,null!=(a=t[e.uuid])?a:[])-j(n,null!=(s=t[n.uuid])?s:[])||p(g(e.agentName),g(n.agentName))||p(e.agentUuid,n.agentUuid)||p(f(e.cwd),f(n.cwd))||p(e.host,n.host)||p(e.clientType,n.clientType)||p(e.uuid,n.uuid)})}function v(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=h(e,t),a=[],s=new Map;for(let e of n)s.has(e.agentUuid)||(s.set(e.agentUuid,[]),a.push(e.agentUuid)),s.get(e.agentUuid).push(e);return a.map(e=>{let t=s.get(e),n=new Set(t.map(e=>e.host)).size>1;return{agentUuid:e,agentName:t[0].agentName,clientType:t[0].clientType,connections:t,onlineCount:t.filter(e=>"online"===e.effectiveStatus).length,multiHost:n,singleHost:n?void 0:t[0].host}})}function b(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return h(e.filter(e=>"online"===e.effectiveStatus),t)}function j(e,t){return"online"!==e.effectiveStatus?3:t.some(e=>"running"===e.status)?0:t.some(e=>"queued"===e.status)?1:2}function w(e,t,n){let r=(0,s.c)("agentPresence.drilldown"),l=(0,m.l5)(),i=(0,m.Vq)(),o=function(e,t){if("online"!==e.effectiveStatus)return{state:"offline",runningStartedAt:null,queuedCount:0};let n=t.filter(e=>"running"===e.status),a=t.filter(e=>"queued"===e.status);if(n.length>0){var s;let e=[...n].sort((e,t)=>{var n,a;return(null!=(n=e.startedAt)?n:e.createdAt).localeCompare(null!=(a=t.startedAt)?a:t.createdAt)})[0];return{state:"running",runningStartedAt:null!=(s=e.startedAt)?s:e.createdAt,queuedCount:a.length}}return a.length>0?{state:"queued",runningStartedAt:null,queuedCount:a.length}:{state:"idle",runningStartedAt:null,queuedCount:0}}(e,t);switch(o.state){case"offline":return{text:r("offlineSince",{time:i(e.lastSeenAt,n)}),dot:(0,a.jsx)(x.m,{online:!1,size:"md"})};case"running":return{text:r("runningFor",{time:o.runningStartedAt?l(o.runningStartedAt,n):""}),dot:(0,a.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 rounded-full bg-primary"})};case"queued":return{text:r("queuedCount",{count:o.queuedCount}),dot:(0,a.jsx)(x.m,{online:!0,size:"md"})};default:return{text:r("idle"),dot:(0,a.jsx)(x.m,{online:!0,size:"md"})}}}function N(e){let{cwd:t,formatOptions:n}=e,i=(0,s.c)("agentPresence"),o=(0,d.kn)(null!=t?t:null,n),c=o.isUnknown?i("unknownPath"):o.label,u=o.isUnknown?i("unknownPath"):o.title,x=o.isUnknown?r.A:l.A;return(0,a.jsxs)("span",{title:u,className:"inline-flex min-w-0 items-center gap-1.5 rounded-md bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-1",children:[(0,a.jsx)(x,{className:"h-3.5 w-3.5 shrink-0 text-[#9A8E7E]","aria-hidden":!0}),(0,a.jsx)("span",{className:"min-w-0 truncate font-mono text-[12px] font-semibold ".concat(o.isUnknown?"text-muted-foreground":"text-[#3A3631]"),children:c})]})}function y(e){let{host:t}=e,n=(0,s.c)("agentPresence"),r=(0,d.g9)(t),l=r.isUnknown?n("unknownHost"):r.label,o=r.isUnknown?n("unknownHost"):r.title;return(0,a.jsxs)("span",{title:o,className:"inline-flex min-w-0 max-w-[140px] shrink items-center gap-1 truncate font-mono text-[11px] text-muted-foreground",children:[(0,a.jsx)(i.A,{className:"h-3 w-3 shrink-0","aria-hidden":!0}),(0,a.jsx)("span",{className:"truncate",children:l})]})}function k(e){let{connection:t,showHost:n,activity:s,dot:r}=e,l="online"===t.effectiveStatus,i=n||!!s;return(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,a.jsx)(N,{cwd:t.cwd}),i&&(0,a.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5 pl-0.5",children:[n&&(0,a.jsx)(y,{host:t.host}),n&&s&&(0,a.jsx)("span",{"aria-hidden":!0,className:"shrink-0 text-[11px] text-[#C9C2B6]",children:"\xb7"}),s&&(0,a.jsx)("span",{className:"min-w-0 truncate text-[11px] text-muted-foreground",children:s})]})]}),(0,a.jsx)("span",{className:"shrink-0",children:null!=r?r:(0,a.jsx)(x.m,{online:l,size:"md"})})]})}function C(e){var t,n;let{group:r,expanded:l,onToggle:i}=e,d=(0,s.c)("agentPresence"),g=(0,s.c)("agentPresence.drilldown"),f=(0,s.c)("agentConnections"),p=(0,m.Z5)(),h=(null==(t=r.agentName)?void 0:t.trim())||f("unknownAgent"),v=r.onlineCount>0,b="function"==typeof i,j=new Set(r.connections.map(e=>e.host)).size,w=""===r.singleHost?d("unknownHost"):null!=(n=r.singleHost)?n:"",N=r.multiHost?"".concat(p(r.clientType)," \xb7 ").concat(g("hostsCount",{count:j})):"".concat(p(r.clientType)," \xb7 ").concat(w),y=(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.A,{className:"h-4 w-4 shrink-0 text-[#B7AE9F] transition-transform ".concat(b&&l?"rotate-180":""),"aria-hidden":!0}),(0,a.jsx)(c.AgentAvatar,{name:h,size:36,className:"rounded-lg"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,a.jsx)("div",{className:"truncate text-[14px] font-semibold text-foreground",children:h}),(0,a.jsx)("div",{className:"mt-0.5 truncate text-[12px] text-muted-foreground",children:N})]}),(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,a.jsx)("span",{className:"text-[12px] text-muted-foreground",children:g("instancesCount",{count:r.connections.length})}),(0,a.jsx)(x.m,{online:v,size:"md"})]})]});return b?(0,a.jsx)(u.$,{type:"button",variant:"ghost",onClick:i,"aria-expanded":l,"aria-label":g(l?"collapseAgent":"expandAgent",{agent:h}),className:"flex h-auto w-full items-center justify-start gap-2.5 rounded-lg px-1.5 py-1 hover:bg-[#FBF4EF] dark:hover:bg-[#26241f]",children:y}):(0,a.jsx)("div",{className:"flex items-center gap-2.5",children:y})}},91846:(e,t,n)=>{n.d(t,{bq:()=>u,eb:()=>m,gC:()=>x,l6:()=>d,yv:()=>c});var a=n(90508);n(1856);var s=n(17730),r=n(60532),l=n(89967),i=n(48218),o=n(24377);function d(e){let{...t}=e;return(0,a.jsx)(i.Root,{"data-slot":"select",...t})}function c(e){let{...t}=e;return(0,a.jsx)(i.Value,{"data-slot":"select-value",...t})}function u(e){let{className:t,size:n="default",children:r,...l}=e;return(0,a.jsxs)(i.Trigger,{"data-slot":"select-trigger","data-size":n,className:(0,o.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...l,children:[r,(0,a.jsx)(i.Icon,{asChild:!0,children:(0,a.jsx)(s.A,{className:"size-4 opacity-50"})})]})}function x(e){let{className:t,children:n,position:s="item-aligned",align:r="center",...l}=e;return(0,a.jsx)(i.Portal,{children:(0,a.jsxs)(i.Content,{"data-slot":"select-content",className:(0,o.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md","popper"===s&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:s,align:r,...l,children:[(0,a.jsx)(g,{}),(0,a.jsx)(i.Viewport,{className:(0,o.cn)("p-1","popper"===s&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:n}),(0,a.jsx)(f,{})]})})}function m(e){let{className:t,children:n,...s}=e;return(0,a.jsxs)(i.Item,{"data-slot":"select-item",className:(0,o.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...s,children:[(0,a.jsx)("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,a.jsx)(i.ItemIndicator,{children:(0,a.jsx)(r.A,{className:"size-4"})})}),(0,a.jsx)(i.ItemText,{children:n})]})}function g(e){let{className:t,...n}=e;return(0,a.jsx)(i.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(l.A,{className:"size-4"})})}function f(e){let{className:t,...n}=e;return(0,a.jsx)(i.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(s.A,{className:"size-4"})})}},94643:(e,t,n)=>{n.d(t,{MH:()=>eP,jQ:()=>f,fF:()=>O,jH:()=>_,Bs:()=>q.Bs,Gm:()=>eK,Jk:()=>c.Jk,fb:()=>c.fb,le:()=>a.le});var a=n(95291),s=n(37627),r=n(90508),l=n(39268),i=n(57731),o=n(91385),d=n(24900),c=n(90094);function u(e){var t,n;let{connection:s,size:u}=e,x=(0,l.c)("agentConnections"),m=(0,a.Z5)(),g=(null==(t=s.agentName)?void 0:t.trim())||x("unknownAgent"),f=null!=(n=s.clientVersion)?n:x("versionUnknown"),p=(0,d.g9)(s.host),h=p.isUnknown?x("hostUnknown"):p.label,v=p.isUnknown?x("hostUnknown"):p.title;return(0,r.jsxs)("div",{className:"flex min-w-0 items-center gap-3",children:[(0,r.jsx)(o.AgentAvatar,{name:g,size:"lg"===u?48:"md"===u?40:36,className:"shrink-0 ".concat("lg"===u?"rounded-xl":"rounded-lg")}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"truncate font-semibold text-foreground ".concat("lg"===u?"text-[20px]":"md"===u?"text-[16px]":"text-[14px]"),children:g}),(0,r.jsxs)("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[(0,r.jsx)(c.Mn,{cwd:s.cwd}),(0,r.jsx)(i.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-0.5 text-[10px] font-medium text-muted-foreground",children:m(s.clientType)}),(0,r.jsxs)("span",{title:v,className:"truncate font-mono text-[11px] text-muted-foreground",children:["v",f," \xb7 ",h]})]})]})]})}var x=n(78307);n(21180);var m=n(71388),g=n(24377);function f(e){let{cwd:t,host:n,showHost:a=!0,className:s}=e,i=(0,l.c)(),o=(0,d.kn)(t),c=o.isUnknown?i(o.label):o.label,u=o.isUnknown?i(o.title):o.title,x=(0,d.g9)(n),f=x.isUnknown?i(x.label):x.label,p=x.isUnknown?i(x.title):x.title;return(0,r.jsxs)("span",{className:(0,g.cn)("inline-flex min-w-0 items-center gap-1.5",s),children:[(0,r.jsxs)("span",{title:u,className:(0,g.cn)("inline-flex min-w-0 items-center gap-1 rounded border border-border bg-background px-1.5 py-0.5","font-mono text-[10px]",o.isUnknown?"italic text-muted-foreground":"text-muted-foreground"),children:[(0,r.jsx)(m.A,{className:"size-2.5 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"truncate",children:c})]}),a&&(0,r.jsx)("span",{title:p,className:"shrink-0 truncate font-mono text-[10px] text-muted-foreground",children:f})]})}var p=n(36550),h=n(1856),v=n(67587),b=n(85226),j=n(88853),w=n(50153),N=n(5329),y=n(22922),k=n(15972),C=n(91846),A=n(62990),E=n(67712),S=n(42305);function U(e){return e.map(e=>{var t,n;return{connectionUuid:e.uuid,host:null!=(t=e.host)?t:"",cwd:null!=(n=e.cwd)?n:null,effectiveStatus:e.effectiveStatus}})}async function T(e,t){return I(e,t)}function F(e){let{value:t,onChange:n,onSend:a,pending:s,disabled:i,disabledReason:o,placeholder:d,sendLabel:c,layout:u,controllableExecution:x}=e,m=(0,l.c)("agentConnections"),g=0===t.trim().length,f=i||s||g,h=(0,r.jsxs)(y.$,{type:"button",size:"sm",onClick:a,disabled:f,"aria-label":c,className:"h-8 shrink-0 gap-1.5 rounded-lg bg-primary px-3.5 text-[13px] font-medium text-white hover:bg-[#B56A44] disabled:bg-border disabled:text-[#9A9A9A]",children:[s?(0,r.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,r.jsx)(j.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),c]}),v=null!=x?x:null,N=v?"running"===v.status?(0,r.jsx)(p.yw,{exec:v}):"interrupted"===v.status&&"user"===v.interruptedReason?(0,r.jsx)(p.MG,{exec:v}):"interrupted"===v.status&&"crash"===v.interruptedReason?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:"text-[11px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:m("execCrashExited")}),(0,r.jsx)(p.MG,{exec:v})]}):null:null,C=(0,r.jsxs)("div",{className:"absolute bottom-2 right-2 z-10 flex shrink-0 items-center gap-2",children:[N,h]}),A=i?(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,r.jsx)(w.A,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0",children:o})]}):null;return(0,r.jsxs)("div",{className:"flex flex-col gap-2.5",children:[A,(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsx)(k.T,{value:t,onChange:e=>n(e.target.value),onKeyDown:e=>{(0,S.P)(e)||"Enter"===e.key&&!e.shiftKey&&(e.preventDefault(),f||a())},disabled:i||s,placeholder:d,rows:3,className:"min-h-[76px] resize-none rounded-xl border-border bg-card pb-12 text-[14px] text-foreground placeholder:text-[#9A9A9A] focus-visible:border-primary focus-visible:ring-primary/30"}),C]})]})}function M(e){let{sessionUuid:t,originOnline:n,layout:a="inline",controllableExecution:s,agentUuid:i,onlineConnections:o=[],onSessionStarted:d}=e,c=(0,l.c)("agentConnections"),u=(0,l.c)("daemonChat"),[x,m]=(0,h.useState)(""),[g,f]=(0,h.useState)(!1),[p,b]=(0,h.useState)(!1),j=!n&&!!i&&o.length>0,w=async()=>{let e=x.trim();if(0!==e.length){f(!0);try{let n=await (0,A.tm)("/api/daemon-sessions/".concat(t,"/instruction"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({instructionText:e})});if(!n.ok)return void v.oR.error(await I(n,c("instructionError")));m("")}catch(e){E.q.error("Failed to send daemon instruction:",e),v.oR.error(c("instructionError"))}finally{f(!1)}}};return(0,r.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,r.jsx)(F,{value:x,onChange:m,onSend:w,pending:g,disabled:!n,disabledReason:n?null:u("originOfflineNote"),placeholder:u("replyPlaceholder"),sendLabel:c("send"),layout:a,controllableExecution:s}),j&&(p?(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,r.jsx)("span",{className:"text-[12px] font-medium text-muted-foreground",children:u("continueOnlineHelp")}),(0,r.jsx)(z,{sessionUuid:t,onlineConnections:o,layout:a,onRepointed:d})]}):(0,r.jsxs)(y.$,{type:"button",variant:"outline",size:"sm",onClick:()=>b(!0),className:"h-8 w-fit gap-1.5 rounded-lg border-[#E5D5C6] dark:border-[#33302a] bg-card text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-[#A65F3C]",children:[(0,r.jsx)(N.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),u("continueOnlineAction")]}))]})}function z(e){var t,n,a;let{sessionUuid:s,onlineConnections:i,layout:o,onRepointed:c}=e,u=(0,l.c)("agentConnections"),m=(0,l.c)("assignInstance"),g=(0,l.c)("daemonChat"),f=(0,h.useMemo)(()=>i.map(e=>{var t,n;return{connectionUuid:e.uuid,host:null!=(t=e.host)?t:"",cwd:null!=(n=e.cwd)?n:null,effectiveStatus:e.effectiveStatus}}),[i]),[p,b]=(0,h.useState)(null!=(n=null==(t=i[0])?void 0:t.uuid)?n:""),[w,N]=(0,h.useState)(""),[y,k]=(0,h.useState)(!1),C=null!=(a=f.find(e=>e.connectionUuid===p&&"online"===e.effectiveStatus))?a:null,S=(0,h.useMemo)(()=>new Set(f.map(e=>e.host)).size>1,[f]),U=async()=>{let e=w.trim();if(p&&0!==e.length){k(!0);try{let n=await (0,A.tm)("/api/daemon-sessions/".concat(s,"/repoint"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({connectionUuid:p,instructionText:e})});if(!n.ok)return void v.oR.error(await I(n,u("instructionError")));let a=null;try{var t;let e=await n.json();(null==e?void 0:e.success)&&(null==(t=e.data)?void 0:t.session)&&(a=e.data.session)}catch(e){}v.oR.success(g("continueOnlineStarted")),N(""),a&&(null==c||c(a))}catch(e){E.q.error("Failed to re-point daemon session:",e),v.oR.error(u("instructionError"))}finally{k(!1)}}},T=(()=>{if(!C)return null;let e=(0,d.kn)(C.cwd),t=e.isUnknown?m(e.label):e.label;if(S){let e=(0,d.g9)(C.host),n=e.isUnknown?m(e.label):e.label;return m("sendingToWithHost",{path:t,host:n})}return m("sendingTo",{path:t})})();return(0,r.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-dashed border-border bg-card p-4",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:m("workingDirectory")}),(0,r.jsx)(x.O,{instances:f,selectedConnectionUuid:p||null,onSelect:e=>b(e.connectionUuid),ariaLabel:u("pickConnection")})]}),T&&(0,r.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[(0,r.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0 truncate",children:T})]}),(0,r.jsx)(F,{value:w,onChange:N,onSend:U,pending:y,disabled:!C,disabledReason:C?null:m("offlineCantRun"),placeholder:u("sendInstructionPlaceholder"),sendLabel:u("send"),layout:o})]})}function B(e){var t,n,a;let{agentUuid:s,onlineConnections:i,layout:o,hideHeader:c=!1,onStarted:u}=e,m=(0,l.c)("agentConnections"),g=(0,l.c)("assignInstance"),f=(0,h.useMemo)(()=>U(i),[i]),[p,b]=(0,h.useState)(null!=(n=null==(t=i[0])?void 0:t.uuid)?n:""),[w,N]=(0,h.useState)(""),[y,k]=(0,h.useState)(!1),C=null!=(a=f.find(e=>e.connectionUuid===p&&"online"===e.effectiveStatus))?a:null,S=(0,h.useMemo)(()=>new Set(f.map(e=>e.host)).size>1,[f]),T=async()=>{let e=w.trim();if(p&&0!==e.length){k(!0);try{let n=await (0,A.tm)("/api/daemon-sessions/ad-hoc",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentUuid:s,connectionUuid:p,instructionText:e})});if(!n.ok)return void v.oR.error(await I(n,m("instructionError")));let a=null;try{var t;let e=await n.json();(null==e?void 0:e.success)&&(null==(t=e.data)?void 0:t.session)&&(a=e.data.session)}catch(e){}v.oR.success(m("adHocSessionStarted")),N(""),a&&(null==u||u(a))}catch(e){E.q.error("Failed to start ad-hoc daemon session:",e),v.oR.error(m("instructionError"))}finally{k(!1)}}},M=(()=>{if(!C)return null;let e=(0,d.kn)(C.cwd),t=e.isUnknown?g(e.label):e.label;if(S){let e=(0,d.g9)(C.host),n=e.isUnknown?g(e.label):e.label;return g("sendingToWithHost",{path:t,host:n})}return g("sendingTo",{path:t})})();return(0,r.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-dashed border-border bg-card p-4",children:[!c&&(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("span",{className:"text-[13px] font-semibold text-foreground",children:m("adHocTitle")}),(0,r.jsx)("span",{className:"text-[12px] leading-relaxed text-muted-foreground",children:g("liveSendNote")})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:g("workingDirectory")}),(0,r.jsx)(x.O,{instances:f,selectedConnectionUuid:p||null,onSelect:e=>b(e.connectionUuid),ariaLabel:m("pickConnection")})]}),M&&(0,r.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[(0,r.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0 truncate",children:M})]}),(0,r.jsx)(F,{value:w,onChange:N,onSend:T,pending:y,disabled:!C,disabledReason:C?null:g("offlineCantRun"),placeholder:m("sendInstructionPlaceholder"),sendLabel:m("startSession"),layout:o})]})}async function I(e,t){try{let t=await e.json();if(t&&"string"==typeof t.error&&t.error)return t.error}catch(e){}return t}var R=n(17475),L=n(59208),q=n(18277),D=n(6930);class O extends Error{constructor(e,t){super(null!=t?t:"Dispatch failed with status ".concat(e)),this.name="ConversationalDispatchError",this.status=e,this.serverMessage=t}}function _(e){var t,n,a,s,i,d,c;let{buildInstruction:u,dispatch:m,offlineFallback:g,onStarted:f,defaultAgentUuid:p,projectUuid:v}=e,w=(0,l.c)("conversationalEntry"),N=(0,L.kz)(),F=(0,h.useMemo)(()=>{var e;return(null!=(e=null==N?void 0:N.connections)?e:[]).filter(e=>"online"===e.effectiveStatus)},[null==N?void 0:N.connections]),[M,z]=(0,h.useState)(new Map),B=(0,h.useMemo)(()=>{let e=function(e){let t=new Map;for(let a of e){let e=t.get(a.agentUuid);if(e)e.connections.push(a);else{var n;t.set(a.agentUuid,{agentUuid:a.agentUuid,agentName:(null==(n=a.agentName)?void 0:n.trim())||a.agentUuid.slice(0,8),connections:[a]})}}return[...t.values()]}(F),t=new Set(e.map(e=>e.agentUuid));for(let[n,a]of M)t.has(n)||e.push({agentUuid:n,agentName:a.agentName,connections:[]});return e},[M,F]),[I,_]=(0,h.useState)(null);(0,h.useEffect)(()=>{if(!v)return void z(new Map);let e=!1;return(0,A.tm)("/api/projects/".concat(encodeURIComponent(v),"/agent-cwds")).then(async t=>{var n,a,s;if(!t.ok)return;let r=await t.json(),l=new Map;for(let e of null!=(a=null==r||null==(n=r.data)?void 0:n.agents)?a:[])e.preference&&l.set(e.agent.uuid,{agentName:e.agent.name,target:{actorUserUuid:"",source:"project_fixed",agentUuid:e.agent.uuid,host:e.preference.host,cwd:e.preference.cwd,availability:"valid"===e.preference.status?"ready":"offline"===e.preference.status?"offline":"invalid",promptPolicy:"suppress",connectionUuid:null,agentInstanceUuid:null!=(s=e.preference.anchorAgentInstanceUuid)?s:null}});e||z(l)}).catch(e=>E.q.error("Failed to load project Agent cwd preferences:",e)),()=>{e=!0}},[v]);let P=null!=(a=null!=(n=B.find(e=>e.agentUuid===I))?n:B.find(e=>e.agentUuid===p))?a:1===B.length?B[0]:null,H=P&&null!=(s=null==(t=M.get(P.agentUuid))?void 0:t.target)?s:null,[$,K]=(0,h.useState)(null),V=(0,h.useMemo)(()=>{var e;return U(null!=(e=null==P?void 0:P.connections)?e:[])},[P]),W=null!=(i=H?V.find(e=>e.host===H.host):V.find(e=>e.connectionUuid===$))?i:null,[J,Z]=(0,h.useState)(""),[G,Y]=(0,h.useState)(!1),[Q,X]=(0,h.useState)(null),ee=J.trim(),et=J.length>3e3,en=G||!P||!W||0===ee.length||et,ea=async e=>{let t=await (0,A.tm)("/api/daemon-sessions/ad-hoc",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentUuid:e.agentUuid,connectionUuid:e.connectionUuid,instructionText:u?u(e.userText):e.userText})});if(!t.ok)throw new O(t.status,await T(t,""));try{var n;let e=await t.json();if((null==e?void 0:e.success)&&(null==(n=e.data)?void 0:n.session))return e.data.session}catch(e){}throw new O(t.status,null)},es=async()=>{if(!en&&P&&W){Y(!0),X(null);try{let e=await (null!=m?m:ea)({agentUuid:P.agentUuid,connectionUuid:W.connectionUuid,userText:ee});Z(""),f(e)}catch(e){if(e instanceof O){X(e.serverMessage||(409===e.status?w("connectionWentOffline"):w("sendError"))),409===e.status&&(null==N||N.refreshConnections());return}E.q.error("Failed to dispatch conversational entry:",e),X(w("sendError"))}finally{Y(!1)}}};if(0===F.length&&0===M.size)return(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,r.jsx)("p",{className:"text-[12.5px] leading-relaxed text-muted-foreground",children:w("noOnlineDaemon")}),null!=g?g:(0,r.jsx)(q.Bs,{variant:"compact"})]});let er=J.length>=2500;return(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:w("agentLabel")}),(0,r.jsxs)(C.l6,{value:null!=(d=null==P?void 0:P.agentUuid)?d:"",onValueChange:e=>{_(e),K(null)},children:[(0,r.jsx)(C.bq,{"aria-label":w("agentLabel"),children:(0,r.jsx)(C.yv,{placeholder:w("agentPlaceholder")})}),(0,r.jsx)(C.gC,{children:B.map(e=>(0,r.jsx)(C.eb,{value:e.agentUuid,children:(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(o.AgentAvatar,{name:e.agentName,size:16,className:"rounded-full"}),(0,r.jsx)("span",{children:e.agentName})]})},e.agentUuid))})]})]}),P&&H&&"ready"!==H.availability?(0,r.jsx)(D.Y,{target:H}):P&&!H?(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:w("instanceLabel")}),(0,r.jsx)(x.O,{instances:V,selectedConnectionUuid:null!=(c=null==W?void 0:W.connectionUuid)?c:null,onSelect:e=>K(e.connectionUuid),ariaLabel:w("instanceLabel")})]}):P?null:(0,r.jsx)("p",{className:"text-[12px] text-muted-foreground",children:w("pickAgentFirst")}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(k.T,{value:J,onChange:e=>Z(e.target.value),onKeyDown:e=>{(0,S.P)(e)||"Enter"===e.key&&!e.shiftKey&&(e.preventDefault(),en||es())},disabled:G,placeholder:w("placeholder"),rows:5,className:"min-h-[120px] resize-none rounded-xl border-border bg-card text-[14px] text-foreground placeholder:text-[#9A9A9A] focus-visible:border-primary focus-visible:ring-primary/30"}),er&&(0,r.jsx)("span",{"aria-live":"polite",className:et?"self-end text-[11px] font-medium text-[#B3261E] dark:text-[#F08078]":"self-end text-[11px] text-muted-foreground",children:w("charCounter",{count:J.length,max:3e3})})]}),Q&&(0,r.jsxs)("div",{className:"flex items-start gap-1.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,r.jsx)(R.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{className:"min-w-0",children:Q})]}),(0,r.jsxs)(y.$,{type:"button",onClick:es,disabled:en,className:"gap-1.5 self-end rounded-lg bg-primary px-4 text-[13px] font-medium text-white hover:bg-[#B56A44] disabled:bg-border disabled:text-[#9A9A9A]",children:[G?(0,r.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,r.jsx)(j.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),Q?w("retry"):w("send")]})]})}var P=n(48416),H=n(78134),$=n(97438),K=n(37915),V=n(6748),W=n(88591),J=n(10263),Z=n(57223);function G(e){let{status:t}=e;return"running"===t?(0,r.jsxs)("span",{"aria-hidden":!0,className:"relative inline-flex h-2.5 w-2.5 items-center justify-center",children:[(0,r.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-primary opacity-30 motion-safe:animate-ping"}),(0,r.jsx)("span",{className:"relative inline-flex h-1.5 w-1.5 rounded-full bg-primary"})]}):"interrupted"===t?(0,r.jsx)(W.A,{"aria-hidden":!0,className:"h-3.5 w-3.5 text-[#B45309] dark:text-[#E0A34E]"}):"error"===t?(0,r.jsx)(R.A,{"aria-hidden":!0,className:"h-3.5 w-3.5 text-[#DC2626] dark:text-[#F08078]"}):(0,r.jsx)("span",{"aria-hidden":!0,className:"h-2 w-2 rounded-full bg-[#D7D2C9] dark:bg-[#2a2822]"})}function Y(e){let{row:t,selected:n,onSelect:s,nowMs:o}=e,d=(0,l.c)("daemonChat"),c=(0,a.Vq)(),u="running"===t.status?d("running"):"interrupted"===t.status?d("statusInterrupted"):"error"===t.status?d("statusError"):null;return(0,r.jsxs)(y.$,{variant:"ghost",onClick:s,"aria-current":n?"true":void 0,className:"relative h-auto w-full justify-start gap-0 rounded-none px-0 py-0 text-left transition-colors ".concat(n?"bg-[#FBF4EF] dark:bg-[#221e1b] hover:bg-[#FBF4EF] dark:hover:bg-[#26241f]":"bg-card hover:bg-background"),children:[n&&(0,r.jsx)("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-primary"}),(0,r.jsxs)("span",{className:"flex w-full items-center gap-3 px-4 py-3.5",children:[(0,r.jsx)("span",{className:"flex w-2.5 shrink-0 justify-center",children:(0,r.jsx)(G,{status:t.status})}),(0,r.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("span",{className:"flex items-center gap-1.5",children:[t.ideaAnchored&&(0,r.jsxs)(i.E,{variant:"secondary",className:"shrink-0 gap-1 border-0 bg-[#F3ECFB] dark:bg-[#221a30] px-1.5 py-0 text-[10px] font-medium text-[#7C5BC0] dark:text-[#B79AF0]",children:[(0,r.jsx)(J.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),d("badgeIdea")]}),(0,r.jsx)("span",{className:"truncate text-[14px] font-semibold text-foreground",children:t.title})]}),(0,r.jsxs)("span",{className:"mt-0.5 flex items-center gap-1.5",children:[u&&(0,r.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-wide ".concat("running"===t.status?"text-primary":"error"===t.status?"text-[#DC2626] dark:text-[#F08078]":"text-[#B45309] dark:text-[#E0A34E]"),children:u}),(0,r.jsx)("span",{className:"truncate font-mono text-[10px] text-muted-foreground",children:c(t.session.lastTurnAt,o)})]})]})]})]})}function Q(){return(0,r.jsxs)("div",{"aria-hidden":!0,className:"flex w-full items-center gap-3 px-4 py-3.5",children:[(0,r.jsx)("span",{className:"flex w-2.5 shrink-0 justify-center",children:(0,r.jsx)(Z.E,{className:"h-2.5 w-2.5 rounded-full"})}),(0,r.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,r.jsx)(Z.E,{className:"h-3.5 w-3/4 rounded"}),(0,r.jsx)(Z.E,{className:"mt-1.5 h-2.5 w-1/3 rounded"})]})]})}function X(e){let{agents:t,selectedAgentUuid:n,onSelectAgent:s,rows:i,selectedSessionUuid:d,onSelectSession:c,onNewConversation:u,visibleCount:x,onLoadMore:m,loading:g=!1}=e,f=(0,l.c)("daemonChat"),p=(0,a.le)(),h=i.slice(0,x),v=i.length>x,b=null===d;return(0,r.jsxs)("div",{className:"flex h-full flex-col gap-3",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5 px-1",children:[(0,r.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:f("agentSelectLabel")}),(0,r.jsxs)(C.l6,{value:null!=n?n:void 0,onValueChange:s,children:[(0,r.jsx)(C.bq,{"aria-label":f("agentSelectLabel"),className:"w-full rounded-lg border-border bg-card text-[13px] text-foreground",children:(0,r.jsx)(C.yv,{placeholder:f("agentSelectPlaceholder")})}),(0,r.jsx)(C.gC,{children:t.map(e=>(0,r.jsx)(C.eb,{value:e.agentUuid,children:(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(o.AgentAvatar,{name:e.agentName,size:16,className:"rounded-full"}),(0,r.jsx)("span",{children:e.agentName})]})},e.agentUuid))})]})]}),(0,r.jsx)("div",{className:"px-1",children:(0,r.jsxs)(y.$,{type:"button",onClick:u,"aria-current":b?"true":void 0,className:"h-9 w-full justify-center gap-1.5 rounded-lg text-[13px] font-medium ".concat(b?"bg-primary text-white hover:bg-[#B56A44]":"border border-[#E5D2C2] dark:border-[#33302a] bg-[#FBF4EF] dark:bg-[#221e1b] text-primary hover:bg-[#F6E9DF] dark:hover:bg-[#26241f]"),children:[(0,r.jsx)(N.A,{className:"h-4 w-4","aria-hidden":!0}),f("newConversationButton")]})}),(0,r.jsxs)(P.Zp,{"aria-busy":g,className:"flex min-h-0 flex-1 flex-col gap-0 overflow-hidden rounded-2xl border-border bg-card p-0 shadow-none",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-3.5",children:[(0,r.jsx)("span",{className:"font-mono text-[11px] font-medium uppercase tracking-[1px] text-muted-foreground",children:f("listHeader")}),g?(0,r.jsx)(Z.E,{"aria-hidden":!0,className:"h-3 w-4 rounded"}):(0,r.jsx)("span",{className:"font-mono text-[11px] font-medium text-muted-foreground",children:i.length})]}),(0,r.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),g?(0,r.jsx)("div",{"data-testid":"conversation-list-skeleton",className:"flex min-h-0 flex-1 flex-col overflow-y-auto",children:Array.from({length:5}).map((e,t)=>(0,r.jsxs)("div",{children:[(0,r.jsx)(Q,{}),t<4&&(0,r.jsx)("div",{className:"h-px w-full bg-[#F2EEE7] dark:bg-[#201e1a]"})]},t))}):0===i.length?(0,r.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-1.5 p-8 text-center",children:[(0,r.jsx)("p",{className:"text-[13px] font-medium text-muted-foreground",children:f("noSessions.title")}),(0,r.jsx)("p",{className:"max-w-[220px] text-[12px] leading-relaxed text-muted-foreground",children:f("noSessions.body")})]}):(0,r.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto",children:[h.map((e,t)=>(0,r.jsxs)("div",{children:[(0,r.jsx)(Y,{row:e,selected:d===e.session.uuid,onSelect:()=>c(e.session.uuid),nowMs:p}),t<h.length-1&&(0,r.jsx)("div",{className:"h-px w-full bg-[#F2EEE7] dark:bg-[#201e1a]"})]},e.session.uuid)),v&&(0,r.jsx)("div",{className:"px-4 py-3",children:(0,r.jsx)(y.$,{variant:"ghost",size:"sm",onClick:m,className:"h-8 w-full rounded-lg text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:f("loadMore")})})]})]})]})}var ee=n(94599),et=n(60532),en=n(25373),ea=n(30028),es=n(17730),er=n(44575),el=n(89967),ei=n(64993),eo=n(81750),ed=n(94310),ec=n(17001);function eu(e){if("number"!=typeof e||!Number.isFinite(e)||e<0)return"0";if(e<1e3)return String(Math.round(e));let t=(e,t)=>{let n=e.toFixed(1).replace(/\.0$/,"");return"".concat(n).concat(t)};return e<1e6?t(e/1e3,"k"):t(e/1e6,"M")}function ex(e){let{label:t,ariaLabel:n,rows:a}=e;return(0,r.jsxs)(ec.AM,{children:[(0,r.jsx)(ec.Wv,{asChild:!0,children:(0,r.jsxs)("button",{type:"button",className:"inline-flex cursor-pointer items-center gap-1 rounded-md bg-secondary px-1.5 py-0 text-[10px] font-medium tabular-nums text-muted-foreground outline-none focus-visible:ring-1 focus-visible:ring-ring","aria-label":n,children:[(0,r.jsx)(ed.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),t]})}),(0,r.jsx)(ec.hl,{align:"start",className:"w-fit min-w-[8rem] rounded-md p-2",children:(0,r.jsx)("div",{className:"flex flex-col gap-0.5 text-[11px]",children:a.map(e=>(0,r.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,r.jsx)("span",{className:"opacity-70",children:e.label}),(0,r.jsx)("span",{className:"font-mono tabular-nums",children:e.value})]},e.label))})})]})}function em(e){var t,n,a,s,i,o;let{usage:d}=e,c=(0,l.c)("daemonChat");if(!(d&&(null!=(t=d.inputTokens)?t:0)+(null!=(n=d.outputTokens)?n:0)+(null!=(a=d.cacheCreationTokens)?a:0)+(null!=(s=d.cacheReadTokens)?s:0)>0))return null;let u=(null!=(i=d.inputTokens)?i:0)+(null!=(o=d.outputTokens)?o:0),x=[];return null!=d.inputTokens&&x.push({label:c("usageInput"),value:d.inputTokens.toLocaleString()}),null!=d.outputTokens&&x.push({label:c("usageOutput"),value:d.outputTokens.toLocaleString()}),null!=d.cacheReadTokens&&x.push({label:c("usageCacheRead"),value:d.cacheReadTokens.toLocaleString()}),null!=d.cacheCreationTokens&&x.push({label:c("usageCacheWrite"),value:d.cacheCreationTokens.toLocaleString()}),d.model&&x.push({label:c("usageModel"),value:d.model}),(0,r.jsx)(ex,{label:c("usageBadgeLabel",{total:eu(u)}),ariaLabel:c("usageBadgeAria",{total:u}),rows:x})}function eg(e){let{totalInputTokens:t,totalOutputTokens:n,totalCacheReadTokens:a,totalCacheCreationTokens:s}=e,i=(0,l.c)("daemonChat"),o=t+n;if(o<=0)return null;let d=[{label:i("usageInput"),value:t.toLocaleString()},{label:i("usageOutput"),value:n.toLocaleString()}];return a>0&&d.push({label:i("usageCacheRead"),value:a.toLocaleString()}),s>0&&d.push({label:i("usageCacheWrite"),value:s.toLocaleString()}),(0,r.jsx)(ex,{label:i("usageBadgeLabel",{total:eu(o)}),ariaLabel:i("conversationUsageAria",{total:o}),rows:d})}var ef=n(12790),ep=n.n(ef),eh=n(32470),ev=n(83553),eb=n(69011),ej=n(77770),ew=n(84052),eN=n(4459),ey=n(23380),ek=n(72256),eC=n(20578),eA=n(16045),eE=n(97261);function eS(e){let{message:t,agentName:n}=e,a=(0,l.c)("daemonChat"),s="user"===t.role,i=s?a("roleYou"):n||a("roleAgent"),d=function(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})}(t.createdAt);return(0,r.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[!s&&(0,r.jsx)(o.AgentAvatar,{name:n||a("roleAgent"),size:"xs",className:"rounded-md"}),(0,r.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide ".concat(s?"text-primary":"text-muted-foreground"),children:i}),d&&(0,r.jsx)("span",{className:"font-mono text-[10px] tabular-nums text-muted-foreground",children:d})]}),s?(0,r.jsx)("p",{className:"whitespace-pre-wrap break-words text-[13px] leading-relaxed text-foreground",children:t.text}):(0,r.jsx)("div",{className:"prose prose-sm w-full min-w-0 max-w-full break-words text-[13px] leading-relaxed text-foreground [&_a]:break-all [&_code]:[overflow-wrap:anywhere] [&_img]:h-auto [&_img]:max-w-full [&_pre]:max-w-full [&_pre]:overflow-x-auto [&_table]:block [&_table]:max-w-full [&_table]:overflow-x-auto",children:(0,r.jsx)(eE.MarkdownContent,{children:t.text})})]})}let eU={task_assigned:{icon:eh.A,labelKey:"triggerTask"},mentioned:{icon:ev.A,labelKey:"triggerMention"},elaboration:{icon:eb.A,labelKey:"triggerElaboration"},elaboration_verified:{icon:ej.A,labelKey:"triggerElaborationVerified"},start_development:{icon:ew.A,labelKey:"triggerStartDevelopment"},yolo_requested:{icon:eN.A,labelKey:"triggerYoloRequested"},human_instruction:{icon:ey.A,labelKey:"triggerInstruction"},resume:{icon:ek.A,labelKey:"triggerResume"}};function eT(e){var t,n,s,o,d;let{turn:c,agentName:u,linkedExecution:x,mergedEvents:m=[]}=e,g=(0,l.c)("daemonChat"),f=eU[c.trigger],p=null!=(s=null==f?void 0:f.icon)?s:eh.A,h=g(f?f.labelKey:"triggerUnknown"),v="running"===c.status,j="pending"===c.status,w="interrupted"===c.status,N="merged"===c.status,y="ended"===c.status||w,k=g("running"===c.status?"turnStatusRunning":"pending"===c.status?"turnStatusPending":w?"turnStatusInterrupted":N?"turnStatusMerged":"turnStatusEnded"),C=c.messages.filter(e=>!e.uuid.startsWith("synthetic:")),A=x?(0,a.BS)(x):null,E=g((null==x?void 0:x.entityType)==="idea"?"openIdea":"openTask"),S=null!=(o=null==(t=c.promptText)?void 0:t.trim())?o:"",U=y&&"human_instruction"===c.trigger&&0===C.length&&S.length>0,T=null!=(d=null==(n=c.relayError)?void 0:n.trim())?d:"",F=y&&0===C.length&&T.length>0;return(0,r.jsxs)("div",{className:"flex gap-3",children:[(0,r.jsx)("div",{"aria-hidden":!0,className:"relative w-[3px] shrink-0 rounded-full ".concat(v||j?"bg-primary":"bg-[#EFEBE4] dark:bg-[#201e1b]"),children:v&&(0,r.jsx)("span",{className:"absolute inset-0 rounded-full bg-primary opacity-40 motion-safe:animate-pulse"})}),(0,r.jsxs)("div",{className:"min-w-0 flex-1 pb-2",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1",children:[(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,r.jsx)(p,{className:"h-3.5 w-3.5 text-primary","aria-hidden":!0}),(0,r.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-foreground",children:h})]}),(0,r.jsx)("span",{className:"font-mono text-[10px] uppercase tracking-wide text-muted-foreground",children:g("turnLabel",{seq:c.seq})}),(0,r.jsxs)(i.E,{variant:"secondary",className:"gap-1 border-0 px-1.5 py-0 text-[10px] font-medium ".concat(v?"bg-[#FBF0E8] dark:bg-[#221e1b] text-primary":j?"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-[#9A8C7E]":w?"bg-[#F5EEE3] dark:bg-[#221e19] text-[#A8763E] dark:text-[#E0B070]":"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground"),title:w&&c.interruptedReason?c.interruptedReason:void 0,children:[v&&(0,r.jsx)(b.A,{className:"h-2.5 w-2.5 motion-safe:animate-spin","aria-hidden":!0}),k]}),(0,r.jsx)(em,{usage:c.usage}),A&&(0,r.jsxs)(ep(),{href:A,className:"group inline-flex items-center gap-1 text-[11px] font-medium text-primary hover:text-[#B56A44]",children:[E,(0,r.jsx)(eC.A,{className:"h-3 w-3","aria-hidden":!0})]})]}),c.promptText&&c.promptText.trim().length>0&&(0,r.jsx)("p",{className:"mt-2 whitespace-pre-wrap break-words rounded-lg bg-[#FCFBF8] dark:bg-[#1e1d1b] px-3 py-2 text-[13px] leading-relaxed text-muted-foreground",children:c.promptText}),(0,r.jsx)("div",{className:"mt-3 flex min-w-0 flex-col gap-3",children:C.length>0?C.map(e=>(0,r.jsx)(eS,{message:e,agentName:u},e.uuid)):N?(0,r.jsx)("p",{className:"text-[12px] italic text-muted-foreground",children:g("turnMergedNote")}):F?(0,r.jsxs)("div",{className:"flex flex-col gap-1 rounded-lg border border-[#EADFCB] dark:border-[#3a3222] bg-[#FBF5EA] dark:bg-[#221d14] px-3 py-2.5",children:[(0,r.jsx)("p",{className:"text-[12px] leading-relaxed text-[#8A6D3B] dark:text-[#D9B473]",children:g("turnRelayFailed")}),(0,r.jsx)("p",{className:"whitespace-pre-wrap break-words font-mono text-[11px] leading-relaxed text-[#A98B54] dark:text-[#B89355]",children:T})]}):U?(0,r.jsx)("div",{className:"flex flex-col gap-2 rounded-lg border border-[#EADFCB] dark:border-[#3a3222] bg-[#FBF5EA] dark:bg-[#221d14] px-3 py-2.5",children:(0,r.jsx)("p",{className:"text-[12px] leading-relaxed text-[#8A6D3B] dark:text-[#D9B473]",children:g("turnEndedNoReply")})}):(0,r.jsx)("p",{className:"text-[12px] italic text-muted-foreground",children:g("turnNoMessages")})}),m.length>0&&(0,r.jsxs)(eo.Nt,{className:"mt-3",children:[(0,r.jsxs)(eo.R6,{className:"group inline-flex items-center gap-1.5 rounded-md text-[12px] font-medium text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[(0,r.jsx)(eA.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),g("turnMergedCount",{count:m.length}),(0,r.jsx)(es.A,{className:"h-3.5 w-3.5 transition-transform group-data-[state=open]:rotate-180","aria-hidden":!0})]}),(0,r.jsx)(eo.Ke,{className:"mt-2 flex flex-col gap-2.5",children:m.map(e=>(0,r.jsx)(eF,{turn:e.turn,linkedExecution:e.linkedExecution},e.turn.uuid))})]})]})]})}function eF(e){var t,n,s;let{turn:i,linkedExecution:o}=e,d=(0,l.c)("daemonChat"),c=eU[i.trigger],u=null!=(n=null==c?void 0:c.icon)?n:eh.A,x=d(c?c.labelKey:"triggerUnknown"),m=o?(0,a.BS)(o):null,g=d((null==o?void 0:o.entityType)==="idea"?"openIdea":"openTask"),f=null!=(s=null==(t=i.promptText)?void 0:t.trim())?s:"";return(0,r.jsxs)("div",{className:"flex min-w-0 flex-col gap-1 border-l border-border pl-3",children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-0.5",children:[(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,r.jsx)(u,{className:"h-3 w-3 text-muted-foreground","aria-hidden":!0}),(0,r.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:x})]}),(0,r.jsx)("span",{className:"font-mono text-[10px] uppercase tracking-wide text-muted-foreground",children:d("turnLabel",{seq:i.seq})}),m&&(0,r.jsxs)(ep(),{href:m,className:"group inline-flex items-center gap-1 text-[11px] font-medium text-primary hover:text-primary/80",children:[g,(0,r.jsx)(eC.A,{className:"h-3 w-3","aria-hidden":!0})]})]}),f.length>0&&(0,r.jsx)("p",{className:"whitespace-pre-wrap break-words text-[12px] leading-relaxed text-muted-foreground",children:f})]})}function eM(e){let{label:t,value:n,mono:a}=e;return(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-medium uppercase tracking-wide text-muted-foreground",children:t}),(0,r.jsx)("div",{className:"mt-0.5 truncate text-[13px] font-medium text-foreground ".concat(a?"font-mono":""),children:n})]})}function ez(e){let{cwd:t,host:n,crossHost:a}=e,s=(0,l.c)(),i=(0,l.c)("transcriptHeader"),o=(0,d.kn)(t),c=o.isUnknown?s(o.label):o.label,u=o.isUnknown?s(o.title):o.title,x=a?(0,d.g9)(n):null,g=x?x.isUnknown?s(x.label):x.label:null,f=x?x.isUnknown?s(x.title):x.title:null;return(0,r.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[(0,r.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md bg-[#F1ECE3] dark:bg-[#201e1a] px-2 py-0.5 ".concat(o.isUnknown?"italic text-muted-foreground":"text-muted-foreground"),title:"".concat(i("cwdAriaLabel"),": ").concat(u),"aria-label":"".concat(i("cwdAriaLabel"),": ").concat(u),children:[(0,r.jsx)(m.A,{className:"h-3 w-3 shrink-0 text-[#9A8C7E]","aria-hidden":!0}),(0,r.jsx)("span",{className:"truncate font-mono text-[11px] font-medium",children:c})]}),null!==g&&(0,r.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 text-[11px] font-medium text-muted-foreground",title:"".concat(i("hostAriaLabel"),": ").concat(f),"aria-label":"".concat(i("hostAriaLabel"),": ").concat(f),children:[(0,r.jsx)(ee.A,{className:"h-3 w-3 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{className:"truncate ".concat((null==x?void 0:x.isUnknown)?"italic":""),children:g})]})]})}function eB(e){let{backendSessionId:t}=e,n=(0,l.c)("daemonChat"),[a,s]=(0,h.useState)(!1),i=n(a?"sessionIdCopied":"copySessionId"),o=async()=>{try{var e;await (null==(e=navigator.clipboard)?void 0:e.writeText(t)),s(!0),setTimeout(()=>s(!1),2e3)}catch(e){E.q.error("Failed to copy session id:",e)}};return(0,r.jsxs)(y.$,{variant:"ghost",size:"sm",onClick:o,title:i,"aria-label":i,"aria-live":"polite",className:"inline-flex h-auto items-center gap-1.5 px-1.5 py-0.5 text-[12px] font-medium text-muted-foreground hover:bg-transparent hover:text-foreground",children:[a?(0,r.jsx)(et.A,{className:"h-3.5 w-3.5 text-green-600","aria-hidden":!0}):(0,r.jsx)(en.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),(0,r.jsx)("span",{className:a?"inline":"hidden lg:inline",children:i})]})}function eI(e){var t,n,s,o,d,c,x,m,g;let{session:f,turns:p,title:v,loading:j,error:N,originConnection:k,originOnline:C,originCrossHost:A=!1,sessionExecutions:E,executionsByUuid:S,footerLayout:U="inline",hasMoreEarlier:T,loadingEarlier:F,onLoadEarlier:z,originAgentOnlineConnections:B=[],onSessionStarted:I}=e,R=(0,l.c)("daemonChat"),L=(0,a.le)(),q=(0,a.Vq)(),D=(0,a.pb)(),O=(0,a.l5)(),_=(null==k||null==(t=k.agentName)?void 0:t.trim())||R("roleAgent"),H=k&&(null==f?void 0:f.runtimeCwd)?{...k,cwd:f.runtimeCwd}:k,$=(0,h.useMemo)(()=>{var e;let t=p.find(e=>"running"===e.status);return null!=(e=null!=t?t:p[p.length-1])?e:null},[p]),K=(0,h.useMemo)(()=>(function(e){let t=[];for(let n of e){let e=t[t.length-1];"merged"===n.status&&e&&"merged"!==e.absorbing.status?e.merged.push(n):t.push({absorbing:n,merged:[]})}return t})(p),[p]),V=null!=(o=null==f?void 0:f.totalInputTokens)?o:0,W=null!=(d=null==f?void 0:f.totalOutputTokens)?d:0,J=null!=(c=null==f?void 0:f.totalCacheReadTokens)?c:0,Z=null!=(x=null==f?void 0:f.totalCacheCreationTokens)?x:0,G=(0,h.useMemo)(()=>{let e=E.find(e=>"running"===e.status);if(e)return e;let t=E.find(e=>"interrupted"===e.status&&"user"===e.interruptedReason);if(t)return t;let n=E.find(e=>"interrupted"===e.status&&"crash"===e.interruptedReason);return null!=n?n:null},[E]),Y=(0,h.useMemo)(()=>G&&"running"===G.status?G:null,[G]),Q=(0,h.useRef)(null),X=null==(n=p[p.length-1])?void 0:n.uuid,ee=null!=(m=null==(s=p[p.length-1])?void 0:s.messages.length)?m:0;(0,h.useEffect)(()=>{var e;null==(e=Q.current)||e.scrollIntoView({block:"end"})},[X,ee]);let et=(null==f?void 0:f.status)==="ended";return(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-2 px-6 py-2.5 lg:gap-3 lg:py-4",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,r.jsx)("h3",{className:"truncate text-[17px] font-semibold text-foreground min-w-0",children:v}),H&&(0,r.jsx)("div",{className:"shrink-0",children:(0,r.jsx)(ez,{cwd:H.cwd,host:H.host,crossHost:A})})]}),(0,r.jsxs)(eo.Nt,{children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,r.jsx)(i.E,{variant:"secondary",className:"border-0 px-2 py-0.5 text-[10px] font-medium ".concat(et?"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground":"bg-[#DCFCE7] dark:bg-[#13291d] text-[#15803D] dark:text-[#4FD07A]"),children:R(et?"statusEnded":"statusActive")}),$&&"running"===$.status&&(0,r.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-[11px] font-medium text-primary",children:[(0,r.jsxs)("span",{className:"relative inline-flex h-2 w-2 items-center justify-center",children:[(0,r.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-primary opacity-40 motion-safe:animate-ping"}),(0,r.jsx)("span",{className:"relative inline-flex h-1 w-1 rounded-full bg-primary"})]}),(0,r.jsx)("span",{className:"hidden sm:inline",children:R("running")}),(null==Y?void 0:Y.startedAt)&&(0,r.jsx)("span",{className:"font-mono tabular-nums text-primary",title:R("runningElapsedLabel"),children:O(Y.startedAt,L)})]}),(0,r.jsx)(eg,{totalInputTokens:V,totalOutputTokens:W,totalCacheReadTokens:J,totalCacheCreationTokens:Z}),((null==f?void 0:f.backendSessionId)||k)&&(0,r.jsxs)("div",{className:"ml-auto flex items-center gap-1",children:[(null==f?void 0:f.backendSessionId)&&(0,r.jsx)(eB,{backendSessionId:f.backendSessionId}),k&&(0,r.jsxs)(eo.R6,{className:"group inline-flex items-center gap-1.5 text-[12px] font-medium text-muted-foreground hover:text-foreground",children:[(0,r.jsx)(ea.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),R("detailsLabel"),(0,r.jsx)(es.A,{className:"h-3.5 w-3.5 transition-transform group-data-[state=open]:rotate-180","aria-hidden":!0})]})]})]}),H&&(0,r.jsx)(eo.Ke,{children:(0,r.jsxs)("div",{className:"mt-3 flex flex-col gap-3 rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] p-4",children:[(0,r.jsx)(u,{connection:H,size:"sm"}),(0,r.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[C&&(0,r.jsx)(eM,{label:R("detailUptime"),value:D(H.connectedAt,L),mono:!0}),(0,r.jsx)(eM,{label:R("detailHost"),value:""===H.host?R("detailsHostUnknown"):H.host,mono:!0}),H.startedAt&&(0,r.jsx)(eM,{label:R("detailStarted"),value:q(H.startedAt,L)})]})]})})]})]}),(0,r.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),N?(0,r.jsx)("div",{className:"flex flex-1 items-center justify-center p-8",children:(0,r.jsxs)(P.Zp,{className:"items-center gap-3 rounded-2xl border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center shadow-none",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,r.jsx)(w.A,{className:"h-6 w-6 text-[#B45309] dark:text-[#E0A34E]"})}),(0,r.jsx)("h4",{className:"text-base font-semibold text-[#92400E] dark:text-[#E0A34E]",children:R("loadErrorTitle")}),(0,r.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:R("loadErrorBody")})]})}):j?(0,r.jsx)("div",{className:"flex flex-1 items-center justify-center p-8 text-[13px] text-muted-foreground",children:R("transcriptLoading")}):(0,r.jsx)(ei.F,{className:"daemon-transcript-scroll min-h-0 w-full flex-1",children:(0,r.jsxs)("div",{className:"flex w-full min-w-0 flex-col gap-3 px-6 py-3 lg:gap-5 lg:py-5",children:[(0,r.jsxs)("p",{className:"flex items-start gap-1.5 text-[11px] leading-relaxed text-muted-foreground",children:[(0,r.jsx)(er.A,{className:"mt-0.5 h-3 w-3 shrink-0","aria-hidden":!0}),(0,r.jsx)("span",{children:R("privacyNote")})]}),T&&(0,r.jsx)("div",{className:"flex justify-center",children:(0,r.jsxs)(y.$,{variant:"ghost",size:"sm",onClick:z,disabled:F,className:"h-8 gap-1.5 rounded-lg text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:[F?(0,r.jsx)(b.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,r.jsx)(el.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),R(F?"loadingEarlier":"loadEarlier")]})}),K.map(e=>{var t;return(0,r.jsx)(eT,{turn:e.absorbing,agentName:_,linkedExecution:e.absorbing.executionUuid&&null!=(t=S.get(e.absorbing.executionUuid))?t:null,mergedEvents:e.merged.map(e=>{var t;return{turn:e,linkedExecution:e.executionUuid&&null!=(t=S.get(e.executionUuid))?t:null}})},e.absorbing.uuid)}),(0,r.jsx)("div",{ref:Q})]})}),!N&&f&&(0,r.jsx)("div",{className:"flex flex-col gap-3 border-t border-[#EFEBE4] dark:border-[#2a2a2e] bg-background px-6 py-2.5 lg:py-4",children:(0,r.jsx)(M,{sessionUuid:f.uuid,originOnline:C,layout:U,controllableExecution:G,agentUuid:null!=(g=null==k?void 0:k.agentUuid)?g:null,onlineConnections:B,onSessionStarted:I})})]})}function eR(e){let{agentUuid:t,agentName:n,onlineConnections:a,onStarted:s}=e,i=(0,l.c)("daemonChat"),o=null!==t&&a.length>0;return(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1.5 px-6 py-4",children:[(0,r.jsxs)("h3",{className:"flex items-center gap-2 text-[17px] font-semibold text-foreground",children:[(0,r.jsx)(N.A,{className:"h-[18px] w-[18px] text-primary","aria-hidden":!0}),i("newConversationTitle")]}),(0,r.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:t?i("newConversationBody",{agent:n}):i("newConversationNoAgent")})]}),(0,r.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),(0,r.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto px-6 py-5",children:o?(0,r.jsx)(B,{agentUuid:t,onlineConnections:a,layout:"inline",hideHeader:!0,onStarted:s}):(0,r.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-2.5 rounded-xl border border-dashed border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center",children:[(0,r.jsx)("div",{className:"flex h-11 w-11 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,r.jsx)(w.A,{className:"h-5 w-5 text-[#B45309] dark:text-[#E0A34E]","aria-hidden":!0})}),(0,r.jsx)("p",{className:"text-[13px] font-medium text-[#92400E] dark:text-[#E0A34E]",children:i("newConversationNoOnlineTitle")}),(0,r.jsx)("p",{className:"max-w-[300px] text-[12px] leading-relaxed text-muted-foreground",children:i("newConversationNoOnlineBody")})]})})]})}function eL(e,t){return e.filter(e=>(function(e,t){var n;let a=null!=(n=t.directIdeaUuid)?n:t.sessionId.includes("::")?t.sessionId.split("::")[0]:null;return a?"idea"===e.entityType&&e.entityUuid===a||e.directIdeaUuid===a:"daemon_session"===e.entityType&&e.entityUuid===t.sessionId})(e,t))}function eq(e,t){var n;let a=eL(null!=(n=e[t.originConnectionUuid])?n:[],t);return a.length>0?a:eL(Object.values(e).flat(),t)}function eD(e,t){if(0===e.length||t.seq>e[e.length-1].seq)return[...e,t];let n=e.findIndex(e=>e.seq>t.seq),a=-1===n?e.length:n;return[...e.slice(0,a),t,...e.slice(a)]}function eO(e,t){let n=new Map;for(let t of e)n.set(t.uuid,t);for(let e of t){let t=n.get(e.uuid);if(!t){n.set(e.uuid,e);continue}let a=new Set(t.messages.map(e=>e.uuid)),s=e.messages.filter(e=>!a.has(e.uuid));n.set(e.uuid,{...e,messages:[...t.messages,...s]})}return[...n.values()].sort((e,t)=>e.seq-t.seq)}function e_(){var e,t,n;let a=(0,l.c)("daemonChat"),{status:s,connections:i,executionsByConnection:o,setOpenSession:d,subscribeTranscript:c,focusTarget:u,clearChatFocusTarget:x}=(0,L.$d)(),[m,g]=(0,h.useState)([]),[f,p]=(0,h.useState)("loading"),v=(0,h.useCallback)(async()=>{try{let t=await (0,A.tm)("/api/daemon-sessions");if(!t.ok)return void p("error");let n=await t.json();if(n.success){var e;g(null!=(e=n.data.sessions)?e:[]),p("ok")}else p("error")}catch(e){E.q.error("Failed to fetch daemon sessions:",e),p("error")}},[]);(0,h.useEffect)(()=>{v();let e=setInterval(v,15e3);return()=>clearInterval(e)},[v]);let b=(0,h.useMemo)(()=>{let e=new Map;for(let n of i){var t;!e.has(n.agentUuid)&&(null==(t=n.agentName)?void 0:t.trim())&&e.set(n.agentUuid,n.agentName.trim())}return[...new Set([...i.map(e=>e.agentUuid),...m.map(e=>e.agentUuid)])].map(t=>{var n;return{agentUuid:t,agentName:null!=(n=e.get(t))?n:a("roleAgent")}})},[i,m,a]),j=(0,h.useMemo)(()=>{var e,t,n;let a=null;for(let e of m)(!a||e.lastTurnAt>a.lastTurnAt)&&(a={agentUuid:e.agentUuid,lastTurnAt:e.lastTurnAt});return null!=(n=null!=(t=null==a?void 0:a.agentUuid)?t:null==(e=b[0])?void 0:e.agentUuid)?n:null},[m,b]),[N,k]=(0,h.useState)(null),C=N&&b.some(e=>e.agentUuid===N)?N:j;(0,h.useEffect)(()=>{!N&&"ok"===s&&"ok"===f&&j&&k(j)},[N,s,f,j]);let S=(0,h.useCallback)(e=>{var t,n,s;if(null==(t=e.title)?void 0:t.trim())return e.title.trim();if(e.directIdeaUuid)return(null==(s=e.ideaTitle)?void 0:s.trim())?e.ideaTitle.trim():a("conversationIdea",{id:e.directIdeaUuid.slice(0,8)});let r=null==(n=e.firstInstruction)?void 0:n.trim();if(r){let e=r.replace(/\s+/g," ").trim();return e.length>60?"".concat(e.slice(0,60).trimEnd(),"…"):e}return a("conversationAdHoc",{id:e.sessionId.slice(0,8)})},[a]),U=(0,h.useMemo)(()=>C?m.filter(e=>e.agentUuid===C).sort((e,t)=>e.lastTurnAt<t.lastTurnAt?1:-1).map(e=>({session:e,title:S(e),ideaAnchored:null!=e.directIdeaUuid,status:function(e,t){let n=eL(eq(e,t),t);if(n.some(e=>"running"===e.status))return"running";let a=n.find(e=>"interrupted"===e.status);return a?"user"===a.interruptedReason?"interrupted":"error":null}(o,e)})):[],[m,C,o,S]),[T,F]=(0,h.useState)(12);(0,h.useEffect)(()=>{F(12)},[C]);let[M,z]=(0,h.useState)(null),B=(0,h.useMemo)(()=>{var e;return null!=(e=U.find(e=>e.session.uuid===M))?e:null},[U,M]),[I,R]=(0,h.useState)(null),[D,O]=(0,h.useState)([]),[_,H]=(0,h.useState)(!1),[$,W]=(0,h.useState)(!1),[J,Z]=(0,h.useState)(!1),[G,Y]=(0,h.useState)(!1),[Q,ee]=(0,h.useState)(null),et=(0,h.useRef)(0),en=(0,h.useRef)(new Set),ea=null!=(t=null==B?void 0:B.session.uuid)?t:null;(0,h.useEffect)(()=>(d(ea),()=>d(null)),[ea,d]),(0,h.useEffect)(()=>{if(!ea){R(null),O([]),W(!1),Z(!1),ee(null),en.current=new Set;return}let e=++et.current;en.current=new Set,H(!0),W(!1),Z(!1),ee(null),O([]),(async()=>{try{let n=await (0,A.tm)("/api/daemon-sessions/".concat(ea));if(e!==et.current)return;if(!n.ok)return void W(!0);let a=await n.json();if(e!==et.current)return;if(a.success){var t;let e=a.data;for(let n of(R(e),null!=(t=e.turns)?t:[]))("ended"===n.status||"interrupted"===n.status)&&en.current.add(n.uuid);O(t=>{var n;return eO(t,null!=(n=e.turns)?n:[])}),Z(!!e.hasMore),ee(null!==e.oldestTurnSeq&&null!==e.oldestMsgSeq?{turnSeq:e.oldestTurnSeq,msgSeq:e.oldestMsgSeq}:null)}else W(!0)}catch(t){if(e!==et.current)return;E.q.error("Failed to fetch daemon session detail:",t),W(!0)}finally{e===et.current&&H(!1)}})()},[ea]);let es=(0,h.useCallback)(async()=>{if(!ea||G||!Q)return;let{turnSeq:e,msgSeq:t}=Q,n=et.current;Y(!0);try{let a=await (0,A.tm)("/api/daemon-sessions/".concat(ea,"?beforeTurnSeq=").concat(e,"&beforeMsgSeq=").concat(t));if(n!==et.current||!a.ok)return;let s=await a.json();if(n!==et.current)return;if(s.success){let e=s.data;O(t=>{var n;return eO(null!=(n=e.turns)?n:[],t)}),Z(!!e.hasMore),null!==e.oldestTurnSeq&&null!==e.oldestMsgSeq&&ee({turnSeq:e.oldestTurnSeq,msgSeq:e.oldestMsgSeq})}}catch(e){E.q.error("Failed to load earlier transcript turns:",e)}finally{Y(!1)}},[ea,G,Q]);(0,h.useEffect)(()=>{if(ea)return c(e=>{if(O(t=>(function(e,t){var n,a;let s=e.findIndex(e=>e.uuid===t.turn.uuid);if("turn_created"===t.trigger){let n={...t.turn,messages:[]};if(-1===s)return eD(e,n);let a=[...e];return a[s]={...n,messages:e[s].messages},a}if(-1===s)return eD(e,{...t.turn,messages:null!=(n=t.messages)?n:[]});let r=[...e];if("turn_status_changed"===t.trigger)return r[s]={...r[s],...t.turn},r;let l=new Set(r[s].messages.map(e=>e.uuid)),i=(null!=(a=t.messages)?a:[]).filter(e=>!l.has(e.uuid));return r[s]={...r[s],...t.turn,messages:[...r[s].messages,...i]},r})(t,e)),"turn_status_changed"===e.trigger){let t=function(e,t){var n,a,s,r,l;if("ended"!==t.status&&"interrupted"!==t.status)return null;let i=null!=(n=t.usage)?n:null;if(!i||e.has(t.uuid))return null;let o=null!=(a=i.inputTokens)?a:0,d=null!=(s=i.outputTokens)?s:0,c=null!=(r=i.cacheReadTokens)?r:0,u=null!=(l=i.cacheCreationTokens)?l:0;return 0===o&&0===d&&0===c&&0===u?null:{addInput:o,addOutput:d,addCacheRead:c,addCacheWrite:u}}(en.current,e.turn);t&&R(n=>n?(en.current.add(e.turn.uuid),{...n,session:{...n.session,totalInputTokens:n.session.totalInputTokens+t.addInput,totalOutputTokens:n.session.totalOutputTokens+t.addOutput,totalCacheReadTokens:n.session.totalCacheReadTokens+t.addCacheRead,totalCacheCreationTokens:n.session.totalCacheCreationTokens+t.addCacheWrite}}):n)}})},[ea,c]);let er=(0,h.useMemo)(()=>{var e;let t=null==I?void 0:I.session.originConnectionUuid;return t&&null!=(e=i.find(e=>e.uuid===t))?e:null},[I,i]),el=(null==er?void 0:er.effectiveStatus)==="online",ei=(0,h.useMemo)(()=>{let e=null==er?void 0:er.agentUuid;if(!e)return!1;let t=new Set;for(let n of i)n.agentUuid===e&&""!==n.host&&t.add(n.host);return t.size>1},[er,i]),eo=(0,h.useMemo)(()=>C?i.filter(e=>e.agentUuid===C&&"online"===e.effectiveStatus):[],[i,C]),ed=(0,h.useMemo)(()=>{let e=null==er?void 0:er.agentUuid;return e?i.filter(t=>t.agentUuid===e&&"online"===t.effectiveStatus):[]},[er,i]),ec=null!=(n=null==(e=b.find(e=>e.agentUuid===C))?void 0:e.agentName)?n:a("roleAgent"),eu=(0,h.useMemo)(()=>{let e=null==I?void 0:I.session;return e?eq(o,e):[]},[I,o]),ex=(0,h.useMemo)(()=>{let e=new Map;for(let t of eu)e.set(t.uuid,t);return e},[eu]),em=B?B.title:I?S(I.session):"",[eg,ef]=(0,h.useState)(!1);(0,h.useEffect)(()=>{eg&&M&&!U.some(e=>e.session.uuid===M)&&ef(!1)},[U,eg,M]);let ep=(0,h.useCallback)(e=>{z(e)},[]),eh=(0,h.useCallback)(()=>{z(null),ef(!0)},[]),ev=(0,h.useCallback)(e=>{let t={uuid:e.uuid,agentUuid:e.agentUuid,sessionId:e.sessionId,directIdeaUuid:e.directIdeaUuid,originConnectionUuid:e.originConnectionUuid,status:e.status,title:e.title,lastTurnAt:e.lastTurnAt,originOnline:!0,firstInstruction:null,ideaTitle:null};g(n=>{let a=n.findIndex(e=>e.uuid===t.uuid);if(-1===a)return[t,...n];let s=[...n];return s[a]={...s[a],originConnectionUuid:e.originConnectionUuid,originOnline:!0,status:e.status,lastTurnAt:e.lastTurnAt},s}),R(t=>t&&t.session.uuid===e.uuid?{...t,session:{...t.session,originConnectionUuid:e.originConnectionUuid,status:e.status,lastTurnAt:e.lastTurnAt}}:t),z(e.uuid),v()},[v]);(0,h.useEffect)(()=>{u&&(k(u.agentUuid),u.sessionSeed?(ev(u.sessionSeed),ef(!0)):u.sessionUuid?(z(u.sessionUuid),ef(!0)):z(null),x())},[u,x,ev]);let{body:eb,listLoading:ej}=function(e){let t="loading"===e.listStatus,n="error"===e.listStatus&&0===e.sessionCount,a="ok"===e.listStatus&&0===e.sessionCount&&0===e.agentCount;return{body:n?"error":a?"no-agents":"body",listLoading:t}}({listStatus:f,sessionCount:m.length,agentCount:b.length}),ew=e=>{var t;return(0,r.jsx)(eI,{session:null!=(t=null==I?void 0:I.session)?t:null,turns:D,title:em,loading:_,error:$,originConnection:er,originOnline:el,originCrossHost:ei,sessionExecutions:eu,executionsByUuid:ex,footerLayout:e,hasMoreEarlier:J,loadingEarlier:G,onLoadEarlier:es,originAgentOnlineConnections:ed,onSessionStarted:ev})},eN=ew("inline"),ey=(0,r.jsx)(eR,{agentUuid:C,agentName:ec,onlineConnections:eo,onStarted:ev}),ek=B?ew("stacked"):ey;return(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col bg-background",children:[eg&&(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col lg:hidden",children:[(0,r.jsx)("div",{className:"flex shrink-0 items-center gap-1 border-b border-[#EFEBE4] dark:border-[#2a2a2e] bg-background px-3 py-2.5",children:(0,r.jsxs)(y.$,{variant:"ghost",size:"sm",onClick:()=>ef(!1),className:"h-9 gap-1 px-2 text-[15px] font-normal text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:[(0,r.jsx)(K.A,{className:"h-5 w-5"}),a("mobileBack")]})}),(0,r.jsx)("div",{className:"min-h-0 flex-1",children:ek})]}),(0,r.jsxs)("div",{className:"".concat(eg?"hidden lg:flex":"flex"," h-full min-h-0 flex-col gap-3 overflow-y-auto px-4 py-3 lg:overflow-hidden md:px-8 md:py-4 lg:gap-3 lg:px-8 lg:py-4"),children:[(0,r.jsx)("header",{className:"flex flex-col",children:(0,r.jsx)("h2",{className:"text-[22px] font-semibold text-foreground lg:text-[24px]",children:a("title")})}),"error"===eb?(0,r.jsxs)(P.Zp,{className:"items-center gap-3 rounded-2xl border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center shadow-none md:p-12",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,r.jsx)(w.A,{className:"h-6 w-6 text-[#B45309] dark:text-[#E0A34E]"})}),(0,r.jsx)("h3",{className:"text-base font-semibold text-[#92400E] dark:text-[#E0A34E]",children:a("loadErrorTitle")}),(0,r.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:a("loadErrorBody")})]}):"no-agents"===eb?(0,r.jsxs)(P.Zp,{className:"items-center gap-4 rounded-2xl border-border bg-card p-8 text-center shadow-none md:p-12",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-primary/[0.08]",children:(0,r.jsx)(V.A,{className:"h-6 w-6 text-primary"})}),(0,r.jsx)("h3",{className:"text-base font-semibold text-foreground",children:a("noAgents.title")}),(0,r.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:a("noAgents.body")}),(0,r.jsx)("div",{className:"w-full max-w-md text-left",children:(0,r.jsx)(q.Bs,{variant:"prominent"})})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"flex flex-col gap-3 lg:hidden",children:(0,r.jsx)(X,{agents:b,selectedAgentUuid:C,onSelectAgent:e=>{k(e),z(null)},rows:U,selectedSessionUuid:M,onSelectSession:e=>{ep(e),ef(!0)},onNewConversation:eh,visibleCount:T,onLoadMore:()=>F(e=>e+12),loading:ej})}),(0,r.jsxs)("div",{className:"hidden min-h-0 flex-1 gap-5 lg:flex",children:[(0,r.jsx)("div",{className:"flex w-[320px] shrink-0 flex-col",children:(0,r.jsx)(X,{agents:b,selectedAgentUuid:C,onSelectAgent:e=>{k(e),z(null)},rows:U,selectedSessionUuid:M,onSelectSession:ep,onNewConversation:eh,visibleCount:T,onLoadMore:()=>F(e=>e+12),loading:ej})}),(0,r.jsx)(P.Zp,{className:"flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border-border bg-card p-0 shadow-none",children:B?eN:ey})]})]})]})]})}function eP(){let e=(0,l.c)("daemonChat"),{modalOpen:t,setModalOpen:n}=(0,L.$d)();return(0,r.jsx)($.lG,{open:t,onOpenChange:n,children:(0,r.jsxs)($.Cf,{className:"flex h-dvh max-h-dvh w-screen max-w-none flex-col gap-0 overflow-hidden rounded-none border-0 p-0 sm:h-[92vh] sm:max-h-[92vh] sm:w-[min(96vw,1100px)] sm:max-w-[min(96vw,1100px)] sm:rounded-lg sm:border",children:[(0,r.jsxs)(H.bL,{children:[(0,r.jsx)($.L3,{children:e("title")}),(0,r.jsx)($.rr,{children:e("subtitle")})]}),(0,r.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:(0,r.jsx)(e_,{})})]})})}var eH=n(43057),e$=n(16349);function eK(e){let{mention:t,displayName:n}=e,a=(0,l.c)("mention"),c=(0,l.c)("agentPresence"),{openChatForAgent:u}=(0,L.$d)(),{user:x}=(0,e$.As)(),{pinned:m,online:g,ownerUuid:f,host:p,cwd:v}=function(e){let{connections:t}=(0,L.$d)(),{uuid:n,pinnedHost:a,pinnedCwd:s,runtimeCwd:r}=e,l="pinnedHost"in e||"pinnedCwd"in e;return(0,h.useMemo)(()=>(function(e,t){var n,a,s,r,l,i;let o=void 0!==e.pinnedHost||void 0!==e.pinnedCwd,d=t.filter(t=>t.agentUuid===e.uuid);if(o){let t=null!=(s=e.pinnedHost)?s:null,n=null!=(r=e.pinnedCwd)?r:null,i=d.find(a=>e.runtimeCwd?a.host===t&&"online"===a.effectiveStatus:a.host===t&&a.cwd===n);return i?{pinned:!0,online:"online"===i.effectiveStatus,ownerUuid:i.ownerUuid,host:e.runtimeCwd?t:i.host,cwd:e.runtimeCwd?n:i.cwd}:{pinned:!0,online:!1,ownerUuid:null!=(l=null==(a=d[0])?void 0:a.ownerUuid)?l:null,host:t,cwd:n}}let c=d.find(e=>"online"===e.effectiveStatus);return{pinned:!1,online:void 0!==c,ownerUuid:null!=(i=null==(n=null!=c?c:d[0])?void 0:n.ownerUuid)?i:null,host:null,cwd:null}})(l?{uuid:n,pinnedHost:a,pinnedCwd:s,runtimeCwd:r}:{uuid:n},t),[t,n,a,s,r,l])}(void 0!==t.pinnedHost||void 0!==t.pinnedCwd?{uuid:t.uuid,pinnedHost:t.pinnedHost,pinnedCwd:t.pinnedCwd}:{uuid:t.uuid}),b=(null==x?void 0:x.uuid)!=null&&x.uuid===f&&g,j=a(g?"online":"offline"),w=m?(0,d.kn)(v):null,N=m?(0,d.g9)(null!=p?p:""):null;return(0,r.jsxs)(ec.AM,{children:[(0,r.jsx)(ec.Wv,{asChild:!0,children:(0,r.jsxs)(i.E,{variant:"secondary",className:"cursor-pointer gap-1 align-baseline","aria-label":a("badgeAria",{name:n,status:j}),children:[(0,r.jsx)(s.m,{online:g}),(0,r.jsxs)("span",{children:["@",n]})]})}),(0,r.jsx)(ec.hl,{className:"w-64",align:"start",children:(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(o.AgentAvatar,{name:n,size:"sm",className:"rounded-full"}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("p",{className:"truncate text-sm font-semibold text-foreground",children:n}),(0,r.jsxs)("p",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,r.jsx)(s.m,{online:g}),j]})]})]}),m&&w&&N&&(0,r.jsxs)("dl",{className:"flex flex-col gap-1.5 text-xs",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,r.jsx)("dt",{className:"text-muted-foreground",children:a("workingDirectory")}),(0,r.jsx)("dd",{className:"truncate font-mono text-foreground",title:w.isUnknown?c("unknownPath"):w.title,children:w.isUnknown?c("unknownPath"):w.label})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,r.jsx)("dt",{className:"text-muted-foreground",children:a("host")}),(0,r.jsx)("dd",{className:"truncate font-mono text-foreground",title:N.isUnknown?c("unknownHost"):N.title,children:N.isUnknown?c("unknownHost"):N.label})]})]}),b&&(0,r.jsxs)(y.$,{size:"sm",variant:"outline",className:"w-full",onClick:()=>{u(t.uuid,m?{host:null!=p?p:"",cwd:null!=v?v:null}:void 0)},children:[(0,r.jsx)(eH.A,{}),a("openConversation")]})]})})]})}n(72530)},95291:(e,t,n)=>{n.d(t,{BS:()=>m,Vq:()=>l,Z5:()=>u,l5:()=>c,le:()=>r,pb:()=>d,tN:()=>x});var a=n(1856),s=n(39268);function r(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3,[t,n]=(0,a.useState)(()=>Date.now());return(0,a.useEffect)(()=>{let t=setInterval(()=>n(Date.now()),e);return()=>clearInterval(t)},[e]),t}function l(){let e=(0,s.c)("time");return(0,a.useCallback)((t,n)=>{let a=n-new Date(t).getTime(),s=Math.floor(a/6e4),r=Math.floor(a/36e5),l=Math.floor(a/864e5);return s<1?e("justNow"):s<60?e("minutesAgo",{minutes:s}):r<24?e("hoursAgo",{hours:r}):e("daysAgo",{days:l})},[e])}function i(e){return e<10?"0".concat(e):String(e)}function o(){let e=(0,s.c)("agentConnections");return(0,a.useCallback)((t,n)=>{let a=Math.floor(Math.max(0,n-new Date(t).getTime())/1e3),s=Math.floor(a/86400),r=Math.floor(a%86400/3600),l=Math.floor(a%3600/60),o="".concat(i(r),":").concat(i(l),":").concat(i(a%60));return s>0?e("uptimeMonoDays",{days:s,time:o}):o},[e])}let d=o,c=o;function u(){let e=(0,s.c)("agentConnections");return(0,a.useCallback)(t=>{switch(t){case"claude_code":return e("clientClaudeCode");case"openclaw":return e("clientOpenclaw");case"codex":return e("clientCodex");case"kiro":return e("clientKiro");case"dsh":return e("clientDsh");default:return e("clientUnknown")}},[e])}function x(){let e=(0,s.c)("agentConnections");return(0,a.useCallback)(t=>{switch(t){case"task":return e("entityTask");case"idea":return e("entityIdea");case"proposal":return e("entityProposal");case"document":return e("entityDocument");case"daemon_session":return e("entityConversation");default:return e("entityUnknown")}},[e])}function m(e){if(!e.projectUuid)return null;switch(e.entityType){case"task":return"/projects/".concat(e.projectUuid,"/tasks/").concat(e.entityUuid);case"idea":return"/projects/".concat(e.projectUuid,"/dashboard?panel=").concat(e.entityUuid);case"proposal":return"/projects/".concat(e.projectUuid,"/proposals/").concat(e.entityUuid);case"document":return"/projects/".concat(e.projectUuid,"/documents/").concat(e.entityUuid);default:return null}}},97261:(e,t,n)=>{n.d(t,{MarkdownContent:()=>u});var a=n(90508),s=n(1856),r=n(65700),l=n(19169),i=n(26190);let o=l.a,d=(0,l.V)({themes:["github-dark","github-dark"]});l.a,i.a;let c={mermaid:{fullscreen:!0,download:!0,copy:!0,panZoom:!0}};function u(e){let{children:t,components:n,allowedTags:l,literalTagContent:u}=e,x=function(){let[e,t]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{let e=document.documentElement,n=()=>t(e.classList.contains("dark"));n();let a=new MutationObserver(n);return a.observe(e,{attributes:!0,attributeFilter:["class"]}),()=>a.disconnect()},[]),e}(),m=(0,s.useMemo)(()=>({config:{theme:x?"dark":"default"}}),[x]),g=(0,s.useMemo)(()=>({code:x?d:o,mermaid:i.a}),[x]);return(0,a.jsx)(r.jH,{plugins:g,controls:c,mermaid:m,components:n,allowedTags:l,literalTagContent:u,children:t},x?"dark":"light")}}}]);
|