@mndrk/agx 2.0.55 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/required-server-files.json +5 -0
- package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +23 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js +4 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js +5 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/build-manifest.json +9 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js +13 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route_client-reference-manifest.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js +19 -8
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/build-manifest.json +9 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js +28 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route_client-reference-manifest.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js +9 -5
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js +16 -15
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/pause/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js +9 -8
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page/react-loadable-manifest.json +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.rsc +15 -15
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_full.segment.rsc +15 -15
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_tree.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/build-manifest.json +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/next-font-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/react-loadable-manifest.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js +14 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +8 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/0jps_app_api_projects_[id]_objectives_[objectiveId]_worker_route_actions_0v8q3zz.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__0_au5u1._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__13x93ar._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0_10qfd._.js → [root-of-the-server]__0.6yz1u._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__01lsgl~._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0205scg._.js → [root-of-the-server]__03.9arn._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__01ol22y._.js → [root-of-the-server]__03h0gqp._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__094z9yf._.js → [root-of-the-server]__08jo91s._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__09j9jpf._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0-nye63._.js → [root-of-the-server]__09jghbu._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0_7hiof._.js +43 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0.jam.l._.js → [root-of-the-server]__0a0cq38._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0asvfdo._.js +54 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0c86535._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0cj1krd._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0aa-88e._.js → [root-of-the-server]__0dy3h2i._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0touqng._.js → [root-of-the-server]__0e8-2k_._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0enhv5p._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0f9byr.._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7hc1-._.js +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7p6pw._.js +55 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__019q25b._.js → [root-of-the-server]__0gj~dap._.js} +7 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0e6cj2y._.js → [root-of-the-server]__0hc45jw._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0avz575._.js → [root-of-the-server]__0hkcw03._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0hmw36u._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0l53ok5._.js +54 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0n.momw._.js +8 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0tjo9we._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0-~t2br._.js → [root-of-the-server]__0v7jjvl._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0x6w64i._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__11nke7t._.js → [root-of-the-server]__0y3qxv1._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__10z8f9h._.js → [root-of-the-server]__0ygidxe._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0z82z0-._.js +49 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0zsv-tb._.js +8 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~nnfjr._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~x4jbk._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10d.dhd._.js +229 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__12qy318._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_039.xxy._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_06oeti1._.js +49 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0dyy7h.._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0gi7c9x._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0gr.psg._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0sd8z0i._.js +21 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0y42h_~._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0~ah49q._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_01kqgle._.js +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_06qet8g._.js +36 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_0m2ly._.js +397 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_a~bj0._.js +25 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0a15wtk._.js +397 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0bjdpen._.js +29 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0fr1qq6._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0g.q2r6._.js +41 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0h7wd0e._.js +29 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0i7fs.i._.js +397 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0ipg-p6._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0npxy21._.js +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0uhfa93._.js +21 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_12wpldq._.js +25 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_worker_route_actions_116303i.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01hd2_5._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01pvj2g._.js +34 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0ik933l._.js +55 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0o1v.j4._.js +79 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0pxj122._.js +55 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_automations_index_ts_0_8ch28._.js +10 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_082u-ls._.js +41 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0.xgxyl._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0yu3--n._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0ze8hzc._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_get-store_ts_0p0aod1._.js +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_linear-worker_ts_0ycjwem._.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0gips_c.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0u_5kfo.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/02dz_local__next-internal_server_app_projects_[slug]_folders_page_actions_03fg4j9.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0tvwux2._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0e2_v_.._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0hvpc.y._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0w3hl3p._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__006vr7.._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__08d5c~o._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0_n~ybp._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0d18x53._.js +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0fl7_-o._.js +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0h~rb5r._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0j9m72.._.js +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__02.r909._.js → [root-of-the-server]__0n5g8ml._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0w.zmt6._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0z7nw_r._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__10h_7t0._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_00trrg8._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0s~0ump._.js → _064h43p._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0742x_.._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ejzn1e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0fwy5tm._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0sjchy6._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ufdu.z._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0wk3skw._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yeuuy1._.js +25 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_03z24q2._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_ac-.f._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0a-8i4p._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0h3mfm7._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_075cq2j._.js → apps_local_0k4~c1x._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0n80y4_._.js → apps_local_0nvzo3y._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0t6p.qm._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0v~bvwg._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_11k_-8~._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_[id]_page_tsx_06n47n~._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_execution-graph_page_tsx_0tn2sx9._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_0ju618z._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_graph_[taskId]_page_tsx_0bctfd-._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_0aaa3~t._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_linear_page_tsx_0a~n5y8._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_0kcaeqi._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_new_page_tsx_0yqd0a5._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_page_tsx_06czvz-._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_terminal_page_tsx_01n9qk.._.js +12 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_orphans_page_tsx_0sdv.11._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_setup_page_tsx_0ql2qmr._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_PromptJobBoard_tsx_06zob36._.js +8 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TaskCard_tsx_0e35_z5._.js +6 -6
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_chat-ui_ChatContainer_tsx_0c9fjtl._.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_0k4tfip._.js +6 -6
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_thread_WorkspaceSidebar_tsx_0unv2xp._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0mk0s0o.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-build-manifest.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-_ukhpeg429c.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-olq~7zw3wjy.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0142ce0jj3j7r.js → 0-vo_x2cxmjm3.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/003q-y3exxalk.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/00po4v2x~0x_z.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/013gtut17~fne.js +23 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/014z_yruiincl.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/041-dhls9zkl1.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/04yoml2rqnuot.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/07646a0h94826.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0_mrpyqcoyb_5.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0rm7v.1y6qcni.js → 0aewbg0i704w7.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0px65ynyk3t1d.js → 0bchtyu6m.2yv.js} +7 -7
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0dnw31436wd~..js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0e307b-0c2jbx.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0edewt9l~cs~k.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0f7i3ae1ynhf3.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0fonouj2i9qnb.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gj98094p~zn4.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jrkacz_dyem6.js +37 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0l3v45kd.9is_.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0lgb.0~i1xvv-.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0lkal3uvr6_~2.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0mig99af4~uos.js +28 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pdrpsy-zdxp0.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0p~l5ap6qqx2o.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0r0c9y6.8.m5p.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0stvi5btlxl4m.js +20 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0h_bwlg~kk8lz.js → 0tt1oh112yv-l.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0uve8xrt~0a2e.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0w94x-v00osq0.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0wh6p5~ft5rma.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0x_pewz9npq~q.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xwny92a.ad_i.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0zw85-xl9ysjs.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/119v0-idpg-cv.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/11l2tww5f0hsk.js +20 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/14v~9vx3tdv85.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0826uh6nmsi5l.js → 1503vb7lb6.g1.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/16d~es6h6k~rj.js +6 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/177-q0wwdi0qe.js +1 -0
- package/cloud-runtime/standalone/apps/local/agx-server.js +4055 -0
- package/cloud-runtime/standalone/apps/local/app/agents/[id]/page.tsx +40 -5
- package/cloud-runtime/standalone/apps/local/app/api/agents/[id]/profile/route.ts +10 -0
- package/cloud-runtime/standalone/apps/local/app/api/automations/route.ts +10 -2
- package/cloud-runtime/standalone/apps/local/app/api/linear/worker/route.ts +151 -0
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/route.ts +0 -8
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.ts +22 -27
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/worker/route.ts +89 -0
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/route.ts +13 -0
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/search/route.ts +4 -4
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/teams/route.ts +5 -3
- package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +15 -5
- package/cloud-runtime/standalone/apps/local/app/globals.css +67 -5
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/folders/page.tsx +25 -0
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +19 -5
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/objectives/[objectiveId]/page.tsx +7 -2
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/new/page.tsx +236 -10
- package/cloud-runtime/standalone/apps/local/app/setup/page.tsx +9 -1
- package/cloud-runtime/standalone/apps/local/bundled-server.ts +45 -0
- package/cloud-runtime/standalone/apps/local/components/ActionToolbar.tsx +5 -2
- package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +35 -3
- package/cloud-runtime/standalone/apps/local/components/ContextMenu.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/components/FloatingPanel.tsx +70 -20
- package/cloud-runtime/standalone/apps/local/components/IconButton.tsx +10 -2
- package/cloud-runtime/standalone/apps/local/components/KanbanBoard.tsx +84 -3
- package/cloud-runtime/standalone/apps/local/components/LinearBoard.tsx +434 -36
- package/cloud-runtime/standalone/apps/local/components/LogTimeline.tsx +4 -1
- package/cloud-runtime/standalone/apps/local/components/NowRunningPanel.tsx +3 -1
- package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +119 -6
- package/cloud-runtime/standalone/apps/local/components/SearchCombo.tsx +3 -3
- package/cloud-runtime/standalone/apps/local/components/SortableTaskCard.tsx +21 -3
- package/cloud-runtime/standalone/apps/local/components/StatusCircle.tsx +3 -3
- package/cloud-runtime/standalone/apps/local/components/TaskCard.tsx +51 -1
- package/cloud-runtime/standalone/apps/local/components/chat-ui/ChatContainer.tsx +15 -2
- package/cloud-runtime/standalone/apps/local/components/chat-ui/Composer.tsx +3 -3
- package/cloud-runtime/standalone/apps/local/components/chat-ui/ParticipantBar.tsx +76 -9
- package/cloud-runtime/standalone/apps/local/components/graph/ExecutionGraphPanel.tsx +4 -1
- package/cloud-runtime/standalone/apps/local/components/graph/GraphFirstView.tsx +6 -2
- package/cloud-runtime/standalone/apps/local/components/graph/NodeDetailPanel.tsx +45 -25
- package/cloud-runtime/standalone/apps/local/components/graph/NodeInspector.tsx +9 -6
- package/cloud-runtime/standalone/apps/local/components/linear/LinearSettingsModal.tsx +105 -0
- package/cloud-runtime/standalone/apps/local/components/linear/LinearWorkerConfig.tsx +367 -0
- package/cloud-runtime/standalone/apps/local/components/projects/FoldersSummaryCard.tsx +16 -16
- package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +856 -0
- package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveActivityTimeline.tsx +40 -32
- package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveHealthTrend.tsx +215 -0
- package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveScheduledTasksPanel.tsx +338 -91
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectHome.tsx +12 -6
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +489 -467
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectSearchBar.tsx +4 -2
- package/cloud-runtime/standalone/apps/local/components/projects/RecentlyCompletedCard.tsx +213 -0
- package/cloud-runtime/standalone/apps/local/components/projects/ScheduledTasksSummaryCard.tsx +19 -19
- package/cloud-runtime/standalone/apps/local/components/projects/TeamsSummaryCard.tsx +10 -10
- package/cloud-runtime/standalone/apps/local/components/projects/TeamsView.tsx +171 -56
- package/cloud-runtime/standalone/apps/local/components/projects/WorkingNowCard.tsx +12 -12
- package/cloud-runtime/standalone/apps/local/components/projects/home/ObjectiveCard.tsx +13 -10
- package/cloud-runtime/standalone/apps/local/components/projects/home/ObjectivesSection.tsx +7 -7
- package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathCard.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathsSection.tsx +9 -9
- package/cloud-runtime/standalone/apps/local/components/scheduling/ScheduleConditionPicker.tsx +4 -4
- package/cloud-runtime/standalone/apps/local/components/setup/McpSetupStep.tsx +242 -0
- package/cloud-runtime/standalone/apps/local/components/setup/ProjectStep.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/components/setup/ProviderStep.tsx +1 -1
- package/cloud-runtime/standalone/apps/local/components/setup/TeamsStep.tsx +288 -15
- package/cloud-runtime/standalone/apps/local/components/terminal/ProjectTerminal.tsx +233 -89
- package/cloud-runtime/standalone/apps/local/components/terminal/TerminalSessionList.tsx +3 -1
- package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +72 -21
- package/cloud-runtime/standalone/apps/local/hooks/useInputCapabilities.ts +74 -0
- package/cloud-runtime/standalone/apps/local/hooks/useSetupFlow.ts +16 -2
- package/cloud-runtime/standalone/apps/local/lib/app-config.ts +35 -0
- package/cloud-runtime/standalone/apps/local/lib/objective-health-history.ts +198 -0
- package/cloud-runtime/standalone/apps/local/lib/project-objective-context.ts +10 -0
- package/cloud-runtime/standalone/apps/local/lib/project-objectives.ts +0 -9
- package/cloud-runtime/standalone/apps/local/lib/pty-manager.ts +5 -1
- package/cloud-runtime/standalone/apps/local/lib/terminal-server.ts +182 -0
- package/cloud-runtime/standalone/apps/local/next.config.ts +2 -1
- package/cloud-runtime/standalone/apps/local/package.json +2 -2
- package/cloud-runtime/standalone/apps/local/playwright.config.ts +8 -0
- package/cloud-runtime/standalone/apps/local/server.js +1 -1
- package/cloud-runtime/standalone/apps/local/server.ts +14 -158
- package/cloud-runtime/standalone/apps/local/skills-lock.json +20 -0
- package/cloud-runtime/standalone/apps/local/src/automations/adapters.ts +5 -0
- package/cloud-runtime/standalone/apps/local/src/automations/types.ts +5 -0
- package/cloud-runtime/standalone/apps/local/src/automations/validation.ts +12 -5
- package/cloud-runtime/standalone/apps/local/src/graph/types.ts +2 -0
- package/cloud-runtime/standalone/apps/local/src/objectives/parser.ts +0 -2
- package/cloud-runtime/standalone/apps/local/src/objectives/serializer.ts +0 -2
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/cron.ts +11 -0
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-constants.ts +38 -0
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-job.ts +47 -0
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker.ts +482 -0
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker-job.ts +47 -0
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +511 -0
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/processor.ts +239 -368
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/store.ts +19 -4
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/types.ts +32 -8
- package/cloud-runtime/standalone/apps/local/state/terminalTabs.ts +182 -106
- package/cloud-runtime/standalone/apps/local/state/windowState.ts +11 -0
- package/cloud-runtime/standalone/apps/local/styles/workspaceSidebar.css +65 -0
- package/cloud-runtime/standalone/apps/local/worker/index.js +9 -14
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-arm64/pty.node +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-arm64/spawn-helper +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-x64/pty.node +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-x64/spawn-helper +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty/OpenConsole.exe +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty/conpty.dll +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty.node +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.node +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/pty.node +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/pty.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.exe +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty.dll +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty/OpenConsole.exe +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty/conpty.dll +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty.node +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.node +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/pty.node +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/pty.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.exe +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.pdb +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty.dll +0 -0
- package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty.pdb +0 -0
- package/lib/cli/daemon.js +13 -2
- package/lib/cli/onboarding.js +5 -6
- package/lib/cli/runCli.js +1 -1
- package/lib/cloud/client.js +1 -1
- package/lib/commands/chat.js +37 -11
- package/lib/commands/daemonBoard.js +19 -13
- package/lib/config/cloudConfig.js +1 -1
- package/lib/orchestrator/httpClient.js +1 -1
- package/lib/prompts/templates.js +8 -9
- package/package.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0-0479y._.js +0 -54
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__088h0r2._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08oj_ky._.js +0 -49
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08y2lkj._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__09joc_o._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gtv0rq._.js +0 -8
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gvjvx7._.js +0 -237
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ksbs9p._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0o315az._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0pz~m67._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0q93mk3._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0t2jk2r._.js +0 -18
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0vhcrdv._.js +0 -229
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__11s20j6._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__12xhcor._.js +0 -54
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_01rag2f._.js +0 -49
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_03y4xss._.js +0 -21
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0cm4i3i._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0ijzgnb._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_03q7_.q._.js +0 -21
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0m3e2d~._.js +0 -30
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0r-oiga._.js +0 -30
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_00cwfvi._.js +0 -34
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0hx7xyz._.js +0 -34
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0rqcat4._.js +0 -55
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0sc_lek._.js +0 -79
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_135ddsu._.js +0 -55
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_store_ts_0h.2qy9._.js +0 -43
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_processor_ts_0i1av_r._.js +0 -474
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0xxf2a0.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0xd_mxu._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__044xm0q._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__066ay_e._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__09smg3p._.js +0 -18
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0bf346q._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0hd2vo4._.js +0 -18
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0iix1sf._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0r54zr9._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0s8z2_c._.js +0 -18
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0wq3ukc._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03-mlx0._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03rf_sb._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_09b42z9._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ag3.tl._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0dh_hx0._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0h8cbsi._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0i1ffhz._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ndrb_0._.js +0 -8
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0nlki7b._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ut3k~7._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0vibfch._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yffwm4._.js +0 -8
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_q01av._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0eh.4j7._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0qaowqy._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0s0iy2_._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0zr-_na._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_10qsqky._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0.a4-dh~x9sa3.js +0 -6
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0.bv3h68wo33z.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/016.x9zt9~rsh.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/027-6dwgpb0cy.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/031720jijg_th.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/03m1xs0rztynh.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/051-7k0nnm-vm.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/07o~9mm~xds_b.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/08zgoptetnxjj.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/09-_2lcshmjl5.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/09_yj-9nfh48m.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/09c7ssmgohk7l.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0awbe2r3qazge.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0dro-bz6f72z0.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gbunx8z.~i4x.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ge81r~ap.u7n.js +0 -28
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ghg5160qeazw.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gl_8hdxl5qnd.js +0 -37
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0g~v8p6_pc46-.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jb4f8425s.-2.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0kukkarp4un0o.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0m.2b-cekea8b.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0o0hwfzwwty4b.js +0 -6
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ov5lu0tz2o2e.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pt8_y9asrg~7.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0wyg4lymaq0hg.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xl~1ux2f~rcu.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0y7-eze-w7~b4.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0y8e--tok1214.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0yy~0bgsz~o6-.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0~apd0q5_i88z.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/100xrwo-45nrg.js +0 -20
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/14h3qxwuo~1q9.js +0 -20
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/17oesq5eds3xi.js +0 -1
- /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_clientMiddlewareManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,794731,e=>{"use strict";let t=(0,e.i(363732).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",0,t],794731)},640481,e=>{"use strict";let t=(0,e.i(363732).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",0,t],640481)},367859,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",0,t],367859)},129463,e=>{"use strict";let t=(0,e.i(363732).default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]);e.s(["GitBranch",0,t],129463)},245110,e=>{"use strict";let t=(0,e.i(363732).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],245110)},693646,e=>{"use strict";let t=(0,e.i(363732).default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);e.s(["Save",0,t],693646)},982057,e=>{"use strict";var t=e.i(843476),a=e.i(271645),s=e.i(367859),r=e.i(19035),l=e.i(529471),n=e.i(245110),d=e.i(575479),o=e.i(196630),i=e.i(538292),c=e.i(363732);let x=(0,c.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);var u=e.i(129463);let m=(0,c.default)("hard-drive",[["path",{d:"M10 16h.01",key:"1bzywj"}],["path",{d:"M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"18tbho"}],["path",{d:"M21.946 12.013H2.054",key:"zqlbp7"}],["path",{d:"M6 16h.01",key:"1pmjb7"}]]);var h=e.i(640481),p=e.i(929870),f=e.i(693646),v=e.i(794731),b=e.i(797167),g=e.i(524123),y=e.i(494999);function j({path:e}){let[s,n]=(0,a.useState)(!1);return(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),navigator.clipboard.writeText(e),n(!0),setTimeout(()=>n(!1),1500)},className:"rounded p-1 text-[var(--app-shell-soft-text)] transition-colors hover:text-[var(--foreground)]",title:"Copy path",children:s?(0,t.jsx)(l.Check,{className:"w-3 h-3 text-green-400"}):(0,t.jsx)(r.Copy,{className:"w-3 h-3"})})}function N({lang:e,count:a}){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-md bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:[e,(0,t.jsx)("span",{className:"text-[var(--app-shell-soft-text)]",children:a})]})}function k({analysis:e}){let a=Object.entries(e.languages).sort(([,e],[,t])=>t-e).slice(0,5);return(0,t.jsxs)("div",{className:"overflow-hidden rounded-xl border border-[var(--border)] bg-[var(--card-bg)]",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 border-b border-[var(--border)] px-4 py-2.5",children:[(0,t.jsx)(m,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-xs font-medium uppercase tracking-wider text-[var(--muted-foreground)]",children:"Analysis"})]}),(0,t.jsxs)("div",{className:"px-4 py-3 space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(u.GitBranch,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]"}),e.isGit?(0,t.jsx)("span",{className:"text-xs text-[var(--foreground)]",children:e.branch??"detached"}):(0,t.jsx)("span",{className:"text-xs italic text-[var(--muted-foreground)]",children:"Not a git repo"})]}),e.isGit&&e.status&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs text-[var(--muted-foreground)]",children:[e.status.staged>0&&(0,t.jsxs)("span",{className:"text-[var(--status-completed-text)]",children:[e.status.staged," staged"]}),e.status.modified>0&&(0,t.jsxs)("span",{className:"text-[var(--status-blocked-text)]",children:[e.status.modified," modified"]}),e.status.untracked>0&&(0,t.jsxs)("span",{className:"text-[var(--muted-foreground)]",children:[e.status.untracked," untracked"]}),0===e.status.staged&&0===e.status.modified&&0===e.status.untracked&&(0,t.jsx)("span",{className:"text-[var(--app-shell-soft-text)]",children:"clean"})]})]}),a.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:a.map(([e,a])=>(0,t.jsx)(N,{lang:e,count:a},e))})]})]})}function w({repo:e,isSelected:a,onSelect:r}){return(0,t.jsxs)("button",{type:"button",onClick:r,className:`w-full text-left flex items-center gap-3 px-3 py-2.5 rounded-lg transition-colors group ${a?"border border-blue-500/20 bg-blue-500/10":"border border-transparent hover:bg-[var(--secondary)]"}`,children:[a?(0,t.jsx)(i.FolderOpen,{className:"w-4 h-4 text-blue-400 flex-shrink-0"}):(0,t.jsx)(o.FolderGit2,{className:"h-4 w-4 flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:`truncate text-sm font-medium ${a?"text-blue-500":"text-[var(--foreground)]"}`,children:e.name}),(0,t.jsx)("div",{className:"truncate text-xs text-[var(--muted-foreground)]",children:e.path||e.git_url||"No path set"})]}),(0,t.jsx)(s.ChevronRight,{className:`w-3.5 h-3.5 flex-shrink-0 transition-colors ${a?"text-blue-500":"text-[var(--app-shell-soft-text)] group-hover:text-[var(--muted-foreground)]"}`})]})}function C({repo:e,systemNote:s,analysis:r,analysisLoading:l,onNoteSave:o,noteSaving:c,onEdit:x,onDelete:u}){let[m,p]=(0,a.useState)(e.notes??""),[g,y]=(0,a.useState)(!1),[N,w]=(0,a.useState)(m);return(0,a.useEffect)(()=>{p(e.notes??""),w(e.notes??""),y(!1)},[e.id,e.notes]),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-1",children:[(0,t.jsx)(i.FolderOpen,{className:"w-5 h-5 text-blue-400 flex-shrink-0"}),(0,t.jsx)("h3",{className:"truncate text-lg font-semibold text-[var(--foreground)]",children:e.name})]}),e.path&&(0,t.jsxs)("div",{className:"flex items-center gap-1.5 ml-7",children:[(0,t.jsx)("code",{className:"truncate font-mono text-xs text-[var(--muted-foreground)]",children:e.path}),(0,t.jsx)(j,{path:e.path})]}),e.git_url&&(0,t.jsxs)("div",{className:"flex items-center gap-1.5 ml-7 mt-1",children:[(0,t.jsx)(n.ExternalLink,{className:"h-3 w-3 flex-shrink-0 text-[var(--app-shell-soft-text)]"}),(0,t.jsx)("a",{href:e.git_url,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-blue-400/70 hover:text-blue-400 truncate",children:e.git_url})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 flex-shrink-0",children:[(0,t.jsx)("button",{type:"button",onClick:()=>x(e),className:"rounded-lg p-1.5 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--secondary)] hover:text-[var(--foreground)]",title:"Edit folder",children:(0,t.jsx)(h.Pencil,{className:"w-3.5 h-3.5"})}),(0,t.jsx)("button",{type:"button",onClick:()=>u(e.id),className:"rounded-lg p-1.5 text-[var(--app-shell-soft-text)] transition-colors hover:bg-[var(--secondary)] hover:text-[var(--destructive)]",title:"Delete folder",children:(0,t.jsx)(v.Trash2,{className:"w-3.5 h-3.5"})})]})]}),l&&(0,t.jsx)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--card-bg)] px-4 py-3",children:(0,t.jsx)("span",{className:"animate-pulse text-xs text-[var(--muted-foreground)]",children:"Analyzing folder..."})}),!l&&r&&(0,t.jsx)(k,{analysis:r}),(0,t.jsxs)("div",{className:"overflow-hidden rounded-xl border border-[var(--border)] bg-[var(--card-bg)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--border)] px-4 py-2.5",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(d.FileText,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-xs font-medium uppercase tracking-wider text-[var(--muted-foreground)]",children:"Notes"})]}),g?(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[10px] text-[var(--app-shell-soft-text)]",children:"Cmd+Enter to save"}),(0,t.jsxs)("button",{type:"button",onClick:()=>{y(!1),w(m)},className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:[(0,t.jsx)(b.X,{className:"w-3 h-3"}),"Cancel"]}),(0,t.jsxs)("button",{type:"button",disabled:c,onClick:async()=>{await o(e.id,N),p(N),y(!1)},className:"flex items-center gap-1 text-xs text-blue-500 transition-colors hover:text-blue-600 disabled:opacity-50",children:[(0,t.jsx)(f.Save,{className:"w-3 h-3"}),"Save"]})]}):(0,t.jsxs)("button",{type:"button",onClick:()=>{w(m),y(!0)},className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:[(0,t.jsx)(h.Pencil,{className:"w-3 h-3"}),"Edit"]})]}),(0,t.jsx)("div",{className:"px-4 py-3 min-h-[80px]",children:g?(0,t.jsx)("textarea",{value:N,onChange:e=>w(e.target.value),onKeyDown:t=>{"Enter"===t.key&&(t.metaKey||t.ctrlKey)?(t.preventDefault(),(async()=>{await o(e.id,N),p(N),y(!1)})()):"Escape"===t.key&&(y(!1),w(m))},className:"min-h-[120px] w-full resize-none bg-transparent text-sm text-[var(--foreground)] outline-none placeholder:text-[var(--app-shell-soft-text)]",placeholder:"Add notes about this folder... (architecture, conventions, important files, etc.)",autoFocus:!0}):m?(0,t.jsx)("p",{className:"whitespace-pre-wrap text-sm text-[var(--foreground)]",children:m}):(0,t.jsx)("p",{className:"text-sm italic text-[var(--muted-foreground)]",children:"No notes yet. Click edit to describe this folder."})})]}),s&&(0,t.jsxs)("div",{className:"overflow-hidden rounded-xl border border-[var(--border)] bg-[var(--secondary)]",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 border-b border-[var(--border)] px-4 py-2.5",children:[(0,t.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-emerald-500/60"}),(0,t.jsx)("span",{className:"text-xs font-medium uppercase tracking-wider text-[var(--muted-foreground)]",children:"Generated Knowledge"}),s.updated_at&&(0,t.jsx)("span",{className:"ml-auto text-xs text-[var(--app-shell-soft-text)]",children:new Date(s.updated_at).toLocaleDateString()})]}),(0,t.jsx)("div",{className:"whitespace-pre-wrap px-4 py-3 text-sm leading-relaxed text-[var(--muted-foreground)]",children:s.content})]})]})}function S({onAdd:e,onCancel:s}){let[r,l]=(0,a.useState)(""),[n,d]=(0,a.useState)(null),[o,c]=(0,a.useState)(!1),[u,m]=(0,a.useState)(!1),[h,p]=(0,a.useState)(null),[f,v]=(0,a.useState)(!1),g=(0,a.useCallback)(async e=>{v(!0);try{let t=await fetch("/api/filesystem/analyze",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(t.ok){let e=await t.json();p(e.analysis)}}catch{}v(!1)},[]),j=(0,a.useCallback)(e=>{d(e),r.trim()||l(e.split("/").filter(Boolean).pop()??""),g(e)},[r,g]),N=(0,a.useCallback)(async()=>{m(!0);try{let e=await fetch("/api/filesystem/pick-folder",{method:"POST"}),t=await e.json();t.path&&j(t.path)}catch{}m(!1)},[j]),w=(0,a.useCallback)(async()=>{if(n&&r.trim()){c(!0);try{await e(r.trim(),n)}finally{c(!1)}}},[r,n,e]);return(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:"Add Folder"}),(0,t.jsx)("button",{type:"button",onClick:s,className:"rounded-lg p-1 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--secondary)] hover:text-[var(--foreground)]",children:(0,t.jsx)(b.X,{className:"w-4 h-4"})})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-[var(--muted-foreground)]",children:"Name"}),(0,t.jsx)("input",{value:r,onChange:e=>l(e.target.value),className:"input w-full text-sm",placeholder:"Auto-detected from path"})]}),n&&(0,t.jsxs)("div",{className:"rounded-lg border border-blue-500/20 bg-blue-500/5 px-3 py-2 flex items-center gap-2",children:[(0,t.jsx)(i.FolderOpen,{className:"w-4 h-4 text-blue-400 flex-shrink-0"}),(0,t.jsx)("code",{className:"text-xs text-blue-300 font-mono truncate flex-1",children:n}),(0,t.jsx)("button",{type:"button",onClick:()=>{d(null),p(null)},className:"p-0.5 rounded text-blue-400/50 hover:text-blue-300 transition-colors flex-shrink-0",children:(0,t.jsx)(b.X,{className:"w-3 h-3"})})]}),f&&(0,t.jsx)("div",{className:"px-1 text-xs text-[var(--muted-foreground)] animate-pulse",children:"Analyzing..."}),!f&&h&&(0,t.jsx)(k,{analysis:h}),!n&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-xs font-medium text-[var(--muted-foreground)]",children:"Choose a folder"}),(0,t.jsxs)("button",{type:"button",onClick:()=>void N(),disabled:u,className:"ml-auto inline-flex items-center gap-1.5 rounded-lg border border-[var(--border)] bg-[var(--secondary)] px-2.5 py-1 text-xs font-medium text-[var(--muted-foreground)] transition-colors hover:border-[var(--card-hover-border)] hover:text-[var(--foreground)] disabled:opacity-50",children:[(0,t.jsx)(x,{className:"w-3 h-3"}),u?"Opening...":"System Picker"]})]}),(0,t.jsx)(y.default,{initialPath:"",onSelect:j,onCancel:s})]}),n&&(0,t.jsxs)("div",{className:"flex items-center gap-2 pt-1",children:[(0,t.jsx)("button",{type:"button",onClick:()=>void w(),disabled:!r.trim()||o,className:"btn-primary px-4 py-1.5 text-sm disabled:opacity-40",children:o?"Adding...":"Add Folder"}),(0,t.jsx)("button",{type:"button",onClick:s,className:"px-4 py-1.5 text-sm text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:"Cancel"})]})]})}function F({repo:e,onSave:s,onCancel:r}){let[l,n]=(0,a.useState)(e.name),[d,o]=(0,a.useState)(e.path??""),[i,c]=(0,a.useState)(!1),[u,m]=(0,a.useState)(!1),[h,p]=(0,a.useState)(!1),f=(0,a.useCallback)(async()=>{p(!0);try{let e=await fetch("/api/filesystem/pick-folder",{method:"POST"}),t=await e.json();t.path&&(o(t.path),c(!1))}catch{}p(!1)},[]);return(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:"Edit Folder"}),(0,t.jsx)("button",{type:"button",onClick:r,className:"rounded-lg p-1 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--secondary)] hover:text-[var(--foreground)]",children:(0,t.jsx)(b.X,{className:"w-4 h-4"})})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-[var(--muted-foreground)]",children:"Name"}),(0,t.jsx)("input",{value:l,onChange:e=>n(e.target.value),className:"input w-full text-sm",placeholder:"Folder name",autoFocus:!0})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("label",{className:"text-xs font-medium text-[var(--muted-foreground)]",children:"Path"}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("button",{type:"button",onClick:()=>c(!i),className:"text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:i?"Type path":"Browse"}),(0,t.jsxs)("button",{type:"button",onClick:()=>void f(),disabled:h,className:"inline-flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)] disabled:opacity-50",children:[(0,t.jsx)(x,{className:"w-3 h-3"}),h?"Opening...":"System Picker"]})]})]}),i?(0,t.jsx)(y.default,{initialPath:d,onSelect:e=>{o(e),c(!1)},onCancel:()=>c(!1)}):(0,t.jsx)("input",{value:d,onChange:e=>o(e.target.value),className:"input w-full text-sm font-mono",placeholder:"/path/to/folder"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 pt-1",children:[(0,t.jsx)("button",{type:"button",onClick:async()=>{if(l.trim()&&d.trim()){m(!0);try{await s(l.trim(),d.trim())}finally{m(!1)}}},disabled:!l.trim()||!d.trim()||u,className:"btn-primary px-4 py-1.5 text-sm disabled:opacity-40",children:u?"Saving...":"Save"}),(0,t.jsx)("button",{type:"button",onClick:r,className:"px-4 py-1.5 text-sm text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:"Cancel"})]})]})}function P({projectId:e}){let{projects:s,updateProject:r}=(0,g.useProjectsWithAgents)(),l=s.find(t=>t.id===e),[n,d]=(0,a.useState)(null),[i,c]=(0,a.useState)(!1),[x,u]=(0,a.useState)(null),[m,h]=(0,a.useState)(null),[f,v]=(0,a.useState)(!1),[b,y]=(0,a.useState)({}),[j,N]=(0,a.useState)({}),[k,A]=(0,a.useState)({}),M=l?.repos??[],T=M.find(e=>e.id===n)??null;(0,a.useEffect)(()=>{!n&&M.length>0&&d(M[0].id),n&&!M.find(e=>e.id===n)&&M.length>0&&d(M[0].id)},[M,n]),(0,a.useEffect)(()=>{let e=!1;return async function(){if(0===M.length)return y({});try{let t=await Promise.all(M.map(async e=>{var t;let a=await fetch(`/api/knowledge-notes?scope=repo&subjectId=${encodeURIComponent(e.id)}`),s=a.ok?await a.json():{note:null};return[e.id,(t=s.note)?{id:t.id,content:t.content,created_at:t.createdAt,updated_at:t.updatedAt}:null]}));e||y(Object.fromEntries(t))}catch{e||y({})}}(),()=>{e=!0}},[M]),(0,a.useEffect)(()=>{if(!T?.path||j[T.id])return;let e=T.id,t=T.path;A(t=>({...t,[e]:!0})),fetch("/api/filesystem/analyze",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})}).then(e=>e.ok?e.json():null).then(t=>{t?.analysis&&N(a=>({...a,[e]:t.analysis}))}).catch(()=>{}).finally(()=>A(t=>({...t,[e]:!1})))},[T?.id,T?.path,j]);let O=(0,a.useCallback)(e=>{h(e),setTimeout(()=>h(null),2500)},[]),E=(0,a.useCallback)(()=>M.map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes})),[M]),z=(0,a.useCallback)(async(t,a)=>{try{await r(e,{repos:[...E(),{name:t,path:a}]}),c(!1),O("Folder added")}catch{O("Failed to add")}},[r,e,E,O]),_=(0,a.useCallback)(async(t,a)=>{if(!x)return;let s=E().map(e=>e.id===x.id?{...e,name:t,path:a}:e);try{await r(e,{repos:s}),u(null),N(e=>{let t={...e};return delete t[x.id],t}),O("Folder updated")}catch{O("Failed to update")}},[x,r,e,E,O]),L=(0,a.useCallback)(async t=>{try{await r(e,{repos:E().filter(e=>e.id!==t)}),n===t&&d(null),O("Folder removed")}catch{O("Failed to remove")}},[r,e,E,n,O]),G=(0,a.useCallback)(async(t,a)=>{v(!0);let s=E().map(e=>e.id===t?{...e,notes:a}:e);try{await r(e,{repos:s}),O("Notes saved")}catch{O("Failed to save notes")}finally{v(!1)}},[r,e,E,O]);return l?(0,t.jsxs)("div",{className:"h-full flex overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex w-72 flex-shrink-0 flex-col border-r border-[var(--border)] bg-[var(--app-shell-pane)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--border)] px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(o.FolderGit2,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:"Folders"}),M.length>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-1.5 py-0.5 text-xs text-[var(--muted-foreground)]",children:M.length})]}),(0,t.jsx)("button",{type:"button",onClick:()=>{c(!0),u(null)},className:"rounded-lg p-1 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--secondary)] hover:text-blue-500",title:"Add folder",children:(0,t.jsx)(p.Plus,{className:"w-4 h-4"})})]}),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto px-2 py-2 space-y-0.5",children:[0===M.length&&!i&&(0,t.jsxs)("div",{className:"px-3 py-8 text-center",children:[(0,t.jsx)(o.FolderGit2,{className:"mx-auto mb-3 h-8 w-8 text-[var(--app-shell-soft-text)]"}),(0,t.jsx)("p",{className:"mb-1 text-sm text-[var(--muted-foreground)]",children:"No folders yet"}),(0,t.jsx)("p",{className:"mb-4 text-xs text-[var(--app-shell-soft-text)]",children:"Link local repos or project directories"}),(0,t.jsxs)("button",{type:"button",onClick:()=>c(!0),className:"inline-flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium text-blue-400 border border-blue-500/20 hover:bg-blue-500/10 transition-colors",children:[(0,t.jsx)(p.Plus,{className:"w-3 h-3"}),"Add Folder"]})]}),M.map(e=>(0,t.jsx)(w,{repo:e,isSelected:n===e.id,onSelect:()=>{d(e.id),c(!1),u(null)}},e.id))]}),m&&(0,t.jsx)("div",{className:"border-t border-[var(--border)] px-4 py-2",children:(0,t.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:m})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto",children:(0,t.jsx)("div",{className:"max-w-2xl mx-auto px-6 py-6",children:i?(0,t.jsx)(S,{onAdd:z,onCancel:()=>c(!1)}):x?(0,t.jsx)(F,{repo:x,onSave:_,onCancel:()=>u(null)}):T?(0,t.jsx)(C,{repo:T,systemNote:b[T.id]??null,analysis:j[T.id]??null,analysisLoading:k[T.id]??!1,onNoteSave:G,noteSaving:f,onEdit:e=>u(e),onDelete:L}):M.length>0?(0,t.jsx)("div",{className:"flex h-64 items-center justify-center text-sm text-[var(--muted-foreground)]",children:"Select a folder to view details"}):null})})]}):(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-sm text-[var(--muted-foreground)]",children:"Loading..."})}e.s(["default",0,function({params:e}){let{slug:s}=(0,a.use)(e),{projects:r}=(0,g.useProjectsWithAgents)(),l=r.find(e=>e.slug===s);return l?(0,t.jsx)(P,{projectId:l.id}):(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-sm text-zinc-500",children:"Loading..."})}],982057)}]);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,363732,e=>{"use strict";var t=e.i(271645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),n=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var a={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let s=(0,t.forwardRef)(({color:e="currentColor",size:n=24,strokeWidth:s=2,absoluteStrokeWidth:o,className:i="",children:l,iconNode:d,...u},c)=>(0,t.createElement)("svg",{ref:c,...a,width:n,height:n,stroke:e,strokeWidth:o?24*Number(s)/Number(n):s,className:r("lucide",i),...!l&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(u)&&{"aria-hidden":"true"},...u},[...d.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(l)?l:[l]]));e.s(["default",0,(e,a)=>{let o=(0,t.forwardRef)(({className:o,...i},l)=>(0,t.createElement)(s,{ref:l,iconNode:a,className:r(`lucide-${n(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,o),...i}));return o.displayName=n(e),o}],363732)},8707,e=>{"use strict";let t=(0,e.i(363732).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",0,t],8707)},44054,e=>{"use strict";var t=e.i(271645);let r="(pointer: coarse)",n="(hover: hover)",a="(max-width: 767px)",s="(min-width: 768px)";function o(){if("function"!=typeof window.matchMedia)return{isCoarsePointer:!1,canHover:!0,isPhone:!1,isTablet:!1,isTouchLayout:!1};let e=window.matchMedia(r).matches,t=window.matchMedia(n).matches,o=window.matchMedia(a).matches,i=!o&&window.matchMedia(s).matches,l=e||!t;return{isCoarsePointer:e,canHover:t,isPhone:l&&o,isTablet:l&&i,isTouchLayout:l}}e.s(["useInputCapabilities",0,function(){let[e,i]=(0,t.useState)(o);return(0,t.useEffect)(()=>{if("function"!=typeof window.matchMedia)return;let e=[window.matchMedia(r),window.matchMedia(n),window.matchMedia(a),window.matchMedia(s)],t=()=>{i(o())};return e.forEach(e=>e.addEventListener("change",t)),window.addEventListener("resize",t),t(),()=>{e.forEach(e=>e.removeEventListener("change",t)),window.removeEventListener("resize",t)}},[]),e}])},195057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return i},formatWithValidation:function(){return d},urlObjectKeys:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let s=e.r(190809)._(e.r(998183)),o=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,n=e.protocol||"",a=e.pathname||"",i=e.hash||"",l=e.query||"",d=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?d=t+e.host:r&&(d=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(d+=":"+e.port)),l&&"object"==typeof l&&(l=String(s.urlQueryToSearchParams(l)));let u=e.search||l&&`?${l}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||o.test(n))&&!1!==d?(d="//"+(d||""),a&&"/"!==a[0]&&(a="/"+a)):d||(d=""),i&&"#"!==i[0]&&(i="#"+i),u&&"?"!==u[0]&&(u="?"+u),a=a.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${n}${d}${a}${u}${i}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function d(e){return i(e)}},818581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return a}});let n=e.r(271645);function a(e,t){let r=(0,n.useRef)(null),a=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=a.current;t&&(a.current=null,t())}else e&&(r.current=s(e,n)),t&&(a.current=s(t,n))},[e,t])}function s(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},573668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return s}});let n=e.r(718967),a=e.r(652817);function s(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,a.hasBasePath)(r.pathname)}catch(e){return!1}}},284508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},522016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return x},useLinkStatus:function(){return v}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let s=e.r(190809),o=e.r(843476),i=s._(e.r(271645)),l=e.r(195057),d=e.r(8372),u=e.r(818581),c=e.r(718967),f=e.r(405550);e.r(233525);let p=e.r(388540),h=e.r(91949),m=e.r(573668),g=e.r(509396);function x(t){var r,n;let a,s,x,[v,y]=(0,i.useOptimistic)(h.IDLE_LINK_STATUS),w=(0,i.useRef)(null),{href:k,as:j,children:N,prefetch:S=null,passHref:C,replace:E,shallow:_,scroll:T,onClick:L,onMouseEnter:M,onTouchStart:O,legacyBehavior:A=!1,onNavigate:P,transitionTypes:R,ref:I,unstable_dynamicOnHover:$,...U}=t;a=N,A&&("string"==typeof a||"number"==typeof a)&&(a=(0,o.jsx)("a",{children:a}));let D=i.default.useContext(d.AppRouterContext),B=!1!==S,F=!1!==S?null===(n=S)||"auto"===n?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,G="string"==typeof(r=j||k)?r:(0,l.formatUrl)(r);if(A){if(a?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});s=i.default.Children.only(a)}let K=A?s&&"object"==typeof s&&s.ref:I,W=i.default.useCallback(e=>(null!==D&&(w.current=(0,h.mountLinkInstance)(e,G,D,F,B,y)),()=>{w.current&&((0,h.unmountLinkForCurrentNavigation)(w.current),w.current=null),(0,h.unmountPrefetchableInstance)(e)}),[B,G,D,F,y]),z={ref:(0,u.useMergedRef)(W,K),onClick(t){A||"function"!=typeof L||L(t),A&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!D||t.defaultPrevented||function(t,r,n,a,s,o,l){if("u">typeof window){let d,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((d=t.currentTarget.getAttribute("target"))&&"_self"!==d||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){a&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),o){let e=!1;if(o({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:c}=e.r(699781);i.default.startTransition(()=>{c(r,a?"replace":"push",!1===s?p.ScrollBehavior.NoScroll:p.ScrollBehavior.Default,n.current,l)})}}(t,G,w,E,T,P,R)},onMouseEnter(e){A||"function"!=typeof M||M(e),A&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),D&&B&&(0,h.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){A||"function"!=typeof O||O(e),A&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),D&&B&&(0,h.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,c.isAbsoluteUrl)(G)?z.href=G:A&&!C&&("a"!==s.type||"href"in s.props)||(z.href=(0,f.addBasePath)(G)),x=A?i.default.cloneElement(s,z):(0,o.jsx)("a",{...U,...z,children:a}),(0,o.jsx)(b.Provider,{value:v,children:x})}e.r(284508);let b=(0,i.createContext)(h.IDLE_LINK_STATUS),v=()=>(0,i.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},810605,e=>{"use strict";e.s(["GRAPH_TIMEOUT_DEFAULT_MS",0,864e5,"NODE_TIMEOUT_DEFAULT_MS",0,18e5,"UI_POLL_CHAT_ALT_MS",0,15e3,"UI_POLL_CHAT_CHECK_MS",0,1e4,"UI_POLL_DB_HEALTH_MS",0,3e4,"UI_POLL_PROMPT_RUNS_MS",0,5e3,"UI_POLL_SYSTEM_STATUS_MS",0,3e4,"UI_POLL_TASK_DURATION_MS",0,6e4])},186710,e=>{"use strict";var t=e.i(843476),r=e.i(522016),n=e.i(271645),a=e.i(810605);function s(){let[e,r]=(0,n.useState)(null),[s,o]=(0,n.useState)("loading");(0,n.useEffect)(()=>{let e=!0;async function t(){try{let t=await fetch("/api/health");if(!e)return;if(!t.ok)return void o("error");let n=await t.json();r(n),o(n.connected?"connected":"disconnected")}catch{e&&o("error")}}t();let n=setInterval(t,a.UI_POLL_DB_HEALTH_MS);return()=>{e=!1,clearInterval(n)}},[]);let i={loading:"Checking database…",connected:`${e?.adapter??"db"} connected (${e?.latencyMs??"?"}ms)`,disconnected:`${e?.adapter??"db"} disconnected`,error:"Database unreachable"};return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-[var(--muted-foreground)]",role:"status","aria-label":i[s],children:[(0,t.jsx)("span",{className:`w-2 h-2 rounded-full ${{loading:"bg-yellow-400",connected:"bg-green-500",disconnected:"bg-red-500",error:"bg-red-500"}[s]}`}),(0,t.jsx)("span",{className:"hidden sm:inline",children:i[s]})]})}function o({children:e,fullWidth:n=!1,noFooter:a=!1}){return(0,t.jsxs)("div",{className:"h-screen flex flex-col overflow-hidden",children:[(0,t.jsx)("nav",{className:"desktop-titlebar flex-shrink-0 border-b border-[var(--card-border)] bg-[var(--card-bg)]/80 backdrop-blur-lg z-30",children:(0,t.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,t.jsx)("div",{className:"flex items-center gap-8",children:(0,t.jsx)(r.default,{href:"/",className:"flex items-center gap-3 group",children:(0,t.jsxs)("svg",{width:"52",height:"31",viewBox:"0 0 64 38",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform group-hover:scale-105",children:[(0,t.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,t.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,t.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,t.jsx)("path",{d:"M 40 13 C 35 10 30 13 30 19 C 30 25 34 28 38 27 C 40 26 40 22 40 20 L 36 20"}),(0,t.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,t.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(r.default,{href:"/",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Open Chat"}),(0,t.jsx)(r.default,{href:"/automations",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Automations"}),(0,t.jsx)(r.default,{href:"/skills",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Skills"}),(0,t.jsx)(r.default,{href:"/settings",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Settings"})]})]})})}),(0,t.jsx)("main",{className:`flex-1 min-h-0 flex flex-col ${n?"p-0":"p-4 sm:p-6 lg:p-8 overflow-y-auto"}`,children:e}),!a&&(0,t.jsx)("footer",{className:"flex-shrink-0 border-t border-[var(--card-border)] bg-[var(--card-bg)]/50 py-4",children:(0,t.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 flex items-center justify-between text-xs text-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{children:"AGX Board • Autonomous Agent Orchestration"}),(0,t.jsxs)("span",{className:"hidden sm:inline-flex items-center gap-3",children:[(0,t.jsx)(s,{}),(0,t.jsx)("span",{children:"Built with Next.js + Db"})]})]})})]})}e.s(["default",0,function(e){return(0,t.jsx)(n.Suspense,{fallback:(0,t.jsx)("div",{className:"h-screen flex items-center justify-center bg-[var(--background)]",children:(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}),children:(0,t.jsx)(o,{...e})})}],186710)},353662,e=>{"use strict";var t=e.i(810605);t.NODE_TIMEOUT_DEFAULT_MS,t.GRAPH_TIMEOUT_DEFAULT_MS;let r=new Set(["done","passed"]),n=new Set(["pending","running","awaiting_human","blocked"]);function a(e,t){return"root"===t.type?t.title?.trim()||"Task Objective":"work"===t.type||"function"===t.type?t.title?.trim()||e:"gate"===t.type?t.gateType.replace(/_gate$/u,"").replace(/_/gu," ").replace(/\b\w/gu,e=>e.toUpperCase()):"fork"===t.type?"Fork":"join"===t.type?`Join (${t.joinStrategy})`:"Conditional"}function s(e){for(let[t,r]of Object.entries(e.nodes))if("root"===r.type)return{id:t,node:r};return null}e.s(["buildGraphSummary",0,function(e){let t,o=s(e);return{mode:e.mode,graphVersion:e.graphVersion,nodeCount:Object.keys(e.nodes).length,progress:0===(t=Object.values(e.nodes).filter(e=>"skipped"!==e.status)).length?100:Math.round(t.filter(e=>r.has(e.status)).length/t.length*100),currentBlocker:function(e){let t=function(e){let t=Object.entries(e.nodes),r=t.filter(([,e])=>"gate"===e.type&&e.required),n=r.find(([,e])=>"failed"===e.status);if(n)return n[0];let a=r.find(([,e])=>"awaiting_human"===e.status);if(a)return a[0];let s=r.find(([,e])=>"pending"===e.status||"running"===e.status);if(s)return s[0];let o=t.find(([,e])=>"work"===e.type&&"blocked"===e.status);return o?.[0]??null}(e);if(!t)return null;let r=e.nodes[t];return r?{nodeId:t,label:a(t,r),status:r.status,required:"gate"===r.type&&r.required}:null}(e),derivedStatus:function(e){let t=Object.keys(e.nodes).length;if(0===t)return"INTAKE";if(1===t){let t=Object.values(e.nodes)[0];if("root"===t.type&&!t.graphCreated)return"INTAKE"}return Object.values(e.nodes).some(e=>n.has(e.status))?"PROGRESS":"DONE"}(e),hasRootNode:null!==o,rootNodeId:o?.id??null}},"findRootNode",0,s,"formatNodeStatusLabel",0,function(e){return e.replace(/_/gu," ")},"getNodeLabel",0,a,"toNodeStatusClass",0,function(e){return`node--${e}`}],353662)},865260,745649,e=>{"use strict";var t=e.i(843476),r=e.i(271645),n=e.i(174080);let a=[{value:"queued",label:"Queued",color:"var(--status-queued)",icon:"○"},{value:"in_progress",label:"In Progress",color:"var(--status-in-progress)",icon:"◑"},{value:"blocked",label:"Blocked",color:"var(--status-blocked)",icon:"⊘"},{value:"completed",label:"Done",color:"var(--status-completed)",icon:"●"},{value:"failed",label:"Failed",color:"var(--status-failed)",icon:"✕"}];function s({status:e,onStatusChange:o}){let[i,l]=(0,r.useState)(!1),[d,u]=(0,r.useState)(null),c=(0,r.useRef)(null),f=(0,r.useRef)(null),p=(0,r.useCallback)(()=>{if(!c.current)return;let e=c.current.getBoundingClientRect();u({top:e.bottom+4,left:e.left})},[]);(0,r.useEffect)(()=>{if(!i)return;p();let e=e=>{c.current&&!c.current.contains(e.target)&&f.current&&!f.current.contains(e.target)&&l(!1)};return document.addEventListener("pointerdown",e),()=>document.removeEventListener("pointerdown",e)},[i,p]),(0,r.useEffect)(()=>{l(!1)},[e]);let h=a.find(t=>t.value===e)||a[0],m="completed"===e,g="in_progress"===e;return(0,t.jsxs)("div",{className:"relative flex-shrink-0",ref:c,children:[(0,t.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),o&&l(!i)},className:`w-4 h-4 rounded-full border-[1.5px] flex items-center justify-center transition-all
|
|
2
|
+
hover:scale-110 focus-visible:outline-2 focus-visible:outline-[var(--ring)]
|
|
3
|
+
${o?"cursor-pointer":"cursor-default"}
|
|
4
|
+
${g?"animate-pulse":""}
|
|
5
|
+
`,style:{borderColor:h.color,backgroundColor:m?h.color:"transparent"},title:h.label,children:[m&&(0,t.jsx)("svg",{className:"w-2.5 h-2.5 text-white",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"failed"===e&&(0,t.jsx)("svg",{className:"w-2 h-2",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M3 3L9 9M9 3L3 9",stroke:h.color,strokeWidth:"1.5",strokeLinecap:"round"})}),g&&(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:h.color}})]}),i&&d&&(0,n.createPortal)((0,t.jsx)("div",{ref:f,className:"fixed z-[9999] py-1 rounded-lg border shadow-lg min-w-[140px]",style:{top:d.top,left:d.left,backgroundColor:"var(--card-bg)",borderColor:"var(--card-border)"},children:a.map(r=>{let n=r.value===e;return(0,t.jsxs)("button",{type:"button",className:`w-full flex items-center gap-2 px-3 py-1.5 text-xs text-left transition-colors
|
|
6
|
+
hover:bg-[var(--item-hover-bg)]
|
|
7
|
+
${n?"font-semibold bg-[var(--item-hover-bg)]":""}
|
|
8
|
+
`,onClick:e=>{e.stopPropagation(),o?.(r.value),l(!1)},children:[(0,t.jsxs)("span",{className:"w-3 h-3 rounded-full border-[1.5px] flex items-center justify-center",style:{borderColor:r.color,backgroundColor:"completed"===r.value?r.color:"transparent"},children:["completed"===r.value&&(0,t.jsx)("svg",{className:"w-2 h-2 text-white",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"failed"===r.value&&(0,t.jsx)("svg",{className:"w-1.5 h-1.5",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M3 3L9 9M9 3L3 9",stroke:r.color,strokeWidth:"1.5",strokeLinecap:"round"})}),"in_progress"===r.value&&(0,t.jsx)("div",{className:"w-1 h-1 rounded-full",style:{backgroundColor:r.color}})]}),(0,t.jsx)("span",{style:{color:n?r.color:void 0},children:r.label}),n&&(0,t.jsx)("svg",{className:"w-3 h-3 ml-auto",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2 6L5 9L10 3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]},r.value)})}),document.body)]})}var o=e.i(353662);let i=new Map,l=new Map;async function d(e){let t=i.get(e);if(void 0!==t)return t;let r=l.get(e);if(r)return r;let n=(async()=>{let t=await fetch(`/api/tasks/${e}/graph`,{method:"GET",cache:"no-store"});if(404===t.status)return i.set(e,null),null;let r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.error||`Failed to fetch graph summary (${t.status})`);let n=r?.graph??null,a=n?(0,o.buildGraphSummary)(n):null;return i.set(e,a),a})();l.set(e,n);try{return await n}finally{l.delete(e)}}let u={queued:{className:"badge-status-queued",label:"Queued",dotColor:"bg-[var(--status-queued)]"},in_progress:{className:"badge-status-in_progress",label:"In Progress",dotColor:"bg-[var(--status-in-progress)]"},blocked:{className:"badge-status-blocked",label:"Blocked",dotColor:"bg-[var(--status-blocked)]"},completed:{className:"badge-status-completed",label:"Completed",dotColor:"bg-[var(--status-completed)]"},failed:{className:"badge-status-failed",label:"Failed",dotColor:"bg-[var(--status-failed)]"}},c={INTAKE:{icon:"📥",label:"Intake"},PROGRESS:{icon:"🔄",label:"Progress"},DONE:{icon:"✅",label:"Done"}};e.s(["default",0,function({task:e,onClick:n,compact:a=!1,onStatusChange:o,onApprovalModeChange:l,onStageChange:f,stageOptions:p,currentStage:h,allTasks:m,relationship:g="none"}){u[e.status||"queued"],e.stage&&c[e.stage];let{summary:x,isLoading:b}=function(e){let t=(0,r.useMemo)(()=>e?i.get(e)??null:null,[e]),[n,a]=(0,r.useState)(t),[s,o]=(0,r.useState)(!!e&&null===t),[l,u]=(0,r.useState)(null),c=(0,r.useCallback)(async()=>{if(!e){a(null),u(null),o(!1);return}o(!0),u(null);try{let t=await d(e);a(t)}catch(e){u(e instanceof Error?e.message:"Failed to fetch graph summary"),a(null)}finally{o(!1)}},[e]);return(0,r.useEffect)(()=>{c()},[c]),{summary:n,isLoading:s,error:l,refresh:c}}("draft"!==e.id?e.id:null),v=h??e.stage,y=v&&p?p.indexOf(v):-1,w=y>0&&p?p[y-1]:null,k=y>=0&&p&&y<p.length-1?p[y+1]:null,j=e.depends_on?.length?e.depends_on.map(e=>{let t=m?.find(t=>t.id===e);return{id:e,title:t?.title||e.slice(0,8),done:t?.status==="completed"}}):null;return j&&j.every(e=>e.done),(0,t.jsxs)("div",{onClick:n,role:"button",tabIndex:0,onKeyDown:e=>"Enter"===e.key&&n?.(),className:`group relative flex flex-col gap-1.5 sm:gap-2 p-2 sm:p-3 surface-card cursor-grab active:cursor-grabbing
|
|
9
|
+
focus-visible:outline-2 focus-visible:outline-[var(--ring)] focus-visible:outline-offset-2
|
|
10
|
+
${"active"===g?"border-primary ring-2 ring-primary/20 z-40":"blocking"===g?"border-[var(--status-blocked)] bg-rose-50/30 dark:bg-rose-950/20 z-20":"dependent"===g?"border-[var(--status-in-progress)] bg-blue-50/30 dark:bg-blue-950/20 z-20":"dimmed"===g?"opacity-40 grayscale scale-[0.98]":""}
|
|
11
|
+
${"failed"===e.status&&"none"===g?"border-red-200 bg-red-50/30 dark:bg-red-950/20":""}
|
|
12
|
+
${"completed"===e.status&&"none"===g?"opacity-75 bg-[var(--secondary)]":""}
|
|
13
|
+
`,children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,t.jsx)("h3",{className:`text-sm font-medium text-[var(--foreground)] leading-snug line-clamp-2 sm:line-clamp-3
|
|
14
|
+
${"completed"===e.status?"text-[var(--muted-foreground)] line-through":""}
|
|
15
|
+
`,children:e.title||"Untitled Task"}),(0,t.jsx)("div",{className:"shrink-0 mt-0.5",children:(0,t.jsx)(s,{status:e.status||"queued",onStatusChange:o})})]}),(0,t.jsx)("div",{className:"flex items-center justify-between min-h-[16px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-[var(--muted-foreground)] flex-wrap",children:[void 0!==e.priority&&e.priority>0&&(0,t.jsxs)("span",{className:`px-1.5 py-0.5 rounded font-semibold bg-[var(--secondary)] ${0===e.priority?"text-[var(--primary)]":""}`,children:["P",e.priority]}),l&&("auto"===e.approval_mode?(0,t.jsx)("span",{className:"px-1.5 py-0.5 rounded font-semibold bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400 cursor-pointer select-none",title:"Auto-approve enabled. Click to switch to manual.",onClick:e=>{e.stopPropagation(),l("manual")},children:"AUTO"}):(0,t.jsx)("span",{className:"px-1.5 py-0.5 rounded font-semibold bg-gray-100 text-gray-400 dark:bg-gray-800 dark:text-gray-500 cursor-pointer select-none opacity-0 group-hover:opacity-100 transition-opacity",title:"Manual approval. Click to enable auto-approve.",onClick:e=>{e.stopPropagation(),l("auto")},children:"AUTO"})),"draft"!==e.id&&(0,t.jsx)("span",{className:"opacity-0 group-hover:opacity-100 transition-opacity font-mono text-[9px]",children:e.id.slice(0,5)})]})}),f&&v&&(w||k)?(0,t.jsxs)("div",{className:"flex items-center gap-2 pt-1",children:[w?(0,t.jsxs)("button",{type:"button",className:"rounded-full border border-[var(--border)] px-2.5 py-1 text-[10px] font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]",onClick:e=>{e.stopPropagation(),f(w)},children:["Back to ",w]}):null,k?(0,t.jsxs)("button",{type:"button",className:"rounded-full border border-[var(--border)] px-2.5 py-1 text-[10px] font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]",onClick:e=>{e.stopPropagation(),f(k)},children:["Move to ",k]}):null]}):null]})}],865260);var f=e.i(247167);let p={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:f.default.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:f.default.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["useTasks",0,function(e={}){let t="1"===f.default.env.NEXT_PUBLIC_AGX_BOARD_DISABLE_AUTH,n=e.project,a=e.status,s=e.orphan,o=e.realtime,[i,l]=(0,r.useState)([]),[d,u]=(0,r.useState)(!0),[c,h]=(0,r.useState)(null),[m,g]=(0,r.useState)(null),[x,b]=(0,r.useState)(null),v=(0,r.useCallback)(e=>{if(!e)return[];if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)));if("string"==typeof e){let t=e.trim();if(!t)return[];try{let e=JSON.parse(t);if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)))}catch{}return Array.from(new Set(t.split(",").map(e=>e.trim()).filter(Boolean)))}return[]},[]),y=(0,r.useCallback)(e=>{let t=String(e||"").match(/^---\n([\s\S]*?)\n---\n?/);if(!t)return[];let r=t[1].split("\n").find(e=>e.trim().toLowerCase().startsWith("depends_on:"));return r?v(r.slice(r.indexOf(":")+1).trim()):[]},[v]),w=(0,r.useCallback)((e,t)=>{let r=v(e.depends_on);if(r.length>0)return{...e,depends_on:r};let n="string"==typeof e?.content?y(e.content):[];if(n.length>0)return{...e,depends_on:n};let a=v(t?.depends_on);return a.length>0?{...e,depends_on:a}:e},[y,v]),k=(0,r.useCallback)(async()=>{try{let e=new URLSearchParams;n&&e.set("project",n),a&&e.set("status",a),s&&e.set("orphan","1");let t=await fetch(`/api/tasks?${e.toString()}`);if(!t.ok)throw Error("Failed to fetch tasks");let r=await t.json(),o=Array.isArray(r.tasks)?r.tasks.map(e=>w(e)):[];l(o),h(null)}catch(e){h(e instanceof Error?e:Error("Unknown error"))}finally{u(!1)}},[n,a,s]);(0,r.useEffect)(()=>{k()},[k]),(0,r.useEffect)(()=>{if(!t||!o)return;let e=setInterval(k,3e3);return()=>clearInterval(e)},[t,o,k]),(0,r.useEffect)(()=>{if(t||!o)return;let e={auth:{getSession:async()=>({data:{session:{access_token:"local-token",refresh_token:"local-refresh",expires_in:3600,user:{id:p.id,email:p.email,user_metadata:{name:p.name,full_name:p.name}}}},error:null}),signInWithOAuth:async()=>({error:Error("Auth disabled in AGX Board local mode")}),signOut:async()=>({error:null}),onAuthStateChange:()=>({data:{subscription:{unsubscribe(){}}}})},channel:()=>({on(){return this},subscribe(){return this}}),removeChannel(){}},r=e.channel("tasks-changes").on("postgres_changes",{event:"*",schema:"public",table:"tasks"},e=>{"INSERT"===e.eventType?l(t=>{let r=w(e.new);return t.some(e=>e.id===r.id)?t:[r,...t]}):"UPDATE"===e.eventType?l(t=>t.map(t=>t.id===e.new.id?w(e.new,t):t)):"DELETE"===e.eventType&&l(t=>t.filter(t=>t.id!==e.old.id))}).subscribe();return()=>{e.removeChannel(r)}},[o,t]),(0,r.useEffect)(()=>{if(t||!o)return;let e=setInterval(k,3e3);return()=>clearInterval(e)},[o,t,k]);let j=(0,r.useCallback)(async(e,t)=>{let r=await fetch("/api/tasks",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:e,swarm_models:t})});if(!r.ok)throw Error((await r.json()).error||"Failed to create task");let{task:n}=await r.json(),a=w(n);return l(e=>e.some(e=>e.id===a.id)?e:[a,...e]),a},[e.realtime,w]),N=(0,r.useCallback)(async(e,t)=>{let r=await fetch(`/api/tasks/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok){let e=null;throw"function"==typeof r.json&&(e=await r.json().catch(e=>(console.warn("[useTasks] failed to parse response:",e),null))),Error(e?.error||e?.details||`Failed to update task (${r.status} ${r.statusText||"Error"})`)}let{task:n}=await r.json();return l(t=>t.map(t=>t.id===e?w({...t,...n},t):t)),w(n)},[e.realtime,w]),S=(0,r.useCallback)(async e=>{if(!(await fetch(`/api/tasks/${e}`,{method:"DELETE"})).ok)throw Error("Failed to delete task");l(t=>t.filter(t=>t.id!==e))},[e.realtime]),C=(0,r.useCallback)(async e=>{let t=await fetch("/api/queue/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to complete task stage");let{task:r}=await t.json();return l(t=>t.map(t=>t.id===e.taskId?w({...t,...r},t):t)),w(r)},[e.realtime,w]),E=(0,r.useCallback)(async e=>{g(e.taskId),b(null);try{let t=await fetch(`/api/orchestrator/tasks/${e.taskId}/cancel`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e.reason?{reason:e.reason}:{})});if(!t.ok){let e=await t.json().catch(()=>({})),r=e?.error||"Failed to cancel workflow";throw Error(r)}return t.json()}catch(t){let e=t instanceof Error?t:Error("Failed to cancel workflow");throw b(e),e}finally{g(null)}},[]),_=(0,r.useCallback)(async e=>{let t=await fetch(`/api/tasks/${e}`),r=await t.json().catch(e=>(console.warn("[useTasks] failed to parse response:",e),null));if(!t.ok)throw Error(r?.error||"Failed to fetch task details");return w(r?.task)},[w]),T=(0,r.useCallback)(async e=>{let t=await fetch("/api/tasks/assign-orphans",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project_id:e})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.error||"Failed to assign orphan tasks");return await k(),{updatedCount:Number(r?.updatedCount||0),taskIds:Array.isArray(r?.taskIds)?r.taskIds:[]}},[k]);return{tasks:i,isLoading:d,error:c,cancellingTaskId:m,isCancelling:!!m,cancelError:x,refetch:k,createTask:j,updateTask:N,deleteTask:S,completeTaskStage:C,cancelWorkflow:E,fetchTask:_,assignOrphanTasksToProject:T}}],745649)},172695,e=>{"use strict";var t=e.i(843476),r=e.i(271645),n=e.i(8707),a=e.i(186710),s=e.i(477183),o=e.i(76590),i=e.i(807311),l=e.i(865260);function d({task:e,onClick:r,onStatusChange:n,onApprovalModeChange:a,onStageChange:s,stageOptions:u,currentStage:c,dragDisabled:f=!1,allTasks:p,relationship:h="none"}){let{attributes:m,listeners:g,setNodeRef:x,transform:b,transition:v,isDragging:y}=(0,o.useSortable)({id:e.id,disabled:f}),w={transform:i.CSS.Transform.toString(b),transition:v,opacity:y?.5:1,...y?{zIndex:50,position:"relative"}:{}};return(0,t.jsx)("div",{ref:x,...m,...g,style:w,className:`touch-none ${"none"!==h&&"dimmed"!==h?"z-20 relative":""}`,children:(0,t.jsx)(l.default,{task:e,onClick:r,onStatusChange:n,onApprovalModeChange:a,onStageChange:s,stageOptions:u,currentStage:c,allTasks:p,relationship:h})})}function u({task:e}){return(0,t.jsx)("div",{className:"w-full sm:w-80 cursor-grabbing shadow-lg border border-[var(--primary)] rotate-1 scale-[1.02] rounded-lg bg-[var(--card-bg)]",children:(0,t.jsx)(l.default,{task:e})})}let c=["INTAKE","PROGRESS","DONE"],f={INTAKE:{icon:"📥",label:"Intake",color:"var(--warning)"},PROGRESS:{icon:"🔄",label:"Progress",color:"var(--primary)"},DONE:{icon:"✅",label:"Done",color:"var(--success)"}};var p=e.i(44054);function h({tasks:e,onTasksChange:n,onSelectTask:a,onTaskUpdate:i,onAddTask:l,stages:d,stageConfig:g,isValidTransition:x,isCreatingTask:b,creatingStage:v,graphColumnFn:y}){let{isTouchLayout:w}=(0,p.useInputCapabilities)(),k=d||c,j=g||f,N=x||((e,t)=>{if(e===t)return!0;let r=k.indexOf(e),n=k.indexOf(t);return n<r||n===r+1}),[S,C]=(0,r.useState)(null),[E,_]=(0,r.useState)(e),[T,L]=(0,r.useState)(null),[M,O]=(0,r.useState)([]),A=(0,r.useRef)(null),P=(0,r.useRef)(null),R=(0,r.useCallback)(()=>{if(!T||!A.current)return void O([]);let e=[],t=A.current.getBoundingClientRect(),r=document.getElementById(`task-${T}`);if(!r)return;let n=r.getBoundingClientRect();E.forEach(r=>{if(E.find(e=>e.id===T)?.depends_on?.includes(r.id)){let a=document.getElementById(`task-${r.id}`);if(a){let s=a.getBoundingClientRect();e.push({id:`conn-blocking-${r.id}`,from:{x:s.right-t.left,y:s.top+s.height/2-t.top},to:{x:n.left-t.left,y:n.top+n.height/2-t.top},type:"blocking"})}}if(r.depends_on?.includes(T)){let a=document.getElementById(`task-${r.id}`);if(a){let s=a.getBoundingClientRect();e.push({id:`conn-dependent-${r.id}`,from:{x:n.right-t.left,y:n.top+n.height/2-t.top},to:{x:s.left-t.left,y:s.top+s.height/2-t.top},type:"dependent"})}}}),O(e)},[T,E]);(0,r.useEffect)(()=>(R(),window.addEventListener("resize",R),()=>window.removeEventListener("resize",R)),[R]),(0,r.useEffect)(()=>{S||_(e)},[e]);let I={ideation:"INTAKE",intake:"INTAKE",planning:"PROGRESS",coding:"PROGRESS",execution:"PROGRESS",qa:"PROGRESS",acceptance:"PROGRESS",verification:"PROGRESS",pr:"PROGRESS",smoke_test:"PROGRESS",release:"PROGRESS",done:"DONE"},$=e=>{let t="string"==typeof e.stage?e.stage:"",r="string"==typeof e.status?e.status.trim().toLowerCase():"";if(t&&k.includes(t))return t;if("completed"===r)return"DONE";if("in_progress"===r||"blocked"===r||"failed"===r)return"PROGRESS";let n=I[t.trim().toLowerCase()];return n||(y?y(e):"INTAKE")};(0,r.useMemo)(()=>{let e={},t=new Map(E.map(e=>[e.id,e]));for(let r of E)!function r(n,a){if(void 0!==e[n])return e[n];if(a.has(n))return 0;a.add(n);let s=t.get(n);if(!s?.depends_on?.length)return e[n]=0,0;let o=Math.max(...s.depends_on.map(e=>t.has(e)?r(e,a)+1:0));return e[n]=o,o}(r.id,new Set);return e},[E]);let U=(0,r.useMemo)(()=>{let e={},t=new Map(E.map(e=>[e.id,e]));for(let n of k){let a=E.filter(e=>$(e)===n),s=[],o=new Set;function r(e){if(!o.has(e.id)){for(let a of e.depends_on||[]){let e=t.get(a);e&&$(e)===n&&!o.has(a)&&r(e)}o.add(e.id),s.push(e)}}for(let e of a.filter(e=>!e.depends_on?.some(e=>t.has(e)&&$(t.get(e))===n)).sort((e,t)=>(e.priority||0)-(t.priority||0)))r(e);for(let e of a.sort((e,t)=>(e.priority||0)-(t.priority||0)))r(e);e[n]=s}return e},[E,k,y]),D=(0,s.useSensors)((0,s.useSensor)(s.PointerSensor,{activationConstraint:{distance:8}}));async function B(t){let{active:r,over:a}=t;if(C(null),!a)return void _(e);let s=r.id,l=a.id,d=E.find(e=>e.id===s);if(!d)return;let u=e.find(e=>e.id===s),c=$(d),f=d.priority||0;if(k.includes(l)){let e=U[c=l];f=e.length>0?Math.max(...e.map(e=>e.priority||0))+1:0}else{let e=E.find(e=>e.id===l);if(e){c=$(e);let t=E.filter(e=>$(e)===c),r=t.findIndex(e=>e.id===s),a=t.findIndex(e=>e.id===l);if(-1!==r&&-1!==a&&r!==a){let e=(0,o.arrayMove)(t,r,a),s=E.map(t=>{let r=e.findIndex(e=>e.id===t.id);return -1!==r?{...t,priority:r}:t});_(s),n?.(s)}f=e.priority||0}}let p=u?$(u):d.stage||"";if(u&&!N(p||"",c))return void _(e);if(i&&(p!==c||(u?.priority??d.priority)!==f))try{await i(s,{stage:c,priority:f}),n?.(E)}catch(t){console.error("Failed to update task:",t),_(e)}}let F=(0,r.useCallback)(async(t,r)=>{if(!N($(t)||"",r))return;let a=E.filter(e=>e.id!==t.id&&$(e)===r),s=a.length>0?Math.max(...a.map(e=>e.priority||0))+1:0,o=E.map(e=>e.id===t.id?{...e,stage:r,priority:s}:e);if(_(o),n?.(o),i)try{await i(t.id,{stage:r,priority:s})}catch(t){console.error("Failed to update task:",t),_(e)}},[N,E,i,n,e]);return(0,t.jsxs)(s.DndContext,{sensors:D,collisionDetection:s.closestCorners,onDragStart:function(e){let t=E.find(t=>t.id===e.active.id);t&&C(t)},onDragOver:function(e){let{active:t,over:r}=e;if(!r)return;let n=t.id,a=r.id,s=E.find(e=>e.id===n);if(!s)return;let o=$(s),i=function(e){if(k.includes(e))return e;let t=E.find(t=>t.id===e);return t?$(t):null}(a);if(i&&o!==i){if(!N(o||"",i))return;_(e=>e.map(e=>e.id===n?{...e,stage:i}:e))}},onDragEnd:B,children:[(0,t.jsx)("div",{className:"h-full overflow-hidden relative bg-[var(--background)]",ref:P,onScroll:R,onClick:()=>L(null),children:(0,t.jsxs)("div",{className:"relative min-w-full h-full flex flex-col",ref:A,children:[(0,t.jsxs)("svg",{className:"absolute inset-0 w-full h-full pointer-events-none z-10 hidden xl:block",style:{overflow:"visible"},children:[(0,t.jsx)("style",{children:`
|
|
16
|
+
@keyframes flow {
|
|
17
|
+
from { stroke-dashoffset: 20; }
|
|
18
|
+
to { stroke-dashoffset: 0; }
|
|
19
|
+
}
|
|
20
|
+
.conn-path {
|
|
21
|
+
animation: flow 1s linear infinite;
|
|
22
|
+
}
|
|
23
|
+
`}),M.map(e=>{let r=e.to.x-e.from.x,n=e.from.x+.3*Math.abs(r)*(r>0?1:-1),a=e.to.x-.3*Math.abs(r)*(r>0?1:-1);return(0,t.jsx)("path",{d:`M ${e.from.x} ${e.from.y} C ${n} ${e.from.y}, ${a} ${e.to.y}, ${e.to.x} ${e.to.y}`,stroke:"blocking"===e.type?"var(--status-blocked, #f43f5e)":"var(--status-in-progress, #3b82f6)",strokeWidth:"2",strokeDasharray:"4 4",fill:"none",strokeOpacity:"0.4",className:"conn-path"},e.id)})]}),(0,t.jsx)("div",{className:"flex flex-col xl:flex-row gap-4 xl:gap-6 pb-4 px-3 xl:px-6 flex-1 min-h-0 items-stretch justify-center pt-2",children:k.map((e,r)=>(0,t.jsx)(m,{stage:e,tasks:U[e]||[],allTasks:E,stages:k,isTouchLayout:w,selectedTaskId:T,setSelectedTaskId:L,onSelectTask:a,onTaskUpdate:i,onStageMove:F,index:r,onAddTask:l,config:j[e]||{icon:"📌",label:e,color:"var(--primary)"},isCreating:!!(b&&v===e)},e))})]})}),(0,t.jsx)(s.DragOverlay,{dropAnimation:{duration:200,easing:"cubic-bezier(0.18, 0.67, 0.6, 1.22)"},children:S?(0,t.jsx)(u,{task:S}):null})]})}function m({stage:e,tasks:r,allTasks:n,stages:a,isTouchLayout:o,selectedTaskId:i,setSelectedTaskId:l,onSelectTask:d,onTaskUpdate:u,onStageMove:c,index:f,onAddTask:p,config:h,isCreating:x=!1}){let{setNodeRef:b,isOver:v}=(0,s.useDroppable)({id:e});return(0,t.jsxs)("div",{ref:b,id:e,"data-testid":e,className:`
|
|
24
|
+
w-full xl:flex-shrink-0 xl:w-80 flex flex-col min-h-0
|
|
25
|
+
bg-[var(--muted)]/40 rounded-2xl border border-[var(--border)]/50 shadow-inner overflow-hidden
|
|
26
|
+
transition-all duration-200
|
|
27
|
+
${v?"ring-2 ring-[var(--primary)] ring-opacity-30 bg-[var(--primary-muted)]/10":""}
|
|
28
|
+
`,style:{animationDelay:`${50*f}ms`},children:[(0,t.jsxs)("div",{className:"p-4 flex items-center justify-between bg-[var(--card-bg)]/30 backdrop-blur-sm border-b border-[var(--border)]/20",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("span",{className:"text-lg",children:h.icon}),(0,t.jsx)("h3",{className:"font-bold text-[11px] uppercase tracking-widest text-[var(--muted-foreground)]",children:h.label})]}),(0,t.jsx)("span",{className:"text-[10px] font-bold text-[var(--muted-foreground)] bg-[var(--card-bg)] px-2 py-0.5 rounded-full border border-[var(--border)]",children:r.length})]}),(0,t.jsx)(g,{stage:e,tasks:r,allTasks:n,stages:a,isTouchLayout:o,selectedTaskId:i,setSelectedTaskId:l,onSelectTask:d,onTaskUpdate:u,onStageMove:c,config:h,onAddTask:p,isCreating:x})]})}function g({stage:e,tasks:n,allTasks:a,stages:s,isTouchLayout:i,selectedTaskId:l,setSelectedTaskId:u,onSelectTask:c,onTaskUpdate:f,onStageMove:p,config:h,onAddTask:m,isCreating:x}){let b=(0,r.useMemo)(()=>n.map(e=>e.id),[n]),[v,y]=(0,r.useState)(!1),[w,k]=(0,r.useState)(""),j=(0,r.useRef)(null),N=()=>{let t=w.trim();t&&m&&m(t,e),y(!1),k("")},S=()=>{y(!1),k("")};return(0,t.jsx)(o.SortableContext,{items:b,strategy:o.verticalListSortingStrategy,children:(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto scrollbar-thin px-3 py-3 space-y-2",children:[m&&!v&&(0,t.jsx)("button",{onClick:e=>{e.stopPropagation(),y(!0),k(""),setTimeout(()=>j.current?.focus(),0)},disabled:x,className:"w-full py-2.5 rounded-xl border border-dashed border-[var(--border)] text-[var(--muted-foreground)] text-[10px] font-bold uppercase tracking-widest hover:bg-[var(--card-bg)] hover:border-indigo-200 hover:text-indigo-400 transition-all flex items-center justify-center gap-2 mb-1",children:x?(0,t.jsx)("span",{className:"spinner w-3 h-3 border-2 border-[var(--border)] border-t-indigo-400 rounded-full"}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),(0,t.jsx)("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]}),"Add Task"]})}),v&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] border-2 border-indigo-400 rounded-xl p-3 shadow-lg shadow-indigo-50 mb-1",onClick:e=>e.stopPropagation(),children:[(0,t.jsx)("input",{ref:j,type:"text",value:w,onChange:e=>k(e.target.value),onKeyDown:e=>{"Enter"===e.key&&N(),"Escape"===e.key&&S()},onBlur:()=>{w.trim()?N():S()},placeholder:"Task title...",className:"w-full text-sm font-medium text-[var(--foreground)] bg-transparent outline-none placeholder:text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)] mt-1",children:"Press Enter to create · Esc to cancel"})]}),n.map(r=>{let n=(e=>{if(!l)return"none";if(e.id===l)return"active";let t=a.find(e=>e.id===l);return t?.depends_on?.includes(e.id)?"blocking":e.depends_on?.includes(l)?"dependent":"dimmed"})(r);return(0,t.jsx)("div",{id:`task-${r.id}`,onClick:e=>{e.stopPropagation(),u(r.id===l?null:r.id),c?.(r)},children:(0,t.jsx)(d,{task:r,onClick:()=>c?.(r),onStatusChange:f?e=>f(r.id,{status:e}):void 0,onApprovalModeChange:f?e=>f(r.id,{approval_mode:e}):void 0,onStageChange:i&&p?e=>{e&&p(r,e)}:void 0,stageOptions:i?s:void 0,currentStage:e,dragDisabled:i,allTasks:a,relationship:n})},r.id)}),0===n.length&&!v&&(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 opacity-10",children:[(0,t.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"mb-1",children:[(0,t.jsx)("line",{x1:"8",y1:"6",x2:"21",y2:"6"}),(0,t.jsx)("line",{x1:"8",y1:"12",x2:"21",y2:"12"}),(0,t.jsx)("line",{x1:"8",y1:"18",x2:"21",y2:"18"}),(0,t.jsx)("line",{x1:"3",y1:"6",x2:"3.01",y2:"6"}),(0,t.jsx)("line",{x1:"3",y1:"12",x2:"3.01",y2:"12"}),(0,t.jsx)("line",{x1:"3",y1:"18",x2:"3.01",y2:"18"})]}),(0,t.jsx)("p",{className:"text-[10px] font-bold uppercase tracking-widest",children:"Available"})]})]})})}var x=e.i(247167),b=e.i(810605);let v="agx:floatingPanels";function y(){return void 0!==window.localStorage}function w(){if(!y())return{};try{let e=window.localStorage.getItem(v);if(!e)return{};let t=JSON.parse(e);return t&&"object"==typeof t?t:{}}catch{return{}}}function k(e){return w()[e]??null}function j(e,t,r){return Math.min(Math.max(e,t),r)}function N(e,t,r){let n={width:window.innerWidth,height:window.innerHeight},a=Math.max(t,n.width-16),s=Math.max(r,n.height-16),o=j(e.width,t,a),i=j(e.height,r,s);return{x:j(e.x,8,Math.max(8,n.width-o-8)),y:j(e.y,8,Math.max(8,n.height-i-8)),width:o,height:i}}function S({panelId:e,titleBar:n,children:a,defaultBounds:s,minWidth:o=320,minHeight:i=220,className:l,bodyClassName:d}){let{isTouchLayout:u}=(0,p.useInputCapabilities)(),c=(0,r.useRef)(null),f=(0,r.useRef)(null),h=(0,r.useRef)(null),m=(0,r.useRef)(null),g=(0,r.useMemo)(()=>N(k(e)??s,o,i),[s,i,o,e]),[x,b]=(0,r.useState)(g),[j,C]=(0,r.useState)(!1),[E,_]=(0,r.useState)(!1);return m.current=x,(0,r.useEffect)(()=>{b(N(k(e)??s,o,i)),C(!0)},[s,i,o,e]),(0,r.useEffect)(()=>{if(j){let t=w();t[e]=x;if(y())try{window.localStorage.setItem(v,JSON.stringify(t))}catch{}}},[x,j,e]),(0,r.useEffect)(()=>{if(u)return;let e=()=>{b(e=>N(e,o,i))};return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[u,i,o]),(0,r.useEffect)(()=>{if(u||!E)return;let e=e=>{let t=h.current;t&&(t.style.left=`${e.x}px`,t.style.top=`${e.y}px`,t.style.width=`${e.width}px`,t.style.height=`${e.height}px`)},t=t=>{if(c.current){let r=N({...m.current,x:c.current.originX+(t.clientX-c.current.startX),y:c.current.originY+(t.clientY-c.current.startY)},o,i);m.current=r,e(r);return}if(f.current){let r=N({...m.current,width:f.current.originWidth+(t.clientX-f.current.startX),height:f.current.originHeight+(t.clientY-f.current.startY)},o,i);m.current=r,e(r)}},r=()=>{m.current&&b(m.current),c.current=null,f.current=null,document.body.style.userSelect="",document.body.style.cursor="",_(!1)};return window.addEventListener("mousemove",t),window.addEventListener("mouseup",r),()=>{window.removeEventListener("mousemove",t),window.removeEventListener("mouseup",r),document.body.style.userSelect="",document.body.style.cursor=""}},[E,u,i,o]),(0,t.jsx)("div",{ref:h,className:l,style:{position:"fixed",left:u?"50%":x.x,right:u?"auto":void 0,top:u?"max(16px, 8vh)":x.y,width:u?`min(${Math.max(x.width,o)}px, calc(100vw - 32px))`:x.width,height:u?`min(${Math.max(x.height,i)}px, calc(100vh - 48px))`:x.height,transform:u?"translateX(-50%)":void 0,zIndex:40},children:(0,t.jsxs)("div",{className:"flex h-full flex-col overflow-hidden rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] shadow-2xl backdrop-blur-md",children:[(0,t.jsx)("div",{onMouseDown:e=>{if(u)return;let t=e.target;t?.closest("button, a, input, textarea, select, [data-no-panel-drag='true']")||(c.current={startX:e.clientX,startY:e.clientY,originX:x.x,originY:x.y},document.body.style.userSelect="none",document.body.style.cursor="grabbing",_(!0))},className:`${u?"cursor-default":"cursor-grab active:cursor-grabbing"} border-b border-[var(--border)] bg-[var(--card-bg)]/95`,children:n}),(0,t.jsx)("div",{className:d,children:a}),u?null:(0,t.jsx)("div",{onMouseDown:e=>{u||(e.preventDefault(),e.stopPropagation(),f.current={startX:e.clientX,startY:e.clientY,originWidth:x.width,originHeight:x.height},document.body.style.userSelect="none",document.body.style.cursor="nwse-resize",_(!0))},className:"absolute bottom-0 right-0 h-5 w-5 cursor-nwse-resize","aria-hidden":"true",children:(0,t.jsx)("div",{className:"absolute bottom-1.5 right-1.5 h-2.5 w-2.5 rounded-sm border-r-2 border-b-2 border-[var(--muted-foreground)]/50"})})]})})}let C=Number(x.default.env.NEXT_PUBLIC_AGX_MAX_WORKERS)||10;function E({tasks:e,processes:n=[],onTaskClick:a,onStop:s,onRetry:o,cancellingTaskId:i,panelId:l="now-running-panel"}){let{isTouchLayout:d}=(0,p.useInputCapabilities)(),u=(0,r.useMemo)(()=>n.filter(e=>"spawning"===e.state||"running"===e.state),[n]),c=(0,r.useMemo)(()=>e.filter(e=>"in_progress"===e.status),[e]),[f,h]=(0,r.useState)({});(0,r.useEffect)(()=>{let e=()=>{let e={};c.forEach(t=>{let r=new Date(t.updated_at).getTime(),n=Math.floor((Date.now()-r)/6e4);n<1?e[t.id]="< 1m":n<60?e[t.id]=`${n}m`:e[t.id]=`${Math.floor(n/60)}h`}),h(e)};e();let t=setInterval(e,b.UI_POLL_TASK_DURATION_MS);return()=>clearInterval(t)},[c]);let m=c.length/C,g=m>=.8,x=c.length>=C;return 0===c.length?null:(0,t.jsx)(S,{panelId:l,defaultBounds:{x:24,y:120,width:720,height:248},minWidth:420,minHeight:180,className:"animate-fade-in-down",bodyClassName:"flex-1 overflow-auto",titleBar:(0,t.jsxs)("div",{className:"flex items-center gap-4 p-3 sm:p-4 flex-wrap sm:flex-nowrap sm:min-w-max",children:[(0,t.jsxs)("div",{className:"flex flex-col justify-center pr-4 border-r border-[var(--border)]",children:[(0,t.jsxs)("h3",{className:"text-sm font-bold text-[var(--foreground)] whitespace-nowrap flex items-center gap-2",children:[(0,t.jsxs)("span",{className:"relative flex h-2 w-2",children:[(0,t.jsx)("span",{className:"animate-ping absolute inline-flex h-full w-full rounded-full bg-green-400 opacity-75"}),(0,t.jsx)("span",{className:"relative inline-flex rounded-full h-2 w-2 bg-green-500"})]}),"Now Running"]}),(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] uppercase tracking-wider font-semibold",children:[c.length," Active",u.length>0?` \xb7 ${u.length} process${u.length>1?"es":""}`:""]})]}),(0,t.jsxs)("div",{className:"hidden sm:flex flex-col justify-center pr-4 border-r border-[var(--border)] gap-1",title:`${c.length} of ${C} max workers in use. Single-writer SQLite architecture — see docs/LIMITS.md`,children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsxs)("span",{className:`text-[10px] font-semibold uppercase tracking-wider ${x?"text-red-400":g?"text-amber-400":"text-[var(--muted-foreground)]"}`,children:[c.length,"/",C," workers"]}),g&&(0,t.jsxs)("svg",{className:`w-3 h-3 ${x?"text-red-400":"text-amber-400"}`,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"}),(0,t.jsx)("line",{x1:"12",y1:"9",x2:"12",y2:"13"}),(0,t.jsx)("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})]})]}),(0,t.jsx)("div",{className:"w-16 h-1.5 bg-[var(--muted)] rounded-full overflow-hidden",children:(0,t.jsx)("div",{className:`h-full rounded-full transition-all ${x?"bg-red-400":g?"bg-amber-400":"bg-[var(--primary)]"}`,style:{width:`${Math.min(100*m,100)}%`}})})]})]}),children:(0,t.jsx)("div",{className:"max-w-full overflow-x-auto no-scrollbar p-3 sm:p-4",children:(0,t.jsx)("div",{className:"flex items-center gap-3 flex-wrap",children:c.map(e=>{let r=e.id===i;return(0,t.jsxs)("div",{onClick:()=>a?.(e),className:"group flex items-center gap-3 pl-3 pr-2 py-2 bg-[var(--background)] border border-[var(--border)] rounded-lg hover:border-[var(--primary)] transition-all cursor-pointer shadow-sm hover:shadow-md min-w-0 w-full sm:min-w-[280px] sm:w-auto",children:[(0,t.jsx)("div",{className:"w-6 h-6 sm:w-8 sm:h-8 rounded-full bg-[var(--muted)] flex items-center justify-center text-[10px] sm:text-xs font-bold border border-[var(--border)] shrink-0",children:e.provider?e.provider.substring(0,2).toUpperCase():"AG"}),(0,t.jsxs)("div",{className:"flex flex-col flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs mb-0.5",children:[(0,t.jsxs)("span",{className:"font-semibold text-[var(--foreground)] truncate max-w-[120px]",children:[e.provider||"Agent"," ",e.model?`• ${e.model}`:""]}),(0,t.jsx)("span",{className:"font-mono text-[var(--muted-foreground)]",children:f[e.id]||"0m"})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)] truncate max-w-[140px]",children:e.title||e.content.substring(0,30)}),(0,t.jsx)("div",{className:"w-12 h-1 bg-[var(--muted)] rounded-full overflow-hidden",children:(0,t.jsx)("div",{className:"h-full bg-[var(--primary)] animate-pulse rounded-full",style:{width:`${40*Math.random()+30}%`}})})]})]}),(0,t.jsxs)("div",{className:`flex items-center gap-1 pl-2 border-l border-[var(--border)] transition-opacity ${d?"opacity-100":"opacity-0 group-hover:opacity-100"}`,children:[(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),r||s?.(e.id)},disabled:r,className:`p-1 rounded transition-all ${r?"cursor-wait text-[var(--destructive)]/80 opacity-80":"hover:bg-[var(--destructive)]/10 text-[var(--muted-foreground)] hover:text-[var(--destructive)]"}`,title:r?"Stopping...":"Stop Task","data-no-panel-drag":"true",children:r?(0,t.jsx)("span",{className:"inline-flex h-3 w-3 rounded-full border border-[var(--destructive)] border-t-transparent animate-spin"}):(0,t.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor",children:(0,t.jsx)("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})})}),(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),o?.(e.id)},className:"p-1 hover:bg-[var(--primary)]/10 text-[var(--muted-foreground)] hover:text-[var(--primary)] rounded",title:"Retry / Restart","data-no-panel-drag":"true",children:(0,t.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}),(0,t.jsx)("path",{d:"M3 3v5h5"}),(0,t.jsx)("path",{d:"M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16"}),(0,t.jsx)("path",{d:"M16 21h5v-5"})]})})]})]},e.id)})})})})}var _=e.i(745649);e.s(["default",0,function(){let{tasks:e,isLoading:s,updateTask:o,deleteTask:i,completeTaskStage:l,cancelWorkflow:d,refetch:u,cancellingTaskId:p}=(0,_.useTasks)({realtime:!0,orphan:!0}),{workflow:m,stages:g,stageConfig:x,isValidTransition:b,isLoading:v}={workflow:null,stages:(0,r.useMemo)(()=>[...c],[]),stageConfig:f,transitions:[],isLoading:!1,error:null,refetch:()=>{},isValidTransition:(0,r.useCallback)((e,t)=>{if(e===t)return!0;let r=c.indexOf(e),n=c.indexOf(t);return n<r||n===r+1},[])},[y,w]=(0,r.useState)(""),k=(0,r.useMemo)(()=>{if(!y.trim())return e;let t=y.toLowerCase();return e.filter(e=>(e.title||"").toLowerCase().includes(t)||(e.content||"").toLowerCase().includes(t))},[e,y]),j=(0,r.useCallback)(async e=>{},[]);return s||v?(0,t.jsx)(a.default,{children:(0,t.jsx)("div",{className:"h-full flex items-center justify-center",children:(0,t.jsxs)("div",{className:"flex flex-col items-center gap-4",children:[(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading orphan tasks..."})]})})}):(0,t.jsx)(a.default,{children:(0,t.jsxs)("div",{className:"h-full flex flex-col p-4",children:[(0,t.jsxs)("div",{className:"flex-shrink-0 mb-4 space-y-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-xl font-bold",children:"Orphan Tasks"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Tasks without a project assignment. Open a task to attach it to a project."})]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(n.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("input",{type:"text",placeholder:"Search orphan tasks",value:y,onChange:e=>w(e.target.value),className:"w-full pl-9 pr-4 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-[var(--primary)] focus:border-transparent transition-all"})]}),(0,t.jsx)(E,{tasks:k,onTaskClick:()=>{},onStop:async e=>{await d({taskId:e}),await u()},onRetry:async e=>{await l({taskId:e,decision:"not_done",final_result:"Manual retry requested.",explanation:"Manual retry requested."})},cancellingTaskId:p,panelId:"now-running:orphans"})]}),(0,t.jsx)("div",{className:"flex-1 min-h-0 overflow-hidden",children:(0,t.jsx)(h,{tasks:k,onSelectTask:j,onTasksChange:()=>{},onTaskUpdate:async(e,t)=>{await o(e,t)},stages:g,stageConfig:x,isValidTransition:b})})]})})}],172695)}]);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,640481,e=>{"use strict";let t=(0,e.i(363732).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",0,t],640481)},429056,e=>{"use strict";let t=(0,e.i(363732).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],429056)},716436,e=>{"use strict";let t=(0,e.i(363732).default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);e.s(["Activity",0,t],716436)},367859,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",0,t],367859)},580873,e=>{"use strict";let t=(0,e.i(363732).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",0,t],580873)},203096,e=>{"use strict";let t=(0,e.i(363732).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],203096)},423709,e=>{"use strict";e.s(["stripMarkers",0,function(e){return e.replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").trim()}])},195057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return i},formatWithValidation:function(){return o},urlObjectKeys:function(){return d}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(190809)._(e.r(998183)),l=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,a=e.protocol||"",s=e.pathname||"",i=e.hash||"",d=e.query||"",o=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?o=t+e.host:r&&(o=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(o+=":"+e.port)),d&&"object"==typeof d&&(d=String(n.urlQueryToSearchParams(d)));let c=e.search||d&&`?${d}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||l.test(a))&&!1!==o?(o="//"+(o||""),s&&"/"!==s[0]&&(s="/"+s)):o||(o=""),i&&"#"!==i[0]&&(i="#"+i),c&&"?"!==c[0]&&(c="?"+c),s=s.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${a}${o}${s}${c}${i}`}let d=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function o(e){return i(e)}},818581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let a=e.r(271645);function s(e,t){let r=(0,a.useRef)(null),s=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=n(e,a)),t&&(s.current=n(t,a))},[e,t])}function n(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},573668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return n}});let a=e.r(718967),s=e.r(652817);function n(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.hasBasePath)(r.pathname)}catch(e){return!1}}},284508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},522016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return g},useLinkStatus:function(){return b}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(190809),l=e.r(843476),i=n._(e.r(271645)),d=e.r(195057),o=e.r(8372),c=e.r(818581),u=e.r(718967),m=e.r(405550);e.r(233525);let x=e.r(388540),p=e.r(91949),h=e.r(573668),f=e.r(509396);function g(t){var r,a;let s,n,g,[b,j]=(0,i.useOptimistic)(p.IDLE_LINK_STATUS),y=(0,i.useRef)(null),{href:N,as:k,children:w,prefetch:S=null,passHref:C,replace:M,shallow:_,scroll:E,onClick:T,onMouseEnter:P,onTouchStart:A,legacyBehavior:$=!1,onNavigate:O,transitionTypes:L,ref:I,unstable_dynamicOnHover:R,...D}=t;s=w,$&&("string"==typeof s||"number"==typeof s)&&(s=(0,l.jsx)("a",{children:s}));let U=i.default.useContext(o.AppRouterContext),z=!1!==S,H=!1!==S?null===(a=S)||"auto"===a?f.FetchStrategy.PPR:f.FetchStrategy.Full:f.FetchStrategy.PPR,B="string"==typeof(r=k||N)?r:(0,d.formatUrl)(r);if($){if(s?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});n=i.default.Children.only(s)}let V=$?n&&"object"==typeof n&&n.ref:I,q=i.default.useCallback(e=>(null!==U&&(y.current=(0,p.mountLinkInstance)(e,B,U,H,z,j)),()=>{y.current&&((0,p.unmountLinkForCurrentNavigation)(y.current),y.current=null),(0,p.unmountPrefetchableInstance)(e)}),[z,B,U,H,j]),J={ref:(0,c.useMergedRef)(q,V),onClick(t){$||"function"!=typeof T||T(t),$&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(t),!U||t.defaultPrevented||function(t,r,a,s,n,l,d){if("u">typeof window){let o,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((o=t.currentTarget.getAttribute("target"))&&"_self"!==o||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){s&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:u}=e.r(699781);i.default.startTransition(()=>{u(r,s?"replace":"push",!1===n?x.ScrollBehavior.NoScroll:x.ScrollBehavior.Default,a.current,d)})}}(t,B,y,M,E,O,L)},onMouseEnter(e){$||"function"!=typeof P||P(e),$&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),U&&z&&(0,p.onNavigationIntent)(e.currentTarget,!0===R)},onTouchStart:function(e){$||"function"!=typeof A||A(e),$&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),U&&z&&(0,p.onNavigationIntent)(e.currentTarget,!0===R)}};return(0,u.isAbsoluteUrl)(B)?J.href=B:$&&!C&&("a"!==n.type||"href"in n.props)||(J.href=(0,m.addBasePath)(B)),g=$?i.default.cloneElement(n,J):(0,l.jsx)("a",{...D,...J,children:s}),(0,l.jsx)(v.Provider,{value:b,children:g})}e.r(284508);let v=(0,i.createContext)(p.IDLE_LINK_STATUS),b=()=>(0,i.useContext)(v);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},597628,e=>{"use strict";let t=(0,e.i(363732).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",0,t],597628)},618566,(e,t,r)=>{t.exports=e.r(976562)},572665,e=>{"use strict";let t=(0,e.i(363732).default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);e.s(["Users",0,t],572665)},8707,e=>{"use strict";let t=(0,e.i(363732).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",0,t],8707)},529471,e=>{"use strict";let t=(0,e.i(363732).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["Check",0,t],529471)},498027,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",0,t],498027)},378764,e=>{"use strict";var t=e.i(843476),r=e.i(271645),a=e.i(498027),s=e.i(8707),n=e.i(529471),l=e.i(797167);e.s(["default",0,function({options:e,value:i,onChange:d,placeholder:o,disabled:c}){let[u,m]=(0,r.useState)(!1),[x,p]=(0,r.useState)(""),h=(0,r.useRef)(null),f=(0,r.useRef)(null),g=(0,r.useMemo)(()=>{if(!x)return e;let t=x.toLowerCase();return e.filter(e=>e.label.toLowerCase().includes(t)||e.description?.toLowerCase().includes(t)||e.meta?.toLowerCase().includes(t))},[e,x]),v=(0,r.useMemo)(()=>e.find(e=>e.id===i),[e,i]),b=(0,r.useCallback)(e=>{h.current&&!h.current.contains(e.target)&&m(!1)},[]);return(0,r.useEffect)(()=>(document.addEventListener("pointerdown",b),()=>document.removeEventListener("pointerdown",b)),[b]),(0,t.jsxs)("div",{ref:h,className:"relative",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>{c||(m(!u),p(""),setTimeout(()=>f.current?.focus(),0))},disabled:c,className:"input w-full flex items-center justify-between gap-2 text-left cursor-pointer",children:[v?(0,t.jsx)("span",{className:"truncate",children:v.label}):(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] truncate",children:o}),(0,t.jsx)(a.ChevronDown,{className:`w-4 h-4 text-[var(--muted-foreground)] flex-shrink-0 transition-transform ${u?"rotate-180":""}`})]}),u&&(0,t.jsxs)("div",{className:"absolute z-50 mt-2 min-w-full w-max max-w-[28rem] rounded-2xl overflow-hidden right-0",style:{background:"var(--card-bg)",border:"1px solid var(--border)",boxShadow:"0 8px 30px rgba(0,0,0,0.35), 0 0 0 1px rgba(255,255,255,0.05)"},children:[(0,t.jsxs)("div",{className:"flex items-center gap-2.5 px-3.5 py-3 border-b",style:{borderColor:"var(--border)"},children:[(0,t.jsx)(s.Search,{className:"w-4 h-4 text-[var(--muted-foreground)] flex-shrink-0"}),(0,t.jsx)("input",{ref:f,value:x,onChange:e=>p(e.target.value),placeholder:"Search...",className:"flex-1 bg-transparent text-sm outline-none placeholder:text-[var(--muted-foreground)]"}),x&&(0,t.jsx)("button",{onClick:()=>p(""),className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,t.jsx)(l.X,{className:"w-3.5 h-3.5"})})]}),(0,t.jsxs)("div",{className:"max-h-72 overflow-y-auto py-1",children:[0===g.length&&(0,t.jsx)("div",{className:"px-4 py-6 text-xs text-[var(--muted-foreground)] text-center",children:"No matches"}),g.map(e=>{let r=e.id===i;return(0,t.jsxs)("button",{onClick:()=>{e.disabled||(d(e.id),m(!1),p(""))},disabled:e.disabled,className:`
|
|
2
|
+
w-full text-left px-3.5 py-2.5 flex items-center gap-3 transition-colors
|
|
3
|
+
${e.disabled?"opacity-35 cursor-not-allowed":""}
|
|
4
|
+
${r?"bg-[var(--primary)]/10":"hover:bg-[var(--muted)]/40"}
|
|
5
|
+
`,children:[(0,t.jsx)("div",{className:`w-5 h-5 rounded-md flex items-center justify-center flex-shrink-0 border ${r?"bg-[var(--primary)] border-[var(--primary)]":"border-[var(--border)]"}`,children:r&&(0,t.jsx)(n.Check,{className:"w-3 h-3 text-white"})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.label}),e.meta&&(0,t.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full bg-[var(--muted)]/50 text-[var(--muted-foreground)]",children:e.meta})]}),e.description&&(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5 line-clamp-1",children:e.description})]})]},e.id)})]})]})]})}])},44054,e=>{"use strict";var t=e.i(271645);let r="(pointer: coarse)",a="(hover: hover)",s="(max-width: 767px)",n="(min-width: 768px)";function l(){if("function"!=typeof window.matchMedia)return{isCoarsePointer:!1,canHover:!0,isPhone:!1,isTablet:!1,isTouchLayout:!1};let e=window.matchMedia(r).matches,t=window.matchMedia(a).matches,l=window.matchMedia(s).matches,i=!l&&window.matchMedia(n).matches,d=e||!t;return{isCoarsePointer:e,canHover:t,isPhone:d&&l,isTablet:d&&i,isTouchLayout:d}}e.s(["useInputCapabilities",0,function(){let[e,i]=(0,t.useState)(l);return(0,t.useEffect)(()=>{if("function"!=typeof window.matchMedia)return;let e=[window.matchMedia(r),window.matchMedia(a),window.matchMedia(s),window.matchMedia(n)],t=()=>{i(l())};return e.forEach(e=>e.addEventListener("change",t)),window.addEventListener("resize",t),t(),()=>{e.forEach(e=>e.removeEventListener("change",t)),window.removeEventListener("resize",t)}},[]),e}])},755838,(e,t,r)=>{"use strict";var a=e.r(271645),s="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},n=a.useState,l=a.useEffect,i=a.useLayoutEffect,d=a.useDebugValue;function o(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!s(e,r)}catch(e){return!0}}var c="u"<typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),a=n({inst:{value:r,getSnapshot:t}}),s=a[0].inst,c=a[1];return i(function(){s.value=r,s.getSnapshot=t,o(s)&&c({inst:s})},[e,r,t]),l(function(){return o(s)&&c({inst:s}),e(function(){o(s)&&c({inst:s})})},[e]),d(r),r};r.useSyncExternalStore=void 0!==a.useSyncExternalStore?a.useSyncExternalStore:c},802239,(e,t,r)=>{"use strict";t.exports=e.r(755838)},752822,(e,t,r)=>{"use strict";var a=e.r(271645),s=e.r(802239),n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},l=s.useSyncExternalStore,i=a.useRef,d=a.useEffect,o=a.useMemo,c=a.useDebugValue;r.useSyncExternalStoreWithSelector=function(e,t,r,a,s){var u=i(null);if(null===u.current){var m={hasValue:!1,value:null};u.current=m}else m=u.current;var x=l(e,(u=o(function(){function e(e){if(!d){if(d=!0,l=e,e=a(e),void 0!==s&&m.hasValue){var t=m.value;if(s(t,e))return i=t}return i=e}if(t=i,n(l,e))return t;var r=a(e);return void 0!==s&&s(t,r)?(l=e,t):(l=e,i=r)}var l,i,d=!1,o=void 0===r?null:r;return[function(){return e(t())},null===o?void 0:function(){return e(o())}]},[t,r,a,s]))[0],u[1]);return d(function(){m.hasValue=!0,m.value=x},[x]),c(x),x}},430224,(e,t,r)=>{"use strict";t.exports=e.r(752822)},538292,e=>{"use strict";let t=(0,e.i(363732).default)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]);e.s(["FolderOpen",0,t],538292)},19035,e=>{"use strict";let t=(0,e.i(363732).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",0,t],19035)},363732,e=>{"use strict";var t=e.i(271645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),a=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var s={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let n=(0,t.forwardRef)(({color:e="currentColor",size:a=24,strokeWidth:n=2,absoluteStrokeWidth:l,className:i="",children:d,iconNode:o,...c},u)=>(0,t.createElement)("svg",{ref:u,...s,width:a,height:a,stroke:e,strokeWidth:l?24*Number(n)/Number(a):n,className:r("lucide",i),...!d&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(c)&&{"aria-hidden":"true"},...c},[...o.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(d)?d:[d]]));e.s(["default",0,(e,s)=>{let l=(0,t.forwardRef)(({className:l,...i},d)=>(0,t.createElement)(n,{ref:d,iconNode:s,className:r(`lucide-${a(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,l),...i}));return l.displayName=a(e),l}],363732)},797167,e=>{"use strict";let t=(0,e.i(363732).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["X",0,t],797167)},929870,e=>{"use strict";let t=(0,e.i(363732).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],929870)},524123,e=>{"use strict";var t=e.i(271645);e.s(["useProjects",0,function(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!1),[n,l]=(0,t.useState)(null),i=(0,t.useCallback)(async()=>{s(!0);try{let e=await fetch("/api/projects");if(!e.ok)throw Error("Failed to fetch projects");let t=await e.json();r(t.projects??[]),l(null)}catch(e){l(e instanceof Error?e:Error("Unknown error"))}finally{s(!1)}},[]);(0,t.useEffect)(()=>{i()},[i]);let d=(0,t.useCallback)(async e=>{let t=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to create project");let a=(await t.json()).project;return r(e=>[a,...e]),a},[]);return{projects:e,isLoading:a,error:n,refetch:i,createProject:d,updateProject:(0,t.useCallback)(async(e,t)=>{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)throw Error((await a.json().catch(()=>({}))).error||"Failed to update project");let s=(await a.json()).project;return r(t=>t.map(t=>t.id===e?s:t)),s},[]),deleteProject:(0,t.useCallback)(async e=>{let t=await fetch(`/api/projects/${e}`,{method:"DELETE"});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to delete project");r(t=>t.filter(t=>t.id!==e))},[])}},"useProjectsWithAgents",0,function(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!0),n=(0,t.useCallback)(async()=>{try{let e=await fetch("/api/projects");if(!e.ok)return;let{projects:t}=await e.json(),a=await Promise.all((t??[]).map(async e=>{let t=[],r=[];try{let[a,s]=await Promise.all([fetch(`/api/projects/${e.id}/agents`),fetch(`/api/projects/${e.id}/threads`)]);a.ok&&(t=(await a.json()).agents??[]),s.ok&&(r=((await s.json()).threads??[]).map(e=>e.thread_id))}catch{}return{...e,repos:e.repos??[],agents:t.map(t=>({project_id:e.id,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at})),thread_ids:r,workspace_ids:r}}));r(a)}catch{}finally{s(!1)}},[]);(0,t.useEffect)(()=>{n()},[n]);let l=(0,t.useCallback)(async(e,t)=>{try{let a="string"==typeof e?{name:e}:e,s=a.name.trim(),n=(a.slug||s.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),l=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...a,name:s,slug:n})});if(!l.ok)return null;let{project:i}=await l.json(),d=Array.isArray(t)?t:t?[t]:[];for(let e of d)await fetch(`/api/projects/${i.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:e})}).catch(e=>console.warn("[useProjects] link thread failed:",e));let o={...i,repos:i.repos??[],agents:[],thread_ids:d,workspace_ids:d};return r(e=>[...e,o].sort((e,t)=>e.name.localeCompare(t.name))),o}catch{return null}},[]),i=(0,t.useCallback)(async(e,t)=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t})})).ok)return;r(r=>r.map(r=>r.id===e?{...r,name:t}:r).sort((e,t)=>e.name.localeCompare(t.name)))}catch{}},[]),d=(0,t.useCallback)(async e=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"DELETE"})).ok)return;r(t=>t.filter(t=>t.id!==e))}catch{}},[]),o=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(e.error||"Failed to update project")}let s=(await a.json()).project;return r(t=>t.map(t=>t.id===e?{...t,...s,repos:s.repos??t.repos}:t)),s}catch{return null}},[]),c=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:t})});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]),u=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents?agentId=${t}`,{method:"DELETE"});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]);return{projects:e,isLoading:a,createProject:l,updateProject:o,renameProject:i,deleteProject:d,addAgent:c,removeAgent:u,reorderAgents:(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:t})});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]),moveAgent:(0,t.useCallback)(async(e,t,r)=>{try{await fetch(`/api/projects/${t}/agents?agentId=${e}`,{method:"DELETE"}),await fetch(`/api/projects/${r}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:e})}),await n()}catch{}},[n]),refresh:n}}])},169610,e=>{"use strict";let t=(0,e.i(363732).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);e.s(["User",0,t],169610)},519132,e=>{"use strict";let t=(0,e.i(363732).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);e.s(["Sparkles",0,t],519132)},997626,e=>{"use strict";let t=(0,e.i(363732).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",0,t],997626)},938201,e=>{"use strict";let t=(0,e.i(363732).default)("target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]]);e.s(["Target",0,t],938201)},80673,e=>{"use strict";let t=(0,e.i(363732).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["Download",0,t],80673)},629155,e=>{"use strict";let t=(0,e.i(363732).default)("hash",[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]]);e.s(["Hash",0,t],629155)},564957,e=>{"use strict";let t=(0,e.i(363732).default)("brain-circuit",[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M9 13a4.5 4.5 0 0 0 3-4",key:"10igwf"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M12 13h4",key:"1ku699"}],["path",{d:"M12 18h6a2 2 0 0 1 2 2v1",key:"105ag5"}],["path",{d:"M12 8h8",key:"1lhi5i"}],["path",{d:"M16 8V5a2 2 0 0 1 2-2",key:"u6izg6"}],["circle",{cx:"16",cy:"13",r:".5",key:"ry7gng"}],["circle",{cx:"18",cy:"3",r:".5",key:"1aiba7"}],["circle",{cx:"20",cy:"21",r:".5",key:"yhc1fs"}],["circle",{cx:"20",cy:"8",r:".5",key:"1e43v0"}]]);e.s(["BrainCircuit",0,t],564957)},906772,e=>{"use strict";let t=(0,e.i(363732).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["ShieldCheck",0,t],906772)},791210,e=>{"use strict";let t=(0,e.i(363732).default)("corner-down-right",[["path",{d:"m15 10 5 5-5 5",key:"qqa56n"}],["path",{d:"M4 4v7a4 4 0 0 0 4 4h12",key:"z08zvw"}]]);e.s(["CornerDownRight",0,t],791210)},416865,e=>{"use strict";var t=e.i(843476),r=e.i(271645),a=e.i(618566),s=e.i(522016),n=e.i(716436),l=e.i(997626),i=e.i(564957),d=e.i(429056),o=e.i(572665),c=e.i(629155),u=e.i(597628),m=e.i(837958),x=e.i(519132),p=e.i(203096),h=e.i(367859),f=e.i(580873),g=e.i(938201),v=e.i(812549),b=e.i(906772),j=e.i(791210),y=e.i(80673),N=e.i(640481),k=e.i(884564),w=e.i(524123),S=e.i(423709),C=e.i(208343);e.s(["default",0,function(){let{id:e}=(0,a.useParams)(),[M,_]=(0,r.useState)(null),[E,T]=(0,r.useState)([]),[P,A]=(0,r.useState)(null),[$,O]=(0,r.useState)([]),[L,I]=(0,r.useState)({total_messages:0,threads_participated:0}),[R,D]=(0,r.useState)(!0),[U,z]=(0,r.useState)("feed"),[H,B]=(0,r.useState)(!1),[V,q]=(0,r.useState)([]),{projects:J}=(0,w.useProjectsWithAgents)();if((0,r.useEffect)(()=>{e&&Promise.all([fetch("/api/participants").then(e=>e.json()),fetch(`/api/agents/${e}/profile`).then(e=>e.ok?e.json():null),fetch(`/api/agents/${e}/messages`).then(e=>e.ok?e.json():null)]).then(([t,r,a])=>{let s=Array.isArray(t)?t:[];T(s),_(s.find(t=>t.id===e)??null),A(r),O(a?.messages??[]),I(a?.stats??{total_messages:0,threads_participated:0}),D(!1)})},[e]),(0,r.useEffect)(()=>{if(!e)return;let t=async()=>{try{let t=await fetch("/api/processes?enrich=1");if(!t.ok)return;let r=await t.json();q(r.filter(t=>t.agentId===e&&("spawning"===t.state||"running"===t.state)))}catch{}};t();let r=setInterval(t,3e3);return()=>clearInterval(r)},[e]),R)return(0,t.jsx)("div",{className:"min-h-screen bg-[var(--background)] flex items-center justify-center",children:(0,t.jsx)("div",{className:"animate-pulse text-[var(--muted-foreground)] text-sm",children:"Loading agent…"})});if(!M)return(0,t.jsxs)("div",{className:"min-h-screen bg-[var(--background)] flex flex-col items-center justify-center gap-4",children:[(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"Agent not found"}),(0,t.jsx)(s.default,{href:"/agents",className:"text-sm text-blue-600 hover:underline",children:"Back to agents"})]});let F=M.color||"#D97706",K=J.filter(e=>e.agents.some(e=>e.agent_id===M.id)),W=P?.self||"",Z=(0,S.stripMarkers)(W),X=M.identity||"",Q=(0,S.stripMarkers)(X),Y=P?.journal??[],G=Y.filter(e=>"reflection"===e.type),ee=P?.inspectability,et=ee?.knowledge.agent.portableSkills??[],er=ee?.knowledge.agent.skillBindings??[],ea=ee?.knowledge.agent.learnedMemories??[],es=ee?.evidence,en=$.map(e=>({...e,content:(0,S.stripMarkers)(e.content)})).filter(e=>e.content.length>0),el=new Map;for(let e of E)el.set(e.id,e);let ei=e=>{let t=new Date(e),r=Math.floor((Date.now()-t.getTime())/6e4);if(r<1)return"just now";if(r<60)return`${r}m ago`;let a=Math.floor(r/60);if(a<24)return`${a}h ago`;let s=Math.floor(a/24);return s<7?`${s}d ago`:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(t)},ed=e=>{let t=new Date(e);return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(t)},eo=[{label:"Messages",value:L.total_messages.toLocaleString(),icon:u.MessageSquare},{label:"Threads",value:String(L.threads_participated),icon:c.Hash},{label:"Journal Entries",value:String(Y.length),icon:m.BookOpen},{label:"Projects",value:String(K.length),icon:o.Users}];return(0,t.jsxs)("div",{className:"min-h-screen bg-[var(--background)] text-[var(--foreground)] font-sans selection:bg-amber-100/30",children:[(0,t.jsxs)("nav",{className:"desktop-titlebar sticky top-0 z-50 bg-[var(--card-bg)]/80 backdrop-blur-md border-b border-[var(--border)] px-4 md:px-8 h-14 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)(s.default,{href:"/agents",className:"p-2 hover:bg-[var(--muted)] rounded-lg transition-colors group",children:(0,t.jsx)(d.ArrowLeft,{className:"w-5 h-5 text-[var(--muted-foreground)] group-hover:text-[var(--foreground)]"})}),(0,t.jsx)("div",{className:"h-4 w-[1px] bg-[var(--muted)] hidden md:block"}),(0,t.jsxs)("div",{className:"hidden md:flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(o.Users,{className:"w-4 h-4"}),(0,t.jsx)(s.default,{href:"/agents",className:"hover:text-[var(--foreground)] transition-colors",children:"Agents"}),(0,t.jsx)(h.ChevronRight,{className:"w-4 h-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-[var(--foreground)] font-semibold",children:M.name})]})]}),(0,t.jsx)("div",{className:"flex items-center gap-3",children:P?.selfVersion&&(0,t.jsxs)("span",{className:"text-xs font-mono text-[var(--muted-foreground)] bg-[var(--muted)] px-2 py-1 rounded",children:["v",P.selfVersion]})})]}),(0,t.jsxs)("main",{className:"max-w-7xl mx-auto p-4 md:p-8 grid grid-cols-1 lg:grid-cols-12 gap-8",children:[(0,t.jsxs)("div",{className:"lg:col-span-4 space-y-6",children:[(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] shadow-xl shadow-black/5 overflow-hidden",children:[(0,t.jsx)("div",{className:"h-32 w-full relative",style:{background:`linear-gradient(135deg, ${F} 0%, ${F}99 100%)`},children:(0,t.jsx)("div",{className:"absolute inset-0 opacity-20 bg-[radial-gradient(#fff_1px,transparent_1px)] [background-size:16px_16px]"})}),(0,t.jsxs)("div",{className:"px-6 pb-6 text-center -mt-16 relative",children:[(0,t.jsxs)("div",{className:"inline-block relative",children:[(0,t.jsx)("img",{alt:M.name,className:"w-32 h-32 rounded-3xl bg-[var(--card-bg)] p-2 border-4 border-[var(--card-bg)] shadow-xl",src:(0,k.agentAvatarUrl)(M.id,128,M.color)}),(0,t.jsx)("div",{className:"absolute bottom-2 right-2 w-6 h-6 bg-green-500 border-4 border-[var(--card-bg)] rounded-full"})]}),(0,t.jsxs)("div",{className:"mt-4 space-y-1",children:[(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2",children:[(0,t.jsx)("h1",{className:"text-2xl font-black tracking-tight",children:M.name}),(0,t.jsx)("span",{className:"px-2 py-0.5 rounded-full text-[10px] font-bold uppercase tracking-wider",style:{backgroundColor:`${F}20`,color:F},children:M.provider})]}),(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] font-mono text-xs",children:M.model})]}),(0,t.jsxs)("div",{className:"flex flex-wrap justify-center gap-2 mt-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1.5 rounded-full bg-[var(--app-shell-subtle)] border border-[var(--border)] text-xs font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(v.Cpu,{className:"w-3.5 h-3.5"}),M.model]}),(0,t.jsxs)("div",{className:`flex items-center gap-1.5 px-3 py-1.5 rounded-full border text-xs font-medium ${V.length>0?"bg-green-50 border-green-200 text-green-700":"bg-[var(--app-shell-subtle)] border-[var(--border)] text-[var(--muted-foreground)]"}`,children:[(0,t.jsx)(n.Activity,{className:`w-3.5 h-3.5 ${V.length>0?"animate-pulse":""}`}),V.length>0?"Working":"Idle"]})]}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-3 mt-8",children:eo.map((e,r)=>(0,t.jsxs)("div",{className:"bg-[var(--app-shell-subtle)] p-3 rounded-2xl border border-[var(--border)] text-left hover:border-[var(--border)] transition-colors cursor-default",children:[(0,t.jsx)(e.icon,{className:"w-4 h-4 text-[var(--muted-foreground)] mb-1"}),(0,t.jsx)("div",{className:"text-lg font-bold text-[var(--foreground)]",children:e.value}),(0,t.jsx)("div",{className:"text-[10px] uppercase font-bold text-[var(--muted-foreground)] tracking-wider",children:e.label})]},r))})]})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(l.Zap,{className:"w-3.5 h-3.5"})," Actions"]}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>B(!0),className:"flex-1 flex items-center justify-center gap-2 px-3 py-2.5 text-sm font-medium text-[var(--foreground)] bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl hover:bg-[var(--muted)] hover:border-[var(--border)] transition-all",children:[(0,t.jsx)(N.Pencil,{className:"w-3.5 h-3.5"}),"Edit"]}),(0,t.jsxs)("button",{type:"button",onClick:async()=>{let e=await fetch("/api/agents/export",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentIds:[M.id]})});if(!e.ok)return;let t=await e.json(),r=new Blob([JSON.stringify({version:1,exportedAt:new Date().toISOString(),agents:t.agents,projects:[]},null,2)],{type:"application/json"}),a=URL.createObjectURL(r),s=document.createElement("a");s.href=a,s.download=`${M.name.toLowerCase().replace(/\s+/g,"-")}.agent.json`,s.click(),URL.revokeObjectURL(a)},className:"flex-1 flex items-center justify-center gap-2 px-3 py-2.5 text-sm font-medium text-[var(--foreground)] bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl hover:bg-[var(--muted)] hover:border-[var(--border)] transition-all",children:[(0,t.jsx)(y.Download,{className:"w-3.5 h-3.5"}),"Export"]})]})]}),V.length>0&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-green-200 ring-1 ring-green-100 p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-green-600 uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(n.Activity,{className:"w-3.5 h-3.5 animate-pulse"})," Working Now"]}),(0,t.jsx)("div",{className:"flex flex-col gap-2",children:V.map(e=>(0,t.jsxs)(s.default,{href:e.threadId?`/thread/${e.threadId}`:"#",className:"flex items-center gap-3 p-2.5 rounded-xl bg-green-50 border border-green-100 hover:border-green-300 hover:bg-green-100 transition-all group/work",children:[(0,t.jsx)("div",{className:"relative shrink-0",children:(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-green-500 animate-pulse"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[var(--foreground)] truncate",children:e.threadId?(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)(c.Hash,{className:"w-3 h-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"truncate",children:e.threadTitle||e.threadId.substring(0,12)+"..."})]}):(0,t.jsx)("span",{children:"Main thread"})}),(0,t.jsx)("div",{className:"text-[10px] text-[var(--muted-foreground)] capitalize",children:e.state})]}),(0,t.jsx)(h.ChevronRight,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] group-hover/work:text-[var(--muted-foreground)]"})]},`${e.workspaceId}-${e.threadId}`))})]}),(M.skills&&M.skills.length>0||M.skillBindings&&M.skillBindings.length>0)&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(i.BrainCircuit,{className:"w-3.5 h-3.5"})," Portable Knowledge"]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[M.skills?.map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs p-2 hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors",children:[(0,t.jsx)(l.Zap,{size:10,className:"text-blue-500 shrink-0"}),(0,t.jsx)("span",{className:"text-blue-600 font-mono truncate",title:e.file,children:e.file.split("/").pop()}),e.condition&&(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] text-[10px] ml-auto shrink-0",children:e.condition})]},`skill-${r}`)),M.skillBindings?.map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs p-2 hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors",children:[(0,t.jsx)(m.BookOpen,{size:10,className:"text-emerald-500 shrink-0"}),(0,t.jsx)("span",{className:"text-emerald-600 font-mono truncate",title:`${e.repo}/${e.skillId}`,children:e.skillId}),e.condition&&(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] text-[10px] ml-auto shrink-0",children:e.condition})]},`binding-${r}`))]})]}),(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(b.ShieldCheck,{className:"w-3.5 h-3.5"})," Details"]}),(0,t.jsxs)("div",{className:"space-y-3 text-xs",children:[(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"ID"}),(0,t.jsx)("span",{className:"font-mono bg-[var(--app-shell-subtle)] px-1.5 py-0.5 rounded",children:M.id})]}),(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Provider"}),(0,t.jsx)("span",{className:"font-medium capitalize",children:M.provider})]}),(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Model"}),(0,t.jsx)("span",{className:"font-mono",children:M.model})]}),P?.identity?.voice?(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Voice"}),(0,t.jsx)("span",{className:"font-medium",children:String(P.identity.voice)})]}):null,(0,t.jsxs)("div",{className:"flex justify-between items-center",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Color"}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("div",{className:"w-3 h-3 rounded-full border border-[var(--border)]",style:{backgroundColor:M.color}}),(0,t.jsx)("span",{className:"font-mono",children:M.color})]})]}),P?.selfDerivedAt&&(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Last Evolved"}),(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:ei(P.selfDerivedAt)})]})]})]}),K.length>0&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(o.Users,{className:"w-3.5 h-3.5"})," Active Projects"]}),(0,t.jsx)("div",{className:"space-y-2",children:K.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between p-2 hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors group cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("div",{className:"w-8 h-8 rounded-lg bg-[var(--muted)] flex items-center justify-center text-xs font-bold text-[var(--muted-foreground)] group-hover:bg-[var(--card-bg)] group-hover:shadow-sm",children:e.name[0]}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:e.name})]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[e.agents.length," agent",1!==e.agents.length?"s":""]})]},e.id))})]})]})]}),(0,t.jsxs)("div",{className:"lg:col-span-8 space-y-6",children:[(0,t.jsx)("div",{className:"bg-[var(--card-bg)] p-1 rounded-2xl border border-[var(--border)] flex shadow-sm",children:[{key:"inspect",label:"Inspect",icon:b.ShieldCheck},{key:"feed",label:"Feed",icon:u.MessageSquare},{key:"reflections",label:"Reflections",icon:x.Sparkles}].map(e=>(0,t.jsxs)("button",{onClick:()=>z(e.key),className:`flex-1 flex items-center justify-center gap-2 py-3 rounded-xl text-sm font-bold transition-all ${U===e.key?"bg-[var(--foreground)] text-[var(--background)] shadow-lg shadow-black/5":"text-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`,children:[(0,t.jsx)(e.icon,{className:"w-4 h-4"}),e.label]},e.key))}),(0,t.jsxs)("div",{className:"min-h-[600px]",children:["inspect"===U&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"grid grid-cols-1 xl:grid-cols-2 gap-4",children:[(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(m.BookOpen,{className:"w-4 h-4"})," Identity"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-emerald-50 text-emerald-700",children:"Human-authored"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed",children:"Canonical self-definition. The system can read this, but should not edit it."}),(0,t.jsxs)("div",{className:"mt-4 grid grid-cols-1 md:grid-cols-2 gap-3 text-xs",children:[(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Voice"}),(0,t.jsx)("p",{className:"mt-1 text-[var(--foreground)]",children:String(P?.identity?.voice??"Not set")})]}),(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Seed"}),(0,t.jsx)("p",{className:"mt-1 text-[var(--foreground)]",children:String(P?.identity?.seed??"Not set")})]})]}),ee?.identity.sources?.length?(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)] mb-2",children:"Sources"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:ee.identity.sources.map(e=>(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:e},e))})]}):null]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-amber-100 ring-1 ring-amber-200 p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(x.Sparkles,{className:"w-4 h-4"})," Self-Model"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-amber-100 text-amber-700",children:"System-derived"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed",children:"Reflective specialization model: how this agent currently understands its fit, strengths, and direction."}),Z?(0,t.jsx)("div",{className:"mt-4 text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(C.Markdown,{content:Z})}):(0,t.jsx)("p",{className:"mt-4 text-sm text-[var(--muted-foreground)]",children:"No self-model yet."}),(0,t.jsxs)("div",{className:"mt-4 flex flex-wrap gap-2",children:[P?.selfVersion?(0,t.jsxs)("span",{className:"px-2 py-1 rounded-full bg-amber-50 text-[11px] font-medium text-amber-700",children:["v",P.selfVersion]}):null,P?.selfDerivedAt?(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:ei(P.selfDerivedAt)}):null,ee?.selfModel.sources?.map(e=>(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:e},e))]})]})]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(i.BrainCircuit,{className:"w-4 h-4"})," Agent Knowledge"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[et.length+er.length+ea.length," items"]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 xl:grid-cols-2 gap-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Portable Knowledge"}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Human-authored"})]}),0===et.length&&0===er.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No portable knowledge attached."}):(0,t.jsxs)("div",{className:"space-y-2",children:[et.map(e=>(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"font-mono text-xs text-[var(--foreground)] truncate",title:e.file,children:e.file}),(0,t.jsx)("span",{className:"text-[10px] font-medium text-[var(--muted-foreground)] shrink-0",children:e.form})]}),e.condition?(0,t.jsxs)("p",{className:"mt-2 text-xs text-[var(--muted-foreground)]",children:["Use when: ",e.condition]}):null]},`${e.file}:${e.condition}`)),er.map(e=>(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"font-mono text-xs text-[var(--foreground)] truncate",title:`${e.repo}/${e.skillId}`,children:e.skillId}),(0,t.jsx)("span",{className:"text-[10px] font-medium text-[var(--muted-foreground)] shrink-0",children:e.form})]}),(0,t.jsx)("p",{className:"mt-1 text-[10px] text-[var(--muted-foreground)] font-mono truncate",title:e.repo,children:e.repo}),e.condition?(0,t.jsxs)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:["Use when: ",e.condition]}):null]},`${e.repo}:${e.skillId}`))]})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Derived Knowledge Candidates"}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:"System-derived"})]}),0===ea.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No extracted learnings yet."}):(0,t.jsx)("div",{className:"space-y-2",children:ea.map(e=>(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:e.type}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:ei(e.createdAt)})]}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[var(--foreground)] leading-relaxed",children:e.content}),(0,t.jsxs)("div",{className:"mt-2 text-[10px] text-[var(--muted-foreground)] font-mono",children:["task ",e.taskId]})]},e.id))})]})]})]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(n.Activity,{className:"w-4 h-4"})," Evidence"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-[var(--muted)] text-[var(--muted-foreground)]",children:"Non-canonical"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed mb-4",children:"Raw and semi-structured traces that support reflection and learning. These should be inspectable, but not treated as canonical truth."}),(0,t.jsx)("div",{className:"grid grid-cols-2 xl:grid-cols-4 gap-3",children:[{label:"Journal",value:es?.journalEntries??Y.length},{label:"Activity",value:es?.activityEvents??P?.activity?.length??0},{label:"Reactions",value:es?.reactions??0},{label:"Comments",value:es?.comments??0}].map(e=>(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-4",children:[(0,t.jsx)("div",{className:"text-lg font-bold text-[var(--foreground)]",children:e.value}),(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:e.label})]},e.label))})]})]}),"feed"===U&&(0,t.jsxs)("div",{className:"space-y-4",children:[Z||Q||P?.identity?.seed?(0,t.jsx)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:Z?(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(g.Target,{className:"w-4 h-4"})," Self-Model"]}),P?.selfDerivedAt&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] flex items-center gap-1",children:[(0,t.jsx)(p.RefreshCw,{className:"w-3 h-3"}),"v",P.selfVersion," — ",ei(P.selfDerivedAt)]})]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(C.Markdown,{content:Z})})]}):Q?(0,t.jsxs)("div",{children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2 mb-4",children:[(0,t.jsx)(g.Target,{className:"w-4 h-4"})," Identity"]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(C.Markdown,{content:Q})})]}):P?.identity?.seed?(0,t.jsxs)("div",{children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2 mb-4",children:[(0,t.jsx)(g.Target,{className:"w-4 h-4"})," Identity Seed"]}),(0,t.jsxs)("p",{className:"text-sm text-[var(--muted-foreground)] italic border-l-4 pl-4",style:{borderColor:F},children:["“",String(P.identity.seed),"”"]})]}):null}):null,(0,t.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(u.MessageSquare,{className:"w-4 h-4"})," Messages"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[en.length," messages"]})]}),0===en.length?(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-12 text-center",children:[(0,t.jsx)(u.MessageSquare,{size:32,className:"mx-auto mb-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No messages yet"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-1",children:"Messages will appear here as this agent participates in threads"})]}):en.map(e=>{var r;let a=e.prevContent?(0,S.stripMarkers)(e.prevContent):null,n=(e=>{if(!e)return"You";let t=el.get(e);return t?.name??e})(e.prevParticipantId),l=(r=e.prevParticipantId)?el.get(r)?.color??"#94a3b8":"#6366f1",i=e.threadTitle?(0,S.stripMarkers)(e.threadTitle):null;return(0,t.jsx)("article",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 hover:shadow-xl hover:shadow-black/5 transition-all group",children:(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[(0,t.jsx)("img",{src:(0,k.agentAvatarUrl)(M.id,40,M.color),alt:"",className:"w-10 h-10 rounded-2xl shrink-0 mt-0.5 shadow-sm"}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"flex items-center justify-between mb-1",children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"font-bold text-[var(--foreground)]",children:M.name}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:["• ",ei(e.timestamp)]})]})}),e.rootMessageId&&i&&(0,t.jsxs)(s.default,{href:`/thread/${e.threadId}`,className:"inline-flex items-center gap-1.5 mb-3 px-2.5 py-1 rounded-lg bg-[var(--app-shell-subtle)] border border-[var(--border)] hover:border-[var(--border)] hover:bg-[var(--muted)] transition-colors text-[11px] font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] group/thread",children:[(0,t.jsx)(c.Hash,{className:"w-3 h-3 text-[var(--muted-foreground)] group-hover/thread:text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"truncate max-w-[300px]",children:i}),(0,t.jsx)(h.ChevronRight,{className:"w-3 h-3 text-[var(--muted-foreground)] group-hover/thread:text-[var(--muted-foreground)]"})]}),a&&(0,t.jsxs)("div",{className:"mb-3 flex items-start gap-2 pl-1",children:[(0,t.jsx)(j.CornerDownRight,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] shrink-0 mt-1"}),(0,t.jsxs)("div",{className:"flex-1 min-w-0 p-2.5 rounded-xl bg-[var(--app-shell-subtle)] border border-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 mb-1",children:[e.prevParticipantId&&(0,t.jsx)("img",{src:(0,k.agentAvatarUrl)(e.prevParticipantId,16,l),alt:"",className:"w-4 h-4 rounded"}),(0,t.jsx)("span",{className:"text-[10px] font-bold",style:{color:l},children:n})]}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed line-clamp-2",children:a})]})]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)]",children:(0,t.jsx)(C.Markdown,{content:e.content})}),(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-1.5 text-[10px] text-[var(--muted-foreground)] font-medium",children:[(0,t.jsx)(f.Clock,{className:"w-3 h-3"}),ed(e.timestamp)]})]})]})},e.id)})]}),"reflections"===U&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(m.BookOpen,{className:"w-4 h-4"})," Journal Reflections"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[G.length," reflections"]})]}),0===G.length?(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-12 text-center",children:[(0,t.jsx)(x.Sparkles,{size:32,className:"mx-auto mb-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No reflections yet"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-1",children:"Reflections will appear as this agent evolves its self-model"})]}):G.map((e,r)=>{let a=e.body?(0,S.stripMarkers)(e.body):"";return(0,t.jsx)("article",{className:"bg-[var(--card-bg)] rounded-3xl border border-amber-100 ring-1 ring-amber-200 p-6 hover:shadow-xl hover:shadow-black/5 transition-all group",children:(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[(0,t.jsxs)("div",{className:"relative shrink-0",children:[(0,t.jsx)("img",{alt:"",className:"w-10 h-10 rounded-2xl shadow-sm",src:(0,k.agentAvatarUrl)(M.id,40,M.color)}),(0,t.jsx)("div",{className:"absolute -top-1 -right-1 w-4 h-4 rounded-full flex items-center justify-center border-2 border-[var(--card-bg)]",style:{backgroundColor:F},children:(0,t.jsx)(x.Sparkles,{className:"w-2 h-2 text-white"})})]}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"font-bold text-[var(--foreground)]",children:M.name}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-amber-100 text-amber-700",children:"reflection"}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:["• ",ei(e.t)]})]}),e.selfVersion&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] font-mono",children:["v",e.selfVersion]})]}),e.observation&&(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mb-3",children:e.observation}),a&&(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(C.Markdown,{content:a})}),(e.judgement||e.delta||e.intent)&&(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3 mt-4 pt-4 border-t border-[var(--border)] group-hover:border-[var(--border)] transition-colors",children:[e.judgement&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Judgment"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.judgement})]}),e.delta&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Delta"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.delta})]}),e.intent&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Intent"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.intent})]})]}),(0,t.jsxs)("div",{className:"mt-4 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-[10px] text-[var(--muted-foreground)] font-medium",children:[(0,t.jsx)(f.Clock,{className:"w-3 h-3"}),ed(e.t)]}),e.thread&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] font-mono flex items-center gap-1",children:[(0,t.jsx)(c.Hash,{className:"w-3 h-3"}),e.thread.substring(0,12),"..."]})]})]})]})},e.id??r)})]})]})]})]}),H&&(0,t.jsx)(k.AgentForm,{title:"Edit agent",initial:{name:M.name,title:M.title||"",provider:M.provider,model:M.model||"",identity:M.identity||"",color:M.color,skills:M.skills||[]},agentId:M.id,submitLabel:"Save",onSubmit:async e=>{await fetch("/api/participants",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:M.id,name:e.name,title:e.title||null,provider:e.provider,model:e.model,color:e.color,...e.identity?{identity:e.identity}:{},skills:e.skills??[]})}),_({...M,name:e.name,title:e.title||void 0,provider:e.provider,model:e.model,identity:e.identity,color:e.color??M.color,skills:e.skills??[]}),B(!1)},onCancel:()=>B(!1)})]})}])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,558201,e=>{"use strict";let t=(0,e.i(363732).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",0,t],558201)},367859,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",0,t],367859)},618566,(e,t,i)=>{t.exports=e.r(976562)},529471,e=>{"use strict";let t=(0,e.i(363732).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["Check",0,t],529471)},363732,e=>{"use strict";var t=e.i(271645);let i=(...e)=>e.filter((e,t,i)=>!!e&&""!==e.trim()&&i.indexOf(e)===t).join(" ").trim(),n=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,i)=>i?i.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var r={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let a=(0,t.forwardRef)(({color:e="currentColor",size:n=24,strokeWidth:a=2,absoluteStrokeWidth:s,className:l="",children:o,iconNode:d,...c},g)=>(0,t.createElement)("svg",{ref:g,...r,width:n,height:n,stroke:e,strokeWidth:s?24*Number(a)/Number(n):a,className:i("lucide",l),...!o&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(c)&&{"aria-hidden":"true"},...c},[...d.map(([e,i])=>(0,t.createElement)(e,i)),...Array.isArray(o)?o:[o]]));e.s(["default",0,(e,r)=>{let s=(0,t.forwardRef)(({className:s,...l},o)=>(0,t.createElement)(a,{ref:o,iconNode:r,className:i(`lucide-${n(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,s),...l}));return s.displayName=n(e),s}],363732)},797167,e=>{"use strict";let t=(0,e.i(363732).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["X",0,t],797167)},498027,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",0,t],498027)},572665,e=>{"use strict";let t=(0,e.i(363732).default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);e.s(["Users",0,t],572665)},19035,e=>{"use strict";let t=(0,e.i(363732).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",0,t],19035)},55236,e=>{"use strict";let t=(0,e.i(363732).default)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);e.s(["Folder",0,t],55236)},906724,595807,e=>{"use strict";let t=(0,e.i(363732).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",0,t],595807),e.s(["Loader2",0,t],906724)},741746,e=>{"use strict";let t=(0,e.i(363732).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",0,t],741746)},780004,e=>{"use strict";let t="obra/superpowers",i="vercel/next-skills";function n(e,t,i){return i?{repo:e,skillId:t,condition:i}:{repo:e,skillId:t}}function r(e){return e.condition?{...e}:{repo:e.repo,skillId:e.skillId}}function a(e){let t={...e};return t.extraSkills&&(t.extraSkills=t.extraSkills.map(r)),t}function s(e){return{...e,agents:e.agents.map(a)}}function l(e){let t={...e,agents:e.agents.map(a)};return t.variants&&(t.variants=t.variants.map(s)),t}let o={"strategist-lead":[n(t,"brainstorming"),n(t,"writing-plans"),n(t,"dispatching-parallel-agents"),n(t,"requesting-code-review"),n(t,"verification-before-completion")],"senior-builder":[n(t,"test-driven-development"),n(t,"systematic-debugging"),n(t,"subagent-driven-development"),n(t,"requesting-code-review"),n(t,"verification-before-completion"),n(t,"finishing-a-development-branch")],builder:[n(t,"test-driven-development"),n(t,"systematic-debugging"),n(t,"verification-before-completion"),n(t,"finishing-a-development-branch")],planner:[n(t,"brainstorming"),n(t,"writing-plans"),n(t,"verification-before-completion")],researcher:[n(t,"brainstorming"),n(t,"writing-plans"),n(t,"systematic-debugging"),n(t,"verification-before-completion")],reviewer:[n(t,"systematic-debugging"),n(t,"test-driven-development"),n(t,"requesting-code-review"),n(t,"verification-before-completion")]},d=["strategist-lead","senior-builder","builder","planner","researcher","reviewer"].map(e=>({id:e,skills:o[e].map(r)})),c=[n(i,"api-routes","next.js app router, route handlers, api endpoints"),n(i,"nextjs-patterns","next.js app structure, routing, layouts, data fetching"),n(i,"react-server-components","react server components, server client boundaries, next.js rendering")],g={"team-lead":{name:"Team Lead",title:"Team Lead",style:"balanced",skillProfileId:"strategist-lead",identity:"Own technical direction, break ambiguous work into executable plans, and keep the squad aligned on delivery."},"fullstack-engineer":{name:"Fullstack Engineer",title:"Senior Fullstack Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Ship features end-to-end across frontend and backend with pragmatic tradeoffs and clean boundaries.",extraSkills:c},"backend-engineer":{name:"Backend Engineer",title:"Senior Backend Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Own backend contracts, data integrity, and safe delivery under real production constraints."},"frontend-engineer":{name:"Frontend Engineer",title:"Senior Frontend Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Own product-facing UI quality, interaction design fidelity, and maintainable front-end architecture.",extraSkills:c},"data-engineer":{name:"Data Engineer",title:"Data Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Build reliable data pipelines, schemas, and transformations with a bias toward traceability."},"ml-engineer":{name:"ML Engineer",title:"ML Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Ship model-backed systems pragmatically, with evaluation, rollback paths, and tight production feedback."},"devops-engineer":{name:"DevOps Engineer",title:"DevOps Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Own delivery automation, deployment safety, and infrastructure changes that must fail predictably."},"security-engineer":{name:"Security Engineer",title:"Security Engineer",style:"conservative",skillProfileId:"senior-builder",identity:"Harden trust boundaries, implement secure defaults, and turn vague risk into concrete engineering requirements."},"ui-designer":{name:"UI Designer",title:"UI Designer",style:"specialist",skillProfileId:"builder",identity:"Refine interfaces into consistent, high-signal UI systems that are practical to build and maintain.",extraSkills:[n(i,"nextjs-patterns","next.js ui flows, routing, layouts, app router"),n(i,"react-server-components","react server components, server client boundaries, data fetching placement")]},"qa-engineer":{name:"QA Engineer",title:"QA Engineer",style:"conservative",skillProfileId:"reviewer",identity:"Find regressions early, tighten acceptance boundaries, and force evidence before release claims."},sre:{name:"SRE",title:"Site Reliability Engineer",style:"conservative",skillProfileId:"reviewer",identity:"Guard uptime, incident readiness, and operational correctness by challenging risky assumptions early."},"pen-tester":{name:"Pen Tester",title:"Penetration Tester",style:"specialist",skillProfileId:"reviewer",identity:"Probe the system as an adversary, find exploit paths, and make the attack surface legible to builders."},"product-manager":{name:"Product Manager",title:"Product Manager",style:"balanced",skillProfileId:"planner",identity:"Turn ambiguous requests into scoped bets, crisp plans, and explicit tradeoffs the team can execute."},"ux-designer":{name:"UX Designer",title:"UX Designer",style:"balanced",skillProfileId:"planner",identity:"Clarify user intent, reduce friction in flows, and turn product goals into coherent interaction design."},"technical-writer":{name:"Technical Writer",title:"Technical Writer",style:"balanced",skillProfileId:"planner",identity:"Turn complex implementation detail into clear docs, rollout notes, and operational guidance."},"growth-marketer":{name:"Growth Marketer",title:"Growth Marketer",style:"balanced",skillProfileId:"strategist-lead",identity:"Design growth experiments with clear hypotheses, sequencing, and measurable outcomes."},analyst:{name:"Analyst",title:"Product Analyst",style:"specialist",skillProfileId:"researcher",identity:"Ground decisions in evidence, identify gaps in the brief, and surface the signal behind user behavior."},"content-writer":{name:"Content Writer",title:"Content Strategist",style:"balanced",skillProfileId:"researcher",identity:"Translate product and audience insight into clear narratives, launch copy, and feedback loops."},researcher:{name:"Researcher",title:"Researcher",style:"balanced",skillProfileId:"researcher",identity:"Map fast-changing domains, synthesize evidence, and surface the governing model behind decisions."},"marketing-strategist":{name:"Marketing Strategist",title:"Marketing Strategist",style:"balanced",skillProfileId:"strategist-lead",identity:"Own brand positioning, campaign strategy, and channel mix with measurable conversion targets."},copywriter:{name:"Copywriter",title:"Copywriter",style:"balanced",skillProfileId:"researcher",identity:"Craft clear, persuasive copy that serves both the reader and the business goal."},"support-engineer":{name:"Support Engineer",title:"Support Engineer",style:"balanced",skillProfileId:"builder",identity:"Diagnose customer issues fast, escalate with precision, and turn patterns into preventive fixes."},"support-lead":{name:"Support Lead",title:"Support Lead",style:"balanced",skillProfileId:"planner",identity:"Triage incoming issues, route to the right responder, and track resolution quality."},"devrel-engineer":{name:"DevRel Engineer",title:"Developer Relations Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Build sample apps, integrations, and tooling that make the platform easy to adopt."},"community-manager":{name:"Community Manager",title:"Community Manager",style:"balanced",skillProfileId:"planner",identity:"Grow and engage the developer community through events, content, and feedback loops."},"ops-engineer":{name:"Ops Engineer",title:"Operations Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Automate operational workflows, reduce toil, and keep internal tooling reliable."},"project-manager":{name:"Project Manager",title:"Project Manager",style:"balanced",skillProfileId:"planner",identity:"Track milestones, remove blockers, and keep cross-team delivery on schedule."},"solutions-architect":{name:"Solutions Architect",title:"Solutions Architect",style:"balanced",skillProfileId:"strategist-lead",identity:"Design system-level architectures, evaluate tradeoffs, and guide teams through technical decisions."},"mobile-engineer":{name:"Mobile Engineer",title:"Senior Mobile Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Ship native and cross-platform mobile experiences with attention to performance and platform conventions."}},u=["team-lead","fullstack-engineer","backend-engineer","frontend-engineer","qa-engineer","product-manager","analyst","growth-marketer","content-writer","data-engineer","ml-engineer","ux-designer","ui-designer","devops-engineer","sre","security-engineer","pen-tester","researcher","technical-writer","marketing-strategist","copywriter","support-engineer","support-lead","devrel-engineer","community-manager","ops-engineer","project-manager","solutions-architect","mobile-engineer"].map(e=>a({id:e,...g[e]}));function p(e){return a({id:e,...g[e]})}let m=[{id:"engineering",name:"Engineering",description:"Software engineering teams across all domains — pick a specialization or build your own.",icon:"hammer",agents:[p("team-lead"),p("backend-engineer"),p("frontend-engineer"),p("fullstack-engineer"),p("qa-engineer")],variants:[{id:"general",name:"General",description:"Product engineering with leadership, builders across the stack, and quality gates.",agents:[p("team-lead"),p("backend-engineer"),p("frontend-engineer"),p("fullstack-engineer"),p("qa-engineer")]},{id:"ai",name:"AI",description:"Applied AI and ML engineering for models, evaluation, and production inference.",agents:[p("team-lead"),p("ml-engineer"),p("data-engineer"),p("researcher"),p("qa-engineer")]},{id:"data",name:"Data",description:"Data platform engineering for pipelines, warehousing, and transformation reliability.",agents:[p("team-lead"),p("data-engineer"),p("qa-engineer")]},{id:"mobile",name:"Mobile",description:"Native and cross-platform mobile engineering with fullstack support.",agents:[p("team-lead"),p("mobile-engineer"),p("fullstack-engineer"),p("qa-engineer")]},{id:"infra",name:"Infrastructure",description:"Platform reliability for delivery pipelines, runtime stability, and operational safety.",agents:[p("team-lead"),p("devops-engineer"),p("sre")]},{id:"security",name:"Security",description:"Security engineering for secure defaults, hardening, and adversarial validation.",agents:[p("team-lead"),p("security-engineer"),p("pen-tester")]},{id:"solutions",name:"Solutions",description:"Architecture and integration work across systems and customer deployments.",agents:[p("team-lead"),p("solutions-architect"),p("backend-engineer"),p("devops-engineer")]}]},{id:"product",name:"Product",description:"Discovery and prioritization for product direction, scope, and validation.",icon:"clipboard-list",agents:[p("team-lead"),p("product-manager"),p("analyst")]},{id:"design",name:"Design",description:"UX and UI pairing for flows, interaction models, and polished product surfaces.",icon:"palette",agents:[p("team-lead"),p("ux-designer"),p("ui-designer")]},{id:"growth",name:"Growth",description:"Experiment and content team for acquisition, activation, and learning loops.",icon:"megaphone",agents:[p("team-lead"),p("growth-marketer"),p("content-writer")]},{id:"research",name:"Research",description:"Research and synthesis pair for investigations, briefs, and decision support.",icon:"flask-conical",agents:[p("team-lead"),p("researcher"),p("technical-writer")]},{id:"marketing",name:"Marketing",description:"Brand strategy, campaign execution, and content production.",icon:"megaphone",agents:[p("team-lead"),p("marketing-strategist"),p("copywriter"),p("content-writer")]},{id:"support",name:"Support",description:"Customer-facing support with triage, diagnosis, and escalation.",icon:"life-buoy",agents:[p("team-lead"),p("support-lead"),p("support-engineer")]},{id:"devrel",name:"Developer Relations",description:"Developer advocacy through tooling, content, and community engagement.",icon:"users",agents:[p("team-lead"),p("devrel-engineer"),p("community-manager"),p("technical-writer")]},{id:"operations",name:"Operations",description:"Internal tooling, project delivery, and cross-team coordination.",icon:"settings",agents:[p("team-lead"),p("project-manager"),p("ops-engineer")]}].map(l),y=new Map(d.map(e=>[e.id,e])),f=new Map(u.map(e=>[e.id,e]));m.map(e=>[e.id,e]),e.s(["getAgentPresetBindings",0,function(e){let t,i="string"==typeof e?function(e){if(!e)return null;let t=f.get(e);return t?a(t):null}(e):e;return i?[...(t=function(e){if(!e)return null;let t=y.get(e);return t?{id:t.id,skills:t.skills.map(r)}:null}(i.skillProfileId))?t.skills:[],...i.extraSkills?i.extraSkills.map(r):[]]:[]},"listAgentPresets",0,function(){return u.map(a)},"listTeamTemplates",0,function(){return m.map(l)}])},211464,e=>{"use strict";let t=(0,e.i(363732).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Circle",0,t],211464)},129463,e=>{"use strict";let t=(0,e.i(363732).default)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]]);e.s(["GitBranch",0,t],129463)},245110,e=>{"use strict";let t=(0,e.i(363732).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],245110)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,749410,481248,e=>{"use strict";var r=e.i(843476),t=e.i(271645),a=e.i(174080),s=e.i(498027),i=e.i(997626),o=e.i(55236),l=e.i(196630),n=e.i(363732);let d=(0,n.default)("panel-left-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]]);var c=e.i(929870),u=e.i(8707),p=e.i(797167),m=e.i(257587),x=e.i(938201),h=e.i(572665);let b=(0,n.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);var f=e.i(597628),g=e.i(99296);let v=(0,n.default)("key-round",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]);var j=e.i(522016),w=e.i(44054),k=e.i(884564),N=e.i(535208),y=e.i(902572),_=e.i(644660);function S({compact:e=!1}){return(0,r.jsxs)("span",{className:`workspace-sidebar__brand-logo${e?" workspace-sidebar__brand-logo--compact":""}`,"aria-hidden":"true",children:[(0,r.jsxs)("span",{className:"workspace-sidebar__brand-grid",children:[(0,r.jsx)("span",{className:"workspace-sidebar__brand-dot workspace-sidebar__brand-dot--blue"}),(0,r.jsx)("span",{className:"workspace-sidebar__brand-dot workspace-sidebar__brand-dot--yellow"}),(0,r.jsx)("span",{className:"workspace-sidebar__brand-dot workspace-sidebar__brand-dot--mint"}),(0,r.jsx)("span",{className:"workspace-sidebar__brand-dot workspace-sidebar__brand-dot--red"})]}),(0,r.jsx)("span",{className:"workspace-sidebar__brand-text",children:"AGX"})]})}function C({projects:e,activeProjectId:a,onSelectProject:i,onCreateProject:l}){let[n,d]=(0,t.useState)(!1),[m,x]=(0,t.useState)(""),h=(0,t.useRef)(null),b=(0,t.useRef)(null),f=e.find(e=>e.id===a)??e[0],g=m.trim()?e.filter(e=>e.name.toLowerCase().includes(m.toLowerCase())):e;return(0,t.useEffect)(()=>{if(!n)return;let e=e=>{h.current&&!h.current.contains(e.target)&&(d(!1),x(""))};return document.addEventListener("pointerdown",e),()=>document.removeEventListener("pointerdown",e)},[n]),(0,t.useEffect)(()=>{n&&b.current&&b.current.focus()},[n]),(0,r.jsxs)("div",{className:"px-3 pt-3 pb-2",ref:h,children:[(0,r.jsxs)("button",{type:"button",onClick:()=>d(!n),className:"flex w-full items-center gap-2 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] px-2.5 py-2 text-sm text-[var(--foreground)] transition-all hover:border-[var(--app-shell-border-strong)]",children:[(0,r.jsx)(o.Folder,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"flex-1 truncate text-left font-medium",children:f?.name??"Select project"}),(0,r.jsx)(s.ChevronDown,{size:14,className:`flex-shrink-0 text-[var(--muted-foreground)] transition-transform ${n?"rotate-180":""}`})]}),n&&(0,r.jsxs)("div",{className:"mt-1 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,r.jsx)("div",{className:"p-2 border-b border-[var(--app-shell-border)]",children:(0,r.jsxs)("div",{className:"flex items-center gap-2 rounded-md border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] px-2 py-1.5",children:[(0,r.jsx)(u.Search,{size:12,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("input",{ref:b,type:"text",value:m,onChange:e=>x(e.target.value),placeholder:"Search projects...",className:"flex-1 bg-transparent text-xs text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] outline-none"}),m&&(0,r.jsx)("button",{type:"button",onClick:()=>x(""),className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,r.jsx)(p.X,{size:10})})]})}),(0,r.jsxs)("div",{className:"max-h-52 overflow-y-auto py-1",children:[g.map(e=>(0,r.jsxs)("button",{type:"button",onClick:()=>{i?.(e.id),d(!1),x("")},className:`flex w-full items-center gap-2 px-3 py-1.5 text-sm transition-colors hover:bg-[var(--app-shell-subtle)] ${e.id===f?.id?"text-[var(--foreground)] font-medium":"text-[var(--muted-foreground)]"}`,children:[(0,r.jsx)(o.Folder,{size:12,className:"flex-shrink-0"}),(0,r.jsx)("span",{className:"truncate",children:e.name})]},e.id)),0===g.length&&(0,r.jsx)("p",{className:"px-3 py-2 text-xs text-[var(--muted-foreground)]",children:"No projects found"})]}),(0,r.jsx)("div",{className:"border-t border-[var(--app-shell-border)] p-1",children:(0,r.jsxs)("button",{type:"button",onClick:()=>{d(!1),x(""),l()},className:"flex w-full items-center gap-2 rounded-md px-2.5 py-1.5 text-xs text-[var(--muted-foreground)] transition-colors hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]",children:[(0,r.jsx)(c.Plus,{size:12}),(0,r.jsx)("span",{children:"New project"})]})})]})]})}e.s(["WorkspaceSidebar",0,function({threads:e,participants:s=[],activeThreadId:o,isLoading:n,isCreating:u,onSelectThread:I,onCreateThread:z,onRenameThread:$,onDeleteThread:P,deletingThreadId:A=null,renamingThreadId:F=null,activeParticipantIds:E=[],onToggleParticipantActive:L,visible:T=!1,isRestoringActiveThread:M=!1,onToggle:B,onSearch:R,projects:D=[],onCreateProject:W,onUpdateProject:K,onDeleteProject:V,onAddAgentToProject:O,onRemoveAgentFromProject:U,onAddAgentViaForm:q,onReorderProjectAgents:X,onUpdateParticipant:J,onSelectProject:H,activeProjectId:G=null,activeProjectView:Y=null,width:Z,onWidthChange:Q,onAddTeam:ee}){let er,et,{isTouchLayout:ea,isPhone:es}=(0,w.useInputCapabilities)(),ei=(0,t.useRef)(!1);(0,t.useRef)(0);let eo=(0,t.useRef)(null),[el,en]=(0,t.useState)(!1),[ed,ec]=(0,t.useState)(new Set);(0,t.useEffect)(()=>{if(ed.size>0||!D?.length)return;let e=D.find(e=>window.location.pathname.includes(`/projects/${e.slug}`));ec(new Set([e?.id??D[0].id]))},[D]);let[eu,ep]=(0,t.useState)(null),[em,ex]=(0,t.useState)(new Set),[eh,eb]=(0,t.useState)(!1),[ef,eg]=(0,t.useState)(null),[ev,ej]=(0,t.useState)(null),ew=(0,N.useProjectFormState)(),[ek,eN]=(0,t.useState)(null),ey=(0,t.useCallback)(e=>{e&&(e.focus(),e.select())},[]),[e_,eS]=(0,t.useState)(null),[eC,eI]=(0,t.useState)(null),ez=eC?s.find(e=>e.id===eC)??null:null,[e$,eP]=(0,t.useState)(null),[eA,eF]=(0,t.useState)({});(0,t.useEffect)(()=>{if(!D?.length)return;let e=!1,r=async()=>{try{let r=await fetch("/api/processes?enrich=1");if(!r.ok||e)return;let t=await r.json();if(e)return;let a=t.filter(e=>"spawning"===e.state||"running"===e.state),i={};for(let e of D){let r=e.slug.trim().toLowerCase(),t=new Set((e.thread_ids??[]).map(e=>e.trim()).filter(Boolean)),o=[],l=[],n=[],d=new Set,c=new Set,u=new Set;for(let e of a){let a=e.projectSlug?.trim().toLowerCase();if(!(a&&a===r||t.has(e.workspaceId)||t.has(e.threadId)))continue;let i=s.find(r=>r.id===e.agentId),p={agentId:e.agentId,color:i?.color??"#10b981"};e.linearIssueId?c.has(e.agentId)||(c.add(e.agentId),l.push(p)):e.threadId?.startsWith("objective-chat:")||e.workspaceId?.startsWith("objective-chat:")?d.has(e.agentId)||(d.add(e.agentId),o.push(p)):u.has(e.agentId)||(u.add(e.agentId),n.push(p))}(o.length||l.length||n.length)&&(i[e.id]={objectives:o,linear:l,chat:n})}eF(i)}catch{}};r();let t=setInterval(r,3e3);return()=>{e=!0,clearInterval(t)}},[D,s]);let[eE,eL]=(0,t.useState)({}),[eT,eM]=(0,t.useState)(new Set),[eB,eR]=(0,t.useState)(new Set),eD=(0,t.useRef)(new Set);(0,t.useEffect)(()=>{Array.from(ed).forEach(e=>{eB.has(e)||(eR(r=>new Set(r).add(e)),(async()=>{try{let r=await fetch(`/api/projects/${e}/teams`);if(!r.ok)return;let t=await r.json();eL(r=>({...r,[e]:t.teams??[]}))}catch{}})())})},[ed,eB]);let[eW,eK]=(0,t.useState)(null),eV=async()=>{if(!ef&&!ev)return;if(!ew.form.name.trim())return void ew.setFormError("Project name is required");let e=ew.repos.find(e=>e.name.trim()&&!e.path.trim());if(e)return void ew.setFormError(`Local path is required for folder "${e.name}"`);ew.setFormError(null),ew.setIsSubmitting(!0);let r=(0,N.createProjectPayload)(ew.form,ew.repos);ev?await K?.(ev.id,r):await W?.(r,ef?.threadId),ew.setIsSubmitting(!1),eg(null),ej(null)};(0,t.useEffect)(()=>{en(!0)},[]),(0,t.useEffect)(()=>{let e=!1;async function r(){if(e$?.repoId)try{let r=await fetch(`/api/knowledge-notes?scope=repo&subjectId=${encodeURIComponent(e$.repoId)}`),t=(r.ok?await r.json():{note:null}).note;e||eP(e=>e&&e.repoId===e$.repoId?{...e,generatedKnowledge:t?.content?[{id:t.id,content:t.content,created_at:t.updatedAt??t.createdAt}]:[],isLoadingKnowledge:!1}:e)}catch{e||eP(e=>e&&e.repoId===e$.repoId?{...e,generatedKnowledge:[],isLoadingKnowledge:!1}:e)}}return e$?.repoId&&r(),()=>{e=!0}},[e$?.repoId]);let eO=eu?D.find(e=>e.id===eu.projectId):null,eU=new Set(eO?.agents.map(e=>e.agent_id)??[]),eq=eu?s.filter(e=>!eU.has(e.id)):[],eX=e.length>0,eJ=!!T,eH=(0,t.useCallback)(()=>{ea&&B?.()},[ea,B]),eG=[...e].sort((e,r)=>(e.title??"").localeCompare(r.title??"")),eY=new Map(e.map(e=>[e.id,e])),eZ=D.filter(e=>!e.is_default);return((0,t.useEffect)(()=>{if(0===eZ.length)return;let r=new Map,t=new Set,a=new Map;for(let e of eZ){for(let r of e.thread_ids??[])"string"==typeof r&&r.trim()&&t.add(r);for(let t of(0,y.readProjectObjectivesWorkspace)(e.metadata).objectives){let a=t.id.trim();a&&r.set(a,{projectId:e.id,canonicalThreadId:t.threadId?.trim()||`objective-chat:${a}`})}}for(let r of e){let e=r.metadata&&"object"==typeof r.metadata?r.metadata:null,t="objective"===("string"==typeof e?.scope?e.scope:"")||r.id.startsWith("objective-chat:"),s=r.title?.trim().toLowerCase()??"";if(!t||!s)continue;let i=a.get(s)??[];i.push(r),a.set(s,i)}for(let[e,r]of a)a.set(e,[...r].sort((e,r)=>r.updatedAt-e.updatedAt));for(let s of e){let e=s.metadata&&"object"==typeof s.metadata?s.metadata:null,i="string"==typeof e?.scope?e.scope:"",o="string"==typeof e?.objectiveId?e.objectiveId.trim():"",l=s.id.startsWith("objective-chat:")?s.id.slice(15).trim():"",n=o||l,d="objective"===i||!!l,c=s.title?.trim().toLowerCase()??"",u=0===s.messages.length&&s.updatedAt<Date.now()-3e5;if(!d)continue;let p=n?r.get(n):void 0;if(p){if(s.id!==p.canonicalThreadId&&u){let e=`delete:${s.id}`;if(eD.current.has(e))continue;eD.current.add(e),Promise.resolve(P(s.id)).catch(r=>{eD.current.delete(e),console.warn("Failed to delete legacy objective thread",r)});continue}if(!t.has(s.id)){let e=`link:${s.id}`;if(eD.current.has(e))continue;eD.current.add(e),fetch(`/api/projects/${p.projectId}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:s.id})}).then(e=>{if(!e.ok)throw Error(`Request failed with status ${e.status}`)}).catch(r=>{eD.current.delete(e),console.warn("Failed to re-link objective thread",r)})}continue}if(!u)continue;let m=c?a.get(c)??[]:[];if(m.length<2||m[0]?.id===s.id)continue;let x=`delete:${s.id}`;eD.current.has(x)||(eD.current.add(x),Promise.resolve(P(s.id)).catch(e=>{eD.current.delete(x),console.warn("Failed to delete orphan objective thread",e)}))}},[eZ,P,e]),!function({focusTarget:e,shouldFocus:r}){(0,t.useEffect)(()=>{if(!r||"u"<typeof document)return;let t=e.current;if(!t||t instanceof HTMLButtonElement&&t.disabled)return;let a=document.activeElement;if(!(a&&(t===a||t.contains(a))))try{t.focus({preventScroll:!0})}catch{t.focus()}},[e,r])}({focusTarget:eo,shouldFocus:eJ&&!(n&&!eX||M&&eX)&&!eX&&!u}),eJ)?(0,r.jsxs)(r.Fragment,{children:[ea?(0,r.jsx)("button",{type:"button",className:"workspace-sidebar__backdrop",onClick:B,"aria-label":"Close sidebar"}):null,(0,r.jsxs)("aside",{id:"workspace-sidebar",className:`workspace-sidebar${ea?" workspace-sidebar--drawer":""}${ea&&es?" workspace-sidebar--drawer-phone":""}`,"aria-label":"Workspace sidebar","aria-busy":n?"true":void 0,"aria-modal":ea?"true":void 0,role:ea?"dialog":void 0,style:!ea&&Z?{width:`${Z}px`,minWidth:`${Z}px`}:void 0,children:[(0,r.jsxs)("div",{className:"workspace-sidebar__brand",children:[(0,r.jsx)("div",{className:"workspace-sidebar__brand-content",children:(0,r.jsx)(S,{})}),B&&(0,r.jsx)("button",{type:"button",onClick:B,"aria-label":"Hide chats",title:"Hide chats",className:"workspace-sidebar__brand-toggle ml-auto inline-flex h-7 w-7 items-center justify-center rounded-md text-[var(--app-shell-soft-text)] transition-all hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]",children:(0,r.jsx)(d,{className:"h-4 w-4",strokeWidth:1.75})})]}),(0,r.jsxs)("div",{className:"workspace-sidebar__content",children:[(0,r.jsx)(C,{projects:eZ,activeProjectId:G,onSelectProject:e=>{H?.(e),eH()},onCreateProject:()=>{ew.resetForm(),ej(null),eg({})}}),(()=>{let e=eZ.find(e=>e.id===G)??eZ[0];if(!e)return null;let t=eG.filter(r=>e.thread_ids?.includes(r.id)),a=e.thread_ids?.find(e=>eY.has(e))??e.thread_ids?.[0]??t[0]?.id??null,n=e.id===G,d=n&&"home"===Y,c=n&&"objectives"===Y,u=n&&"linear"===Y,p=n&&"automations"===Y,w=n&&"terminal"===Y,N=n&&"thread"===Y&&a===o,y=n&&"teams"===Y,S=n&&"folders"===Y,C=n&&"env-vars"===Y,z=eA[e.id];return(0,r.jsxs)("nav",{className:"workspace-sidebar__section",children:[(0,r.jsx)("div",{className:"px-2 mb-3",children:(0,r.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,r.jsxs)(j.default,{href:`/projects/${e.slug}`,onClick:eH,className:`workspace-sidebar__nav-item ${d?"workspace-sidebar__nav-item--active":""}`,"aria-current":d?"page":void 0,children:[(0,r.jsx)(b,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Home"})]})})}),(0,r.jsxs)("div",{className:"mb-3",children:[(0,r.jsx)("div",{className:"workspace-sidebar__section-header",children:(0,r.jsx)("p",{className:"workspace-sidebar__section-label",children:"Work"})}),(0,r.jsxs)("div",{className:"px-2 flex flex-col gap-0.5",children:[(0,r.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,r.jsxs)(j.default,{href:`/projects/${e.slug}/objectives`,onClick:eH,className:`workspace-sidebar__nav-item ${c?"workspace-sidebar__nav-item--active":""}`,"aria-current":c?"page":void 0,children:[(0,r.jsx)(x.Target,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Objectives"}),z?.objectives.length>0&&(0,r.jsx)("span",{className:"inline-flex items-center -space-x-1 ml-auto shrink-0",children:z.objectives.slice(0,3).map(e=>{let t=s.find(r=>r.id===e.agentId);return(0,r.jsxs)("span",{className:"relative inline-block",title:t?.name,children:[(0,r.jsx)("img",{src:(0,k.agentAvatarUrl)(t?.id??e.agentId,16,e.color),alt:t?.name??"",className:"h-3.5 w-3.5 rounded-full ring-[1.5px] ring-[var(--app-shell-pane)]"}),(0,r.jsx)("span",{className:"absolute -bottom-px -right-px h-1.5 w-1.5 rounded-full bg-green-500 ring-[1px] ring-[var(--app-shell-pane)]"})]},e.agentId)})})]})}),(0,r.jsxs)("div",{className:"workspace-sidebar__workspace-item group/linear flex items-center",children:[(0,r.jsxs)(j.default,{href:`/projects/${e.slug}/linear`,onClick:eH,className:`workspace-sidebar__nav-item flex-1 ${u?"workspace-sidebar__nav-item--active":""}`,"aria-current":u?"page":void 0,children:[(0,r.jsx)(_.LinearIcon,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Linear"}),z?.linear.length>0&&(0,r.jsx)("span",{className:"inline-flex items-center -space-x-1 ml-auto shrink-0",children:z.linear.slice(0,3).map(e=>{let t=s.find(r=>r.id===e.agentId);return(0,r.jsxs)("span",{className:"relative inline-block",title:t?.name,children:[(0,r.jsx)("img",{src:(0,k.agentAvatarUrl)(t?.id??e.agentId,16,e.color),alt:t?.name??"",className:"h-3.5 w-3.5 rounded-full ring-[1.5px] ring-[var(--app-shell-pane)]"}),(0,r.jsx)("span",{className:"absolute -bottom-px -right-px h-1.5 w-1.5 rounded-full bg-green-500 ring-[1px] ring-[var(--app-shell-pane)]"})]},e.agentId)})})]}),(0,r.jsx)(j.default,{href:`/projects/${e.slug}/linear?settings=true`,onClick:eH,className:"flex h-5 w-5 items-center justify-center rounded opacity-0 group-hover/linear:opacity-100 hover:bg-[var(--sidebar-hover)] transition-opacity",title:"Linear settings",children:(0,r.jsx)(m.Settings,{size:11,className:"text-[var(--muted-foreground)]"})})]}),(0,r.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,r.jsxs)(j.default,{href:`/projects/${e.slug}/automations`,onClick:eH,className:`workspace-sidebar__nav-item ${p?"workspace-sidebar__nav-item--active":""}`,"aria-current":p?"page":void 0,children:[(0,r.jsx)(i.Zap,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Scheduled Tasks"})]})})]})]}),(0,r.jsxs)("div",{className:"mb-3",children:[(0,r.jsx)("div",{className:"workspace-sidebar__section-header",children:(0,r.jsx)("p",{className:"workspace-sidebar__section-label",children:"Tools"})}),(0,r.jsxs)("div",{className:"px-2 flex flex-col gap-0.5",children:[(0,r.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,r.jsxs)(j.default,{href:`/projects/${e.slug}/terminal`,onClick:eH,className:`workspace-sidebar__nav-item ${w?"workspace-sidebar__nav-item--active":""}`,"aria-current":w?"page":void 0,children:[(0,r.jsx)(g.TerminalSquare,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Terminal"})]})}),(0,r.jsx)("div",{className:"workspace-sidebar__workspace-item",children:a?(0,r.jsxs)("button",{type:"button",className:`workspace-sidebar__nav-item ${N?"workspace-sidebar__nav-item--active":""}`,onClick:()=>{I(a),eH()},"aria-current":N?"page":void 0,children:[(0,r.jsx)(f.MessageSquare,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Chat"}),z?.chat.length>0&&(0,r.jsx)("span",{className:"inline-flex items-center -space-x-1 ml-auto shrink-0",children:z.chat.slice(0,3).map(e=>{let t=s.find(r=>r.id===e.agentId);return(0,r.jsxs)("span",{className:"relative inline-block",title:t?.name,children:[(0,r.jsx)("img",{src:(0,k.agentAvatarUrl)(t?.id??e.agentId,16,e.color),alt:t?.name??"",className:"h-3.5 w-3.5 rounded-full ring-[1.5px] ring-[var(--app-shell-pane)]"}),(0,r.jsx)("span",{className:"absolute -bottom-px -right-px h-1.5 w-1.5 rounded-full bg-green-500 ring-[1px] ring-[var(--app-shell-pane)]"})]},e.agentId)})})]}):null})]})]}),(0,r.jsxs)("div",{className:"mb-3",children:[(0,r.jsx)("div",{className:"workspace-sidebar__section-header",children:(0,r.jsx)("p",{className:"workspace-sidebar__section-label",children:"Settings"})}),(0,r.jsxs)("div",{className:"px-2 flex flex-col gap-0.5",children:[(0,r.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,r.jsxs)(j.default,{href:`/projects/${e.slug}/teams`,onClick:eH,className:`workspace-sidebar__nav-item ${y?"workspace-sidebar__nav-item--active":""}`,"aria-current":y?"page":void 0,children:[(0,r.jsx)(h.Users,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Teams"})]})}),(0,r.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,r.jsxs)(j.default,{href:`/projects/${e.slug}/folders`,onClick:eH,className:`workspace-sidebar__nav-item ${S?"workspace-sidebar__nav-item--active":""}`,"aria-current":S?"page":void 0,children:[(0,r.jsx)(l.FolderGit2,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Folders"})]})}),(0,r.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,r.jsxs)(j.default,{href:`/projects/${e.slug}/env-vars`,onClick:eH,className:`workspace-sidebar__nav-item ${C?"workspace-sidebar__nav-item--active":""}`,"aria-current":C?"page":void 0,children:[(0,r.jsx)(v,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Environment Variables"})]})})]})]})]})})()]}),(0,r.jsx)("div",{className:"mt-auto px-3 pb-3",children:(0,r.jsxs)("a",{href:"https://discord.gg/G9afUYKKY3",target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center gap-2 w-full py-2 rounded-lg text-white text-sm font-medium transition-colors",style:{backgroundColor:"#5865F2"},onMouseEnter:e=>e.currentTarget.style.backgroundColor="#4752C4",onMouseLeave:e=>e.currentTarget.style.backgroundColor="#5865F2",children:[(0,r.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 71 55",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",children:(0,r.jsx)("path",{d:"M60.1 4.9A58.5 58.5 0 0045.4.2a.2.2 0 00-.2.1 40.8 40.8 0 00-1.8 3.7 54 54 0 00-16.2 0A37.4 37.4 0 0025.4.3a.2.2 0 00-.2-.1A58.4 58.4 0 0010.5 4.9a.2.2 0 00-.1.1C1.5 18.7-.9 32.2.3 45.5v.1a58.8 58.8 0 0017.7 9a.2.2 0 00.3-.1 42 42 0 003.6-5.9.2.2 0 00-.1-.3 38.8 38.8 0 01-5.5-2.6.2.2 0 01 0-.4l1.1-.9a.2.2 0 01.2 0 42 42 0 0035.6 0 .2.2 0 01.2 0l1.1.9a.2.2 0 010 .4 36.4 36.4 0 01-5.5 2.6.2.2 0 00-.1.3 47.2 47.2 0 003.6 5.9.2.2 0 00.3.1 58.6 58.6 0 0017.7-9v-.1c1.4-15.2-2.4-28.4-10-40.1a.2.2 0 00-.1-.1zM23.7 37.3c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7zm23.3 0c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7z"})}),"Join Discord"]})}),el&&e$&&(0,a.createPortal)((0,r.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30 p-4",onClick:()=>{e$.isSaving||eP(null)},children:(0,r.jsxs)("div",{className:"w-full max-w-lg rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] shadow-2xl",onClick:e=>e.stopPropagation(),children:[(0,r.jsxs)("div",{className:"flex items-start justify-between gap-4 border-b border-[var(--border)] px-5 py-4",children:[(0,r.jsxs)("div",{className:"min-w-0",children:[(0,r.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:e$.projectName}),(0,r.jsx)("h3",{className:"truncate text-base font-semibold text-[var(--foreground)]",children:e$.repoId?e$.name||"Folder":"Add Folder"})]}),(0,r.jsx)("button",{type:"button",className:"rounded-md p-1 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)] hover:text-[var(--muted-foreground)]",onClick:()=>{e$.isSaving||eP(null)},"aria-label":"Close folder details",disabled:e$.isSaving,children:(0,r.jsx)(p.X,{size:16})})]}),(0,r.jsxs)("div",{className:"space-y-4 px-5 py-4",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Name"}),(0,r.jsx)("input",{value:e$.name,onChange:e=>eP(r=>r?{...r,name:e.target.value,error:null}:r),className:"w-full rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-2 text-sm text-[var(--foreground)]",disabled:e$.isSaving,placeholder:"e.g. Frontend, API Docs, Design System"})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Path"}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("input",{value:e$.path,onChange:e=>eP(r=>r?{...r,path:e.target.value,error:null}:r),className:"flex-1 rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-2 font-mono text-xs text-[var(--foreground)]",disabled:e$.isSaving,placeholder:"Local path to folder"}),(0,r.jsx)("button",{type:"button",className:"rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-2 text-xs font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)]",disabled:e$.isSaving,onClick:async()=>{try{let e=await fetch("/api/filesystem/pick-folder",{method:"POST"}),r=await e.json();r.path&&eP(e=>e?{...e,path:r.path,error:null}:e)}catch{}},children:"Browse"})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Notes"}),(0,r.jsx)("textarea",{value:e$.notes,onChange:e=>eP(r=>r?{...r,notes:e.target.value,error:null}:r),className:"min-h-28 w-full rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-3 text-sm text-[var(--foreground)] whitespace-pre-wrap",disabled:e$.isSaving,placeholder:"Coding conventions, deploy steps, doc standards, ownership rules..."})]}),e$.repoId?(0,r.jsxs)("div",{children:[(0,r.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Living Note"}),e$.isLoadingKnowledge?(0,r.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading note…"}):e$.generatedKnowledge.length>0?(0,r.jsx)("div",{className:"space-y-2",children:e$.generatedKnowledge.slice(0,5).map(e=>(0,r.jsxs)("div",{className:"rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-2 text-sm text-[var(--foreground)]",children:[(0,r.jsx)("div",{children:e.content}),e.created_at?(0,r.jsx)("div",{className:"mt-1 text-[11px] text-[var(--muted-foreground)]",children:new Date(e.created_at).toLocaleString()}):null]},e.id))}):(0,r.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No note yet."})]}):null,e$.error?(0,r.jsx)("p",{className:"text-xs text-red-600",children:e$.error}):null,(0,r.jsxs)("div",{className:"flex justify-end gap-2 border-t border-[var(--border)] pt-4",children:[(0,r.jsx)("button",{type:"button",className:"rounded-lg px-3 py-2 text-sm text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)]",onClick:()=>eP(null),disabled:e$.isSaving,children:"Cancel"}),(0,r.jsx)("button",{type:"button",className:"rounded-lg bg-[var(--foreground)] px-3 py-2 text-sm font-medium text-[var(--card-bg)] transition-colors hover:bg-[var(--foreground)] disabled:cursor-not-allowed disabled:opacity-60",disabled:e$.isSaving||!K,onClick:async()=>{let e=D.find(e=>e.id===e$.projectId);if(!e)return void eP(e=>e?{...e,error:"Project not found."}:e);let r=e$.name.trim(),t=e$.path.trim();if(!r)return void eP(e=>e?{...e,error:"Folder name is required."}:e);if(!t)return void eP(e=>e?{...e,error:"Folder path is required."}:e);eP(e=>e?{...e,isSaving:!0,error:null}:e);try{let a=e$.repoId?e.repos.map(e=>e.id===e$.repoId?{id:e.id,name:r,path:t,git_url:e$.gitUrl.trim()||void 0,notes:e$.notes.trim()||void 0}:{id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes}):[...e.repos.map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes})),{name:r,path:t,git_url:e$.gitUrl.trim()||void 0,notes:e$.notes.trim()||void 0}];await K?.(e.id,{repos:a}),eP(null)}catch(e){eP(r=>r?{...r,isSaving:!1,error:e instanceof Error?e.message:"Failed to save folder details."}:r)}},children:e$.isSaving?"Saving...":e$.repoId?"Save":"Add Folder"})]})]})]})}),document.body),el&&eu&&!eh&&(0,a.createPortal)((0,r.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>ep(null),children:(0,r.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-xl shadow-xl border border-[var(--border)] w-80 max-h-[70vh] flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-[var(--border)]",children:[(0,r.jsxs)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:["Add to ",eO?.name??"project"]}),(0,r.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)]",onClick:()=>ep(null),children:(0,r.jsx)(p.X,{size:16})})]}),(0,r.jsxs)("div",{className:"overflow-y-auto py-1 flex-1",children:[(0,r.jsxs)("button",{type:"button",className:"w-full flex items-center gap-3 px-4 py-2.5 text-sm text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] transition-colors border-b border-[var(--border)]",onClick:()=>eb(!0),children:[(0,r.jsx)(c.Plus,{size:14,className:"text-[var(--muted-foreground)]"}),(0,r.jsx)("span",{className:"text-xs font-medium",children:"Create new agent"})]}),0===eq.length?(0,r.jsx)("p",{className:"px-4 py-6 text-xs text-[var(--muted-foreground)] text-center",children:"All agents are already in this project"}):eq.map(e=>{let t=em.has(e.id);return(0,r.jsxs)("button",{type:"button",className:`w-full flex items-center gap-3 px-4 py-2.5 text-sm transition-colors ${t?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onClick:()=>{ex(r=>{let t=new Set(r);return t.has(e.id)?t.delete(e.id):t.add(e.id),t})},children:[(0,r.jsx)("div",{className:`w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center ${t?"bg-[var(--foreground)] border-[var(--foreground)]":"border-[var(--border)]"}`,children:t&&(0,r.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,r.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,r.jsx)("img",{src:(0,k.agentAvatarUrl)(e.id,24,e.color),alt:"",className:"w-6 h-6 rounded-full flex-shrink-0"}),(0,r.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,r.jsx)("div",{className:"truncate font-medium text-xs",children:e.name}),(0,r.jsx)("div",{className:"truncate text-[11px] text-[var(--muted-foreground)]",children:e.model})]})]},e.id)})]}),eq.length>0&&(0,r.jsxs)("div",{className:"px-4 py-3 border-t border-[var(--border)] flex justify-end gap-2",children:[(0,r.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",onClick:()=>ep(null),children:"Cancel"}),(0,r.jsxs)("button",{type:"button",disabled:0===em.size,className:"px-3 py-1.5 text-xs font-medium text-[var(--card-bg)] bg-[var(--foreground)] rounded-lg hover:bg-[var(--foreground)] disabled:opacity-40 disabled:cursor-not-allowed transition-colors",onClick:()=>{for(let e of em)O?.(eu.projectId,e);ep(null)},children:["Add ",em.size>0?`(${em.size})`:""]})]})]})}),document.body),el&&eh&&(0,a.createPortal)((0,r.jsx)(k.AgentForm,{title:"Create new agent",initial:{name:"",provider:"claude",model:"",identity:"",skills:[],skillBindings:[]},submitLabel:"Create & Add",projects:D?.filter(e=>!e.is_default).map(r=>{let t=(r.thread_ids??[]).map(r=>e.find(e=>e.id===r)?.title?.trim()).filter(Boolean).join(", ")||"No chat";return{id:r.id,name:r.name,label:`${t} › ${r.name}`}}),initialProjectIds:eu?[eu.projectId]:[],onSubmit:async(e,r)=>{let t=["#D97706","#2563EB","#059669","#DC2626","#7C3AED","#DB2777","#0891B2"],a=t[s.length%t.length],i=e.name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,""),o=r?.[0],l=await fetch("/api/participants",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:i,name:e.name,provider:e.provider,model:e.model,color:e.color??a,...e.title?{title:e.title}:{},...e.identity?{identity:e.identity}:{},skills:e.skills??[],skillBindings:e.skillBindings??[],...o?{projectId:o}:{}})});if(l.ok){let e=await l.json().catch(()=>({})),t="string"==typeof e?.id&&e.id.trim()?e.id.trim():i;for(let e of(r??[]).slice(1))O?.(e,t);eb(!1),ep(null)}},onCancel:()=>{eb(!1)}}),document.body),el&&ek&&(0,a.createPortal)((0,r.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>eN(null),children:(0,r.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-xl shadow-xl border border-[var(--border)] w-80 flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-[var(--border)]",children:[(0,r.jsx)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:ek.title}),(0,r.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)]",onClick:()=>eN(null),children:(0,r.jsx)(p.X,{size:16})})]}),(0,r.jsxs)("form",{className:"px-4 py-4 flex flex-col gap-3",onSubmit:e=>{e.preventDefault();let r=new FormData(e.currentTarget),t=r.get("value")?.trim();t&&(ek.onSubmit(t),eN(null))},children:[(0,r.jsx)("input",{ref:ey,name:"value",type:"text",defaultValue:ek.defaultValue,placeholder:ek.placeholder,className:"w-full px-3 py-2 text-sm border border-[var(--border)] rounded-lg outline-none focus:border-[var(--border)] focus:ring-1 focus:ring-[var(--border)] transition-all"}),(0,r.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,r.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",onClick:()=>eN(null),children:"Cancel"}),(0,r.jsx)("button",{type:"submit",className:"px-3 py-1.5 text-xs font-medium text-[var(--card-bg)] bg-[var(--foreground)] rounded-lg hover:bg-[var(--foreground)] transition-colors",children:ek.defaultValue?"Save":"Create"})]})]})]})}),document.body),el&&e_&&(0,a.createPortal)((0,r.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>eS(null),children:(0,r.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-xl shadow-xl border border-[var(--border)] w-80 flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-[var(--border)]",children:[(0,r.jsx)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:e_.title}),(0,r.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)]",onClick:()=>eS(null),children:(0,r.jsx)(p.X,{size:16})})]}),(0,r.jsxs)("div",{className:"px-4 py-4 flex flex-col gap-4",children:[(0,r.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:e_.message}),(0,r.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,r.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",onClick:()=>eS(null),children:"Cancel"}),(0,r.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs font-medium text-white bg-red-600 rounded-lg hover:bg-red-700 transition-colors",onClick:()=>{e_.onConfirm(),eS(null)},children:"Delete"})]})]})]})}),document.body),el&&(ef||ev)&&(0,a.createPortal)((0,r.jsx)(N.default,{isOpen:!0,onClose:()=>{ew.resetForm(),eg(null),ej(null)},onSubmit:()=>void eV(),editingProject:ev,form:ew.form,repos:ew.repos,isSubmitting:ew.isSubmitting,formError:ew.formError,onFieldChange:(e,r)=>ew.setForm(t=>({...t,[e]:r})),onRepoChange:ew.handleRepoChange,onAddRepo:ew.addRepo,onRemoveRepo:ew.removeRepo}),document.body),el&&ez&&(0,a.createPortal)((er=D.filter(e=>e.agents.some(e=>e.agent_id===ez.id)),et=D.filter(e=>!e.agents.some(e=>e.agent_id===ez.id)),(0,r.jsx)(k.AgentForm,{title:"Edit agent",initial:{name:ez.name,title:ez.title||"",provider:ez.provider,model:ez.model||"",identity:ez.identity||"",color:ez.color,skills:ez.skills||[],skillBindings:ez.skillBindings||[]},agentId:ez.id,submitLabel:"Save",projectMemberships:{current:er.map(e=>({id:e.id,name:e.name,is_default:!!e.is_default})),available:et.map(e=>({id:e.id,name:e.name}))},onAddToProject:O?e=>O(e,ez.id):void 0,onRemoveFromProject:U?e=>U(e,ez.id):void 0,onSubmit:async e=>{J&&await J({...ez,name:e.name,title:e.title||void 0,provider:e.provider,model:e.model,color:e.color??ez.color,...e.identity?{identity:e.identity}:{},skills:e.skills??[],skillBindings:e.skillBindings??[]}),eI(null)},onCancel:()=>eI(null)})),document.body),Q&&!ea&&(0,r.jsx)("div",{className:"absolute right-0 top-0 bottom-0 z-20 w-1 cursor-col-resize group",onMouseDown:e=>{e.preventDefault(),ei.current=!0;let r=e.clientX,t=Z??368;document.body.style.cursor="col-resize",document.body.style.userSelect="none";let a=e=>{Q(Math.max(200,Math.min(600,t+e.clientX-r)))},s=()=>{ei.current=!1,document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",a),window.removeEventListener("mouseup",s)};window.addEventListener("mousemove",a),window.addEventListener("mouseup",s)},children:(0,r.jsx)("div",{className:"absolute inset-y-0 right-0 w-1 transition-colors hover:bg-[var(--primary)]/40 group-hover:bg-[var(--primary)]/40"})})]})]}):ea?null:(0,r.jsxs)("aside",{id:"workspace-sidebar",className:"workspace-sidebar workspace-sidebar--collapsed","aria-label":"Workspace sidebar",children:[(0,r.jsx)("div",{className:"workspace-sidebar__brand",children:(0,r.jsx)("button",{type:"button",onClick:B,className:"workspace-sidebar__brand-trigger border-none outline-none cursor-pointer","aria-label":"Show chats",title:"Show chats",children:(0,r.jsx)(S,{compact:!0})})}),(0,r.jsx)("div",{className:"mt-auto p-2",children:(0,r.jsx)("a",{href:"https://discord.gg/G9afUYKKY3",target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center w-8 h-8 rounded-lg text-white transition-colors",style:{backgroundColor:"#5865F2"},onMouseEnter:e=>e.currentTarget.style.backgroundColor="#4752C4",onMouseLeave:e=>e.currentTarget.style.backgroundColor="#5865F2",title:"Join Discord",children:(0,r.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 71 55",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",children:(0,r.jsx)("path",{d:"M60.1 4.9A58.5 58.5 0 0045.4.2a.2.2 0 00-.2.1 40.8 40.8 0 00-1.8 3.7 54 54 0 00-16.2 0A37.4 37.4 0 0025.4.3a.2.2 0 00-.2-.1A58.4 58.4 0 0010.5 4.9a.2.2 0 00-.1.1C1.5 18.7-.9 32.2.3 45.5v.1a58.8 58.8 0 0017.7 9a.2.2 0 00.3-.1 42 42 0 003.6-5.9.2.2 0 00-.1-.3 38.8 38.8 0 01-5.5-2.6.2.2 0 01 0-.4l1.1-.9a.2.2 0 01.2 0 42 42 0 0035.6 0 .2.2 0 01.2 0l1.1.9a.2.2 0 010 .4 36.4 36.4 0 01-5.5 2.6.2.2 0 00-.1.3 47.2 47.2 0 003.6 5.9.2.2 0 00.3.1 58.6 58.6 0 0017.7-9v-.1c1.4-15.2-2.4-28.4-10-40.1a.2.2 0 00-.1-.1zM23.7 37.3c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7zm23.3 0c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7z"})})})})]})}],749410);let I="agx-chat:uiSettings",z={threadSidebarVisible:!1};function $(){return void 0!==window.localStorage}function P(){if(!$())return{...z};let e=window.localStorage.getItem(I);if(!e)return{...z};try{let r=JSON.parse(e);return{...z,threadSidebarVisible:"boolean"==typeof r.threadSidebarVisible&&r.threadSidebarVisible}}catch{return{...z}}}e.s(["loadWorkspaceSidebarVisible",0,function(){return P().threadSidebarVisible},"persistWorkspaceSidebarVisible",0,function(e){var r={...P(),threadSidebarVisible:e};if($())try{window.localStorage.setItem(I,JSON.stringify(r))}catch{}}],481248)}]);
|