@mndrk/agx 2.1.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 +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_full.segment.rsc +5 -5
- 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_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.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.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/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/[root-of-the-server]__039h7r.._.js +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0lno3km._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__0fl7_-o._.js → [root-of-the-server]__0nqqk26._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__0j9m72.._.js → [root-of-the-server]__0tqn-o5._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0~nm7b6._.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/{_064h43p._.js → _05xj_bp._.js} +2 -2
- 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_0nvzo3y._.js → apps_local_04dh2yh._.js} +2 -2
- 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]_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 +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_chat-ui_ChatContainer_tsx_0c9fjtl._.js +1 -1
- 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/{0e307b-0c2jbx.js → 0-cets4_axpvm.js} +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/{119v0-idpg-cv.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/0kn66yvx08813.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{07646a0h94826.js → 0l89kxqcf86on.js} +2 -2
- 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/{0tt1oh112yv-l.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/0zt2o58c5gytn.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0~idsggr8vqf5.js +59 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0stvi5btlxl4m.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/{0-_ukhpeg429c.js → 16h9208kl5~xa.js} +1 -1
- 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]/layout.tsx +1 -1
- 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 +8 -39
- 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/LinearSettingsModal.tsx +9 -3
- package/cloud-runtime/standalone/apps/local/components/linear/LinearWorkerConfig.tsx +65 -30
- package/cloud-runtime/standalone/apps/local/components/linear/LinearWorkerRunLog.tsx +190 -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/ObjectiveScheduledTasksPanel.tsx +38 -34
- 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 +121 -20
- 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/styles/workspaceSidebar.css +71 -2
- 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_0tvwux2._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__006vr7.._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0d18x53._.js +0 -18
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0z7nw_r._.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/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/04yoml2rqnuot.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/069yt_7prdxsp.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0_mrpyqcoyb_5.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0edewt9l~cs~k.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0f7i3ae1ynhf3.css +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/0jrkacz_dyem6.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/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/0r0c9y6.8.m5p.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/0uve8xrt~0a2e.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/0zw85-xl9ysjs.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/16d~es6h6k~rj.js +0 -6
- 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/{RnYHmEXBwXJjVrVVx2CuP → ROMPfjQqFXqGHmbybq1eC}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{RnYHmEXBwXJjVrVVx2CuP → ROMPfjQqFXqGHmbybq1eC}/_clientMiddlewareManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{RnYHmEXBwXJjVrVVx2CuP → ROMPfjQqFXqGHmbybq1eC}/_ssgManifest.js +0 -0
|
@@ -70,7 +70,7 @@ export interface SkillProfile {
|
|
|
70
70
|
export interface AgentPreset {
|
|
71
71
|
id: AgentPresetId;
|
|
72
72
|
name: string;
|
|
73
|
-
|
|
73
|
+
role: string;
|
|
74
74
|
style: AgentStyle;
|
|
75
75
|
skillProfileId: SkillProfileId;
|
|
76
76
|
identity: string;
|
|
@@ -200,8 +200,8 @@ const NEXT_JS_UI: SkillReference[] = [
|
|
|
200
200
|
const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
201
201
|
// Leadership & strategy
|
|
202
202
|
"team-lead": {
|
|
203
|
-
name: "
|
|
204
|
-
|
|
203
|
+
name: "Ada",
|
|
204
|
+
role: "Team Lead",
|
|
205
205
|
style: "balanced",
|
|
206
206
|
skillProfileId: "strategist-lead",
|
|
207
207
|
identity: "Own technical direction, break ambiguous work into executable plans, and keep the squad aligned on delivery.",
|
|
@@ -209,59 +209,59 @@ const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
|
209
209
|
|
|
210
210
|
// Builders
|
|
211
211
|
"fullstack-engineer": {
|
|
212
|
-
name: "
|
|
213
|
-
|
|
212
|
+
name: "Kai",
|
|
213
|
+
role: "Senior Fullstack Engineer",
|
|
214
214
|
style: "balanced",
|
|
215
215
|
skillProfileId: "senior-builder",
|
|
216
216
|
identity: "Ship features end-to-end across frontend and backend with pragmatic tradeoffs and clean boundaries.",
|
|
217
217
|
extraSkills: NEXT_JS_FULL,
|
|
218
218
|
},
|
|
219
219
|
"backend-engineer": {
|
|
220
|
-
name: "
|
|
221
|
-
|
|
220
|
+
name: "Ravi",
|
|
221
|
+
role: "Senior Backend Engineer",
|
|
222
222
|
style: "specialist",
|
|
223
223
|
skillProfileId: "senior-builder",
|
|
224
224
|
identity: "Own backend contracts, data integrity, and safe delivery under real production constraints.",
|
|
225
225
|
},
|
|
226
226
|
"frontend-engineer": {
|
|
227
|
-
name: "
|
|
228
|
-
|
|
227
|
+
name: "Mira",
|
|
228
|
+
role: "Senior Frontend Engineer",
|
|
229
229
|
style: "balanced",
|
|
230
230
|
skillProfileId: "senior-builder",
|
|
231
231
|
identity: "Own product-facing UI quality, interaction design fidelity, and maintainable front-end architecture.",
|
|
232
232
|
extraSkills: NEXT_JS_FULL,
|
|
233
233
|
},
|
|
234
234
|
"data-engineer": {
|
|
235
|
-
name: "
|
|
236
|
-
|
|
235
|
+
name: "Nia",
|
|
236
|
+
role: "Data Engineer",
|
|
237
237
|
style: "specialist",
|
|
238
238
|
skillProfileId: "senior-builder",
|
|
239
239
|
identity: "Build reliable data pipelines, schemas, and transformations with a bias toward traceability.",
|
|
240
240
|
},
|
|
241
241
|
"ml-engineer": {
|
|
242
|
-
name: "
|
|
243
|
-
|
|
242
|
+
name: "Luca",
|
|
243
|
+
role: "ML Engineer",
|
|
244
244
|
style: "specialist",
|
|
245
245
|
skillProfileId: "senior-builder",
|
|
246
246
|
identity: "Ship model-backed systems pragmatically, with evaluation, rollback paths, and tight production feedback.",
|
|
247
247
|
},
|
|
248
248
|
"devops-engineer": {
|
|
249
|
-
name: "
|
|
250
|
-
|
|
249
|
+
name: "Juno",
|
|
250
|
+
role: "DevOps Engineer",
|
|
251
251
|
style: "specialist",
|
|
252
252
|
skillProfileId: "senior-builder",
|
|
253
253
|
identity: "Own delivery automation, deployment safety, and infrastructure changes that must fail predictably.",
|
|
254
254
|
},
|
|
255
255
|
"security-engineer": {
|
|
256
|
-
name: "
|
|
257
|
-
|
|
256
|
+
name: "Iris",
|
|
257
|
+
role: "Security Engineer",
|
|
258
258
|
style: "conservative",
|
|
259
259
|
skillProfileId: "senior-builder",
|
|
260
260
|
identity: "Harden trust boundaries, implement secure defaults, and turn vague risk into concrete engineering requirements.",
|
|
261
261
|
},
|
|
262
262
|
"ui-designer": {
|
|
263
|
-
name: "
|
|
264
|
-
|
|
263
|
+
name: "Theo",
|
|
264
|
+
role: "UI Designer",
|
|
265
265
|
style: "specialist",
|
|
266
266
|
skillProfileId: "builder",
|
|
267
267
|
identity: "Refine interfaces into consistent, high-signal UI systems that are practical to build and maintain.",
|
|
@@ -270,22 +270,22 @@ const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
|
270
270
|
|
|
271
271
|
// Quality & review
|
|
272
272
|
"qa-engineer": {
|
|
273
|
-
name: "
|
|
274
|
-
|
|
273
|
+
name: "Sana",
|
|
274
|
+
role: "QA Engineer",
|
|
275
275
|
style: "conservative",
|
|
276
276
|
skillProfileId: "reviewer",
|
|
277
277
|
identity: "Find regressions early, tighten acceptance boundaries, and force evidence before release claims.",
|
|
278
278
|
},
|
|
279
279
|
sre: {
|
|
280
|
-
name: "
|
|
281
|
-
|
|
280
|
+
name: "Dax",
|
|
281
|
+
role: "Site Reliability Engineer",
|
|
282
282
|
style: "conservative",
|
|
283
283
|
skillProfileId: "reviewer",
|
|
284
284
|
identity: "Guard uptime, incident readiness, and operational correctness by challenging risky assumptions early.",
|
|
285
285
|
},
|
|
286
286
|
"pen-tester": {
|
|
287
|
-
name: "
|
|
288
|
-
|
|
287
|
+
name: "Vega",
|
|
288
|
+
role: "Penetration Tester",
|
|
289
289
|
style: "specialist",
|
|
290
290
|
skillProfileId: "reviewer",
|
|
291
291
|
identity: "Probe the system as an adversary, find exploit paths, and make the attack surface legible to builders.",
|
|
@@ -293,50 +293,50 @@ const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
|
293
293
|
|
|
294
294
|
// Planning & research
|
|
295
295
|
"product-manager": {
|
|
296
|
-
name: "
|
|
297
|
-
|
|
296
|
+
name: "Sage",
|
|
297
|
+
role: "Product Manager",
|
|
298
298
|
style: "balanced",
|
|
299
299
|
skillProfileId: "planner",
|
|
300
300
|
identity: "Turn ambiguous requests into scoped bets, crisp plans, and explicit tradeoffs the team can execute.",
|
|
301
301
|
},
|
|
302
302
|
"ux-designer": {
|
|
303
|
-
name: "
|
|
304
|
-
|
|
303
|
+
name: "Yara",
|
|
304
|
+
role: "UX Designer",
|
|
305
305
|
style: "balanced",
|
|
306
306
|
skillProfileId: "planner",
|
|
307
307
|
identity: "Clarify user intent, reduce friction in flows, and turn product goals into coherent interaction design.",
|
|
308
308
|
},
|
|
309
309
|
"technical-writer": {
|
|
310
|
-
name: "
|
|
311
|
-
|
|
310
|
+
name: "Orin",
|
|
311
|
+
role: "Technical Writer",
|
|
312
312
|
style: "balanced",
|
|
313
313
|
skillProfileId: "planner",
|
|
314
314
|
identity: "Turn complex implementation detail into clear docs, rollout notes, and operational guidance.",
|
|
315
315
|
},
|
|
316
316
|
"growth-marketer": {
|
|
317
|
-
name: "
|
|
318
|
-
|
|
317
|
+
name: "Zed",
|
|
318
|
+
role: "Growth Marketer",
|
|
319
319
|
style: "balanced",
|
|
320
320
|
skillProfileId: "strategist-lead",
|
|
321
321
|
identity: "Design growth experiments with clear hypotheses, sequencing, and measurable outcomes.",
|
|
322
322
|
},
|
|
323
323
|
analyst: {
|
|
324
|
-
name: "
|
|
325
|
-
|
|
324
|
+
name: "Piper",
|
|
325
|
+
role: "Product Analyst",
|
|
326
326
|
style: "specialist",
|
|
327
327
|
skillProfileId: "researcher",
|
|
328
328
|
identity: "Ground decisions in evidence, identify gaps in the brief, and surface the signal behind user behavior.",
|
|
329
329
|
},
|
|
330
330
|
"content-writer": {
|
|
331
|
-
name: "
|
|
332
|
-
|
|
331
|
+
name: "Wren",
|
|
332
|
+
role: "Content Strategist",
|
|
333
333
|
style: "balanced",
|
|
334
334
|
skillProfileId: "researcher",
|
|
335
335
|
identity: "Translate product and audience insight into clear narratives, launch copy, and feedback loops.",
|
|
336
336
|
},
|
|
337
337
|
researcher: {
|
|
338
|
-
name: "
|
|
339
|
-
|
|
338
|
+
name: "Ezra",
|
|
339
|
+
role: "Researcher",
|
|
340
340
|
style: "balanced",
|
|
341
341
|
skillProfileId: "researcher",
|
|
342
342
|
identity: "Map fast-changing domains, synthesize evidence, and surface the governing model behind decisions.",
|
|
@@ -344,15 +344,15 @@ const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
|
344
344
|
|
|
345
345
|
// Marketing & comms
|
|
346
346
|
"marketing-strategist": {
|
|
347
|
-
name: "
|
|
348
|
-
|
|
347
|
+
name: "Finn",
|
|
348
|
+
role: "Marketing Strategist",
|
|
349
349
|
style: "balanced",
|
|
350
350
|
skillProfileId: "strategist-lead",
|
|
351
351
|
identity: "Own brand positioning, campaign strategy, and channel mix with measurable conversion targets.",
|
|
352
352
|
},
|
|
353
353
|
copywriter: {
|
|
354
|
-
name: "
|
|
355
|
-
|
|
354
|
+
name: "Blair",
|
|
355
|
+
role: "Copywriter",
|
|
356
356
|
style: "balanced",
|
|
357
357
|
skillProfileId: "researcher",
|
|
358
358
|
identity: "Craft clear, persuasive copy that serves both the reader and the business goal.",
|
|
@@ -360,15 +360,15 @@ const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
|
360
360
|
|
|
361
361
|
// Support
|
|
362
362
|
"support-engineer": {
|
|
363
|
-
name: "
|
|
364
|
-
|
|
363
|
+
name: "Gwen",
|
|
364
|
+
role: "Support Engineer",
|
|
365
365
|
style: "balanced",
|
|
366
366
|
skillProfileId: "builder",
|
|
367
367
|
identity: "Diagnose customer issues fast, escalate with precision, and turn patterns into preventive fixes.",
|
|
368
368
|
},
|
|
369
369
|
"support-lead": {
|
|
370
|
-
name: "
|
|
371
|
-
|
|
370
|
+
name: "Eli",
|
|
371
|
+
role: "Support Lead",
|
|
372
372
|
style: "balanced",
|
|
373
373
|
skillProfileId: "planner",
|
|
374
374
|
identity: "Triage incoming issues, route to the right responder, and track resolution quality.",
|
|
@@ -376,15 +376,15 @@ const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
|
376
376
|
|
|
377
377
|
// DevRel
|
|
378
378
|
"devrel-engineer": {
|
|
379
|
-
name: "
|
|
380
|
-
|
|
379
|
+
name: "Milo",
|
|
380
|
+
role: "Developer Relations Engineer",
|
|
381
381
|
style: "balanced",
|
|
382
382
|
skillProfileId: "senior-builder",
|
|
383
383
|
identity: "Build sample apps, integrations, and tooling that make the platform easy to adopt.",
|
|
384
384
|
},
|
|
385
385
|
"community-manager": {
|
|
386
|
-
name: "
|
|
387
|
-
|
|
386
|
+
name: "Uma",
|
|
387
|
+
role: "Community Manager",
|
|
388
388
|
style: "balanced",
|
|
389
389
|
skillProfileId: "planner",
|
|
390
390
|
identity: "Grow and engage the developer community through events, content, and feedback loops.",
|
|
@@ -392,15 +392,15 @@ const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
|
392
392
|
|
|
393
393
|
// Operations
|
|
394
394
|
"ops-engineer": {
|
|
395
|
-
name: "
|
|
396
|
-
|
|
395
|
+
name: "Nate",
|
|
396
|
+
role: "Operations Engineer",
|
|
397
397
|
style: "specialist",
|
|
398
398
|
skillProfileId: "senior-builder",
|
|
399
399
|
identity: "Automate operational workflows, reduce toil, and keep internal tooling reliable.",
|
|
400
400
|
},
|
|
401
401
|
"project-manager": {
|
|
402
|
-
name: "
|
|
403
|
-
|
|
402
|
+
name: "Quinn",
|
|
403
|
+
role: "Project Manager",
|
|
404
404
|
style: "balanced",
|
|
405
405
|
skillProfileId: "planner",
|
|
406
406
|
identity: "Track milestones, remove blockers, and keep cross-team delivery on schedule.",
|
|
@@ -408,15 +408,15 @@ const agentPresetsData: Record<AgentPresetId, Omit<AgentPreset, "id">> = {
|
|
|
408
408
|
|
|
409
409
|
// Additional engineering presets
|
|
410
410
|
"solutions-architect": {
|
|
411
|
-
name: "
|
|
412
|
-
|
|
411
|
+
name: "Cass",
|
|
412
|
+
role: "Solutions Architect",
|
|
413
413
|
style: "balanced",
|
|
414
414
|
skillProfileId: "strategist-lead",
|
|
415
415
|
identity: "Design system-level architectures, evaluate tradeoffs, and guide teams through technical decisions.",
|
|
416
416
|
},
|
|
417
417
|
"mobile-engineer": {
|
|
418
|
-
name: "
|
|
419
|
-
|
|
418
|
+
name: "Rio",
|
|
419
|
+
role: "Senior Mobile Engineer",
|
|
420
420
|
style: "balanced",
|
|
421
421
|
skillProfileId: "senior-builder",
|
|
422
422
|
identity: "Ship native and cross-platform mobile experiences with attention to performance and platform conventions.",
|
|
@@ -505,7 +505,7 @@ const teamTemplatesData: TeamTemplate[] = [
|
|
|
505
505
|
id: "growth",
|
|
506
506
|
name: "Growth",
|
|
507
507
|
description: "Experiment and content team for acquisition, activation, and learning loops.",
|
|
508
|
-
icon: "
|
|
508
|
+
icon: "trending-up",
|
|
509
509
|
agents: [preset("team-lead"), preset("growth-marketer"), preset("content-writer")],
|
|
510
510
|
},
|
|
511
511
|
{
|
|
@@ -311,7 +311,7 @@ CREATE TABLE IF NOT EXISTS agents (
|
|
|
311
311
|
model TEXT,
|
|
312
312
|
provider TEXT,
|
|
313
313
|
color TEXT,
|
|
314
|
-
|
|
314
|
+
role TEXT,
|
|
315
315
|
created_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now')),
|
|
316
316
|
updated_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now')),
|
|
317
317
|
CHECK (style IN ('degen', 'conservative', 'specialist', 'balanced'))
|
|
@@ -15,6 +15,11 @@
|
|
|
15
15
|
"source": "obra/superpowers",
|
|
16
16
|
"sourceType": "github",
|
|
17
17
|
"computedHash": "9b446f0c7fe1cfb560b1d34439523b1a76d5f177290007b2c053a1c749a4a8ba"
|
|
18
|
+
},
|
|
19
|
+
"writing-plans": {
|
|
20
|
+
"source": "obra/superpowers",
|
|
21
|
+
"sourceType": "github",
|
|
22
|
+
"computedHash": "bfaed11054ad8021c66860244e2d2e0d1eca483ae9f5fbfcb956e99c61f5c3d7"
|
|
18
23
|
}
|
|
19
24
|
}
|
|
20
25
|
}
|
|
@@ -315,8 +315,23 @@ export async function executeScheduleTick(
|
|
|
315
315
|
return { fired: false, graph, error: new Error('No schedule on graph') };
|
|
316
316
|
}
|
|
317
317
|
|
|
318
|
-
|
|
318
|
+
// Atomic claim: only proceed if tickInProgress is currently false
|
|
319
|
+
const claimed = store.claimScheduleTick(taskId);
|
|
320
|
+
if (!claimed) {
|
|
321
|
+
return { fired: false, graph, error: new Error('Tick already in progress') };
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
// Re-read graph after atomic claim (tickInProgress is now true in DB)
|
|
325
|
+
const claimedGraph = store.getGraph(taskId) ?? graph;
|
|
326
|
+
|
|
327
|
+
const tickResult = scheduleTickIfDue(claimedGraph);
|
|
319
328
|
if (!tickResult.tickFired) {
|
|
329
|
+
// Release the claim since we won't execute
|
|
330
|
+
const released = completeScheduleTick(claimedGraph);
|
|
331
|
+
store.updateGraphStructure(released.id, {
|
|
332
|
+
nodes: released.nodes,
|
|
333
|
+
schedule: released.schedule,
|
|
334
|
+
});
|
|
320
335
|
return { fired: false, graph: tickResult.graph };
|
|
321
336
|
}
|
|
322
337
|
|
|
@@ -330,6 +345,7 @@ export async function executeScheduleTick(
|
|
|
330
345
|
let currentGraph = tickResult.graph;
|
|
331
346
|
let loopCount = 0;
|
|
332
347
|
|
|
348
|
+
try {
|
|
333
349
|
while (true) {
|
|
334
350
|
loopCount++;
|
|
335
351
|
const nodesBefore = Object.entries(currentGraph.nodes).map(([id, n]) => `${id}:${n.status}`).join(', ');
|
|
@@ -392,4 +408,13 @@ export async function executeScheduleTick(
|
|
|
392
408
|
});
|
|
393
409
|
|
|
394
410
|
return { fired: true, graph: finalGraph };
|
|
411
|
+
} catch (err) {
|
|
412
|
+
// Release tickInProgress on failure to prevent stranding the lock
|
|
413
|
+
const released = completeScheduleTick(currentGraph);
|
|
414
|
+
store.updateGraphStructure(released.id, {
|
|
415
|
+
nodes: released.nodes,
|
|
416
|
+
schedule: released.schedule,
|
|
417
|
+
});
|
|
418
|
+
throw err;
|
|
419
|
+
}
|
|
395
420
|
}
|
|
@@ -601,6 +601,19 @@ export class GraphStore {
|
|
|
601
601
|
[graphId, event.eventType, toJson(event), event.timestamp],
|
|
602
602
|
);
|
|
603
603
|
}
|
|
604
|
+
|
|
605
|
+
claimScheduleTick(taskId: string): boolean {
|
|
606
|
+
const db = this.getDb();
|
|
607
|
+
const result = db.prepare(
|
|
608
|
+
`UPDATE execution_graphs
|
|
609
|
+
SET schedule = json_set(schedule, '$.tickInProgress', json('true')),
|
|
610
|
+
updated_at = strftime('%Y-%m-%dT%H:%M:%fZ','now')
|
|
611
|
+
WHERE task_id = ?
|
|
612
|
+
AND json_extract(schedule, '$.tickInProgress') = 0
|
|
613
|
+
AND json_extract(schedule, '$.state') = 'active'`,
|
|
614
|
+
).run(taskId);
|
|
615
|
+
return (result.changes ?? 0) > 0;
|
|
616
|
+
}
|
|
604
617
|
}
|
|
605
618
|
|
|
606
619
|
export function createGraphStore(): GraphStore {
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
const LINEAR_BOARD_PINS_STORAGE_PREFIX = "agx-linear:pinnedIssues";
|
|
2
|
+
|
|
3
|
+
function isStorageAvailable(): boolean {
|
|
4
|
+
return typeof window !== "undefined" && typeof window.localStorage !== "undefined";
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
function getStorageKey(projectSlug?: string | null): string {
|
|
8
|
+
const normalized = String(projectSlug ?? "").trim().toLowerCase();
|
|
9
|
+
return normalized
|
|
10
|
+
? `${LINEAR_BOARD_PINS_STORAGE_PREFIX}:${normalized}`
|
|
11
|
+
: `${LINEAR_BOARD_PINS_STORAGE_PREFIX}:global`;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export function loadPinnedIssueIds(projectSlug?: string | null): Set<string> {
|
|
15
|
+
if (!isStorageAvailable()) return new Set();
|
|
16
|
+
|
|
17
|
+
const raw = window.localStorage.getItem(getStorageKey(projectSlug));
|
|
18
|
+
if (!raw) return new Set();
|
|
19
|
+
|
|
20
|
+
try {
|
|
21
|
+
const parsed: unknown = JSON.parse(raw);
|
|
22
|
+
if (!Array.isArray(parsed)) return new Set();
|
|
23
|
+
return new Set(
|
|
24
|
+
parsed.filter((id): id is string => typeof id === "string" && id.length > 0)
|
|
25
|
+
);
|
|
26
|
+
} catch {
|
|
27
|
+
return new Set();
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function persistPinnedIssueIds(
|
|
32
|
+
projectSlug: string | null | undefined,
|
|
33
|
+
ids: Set<string>
|
|
34
|
+
): void {
|
|
35
|
+
if (!isStorageAvailable()) return;
|
|
36
|
+
|
|
37
|
+
try {
|
|
38
|
+
window.localStorage.setItem(
|
|
39
|
+
getStorageKey(projectSlug),
|
|
40
|
+
JSON.stringify([...ids])
|
|
41
|
+
);
|
|
42
|
+
} catch {
|
|
43
|
+
// ignore storage errors
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -61,13 +61,80 @@
|
|
|
61
61
|
transform: scale(1.08);
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
+
/* ──────────────────────────────────────────────
|
|
65
|
+
Collapsed icon rail
|
|
66
|
+
────────────────────────────────────────────── */
|
|
67
|
+
.workspace-sidebar__collapsed-rail {
|
|
68
|
+
display: flex;
|
|
69
|
+
flex-direction: column;
|
|
70
|
+
align-items: center;
|
|
71
|
+
gap: 0.25rem;
|
|
72
|
+
padding: 0.5rem 0;
|
|
73
|
+
flex: 1;
|
|
74
|
+
min-height: 0;
|
|
75
|
+
overflow-y: auto;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.workspace-sidebar__rail-icon {
|
|
79
|
+
display: flex;
|
|
80
|
+
align-items: center;
|
|
81
|
+
justify-content: center;
|
|
82
|
+
width: 2rem;
|
|
83
|
+
height: 2rem;
|
|
84
|
+
border-radius: 0.5rem;
|
|
85
|
+
border: none;
|
|
86
|
+
background: transparent;
|
|
87
|
+
color: var(--app-shell-muted);
|
|
88
|
+
cursor: pointer;
|
|
89
|
+
transition: background-color 0.15s ease, color 0.15s ease;
|
|
90
|
+
text-decoration: none;
|
|
91
|
+
flex-shrink: 0;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.workspace-sidebar__rail-icon:hover {
|
|
95
|
+
background: var(--app-shell-subtle);
|
|
96
|
+
color: var(--foreground);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.workspace-sidebar__rail-icon--active {
|
|
100
|
+
background: var(--app-shell-elevated);
|
|
101
|
+
color: var(--foreground);
|
|
102
|
+
box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06), 0 0 0 1px color-mix(in srgb, var(--primary) 28%, transparent);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/* ──────────────────────────────────────────────
|
|
106
|
+
Rail tooltip (portal-rendered, fixed position)
|
|
107
|
+
────────────────────────────────────────────── */
|
|
108
|
+
.workspace-sidebar__rail-tooltip {
|
|
109
|
+
position: fixed;
|
|
110
|
+
z-index: 9999;
|
|
111
|
+
background: var(--app-shell-elevated);
|
|
112
|
+
color: var(--foreground);
|
|
113
|
+
font-size: 0.75rem;
|
|
114
|
+
font-weight: 500;
|
|
115
|
+
white-space: nowrap;
|
|
116
|
+
padding: 0.3rem 0.5rem;
|
|
117
|
+
border-radius: 0.375rem;
|
|
118
|
+
border: 1px solid var(--app-shell-border);
|
|
119
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
|
120
|
+
pointer-events: none;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.workspace-sidebar__rail-separator {
|
|
124
|
+
width: 1.25rem;
|
|
125
|
+
height: 1px;
|
|
126
|
+
background: var(--app-shell-border);
|
|
127
|
+
margin: 0.25rem 0;
|
|
128
|
+
flex-shrink: 0;
|
|
129
|
+
}
|
|
130
|
+
|
|
64
131
|
|
|
65
132
|
/* ──────────────────────────────────────────────
|
|
66
133
|
Brand bar
|
|
67
134
|
────────────────────────────────────────────── */
|
|
68
135
|
.workspace-sidebar__brand {
|
|
69
|
-
|
|
70
|
-
|
|
136
|
+
padding: 0.61rem 0.75rem;
|
|
137
|
+
min-height: 49px;
|
|
71
138
|
box-sizing: border-box;
|
|
72
139
|
border-bottom: 1px solid var(--app-shell-border);
|
|
73
140
|
display: flex;
|
|
@@ -77,6 +144,8 @@
|
|
|
77
144
|
backdrop-filter: blur(12px);
|
|
78
145
|
}
|
|
79
146
|
|
|
147
|
+
.desktop-titlebar { max-height: 49px }
|
|
148
|
+
|
|
80
149
|
.workspace-sidebar__brand-content {
|
|
81
150
|
display: inline-flex;
|
|
82
151
|
align-items: center;
|
|
@@ -765,6 +765,7 @@ var init_boss = __esm({
|
|
|
765
765
|
var LOCAL_USER;
|
|
766
766
|
var init_auth_mode = __esm({
|
|
767
767
|
"apps/local/lib/auth-mode.ts"() {
|
|
768
|
+
"use strict";
|
|
768
769
|
LOCAL_USER = {
|
|
769
770
|
id: "2c3cc1ca-956d-4b62-b295-4d2d3374103f",
|
|
770
771
|
email: process.env.AGX_BOARD_USER_EMAIL || "local@agx.board",
|
|
@@ -1766,7 +1767,11 @@ function runMigrations(db2) {
|
|
|
1766
1767
|
if (!agentColNames.has("model")) db2.exec("ALTER TABLE agents ADD COLUMN model TEXT");
|
|
1767
1768
|
if (!agentColNames.has("provider")) db2.exec("ALTER TABLE agents ADD COLUMN provider TEXT");
|
|
1768
1769
|
if (!agentColNames.has("color")) db2.exec("ALTER TABLE agents ADD COLUMN color TEXT");
|
|
1769
|
-
if (
|
|
1770
|
+
if (agentColNames.has("title") && !agentColNames.has("role")) {
|
|
1771
|
+
db2.exec("ALTER TABLE agents RENAME COLUMN title TO role");
|
|
1772
|
+
} else if (!agentColNames.has("role")) {
|
|
1773
|
+
db2.exec("ALTER TABLE agents ADD COLUMN role TEXT");
|
|
1774
|
+
}
|
|
1770
1775
|
}
|
|
1771
1776
|
db2.exec(`
|
|
1772
1777
|
CREATE TABLE IF NOT EXISTS agent_skills (
|
|
@@ -8429,7 +8434,7 @@ async function createAgent(userId, input) {
|
|
|
8429
8434
|
description: input.description ?? null
|
|
8430
8435
|
};
|
|
8431
8436
|
if (input.id !== void 0) payload.id = input.id;
|
|
8432
|
-
if (input.
|
|
8437
|
+
if (input.role !== void 0) payload.role = input.role;
|
|
8433
8438
|
if (input.voice !== void 0) payload.voice = input.voice;
|
|
8434
8439
|
if (input.seed !== void 0) payload.seed = input.seed;
|
|
8435
8440
|
if (input.model !== void 0) payload.model = input.model;
|
|
@@ -8448,7 +8453,7 @@ async function updateAgent(id, userId, input) {
|
|
|
8448
8453
|
const db2 = createAdminDbClient();
|
|
8449
8454
|
const updatePayload = { updated_at: (/* @__PURE__ */ new Date()).toISOString() };
|
|
8450
8455
|
if (input.name !== void 0) updatePayload.name = input.name;
|
|
8451
|
-
if (input.
|
|
8456
|
+
if (input.role !== void 0) updatePayload.role = input.role;
|
|
8452
8457
|
if (input.style !== void 0) updatePayload.style = input.style;
|
|
8453
8458
|
if (input.description !== void 0) updatePayload.description = input.description;
|
|
8454
8459
|
if (input.voice !== void 0) updatePayload.voice = input.voice;
|
|
@@ -11104,6 +11109,39 @@ function getDb2() {
|
|
|
11104
11109
|
db2.exec("ALTER TABLE agent_processes ADD COLUMN response_message_id TEXT NOT NULL DEFAULT ''");
|
|
11105
11110
|
} catch {
|
|
11106
11111
|
}
|
|
11112
|
+
db2.exec(`
|
|
11113
|
+
CREATE TABLE IF NOT EXISTS messages (
|
|
11114
|
+
thread_id TEXT NOT NULL,
|
|
11115
|
+
id TEXT NOT NULL,
|
|
11116
|
+
role TEXT NOT NULL,
|
|
11117
|
+
participant_id TEXT,
|
|
11118
|
+
content TEXT NOT NULL,
|
|
11119
|
+
timestamp INTEGER NOT NULL,
|
|
11120
|
+
PRIMARY KEY (thread_id, id)
|
|
11121
|
+
)
|
|
11122
|
+
`);
|
|
11123
|
+
db2.exec(`
|
|
11124
|
+
CREATE TABLE IF NOT EXISTS linear_runs (
|
|
11125
|
+
id TEXT PRIMARY KEY,
|
|
11126
|
+
project_id TEXT,
|
|
11127
|
+
project_slug TEXT,
|
|
11128
|
+
issue_id TEXT NOT NULL,
|
|
11129
|
+
issue_identifier TEXT NOT NULL,
|
|
11130
|
+
issue_title TEXT NOT NULL,
|
|
11131
|
+
issue_status TEXT NOT NULL,
|
|
11132
|
+
issue_assignee TEXT,
|
|
11133
|
+
thread_id TEXT NOT NULL,
|
|
11134
|
+
root_message_id TEXT,
|
|
11135
|
+
chat_run_id TEXT,
|
|
11136
|
+
agent_id TEXT NOT NULL,
|
|
11137
|
+
agent_name TEXT NOT NULL,
|
|
11138
|
+
mode TEXT NOT NULL DEFAULT 'chat',
|
|
11139
|
+
status TEXT NOT NULL DEFAULT 'queued',
|
|
11140
|
+
error TEXT,
|
|
11141
|
+
created_at INTEGER NOT NULL,
|
|
11142
|
+
updated_at INTEGER NOT NULL
|
|
11143
|
+
)
|
|
11144
|
+
`);
|
|
11107
11145
|
return db2;
|
|
11108
11146
|
}
|
|
11109
11147
|
function withDb(fn) {
|
|
@@ -13192,6 +13230,7 @@ function resolveBoundSkillFiles(bindings, prompt, provider) {
|
|
|
13192
13230
|
var import_node_fs4;
|
|
13193
13231
|
var init_agent_skill_bindings = __esm({
|
|
13194
13232
|
"apps/local/lib/agent-skill-bindings.ts"() {
|
|
13233
|
+
"use strict";
|
|
13195
13234
|
import_node_fs4 = __toESM(require("node:fs"));
|
|
13196
13235
|
init_sqlite_query_adapter();
|
|
13197
13236
|
init_skills_library();
|
|
@@ -14258,7 +14297,7 @@ async function loadDbParticipants() {
|
|
|
14258
14297
|
return agents.map((agent) => ({
|
|
14259
14298
|
id: agent.id,
|
|
14260
14299
|
name: agent.name,
|
|
14261
|
-
...agent.
|
|
14300
|
+
...agent.role ? { role: agent.role } : {},
|
|
14262
14301
|
provider: agent.provider || "claude",
|
|
14263
14302
|
model: agent.model || null,
|
|
14264
14303
|
color: agent.color || "#6B7280",
|
|
@@ -23919,6 +23958,7 @@ function parseNaturalSchedule(input) {
|
|
|
23919
23958
|
var PATTERNS;
|
|
23920
23959
|
var init_nl_schedule = __esm({
|
|
23921
23960
|
"apps/local/src/graph/nl-schedule.ts"() {
|
|
23961
|
+
"use strict";
|
|
23922
23962
|
PATTERNS = [
|
|
23923
23963
|
// "every N seconds" → intervalMs only (sub-minute)
|
|
23924
23964
|
{
|
|
@@ -25719,6 +25759,18 @@ var init_store = __esm({
|
|
|
25719
25759
|
[graphId, event.eventType, toJson(event), event.timestamp]
|
|
25720
25760
|
);
|
|
25721
25761
|
}
|
|
25762
|
+
claimScheduleTick(taskId) {
|
|
25763
|
+
const db2 = this.getDb();
|
|
25764
|
+
const result = db2.prepare(
|
|
25765
|
+
`UPDATE execution_graphs
|
|
25766
|
+
SET schedule = json_set(schedule, '$.tickInProgress', json('true')),
|
|
25767
|
+
updated_at = strftime('%Y-%m-%dT%H:%M:%fZ','now')
|
|
25768
|
+
WHERE task_id = ?
|
|
25769
|
+
AND json_extract(schedule, '$.tickInProgress') = 0
|
|
25770
|
+
AND json_extract(schedule, '$.state') = 'active'`
|
|
25771
|
+
).run(taskId);
|
|
25772
|
+
return (result.changes ?? 0) > 0;
|
|
25773
|
+
}
|
|
25722
25774
|
};
|
|
25723
25775
|
defaultGraphStore = new GraphStore();
|
|
25724
25776
|
}
|