@mndrk/agx 2.4.10 → 2.4.11
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/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +7 -0
- package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +5 -5
- package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +47 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +2 -2
- 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/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- 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 +3 -3
- 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 +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +5 -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 +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +1 -1
- 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/chat-runs/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/active-agents/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/active-agents/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/issues/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/context/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/for-target/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/link/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/seed/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/repos/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/repos/sync/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/messages/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/messages/[id]/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/processes/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/processes/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 +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 +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 +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/system/db-status/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/system/db-status/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/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.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/api/trackers/[tracker]/active-agents/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.nft.json +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 +6 -4
- 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 +6 -4
- 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 +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_full.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_index.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.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/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/build-manifest.json +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/next-font-manifest.json +13 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/react-loadable-manifest.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +5 -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 +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +1 -1
- 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/setup/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +6 -4
- 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 +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +6 -4
- 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 +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +5 -3
- 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-paths-manifest.json +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__037eb67e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__97e7a600._.js → [root-of-the-server]__0ce28b4a._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2564bd1e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__26904897._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__f48224f7._.js → [root-of-the-server]__273384ad._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__bdc396a9._.js → [root-of-the-server]__2d6f22a3._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__af70f062._.js → [root-of-the-server]__3a038592._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__9cb1dc55._.js → [root-of-the-server]__3b27260f._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__1321970e._.js → [root-of-the-server]__5da8d281._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__92d34a52._.js → [root-of-the-server]__69a60d71._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__66437bd3._.js → [root-of-the-server]__6edb829d._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__870fac73._.js → [root-of-the-server]__8cb4fb94._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__95298612._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__aa1b171a._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__b719a2ed._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__94f42197._.js → [root-of-the-server]__be9b56bb._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c57c0958._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__cce177d8._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__e33b34ce._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__61c40dc9._.js → [root-of-the-server]__ee43b5b0._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_1d99e7a5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_56a2544c._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5843a1a1._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_git_diff_route_actions_5ed8f528.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_git_repos_route_actions_24bb70fb.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_git_workspaces_route_actions_2ffcb8e1.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_github_prs_[id]_route_actions_97f96f83.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_bd72806a._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_6bd3d8a2._.js +12 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_cli-runner_ts_ead5489c._.js +12 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_d268503a._.js +12 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_orchestrator_chat-processor_ts_46384f36._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_git_workspaces_refresh_route_actions_6586e386.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_git_workspaces_rescan_route_actions_2566b872.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__14448535._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__17c701d2._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__ce586680._.js → [root-of-the-server]__24007358._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__263b7091._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__2c4531d0._.js → [root-of-the-server]__6e4038bb._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__5f31e40b._.js → [root-of-the-server]__af9b12ac._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__c027b3e3._.js +15 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__9434d6d7._.js → [root-of-the-server]__c2331483._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d8f968ee._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_a0f42923._.js → _f2cf58ea._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_4d3f9c1e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_6d8c811a._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_72fb68e5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_setup_page_tsx_9a67cfaf._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_b87f08ce._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_c012eb07._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TrackerBoard_tsx_98970bab._.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_prs_review_6ac47c7c._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/ebff2__next-internal_server_app_projects_[slug]_prs_[prId]_page_actions_37d43e50.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +6 -0
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-build-manifest.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +93 -29
- package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +2 -2
- 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/16786eff1b844fce.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/38a2210cf8c5fa16.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/4f3bd9585037d960.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/60239e52ecfd3f7e.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{afad1102543847bf.js → 6135e7752be76b7e.js} +11 -11
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/731deba285de6535.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/7ca9570f1f269043.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/86c552479b09e1f3.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/8f6587b3b3255b54.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/a2eeffc281bd68bc.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/a68ffbf383609000.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b2c704fe1711d660.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b59bb2518194866e.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{72b4109642bf21f4.js → cb34ff86458b2477.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/dc12676eea40fd39.css +4 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/de6617e175bb536b.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{turbopack-87f23485587f08c3.js → turbopack-90109c6adbc88193.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/media/04c5164763c40239-s.690580e8.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/051742360c26797e-s.p.102b7f24.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/0ee4b8f05dcd9fee-s.45e2741a.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/13ae3e01af63c0ce-s.3ec27879.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/26f284dcc38c84c0-s.303a03d6.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/6a5386fd6038edbe-s.719084df.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/7e7f32a39836f228-s.0b4edfe7.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/9eba4caf7edd2921-s.57f6a4a3.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/ab57efd000576a30-s.p.37015d44.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/b8d1f0a88dfecec3-s.cf53ec14.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/f285987c35230861-s.b3721d2b.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/f6752bd2263820da-s.95b8f539.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/fa39153a3fc630ba-s.bff0868b.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/diff/route.ts +54 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/repos/route.ts +47 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/workspaces/refresh/route.ts +52 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/workspaces/rescan/route.ts +23 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/workspaces/route.ts +46 -0
- package/cloud-runtime/standalone/apps/local/app/api/github/prs/[id]/route.ts +28 -0
- package/cloud-runtime/standalone/apps/local/app/layout.tsx +14 -2
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/prs/[prId]/page.tsx +13 -0
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/prs/page.tsx +5 -4
- package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +27 -9
- package/cloud-runtime/standalone/apps/local/components/projects/RepoPathCombobox.tsx +301 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/AgentChip.tsx +61 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/CommitRail.tsx +149 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/DiffPane.tsx +294 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/FilesPane.tsx +216 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/PrReviewView.tsx +68 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/ReviewLayout.tsx +148 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/StatusBar.tsx +53 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/TopBar.tsx +137 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/review.module.css +112 -0
- package/cloud-runtime/standalone/apps/local/components/tracker/LinkedPrsSection.tsx +4 -3
- package/cloud-runtime/standalone/apps/local/components/tracker/TicketPanel.tsx +111 -25
- package/cloud-runtime/standalone/apps/local/components/tracker/TicketWorkspaceView.tsx +472 -0
- package/cloud-runtime/standalone/apps/local/components/tracker/WorkspacePicker.tsx +338 -0
- package/cloud-runtime/standalone/apps/local/hooks/useProviders.ts +1 -0
- package/cloud-runtime/standalone/apps/local/lib/cli-runner.ts +20 -0
- package/cloud-runtime/standalone/apps/local/lib/diff-parser.ts +56 -0
- package/cloud-runtime/standalone/apps/local/lib/gh-pr-cli.ts +198 -0
- package/cloud-runtime/standalone/apps/local/lib/git-diff-cli.ts +232 -0
- package/cloud-runtime/standalone/apps/local/lib/git-repo-index.ts +144 -0
- package/cloud-runtime/standalone/apps/local/lib/git-workspaces.ts +187 -0
- package/cloud-runtime/standalone/apps/local/lib/provider-clis.ts +12 -1
- package/cloud-runtime/standalone/apps/local/lib/repo-suggestions.ts +104 -0
- package/cloud-runtime/standalone/apps/local/lib/stream-multiplexer.ts +1 -0
- package/cloud-runtime/standalone/apps/local/lib/types.ts +1 -1
- package/cloud-runtime/standalone/apps/local/server.ts +14 -0
- package/cloud-runtime/standalone/apps/local/src/graph/work-dispatcher.ts +1 -0
- package/cloud-runtime/standalone/apps/local/state/windowState.ts +20 -0
- package/cloud-runtime/standalone/apps/local/worker/index.js +23 -4
- package/lib/cli/runCli.js +20 -4
- package/package.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__4ea9a658._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__6465e9c6._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__8ddbf4ca._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5187dece._.js +0 -15
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d08d7899._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e3a1fef0._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_16eaf7ae._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_620cb123._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/114ea1bfd6907330.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/2473c16c0c2f6b5f.css +0 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/2586c0baa16e9a0d.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/5709a6f7c5c182d6.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/67b36c70b72e0e10.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/6d8a7494a0cea7a0.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/aa3029ae0b62f930.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/c5436b2b7e8f0ca9.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/c8c0c4b13e08bb14.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/de56d09bb0de7dd5.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/e5fdfbbe9bae1f03.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/f007705fe5db26f1.js +0 -16
- /package/cloud-runtime/standalone/apps/local/.next/static/{x7w3oijN4B1r7IvTuL96T → 5TAcMQcrkt4mBnsqrfw6B}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{x7w3oijN4B1r7IvTuL96T → 5TAcMQcrkt4mBnsqrfw6B}/_clientMiddlewareManifest.json +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{x7w3oijN4B1r7IvTuL96T → 5TAcMQcrkt4mBnsqrfw6B}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import { execFile } from "node:child_process";
|
|
2
|
+
import { promisify } from "node:util";
|
|
3
|
+
|
|
4
|
+
const execFileP = promisify(execFile);
|
|
5
|
+
|
|
6
|
+
const MAX_BUFFER = 64 * 1024 * 1024;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Splits a single unified diff (output of `gh pr diff` or `git diff`) into per-file patches.
|
|
10
|
+
* Returns a map of `path` -> patch text starting at the first `@@` hunk header.
|
|
11
|
+
*/
|
|
12
|
+
export function splitUnifiedDiffByFile(diff: string): Map<string, string> {
|
|
13
|
+
const result = new Map<string, string>();
|
|
14
|
+
if (!diff) return result;
|
|
15
|
+
|
|
16
|
+
const lines = diff.split("\n");
|
|
17
|
+
let currentPath: string | null = null;
|
|
18
|
+
let buffer: string[] = [];
|
|
19
|
+
const flush = () => {
|
|
20
|
+
if (currentPath) {
|
|
21
|
+
const text = buffer.join("\n").trimEnd();
|
|
22
|
+
if (text.length > 0) result.set(currentPath, text);
|
|
23
|
+
}
|
|
24
|
+
buffer = [];
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
for (const line of lines) {
|
|
28
|
+
if (line.startsWith("diff --git ")) {
|
|
29
|
+
flush();
|
|
30
|
+
const m = line.match(/diff --git a\/(.+?) b\/(.+)$/);
|
|
31
|
+
currentPath = m ? m[2] : null;
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
if (!currentPath) continue;
|
|
35
|
+
if (
|
|
36
|
+
line.startsWith("index ") ||
|
|
37
|
+
line.startsWith("--- ") ||
|
|
38
|
+
line.startsWith("+++ ") ||
|
|
39
|
+
line.startsWith("new file mode") ||
|
|
40
|
+
line.startsWith("deleted file mode") ||
|
|
41
|
+
line.startsWith("similarity index") ||
|
|
42
|
+
line.startsWith("rename from") ||
|
|
43
|
+
line.startsWith("rename to") ||
|
|
44
|
+
line.startsWith("Binary files")
|
|
45
|
+
) {
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
buffer.push(line);
|
|
49
|
+
}
|
|
50
|
+
flush();
|
|
51
|
+
return result;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export interface GitFileChange {
|
|
55
|
+
path: string;
|
|
56
|
+
status: "added" | "modified" | "removed" | "renamed";
|
|
57
|
+
additions: number;
|
|
58
|
+
deletions: number;
|
|
59
|
+
patch: string | null;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export interface GitDiffResult {
|
|
63
|
+
files: GitFileChange[];
|
|
64
|
+
base: string;
|
|
65
|
+
ref: string; // branch name OR "WORKING_TREE"
|
|
66
|
+
headSha: string;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
function mapStatusLetter(letter: string): GitFileChange["status"] {
|
|
70
|
+
const c = letter.charAt(0).toUpperCase();
|
|
71
|
+
switch (c) {
|
|
72
|
+
case "A":
|
|
73
|
+
return "added";
|
|
74
|
+
case "D":
|
|
75
|
+
return "removed";
|
|
76
|
+
case "R":
|
|
77
|
+
return "renamed";
|
|
78
|
+
case "M":
|
|
79
|
+
return "modified";
|
|
80
|
+
default:
|
|
81
|
+
return "modified";
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
interface NumstatRow {
|
|
86
|
+
additions: number;
|
|
87
|
+
deletions: number;
|
|
88
|
+
path: string;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
function parseNumstat(stdout: string): NumstatRow[] {
|
|
92
|
+
const rows: NumstatRow[] = [];
|
|
93
|
+
const lines = stdout.split("\n");
|
|
94
|
+
for (const line of lines) {
|
|
95
|
+
if (!line) continue;
|
|
96
|
+
const parts = line.split("\t");
|
|
97
|
+
if (parts.length < 3) continue;
|
|
98
|
+
const addRaw = parts[0];
|
|
99
|
+
const delRaw = parts[1];
|
|
100
|
+
// Path may be in parts[2], or for renames it could be a `{old => new}` form,
|
|
101
|
+
// or there may be additional path columns (parts[3] = new path).
|
|
102
|
+
let path: string;
|
|
103
|
+
if (parts.length >= 4 && parts[2] && parts[3]) {
|
|
104
|
+
// Rename form: `-\t-\told\tnew` or `1\t2\told\tnew`
|
|
105
|
+
path = parts[3];
|
|
106
|
+
} else {
|
|
107
|
+
const raw = parts[2];
|
|
108
|
+
const braceMatch = raw.match(/^(.*)\{([^{}]*)\s*=>\s*([^{}]*)\}(.*)$/);
|
|
109
|
+
if (braceMatch) {
|
|
110
|
+
const prefix = braceMatch[1];
|
|
111
|
+
const newMid = braceMatch[3].trim();
|
|
112
|
+
const suffix = braceMatch[4];
|
|
113
|
+
path = `${prefix}${newMid}${suffix}`.replace(/\/\//g, "/");
|
|
114
|
+
} else {
|
|
115
|
+
path = raw;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
const additions = addRaw === "-" ? 0 : Number.parseInt(addRaw, 10) || 0;
|
|
119
|
+
const deletions = delRaw === "-" ? 0 : Number.parseInt(delRaw, 10) || 0;
|
|
120
|
+
rows.push({ additions, deletions, path });
|
|
121
|
+
}
|
|
122
|
+
return rows;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
interface NameStatusRow {
|
|
126
|
+
status: GitFileChange["status"];
|
|
127
|
+
path: string;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
function parseNameStatus(stdout: string): NameStatusRow[] {
|
|
131
|
+
const rows: NameStatusRow[] = [];
|
|
132
|
+
const lines = stdout.split("\n");
|
|
133
|
+
for (const line of lines) {
|
|
134
|
+
if (!line) continue;
|
|
135
|
+
const parts = line.split("\t");
|
|
136
|
+
if (parts.length < 2) continue;
|
|
137
|
+
const letter = parts[0];
|
|
138
|
+
const status = mapStatusLetter(letter);
|
|
139
|
+
// Renames: R100\told\tnew -- pull the new path
|
|
140
|
+
let path: string;
|
|
141
|
+
if (status === "renamed" && parts.length >= 3) {
|
|
142
|
+
path = parts[2];
|
|
143
|
+
} else {
|
|
144
|
+
path = parts[parts.length - 1];
|
|
145
|
+
}
|
|
146
|
+
rows.push({ status, path });
|
|
147
|
+
}
|
|
148
|
+
return rows;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
async function runGit(repoPath: string, args: string[], opts?: { maxBuffer?: number }): Promise<string> {
|
|
152
|
+
const fullArgs = ["-C", repoPath, ...args];
|
|
153
|
+
const { stdout } = await execFileP("git", fullArgs, {
|
|
154
|
+
maxBuffer: opts?.maxBuffer ?? MAX_BUFFER,
|
|
155
|
+
});
|
|
156
|
+
return stdout;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
async function buildResult(args: {
|
|
160
|
+
repoPath: string;
|
|
161
|
+
base: string;
|
|
162
|
+
ref: string;
|
|
163
|
+
numstatArgs: string[];
|
|
164
|
+
nameStatusArgs: string[];
|
|
165
|
+
patchArgs: string[];
|
|
166
|
+
headRevParseArg: string;
|
|
167
|
+
}): Promise<GitDiffResult> {
|
|
168
|
+
const [numstatOut, nameStatusOut, patchOut, headShaRaw] = await Promise.all([
|
|
169
|
+
runGit(args.repoPath, args.numstatArgs),
|
|
170
|
+
runGit(args.repoPath, args.nameStatusArgs),
|
|
171
|
+
runGit(args.repoPath, args.patchArgs),
|
|
172
|
+
runGit(args.repoPath, ["rev-parse", args.headRevParseArg]),
|
|
173
|
+
]);
|
|
174
|
+
|
|
175
|
+
const numstat = parseNumstat(numstatOut);
|
|
176
|
+
const nameStatus = parseNameStatus(nameStatusOut);
|
|
177
|
+
const patches = splitUnifiedDiffByFile(patchOut);
|
|
178
|
+
|
|
179
|
+
// Join by path. Use nameStatus order as canonical.
|
|
180
|
+
const numByPath = new Map<string, NumstatRow>();
|
|
181
|
+
for (const row of numstat) numByPath.set(row.path, row);
|
|
182
|
+
|
|
183
|
+
const files: GitFileChange[] = nameStatus.map((row) => {
|
|
184
|
+
const num = numByPath.get(row.path);
|
|
185
|
+
return {
|
|
186
|
+
path: row.path,
|
|
187
|
+
status: row.status,
|
|
188
|
+
additions: num?.additions ?? 0,
|
|
189
|
+
deletions: num?.deletions ?? 0,
|
|
190
|
+
patch: patches.get(row.path) ?? null,
|
|
191
|
+
};
|
|
192
|
+
});
|
|
193
|
+
|
|
194
|
+
return {
|
|
195
|
+
files,
|
|
196
|
+
base: args.base,
|
|
197
|
+
ref: args.ref,
|
|
198
|
+
headSha: headShaRaw.trim(),
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
export async function diffBranch(args: {
|
|
203
|
+
repoPath: string;
|
|
204
|
+
base: string;
|
|
205
|
+
ref: string;
|
|
206
|
+
}): Promise<GitDiffResult> {
|
|
207
|
+
const range = `${args.base}...${args.ref}`;
|
|
208
|
+
return buildResult({
|
|
209
|
+
repoPath: args.repoPath,
|
|
210
|
+
base: args.base,
|
|
211
|
+
ref: args.ref,
|
|
212
|
+
numstatArgs: ["diff", "--numstat", range],
|
|
213
|
+
nameStatusArgs: ["diff", "--name-status", range],
|
|
214
|
+
patchArgs: ["diff", range],
|
|
215
|
+
headRevParseArg: args.ref,
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
export async function diffWorkingTree(args: {
|
|
220
|
+
repoPath: string;
|
|
221
|
+
base: string;
|
|
222
|
+
}): Promise<GitDiffResult> {
|
|
223
|
+
return buildResult({
|
|
224
|
+
repoPath: args.repoPath,
|
|
225
|
+
base: args.base,
|
|
226
|
+
ref: "WORKING_TREE",
|
|
227
|
+
numstatArgs: ["diff", "--numstat", args.base],
|
|
228
|
+
nameStatusArgs: ["diff", "--name-status", args.base],
|
|
229
|
+
patchArgs: ["diff", args.base],
|
|
230
|
+
headRevParseArg: "HEAD",
|
|
231
|
+
});
|
|
232
|
+
}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import * as fs from "fs/promises";
|
|
2
|
+
import * as os from "os";
|
|
3
|
+
import * as path from "path";
|
|
4
|
+
|
|
5
|
+
export interface RepoIndexEntry {
|
|
6
|
+
path: string;
|
|
7
|
+
discoveredAt: number;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface RepoIndex {
|
|
11
|
+
entries: RepoIndexEntry[];
|
|
12
|
+
scannedAt: number;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export const REPO_INDEX_PATH: string = path.join(
|
|
16
|
+
process.env.HOME || os.homedir(),
|
|
17
|
+
".config",
|
|
18
|
+
"agx",
|
|
19
|
+
"git-index.json",
|
|
20
|
+
);
|
|
21
|
+
|
|
22
|
+
const PRUNE_NAMES = new Set<string>([
|
|
23
|
+
"node_modules",
|
|
24
|
+
".next",
|
|
25
|
+
"dist",
|
|
26
|
+
"build",
|
|
27
|
+
".cache",
|
|
28
|
+
"Library",
|
|
29
|
+
".Trash",
|
|
30
|
+
".git",
|
|
31
|
+
".npm",
|
|
32
|
+
".cargo",
|
|
33
|
+
".rustup",
|
|
34
|
+
".pyenv",
|
|
35
|
+
".nvm",
|
|
36
|
+
]);
|
|
37
|
+
|
|
38
|
+
function shouldPrune(name: string): boolean {
|
|
39
|
+
if (PRUNE_NAMES.has(name)) return true;
|
|
40
|
+
if (name.startsWith(".") && name !== ".config") return true;
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
async function isRepo(dir: string): Promise<boolean> {
|
|
45
|
+
try {
|
|
46
|
+
const st = await fs.stat(path.join(dir, ".git"));
|
|
47
|
+
return st.isDirectory() || st.isFile();
|
|
48
|
+
} catch {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export async function loadRepoIndex(): Promise<RepoIndex | null> {
|
|
54
|
+
try {
|
|
55
|
+
const raw = await fs.readFile(REPO_INDEX_PATH, "utf8");
|
|
56
|
+
const parsed = JSON.parse(raw) as RepoIndex;
|
|
57
|
+
if (
|
|
58
|
+
!parsed ||
|
|
59
|
+
typeof parsed !== "object" ||
|
|
60
|
+
!Array.isArray(parsed.entries) ||
|
|
61
|
+
typeof parsed.scannedAt !== "number"
|
|
62
|
+
) {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
return parsed;
|
|
66
|
+
} catch {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export async function saveRepoIndex(idx: RepoIndex): Promise<void> {
|
|
72
|
+
await fs.mkdir(path.dirname(REPO_INDEX_PATH), { recursive: true });
|
|
73
|
+
const tmp = `${REPO_INDEX_PATH}.tmp`;
|
|
74
|
+
await fs.writeFile(tmp, JSON.stringify(idx));
|
|
75
|
+
await fs.rename(tmp, REPO_INDEX_PATH);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export const RESCAN_TTL_MS = 24 * 60 * 60 * 1000;
|
|
79
|
+
|
|
80
|
+
let scanning: Promise<RepoIndex> | null = null;
|
|
81
|
+
|
|
82
|
+
export function isScanning(): boolean {
|
|
83
|
+
return scanning !== null;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export async function ensureFreshRepoIndex(opts?: {
|
|
87
|
+
ttlMs?: number;
|
|
88
|
+
scanner?: () => Promise<RepoIndex>;
|
|
89
|
+
}): Promise<{ index: RepoIndex | null; scanning: boolean }> {
|
|
90
|
+
const ttlMs = opts?.ttlMs ?? RESCAN_TTL_MS;
|
|
91
|
+
const scanner = opts?.scanner ?? (() => scanForRepos());
|
|
92
|
+
const index = await loadRepoIndex();
|
|
93
|
+
const isStale = !index || Date.now() - index.scannedAt > ttlMs;
|
|
94
|
+
|
|
95
|
+
if (isStale && !scanning) {
|
|
96
|
+
const p = (async () => {
|
|
97
|
+
try {
|
|
98
|
+
const fresh = await scanner();
|
|
99
|
+
await saveRepoIndex(fresh);
|
|
100
|
+
return fresh;
|
|
101
|
+
} finally {
|
|
102
|
+
scanning = null;
|
|
103
|
+
}
|
|
104
|
+
})();
|
|
105
|
+
scanning = p;
|
|
106
|
+
p.catch((err) => {
|
|
107
|
+
console.error("Background repo index scan failed:", err);
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
return { index, scanning: scanning !== null };
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export async function scanForRepos(opts?: {
|
|
115
|
+
root?: string;
|
|
116
|
+
maxDepth?: number;
|
|
117
|
+
}): Promise<RepoIndex> {
|
|
118
|
+
const root = opts?.root ?? os.homedir();
|
|
119
|
+
const maxDepth = opts?.maxDepth ?? 5;
|
|
120
|
+
const entries: RepoIndexEntry[] = [];
|
|
121
|
+
|
|
122
|
+
async function walk(dir: string, depth: number): Promise<void> {
|
|
123
|
+
if (depth > maxDepth) return;
|
|
124
|
+
if (await isRepo(dir)) {
|
|
125
|
+
entries.push({ path: dir, discoveredAt: Date.now() });
|
|
126
|
+
return; // do not descend into a repo
|
|
127
|
+
}
|
|
128
|
+
if (depth === maxDepth) return;
|
|
129
|
+
let dirents;
|
|
130
|
+
try {
|
|
131
|
+
dirents = await fs.readdir(dir, { withFileTypes: true });
|
|
132
|
+
} catch {
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
for (const d of dirents) {
|
|
136
|
+
if (!d.isDirectory()) continue;
|
|
137
|
+
if (shouldPrune(d.name)) continue;
|
|
138
|
+
await walk(path.join(dir, d.name), depth + 1);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
await walk(root, 0);
|
|
143
|
+
return { entries, scannedAt: Date.now() };
|
|
144
|
+
}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { execFile } from "node:child_process";
|
|
2
|
+
import { promisify } from "node:util";
|
|
3
|
+
import * as path from "node:path";
|
|
4
|
+
|
|
5
|
+
const execFileP = promisify(execFile);
|
|
6
|
+
|
|
7
|
+
export interface GitWorkspace {
|
|
8
|
+
repoPath: string;
|
|
9
|
+
kind: "worktree" | "branch";
|
|
10
|
+
path?: string;
|
|
11
|
+
branch: string;
|
|
12
|
+
isCheckedOut: boolean;
|
|
13
|
+
isCurrent: boolean;
|
|
14
|
+
defaultBranch: string | null;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const RESULT_LIMIT = 200;
|
|
18
|
+
|
|
19
|
+
export async function getDefaultBranch(repoPath: string): Promise<string | null> {
|
|
20
|
+
try {
|
|
21
|
+
const { stdout } = await execFileP("git", [
|
|
22
|
+
"-C",
|
|
23
|
+
repoPath,
|
|
24
|
+
"symbolic-ref",
|
|
25
|
+
"refs/remotes/origin/HEAD",
|
|
26
|
+
]);
|
|
27
|
+
const ref = stdout.trim();
|
|
28
|
+
// expected: refs/remotes/origin/<branch>
|
|
29
|
+
const m = ref.match(/^refs\/remotes\/origin\/(.+)$/);
|
|
30
|
+
if (m) return m[1];
|
|
31
|
+
// Fallback: strip "origin/" prefix if present
|
|
32
|
+
if (ref.startsWith("origin/")) return ref.slice("origin/".length);
|
|
33
|
+
return ref || null;
|
|
34
|
+
} catch {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
interface WorktreeEntry {
|
|
40
|
+
path: string;
|
|
41
|
+
branch: string; // empty when detached
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function parseWorktreeList(stdout: string): WorktreeEntry[] {
|
|
45
|
+
const entries: WorktreeEntry[] = [];
|
|
46
|
+
const blocks = stdout.split(/\n\s*\n/);
|
|
47
|
+
for (const block of blocks) {
|
|
48
|
+
const lines = block.split("\n").map((l) => l.trim()).filter(Boolean);
|
|
49
|
+
if (lines.length === 0) continue;
|
|
50
|
+
let wtPath = "";
|
|
51
|
+
let branch = "";
|
|
52
|
+
for (const line of lines) {
|
|
53
|
+
if (line.startsWith("worktree ")) wtPath = line.slice("worktree ".length).trim();
|
|
54
|
+
else if (line.startsWith("branch ")) {
|
|
55
|
+
const ref = line.slice("branch ".length).trim();
|
|
56
|
+
branch = ref.startsWith("refs/heads/") ? ref.slice("refs/heads/".length) : ref;
|
|
57
|
+
}
|
|
58
|
+
// "detached" => no branch; leave empty
|
|
59
|
+
}
|
|
60
|
+
if (wtPath) entries.push({ path: wtPath, branch });
|
|
61
|
+
}
|
|
62
|
+
return entries;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
interface BranchEntry {
|
|
66
|
+
name: string;
|
|
67
|
+
isCurrent: boolean;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
function parseBranchList(stdout: string): BranchEntry[] {
|
|
71
|
+
const out: BranchEntry[] = [];
|
|
72
|
+
const lines = stdout.split("\n");
|
|
73
|
+
for (const raw of lines) {
|
|
74
|
+
if (!raw) continue;
|
|
75
|
+
const [name, head] = raw.split("\t");
|
|
76
|
+
if (!name) continue;
|
|
77
|
+
// Skip remote HEAD aliases like "origin/HEAD -> origin/main"
|
|
78
|
+
if (name.includes(" -> ")) continue;
|
|
79
|
+
out.push({ name, isCurrent: head === "*" });
|
|
80
|
+
}
|
|
81
|
+
return out;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
async function collectFromRepo(
|
|
85
|
+
repoPath: string,
|
|
86
|
+
ticketIdLower: string,
|
|
87
|
+
defaultBranch: string | null,
|
|
88
|
+
): Promise<GitWorkspace[]> {
|
|
89
|
+
let worktreeStdout: string;
|
|
90
|
+
let branchStdout: string;
|
|
91
|
+
try {
|
|
92
|
+
const wt = await execFileP("git", [
|
|
93
|
+
"-C",
|
|
94
|
+
repoPath,
|
|
95
|
+
"worktree",
|
|
96
|
+
"list",
|
|
97
|
+
"--porcelain",
|
|
98
|
+
]);
|
|
99
|
+
worktreeStdout = wt.stdout;
|
|
100
|
+
const br = await execFileP("git", [
|
|
101
|
+
"-C",
|
|
102
|
+
repoPath,
|
|
103
|
+
"branch",
|
|
104
|
+
"--all",
|
|
105
|
+
"--format=%(refname:short)\t%(HEAD)",
|
|
106
|
+
]);
|
|
107
|
+
branchStdout = br.stdout;
|
|
108
|
+
} catch {
|
|
109
|
+
return [];
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
const worktrees = parseWorktreeList(worktreeStdout);
|
|
113
|
+
const branches = parseBranchList(branchStdout);
|
|
114
|
+
|
|
115
|
+
// Set of branches that are currently checked out by some worktree.
|
|
116
|
+
const checkedOutBranches = new Set<string>();
|
|
117
|
+
for (const w of worktrees) {
|
|
118
|
+
if (w.branch) checkedOutBranches.add(w.branch);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
const results: GitWorkspace[] = [];
|
|
122
|
+
const emittedWorktreeBranches = new Set<string>();
|
|
123
|
+
|
|
124
|
+
// Worktree rows first
|
|
125
|
+
for (const w of worktrees) {
|
|
126
|
+
const basename = path.basename(w.path);
|
|
127
|
+
const matchesBranch = w.branch.toLowerCase().includes(ticketIdLower);
|
|
128
|
+
const matchesPath = basename.toLowerCase().includes(ticketIdLower);
|
|
129
|
+
if (!matchesBranch && !matchesPath) continue;
|
|
130
|
+
results.push({
|
|
131
|
+
repoPath,
|
|
132
|
+
kind: "worktree",
|
|
133
|
+
path: w.path,
|
|
134
|
+
branch: w.branch,
|
|
135
|
+
isCheckedOut: true,
|
|
136
|
+
isCurrent: w.path === repoPath,
|
|
137
|
+
defaultBranch,
|
|
138
|
+
});
|
|
139
|
+
if (w.branch) emittedWorktreeBranches.add(w.branch);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// Branch rows (excluding ones already emitted as a worktree)
|
|
143
|
+
for (const b of branches) {
|
|
144
|
+
if (emittedWorktreeBranches.has(b.name)) continue;
|
|
145
|
+
if (!b.name.toLowerCase().includes(ticketIdLower)) continue;
|
|
146
|
+
results.push({
|
|
147
|
+
repoPath,
|
|
148
|
+
kind: "branch",
|
|
149
|
+
branch: b.name,
|
|
150
|
+
isCheckedOut: checkedOutBranches.has(b.name),
|
|
151
|
+
isCurrent: false,
|
|
152
|
+
defaultBranch,
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
return results;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export async function listMatchingWorkspaces(args: {
|
|
160
|
+
repoPaths: string[];
|
|
161
|
+
ticketId: string;
|
|
162
|
+
}): Promise<GitWorkspace[]> {
|
|
163
|
+
const ticketIdLower = args.ticketId.toLowerCase();
|
|
164
|
+
if (!ticketIdLower) return [];
|
|
165
|
+
|
|
166
|
+
const out: GitWorkspace[] = [];
|
|
167
|
+
for (const repoPath of args.repoPaths) {
|
|
168
|
+
if (out.length >= RESULT_LIMIT) break;
|
|
169
|
+
let defaultBranch: string | null = null;
|
|
170
|
+
try {
|
|
171
|
+
defaultBranch = await getDefaultBranch(repoPath);
|
|
172
|
+
} catch {
|
|
173
|
+
defaultBranch = null;
|
|
174
|
+
}
|
|
175
|
+
let entries: GitWorkspace[];
|
|
176
|
+
try {
|
|
177
|
+
entries = await collectFromRepo(repoPath, ticketIdLower, defaultBranch);
|
|
178
|
+
} catch {
|
|
179
|
+
continue;
|
|
180
|
+
}
|
|
181
|
+
for (const e of entries) {
|
|
182
|
+
if (out.length >= RESULT_LIMIT) break;
|
|
183
|
+
out.push(e);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return out;
|
|
187
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type ProviderId = "claude" | "gemini" | "ollama" | "codex" | "zai";
|
|
1
|
+
export type ProviderId = "claude" | "gemini" | "ollama" | "codex" | "zai" | "kimi";
|
|
2
2
|
|
|
3
3
|
export interface ProviderCliDefinition {
|
|
4
4
|
id: ProviderId;
|
|
@@ -65,6 +65,17 @@ export const PROVIDER_CLIS: ProviderCliDefinition[] = [
|
|
|
65
65
|
statusLabel: "Installed",
|
|
66
66
|
authCheck: { cmd: "ollama list 2>/dev/null", timeout: 5_000 },
|
|
67
67
|
},
|
|
68
|
+
{
|
|
69
|
+
id: "kimi",
|
|
70
|
+
label: "Kimi Code",
|
|
71
|
+
bin: "kimi",
|
|
72
|
+
description: "Moonshot's Kimi Code CLI.",
|
|
73
|
+
installCmd: "npm install -g @moonshot/kimi-code",
|
|
74
|
+
docsUrl: "https://www.kimi.com/code/docs/en/kimi-code-cli/core-operations.html",
|
|
75
|
+
statusLabel: "Installed",
|
|
76
|
+
authCheck: { cmd: "kimi --version 2>/dev/null", timeout: 5_000 },
|
|
77
|
+
authCmd: { cmd: "kimi", description: "Opens Kimi login flow" },
|
|
78
|
+
},
|
|
68
79
|
{
|
|
69
80
|
id: "zai",
|
|
70
81
|
label: "Z.AI",
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import * as path from "path";
|
|
2
|
+
|
|
3
|
+
export type SuggestionMatch = "basename" | "segment" | "none";
|
|
4
|
+
|
|
5
|
+
export interface SuggestedRepo {
|
|
6
|
+
path: string;
|
|
7
|
+
basename: string;
|
|
8
|
+
matchedOn: SuggestionMatch;
|
|
9
|
+
hasGit: true;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function normalize(value: string | null | undefined): string {
|
|
13
|
+
return (value ?? "").trim().toLowerCase();
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Score a single repo path against the project slug/name.
|
|
18
|
+
*
|
|
19
|
+
* Returns:
|
|
20
|
+
* { matchedOn: "basename", score: 3 } when basename equals slug or name (case-insensitive)
|
|
21
|
+
* { matchedOn: "segment", score: 2 } when basename includes either as substring
|
|
22
|
+
* { matchedOn: "segment", score: 1 } when any other path segment includes either
|
|
23
|
+
* null when no match (and at least one term provided)
|
|
24
|
+
*
|
|
25
|
+
* If neither slug nor name is provided, returns { matchedOn: "none", score: 0 } so
|
|
26
|
+
* the caller can include all repos.
|
|
27
|
+
*/
|
|
28
|
+
export function scoreRepoMatch(
|
|
29
|
+
repoPath: string,
|
|
30
|
+
projectSlug?: string | null,
|
|
31
|
+
projectName?: string | null,
|
|
32
|
+
): { matchedOn: SuggestionMatch; score: number } | null {
|
|
33
|
+
const slug = normalize(projectSlug);
|
|
34
|
+
const name = normalize(projectName);
|
|
35
|
+
const terms = [slug, name].filter((t) => t.length > 0);
|
|
36
|
+
|
|
37
|
+
if (terms.length === 0) {
|
|
38
|
+
return { matchedOn: "none", score: 0 };
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
const segments = repoPath.split(path.sep).filter((s) => s.length > 0);
|
|
42
|
+
const basename = segments.length > 0 ? segments[segments.length - 1] : "";
|
|
43
|
+
const basenameLower = basename.toLowerCase();
|
|
44
|
+
|
|
45
|
+
// Exact basename match wins
|
|
46
|
+
if (terms.some((t) => basenameLower === t)) {
|
|
47
|
+
return { matchedOn: "basename", score: 3 };
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// Substring match on basename
|
|
51
|
+
if (terms.some((t) => basenameLower.includes(t))) {
|
|
52
|
+
return { matchedOn: "segment", score: 2 };
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// Substring match on any other segment
|
|
56
|
+
const otherSegments = segments.slice(0, -1).map((s) => s.toLowerCase());
|
|
57
|
+
if (otherSegments.some((seg) => terms.some((t) => seg.includes(t)))) {
|
|
58
|
+
return { matchedOn: "segment", score: 1 };
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Filter, score, and sort indexed repo paths against a project slug / name.
|
|
66
|
+
* Tie-breaks higher scores first; on ties, shorter paths first; then lexicographic.
|
|
67
|
+
*/
|
|
68
|
+
export function suggestRepos(
|
|
69
|
+
repoPaths: readonly string[],
|
|
70
|
+
opts: { projectSlug?: string | null; projectName?: string | null; limit?: number } = {},
|
|
71
|
+
): SuggestedRepo[] {
|
|
72
|
+
const { projectSlug, projectName, limit } = opts;
|
|
73
|
+
|
|
74
|
+
const scored: Array<{ repo: SuggestedRepo; score: number }> = [];
|
|
75
|
+
for (const repoPath of repoPaths) {
|
|
76
|
+
const result = scoreRepoMatch(repoPath, projectSlug, projectName);
|
|
77
|
+
if (!result) continue;
|
|
78
|
+
const segments = repoPath.split(path.sep).filter((s) => s.length > 0);
|
|
79
|
+
const basename = segments.length > 0 ? segments[segments.length - 1] : repoPath;
|
|
80
|
+
scored.push({
|
|
81
|
+
repo: {
|
|
82
|
+
path: repoPath,
|
|
83
|
+
basename,
|
|
84
|
+
matchedOn: result.matchedOn,
|
|
85
|
+
hasGit: true,
|
|
86
|
+
},
|
|
87
|
+
score: result.score,
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
scored.sort((a, b) => {
|
|
92
|
+
if (a.score !== b.score) return b.score - a.score;
|
|
93
|
+
if (a.repo.path.length !== b.repo.path.length) {
|
|
94
|
+
return a.repo.path.length - b.repo.path.length;
|
|
95
|
+
}
|
|
96
|
+
return a.repo.path.localeCompare(b.repo.path);
|
|
97
|
+
});
|
|
98
|
+
|
|
99
|
+
const out = scored.map((s) => s.repo);
|
|
100
|
+
if (typeof limit === "number" && limit >= 0) {
|
|
101
|
+
return out.slice(0, limit);
|
|
102
|
+
}
|
|
103
|
+
return out;
|
|
104
|
+
}
|
|
@@ -44,6 +44,7 @@ function buildFilesystemAccessContext(p: Participant): string | null {
|
|
|
44
44
|
case "codex":
|
|
45
45
|
case "gemini":
|
|
46
46
|
case "zai":
|
|
47
|
+
case "kimi":
|
|
47
48
|
return `<filesystem-access>
|
|
48
49
|
Current CLI access includes the project working directory and ${homeDir}.
|
|
49
50
|
Treat ~/.agx as accessible from this chat because it lives under ${homeDir}.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ThreadStatus } from "./storage/thread-adapter";
|
|
2
2
|
|
|
3
|
-
export type ChatProvider = "claude" | "gemini" | "ollama" | "codex" | "zai";
|
|
3
|
+
export type ChatProvider = "claude" | "gemini" | "ollama" | "codex" | "zai" | "kimi";
|
|
4
4
|
|
|
5
5
|
export interface Conversation {
|
|
6
6
|
id: string;
|