@mndrk/agx 2.2.0 → 2.3.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 +70 -105
- package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
- 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/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_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_client-reference-manifest.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.nft.json +1 -1
- 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.nft.json +1 -1
- 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/file-search/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.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/participants/route.js.nft.json +1 -1
- 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]/scheduled-tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +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/prompt-jobs/poll/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.nft.json +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.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]/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.nft.json +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.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_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 +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_full.segment.rsc +4 -4
- 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 +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +2 -2
- 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_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.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_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 +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +3 -3
- 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.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 +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.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.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.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.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 +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.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.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.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.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.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.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.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.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.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.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.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.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_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 +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- 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.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_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.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 +4 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +4 -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 +3 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +3 -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_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_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_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0-zk9w8._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0.01bfe._.js +13 -8
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__00c~p6z._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__019dflu._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__02t.3rm._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__06zr0ph._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__07d._0s._.js +15 -10
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08xj~a3._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0a0cq38._.js +34 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0asvfdo._.js +35 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0bt7ejs._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0f.~98d._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g-~-.q._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7p6pw._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gj~dap._.js +40 -9
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0hkcw03._.js +8 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0hyu3en._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0i5aw03._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ke4z91._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0l53ok5._.js +41 -10
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ll-~cx._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0mh6p.0._.js +7 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0nc-lbr._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0p9rl6.._.js +8 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0q~pnp0._.js +6 -6
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ue0bu5._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0unwwyx._.js +12 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0vtkl3q._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0x6w64i._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0z82z0-._.js +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0zrv3p3._.js +16 -11
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~iknwz._.js +12 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10d.dhd._.js +46 -15
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10sw5ia._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__11yx.ud._.js +33 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__13-nlgu._.js +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__13960a8._.js +14 -9
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_06qet8g._.js +14 -9
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_0m2ly._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0a15wtk._.js +4 -4
- 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 +6 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0i7fs.i._.js +4 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01pvj2g._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_agent-participants_ts_0cq15u5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_db_ts_0twf-w5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_orchestrator_chat-processor_ts_0c2l_oh._.js +43 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_0l95hik._.js +15 -15
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_0s5xprd._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_082u-ls._.js +19 -14
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_schedule-runner_ts_07-ozf_._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0_l0fpi.js +1 -1
- 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_0rszt9p.js +10 -6
- 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/0rhn_lucide-react_dist_esm_06fnblz._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0140-84._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03fckp4._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0tcjapj._.js → _0ip6k6n._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0jensz1._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0t0p8q5._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yeuuy1._.js +1 -23
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_03z24q2._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_ac-.f._.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0a-8i4p._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0k4~c1x._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0ld1uug._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0ms1d6i._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0p_v0ri._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0x.xj52._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0~g2ijr._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_11k_-8~._.js +3 -3
- 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_agents_page_tsx_078reb_._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_linear_page_tsx_0a~n5y8._.js +25 -3
- 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_[teamId]_agents_[agentId]_page_tsx_0wm~_~t._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_[teamId]_page_tsx_0iyozfl._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_new_page_tsx_0yqd0a5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_terminal_page_tsx_01n9qk.._.js +1 -20
- 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 +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_0k4tfip._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_terminal_TerminalPane_tsx_0l17vs_._.js +22 -0
- 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/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/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/{1011~1x9nj4ny.js → 0-k2m1ncx7hwx.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0dnw31436wd~..js → 0-pkmgle2s8u8.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/064jfmraty.9h.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/06kru5m9q~r.j.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/06kyg1q0bcz6p.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0_cjth28_11b2.js → 08bdyjcnamzep.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0-olq~7zw3wjy.js → 08xq~uyr6.eqw.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0gj98094p~zn4.js → 0cku81z~3oe6..js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0e7jhy0-52_4k.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0wh6p5~ft5rma.js → 0htc.sqrk_0.c.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ju4xmxwqddw6.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0mm978wb-ueg-.js +6 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0musu8f.4wvxz.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0bchtyu6m.2yv.js → 0muti0yiyhu0t.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0rhps884e-bzu.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0rr3fvwc5ind~.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0sbkkjowkksa6.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0sjz0.o9_33qy.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0srzmg8ivve1g.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0fonouj2i9qnb.js → 0swo3_e8.4s7j.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0sysrf3~l~r35.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0t69h-kc701fn.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0v67lnh..wj4z.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{013gtut17~fne.js → 0wb45ol1xrqe~.js} +1 -23
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{00po4v2x~0x_z.js → 0wiw2v8gm-k_-.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0jq0t4zip38wt.js → 0wopevh0s7.8c.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xm2~gxlt1npd.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{1503vb7lb6.g1.js → 0ya124ushze_f.js} +4 -4
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{00e1ihnb6ap3t.js → 0zt2o58c5gytn.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0~idsggr8vqf5.js +59 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0xu_doej_wc-3.js → 0~mcfx41q4znh.js} +3 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/116j4mjz~y42t.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0-vo_x2cxmjm3.js → 12b62py0mq1gm.js} +4 -4
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/12y5i0lh6s73o.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/148.mt80civoz.js +20 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/14m5d270euu_s.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/16h9208kl5~xa.js +16 -0
- package/cloud-runtime/standalone/apps/local/app/agents/[id]/page.tsx +6 -3
- package/cloud-runtime/standalone/apps/local/app/agents/page.tsx +3 -3
- package/cloud-runtime/standalone/apps/local/app/api/chat/route.ts +7 -1
- package/cloud-runtime/standalone/apps/local/app/api/participants/route.ts +9 -9
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/search/route.ts +6 -6
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/teams/route.ts +3 -3
- package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/agents/route.ts +1 -1
- package/cloud-runtime/standalone/apps/local/app/api/schedules/poll/route.ts +11 -2
- package/cloud-runtime/standalone/apps/local/app/page.tsx +72 -14
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/page.tsx +34 -1
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.tsx +6 -3
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/[teamId]/page.tsx +6 -3
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/new/page.tsx +8 -17
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/replace/page.tsx +1 -1
- package/cloud-runtime/standalone/apps/local/app/projects/page.tsx +7 -0
- package/cloud-runtime/standalone/apps/local/app/setup/page.tsx +1 -38
- package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +8 -4
- package/cloud-runtime/standalone/apps/local/components/EmptyStateCard.tsx +37 -0
- package/cloud-runtime/standalone/apps/local/components/LinearBoard.tsx +103 -770
- package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +5 -37
- package/cloud-runtime/standalone/apps/local/components/TeamPickerModal.tsx +3 -3
- package/cloud-runtime/standalone/apps/local/components/chat-ui/Composer.tsx +28 -32
- package/cloud-runtime/standalone/apps/local/components/chat-ui/ParticipantBar.tsx +24 -39
- package/cloud-runtime/standalone/apps/local/components/linear/LinearBoardFilters.tsx +343 -0
- package/cloud-runtime/standalone/apps/local/components/linear/TicketRow.tsx +158 -0
- package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveHealthTrend.tsx +45 -61
- package/cloud-runtime/standalone/apps/local/components/projects/RecentlyCompletedCard.tsx +0 -16
- package/cloud-runtime/standalone/apps/local/components/projects/ReplaceAgentsModal.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/components/setup/McpSetupStep.tsx +155 -120
- package/cloud-runtime/standalone/apps/local/components/setup/ProviderStep.tsx +85 -88
- package/cloud-runtime/standalone/apps/local/components/setup/SetupLayout.tsx +6 -4
- package/cloud-runtime/standalone/apps/local/components/terminal/ProjectTerminal.tsx +18 -193
- package/cloud-runtime/standalone/apps/local/components/terminal/TerminalPane.tsx +40 -4
- package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +4 -4
- package/cloud-runtime/standalone/apps/local/components/ui/ResizeHandle.tsx +52 -0
- package/cloud-runtime/standalone/apps/local/hooks/useAutomations.ts +8 -3
- package/cloud-runtime/standalone/apps/local/hooks/useLinearActiveAgents.ts +38 -0
- package/cloud-runtime/standalone/apps/local/hooks/useLinearParticipants.ts +118 -0
- package/cloud-runtime/standalone/apps/local/hooks/usePromptJobs.ts +5 -3
- package/cloud-runtime/standalone/apps/local/hooks/useSetupFlow.ts +6 -81
- package/cloud-runtime/standalone/apps/local/lib/agent-participants.ts +1 -1
- package/cloud-runtime/standalone/apps/local/lib/agent-process-registry.ts +34 -0
- package/cloud-runtime/standalone/apps/local/lib/db.ts +5 -5
- package/cloud-runtime/standalone/apps/local/lib/linear-board-utils.ts +9 -0
- package/cloud-runtime/standalone/apps/local/lib/linear-run-status.ts +88 -0
- package/cloud-runtime/standalone/apps/local/lib/linear-run-store.ts +4 -4
- package/cloud-runtime/standalone/apps/local/lib/sqlite-query-adapter.ts +5 -1
- package/cloud-runtime/standalone/apps/local/lib/team-catalog.ts +60 -60
- package/cloud-runtime/standalone/apps/local/lib/types.ts +1 -1
- package/cloud-runtime/standalone/apps/local/migrations/sqlite_schema.sql +1 -1
- package/cloud-runtime/standalone/apps/local/skills-lock.json +5 -0
- package/cloud-runtime/standalone/apps/local/src/graph/schedule-runner.ts +26 -1
- package/cloud-runtime/standalone/apps/local/src/graph/store.ts +13 -0
- package/cloud-runtime/standalone/apps/local/state/linearBoardPins.ts +45 -0
- package/cloud-runtime/standalone/apps/local/worker/index.js +56 -4
- package/lib/cli/onboarding.js +8 -5
- package/package.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_067eb..._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_00trrg8._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ejzn1e._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0sjchy6._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0w4gpvr._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0x6hh0t._.js +0 -4
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0t6p.qm._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-wlbe.ripd2w.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/014z_yruiincl.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/041-dhls9zkl1.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/069yt_7prdxsp.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0e6rxcxy.l5c8.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ime4btrg-g4l.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0j-nhn61e~nnj.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jglardpw~5uc.js +0 -37
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0l3v45kd.9is_.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ng6wy4ak35jg.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0n~jhoq~op4e5.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0p-rdas54yo~w.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pdrpsy-zdxp0.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0p~l5ap6qqx2o.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0tm20~ec~occu.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0w94x-v00osq0.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xwny92a.ad_i.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/11l2tww5f0hsk.js +0 -20
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/12qohmk-~yrtg.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/14v~9vx3tdv85.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/16fyhcmwlw3th.js +0 -6
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/18e8w~~mvoh5o.js +0 -1
- package/cloud-runtime/standalone/apps/local/components/setup/ProjectStep.tsx +0 -189
- package/cloud-runtime/standalone/apps/local/components/setup/TeamsStep.tsx +0 -500
- /package/cloud-runtime/standalone/apps/local/.next/static/{qPuactsz6OYimwT6dSdHn → ROMPfjQqFXqGHmbybq1eC}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{qPuactsz6OYimwT6dSdHn → ROMPfjQqFXqGHmbybq1eC}/_clientMiddlewareManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{qPuactsz6OYimwT6dSdHn → ROMPfjQqFXqGHmbybq1eC}/_ssgManifest.js +0 -0
|
@@ -1,500 +0,0 @@
|
|
|
1
|
-
// components/setup/TeamsStep.tsx
|
|
2
|
-
"use client";
|
|
3
|
-
|
|
4
|
-
import { useState, useCallback, useRef, useEffect } from "react";
|
|
5
|
-
import { Check, ChevronDown, ChevronRight, Users, X } from "lucide-react";
|
|
6
|
-
import { listTeamTemplates, getTemplateVariant, type TeamTemplate, type TeamTemplateVariant, type TeamTemplateId, type AgentPreset } from "@/lib/team-catalog";
|
|
7
|
-
import { useProviders } from "@/hooks/useProviders";
|
|
8
|
-
import { SetupLayout } from "./SetupLayout";
|
|
9
|
-
|
|
10
|
-
export interface AgentOverride {
|
|
11
|
-
agentId: string;
|
|
12
|
-
provider?: string;
|
|
13
|
-
model?: string;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export interface SelectedTeam {
|
|
17
|
-
templateId: TeamTemplateId;
|
|
18
|
-
variantId?: string;
|
|
19
|
-
name: string;
|
|
20
|
-
agents: AgentPreset[];
|
|
21
|
-
provider?: string;
|
|
22
|
-
model?: string;
|
|
23
|
-
agentOverrides?: AgentOverride[];
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
/** Well-known models per provider for the combobox suggestions. */
|
|
27
|
-
const MODEL_SUGGESTIONS: Record<string, string[]> = {
|
|
28
|
-
claude: [
|
|
29
|
-
"claude-opus-4-20250514",
|
|
30
|
-
"claude-sonnet-4-20250514",
|
|
31
|
-
"claude-haiku-4-20250514",
|
|
32
|
-
],
|
|
33
|
-
codex: [
|
|
34
|
-
"o4-mini",
|
|
35
|
-
"o3",
|
|
36
|
-
"gpt-4.1",
|
|
37
|
-
"gpt-4.1-mini",
|
|
38
|
-
"gpt-4.1-nano",
|
|
39
|
-
],
|
|
40
|
-
gemini: [
|
|
41
|
-
"gemini-2.5-pro",
|
|
42
|
-
"gemini-2.5-flash",
|
|
43
|
-
"gemini-2.0-flash",
|
|
44
|
-
],
|
|
45
|
-
ollama: [
|
|
46
|
-
"qwen3:8b",
|
|
47
|
-
"devstral",
|
|
48
|
-
"qwen2.5-coder:14b",
|
|
49
|
-
"llama3.3:70b",
|
|
50
|
-
"deepseek-coder-v2:16b",
|
|
51
|
-
],
|
|
52
|
-
zai: [
|
|
53
|
-
"claude-opus-4-20250514",
|
|
54
|
-
"claude-sonnet-4-20250514",
|
|
55
|
-
],
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
interface TeamsStepProps {
|
|
59
|
-
selectedTeams: SelectedTeam[];
|
|
60
|
-
onChange: (teams: SelectedTeam[]) => void;
|
|
61
|
-
onNext: () => void;
|
|
62
|
-
onBack: () => void;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
const STYLE_COLORS: Record<string, string> = {
|
|
66
|
-
balanced: "bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300",
|
|
67
|
-
specialist: "bg-purple-100 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300",
|
|
68
|
-
creative: "bg-amber-100 dark:bg-amber-900/30 text-amber-700 dark:text-amber-300",
|
|
69
|
-
analytical: "bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-300",
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
/** Searchable combobox: text input with dropdown suggestions, allows custom values. */
|
|
73
|
-
function ModelCombobox({
|
|
74
|
-
value,
|
|
75
|
-
onChange,
|
|
76
|
-
suggestions,
|
|
77
|
-
placeholder = "Model name...",
|
|
78
|
-
}: {
|
|
79
|
-
value: string;
|
|
80
|
-
onChange: (v: string) => void;
|
|
81
|
-
suggestions: string[];
|
|
82
|
-
placeholder?: string;
|
|
83
|
-
}) {
|
|
84
|
-
const [open, setOpen] = useState(false);
|
|
85
|
-
const [filter, setFilter] = useState("");
|
|
86
|
-
const wrapperRef = useRef<HTMLDivElement>(null);
|
|
87
|
-
|
|
88
|
-
useEffect(() => {
|
|
89
|
-
function handleClickOutside(e: MouseEvent) {
|
|
90
|
-
if (wrapperRef.current && !wrapperRef.current.contains(e.target as Node)) {
|
|
91
|
-
setOpen(false);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
document.addEventListener("mousedown", handleClickOutside);
|
|
95
|
-
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
96
|
-
}, []);
|
|
97
|
-
|
|
98
|
-
const filtered = suggestions.filter((s) =>
|
|
99
|
-
s.toLowerCase().includes((filter || value).toLowerCase())
|
|
100
|
-
);
|
|
101
|
-
|
|
102
|
-
return (
|
|
103
|
-
<div ref={wrapperRef} className="relative flex-1">
|
|
104
|
-
<input
|
|
105
|
-
type="text"
|
|
106
|
-
value={value}
|
|
107
|
-
placeholder={placeholder}
|
|
108
|
-
onChange={(e) => {
|
|
109
|
-
onChange(e.target.value);
|
|
110
|
-
setFilter(e.target.value);
|
|
111
|
-
setOpen(true);
|
|
112
|
-
}}
|
|
113
|
-
onFocus={() => setOpen(true)}
|
|
114
|
-
className="w-full h-8 px-2.5 text-[12px] rounded-md border border-[var(--card-border)] bg-[var(--background)] text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] focus:outline-none focus:border-[var(--foreground)]/40 transition-colors"
|
|
115
|
-
/>
|
|
116
|
-
{open && filtered.length > 0 && (
|
|
117
|
-
<div className="absolute z-50 top-full left-0 right-0 mt-1 max-h-[160px] overflow-y-auto rounded-md border border-[var(--card-border)] bg-[var(--background)] shadow-lg">
|
|
118
|
-
{filtered.map((s) => (
|
|
119
|
-
<button
|
|
120
|
-
key={s}
|
|
121
|
-
type="button"
|
|
122
|
-
onClick={() => {
|
|
123
|
-
onChange(s);
|
|
124
|
-
setFilter("");
|
|
125
|
-
setOpen(false);
|
|
126
|
-
}}
|
|
127
|
-
className={`w-full text-left px-2.5 py-1.5 text-[12px] transition-colors hover:bg-[var(--secondary)] ${
|
|
128
|
-
s === value ? "text-[var(--foreground)] font-medium" : "text-[var(--muted-foreground)]"
|
|
129
|
-
}`}
|
|
130
|
-
>
|
|
131
|
-
{s}
|
|
132
|
-
</button>
|
|
133
|
-
))}
|
|
134
|
-
</div>
|
|
135
|
-
)}
|
|
136
|
-
</div>
|
|
137
|
-
);
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
/** Provider dropdown + model combobox, compact layout. */
|
|
141
|
-
function ProviderModelSelector({
|
|
142
|
-
provider,
|
|
143
|
-
model,
|
|
144
|
-
onProviderChange,
|
|
145
|
-
onModelChange,
|
|
146
|
-
providers,
|
|
147
|
-
label,
|
|
148
|
-
}: {
|
|
149
|
-
provider: string;
|
|
150
|
-
model: string;
|
|
151
|
-
onProviderChange: (v: string) => void;
|
|
152
|
-
onModelChange: (v: string) => void;
|
|
153
|
-
providers: { id: string; label: string }[];
|
|
154
|
-
label?: string;
|
|
155
|
-
}) {
|
|
156
|
-
const suggestions = MODEL_SUGGESTIONS[provider] ?? [];
|
|
157
|
-
|
|
158
|
-
return (
|
|
159
|
-
<div className="space-y-1.5">
|
|
160
|
-
{label && (
|
|
161
|
-
<span className="text-[11px] font-medium text-[var(--muted-foreground)] uppercase tracking-wide">{label}</span>
|
|
162
|
-
)}
|
|
163
|
-
<div className="flex items-center gap-2">
|
|
164
|
-
<select
|
|
165
|
-
value={provider}
|
|
166
|
-
onChange={(e) => {
|
|
167
|
-
onProviderChange(e.target.value);
|
|
168
|
-
// Clear model when provider changes
|
|
169
|
-
onModelChange("");
|
|
170
|
-
}}
|
|
171
|
-
className="h-8 px-2 text-[12px] rounded-md border border-[var(--card-border)] bg-[var(--background)] text-[var(--foreground)] focus:outline-none focus:border-[var(--foreground)]/40 transition-colors appearance-none cursor-pointer pr-6"
|
|
172
|
-
style={{ backgroundImage: "url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E\")", backgroundRepeat: "no-repeat", backgroundPosition: "right 6px center" }}
|
|
173
|
-
>
|
|
174
|
-
<option value="">Provider...</option>
|
|
175
|
-
{providers.map((p) => (
|
|
176
|
-
<option key={p.id} value={p.id}>{p.label}</option>
|
|
177
|
-
))}
|
|
178
|
-
</select>
|
|
179
|
-
<ModelCombobox
|
|
180
|
-
value={model}
|
|
181
|
-
onChange={onModelChange}
|
|
182
|
-
suggestions={suggestions}
|
|
183
|
-
placeholder={provider ? "Select or type model..." : "Select a provider first"}
|
|
184
|
-
/>
|
|
185
|
-
</div>
|
|
186
|
-
</div>
|
|
187
|
-
);
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
function AgentPreview({
|
|
191
|
-
agent,
|
|
192
|
-
override,
|
|
193
|
-
teamProvider,
|
|
194
|
-
teamModel,
|
|
195
|
-
providers,
|
|
196
|
-
onOverrideChange,
|
|
197
|
-
}: {
|
|
198
|
-
agent: AgentPreset;
|
|
199
|
-
override?: AgentOverride;
|
|
200
|
-
teamProvider?: string;
|
|
201
|
-
teamModel?: string;
|
|
202
|
-
providers: { id: string; label: string }[];
|
|
203
|
-
onOverrideChange: (agentId: string, override: AgentOverride | undefined) => void;
|
|
204
|
-
}) {
|
|
205
|
-
const styleClass = STYLE_COLORS[agent.style] ?? STYLE_COLORS.balanced;
|
|
206
|
-
const hasOverride = override && (override.provider || override.model);
|
|
207
|
-
const [showOverride, setShowOverride] = useState(!!hasOverride);
|
|
208
|
-
const effectiveProvider = override?.provider || teamProvider || "";
|
|
209
|
-
const effectiveModel = override?.model || teamModel || "";
|
|
210
|
-
|
|
211
|
-
return (
|
|
212
|
-
<div className="py-1.5">
|
|
213
|
-
<div className="flex items-center gap-2">
|
|
214
|
-
<div className="w-7 h-7 rounded-full bg-[var(--secondary)] flex items-center justify-center text-[12px] font-semibold text-[var(--foreground)]">
|
|
215
|
-
{agent.name.charAt(0)}
|
|
216
|
-
</div>
|
|
217
|
-
<div className="flex-1 min-w-0">
|
|
218
|
-
<div className="flex items-center gap-2">
|
|
219
|
-
<span className="text-[13px] font-medium text-[var(--foreground)]">{agent.name}</span>
|
|
220
|
-
<span className={`text-[10px] px-1.5 py-0.5 rounded font-medium ${styleClass}`}>{agent.style}</span>
|
|
221
|
-
{hasOverride && (
|
|
222
|
-
<span className="text-[10px] px-1.5 py-0.5 rounded font-medium bg-violet-100 dark:bg-violet-900/30 text-violet-700 dark:text-violet-300">custom</span>
|
|
223
|
-
)}
|
|
224
|
-
</div>
|
|
225
|
-
<div className="flex items-center gap-1">
|
|
226
|
-
<p className="text-[11px] text-[var(--muted-foreground)] truncate">{agent.title}</p>
|
|
227
|
-
{(teamProvider || teamModel) && !hasOverride && effectiveModel && (
|
|
228
|
-
<span className="text-[10px] text-[var(--muted-foreground)] opacity-60 shrink-0">
|
|
229
|
-
({effectiveModel})
|
|
230
|
-
</span>
|
|
231
|
-
)}
|
|
232
|
-
</div>
|
|
233
|
-
</div>
|
|
234
|
-
<button
|
|
235
|
-
type="button"
|
|
236
|
-
onClick={() => {
|
|
237
|
-
if (showOverride) {
|
|
238
|
-
onOverrideChange(agent.id, undefined);
|
|
239
|
-
setShowOverride(false);
|
|
240
|
-
} else {
|
|
241
|
-
setShowOverride(true);
|
|
242
|
-
}
|
|
243
|
-
}}
|
|
244
|
-
className="p-1 rounded hover:bg-[var(--background)] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors"
|
|
245
|
-
title={showOverride ? "Remove override" : "Override provider/model"}
|
|
246
|
-
>
|
|
247
|
-
<ChevronRight className={`w-3 h-3 transition-transform ${showOverride ? "rotate-90" : ""}`} />
|
|
248
|
-
</button>
|
|
249
|
-
</div>
|
|
250
|
-
{showOverride && (
|
|
251
|
-
<div className="mt-1.5 ml-9">
|
|
252
|
-
<ProviderModelSelector
|
|
253
|
-
provider={override?.provider || ""}
|
|
254
|
-
model={override?.model || ""}
|
|
255
|
-
onProviderChange={(p) => onOverrideChange(agent.id, { agentId: agent.id, provider: p || undefined, model: override?.model })}
|
|
256
|
-
onModelChange={(m) => onOverrideChange(agent.id, { agentId: agent.id, provider: override?.provider, model: m || undefined })}
|
|
257
|
-
providers={providers}
|
|
258
|
-
/>
|
|
259
|
-
</div>
|
|
260
|
-
)}
|
|
261
|
-
</div>
|
|
262
|
-
);
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
function TemplateCard({
|
|
266
|
-
template,
|
|
267
|
-
isSelected,
|
|
268
|
-
onSelect,
|
|
269
|
-
}: {
|
|
270
|
-
template: TeamTemplate;
|
|
271
|
-
isSelected: boolean;
|
|
272
|
-
onSelect: (template: TeamTemplate) => void;
|
|
273
|
-
}) {
|
|
274
|
-
return (
|
|
275
|
-
<button
|
|
276
|
-
type="button"
|
|
277
|
-
onClick={() => onSelect(template)}
|
|
278
|
-
className={`w-full text-left p-4 rounded-lg border transition-all ${
|
|
279
|
-
isSelected
|
|
280
|
-
? "border-[var(--foreground)] bg-[var(--secondary)]"
|
|
281
|
-
: "border-[var(--card-border)] hover:border-[var(--foreground)]/30 hover:bg-[var(--secondary)]/50"
|
|
282
|
-
}`}
|
|
283
|
-
>
|
|
284
|
-
<div className="flex items-center justify-between">
|
|
285
|
-
<div className="flex items-center gap-2">
|
|
286
|
-
<span className="text-lg">{template.icon}</span>
|
|
287
|
-
<span className="text-[14px] font-semibold text-[var(--foreground)]">{template.name}</span>
|
|
288
|
-
</div>
|
|
289
|
-
{isSelected && (
|
|
290
|
-
<div className="w-5 h-5 rounded-full bg-[var(--foreground)] flex items-center justify-center">
|
|
291
|
-
<Check className="w-3 h-3 text-[var(--background)]" />
|
|
292
|
-
</div>
|
|
293
|
-
)}
|
|
294
|
-
</div>
|
|
295
|
-
<p className="mt-1 text-[12px] text-[var(--muted-foreground)]">{template.description}</p>
|
|
296
|
-
<p className="mt-2 text-[11px] text-[var(--muted-foreground)]">
|
|
297
|
-
{template.agents.length} agent{template.agents.length !== 1 ? "s" : ""}
|
|
298
|
-
{template.variants && template.variants.length > 0 ? ` · ${template.variants.length} variants` : ""}
|
|
299
|
-
</p>
|
|
300
|
-
</button>
|
|
301
|
-
);
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
export function TeamsStep({ selectedTeams, onChange, onNext, onBack }: TeamsStepProps) {
|
|
305
|
-
const templates = listTeamTemplates();
|
|
306
|
-
const { providers } = useProviders();
|
|
307
|
-
const [expandedTemplate, setExpandedTemplate] = useState<TeamTemplateId | null>(null);
|
|
308
|
-
const [selectedVariant, setSelectedVariant] = useState<Record<string, string>>({});
|
|
309
|
-
|
|
310
|
-
const isTemplateSelected = useCallback(
|
|
311
|
-
(id: TeamTemplateId) => selectedTeams.some((t) => t.templateId === id),
|
|
312
|
-
[selectedTeams]
|
|
313
|
-
);
|
|
314
|
-
|
|
315
|
-
const handleSelectTemplate = useCallback(
|
|
316
|
-
(template: TeamTemplate) => {
|
|
317
|
-
if (isTemplateSelected(template.id)) {
|
|
318
|
-
onChange(selectedTeams.filter((t) => t.templateId !== template.id));
|
|
319
|
-
setExpandedTemplate(null);
|
|
320
|
-
return;
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
if (template.variants && template.variants.length > 0) {
|
|
324
|
-
setExpandedTemplate(expandedTemplate === template.id ? null : template.id);
|
|
325
|
-
return;
|
|
326
|
-
}
|
|
327
|
-
|
|
328
|
-
onChange([...selectedTeams, {
|
|
329
|
-
templateId: template.id,
|
|
330
|
-
name: template.name,
|
|
331
|
-
agents: template.agents,
|
|
332
|
-
}]);
|
|
333
|
-
},
|
|
334
|
-
[selectedTeams, onChange, expandedTemplate, isTemplateSelected]
|
|
335
|
-
);
|
|
336
|
-
|
|
337
|
-
const handleSelectVariant = useCallback(
|
|
338
|
-
(templateId: TeamTemplateId, variant: TeamTemplateVariant) => {
|
|
339
|
-
setSelectedVariant((prev) => ({ ...prev, [templateId]: variant.id }));
|
|
340
|
-
const existing = selectedTeams.filter((t) => t.templateId !== templateId);
|
|
341
|
-
onChange([...existing, {
|
|
342
|
-
templateId,
|
|
343
|
-
variantId: variant.id,
|
|
344
|
-
name: variant.name,
|
|
345
|
-
agents: variant.agents,
|
|
346
|
-
}]);
|
|
347
|
-
setExpandedTemplate(null);
|
|
348
|
-
},
|
|
349
|
-
[selectedTeams, onChange]
|
|
350
|
-
);
|
|
351
|
-
|
|
352
|
-
const handleRemoveTeam = useCallback(
|
|
353
|
-
(templateId: TeamTemplateId) => {
|
|
354
|
-
onChange(selectedTeams.filter((t) => t.templateId !== templateId));
|
|
355
|
-
},
|
|
356
|
-
[selectedTeams, onChange]
|
|
357
|
-
);
|
|
358
|
-
|
|
359
|
-
const handleTeamProviderChange = useCallback(
|
|
360
|
-
(templateId: TeamTemplateId, provider: string) => {
|
|
361
|
-
onChange(selectedTeams.map((t) =>
|
|
362
|
-
t.templateId === templateId ? { ...t, provider: provider || undefined } : t
|
|
363
|
-
));
|
|
364
|
-
},
|
|
365
|
-
[selectedTeams, onChange]
|
|
366
|
-
);
|
|
367
|
-
|
|
368
|
-
const handleTeamModelChange = useCallback(
|
|
369
|
-
(templateId: TeamTemplateId, model: string) => {
|
|
370
|
-
onChange(selectedTeams.map((t) =>
|
|
371
|
-
t.templateId === templateId ? { ...t, model: model || undefined } : t
|
|
372
|
-
));
|
|
373
|
-
},
|
|
374
|
-
[selectedTeams, onChange]
|
|
375
|
-
);
|
|
376
|
-
|
|
377
|
-
const handleAgentOverrideChange = useCallback(
|
|
378
|
-
(templateId: TeamTemplateId, agentId: string, override: AgentOverride | undefined) => {
|
|
379
|
-
onChange(selectedTeams.map((t) => {
|
|
380
|
-
if (t.templateId !== templateId) return t;
|
|
381
|
-
const overrides = (t.agentOverrides ?? []).filter((o) => o.agentId !== agentId);
|
|
382
|
-
if (override && (override.provider || override.model)) {
|
|
383
|
-
overrides.push(override);
|
|
384
|
-
}
|
|
385
|
-
return { ...t, agentOverrides: overrides.length > 0 ? overrides : undefined };
|
|
386
|
-
}));
|
|
387
|
-
},
|
|
388
|
-
[selectedTeams, onChange]
|
|
389
|
-
);
|
|
390
|
-
|
|
391
|
-
return (
|
|
392
|
-
<SetupLayout
|
|
393
|
-
currentStep={4}
|
|
394
|
-
totalSteps={4}
|
|
395
|
-
footer={
|
|
396
|
-
<div className="flex items-center justify-between">
|
|
397
|
-
<button type="button" onClick={onBack} className="text-[14px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors">
|
|
398
|
-
Back
|
|
399
|
-
</button>
|
|
400
|
-
<button
|
|
401
|
-
type="button"
|
|
402
|
-
onClick={onNext}
|
|
403
|
-
className="inline-flex items-center gap-2 px-6 py-2.5 bg-[var(--foreground)] text-[var(--background)] text-[14px] font-semibold rounded-lg hover:opacity-90 transition-all"
|
|
404
|
-
>
|
|
405
|
-
{selectedTeams.length > 0 ? "Create Project" : "Skip & Create Project"}
|
|
406
|
-
</button>
|
|
407
|
-
</div>
|
|
408
|
-
}
|
|
409
|
-
>
|
|
410
|
-
<div className="text-center mb-8">
|
|
411
|
-
<h1 className="text-[24px] font-bold text-[var(--foreground)] tracking-tight">Add Teams</h1>
|
|
412
|
-
<p className="mt-2 text-[14px] text-[var(--muted-foreground)]">
|
|
413
|
-
Pick team templates to populate your project with agents. You can customize them later.
|
|
414
|
-
</p>
|
|
415
|
-
</div>
|
|
416
|
-
|
|
417
|
-
{/* Selected teams summary */}
|
|
418
|
-
{selectedTeams.length > 0 && (
|
|
419
|
-
<div className="mb-6 space-y-2">
|
|
420
|
-
{selectedTeams.map((team) => (
|
|
421
|
-
<div key={team.templateId} className="border border-[var(--foreground)]/20 bg-[var(--secondary)] rounded-lg p-3">
|
|
422
|
-
<div className="flex items-center justify-between mb-2">
|
|
423
|
-
<div className="flex items-center gap-2">
|
|
424
|
-
<Users className="w-4 h-4 text-[var(--muted-foreground)]" />
|
|
425
|
-
<span className="text-[13px] font-semibold text-[var(--foreground)]">{team.name}</span>
|
|
426
|
-
<span className="text-[11px] text-[var(--muted-foreground)]">{team.agents.length} agents</span>
|
|
427
|
-
</div>
|
|
428
|
-
<button type="button" onClick={() => handleRemoveTeam(team.templateId)} className="p-1 rounded hover:bg-[var(--background)] text-[var(--muted-foreground)] hover:text-[var(--foreground)]">
|
|
429
|
-
<X className="w-3.5 h-3.5" />
|
|
430
|
-
</button>
|
|
431
|
-
</div>
|
|
432
|
-
|
|
433
|
-
{/* Team-level provider/model selector */}
|
|
434
|
-
<div className="pl-6 mb-2">
|
|
435
|
-
<ProviderModelSelector
|
|
436
|
-
provider={team.provider || ""}
|
|
437
|
-
model={team.model || ""}
|
|
438
|
-
onProviderChange={(p) => handleTeamProviderChange(team.templateId, p)}
|
|
439
|
-
onModelChange={(m) => handleTeamModelChange(team.templateId, m)}
|
|
440
|
-
providers={providers}
|
|
441
|
-
label="Default provider & model"
|
|
442
|
-
/>
|
|
443
|
-
</div>
|
|
444
|
-
|
|
445
|
-
<div className="pl-6 space-y-0.5">
|
|
446
|
-
{team.agents.map((agent) => (
|
|
447
|
-
<AgentPreview
|
|
448
|
-
key={agent.id}
|
|
449
|
-
agent={agent}
|
|
450
|
-
override={team.agentOverrides?.find((o) => o.agentId === agent.id)}
|
|
451
|
-
teamProvider={team.provider}
|
|
452
|
-
teamModel={team.model}
|
|
453
|
-
providers={providers}
|
|
454
|
-
onOverrideChange={(agentId, override) => handleAgentOverrideChange(team.templateId, agentId, override)}
|
|
455
|
-
/>
|
|
456
|
-
))}
|
|
457
|
-
</div>
|
|
458
|
-
</div>
|
|
459
|
-
))}
|
|
460
|
-
</div>
|
|
461
|
-
)}
|
|
462
|
-
|
|
463
|
-
{/* Template catalog grid */}
|
|
464
|
-
<div className="grid grid-cols-2 gap-3">
|
|
465
|
-
{templates.map((template) => (
|
|
466
|
-
<div key={template.id}>
|
|
467
|
-
<TemplateCard
|
|
468
|
-
template={template}
|
|
469
|
-
isSelected={isTemplateSelected(template.id)}
|
|
470
|
-
onSelect={handleSelectTemplate}
|
|
471
|
-
/>
|
|
472
|
-
|
|
473
|
-
{/* Variant selector */}
|
|
474
|
-
{expandedTemplate === template.id && template.variants && template.variants.length > 0 && (
|
|
475
|
-
<div className="mt-2 ml-2 border-l-2 border-[var(--border)] pl-3 space-y-1">
|
|
476
|
-
{template.variants.map((variant) => (
|
|
477
|
-
<button
|
|
478
|
-
key={variant.id}
|
|
479
|
-
type="button"
|
|
480
|
-
onClick={() => handleSelectVariant(template.id, variant)}
|
|
481
|
-
className={`w-full text-left px-3 py-2 rounded-md text-[13px] transition-colors ${
|
|
482
|
-
selectedVariant[template.id] === variant.id
|
|
483
|
-
? "bg-[var(--secondary)] font-medium text-[var(--foreground)]"
|
|
484
|
-
: "text-[var(--muted-foreground)] hover:bg-[var(--secondary)]/50 hover:text-[var(--foreground)]"
|
|
485
|
-
}`}
|
|
486
|
-
>
|
|
487
|
-
{variant.name}
|
|
488
|
-
<span className="ml-2 text-[11px] text-[var(--muted-foreground)]">
|
|
489
|
-
{variant.agents.length} agents
|
|
490
|
-
</span>
|
|
491
|
-
</button>
|
|
492
|
-
))}
|
|
493
|
-
</div>
|
|
494
|
-
)}
|
|
495
|
-
</div>
|
|
496
|
-
))}
|
|
497
|
-
</div>
|
|
498
|
-
</SetupLayout>
|
|
499
|
-
);
|
|
500
|
-
}
|
|
File without changes
|
|
File without changes
|