commandmate 0.29.1 → 0.29.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +458 -414
- package/.next/app-path-routes-manifest.json +32 -26
- package/.next/build-manifest.json +5 -5
- package/.next/prerender-manifest.json +15 -15
- package/.next/react-loadable-manifest.json +3 -3
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +17 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/update/route.js +2 -0
- package/.next/server/app/api/agents/update/route.js.nft.json +1 -0
- package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/agents/versions/route.js +1 -0
- package/.next/server/app/api/agents/versions/route.js.nft.json +1 -0
- package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/update-check/route.js +1 -1
- package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/assistant/conversation/route.js +1 -1
- package/.next/server/app/api/assistant/conversation/route.js.nft.json +1 -1
- package/.next/server/app/api/assistant/conversation/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/assistant/current-output/route.js +1 -1
- package/.next/server/app/api/assistant/current-output/route.js.nft.json +1 -1
- package/.next/server/app/api/assistant/current-output/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/assistant/messages/route.js +1 -1
- package/.next/server/app/api/assistant/messages/route.js.nft.json +1 -1
- package/.next/server/app/api/assistant/messages/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/assistant/session/route.js +1 -1
- package/.next/server/app/api/assistant/session/route.js.nft.json +1 -1
- package/.next/server/app/api/assistant/session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/assistant/start/route.js +2 -2
- package/.next/server/app/api/assistant/start/route.js.nft.json +1 -1
- package/.next/server/app/api/assistant/start/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/assistant/terminal/route.js +1 -1
- package/.next/server/app/api/assistant/terminal/route.js.nft.json +1 -1
- package/.next/server/app/api/assistant/terminal/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/assistant/tools/route.js +1 -1
- package/.next/server/app/api/assistant/tools/route.js.nft.json +1 -1
- package/.next/server/app/api/assistant/tools/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/capabilities/route.js +1 -1
- package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/daily-summary/route.js +1 -1
- package/.next/server/app/api/daily-summary/route.js.nft.json +1 -1
- package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/daily-summary/status/route.js +1 -1
- package/.next/server/app/api/daily-summary/status/route.js.nft.json +1 -1
- package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/[id]/health/route.js +1 -1
- package/.next/server/app/api/external-apps/[id]/health/route.js.nft.json +1 -1
- package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/[id]/route.js +1 -1
- package/.next/server/app/api/external-apps/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/route.js +1 -1
- package/.next/server/app/api/external-apps/route.js.nft.json +1 -1
- package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/fs/browse/route.js +1 -7
- package/.next/server/app/api/fs/browse/route.js.nft.json +1 -1
- package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/fs/recent-paths/route.js +1 -7
- package/.next/server/app/api/fs/recent-paths/route.js.nft.json +1 -1
- package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/agent-event/route.js +1 -1
- package/.next/server/app/api/hooks/agent-event/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/claude-done/route.js +2 -2
- package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/permission-request/route.js +1 -1
- package/.next/server/app/api/hooks/permission-request/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/metrics/vibe/route.js +2 -2
- package/.next/server/app/api/metrics/vibe/route.js.nft.json +1 -1
- package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/escalation/route.js +7 -1
- package/.next/server/app/api/push/escalation/route.js.nft.json +1 -1
- package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/subscriptions/route.js +1 -1
- package/.next/server/app/api/push/subscriptions/route.js.nft.json +1 -1
- package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/vapid/route.js +7 -1
- package/.next/server/app/api/push/vapid/route.js.nft.json +1 -1
- package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/[id]/route.js +1 -1
- package/.next/server/app/api/repositories/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/[id]/todos/[todoId]/route.js +1 -1
- package/.next/server/app/api/repositories/[id]/todos/[todoId]/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/[id]/todos/route.js +1 -1
- package/.next/server/app/api/repositories/[id]/todos/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/[id]/todos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/excluded/route.js +1 -1
- package/.next/server/app/api/repositories/excluded/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/restore/route.js +1 -1
- package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/route.js +1 -1
- package/.next/server/app/api/repositories/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/scan/route.js +1 -1
- package/.next/server/app/api/repositories/scan/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/validate-path/route.js +1 -1
- package/.next/server/app/api/repositories/validate-path/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/settings/default-agents/route.js +1 -0
- package/.next/server/app/api/settings/default-agents/route.js.nft.json +1 -0
- package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sidebar/group-order/route.js +1 -7
- package/.next/server/app/api/sidebar/group-order/route.js.nft.json +1 -1
- package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/[id]/route.js +1 -1
- package/.next/server/app/api/skills/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/installations/route.js +2 -2
- package/.next/server/app/api/skills/installations/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/operations/route.js +2 -2
- package/.next/server/app/api/skills/operations/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/reindex/route.js +1 -1
- package/.next/server/app/api/skills/reindex/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/route.js +1 -1
- package/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/slash-commands/route.js +1 -1
- package/.next/server/app/api/slash-commands/route.js.nft.json +1 -1
- package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/cancel/route.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/cancel/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/route.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/templates/[id]/route.js +2 -2
- package/.next/server/app/api/templates/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/templates/route.js +2 -2
- package/.next/server/app/api/templates/route.js.nft.json +1 -1
- package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/todos/route.js +1 -1
- package/.next/server/app/api/todos/route.js.nft.json +1 -1
- package/.next/server/app/api/todos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/verification/runs/[runId]/route.js +1 -1
- package/.next/server/app/api/verification/runs/[runId]/route.js.nft.json +1 -1
- package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/verification/runs/route.js +1 -1
- package/.next/server/app/api/verification/runs/route.js.nft.json +1 -1
- package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-tool/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-tool/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +2 -2
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -2
- package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/env/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/env/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +2 -2
- package/.next/server/app/api/worktrees/[id]/execution-logs/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branches/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branches/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/checkout/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/checkout/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/commit/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/commit/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/diff/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/diff/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/fetch/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/fetch/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/log/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/log/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/pull/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/pull/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/push/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/push/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/reset/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/reset/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/revert/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/revert/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stage/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stage/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/staged/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/staged/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/status/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/status/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/unstage/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/unstage/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/working-diff/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/working-diff/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/[filename]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/[filename]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/route.js +2 -2
- package/.next/server/app/api/worktrees/[id]/logs/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/marp-render/route.js +3 -3
- package/.next/server/app/api/worktrees/[id]/marp-render/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/messages/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/messages/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/diff/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/diff/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/session/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/session/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/share/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/share/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/resolve-target/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/resolve-target/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +2 -2
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/route.js +2 -2
- package/.next/server/app/api/worktrees/[id]/schedules/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js +1 -7
- package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/start-polling/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/start-polling/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/start-polling/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tasks/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tasks/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/history/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/history/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/[...path]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/upload/[...path]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/upload/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/config/route.js +2 -0
- package/.next/server/app/api/worktrees/[id]/verify/config/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/worktrees/[id]/verify/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js +1 -0
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/viewed/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/viewed/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/apply-default-agents/route.js +1 -0
- package/.next/server/app/api/worktrees/apply-default-agents/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
- package/.next/server/app/chat/page.js +2 -2
- package/.next/server/app/chat/page.js.nft.json +1 -1
- package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login/page.js +2 -2
- package/.next/server/app/login/page.js.nft.json +1 -1
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
- package/.next/server/app/more/page.js +2 -2
- package/.next/server/app/more/page.js.nft.json +1 -1
- package/.next/server/app/more/page_client-reference-manifest.js +1 -1
- package/.next/server/app/offline/page.js.nft.json +1 -1
- package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +1 -1
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/proxy/[...path]/route.js +1 -1
- package/.next/server/app/proxy/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/repositories/page.js +2 -2
- package/.next/server/app/repositories/page.js.nft.json +1 -1
- package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
- package/.next/server/app/review/page.js +1 -1
- package/.next/server/app/review/page.js.nft.json +1 -1
- package/.next/server/app/review/page_client-reference-manifest.js +1 -1
- package/.next/server/app/sessions/page.js +1 -1
- package/.next/server/app/sessions/page.js.nft.json +1 -1
- package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/[skillId]/page.js +2 -2
- package/.next/server/app/skills/[skillId]/page.js.nft.json +1 -1
- package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/installed/page.js +2 -2
- package/.next/server/app/skills/installed/page.js.nft.json +1 -1
- package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/page.js +2 -2
- package/.next/server/app/skills/page.js.nft.json +1 -1
- package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page.js +2 -2
- package/.next/server/app/worktrees/[id]/files/[...path]/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/page.js +12 -12
- package/.next/server/app/worktrees/[id]/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page.js +3 -3
- package/.next/server/app/worktrees/[id]/terminal/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +32 -26
- package/.next/server/chunks/1058.js +1 -1
- package/.next/server/chunks/1068.js +1 -1
- package/.next/server/chunks/1341.js +1 -0
- package/.next/server/chunks/1501.js +5 -0
- package/.next/server/chunks/1886.js +3 -4
- package/.next/server/chunks/2119.js +1 -1
- package/.next/server/chunks/2198.js +1 -0
- package/.next/server/chunks/221.js +7 -1
- package/.next/server/chunks/2445.js +1 -1
- package/.next/server/chunks/2759.js +1 -1
- package/.next/server/chunks/3543.js +1 -1
- package/.next/server/chunks/3558.js +1 -1
- package/.next/server/chunks/3707.js +15 -0
- package/.next/server/chunks/3722.js +25 -1
- package/.next/server/chunks/3869.js +1 -0
- package/.next/server/chunks/3945.js +1 -1
- package/.next/server/chunks/4299.js +1 -1
- package/.next/server/chunks/4390.js +1 -0
- package/.next/server/chunks/4393.js +1 -1
- package/.next/server/chunks/5017.js +1 -1
- package/.next/server/chunks/5164.js +1 -1
- package/.next/server/chunks/5571.js +1 -1
- package/.next/server/chunks/6130.js +1 -1
- package/.next/server/chunks/6285.js +1 -1
- package/.next/server/chunks/6781.js +1 -1
- package/.next/server/chunks/7366.js +5 -0
- package/.next/server/chunks/7824.js +1 -1
- package/.next/server/chunks/7905.js +1 -1
- package/.next/server/chunks/8118.js +1 -0
- package/.next/server/chunks/848.js +1 -1
- package/.next/server/chunks/880.js +3 -3
- package/.next/server/chunks/8800.js +3 -0
- package/.next/server/chunks/9123.js +2 -2
- package/.next/server/chunks/9508.js +1 -1
- package/.next/server/chunks/9627.js +30 -24
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-manifest.json +5 -5
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/0YoRrahue4Vchxg1z83IQ/_buildManifest.js +1 -0
- package/.next/static/chunks/1379-af7af9e08f47c979.js +1 -0
- package/.next/static/chunks/{2053-c0e931eb4391baa1.js → 2053-3f299a7a2c7d6767.js} +1 -1
- package/.next/static/chunks/3922.9c1ec01fff819c88.js +1 -0
- package/.next/static/chunks/{3968-8d8ca15657748bfb.js → 4882-388e94fe0a03c2ba.js} +1 -1
- package/.next/static/chunks/5229-b2a81bb8fb5c19e9.js +1 -0
- package/.next/static/chunks/6381-9ba5198c0a6ff197.js +1 -0
- package/.next/static/chunks/8019-f8e73c1fb5f6f0d3.js +1 -0
- package/.next/static/chunks/{1188-8567ee5ecfef02ee.js → 8593-fa0eb2802e0ce68a.js} +1 -1
- package/.next/static/chunks/app/api/agents/update/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/agents/versions/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/app/update/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/app/update-check/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/assistant/conversation/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/assistant/current-output/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/assistant/messages/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/assistant/session/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/assistant/start/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/assistant/terminal/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/assistant/tools/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/auth/status/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/capabilities/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/daily-summary/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/daily-summary/status/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/external-apps/[id]/health/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/external-apps/[id]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/external-apps/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/fs/browse/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/fs/recent-paths/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/hooks/agent-event/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/hooks/claude-done/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/hooks/permission-request/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/metrics/vibe/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/ollama/models/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/push/escalation/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/push/subscriptions/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/push/vapid/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/remote/pair/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/[id]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/[id]/todos/[todoId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/[id]/todos/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/clone/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/excluded/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/restore/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/scan/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/sync/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/repositories/validate-path/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/settings/default-agents/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/sidebar/group-order/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/skills/[id]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/skills/installations/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/skills/operations/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/skills/reindex/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/skills/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/slash-commands/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/tasks/[taskId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/templates/[id]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/templates/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/todos/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/verification/runs/[runId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/verification/runs/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/capture/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/env/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/logs/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/memos/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/messages/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/respond/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/search/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/send/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/start-polling/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/timers/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/todos/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/tree/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/api/worktrees/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/chat/{page-231df45127e876c2.js → page-9aa2011410895b0d.js} +1 -1
- package/.next/static/chunks/app/login/{page-03659dded846ef1d.js → page-af7241bb4c4a8e59.js} +1 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/more/page-75d3783da0d49a25.js +1 -0
- package/.next/static/chunks/app/{page-0305431f43195431.js → page-214f7ffa13a0cf10.js} +1 -1
- package/.next/static/chunks/app/proxy/[...path]/route-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/repositories/{page-ae8fa55749976f79.js → page-4951cac905e50224.js} +1 -1
- package/.next/static/chunks/app/review/page-a0899b2d285318c3.js +1 -0
- package/.next/static/chunks/app/sessions/page-fb36145ec732092a.js +1 -0
- package/.next/static/chunks/app/skills/[skillId]/{page-aaf0bcb1dfb558b9.js → page-9099e26b60442873.js} +1 -1
- package/.next/static/chunks/app/skills/installed/{page-dafc486410e839b7.js → page-182e32368696d824.js} +1 -1
- package/.next/static/chunks/app/skills/{page-9e3c91da31514893.js → page-d3fdc88239ebe0ab.js} +1 -1
- package/.next/static/chunks/app/worktrees/[id]/files/[...path]/{page-90f96977c741bbf8.js → page-f3361237420719b4.js} +1 -1
- package/.next/static/chunks/app/worktrees/[id]/layout-1c30fb8d4d6fa6ef.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/page-ce6279d581d1df95.js +1 -0
- package/.next/static/chunks/{webpack-7e79064bfce988d7.js → webpack-9f75198882fdaf08.js} +1 -1
- package/.next/static/css/b326c8a734e1928e.css +1 -0
- package/.next/trace +13 -13
- package/.next/types/app/api/agents/update/route.ts +347 -0
- package/.next/types/app/api/agents/versions/route.ts +347 -0
- package/.next/types/app/api/settings/default-agents/route.ts +347 -0
- package/.next/types/app/api/worktrees/[id]/verify/config/route.ts +347 -0
- package/.next/types/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.ts +347 -0
- package/.next/types/app/api/worktrees/apply-default-agents/route.ts +347 -0
- package/.next/types/routes.d.ts +7 -1
- package/.next/types/validator.ts +54 -0
- package/dist/cli/commands/agents.d.ts +35 -0
- package/dist/cli/commands/agents.d.ts.map +1 -0
- package/dist/cli/commands/agents.js +212 -0
- package/dist/cli/commands/ls.d.ts.map +1 -1
- package/dist/cli/commands/ls.js +18 -0
- package/dist/cli/commands/verify.d.ts.map +1 -1
- package/dist/cli/commands/verify.js +111 -0
- package/dist/cli/config/cli-dependencies.d.ts.map +1 -1
- package/dist/cli/config/cli-dependencies.js +11 -0
- package/dist/cli/docs/agent-operations.d.ts +1 -1
- package/dist/cli/docs/agent-operations.d.ts.map +1 -1
- package/dist/cli/docs/agent-operations.js +30 -0
- package/dist/cli/program.d.ts.map +1 -1
- package/dist/cli/program.js +6 -0
- package/dist/cli/types/api-responses.d.ts +58 -0
- package/dist/cli/types/api-responses.d.ts.map +1 -1
- package/dist/cli/types/index.d.ts +8 -0
- package/dist/cli/types/index.d.ts.map +1 -1
- package/dist/cli/utils/preflight.d.ts.map +1 -1
- package/dist/cli/utils/preflight.js +6 -0
- package/dist/config/system-directories.d.ts +101 -0
- package/dist/config/system-directories.d.ts.map +1 -0
- package/dist/config/system-directories.js +211 -0
- package/dist/lib/cli-tools/types.d.ts +15 -1
- package/dist/lib/cli-tools/types.d.ts.map +1 -1
- package/dist/lib/detection/status-reason.d.ts +92 -0
- package/dist/lib/detection/status-reason.d.ts.map +1 -0
- package/dist/lib/detection/status-reason.js +94 -0
- package/dist/lib/updates/agent-updater.d.ts +247 -0
- package/dist/lib/updates/agent-updater.d.ts.map +1 -0
- package/dist/lib/updates/agent-updater.js +373 -0
- package/dist/lib/updates/agent-versions.d.ts +77 -0
- package/dist/lib/updates/agent-versions.d.ts.map +1 -0
- package/dist/lib/updates/agent-versions.js +138 -0
- package/dist/lib/updates/codex-version.d.ts +184 -0
- package/dist/lib/updates/codex-version.d.ts.map +1 -0
- package/dist/lib/updates/codex-version.js +215 -0
- package/dist/lib/verification/verify-config.d.ts +202 -0
- package/dist/lib/verification/verify-config.d.ts.map +1 -0
- package/dist/lib/verification/verify-config.js +429 -0
- package/dist/lib/verification/verify-draft.d.ts +182 -0
- package/dist/lib/verification/verify-draft.d.ts.map +1 -0
- package/dist/lib/verification/verify-draft.js +570 -0
- package/dist/server/src/cli/types/api-responses.js +9 -0
- package/dist/server/src/config/cli-tool-timing-config.js +15 -1
- package/dist/server/src/config/codex-update-dialog-config.js +154 -0
- package/dist/server/src/config/default-agents.js +138 -0
- package/dist/server/src/lib/cli-tools/antigravity.js +36 -12
- package/dist/server/src/lib/cli-tools/base.js +131 -0
- package/dist/server/src/lib/cli-tools/codex.js +350 -100
- package/dist/server/src/lib/cli-tools/copilot.js +34 -10
- package/dist/server/src/lib/cli-tools/gemini.js +34 -10
- package/dist/server/src/lib/cli-tools/liveness-spec.js +214 -0
- package/dist/server/src/lib/cli-tools/opencode.js +72 -19
- package/dist/server/src/lib/cli-tools/session-liveness.js +64 -0
- package/dist/server/src/lib/cli-tools/vibe-local.js +30 -10
- package/dist/server/src/lib/db/app-settings-db.js +142 -0
- package/dist/server/src/lib/db/worktree-db.js +178 -3
- package/dist/server/src/lib/detection/status-reason.js +17 -0
- package/dist/server/src/lib/detection/tool-liveness.js +233 -0
- package/dist/server/src/lib/detection/version-probes.js +290 -0
- package/dist/server/src/lib/git/worktrees.js +10 -0
- package/dist/server/src/lib/repo-config/agents-config.js +298 -0
- package/dist/server/src/lib/selected-agents-validator.js +93 -23
- package/dist/server/src/lib/session/claude-session.js +39 -108
- package/dist/server/src/lib/tmux/tmux.js +29 -0
- package/dist/server/src/lib/updates/agent-updater.js +373 -0
- package/dist/server/src/lib/updates/agent-versions.js +138 -0
- package/dist/server/src/lib/updates/codex-version.js +215 -0
- package/dist/server/src/lib/updates/index.js +42 -0
- package/dist/server/src/lib/verification/gate-runner.js +298 -37
- package/dist/server/src/lib/verification/machine-lock.js +11 -0
- package/dist/server/src/lib/verification/run-verdict-vocabulary.js +151 -0
- package/dist/server/src/lib/verification/verify-config.js +33 -0
- package/dist/server/src/types/sidebar.js +40 -9
- package/dist/types/cli-tool-contracts.d.ts +119 -0
- package/dist/types/cli-tool-contracts.d.ts.map +1 -1
- package/package.json +1 -1
- package/.next/server/chunks/1601.js +0 -7
- package/.next/server/chunks/222.js +0 -1
- package/.next/server/chunks/2366.js +0 -1
- package/.next/server/chunks/4689.js +0 -25
- package/.next/server/chunks/5089.js +0 -1
- package/.next/server/chunks/6274.js +0 -14
- package/.next/server/chunks/9067.js +0 -1
- package/.next/server/chunks/9373.js +0 -9
- package/.next/static/Dvfs4ZThl5vBhJGP-ZQuJ/_buildManifest.js +0 -1
- package/.next/static/chunks/3361-aa1b6e7c1d7eeeb4.js +0 -1
- package/.next/static/chunks/3922.0d2e64daf9f187da.js +0 -1
- package/.next/static/chunks/5229-580b581fce5aeb52.js +0 -1
- package/.next/static/chunks/6381-9a929249196a0e77.js +0 -1
- package/.next/static/chunks/app/api/app/update/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/app/update-check/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/assistant/conversation/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/assistant/current-output/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/assistant/messages/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/assistant/session/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/assistant/start/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/assistant/terminal/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/assistant/tools/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/auth/status/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/capabilities/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/daily-summary/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/daily-summary/status/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/external-apps/[id]/health/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/external-apps/[id]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/external-apps/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/fs/browse/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/fs/recent-paths/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/hooks/agent-event/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/hooks/claude-done/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/hooks/permission-request/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/metrics/vibe/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/ollama/models/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/push/escalation/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/push/subscriptions/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/push/vapid/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/remote/pair/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/[id]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/[id]/todos/[todoId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/[id]/todos/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/clone/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/excluded/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/restore/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/scan/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/sync/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/repositories/validate-path/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/sidebar/group-order/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/skills/[id]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/skills/installations/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/skills/operations/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/skills/reindex/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/skills/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/slash-commands/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/tasks/[taskId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/templates/[id]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/templates/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/todos/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/verification/runs/[runId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/verification/runs/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/capture/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/env/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/logs/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/memos/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/messages/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/respond/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/search/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/send/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/start-polling/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/timers/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/todos/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/tree/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/verify/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/api/worktrees/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/more/page-03867ab635d197c7.js +0 -1
- package/.next/static/chunks/app/proxy/[...path]/route-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/review/page-9a6d18ddcccbb63c.js +0 -1
- package/.next/static/chunks/app/sessions/page-4d5382b257077c14.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/layout-e3626364434d521b.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/page-817378dd7c580774.js +0 -1
- package/.next/static/css/6266bde3bce465a2.css +0 -1
- /package/.next/static/{Dvfs4ZThl5vBhJGP-ZQuJ → 0YoRrahue4Vchxg1z83IQ}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2053],{24027:(e,t,s)=>{s.d(t,{Uc:()=>A,G8:()=>v,OJ:()=>C,RF:()=>R});var l=s(95155),a=s(12115),n=s(18955),r=s(51238),i=s(22133),d=s(89451),o=s(10934),c=s(92254),u=s(5225);s(1226);var x=s(89715),m=s(57828),p=s(52056),g=s(65229),h=s(67909),k=s(3005);let f=(0,h.default)(()=>Promise.all([s.e(221),s.e(7485),s.e(953)]).then(s.bind(s,90953)).then(e=>({default:e.MermaidDiagram})),{loadableGenerated:{webpack:()=>[90953]},ssr:!1,loading:function(){let e=(0,n.c)("worktree");return(0,l.jsxs)("div",{className:"mermaid-loading flex items-center gap-2 text-muted-foreground p-4",children:[(0,l.jsx)(k.y,{size:"sm"}),(0,l.jsx)("span",{children:e("mermaid.loading")})]})}});function j(e){let{className:t,children:s}=e;if(t&&t.split(" ").includes("language-mermaid")){let e=null==s?"":"string"==typeof s?s:Array.isArray(s)?s.map(e=>"string"==typeof e?e:"").join(""):String(s);return(0,l.jsx)(f,{code:e})}return(0,l.jsx)("code",{className:t,children:s})}var b=s(50666),y=s(69352),N=s(76246);function w(e){let{apiUrl:t,alt:s,width:r,height:i}=e,d=(0,n.c)("worktree"),[o,c]=(0,a.useState)(null);return((0,a.useEffect)(()=>{let e=!1;return fetch(t).then(e=>e.ok?e.json():null).then(t=>{!e&&(null==t?void 0:t.content)&&c(t.content)}).catch(()=>{}),()=>{e=!0}},[t]),o)?(0,l.jsx)("img",{src:o,alt:s,width:r,height:i,style:{maxWidth:r||"100%"}}):(0,l.jsx)("span",{style:{color:"#999"},children:d("markdownPreview.loadingImage")})}let v=(0,a.memo)(function(e){let{content:t,onOpenFile:s,currentFilePath:n,worktreeId:x}=e,m=(0,a.useRef)(s);m.current=s;let p=(0,a.useRef)(n);p.current=n;let g=(0,a.useRef)(x);g.current=x;let h=(0,a.useCallback)((e,t)=>{let s=(0,y.d3)(t);if(s)switch((0,y.dj)(s)){case"anchor":break;case"external":e.preventDefault(),window.open(s,"_blank","noopener,noreferrer");break;case"relative":{e.preventDefault();let t=p.current,l=m.current;if(t&&l){let e=(0,y.WU)(t,s);e&&l(e)}}}},[]),k=(0,a.useMemo)(()=>({code:j,pre:e=>{let{children:t}=e;return!function(e){let t=a.Children.toArray(e)[0];if(!a.isValidElement(t))return!1;let s=t.props.className;return"string"==typeof s&&s.split(" ").includes("language-mermaid")}(t)?(0,l.jsx)(b.Ck,{children:(0,l.jsx)("pre",{className:"overflow-x-auto",children:t})}):(0,l.jsx)("pre",{children:t})},img:e=>{var t,s,a,n;let{src:r,alt:i,width:d,height:o,...c}=e,u=null!=d?d:null==(s=c.node)||null==(t=s.properties)?void 0:t.width,x=null!=o?o:null==(n=c.node)||null==(a=n.properties)?void 0:a.height;if("string"==typeof r&&!r.startsWith("http://")&&!r.startsWith("https://")&&!r.startsWith("data:")){let e=p.current,t=g.current;if(e&&t){let s=(0,y.WU)(e,r);if(s){let e="/api/worktrees/".concat(t,"/files/").concat((0,N.o)(s));return(0,l.jsx)(w,{apiUrl:e,alt:null!=i?i:"",width:u,height:x})}}}return(0,l.jsx)("img",{src:r,alt:null!=i?i:"",width:u,height:x,style:{maxWidth:u||"100%"}})},a:e=>{let{href:t,children:s,...a}=e;return t?(0,l.jsx)("a",{...a,href:t,onClick:e=>h(e,t),children:s}):(0,l.jsx)("a",{...a,children:s})}}),[h]),f=(0,a.useMemo)(()=>[i.A],[]),v=(0,a.useMemo)(()=>[d.A,[o.A,y.uO],c.A,u.A],[]);return(0,l.jsx)(r.oz,{remarkPlugins:f,rehypePlugins:v,components:k,children:t})}),R=(0,a.memo)(function(e){let{mobileTab:t,onTabChange:s}=e,a=(0,n.c)("worktree");return(0,l.jsxs)("div",{className:"flex border-b border-border",children:[(0,l.jsxs)("button",{"data-testid":"mobile-tab-editor",onClick:()=>s("editor"),className:"flex-1 py-2 text-sm font-medium ".concat("editor"===t?"text-accent-600 dark:text-accent-400 border-b-2 border-accent-600 dark:border-accent-400":"text-muted-foreground"),children:[(0,l.jsx)(x.A,{className:"h-4 w-4 inline-block mr-1"}),a("markdownPreview.editor")]}),(0,l.jsxs)("button",{"data-testid":"mobile-tab-preview",onClick:()=>s("preview"),className:"flex-1 py-2 text-sm font-medium ".concat("preview"===t?"text-accent-600 dark:text-accent-400 border-b-2 border-accent-600 dark:border-accent-400":"text-muted-foreground"),children:[(0,l.jsx)(m.A,{className:"h-4 w-4 inline-block mr-1"}),a("markdownPreview.preview")]})]})}),C=(0,a.memo)(function(e){let{isMobile:t}=e,s=(0,n.c)("worktree");return(0,l.jsxs)("div",{"data-testid":"maximize-hint",className:"flex items-center justify-center px-4 py-1 bg-muted text-muted-foreground text-xs",children:[s("markdownPreview.exitFullscreenHint")," ",t&&s("markdownPreview.exitFullscreenHintSwipe")]})}),A=(0,a.memo)(function(e){let{onDismiss:t}=e,s=(0,n.c)("worktree");return(0,l.jsxs)("div",{"data-testid":"large-file-warning",className:"flex items-center gap-2 px-4 py-2 bg-warning-subtle border-b border-warning-border text-warning-foreground text-sm",children:[(0,l.jsx)(p.A,{className:"h-4 w-4"}),s("markdownPreview.largeFileWarning"),(0,l.jsx)("button",{onClick:t,className:"ml-auto text-warning hover:text-warning",children:(0,l.jsx)(g.A,{className:"h-4 w-4"})})]})})},34380:(e,t,s)=>{s.d(t,{B:()=>E});var l=s(95155),a=s(12115),n=s(18955),r=s(43361),i=s(54014),d=s(74385),o=s(50825),c=s(37381);function u(e){var t,s,l,a,n;let r=e.agentInstances&&e.agentInstances.length>0?e.agentInstances.map(e=>e.alias||e.cliTool):null!=(s=e.selectedAgents)?s:e.cliToolId?[e.cliToolId]:[];return{id:e.id,name:e.name,repositoryName:null!=(l=e.repositoryDisplayName)?l:e.repositoryName,syncedBranch:null!=(a=e.branch)?a:null,liveBranch:null!=(n=null==(t=e.gitStatus)?void 0:t.currentBranch)?n:null,dirty:e.gitStatus?e.gitStatus.isDirty:null,agents:[...new Set(r)],sessionRunning:!0===e.isSessionRunning}}let x={status:"loading",options:[]};async function m(e){let t=await fetch("/api/worktrees",{signal:e,headers:{Accept:"application/json"}});if(!t.ok)throw Error("HTTP ".concat(t.status));let s=await t.json(),l=null==s?void 0:s.worktrees;if(!Array.isArray(l))throw Error("Malformed worktree list");return l.map(u)}function p(e){let{selectedWorktreeId:t,onSelect:s,disabled:i=!1}=e,d=(0,n.c)("skills"),[o,u]=(0,a.useState)(x),[p,h]=(0,a.useState)(0);(0,a.useEffect)(()=>{let e=new AbortController;return u(x),m(e.signal).then(t=>{e.signal.aborted||u({status:"loaded",options:t})}).catch(()=>{e.signal.aborted||u({status:"error",options:[]})}),()=>e.abort()},[p]);let k=(0,a.useCallback)(()=>h(e=>e+1),[]);return"loading"===o.status?(0,l.jsxs)("div",{className:"space-y-2","data-testid":"skill-target-loading",children:[(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("target.loading")}),(0,l.jsx)(r.EA,{className:"h-24 w-full rounded-lg"})]}):"error"===o.status?(0,l.jsxs)(r.Zp,{className:"space-y-3","data-testid":"skill-target-error",children:[(0,l.jsx)(c.u,{tone:"danger",children:d("target.errorNotice")}),(0,l.jsx)(r.$n,{variant:"secondary",size:"sm",onClick:k,"data-testid":"skill-target-retry",children:d("target.retry")})]}):0===o.options.length?(0,l.jsx)(r.Zp,{"data-testid":"skill-target-empty",children:(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("target.empty")})}):(0,l.jsxs)("div",{className:"space-y-3","data-testid":"skill-target-selector",children:[(0,l.jsx)("div",{role:"radiogroup","aria-label":d("target.heading"),className:"space-y-2",children:o.options.map(e=>(0,l.jsx)(g,{option:e,selected:e.id===t,disabled:i,onSelect:s},e.id))}),(0,l.jsx)(c.u,{tone:"neutral","data-testid":"skill-target-branch-notice",children:d("target.branchFreshnessNotice")})]})}function g(e){var t;let{option:s,selected:a,disabled:i,onSelect:d}=e,o=(0,n.c)("skills"),c=null!=(t=s.liveBranch)?t:s.syncedBranch;return(0,l.jsxs)("button",{type:"button",role:"radio","aria-checked":a,disabled:i,onClick:()=>d(s.id),"data-testid":"skill-target-option-".concat(s.id),className:"w-full rounded-lg border px-3 py-2.5 text-left transition-colors disabled:cursor-not-allowed disabled:opacity-60 ".concat(a?"border-accent-500 bg-accent-50 dark:bg-accent-950/40":"border-border bg-card hover:bg-muted"),children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsx)("span",{className:"text-sm font-semibold text-foreground break-all",children:s.name}),a&&(0,l.jsx)(r.Ex,{variant:"info",children:o("target.selected")})]}),(0,l.jsxs)("dl",{className:"mt-1.5 grid grid-cols-1 gap-x-4 gap-y-1 sm:grid-cols-2",children:[(0,l.jsx)(h,{label:o("target.repository"),children:s.repositoryName}),(0,l.jsx)(h,{label:o("target.branch"),children:null!=c?c:o("target.branchUnknown")}),(0,l.jsx)(h,{label:o("target.agents"),children:s.agents.length>0?s.agents.join(", "):o("target.agentsNone")}),(0,l.jsx)(h,{label:o("target.workingTree"),children:o(null===s.dirty?"target.workingTreeUnknown":s.dirty?"target.workingTreeDirty":"target.workingTreeClean")})]}),s.sessionRunning&&(0,l.jsx)("p",{className:"mt-1.5 text-xs text-muted-foreground","data-testid":"skill-target-session-".concat(s.id),children:o("target.sessionRunning")})]})}function h(e){let{label:t,children:s}=e;return(0,l.jsxs)("div",{className:"min-w-0",children:[(0,l.jsx)("dt",{className:"text-xs font-medium text-muted-foreground",children:t}),(0,l.jsx)("dd",{className:"text-xs text-foreground break-words",children:s})]})}var k=s(95584);function f(e){let{label:t,children:s}=e;return(0,l.jsxs)("div",{className:"min-w-0",children:[(0,l.jsx)("dt",{className:"text-xs font-medium text-muted-foreground",children:t}),(0,l.jsx)("dd",{className:"mt-0.5 break-words text-sm text-foreground",children:s})]})}function j(e){let{level:t,kind:s,label:a}=e,i=(0,n.c)("skills");return(0,l.jsxs)(r.Ex,{variant:k.eK[t],"data-testid":"skill-plan-risk-".concat(s,"-").concat(t),children:[a,": ",i(k.pP[t])]})}function b(e){let{entry:t}=e,s=(0,n.c)("skills"),a=k.KL[t.reason];return(0,l.jsxs)("li",{className:"space-y-1.5 rounded-md border border-border px-3 py-2","data-testid":"skill-plan-file-".concat(t.path),children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsx)(r.Ex,{variant:k.tC[t.change],children:s(k.AS[t.change])}),(0,l.jsx)("span",{className:"break-all font-mono text-xs text-foreground",children:t.path}),t.generated&&(0,l.jsx)(r.Ex,{variant:"gray",children:s("plan.fileGenerated")})]}),a&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:s(a)}),t.gitIgnored&&(0,l.jsx)("p",{className:"text-xs text-warning-foreground",children:s("plan.gitIgnored")}),t.binary?(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:s("plan.diffBinary")}):t.diff?(0,l.jsxs)("details",{children:[(0,l.jsx)("summary",{className:"cursor-pointer text-xs text-accent-600 dark:text-accent-400",children:s("plan.diffToggle",{additions:t.additions,deletions:t.deletions})}),(0,l.jsx)("pre",{className:"mt-1 overflow-x-auto rounded bg-muted p-2 font-mono text-[11px] leading-snug text-foreground",children:t.diff}),t.diffTruncated&&(0,l.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:s("plan.diffTruncated")})]}):null]})}function y(e){var t,s,a;let{plan:i}=e,d=(0,n.c)("skills"),{target:o,skill:u}=i,x=u.compatibility.commandmate;return(0,l.jsxs)(r.Zp,{className:"space-y-4","data-testid":"skill-install-plan",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:d("plan.heading")}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:d("plan.expiresAt",{timestamp:i.expiresAt})})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.targetHeading")}),(0,l.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,l.jsx)(f,{label:d("target.repository"),children:o.repositoryName}),(0,l.jsx)(f,{label:d("target.heading"),children:o.worktreeName}),(0,l.jsx)(f,{label:d("target.branch"),children:null!=(t=o.branch)?t:d("target.branchUnknown")}),(0,l.jsx)(f,{label:d("plan.headStateLabel"),children:d(null!=(s=k.kF[o.headState])?s:"plan.headState.unknown")}),(0,l.jsx)(f,{label:d("target.workingTree"),children:o.workingTreeDirty?d("target.workingTreeDirty"):d("target.workingTreeClean")}),(0,l.jsx)(f,{label:d("plan.installRoot"),children:(0,l.jsx)("span",{className:"break-all font-mono text-xs",children:(o.installRoots&&o.installRoots.length>0?o.installRoots:[o.installRoot]).map(e=>(0,l.jsx)("span",{className:"block",children:e},e))})}),(0,l.jsx)(f,{label:d("plan.existingInstall"),children:o.existingInstall?d("plan.existingInstallVersion",{version:o.existingInstall.version}):d("plan.existingInstallNone")}),(0,l.jsx)(f,{label:d("detail.recommendedVersion"),children:(0,l.jsx)("span",{className:"font-mono text-xs",children:u.version})})]})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-risk-section",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.riskHeading")}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-1.5",children:[(0,l.jsx)(j,{level:u.declaredRisk,kind:"declared",label:d("plan.riskDeclared")}),(0,l.jsx)(j,{level:u.computedRisk,kind:"computed",label:d("plan.riskComputed")}),(0,l.jsx)(j,{level:u.effectiveRisk,kind:"effective",label:d("plan.riskEffective")})]}),(0,l.jsx)("p",{className:"break-words text-sm text-foreground",children:u.riskRationale}),(0,l.jsx)(c.u,{tone:"neutral",children:d("plan.riskNotice")})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-permissions",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("permissions.heading")}),u.declaredPermissions.length>0?(0,l.jsx)("div",{className:"flex flex-wrap gap-1.5",children:u.declaredPermissions.map(e=>(0,l.jsx)(r.Ex,{variant:"warning",children:k.z2[e]?d(k.z2[e]):e},e))}):(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("plan.permissionsNone")}),(0,l.jsx)(c.u,{tone:"warning",children:d("permissions.declarationOnlyNotice")})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-requirements",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("requirements.heading")}),0===u.requirements.commands.length&&0===u.requirements.networkHosts.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("plan.requirementsNone")}):(0,l.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[u.requirements.commands.length>0&&(0,l.jsx)(f,{label:d("plan.requirementsCommands"),children:u.requirements.commands.map(e=>{var t;return"".concat(e.name," ").concat(null!=(t=e.versionRange)?t:d("plan.commandAnyVersion"))}).join(", ")}),u.requirements.networkHosts.length>0&&(0,l.jsx)(f,{label:d("plan.requirementsHosts"),children:u.requirements.networkHosts.join(", ")})]})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-scripts",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.scriptsHeading")}),0===u.executablePaths.length&&0===u.scriptPaths.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("plan.scriptsNone")}):(0,l.jsx)("ul",{className:"space-y-1",children:[...new Set([...u.scriptPaths,...u.executablePaths])].map(e=>(0,l.jsx)("li",{className:"break-all font-mono text-xs text-foreground",children:e},e))})]}),"compatible"!==x.status&&(0,l.jsx)(c.u,{tone:"warning","data-testid":"skill-plan-compatibility-notice",children:d((0,k.e5)(x.messageKey),{range:x.requiredRange,currentVersion:null!=(a=x.currentVersion)?a:""})}),i.warnings.length>0&&(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-warnings",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.warningsHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:i.warnings.map(e=>(0,l.jsx)("li",{className:"text-xs text-warning-foreground",children:k.RO[e]?d(k.RO[e]):e},e))})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-files",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.filesHeading")}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":"skill-plan-stats",children:d("plan.stats",{added:i.stats.added,modified:i.stats.modified,unchanged:i.stats.unchanged,conflicted:i.stats.conflicted,unmanaged:i.stats.unmanaged})}),0===i.files.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("plan.filesEmpty")}):(0,l.jsx)("ul",{className:"space-y-2",children:i.files.map(e=>(0,l.jsx)(b,{entry:e},e.path))})]}),i.blockers.length>0&&(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-install-blockers",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-danger-foreground",children:d("plan.blockersHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:i.blockers.map(e=>{var t,s;return(0,l.jsxs)("li",{className:"text-xs text-danger-foreground",children:[e.path&&(0,l.jsx)("span",{className:"mr-1 break-all font-mono",children:e.path}),e.code.startsWith("skills.")?d((0,k.e5)(e.code),{range:x.requiredRange,currentVersion:null!=(t=x.currentVersion)?t:""}):k.KL[e.code]?d(k.KL[e.code]):e.code]},"".concat(e.code,":").concat(null!=(s=e.path)?s:""))})}),(0,l.jsx)(c.u,{tone:"danger",children:d("plan.blockedNotice")})]})]})}function N(e){let{entry:t}=e,s=(0,n.c)("skills"),a=k.Mj[t.disposition],i=k.hJ[t.reason];return(0,l.jsxs)("li",{className:"flex flex-wrap items-center gap-2","data-testid":"skill-uninstall-file-".concat(t.path),children:[(0,l.jsx)(r.Ex,{variant:"remove"===t.disposition?"info":"warning",children:a?s(a):t.disposition}),(0,l.jsx)("span",{className:"break-all font-mono text-xs text-foreground",children:t.path}),i&&(0,l.jsx)("span",{className:"text-xs text-muted-foreground",children:s(i)})]})}function w(e){var t;let{plan:s}=e,a=(0,n.c)("skills"),{target:d,skill:o}=s;return(0,l.jsxs)(r.Zp,{className:"space-y-4","data-testid":"skill-uninstall-plan",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:a("uninstall.heading")}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:a("uninstall.expiresAt",{timestamp:s.expiresAt})})]}),(0,l.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,l.jsx)(f,{label:a("target.repository"),children:d.repositoryName}),(0,l.jsx)(f,{label:a("target.heading"),children:d.worktreeName}),(0,l.jsx)(f,{label:a("target.branch"),children:null!=(t=d.branch)?t:a("target.branchUnknown")}),(0,l.jsx)(f,{label:a("uninstall.installedVersion"),children:(0,l.jsx)("span",{className:"font-mono text-xs",children:o.version||a("uninstall.versionUnknown")})}),(0,l.jsx)(f,{label:a("plan.installRoot"),children:(0,l.jsx)("span",{className:"break-all font-mono text-xs",children:d.installRoot})}),(0,l.jsx)(f,{label:a("target.workingTree"),children:d.workingTreeDirty?a("target.workingTreeDirty"):a("target.workingTreeClean")})]}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":"skill-uninstall-stats",children:a("uninstall.stats",{removable:s.stats.removable,modified:s.stats.modified,missing:s.stats.missing,unknown:s.stats.unknown,irregular:s.stats.irregular})}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:a("uninstall.removalsHeading")}),0===s.removals.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:a("uninstall.removalsEmpty")}):(0,l.jsx)("ul",{className:"space-y-1.5",children:s.removals.map(e=>(0,l.jsx)(N,{entry:e},e.path))})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:a("uninstall.retainedHeading")}),0===s.retained.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:a("uninstall.retainedEmpty")}):(0,l.jsx)("ul",{className:"space-y-1.5",children:s.retained.map(e=>(0,l.jsx)(N,{entry:e},e.path))})]}),(0,l.jsxs)("div",{className:"space-y-2",children:[s.skill.agents.length>0&&(0,l.jsx)("div",{className:"flex flex-wrap gap-1.5","data-testid":"skill-uninstall-agents",children:s.skill.agents.map(e=>(0,l.jsx)(r.Ex,{variant:"gray",children:(0,i.f_)(e.agent)},e.agent))}),(0,l.jsx)(c.u,{tone:"neutral",children:a((0,k.e5)(s.nextActionKey))})]}),s.blockers.length>0&&(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-uninstall-blockers",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-danger-foreground",children:a("uninstall.blockersHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:s.blockers.map(e=>{var t;return(0,l.jsxs)("li",{className:"text-xs text-danger-foreground",children:[e.path&&(0,l.jsx)("span",{className:"mr-1 break-all font-mono",children:e.path}),a((0,k.e5)(e.messageKey))]},"".concat(e.code,":").concat(null!=(t=e.path)?t:""))})})]})]})}var v=s(80130);let R={worktreeId:null,busy:null,installPlan:null,uninstallPlan:null,installResult:null,uninstallResult:null,riskAcknowledged:!1,failure:null};function C(e){return{...e,installPlan:null,uninstallPlan:null,installResult:null,uninstallResult:null,riskAcknowledged:!1,failure:null}}function A(e,t){return"".concat(e,"-").concat(t)}function I(e){let{failure:t}=e,s=(0,n.c)("skills");return(0,l.jsxs)("div",{className:"space-y-2","data-testid":"skill-operation-error",children:[(0,l.jsxs)(c.u,{tone:"danger",children:[(0,l.jsx)("p",{className:"font-medium",children:s("operation.errorHeading")}),(0,l.jsx)("p",{className:"mt-1",children:s((0,k.FW)(t.code))}),(0,l.jsx)("p",{className:"mt-1 break-words",children:s("state.errorCode",{code:t.code})})]}),t.nextActionKey&&(0,l.jsx)(c.u,{tone:"warning",children:s((0,k.e5)(t.nextActionKey))}),t.blockers&&t.blockers.length>0&&(0,l.jsx)("ul",{className:"space-y-1","data-testid":"skill-operation-error-blockers",children:t.blockers.map(e=>{var t;return(0,l.jsxs)("li",{className:"text-xs text-danger-foreground",children:[e.path&&(0,l.jsx)("span",{className:"mr-1 break-all font-mono",children:e.path}),s((0,k.e5)(e.messageKey))]},"".concat(e.code,":").concat(null!=(t=e.path)?t:""))})})]})}function P(e){let{agents:t,skillId:s,version:a}=e,r=(0,n.c)("skills");return 0===t.length?null:(0,l.jsxs)("div",{className:"space-y-1","data-testid":"skill-operation-reload",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:r("operation.reloadHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:t.map(e=>(0,l.jsx)("li",{className:"text-xs text-muted-foreground",children:r((0,k.e5)(e.messageKey),{agent:(0,i.f_)(e.agent),skillId:s,version:a})},e.agent))})]})}function E(e){var t;let{skillId:s,version:i,blockedReason:u,worktreeId:x,agents:m=[]}=e,g=(0,n.c)("skills"),[h,f]=(0,a.useState)(()=>x?{...R,worktreeId:x}:R),j=(0,a.useCallback)(e=>{f(t=>t.worktreeId===e?t:C({...t,worktreeId:e,busy:null}))},[]);(0,a.useEffect)(()=>{x&&j(x)},[x,j]);let b=(0,a.useCallback)(async()=>{let e=h.worktreeId;if(!e)return;f(e=>({...C(e),busy:"install-plan"}));let t=await (0,v.Q6)(e,s,{version:null!=i?i:void 0});f(e=>({...e,busy:null,installPlan:t.ok?t.data.plan:null,failure:t.ok?null:t.failure}))},[s,h.worktreeId,i]),N=(0,a.useCallback)(async()=>{let e=h.worktreeId,t=h.installPlan;if(!e||!t||t.requiresRiskAcknowledgement&&!h.riskAcknowledged)return;f(e=>({...e,busy:"install-apply",failure:null}));let l=await (0,v.Xi)(e,s,{planToken:t.token,version:t.skill.version,acknowledgeRisk:!!t.requiresRiskAcknowledgement||void 0,idempotencyKey:A("skill-install",t.token)});l.ok&&(0,d.k)(e),f(e=>({...e,busy:null,installPlan:l.ok?null:e.installPlan,installResult:l.ok?l.data:null,failure:l.ok?null:l.failure}))},[s,h.installPlan,h.riskAcknowledged,h.worktreeId]),E=(0,a.useCallback)(async()=>{let e=h.worktreeId;if(!e)return;f(e=>({...C(e),busy:"uninstall-plan"}));let t=await (0,v.hN)(e,s);f(e=>({...e,busy:null,uninstallPlan:t.ok?t.data.plan:null,failure:t.ok?null:t.failure}))},[s,h.worktreeId]),K=(0,a.useCallback)(async()=>{let e=h.worktreeId,t=h.uninstallPlan;if(!e||!t)return;f(e=>({...e,busy:"uninstall-apply",failure:null}));let l=await (0,v.E)(e,s,{planToken:t.token,idempotencyKey:A("skill-uninstall",t.token)});f(e=>({...e,busy:null,uninstallPlan:l.ok?null:e.uninstallPlan,uninstallResult:l.ok?l.data:null,failure:l.ok?null:l.failure}))},[s,h.uninstallPlan,h.worktreeId]),T=(0,a.useCallback)(()=>{f(e=>C(e))},[]),H=null!==h.busy,S=h.installPlan,W=h.uninstallPlan,q=null!=u?u:g(h.worktreeId?"plan.ready":"plan.chooseTarget"),z=null!==S&&S.requiresRiskAcknowledgement&&!h.riskAcknowledged;return(0,l.jsxs)("div",{className:"space-y-3","data-testid":"skill-install-panel",children:[!x&&(0,l.jsx)(p,{selectedWorktreeId:h.worktreeId,onSelect:j,disabled:H}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,l.jsx)(r.$n,{variant:"primary",disabled:H||null!==u||!h.worktreeId,onClick:b,"data-testid":"skill-install-action","aria-describedby":"skill-install-reason",children:g("install-plan"===h.busy?"plan.building":"plan.build")}),(0,l.jsx)(r.$n,{variant:"secondary",disabled:H||!h.worktreeId,onClick:E,"data-testid":"skill-uninstall-action",children:g("uninstall-plan"===h.busy?"uninstall.building":"uninstall.build")})]}),(0,l.jsx)("p",{id:"skill-install-reason",className:"text-sm text-muted-foreground","data-testid":"skill-install-reason",children:q}),m.length>0&&(0,l.jsxs)("div",{className:"space-y-1","data-testid":"skill-install-reload-preview",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:g("operation.reloadHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:m.map(e=>(0,l.jsx)(o.m,{agent:e,variant:"reload"},e.agent))})]}),h.failure&&(0,l.jsx)(I,{failure:h.failure}),S&&(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsx)(y,{plan:S}),S.requiresRiskAcknowledgement&&(0,l.jsxs)(r.Zp,{className:"space-y-3","data-testid":"skill-install-risk-acknowledgement",children:[(0,l.jsx)(c.u,{tone:"danger",children:g((0,k.e5)(null!=(t=S.riskAcknowledgementMessageKey)?t:"skills.plan.highRiskAcknowledgement"))}),(0,l.jsxs)("label",{className:"flex items-start gap-2 text-sm text-foreground",children:[(0,l.jsx)(r.Sc,{checked:h.riskAcknowledged,onCheckedChange:e=>f(t=>({...t,riskAcknowledged:!0===e})),disabled:H,"data-testid":"skill-install-risk-checkbox",className:"mt-0.5"}),(0,l.jsx)("span",{children:g("plan.acknowledgeLabel")})]})]}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,l.jsx)(r.$n,{variant:S.requiresRiskAcknowledgement?"danger":"primary",disabled:H||!S.installable||z,onClick:N,"data-testid":"skill-install-confirm",children:g("install-apply"===h.busy?"plan.confirming":"plan.confirm")}),(0,l.jsx)(r.$n,{variant:"ghost",disabled:H,onClick:T,"data-testid":"skill-install-discard",children:g("plan.discard")})]})]}),W&&(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsx)(w,{plan:W}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,l.jsx)(r.$n,{variant:"danger",disabled:H||!W.removable,onClick:K,"data-testid":"skill-uninstall-confirm",children:g("uninstall-apply"===h.busy?"uninstall.confirming":"uninstall.confirm")}),(0,l.jsx)(r.$n,{variant:"ghost",disabled:H,onClick:T,"data-testid":"skill-uninstall-discard",children:g("plan.discard")})]})]}),h.installResult&&(0,l.jsxs)(r.Zp,{className:"space-y-3","data-testid":"skill-install-result",children:[(0,l.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:g("operation.installedHeading")}),(0,l.jsx)(c.u,{tone:"info",children:g((0,k.e5)(h.installResult.operation.nextActionKey))}),h.installResult.operation.replayed&&(0,l.jsx)(c.u,{tone:"neutral","data-testid":"skill-operation-replayed",children:g("operation.replayNotice")}),h.installResult.install&&"files"in h.installResult.install&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:g("operation.filesWritten",{count:h.installResult.install.files.length})}),"reload"in h.installResult&&(0,l.jsx)(P,{agents:h.installResult.reload.agents,skillId:h.installResult.reload.skillId,version:h.installResult.reload.version}),(0,l.jsx)(r.$n,{variant:"secondary",size:"sm",onClick:T,"data-testid":"skill-operation-reset",children:g("operation.startOver")})]}),h.uninstallResult&&(0,l.jsxs)(r.Zp,{className:"space-y-3","data-testid":"skill-uninstall-result",children:[(0,l.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:g("operation.uninstalledHeading")}),(0,l.jsx)(c.u,{tone:"info",children:g((0,k.e5)(h.uninstallResult.operation.nextActionKey))}),h.uninstallResult.operation.replayed&&(0,l.jsx)(c.u,{tone:"neutral","data-testid":"skill-operation-replayed",children:g("operation.replayNotice")}),h.uninstallResult.uninstall&&"removedFiles"in h.uninstallResult.uninstall&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:g("operation.filesRemoved",{count:h.uninstallResult.uninstall.removedFiles.length})}),"reload"in h.uninstallResult&&(0,l.jsx)(P,{agents:h.uninstallResult.reload.agents,skillId:h.uninstallResult.reload.skillId,version:h.uninstallResult.reload.version}),(0,l.jsx)(r.$n,{variant:"secondary",size:"sm",onClick:T,"data-testid":"skill-operation-reset",children:g("operation.startOver")})]})]})}},50666:(e,t,s)=>{s.d(t,{Ck:()=>r});var l=s(95155),a=s(12115),n=s(53482);function r(e){let{children:t,as:s="div",className:r=""}=e,i=function e(t){return null==t||"boolean"==typeof t?"":"string"==typeof t?t:"number"==typeof t?String(t):Array.isArray(t)?t.map(e).join(""):a.isValidElement(t)?e(t.props.children):""}(t);if(!i||0===i.trim().length)return(0,l.jsx)(s,{className:r||void 0,children:t});let d="relative group ".concat("span"===s?"block ":"").concat(r).trim();return(0,l.jsxs)(s,{className:d,"data-testid":"code-block-with-copy",children:[t,(0,l.jsx)(n.i,{text:i,className:"absolute right-2 top-2 z-10 opacity-100 md:opacity-0 md:group-hover:opacity-100 md:group-focus-within:opacity-100 focus:opacity-100"})]})}},50825:(e,t,s)=>{s.d(t,{m:()=>o});var l=s(95155);s(12115);var a=s(18955),n=s(54014),r=s(37381),i=s(95584);function d(e){let{axis:t,agentName:s}=e,n=(0,a.c)("skills");return(0,l.jsxs)("li",{className:"text-xs text-muted-foreground","data-testid":"skill-agent-axis-".concat(t.axis),children:[(0,l.jsx)("span",{className:"font-medium text-foreground",children:n((0,i.e5)(t.axisKey))}),": ",(0,l.jsx)("span",{"data-testid":"skill-agent-axis-".concat(t.axis,"-").concat(t.outcome),children:n((0,i.e5)(t.outcomeKey))})," — ",n((0,i.e5)(t.evidenceKindKey)),t.limitationKey&&(0,l.jsx)("span",{className:"mt-0.5 block","data-testid":"skill-agent-axis-".concat(t.axis,"-limitation"),children:n((0,i.e5)(t.limitationKey),{agent:s})})]})}function o(e){var t;let{agent:s,variant:o="full"}=e,c=(0,a.c)("skills"),u=(0,n.f_)(s.agent),x=s.measured;return"reload"===o?(0,l.jsx)("li",{className:"text-xs text-muted-foreground","data-testid":"skill-agent-reload-".concat(s.agent),children:c((0,i.e5)(s.reloadKey),{agent:u})}):(0,l.jsxs)("div",{className:"space-y-1","data-testid":"skill-agent-evidence-".concat(s.agent),children:[(0,l.jsx)("p",{className:"text-xs font-medium text-foreground",children:u}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground break-words",children:c("compatibility.declaredLabel",{support:c((0,i.e5)(s.declaredLabelKey))})}),(0,l.jsxs)("p",{className:"text-xs text-muted-foreground break-words",children:[c("compatibility.evidence"),": ",s.evidence]}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground break-words","data-testid":"skill-agent-verification-".concat(s.agent),children:c((0,i.e5)(s.verificationKey))}),x?(0,l.jsxs)("div",{className:"space-y-0.5 border-l-2 border-border pl-2",children:[(0,l.jsx)("p",{className:"text-xs font-medium text-foreground",children:c("compatibility.measuredHeading")}),(0,l.jsxs)("ul",{className:"space-y-0.5",children:[(0,l.jsx)(d,{axis:x.discovery,agentName:u}),(0,l.jsx)(d,{axis:x.invocation,agentName:u})]}),x.testedVersion&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:c("compatibility.testedVersion",{agent:u,version:x.testedVersion})}),x.testedDate&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:c("compatibility.testedDate",{date:x.testedDate})}),x.discoveryRoots.length>0&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground break-all",children:c("compatibility.discoveryRoots",{roots:x.discoveryRoots.join(", ")})}),x.evidenceSource&&(0,l.jsxs)("p",{className:"text-xs text-muted-foreground break-all",children:[c("compatibility.evidenceSource"),": ",x.evidenceSource]}),x.stale&&(0,l.jsx)(r.u,{tone:"warning","data-testid":"skill-agent-evidence-stale-".concat(s.agent),children:c("compatibility.evidenceStale",{days:null!=(t=x.ageDays)?t:0})})]}):s.skipReasonKey&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground break-words","data-testid":"skill-agent-skip-reason-".concat(s.agent),children:c((0,i.e5)(s.skipReasonKey))}),(0,l.jsxs)("p",{className:"text-xs text-muted-foreground break-words",children:[(0,l.jsx)("span",{className:"font-medium text-foreground",children:c("compatibility.reloadHeading",{agent:u})}),": ",c((0,i.e5)(s.reloadKey),{agent:u})]})]})}},53482:(e,t,s)=>{s.d(t,{i:()=>o});var l=s(95155),a=s(12115),n=s(60322),r=s(9900);function i(){return(0,l.jsx)("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})}function d(){return(0,l.jsx)("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})})}function o(e){let{text:t,className:s="",label:o="Copy"}=e,[c,u]=(0,a.useState)(!1),x=(0,a.useRef)(null);(0,a.useEffect)(()=>()=>{x.current&&clearTimeout(x.current)},[]);let m=(0,a.useCallback)(async()=>{try{await (0,n.l)(t),u(!0),x.current&&clearTimeout(x.current),x.current=setTimeout(()=>u(!1),r.s7)}catch(e){}},[t]);return(0,l.jsxs)("button",{type:"button",onClick:m,className:"inline-flex items-center gap-1 rounded border border-border bg-surface px-2 py-0.5 text-[11px] font-medium text-foreground transition-colors hover:bg-muted ".concat(s),"aria-label":c?"Copied":o,title:c?"Copied!":o,children:[c?(0,l.jsx)(d,{}):(0,l.jsx)(i,{}),(0,l.jsx)("span",{children:c?"Copied":o})]})}},60322:(e,t,s)=>{s.d(t,{l:()=>a});let l=/\x1b\[[0-9;]*[a-zA-Z]|\x1b\][^\x07]*\x07|\[[0-9;]*m/g;async function a(e){var t;if(!e||0===e.trim().length)return;let s=e.replace(l,"");if(null==(t=navigator.clipboard)?void 0:t.writeText)try{await navigator.clipboard.writeText(s);return}catch(e){}let a=document.createElement("textarea");a.value=s,a.style.position="fixed",a.style.left="-9999px",a.style.top="-9999px",a.style.opacity="0",document.body.appendChild(a),a.focus(),a.select();try{document.execCommand("copy")}finally{document.body.removeChild(a)}}},69352:(e,t,s)=>{s.d(t,{WU:()=>o,d3:()=>c,dj:()=>d,uO:()=>u});var l,a,n,r,i=s(9567);function d(e){return e.startsWith("#")?"anchor":e.startsWith("http://")||e.startsWith("https://")||e.startsWith("mailto:")||e.startsWith("tel:")?"external":"relative"}function o(e,t){if(!t)return null;let s=e.substring(0,e.lastIndexOf("/")+1);try{let e=new URL(s,"file:///"),l=new URL(t,e),a=decodeURIComponent(l.pathname);if(a.startsWith("/")){let e=a.substring(1);if(e.length>0)return e}}catch(e){}return null}function c(e){return!e||0===e.length||e.length>2048||/[\x00-\x1f\x7f]/.test(e)?null:e}let u={...i.j,attributes:{...i.j.attributes,a:[...(null!=(n=null==(l=i.j.attributes)?void 0:l.a)?n:[]).filter(e=>"href"!==e),["href",/^(?:#|mailto:|tel:|https?:\/\/|(?![a-zA-Z][a-zA-Z0-9+.-]*:))/]],img:[...(null!=(r=null==(a=i.j.attributes)?void 0:a.img)?r:[]).filter(e=>"src"!==e),["src",/^(?:https?:\/\/|(?![a-zA-Z][a-zA-Z0-9+.-]*:))/],"alt","width","height"]}}},74385:(e,t,s)=>{s.d(t,{I:()=>l,k:()=>a});let l="skill:installed";function a(e){window.dispatchEvent(new CustomEvent(l,{detail:{worktreeId:e}}))}},75333:(e,t,s)=>{s.d(t,{Xz:()=>o,qW:()=>c,uE:()=>u});var l=s(95155);s(12115);var a=s(18955),n=s(77801),r=s(43361),i=s(54014),d=s(95584);function o(e){let{status:t,className:s}=e,n=(0,a.c)("skills");return(0,l.jsx)(r.Ex,{variant:d.H$[t],className:s,"data-testid":"skill-compatibility-".concat(t),children:n(d.OV[t])})}function c(e){let{risk:t,className:s}=e,i=(0,a.c)("skills");return(0,l.jsxs)(r.Ex,{variant:d.eK[t],className:s,"data-testid":"skill-declared-risk-".concat(t),children:["high"===t&&(0,l.jsx)(n.A,{size:12,"aria-hidden":"true",className:"mr-1 shrink-0"}),i("risk.declaredLabel",{level:i(d.pP[t])})]})}function u(e){let{agent:t}=e,s=(0,a.c)("skills");return(0,l.jsxs)(r.Ex,{variant:d.Et[t.support],"data-testid":"skill-agent-".concat(t.agent,"-").concat(t.support),children:[(0,i.f_)(t.agent),": ",s((0,d.e5)(t.labelKey))]})}},76246:(e,t,s)=>{s.d(t,{o:()=>l});function l(e){return e?e.split("/").map(encodeURIComponent).join("/"):""}},99648:(e,t,s)=>{s.d(t,{Co:()=>l,Ms:()=>n,td:()=>a});let l=".agents/skills",a=".claude/skills",n="skills.permissions.declarationOnlyNotice"}}]);
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2053],{24027:(e,t,s)=>{s.d(t,{Uc:()=>A,G8:()=>v,OJ:()=>C,RF:()=>R});var l=s(95155),a=s(12115),n=s(18955),r=s(51238),i=s(22133),d=s(89451),o=s(10934),c=s(92254),u=s(5225);s(1226);var x=s(89715),m=s(57828),p=s(52056),g=s(65229),h=s(67909),k=s(3005);let f=(0,h.default)(()=>Promise.all([s.e(221),s.e(7485),s.e(953)]).then(s.bind(s,90953)).then(e=>({default:e.MermaidDiagram})),{loadableGenerated:{webpack:()=>[90953]},ssr:!1,loading:function(){let e=(0,n.c)("worktree");return(0,l.jsxs)("div",{className:"mermaid-loading flex items-center gap-2 text-muted-foreground p-4",children:[(0,l.jsx)(k.y,{size:"sm"}),(0,l.jsx)("span",{children:e("mermaid.loading")})]})}});function j(e){let{className:t,children:s}=e;if(t&&t.split(" ").includes("language-mermaid")){let e=null==s?"":"string"==typeof s?s:Array.isArray(s)?s.map(e=>"string"==typeof e?e:"").join(""):String(s);return(0,l.jsx)(f,{code:e})}return(0,l.jsx)("code",{className:t,children:s})}var b=s(50666),y=s(69352),N=s(76246);function w(e){let{apiUrl:t,alt:s,width:r,height:i}=e,d=(0,n.c)("worktree"),[o,c]=(0,a.useState)(null);return((0,a.useEffect)(()=>{let e=!1;return fetch(t).then(e=>e.ok?e.json():null).then(t=>{!e&&(null==t?void 0:t.content)&&c(t.content)}).catch(()=>{}),()=>{e=!0}},[t]),o)?(0,l.jsx)("img",{src:o,alt:s,width:r,height:i,style:{maxWidth:r||"100%"}}):(0,l.jsx)("span",{style:{color:"#999"},children:d("markdownPreview.loadingImage")})}let v=(0,a.memo)(function(e){let{content:t,onOpenFile:s,currentFilePath:n,worktreeId:x}=e,m=(0,a.useRef)(s);m.current=s;let p=(0,a.useRef)(n);p.current=n;let g=(0,a.useRef)(x);g.current=x;let h=(0,a.useCallback)((e,t)=>{let s=(0,y.d3)(t);if(s)switch((0,y.dj)(s)){case"anchor":break;case"external":e.preventDefault(),window.open(s,"_blank","noopener,noreferrer");break;case"relative":{e.preventDefault();let t=p.current,l=m.current;if(t&&l){let e=(0,y.WU)(t,s);e&&l(e)}}}},[]),k=(0,a.useMemo)(()=>({code:j,pre:e=>{let{children:t}=e;return!function(e){let t=a.Children.toArray(e)[0];if(!a.isValidElement(t))return!1;let s=t.props.className;return"string"==typeof s&&s.split(" ").includes("language-mermaid")}(t)?(0,l.jsx)(b.Ck,{children:(0,l.jsx)("pre",{className:"overflow-x-auto",children:t})}):(0,l.jsx)("pre",{children:t})},img:e=>{var t,s,a,n;let{src:r,alt:i,width:d,height:o,...c}=e,u=null!=d?d:null==(s=c.node)||null==(t=s.properties)?void 0:t.width,x=null!=o?o:null==(n=c.node)||null==(a=n.properties)?void 0:a.height;if("string"==typeof r&&!r.startsWith("http://")&&!r.startsWith("https://")&&!r.startsWith("data:")){let e=p.current,t=g.current;if(e&&t){let s=(0,y.WU)(e,r);if(s){let e="/api/worktrees/".concat(t,"/files/").concat((0,N.o)(s));return(0,l.jsx)(w,{apiUrl:e,alt:null!=i?i:"",width:u,height:x})}}}return(0,l.jsx)("img",{src:r,alt:null!=i?i:"",width:u,height:x,style:{maxWidth:u||"100%"}})},a:e=>{let{href:t,children:s,...a}=e;return t?(0,l.jsx)("a",{...a,href:t,onClick:e=>h(e,t),children:s}):(0,l.jsx)("a",{...a,children:s})}}),[h]),f=(0,a.useMemo)(()=>[i.A],[]),v=(0,a.useMemo)(()=>[d.A,[o.A,y.uO],c.A,u.A],[]);return(0,l.jsx)(r.oz,{remarkPlugins:f,rehypePlugins:v,components:k,children:t})}),R=(0,a.memo)(function(e){let{mobileTab:t,onTabChange:s}=e,a=(0,n.c)("worktree");return(0,l.jsxs)("div",{className:"flex border-b border-border",children:[(0,l.jsxs)("button",{"data-testid":"mobile-tab-editor",onClick:()=>s("editor"),className:"flex-1 py-2 text-sm font-medium ".concat("editor"===t?"text-accent-600 dark:text-accent-400 border-b-2 border-accent-600 dark:border-accent-400":"text-muted-foreground"),children:[(0,l.jsx)(x.A,{className:"h-4 w-4 inline-block mr-1"}),a("markdownPreview.editor")]}),(0,l.jsxs)("button",{"data-testid":"mobile-tab-preview",onClick:()=>s("preview"),className:"flex-1 py-2 text-sm font-medium ".concat("preview"===t?"text-accent-600 dark:text-accent-400 border-b-2 border-accent-600 dark:border-accent-400":"text-muted-foreground"),children:[(0,l.jsx)(m.A,{className:"h-4 w-4 inline-block mr-1"}),a("markdownPreview.preview")]})]})}),C=(0,a.memo)(function(e){let{isMobile:t}=e,s=(0,n.c)("worktree");return(0,l.jsxs)("div",{"data-testid":"maximize-hint",className:"flex items-center justify-center px-4 py-1 bg-muted text-muted-foreground text-xs",children:[s("markdownPreview.exitFullscreenHint")," ",t&&s("markdownPreview.exitFullscreenHintSwipe")]})}),A=(0,a.memo)(function(e){let{onDismiss:t}=e,s=(0,n.c)("worktree");return(0,l.jsxs)("div",{"data-testid":"large-file-warning",className:"flex items-center gap-2 px-4 py-2 bg-warning-subtle border-b border-warning-border text-warning-foreground text-sm",children:[(0,l.jsx)(p.A,{className:"h-4 w-4"}),s("markdownPreview.largeFileWarning"),(0,l.jsx)("button",{onClick:t,className:"ml-auto text-warning hover:text-warning",children:(0,l.jsx)(g.A,{className:"h-4 w-4"})})]})})},34380:(e,t,s)=>{s.d(t,{B:()=>E});var l=s(95155),a=s(12115),n=s(18955),r=s(28019),i=s(54014),d=s(74385),o=s(50825),c=s(37381);function u(e){var t,s,l,a,n;let r=e.agentInstances&&e.agentInstances.length>0?e.agentInstances.map(e=>e.alias||e.cliTool):null!=(s=e.selectedAgents)?s:e.cliToolId?[e.cliToolId]:[];return{id:e.id,name:e.name,repositoryName:null!=(l=e.repositoryDisplayName)?l:e.repositoryName,syncedBranch:null!=(a=e.branch)?a:null,liveBranch:null!=(n=null==(t=e.gitStatus)?void 0:t.currentBranch)?n:null,dirty:e.gitStatus?e.gitStatus.isDirty:null,agents:[...new Set(r)],sessionRunning:!0===e.isSessionRunning}}let x={status:"loading",options:[]};async function m(e){let t=await fetch("/api/worktrees",{signal:e,headers:{Accept:"application/json"}});if(!t.ok)throw Error("HTTP ".concat(t.status));let s=await t.json(),l=null==s?void 0:s.worktrees;if(!Array.isArray(l))throw Error("Malformed worktree list");return l.map(u)}function p(e){let{selectedWorktreeId:t,onSelect:s,disabled:i=!1}=e,d=(0,n.c)("skills"),[o,u]=(0,a.useState)(x),[p,h]=(0,a.useState)(0);(0,a.useEffect)(()=>{let e=new AbortController;return u(x),m(e.signal).then(t=>{e.signal.aborted||u({status:"loaded",options:t})}).catch(()=>{e.signal.aborted||u({status:"error",options:[]})}),()=>e.abort()},[p]);let k=(0,a.useCallback)(()=>h(e=>e+1),[]);return"loading"===o.status?(0,l.jsxs)("div",{className:"space-y-2","data-testid":"skill-target-loading",children:[(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("target.loading")}),(0,l.jsx)(r.EA,{className:"h-24 w-full rounded-lg"})]}):"error"===o.status?(0,l.jsxs)(r.Zp,{className:"space-y-3","data-testid":"skill-target-error",children:[(0,l.jsx)(c.u,{tone:"danger",children:d("target.errorNotice")}),(0,l.jsx)(r.$n,{variant:"secondary",size:"sm",onClick:k,"data-testid":"skill-target-retry",children:d("target.retry")})]}):0===o.options.length?(0,l.jsx)(r.Zp,{"data-testid":"skill-target-empty",children:(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("target.empty")})}):(0,l.jsxs)("div",{className:"space-y-3","data-testid":"skill-target-selector",children:[(0,l.jsx)("div",{role:"radiogroup","aria-label":d("target.heading"),className:"space-y-2",children:o.options.map(e=>(0,l.jsx)(g,{option:e,selected:e.id===t,disabled:i,onSelect:s},e.id))}),(0,l.jsx)(c.u,{tone:"neutral","data-testid":"skill-target-branch-notice",children:d("target.branchFreshnessNotice")})]})}function g(e){var t;let{option:s,selected:a,disabled:i,onSelect:d}=e,o=(0,n.c)("skills"),c=null!=(t=s.liveBranch)?t:s.syncedBranch;return(0,l.jsxs)("button",{type:"button",role:"radio","aria-checked":a,disabled:i,onClick:()=>d(s.id),"data-testid":"skill-target-option-".concat(s.id),className:"w-full rounded-lg border px-3 py-2.5 text-left transition-colors disabled:cursor-not-allowed disabled:opacity-60 ".concat(a?"border-accent-500 bg-accent-50 dark:bg-accent-950/40":"border-border bg-card hover:bg-muted"),children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsx)("span",{className:"text-sm font-semibold text-foreground break-all",children:s.name}),a&&(0,l.jsx)(r.Ex,{variant:"info",children:o("target.selected")})]}),(0,l.jsxs)("dl",{className:"mt-1.5 grid grid-cols-1 gap-x-4 gap-y-1 sm:grid-cols-2",children:[(0,l.jsx)(h,{label:o("target.repository"),children:s.repositoryName}),(0,l.jsx)(h,{label:o("target.branch"),children:null!=c?c:o("target.branchUnknown")}),(0,l.jsx)(h,{label:o("target.agents"),children:s.agents.length>0?s.agents.join(", "):o("target.agentsNone")}),(0,l.jsx)(h,{label:o("target.workingTree"),children:o(null===s.dirty?"target.workingTreeUnknown":s.dirty?"target.workingTreeDirty":"target.workingTreeClean")})]}),s.sessionRunning&&(0,l.jsx)("p",{className:"mt-1.5 text-xs text-muted-foreground","data-testid":"skill-target-session-".concat(s.id),children:o("target.sessionRunning")})]})}function h(e){let{label:t,children:s}=e;return(0,l.jsxs)("div",{className:"min-w-0",children:[(0,l.jsx)("dt",{className:"text-xs font-medium text-muted-foreground",children:t}),(0,l.jsx)("dd",{className:"text-xs text-foreground break-words",children:s})]})}var k=s(95584);function f(e){let{label:t,children:s}=e;return(0,l.jsxs)("div",{className:"min-w-0",children:[(0,l.jsx)("dt",{className:"text-xs font-medium text-muted-foreground",children:t}),(0,l.jsx)("dd",{className:"mt-0.5 break-words text-sm text-foreground",children:s})]})}function j(e){let{level:t,kind:s,label:a}=e,i=(0,n.c)("skills");return(0,l.jsxs)(r.Ex,{variant:k.eK[t],"data-testid":"skill-plan-risk-".concat(s,"-").concat(t),children:[a,": ",i(k.pP[t])]})}function b(e){let{entry:t}=e,s=(0,n.c)("skills"),a=k.KL[t.reason];return(0,l.jsxs)("li",{className:"space-y-1.5 rounded-md border border-border px-3 py-2","data-testid":"skill-plan-file-".concat(t.path),children:[(0,l.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,l.jsx)(r.Ex,{variant:k.tC[t.change],children:s(k.AS[t.change])}),(0,l.jsx)("span",{className:"break-all font-mono text-xs text-foreground",children:t.path}),t.generated&&(0,l.jsx)(r.Ex,{variant:"gray",children:s("plan.fileGenerated")})]}),a&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:s(a)}),t.gitIgnored&&(0,l.jsx)("p",{className:"text-xs text-warning-foreground",children:s("plan.gitIgnored")}),t.binary?(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:s("plan.diffBinary")}):t.diff?(0,l.jsxs)("details",{children:[(0,l.jsx)("summary",{className:"cursor-pointer text-xs text-accent-600 dark:text-accent-400",children:s("plan.diffToggle",{additions:t.additions,deletions:t.deletions})}),(0,l.jsx)("pre",{className:"mt-1 overflow-x-auto rounded bg-muted p-2 font-mono text-[11px] leading-snug text-foreground",children:t.diff}),t.diffTruncated&&(0,l.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:s("plan.diffTruncated")})]}):null]})}function y(e){var t,s,a;let{plan:i}=e,d=(0,n.c)("skills"),{target:o,skill:u}=i,x=u.compatibility.commandmate;return(0,l.jsxs)(r.Zp,{className:"space-y-4","data-testid":"skill-install-plan",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:d("plan.heading")}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:d("plan.expiresAt",{timestamp:i.expiresAt})})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.targetHeading")}),(0,l.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,l.jsx)(f,{label:d("target.repository"),children:o.repositoryName}),(0,l.jsx)(f,{label:d("target.heading"),children:o.worktreeName}),(0,l.jsx)(f,{label:d("target.branch"),children:null!=(t=o.branch)?t:d("target.branchUnknown")}),(0,l.jsx)(f,{label:d("plan.headStateLabel"),children:d(null!=(s=k.kF[o.headState])?s:"plan.headState.unknown")}),(0,l.jsx)(f,{label:d("target.workingTree"),children:o.workingTreeDirty?d("target.workingTreeDirty"):d("target.workingTreeClean")}),(0,l.jsx)(f,{label:d("plan.installRoot"),children:(0,l.jsx)("span",{className:"break-all font-mono text-xs",children:(o.installRoots&&o.installRoots.length>0?o.installRoots:[o.installRoot]).map(e=>(0,l.jsx)("span",{className:"block",children:e},e))})}),(0,l.jsx)(f,{label:d("plan.existingInstall"),children:o.existingInstall?d("plan.existingInstallVersion",{version:o.existingInstall.version}):d("plan.existingInstallNone")}),(0,l.jsx)(f,{label:d("detail.recommendedVersion"),children:(0,l.jsx)("span",{className:"font-mono text-xs",children:u.version})})]})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-risk-section",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.riskHeading")}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-1.5",children:[(0,l.jsx)(j,{level:u.declaredRisk,kind:"declared",label:d("plan.riskDeclared")}),(0,l.jsx)(j,{level:u.computedRisk,kind:"computed",label:d("plan.riskComputed")}),(0,l.jsx)(j,{level:u.effectiveRisk,kind:"effective",label:d("plan.riskEffective")})]}),(0,l.jsx)("p",{className:"break-words text-sm text-foreground",children:u.riskRationale}),(0,l.jsx)(c.u,{tone:"neutral",children:d("plan.riskNotice")})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-permissions",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("permissions.heading")}),u.declaredPermissions.length>0?(0,l.jsx)("div",{className:"flex flex-wrap gap-1.5",children:u.declaredPermissions.map(e=>(0,l.jsx)(r.Ex,{variant:"warning",children:k.z2[e]?d(k.z2[e]):e},e))}):(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("plan.permissionsNone")}),(0,l.jsx)(c.u,{tone:"warning",children:d("permissions.declarationOnlyNotice")})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-requirements",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("requirements.heading")}),0===u.requirements.commands.length&&0===u.requirements.networkHosts.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("plan.requirementsNone")}):(0,l.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[u.requirements.commands.length>0&&(0,l.jsx)(f,{label:d("plan.requirementsCommands"),children:u.requirements.commands.map(e=>{var t;return"".concat(e.name," ").concat(null!=(t=e.versionRange)?t:d("plan.commandAnyVersion"))}).join(", ")}),u.requirements.networkHosts.length>0&&(0,l.jsx)(f,{label:d("plan.requirementsHosts"),children:u.requirements.networkHosts.join(", ")})]})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-scripts",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.scriptsHeading")}),0===u.executablePaths.length&&0===u.scriptPaths.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("plan.scriptsNone")}):(0,l.jsx)("ul",{className:"space-y-1",children:[...new Set([...u.scriptPaths,...u.executablePaths])].map(e=>(0,l.jsx)("li",{className:"break-all font-mono text-xs text-foreground",children:e},e))})]}),"compatible"!==x.status&&(0,l.jsx)(c.u,{tone:"warning","data-testid":"skill-plan-compatibility-notice",children:d((0,k.e5)(x.messageKey),{range:x.requiredRange,currentVersion:null!=(a=x.currentVersion)?a:""})}),i.warnings.length>0&&(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-warnings",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.warningsHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:i.warnings.map(e=>(0,l.jsx)("li",{className:"text-xs text-warning-foreground",children:k.RO[e]?d(k.RO[e]):e},e))})]}),(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-files",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:d("plan.filesHeading")}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":"skill-plan-stats",children:d("plan.stats",{added:i.stats.added,modified:i.stats.modified,unchanged:i.stats.unchanged,conflicted:i.stats.conflicted,unmanaged:i.stats.unmanaged})}),0===i.files.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:d("plan.filesEmpty")}):(0,l.jsx)("ul",{className:"space-y-2",children:i.files.map(e=>(0,l.jsx)(b,{entry:e},e.path))})]}),i.blockers.length>0&&(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-install-blockers",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-danger-foreground",children:d("plan.blockersHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:i.blockers.map(e=>{var t,s;return(0,l.jsxs)("li",{className:"text-xs text-danger-foreground",children:[e.path&&(0,l.jsx)("span",{className:"mr-1 break-all font-mono",children:e.path}),e.code.startsWith("skills.")?d((0,k.e5)(e.code),{range:x.requiredRange,currentVersion:null!=(t=x.currentVersion)?t:""}):k.KL[e.code]?d(k.KL[e.code]):e.code]},"".concat(e.code,":").concat(null!=(s=e.path)?s:""))})}),(0,l.jsx)(c.u,{tone:"danger",children:d("plan.blockedNotice")})]})]})}function N(e){let{entry:t}=e,s=(0,n.c)("skills"),a=k.Mj[t.disposition],i=k.hJ[t.reason];return(0,l.jsxs)("li",{className:"flex flex-wrap items-center gap-2","data-testid":"skill-uninstall-file-".concat(t.path),children:[(0,l.jsx)(r.Ex,{variant:"remove"===t.disposition?"info":"warning",children:a?s(a):t.disposition}),(0,l.jsx)("span",{className:"break-all font-mono text-xs text-foreground",children:t.path}),i&&(0,l.jsx)("span",{className:"text-xs text-muted-foreground",children:s(i)})]})}function w(e){var t;let{plan:s}=e,a=(0,n.c)("skills"),{target:d,skill:o}=s;return(0,l.jsxs)(r.Zp,{className:"space-y-4","data-testid":"skill-uninstall-plan",children:[(0,l.jsxs)("div",{className:"space-y-1",children:[(0,l.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:a("uninstall.heading")}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:a("uninstall.expiresAt",{timestamp:s.expiresAt})})]}),(0,l.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,l.jsx)(f,{label:a("target.repository"),children:d.repositoryName}),(0,l.jsx)(f,{label:a("target.heading"),children:d.worktreeName}),(0,l.jsx)(f,{label:a("target.branch"),children:null!=(t=d.branch)?t:a("target.branchUnknown")}),(0,l.jsx)(f,{label:a("uninstall.installedVersion"),children:(0,l.jsx)("span",{className:"font-mono text-xs",children:o.version||a("uninstall.versionUnknown")})}),(0,l.jsx)(f,{label:a("plan.installRoot"),children:(0,l.jsx)("span",{className:"break-all font-mono text-xs",children:d.installRoot})}),(0,l.jsx)(f,{label:a("target.workingTree"),children:d.workingTreeDirty?a("target.workingTreeDirty"):a("target.workingTreeClean")})]}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":"skill-uninstall-stats",children:a("uninstall.stats",{removable:s.stats.removable,modified:s.stats.modified,missing:s.stats.missing,unknown:s.stats.unknown,irregular:s.stats.irregular})}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:a("uninstall.removalsHeading")}),0===s.removals.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:a("uninstall.removalsEmpty")}):(0,l.jsx)("ul",{className:"space-y-1.5",children:s.removals.map(e=>(0,l.jsx)(N,{entry:e},e.path))})]}),(0,l.jsxs)("section",{className:"space-y-2",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:a("uninstall.retainedHeading")}),0===s.retained.length?(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:a("uninstall.retainedEmpty")}):(0,l.jsx)("ul",{className:"space-y-1.5",children:s.retained.map(e=>(0,l.jsx)(N,{entry:e},e.path))})]}),(0,l.jsxs)("div",{className:"space-y-2",children:[s.skill.agents.length>0&&(0,l.jsx)("div",{className:"flex flex-wrap gap-1.5","data-testid":"skill-uninstall-agents",children:s.skill.agents.map(e=>(0,l.jsx)(r.Ex,{variant:"gray",children:(0,i.f_)(e.agent)},e.agent))}),(0,l.jsx)(c.u,{tone:"neutral",children:a((0,k.e5)(s.nextActionKey))})]}),s.blockers.length>0&&(0,l.jsxs)("section",{className:"space-y-2","data-testid":"skill-uninstall-blockers",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-danger-foreground",children:a("uninstall.blockersHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:s.blockers.map(e=>{var t;return(0,l.jsxs)("li",{className:"text-xs text-danger-foreground",children:[e.path&&(0,l.jsx)("span",{className:"mr-1 break-all font-mono",children:e.path}),a((0,k.e5)(e.messageKey))]},"".concat(e.code,":").concat(null!=(t=e.path)?t:""))})})]})]})}var v=s(80130);let R={worktreeId:null,busy:null,installPlan:null,uninstallPlan:null,installResult:null,uninstallResult:null,riskAcknowledged:!1,failure:null};function C(e){return{...e,installPlan:null,uninstallPlan:null,installResult:null,uninstallResult:null,riskAcknowledged:!1,failure:null}}function A(e,t){return"".concat(e,"-").concat(t)}function I(e){let{failure:t}=e,s=(0,n.c)("skills");return(0,l.jsxs)("div",{className:"space-y-2","data-testid":"skill-operation-error",children:[(0,l.jsxs)(c.u,{tone:"danger",children:[(0,l.jsx)("p",{className:"font-medium",children:s("operation.errorHeading")}),(0,l.jsx)("p",{className:"mt-1",children:s((0,k.FW)(t.code))}),(0,l.jsx)("p",{className:"mt-1 break-words",children:s("state.errorCode",{code:t.code})})]}),t.nextActionKey&&(0,l.jsx)(c.u,{tone:"warning",children:s((0,k.e5)(t.nextActionKey))}),t.blockers&&t.blockers.length>0&&(0,l.jsx)("ul",{className:"space-y-1","data-testid":"skill-operation-error-blockers",children:t.blockers.map(e=>{var t;return(0,l.jsxs)("li",{className:"text-xs text-danger-foreground",children:[e.path&&(0,l.jsx)("span",{className:"mr-1 break-all font-mono",children:e.path}),s((0,k.e5)(e.messageKey))]},"".concat(e.code,":").concat(null!=(t=e.path)?t:""))})})]})}function P(e){let{agents:t,skillId:s,version:a}=e,r=(0,n.c)("skills");return 0===t.length?null:(0,l.jsxs)("div",{className:"space-y-1","data-testid":"skill-operation-reload",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:r("operation.reloadHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:t.map(e=>(0,l.jsx)("li",{className:"text-xs text-muted-foreground",children:r((0,k.e5)(e.messageKey),{agent:(0,i.f_)(e.agent),skillId:s,version:a})},e.agent))})]})}function E(e){var t;let{skillId:s,version:i,blockedReason:u,worktreeId:x,agents:m=[]}=e,g=(0,n.c)("skills"),[h,f]=(0,a.useState)(()=>x?{...R,worktreeId:x}:R),j=(0,a.useCallback)(e=>{f(t=>t.worktreeId===e?t:C({...t,worktreeId:e,busy:null}))},[]);(0,a.useEffect)(()=>{x&&j(x)},[x,j]);let b=(0,a.useCallback)(async()=>{let e=h.worktreeId;if(!e)return;f(e=>({...C(e),busy:"install-plan"}));let t=await (0,v.Q6)(e,s,{version:null!=i?i:void 0});f(e=>({...e,busy:null,installPlan:t.ok?t.data.plan:null,failure:t.ok?null:t.failure}))},[s,h.worktreeId,i]),N=(0,a.useCallback)(async()=>{let e=h.worktreeId,t=h.installPlan;if(!e||!t||t.requiresRiskAcknowledgement&&!h.riskAcknowledged)return;f(e=>({...e,busy:"install-apply",failure:null}));let l=await (0,v.Xi)(e,s,{planToken:t.token,version:t.skill.version,acknowledgeRisk:!!t.requiresRiskAcknowledgement||void 0,idempotencyKey:A("skill-install",t.token)});l.ok&&(0,d.k)(e),f(e=>({...e,busy:null,installPlan:l.ok?null:e.installPlan,installResult:l.ok?l.data:null,failure:l.ok?null:l.failure}))},[s,h.installPlan,h.riskAcknowledged,h.worktreeId]),E=(0,a.useCallback)(async()=>{let e=h.worktreeId;if(!e)return;f(e=>({...C(e),busy:"uninstall-plan"}));let t=await (0,v.hN)(e,s);f(e=>({...e,busy:null,uninstallPlan:t.ok?t.data.plan:null,failure:t.ok?null:t.failure}))},[s,h.worktreeId]),K=(0,a.useCallback)(async()=>{let e=h.worktreeId,t=h.uninstallPlan;if(!e||!t)return;f(e=>({...e,busy:"uninstall-apply",failure:null}));let l=await (0,v.E)(e,s,{planToken:t.token,idempotencyKey:A("skill-uninstall",t.token)});f(e=>({...e,busy:null,uninstallPlan:l.ok?null:e.uninstallPlan,uninstallResult:l.ok?l.data:null,failure:l.ok?null:l.failure}))},[s,h.uninstallPlan,h.worktreeId]),T=(0,a.useCallback)(()=>{f(e=>C(e))},[]),H=null!==h.busy,S=h.installPlan,W=h.uninstallPlan,q=null!=u?u:g(h.worktreeId?"plan.ready":"plan.chooseTarget"),z=null!==S&&S.requiresRiskAcknowledgement&&!h.riskAcknowledged;return(0,l.jsxs)("div",{className:"space-y-3","data-testid":"skill-install-panel",children:[!x&&(0,l.jsx)(p,{selectedWorktreeId:h.worktreeId,onSelect:j,disabled:H}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,l.jsx)(r.$n,{variant:"primary",disabled:H||null!==u||!h.worktreeId,onClick:b,"data-testid":"skill-install-action","aria-describedby":"skill-install-reason",children:g("install-plan"===h.busy?"plan.building":"plan.build")}),(0,l.jsx)(r.$n,{variant:"secondary",disabled:H||!h.worktreeId,onClick:E,"data-testid":"skill-uninstall-action",children:g("uninstall-plan"===h.busy?"uninstall.building":"uninstall.build")})]}),(0,l.jsx)("p",{id:"skill-install-reason",className:"text-sm text-muted-foreground","data-testid":"skill-install-reason",children:q}),m.length>0&&(0,l.jsxs)("div",{className:"space-y-1","data-testid":"skill-install-reload-preview",children:[(0,l.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:g("operation.reloadHeading")}),(0,l.jsx)("ul",{className:"space-y-1",children:m.map(e=>(0,l.jsx)(o.m,{agent:e,variant:"reload"},e.agent))})]}),h.failure&&(0,l.jsx)(I,{failure:h.failure}),S&&(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsx)(y,{plan:S}),S.requiresRiskAcknowledgement&&(0,l.jsxs)(r.Zp,{className:"space-y-3","data-testid":"skill-install-risk-acknowledgement",children:[(0,l.jsx)(c.u,{tone:"danger",children:g((0,k.e5)(null!=(t=S.riskAcknowledgementMessageKey)?t:"skills.plan.highRiskAcknowledgement"))}),(0,l.jsxs)("label",{className:"flex items-start gap-2 text-sm text-foreground",children:[(0,l.jsx)(r.Sc,{checked:h.riskAcknowledged,onCheckedChange:e=>f(t=>({...t,riskAcknowledged:!0===e})),disabled:H,"data-testid":"skill-install-risk-checkbox",className:"mt-0.5"}),(0,l.jsx)("span",{children:g("plan.acknowledgeLabel")})]})]}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,l.jsx)(r.$n,{variant:S.requiresRiskAcknowledgement?"danger":"primary",disabled:H||!S.installable||z,onClick:N,"data-testid":"skill-install-confirm",children:g("install-apply"===h.busy?"plan.confirming":"plan.confirm")}),(0,l.jsx)(r.$n,{variant:"ghost",disabled:H,onClick:T,"data-testid":"skill-install-discard",children:g("plan.discard")})]})]}),W&&(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsx)(w,{plan:W}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,l.jsx)(r.$n,{variant:"danger",disabled:H||!W.removable,onClick:K,"data-testid":"skill-uninstall-confirm",children:g("uninstall-apply"===h.busy?"uninstall.confirming":"uninstall.confirm")}),(0,l.jsx)(r.$n,{variant:"ghost",disabled:H,onClick:T,"data-testid":"skill-uninstall-discard",children:g("plan.discard")})]})]}),h.installResult&&(0,l.jsxs)(r.Zp,{className:"space-y-3","data-testid":"skill-install-result",children:[(0,l.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:g("operation.installedHeading")}),(0,l.jsx)(c.u,{tone:"info",children:g((0,k.e5)(h.installResult.operation.nextActionKey))}),h.installResult.operation.replayed&&(0,l.jsx)(c.u,{tone:"neutral","data-testid":"skill-operation-replayed",children:g("operation.replayNotice")}),h.installResult.install&&"files"in h.installResult.install&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:g("operation.filesWritten",{count:h.installResult.install.files.length})}),"reload"in h.installResult&&(0,l.jsx)(P,{agents:h.installResult.reload.agents,skillId:h.installResult.reload.skillId,version:h.installResult.reload.version}),(0,l.jsx)(r.$n,{variant:"secondary",size:"sm",onClick:T,"data-testid":"skill-operation-reset",children:g("operation.startOver")})]}),h.uninstallResult&&(0,l.jsxs)(r.Zp,{className:"space-y-3","data-testid":"skill-uninstall-result",children:[(0,l.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:g("operation.uninstalledHeading")}),(0,l.jsx)(c.u,{tone:"info",children:g((0,k.e5)(h.uninstallResult.operation.nextActionKey))}),h.uninstallResult.operation.replayed&&(0,l.jsx)(c.u,{tone:"neutral","data-testid":"skill-operation-replayed",children:g("operation.replayNotice")}),h.uninstallResult.uninstall&&"removedFiles"in h.uninstallResult.uninstall&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:g("operation.filesRemoved",{count:h.uninstallResult.uninstall.removedFiles.length})}),"reload"in h.uninstallResult&&(0,l.jsx)(P,{agents:h.uninstallResult.reload.agents,skillId:h.uninstallResult.reload.skillId,version:h.uninstallResult.reload.version}),(0,l.jsx)(r.$n,{variant:"secondary",size:"sm",onClick:T,"data-testid":"skill-operation-reset",children:g("operation.startOver")})]})]})}},50666:(e,t,s)=>{s.d(t,{Ck:()=>r});var l=s(95155),a=s(12115),n=s(53482);function r(e){let{children:t,as:s="div",className:r=""}=e,i=function e(t){return null==t||"boolean"==typeof t?"":"string"==typeof t?t:"number"==typeof t?String(t):Array.isArray(t)?t.map(e).join(""):a.isValidElement(t)?e(t.props.children):""}(t);if(!i||0===i.trim().length)return(0,l.jsx)(s,{className:r||void 0,children:t});let d="relative group ".concat("span"===s?"block ":"").concat(r).trim();return(0,l.jsxs)(s,{className:d,"data-testid":"code-block-with-copy",children:[t,(0,l.jsx)(n.i,{text:i,className:"absolute right-2 top-2 z-10 opacity-100 md:opacity-0 md:group-hover:opacity-100 md:group-focus-within:opacity-100 focus:opacity-100"})]})}},50825:(e,t,s)=>{s.d(t,{m:()=>o});var l=s(95155);s(12115);var a=s(18955),n=s(54014),r=s(37381),i=s(95584);function d(e){let{axis:t,agentName:s}=e,n=(0,a.c)("skills");return(0,l.jsxs)("li",{className:"text-xs text-muted-foreground","data-testid":"skill-agent-axis-".concat(t.axis),children:[(0,l.jsx)("span",{className:"font-medium text-foreground",children:n((0,i.e5)(t.axisKey))}),": ",(0,l.jsx)("span",{"data-testid":"skill-agent-axis-".concat(t.axis,"-").concat(t.outcome),children:n((0,i.e5)(t.outcomeKey))})," — ",n((0,i.e5)(t.evidenceKindKey)),t.limitationKey&&(0,l.jsx)("span",{className:"mt-0.5 block","data-testid":"skill-agent-axis-".concat(t.axis,"-limitation"),children:n((0,i.e5)(t.limitationKey),{agent:s})})]})}function o(e){var t;let{agent:s,variant:o="full"}=e,c=(0,a.c)("skills"),u=(0,n.f_)(s.agent),x=s.measured;return"reload"===o?(0,l.jsx)("li",{className:"text-xs text-muted-foreground","data-testid":"skill-agent-reload-".concat(s.agent),children:c((0,i.e5)(s.reloadKey),{agent:u})}):(0,l.jsxs)("div",{className:"space-y-1","data-testid":"skill-agent-evidence-".concat(s.agent),children:[(0,l.jsx)("p",{className:"text-xs font-medium text-foreground",children:u}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground break-words",children:c("compatibility.declaredLabel",{support:c((0,i.e5)(s.declaredLabelKey))})}),(0,l.jsxs)("p",{className:"text-xs text-muted-foreground break-words",children:[c("compatibility.evidence"),": ",s.evidence]}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground break-words","data-testid":"skill-agent-verification-".concat(s.agent),children:c((0,i.e5)(s.verificationKey))}),x?(0,l.jsxs)("div",{className:"space-y-0.5 border-l-2 border-border pl-2",children:[(0,l.jsx)("p",{className:"text-xs font-medium text-foreground",children:c("compatibility.measuredHeading")}),(0,l.jsxs)("ul",{className:"space-y-0.5",children:[(0,l.jsx)(d,{axis:x.discovery,agentName:u}),(0,l.jsx)(d,{axis:x.invocation,agentName:u})]}),x.testedVersion&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:c("compatibility.testedVersion",{agent:u,version:x.testedVersion})}),x.testedDate&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground",children:c("compatibility.testedDate",{date:x.testedDate})}),x.discoveryRoots.length>0&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground break-all",children:c("compatibility.discoveryRoots",{roots:x.discoveryRoots.join(", ")})}),x.evidenceSource&&(0,l.jsxs)("p",{className:"text-xs text-muted-foreground break-all",children:[c("compatibility.evidenceSource"),": ",x.evidenceSource]}),x.stale&&(0,l.jsx)(r.u,{tone:"warning","data-testid":"skill-agent-evidence-stale-".concat(s.agent),children:c("compatibility.evidenceStale",{days:null!=(t=x.ageDays)?t:0})})]}):s.skipReasonKey&&(0,l.jsx)("p",{className:"text-xs text-muted-foreground break-words","data-testid":"skill-agent-skip-reason-".concat(s.agent),children:c((0,i.e5)(s.skipReasonKey))}),(0,l.jsxs)("p",{className:"text-xs text-muted-foreground break-words",children:[(0,l.jsx)("span",{className:"font-medium text-foreground",children:c("compatibility.reloadHeading",{agent:u})}),": ",c((0,i.e5)(s.reloadKey),{agent:u})]})]})}},53482:(e,t,s)=>{s.d(t,{i:()=>o});var l=s(95155),a=s(12115),n=s(60322),r=s(9900);function i(){return(0,l.jsx)("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})}function d(){return(0,l.jsx)("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,l.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})})}function o(e){let{text:t,className:s="",label:o="Copy"}=e,[c,u]=(0,a.useState)(!1),x=(0,a.useRef)(null);(0,a.useEffect)(()=>()=>{x.current&&clearTimeout(x.current)},[]);let m=(0,a.useCallback)(async()=>{try{await (0,n.l)(t),u(!0),x.current&&clearTimeout(x.current),x.current=setTimeout(()=>u(!1),r.s7)}catch(e){}},[t]);return(0,l.jsxs)("button",{type:"button",onClick:m,className:"inline-flex items-center gap-1 rounded border border-border bg-surface px-2 py-0.5 text-[11px] font-medium text-foreground transition-colors hover:bg-muted ".concat(s),"aria-label":c?"Copied":o,title:c?"Copied!":o,children:[c?(0,l.jsx)(d,{}):(0,l.jsx)(i,{}),(0,l.jsx)("span",{children:c?"Copied":o})]})}},60322:(e,t,s)=>{s.d(t,{l:()=>a});let l=/\x1b\[[0-9;]*[a-zA-Z]|\x1b\][^\x07]*\x07|\[[0-9;]*m/g;async function a(e){var t;if(!e||0===e.trim().length)return;let s=e.replace(l,"");if(null==(t=navigator.clipboard)?void 0:t.writeText)try{await navigator.clipboard.writeText(s);return}catch(e){}let a=document.createElement("textarea");a.value=s,a.style.position="fixed",a.style.left="-9999px",a.style.top="-9999px",a.style.opacity="0",document.body.appendChild(a),a.focus(),a.select();try{document.execCommand("copy")}finally{document.body.removeChild(a)}}},69352:(e,t,s)=>{s.d(t,{WU:()=>o,d3:()=>c,dj:()=>d,uO:()=>u});var l,a,n,r,i=s(9567);function d(e){return e.startsWith("#")?"anchor":e.startsWith("http://")||e.startsWith("https://")||e.startsWith("mailto:")||e.startsWith("tel:")?"external":"relative"}function o(e,t){if(!t)return null;let s=e.substring(0,e.lastIndexOf("/")+1);try{let e=new URL(s,"file:///"),l=new URL(t,e),a=decodeURIComponent(l.pathname);if(a.startsWith("/")){let e=a.substring(1);if(e.length>0)return e}}catch(e){}return null}function c(e){return!e||0===e.length||e.length>2048||/[\x00-\x1f\x7f]/.test(e)?null:e}let u={...i.j,attributes:{...i.j.attributes,a:[...(null!=(n=null==(l=i.j.attributes)?void 0:l.a)?n:[]).filter(e=>"href"!==e),["href",/^(?:#|mailto:|tel:|https?:\/\/|(?![a-zA-Z][a-zA-Z0-9+.-]*:))/]],img:[...(null!=(r=null==(a=i.j.attributes)?void 0:a.img)?r:[]).filter(e=>"src"!==e),["src",/^(?:https?:\/\/|(?![a-zA-Z][a-zA-Z0-9+.-]*:))/],"alt","width","height"]}}},74385:(e,t,s)=>{s.d(t,{I:()=>l,k:()=>a});let l="skill:installed";function a(e){window.dispatchEvent(new CustomEvent(l,{detail:{worktreeId:e}}))}},75333:(e,t,s)=>{s.d(t,{Xz:()=>o,qW:()=>c,uE:()=>u});var l=s(95155);s(12115);var a=s(18955),n=s(77801),r=s(28019),i=s(54014),d=s(95584);function o(e){let{status:t,className:s}=e,n=(0,a.c)("skills");return(0,l.jsx)(r.Ex,{variant:d.H$[t],className:s,"data-testid":"skill-compatibility-".concat(t),children:n(d.OV[t])})}function c(e){let{risk:t,className:s}=e,i=(0,a.c)("skills");return(0,l.jsxs)(r.Ex,{variant:d.eK[t],className:s,"data-testid":"skill-declared-risk-".concat(t),children:["high"===t&&(0,l.jsx)(n.A,{size:12,"aria-hidden":"true",className:"mr-1 shrink-0"}),i("risk.declaredLabel",{level:i(d.pP[t])})]})}function u(e){let{agent:t}=e,s=(0,a.c)("skills");return(0,l.jsxs)(r.Ex,{variant:d.Et[t.support],"data-testid":"skill-agent-".concat(t.agent,"-").concat(t.support),children:[(0,i.f_)(t.agent),": ",s((0,d.e5)(t.labelKey))]})}},76246:(e,t,s)=>{s.d(t,{o:()=>l});function l(e){return e?e.split("/").map(encodeURIComponent).join("/"):""}},99648:(e,t,s)=>{s.d(t,{Co:()=>l,Ms:()=>n,td:()=>a});let l=".agents/skills",a=".claude/skills",n="skills.permissions.declarationOnlyNotice"}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3922],{33922:(e,t,r)=>{r.r(t),r.d(t,{MarkdownEditor:()=>ee});var n=r(95155),l=r(12115),o=r(47650),a=r(18955),s=r(80003),i=r(52056),d=r(64269),c=r(60322),u=r(94442),f=r(36402),m=r(3005),h=r(72115),x=r(89715),v=r(71847);let p=(0,v.A)("columns-2",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M12 3v18",key:"108xh3"}]]);var g=r(57828);let w=(0,v.A)("list-indent-increase",[["path",{d:"M21 5H11",key:"us1j55"}],["path",{d:"M21 12H11",key:"wd7e0v"}],["path",{d:"M21 19H11",key:"saa85w"}],["path",{d:"m3 8 4 4-4 4",key:"1a3j6y"}]]),b=(0,v.A)("list-indent-decrease",[["path",{d:"M21 5H11",key:"us1j55"}],["path",{d:"M21 12H11",key:"wd7e0v"}],["path",{d:"M21 19H11",key:"saa85w"}],["path",{d:"m7 8-4 4 4 4",key:"o5hrat"}]]);var k=r(76482),y=r(5917),j=r(75426),E=r(97624),N=r(37354),C=r(46046),S=r(65229),M=r(28019);let F=(0,l.memo)(function(e){let{filePath:t,isDirty:r,viewMode:l,onViewModeChange:o,showMobileTabs:s,copied:i,onCopy:d,isMaximized:c,onToggleFullscreen:u,isAutoSaveEnabled:f,onAutoSaveToggle:m,isAutoSaving:h,isSaving:v,onSave:F,onClose:R,hideViewModeToggle:A,hideMaximizeButton:P,onIndent:T,onOutdent:V,tabMovesFocus:z,onToggleTabMovesFocus:I}=e,D=(0,a.c)("worktree"),O=e=>e.preventDefault();return(0,n.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b border-border bg-muted",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 min-w-0 flex-shrink",children:[(0,n.jsx)(x.A,{className:"h-4 w-4 text-muted-foreground flex-shrink-0"}),(0,n.jsx)("span",{className:"text-sm font-medium text-foreground truncate",children:t}),r&&(0,n.jsx)("span",{"data-testid":"dirty-indicator",className:"inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium bg-warning-subtle text-warning-foreground flex-shrink-0",children:D("editor.unsaved")})]}),(0,n.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0",children:[!s&&!A&&(0,n.jsxs)("div",{className:"flex items-center gap-1 bg-muted rounded-lg p-1",children:[(0,n.jsx)("button",{"data-testid":"view-mode-split","aria-pressed":"split"===l,onClick:()=>o("split"),className:"p-1.5 rounded ".concat("split"===l?"bg-white dark:bg-input shadow-sm text-accent-600 dark:text-accent-400":"text-muted-foreground hover:text-foreground"),title:D("editor.splitView"),children:(0,n.jsx)(p,{className:"h-4 w-4"})}),(0,n.jsx)("button",{"data-testid":"view-mode-editor","aria-pressed":"editor"===l,onClick:()=>o("editor"),className:"p-1.5 rounded ".concat("editor"===l?"bg-white dark:bg-input shadow-sm text-accent-600 dark:text-accent-400":"text-muted-foreground hover:text-foreground"),title:D("editor.editorOnly"),children:(0,n.jsx)(x.A,{className:"h-4 w-4"})}),(0,n.jsx)("button",{"data-testid":"view-mode-preview","aria-pressed":"preview"===l,onClick:()=>o("preview"),className:"p-1.5 rounded ".concat("preview"===l?"bg-white dark:bg-input shadow-sm text-accent-600 dark:text-accent-400":"text-muted-foreground hover:text-foreground"),title:D("editor.previewOnly"),children:(0,n.jsx)(g.A,{className:"h-4 w-4"})})]}),(0,n.jsx)(M.$n,{variant:"ghost","data-testid":"editor-indent-button",onMouseDown:O,onClick:T,className:"flex min-h-[44px] min-w-[44px] items-center justify-center p-1.5 text-muted-foreground hover:text-foreground hover:bg-muted rounded",title:D("editor.indent"),"aria-label":D("editor.indent"),children:(0,n.jsx)(w,{className:"h-4 w-4"})}),(0,n.jsx)(M.$n,{variant:"ghost","data-testid":"editor-outdent-button",onMouseDown:O,onClick:V,className:"flex min-h-[44px] min-w-[44px] items-center justify-center p-1.5 text-muted-foreground hover:text-foreground hover:bg-muted rounded",title:D("editor.outdent"),"aria-label":D("editor.outdent"),children:(0,n.jsx)(b,{className:"h-4 w-4"})}),(0,n.jsx)(M.$n,{variant:"ghost","data-testid":"editor-tab-focus-toggle",onMouseDown:O,onClick:I,"aria-pressed":z,className:"flex min-h-[44px] min-w-[44px] items-center justify-center p-1.5 hover:bg-muted rounded ".concat(z?"text-accent-600 dark:text-accent-400":"text-muted-foreground hover:text-foreground"),title:D(z?"editor.tabMovesFocusOn":"editor.tabMovesFocusOff"),"aria-label":D(z?"editor.tabMovesFocusOn":"editor.tabMovesFocusOff"),children:(0,n.jsx)(k.A,{className:"h-4 w-4"})}),(0,n.jsx)(M.$n,{variant:"ghost","data-testid":"copy-content-button",onClick:d,className:"p-1.5 hover:bg-muted rounded ".concat(i?"text-success":"text-muted-foreground hover:text-foreground"),title:D("actions.copyContent"),children:i?(0,n.jsx)(y.A,{className:"h-4 w-4"}):(0,n.jsx)(j.A,{className:"h-4 w-4"})}),!P&&(0,n.jsx)(M.$n,{variant:"ghost","data-testid":"maximize-button",onClick:u,className:"p-1.5 text-muted-foreground hover:text-foreground hover:bg-muted rounded",title:D(c?"editor.exitFullscreen":"editor.enterFullscreen"),"aria-pressed":c,children:c?(0,n.jsx)(E.A,{className:"h-4 w-4"}):(0,n.jsx)(N.A,{className:"h-4 w-4"})}),(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:D("editor.auto")}),(0,n.jsx)("button",{"data-testid":"auto-save-toggle",role:"switch","aria-checked":f,onClick:()=>m(!f),className:"relative inline-flex h-5 w-9 items-center rounded-full transition-colors ".concat(f?"bg-accent-600":"bg-input"),children:(0,n.jsx)("span",{className:"inline-block h-3.5 w-3.5 transform rounded-full bg-white transition-transform ".concat(f?"translate-x-4":"translate-x-0.5")})})]}),f?(0,n.jsx)("span",{"data-testid":"auto-save-indicator",className:"text-sm text-muted-foreground",children:h?D("actions.saving"):r?"":D("actions.saved")}):(0,n.jsxs)(M.$n,{variant:"ghost","data-testid":"save-button",onClick:F,disabled:!r||v,className:"flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-sm font-medium transition-colors ".concat(r&&!v?"bg-accent-600 text-white hover:bg-accent-700":"bg-muted text-muted-foreground cursor-not-allowed"),children:[(0,n.jsx)(C.A,{className:"h-4 w-4"}),D(v?"actions.saving":"actions.save")]}),R&&(0,n.jsx)(M.$n,{variant:"ghost","data-testid":"close-button",onClick:R,className:"p-1.5 text-muted-foreground hover:text-foreground hover:bg-muted rounded",title:D("actions.close"),children:(0,n.jsx)(S.A,{className:"h-4 w-4"})})]})]})});var R=r(24027),A=r(55924),P=r(79962),T=r(38218);let V=l.useLayoutEffect;function z(){if("undefined"==typeof document)return null;let e=document;return e.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement||null}var I=r(2317),D=r(60850),O=r(8269),L=r(51434),K=r(4138),$=r(59854);function H(e,t){return e.lastIndexOf("\n",t-1)+1}function W(e,t,r){let n=r>t&&r>0&&"\n"===e[r-1]?r-1:r;return{start:H(e,t),end:function(e,t){let r=e.indexOf("\n",t);return -1===r?e.length:r}(e,n)}}function _(e,t,r,n,l,o){return{replaceStart:t,replaceEnd:r,replacement:n,selectionStart:l,selectionEnd:o,value:e.slice(0,t)+n+e.slice(r)}}function q(e,t,r,n){if(!(r>t&&e.slice(t,r).includes("\n"))){let l=t-H(e,t),o=n.length-l%n.length,a=" ".repeat(o),s=t+a.length;return _(e,t,r,a,s,s)}let{start:l,end:o}=W(e,t,r),a=e.slice(l,o).split("\n").map(e=>""===e||"\r"===e?e:n+e).join("\n");return _(e,l,o,a,l,l+a.length)}function B(e,t,r,n){let{start:l,end:o}=W(e,t,r),a=e.slice(l,o),s=a.split("\n").map(e=>(function(e,t){if(e.startsWith(" "))return e.slice(1);let r=0;for(;r<t.length&&" "===e[r];)r+=1;return e.slice(r)})(e,n)).join("\n");if(s===a)return t===r?null:_(e,l,o,s,t,r);if(t===r){let r=Math.min(a.length-s.length,Math.max(0,t-l)),n=t-r;return _(e,l,o,s,n,n)}return _(e,l,o,s,l,l+s.length)}let G={split:{showEditor:!0,showPreview:!0,editorWidth:"w-1/2",previewWidth:"w-1/2"},editor:{showEditor:!0,showPreview:!1,editorWidth:"w-full",previewWidth:"w-0"},preview:{showEditor:!1,showPreview:!0,editorWidth:"w-0",previewWidth:"w-full"}},U="commandmate:md-editor-view-mode",J={WARNING_THRESHOLD:512e3};function Y(e){return"number"==typeof e&&e>=.1&&e<=.9}function X(e){return"boolean"==typeof e}function Z(e){return"split"===e||"editor"===e||"preview"===e}let Q=(0,l.memo)(function(e){let{previewContent:t,onOpenFile:r,filePath:o,worktreeId:a,tocVisible:i,onToggleTocVisible:d,tocTitle:c,tocShowLabel:u,tocHideLabel:f}=e,m=(0,l.useRef)(null),h=(0,l.useRef)(null),[x,v]=(0,l.useState)(null),[p,g]=(0,l.useState)(!1);(0,l.useEffect)(()=>{v(h.current)},[]),(0,l.useEffect)(()=>{let e=m.current;if(!e||"undefined"==typeof ResizeObserver)return;let t=new ResizeObserver(e=>{var t,r;g((null!=(r=null==(t=e[0])?void 0:t.contentRect.width)?r:0)>=480)});return t.observe(e),()=>t.disconnect()},[]);let w=(0,l.useMemo)(()=>(0,P.K)(t),[t]),b=w.length>=2&&p,k=b&&i;return(0,n.jsxs)("div",{ref:m,className:"relative flex flex-1 overflow-hidden",children:[(0,n.jsx)("div",{ref:h,"data-testid":"markdown-preview",className:"flex-1 min-w-0 p-4 overflow-y-auto prose prose-sm dark:prose-invert max-w-none prose-headings:scroll-mt-2",children:(0,n.jsx)(R.G8,{content:t,onOpenFile:r,currentFilePath:o,worktreeId:a})}),k&&(0,n.jsx)("aside",{"data-testid":"markdown-preview-toc",className:"w-48 flex-shrink-0 overflow-y-auto border-l border-border py-4",children:(0,n.jsx)("div",{className:"sticky top-0",children:(0,n.jsx)(A.K,{entries:w,title:c,headerOffset:0,root:x})})}),b&&(0,n.jsx)("button",{"data-testid":"markdown-preview-toc-toggle",onClick:d,"aria-pressed":i,"aria-label":i?f:u,title:i?f:u,className:"absolute top-2 right-2 z-10 flex items-center justify-center rounded-md border border-border bg-surface/90 p-1.5 text-muted-foreground hover:text-foreground hover:bg-muted shadow-sm",children:(0,n.jsx)(s.A,{className:"h-4 w-4"})})]})}),ee=(0,l.memo)(function(e){let{worktreeId:t,filePath:r,fileType:s,onClose:x,onSave:v,initialViewMode:p,onMaximizedChange:g,onDirtyChange:w,onOpenFile:b,initialContent:k,embedded:y=!1,onContentChange:j}=e,E="text"===(null!=s?s:r.toLowerCase().endsWith(".md")?"markdown":"text"),N=(0,a.c)("worktree"),C=(0,f.SC)(),S=void 0!==k,M=null!=k?k:"",[A,H]=(0,l.useState)(M),[W,_]=(0,l.useState)(M),[ee,et]=(0,l.useState)(M),[er,en]=(0,l.useState)(()=>E||y?"editor":function(e){if(e&&Z(e))return e;{let e=localStorage.getItem(U);if(e&&Z(e))return e}return"split"}(p)),[el,eo]=(0,l.useState)(!S),[ea,es]=(0,l.useState)(!1),[ei,ed]=(0,l.useState)(null),[ec,eu]=(0,l.useState)(()=>S&&new Blob([M]).size>J.WARNING_THRESHOLD),{copied:ef,markCopied:em}=(0,K.q)(),[eh,ex]=(0,l.useState)("editor"),[ev,ep]=(0,l.useState)(null),{showToast:eg}=(0,u.dj)(),ew=(0,l.useRef)(null),eb=(0,l.useRef)(null),ek=(0,l.useRef)(null),ey=(0,l.useRef)(null),ej=(0,l.useRef)(null),eE=(0,l.useRef)(null),eN=(0,T.a)(),eC=function(){let[e,t]=(0,l.useState)(!1);return V(()=>{let e=window.matchMedia("(orientation: portrait)");t(e.matches);let r=e=>{t(e.matches)};return e.addEventListener("change",r),()=>e.removeEventListener("change",r)},[]),e}();(0,l.useEffect)(()=>{eN&&ex("preview")},[eN]);let{isKeyboardVisible:eS,keyboardHeight:eM}=(0,L.C)(),{value:eF,setValue:eR}=(0,I.V)({key:"commandmate:md-editor-maximized",defaultValue:!1,validate:X}),{isFullscreen:eA,isFallbackMode:eP,enterFullscreen:eT,exitFullscreen:eV,toggleFullscreen:ez}=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{elementRef:t,onEnter:r,onExit:n,onError:o}=e,[a,s]=(0,l.useState)(!1),[i,d]=(0,l.useState)(!1),[c,u]=(0,l.useState)(null),f=(0,l.useCallback)(()=>{let e=null!=z();s(e),!e&&i&&d(!1)},[i]),m=(0,l.useCallback)(async()=>{if(u(null),"undefined"!=typeof navigator&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1||0)){s(!0),d(!0),null==r||r();return}if(function(){if("undefined"==typeof document)return!1;let e=document;return!!(e.fullscreenEnabled||e.webkitFullscreenEnabled||e.mozFullScreenEnabled||e.msFullscreenEnabled)}()&&(null==t?void 0:t.current))try{var e;await ((e=t.current).requestFullscreen?Promise.resolve(e.requestFullscreen()):e.webkitRequestFullscreen?Promise.resolve(e.webkitRequestFullscreen()):e.mozRequestFullScreen?Promise.resolve(e.mozRequestFullScreen()):e.msRequestFullscreen?Promise.resolve(e.msRequestFullscreen()):Promise.reject(Error("Fullscreen API not supported"))),s(!0),d(!1),null==r||r()}catch(t){let e=t instanceof Error?t.message:"Failed to enter fullscreen";u(e),null==o||o(t instanceof Error?t:Error(e)),s(!0),d(!0),null==r||r()}else s(!0),d(!0),null==r||r()},[t,r,o]),h=(0,l.useCallback)(async()=>{if(u(null),i){s(!1),d(!1),null==n||n();return}if(z())try{await function(){if("undefined"==typeof document)return Promise.resolve();let e=document;return e.exitFullscreen?Promise.resolve(e.exitFullscreen()):e.webkitExitFullscreen?Promise.resolve(e.webkitExitFullscreen()):e.mozCancelFullScreen?Promise.resolve(e.mozCancelFullScreen()):e.msExitFullscreen?Promise.resolve(e.msExitFullscreen()):Promise.resolve()}(),s(!1),null==n||n()}catch(t){let e=t instanceof Error?t.message:"Failed to exit fullscreen";u(e),null==o||o(t instanceof Error?t:Error(e)),s(!1),d(!1),null==n||n()}else s(!1),d(!1),null==n||n()},[i,n,o]),x=(0,l.useCallback)(async()=>{a?await h():await m()},[a,m,h]);return(0,l.useEffect)(()=>(function(e){if("undefined"==typeof document)return()=>{};let t=["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","MSFullscreenChange"];for(let r of t)document.addEventListener(r,e);return()=>{for(let r of t)document.removeEventListener(r,e)}})(f),[f]),{isFullscreen:a,isFallbackMode:i,enterFullscreen:m,exitFullscreen:h,toggleFullscreen:x,error:c}}({elementRef:ey,onEnter:()=>eR(!0),onExit:()=>eR(!1)}),{value:eI,setValue:eD}=(0,I.V)({key:"commandmate:md-editor-split-ratio",defaultValue:.5,validate:Y}),{value:eO,setValue:eL}=(0,I.V)({key:"commandmate:md-editor-auto-save",defaultValue:!1,validate:X}),{value:eK,setValue:e$}=(0,I.V)({key:"commandmate:md-editor-tab-moves-focus",defaultValue:!1,validate:X}),{value:eH,setValue:eW}=(0,I.V)({key:P.Y,defaultValue:!0,validate:X}),e_=(0,l.useCallback)(()=>{eW(e=>!e)},[eW]),{ref:eq}=(0,O.hU)({onSwipeDown:()=>{eA&&eV()},threshold:150,enabled:eA&&eN}),eB=A!==W,eG=E?G.editor:G[er];(0,l.useEffect)(()=>{null==w||w(eB)},[eB,w]);let eU=!E&&eN&&eC&&"split"===er,eJ=(0,l.useMemo)(()=>(0,d.sg)(e=>{et(e)},300),[]),eY=(0,l.useCallback)(async()=>{eo(!0),ed(null);try{let n=await fetch("/api/worktrees/".concat(t,"/files/").concat(r)),l=await n.json();if(!n.ok||!l.success){var e;throw Error((null==(e=l.error)?void 0:e.message)||N("editor.loadError"))}let o=l.content||"";H(o),_(o),et(o),new Blob([o]).size>J.WARNING_THRESHOLD&&eu(!0)}catch(e){ed(e instanceof Error?e.message:N("editor.loadError"))}finally{eo(!1)}},[t,r]),eX=(0,l.useCallback)(async e=>{let n=await fetch("/api/worktrees/".concat(t,"/files/").concat(r),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:e})});if(401===n.status||n.redirected)throw Error(N("editor.sessionExpired"));let l=await n.json();if(!n.ok||!l.success){var o;throw Error((null==(o=l.error)?void 0:o.message)||N("editor.saveError"))}_(e)},[t,r,N]),{isSaving:eZ,error:eQ,saveNow:e0}=(0,D.U)({value:A,saveFn:eX,debounceMs:3e3,disabled:!eO}),e1=(0,l.useCallback)(e=>{eL(e),e&&eB&&eX(A)},[eL,eB,eX,A]),e4=(0,l.useCallback)(async()=>{if(eB&&!ea){es(!0);try{await eX(A),eg(N("editor.saveSuccess"),"success"),v&&v(r,A)}catch(e){eg(e instanceof Error?e.message:N("editor.saveError"),"error")}finally{es(!1)}}},[eX,A,eB,ea,v,r,eg,N]),e2=A.split("\n").length,e5=(0,l.useCallback)(()=>{ew.current&&eb.current&&(eb.current.scrollTop=ew.current.scrollTop)},[]),e3=(0,l.useCallback)(e=>{let t=e.target.value;H(t),eJ(t),null==j||j(t)},[eJ,j]),e8=(0,l.useCallback)(e=>{en(e),localStorage.setItem(U,e)},[]),e9=(0,l.useCallback)(async()=>{if(eO){if((eB||eZ)&&(await e0(),eQ)&&!await C({description:N("editor.saveFailedCloseConfirm"),variant:"danger"}))return}else if(eB&&!await C({description:N("editor.unsavedCloseConfirm"),variant:"danger"}))return;null==x||x()},[eO,eB,eZ,e0,eQ,x,C,N]),e6=(0,l.useCallback)(async()=>{try{await (0,c.l)(A),em()}catch(e){}},[A,em]),e7=(0,l.useCallback)(e=>{if(!ej.current)return;let t=ej.current.offsetWidth;if(0===t)return;let r=e/t;eD(e=>Math.max(.1,Math.min(.9,e+r)))},[eD]),te=(0,l.useCallback)(()=>{eD(.5)},[eD]),tt=(0,l.useCallback)(e=>{if(e.target!==ew.current||e.currentTarget===e.target){if((e.ctrlKey||e.metaKey)&&"s"===e.key){e.preventDefault(),eO?(async()=>{await e0(),null==v||v(r,A)})():e4();return}if((e.ctrlKey||e.metaKey)&&e.shiftKey&&"F"===e.key){e.preventDefault(),ez();return}if("Escape"===e.key&&eA){e.preventDefault(),eV();return}}},[e4,eO,e0,v,r,A,ez,eV,eA]),tr=(0,l.useCallback)(e=>{let t=ew.current;if(!t)return;if(e.value===t.value)return void t.setSelectionRange(e.selectionStart,e.selectionEnd);t.focus(),t.setSelectionRange(e.replaceStart,e.replaceEnd);let r=!1;try{r="function"==typeof document.execCommand&&document.execCommand("insertText",!1,e.replacement)}catch(e){r=!1}if(r)return void t.setSelectionRange(e.selectionStart,e.selectionEnd);eE.current={start:e.selectionStart,end:e.selectionEnd},H(e.value),eJ(e.value),null==j||j(e.value)},[eJ,j]),tn=(0,l.useCallback)(()=>{let e=ew.current;e&&tr(q(e.value,e.selectionStart,e.selectionEnd," "))},[tr]),tl=(0,l.useCallback)(()=>{let e=ew.current;if(!e)return;let t=B(e.value,e.selectionStart,e.selectionEnd," ");t&&tr(t)},[tr]),to=(0,l.useCallback)(()=>{e$(e=>!e)},[e$]),ta=(0,l.useCallback)(e=>{if(e.ctrlKey&&!e.metaKey&&!e.altKey&&("m"===e.key||"M"===e.key)){e.preventDefault(),to();return}if("Tab"===e.key&&!eK&&!e.ctrlKey&&!e.metaKey&&!e.altKey){let t=e.currentTarget,r=e.shiftKey?B(t.value,t.selectionStart,t.selectionEnd," "):q(t.value,t.selectionStart,t.selectionEnd," ");r&&(e.preventDefault(),tr(r));return}tt(e)},[eK,to,tr,tt]);(0,l.useEffect)(()=>{let e=eE.current;if(!e)return;eE.current=null;let t=ew.current;t&&(t.focus(),t.setSelectionRange(e.start,e.end))},[A]);let ts=(0,l.useCallback)(e=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{ref:eb,className:"flex-shrink-0 py-4 pl-2 pr-2 text-right select-none text-muted-foreground font-mono text-sm bg-muted dark:bg-muted/50 border-r border-border overflow-hidden","aria-hidden":"true",children:Array.from({length:e2},(e,t)=>(0,n.jsx)("div",{className:"leading-[1.5rem]",children:t+1},t+1))}),(0,n.jsx)("textarea",{ref:ew,"data-testid":"markdown-editor-textarea",value:A,onChange:e3,onKeyDown:ta,onScroll:e5,className:"flex-1 py-4 pr-4 pl-3 font-mono text-sm resize-none bg-surface text-foreground focus:outline-none leading-[1.5rem]".concat(e?" focus:ring-2 focus:ring-ring focus:ring-inset":""),placeholder:E?N("editor.placeholder"):N("editor.placeholderMarkdown"),spellCheck:!1})]}),[e2,A,e3,ta,e5,E,N]);(0,l.useEffect)(()=>{let e=e=>{"Escape"===e.key&&eA&&(e.preventDefault(),eV())};return eA&&document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}},[eA,eV]),(0,l.useEffect)(()=>{y||eF&&!eA&&eT()},[]),(0,l.useEffect)(()=>{if("undefined"==typeof document)return;let e=document.getElementById("markdown-editor-portal");return e||((e=document.createElement("div")).id="markdown-editor-portal",document.body.appendChild(e)),ep(e),()=>{let e=document.getElementById("markdown-editor-portal");e&&0===e.childNodes.length&&e.remove()}},[]),(0,l.useEffect)(()=>{null==g||g(eA)},[eA,g]),(0,l.useEffect)(()=>{S||eY()},[eY,S]),(0,l.useEffect)(()=>{let e=eO?eB||eZ:eB,t=t=>{e&&(t.preventDefault(),t.returnValue="")};return e?(ek.current=t,window.addEventListener("beforeunload",t)):ek.current&&(window.removeEventListener("beforeunload",ek.current),ek.current=null),()=>{ek.current&&window.removeEventListener("beforeunload",ek.current)}},[eB,eZ,eO]),(0,l.useEffect)(()=>{eQ&&eO&&(eL(!1),eg(N("editor.autoSaveFailed"),"error"))},[eQ,eO,eL,eg,N]);let ti=(0,l.useMemo)(()=>{let e="flex flex-col bg-surface";return eA&&eP?"".concat(e," fixed inset-0"):"".concat(e," h-full")},[eA,eP]),td=(0,l.useMemo)(()=>{if(eA)return{zIndex:$.M.MAXIMIZED_EDITOR}},[eA]),tc=(0,l.useMemo)(()=>{if("split"===er&&!eU)return{width:"".concat(100*eI,"%"),flexShrink:0}},[er,eI,eU]),tu=(0,l.useMemo)(()=>{if("split"===er&&!eU)return{width:"".concat((1-eI)*100,"%"),flexShrink:0}},[er,eI,eU]),tf=(0,l.useMemo)(()=>{if(eS&&eM>0)return{paddingBottom:eM}},[eS,eM]);if(el)return(0,n.jsx)("div",{"data-testid":"markdown-editor",className:"flex items-center justify-center h-full bg-surface",children:(0,n.jsxs)("div",{className:"text-center",children:[(0,n.jsx)(m.y,{size:"xl",variant:"accent",className:"inline-block"}),(0,n.jsx)("p",{className:"mt-4 text-muted-foreground",children:N("editor.loading")})]})});if(ei)return(0,n.jsx)("div",{"data-testid":"markdown-editor-error",className:"flex items-center justify-center h-full bg-surface",children:(0,n.jsxs)("div",{className:"text-center",children:[(0,n.jsx)(i.A,{className:"h-12 w-12 text-danger mx-auto mb-4"}),(0,n.jsx)("p",{className:"text-danger-foreground",children:ei}),x&&(0,n.jsx)("button",{onClick:x,className:"mt-4 px-4 py-2 bg-muted hover:bg-muted/80 rounded-lg text-foreground",children:N("actions.close")})]})});let tm=(0,n.jsxs)("div",{ref:e=>{ey.current=e,eq.current=e},"data-testid":"markdown-editor",className:ti,style:td,onKeyDown:tt,role:eA&&eP?"dialog":void 0,"aria-modal":eA&&eP?"true":void 0,children:[(0,n.jsx)(F,{filePath:r,isDirty:eB,viewMode:er,onViewModeChange:e8,showMobileTabs:eU,copied:ef,onCopy:e6,isMaximized:eA,onToggleFullscreen:ez,isAutoSaveEnabled:eO,onAutoSaveToggle:e1,isAutoSaving:eZ,isSaving:ea,onSave:e4,onClose:x?e9:void 0,hideViewModeToggle:E||y,hideMaximizeButton:y,onIndent:tn,onOutdent:tl,tabMovesFocus:eK,onToggleTabMovesFocus:to}),eA&&(0,n.jsx)(R.OJ,{isMobile:eN}),ec&&(0,n.jsx)(R.Uc,{onDismiss:()=>eu(!1)}),eU&&(0,n.jsx)(R.RF,{mobileTab:eh,onTabChange:ex}),(0,n.jsxs)("div",{ref:ej,className:"flex flex-1 overflow-hidden",style:tf,children:[eU?"editor"===eh&&(0,n.jsx)("div",{"data-testid":"markdown-editor-container",className:"flex overflow-hidden w-full flex-1",children:ts(!1)}):(0,n.jsx)("div",{"data-testid":"markdown-editor-container",className:"flex overflow-hidden transition-all duration-200 ".concat(eG.showEditor?"":"hidden"),style:"split"===er?tc:{width:eG.showEditor?"100%":"0%"},children:ts(!0)}),"split"===er&&eG.showEditor&&eG.showPreview&&!eU&&(0,n.jsx)(h.f,{onResize:e7,onDoubleClick:te,orientation:"horizontal",ariaValueNow:Math.round(100*eI),minRatio:.1}),eU?"preview"===eh&&(0,n.jsx)("div",{"data-testid":"markdown-preview-container",className:"flex flex-col overflow-hidden w-full",children:(0,n.jsx)(Q,{previewContent:ee,onOpenFile:b,filePath:r,worktreeId:t,tocVisible:eH,onToggleTocVisible:e_,tocTitle:N("toc.title"),tocShowLabel:N("toc.show"),tocHideLabel:N("toc.hide")})}):(0,n.jsx)("div",{"data-testid":"markdown-preview-container",className:"flex flex-col overflow-hidden transition-all duration-200 ".concat(eG.showPreview?"":"hidden"),style:"split"===er?tu:{width:eG.showPreview?"100%":"0%"},children:(0,n.jsx)(Q,{previewContent:ee,onOpenFile:b,filePath:r,worktreeId:t,tocVisible:eH,onToggleTocVisible:e_,tocTitle:N("toc.title"),tocShowLabel:N("toc.show"),tocHideLabel:N("toc.hide")})})]})]});return eA&&eP&&ev?(0,o.createPortal)(tm,ev):tm})},55924:(e,t,r)=>{r.d(t,{K:()=>o});var n=r(95155),l=r(12115);function o(e){let{entries:t,title:r,headerOffset:o=64,root:a=null,className:s=""}=e,[i,d]=(0,l.useState)(null);return((0,l.useRef)(null).current=i,(0,l.useEffect)(()=>{if("undefined"==typeof IntersectionObserver||0===t.length)return;let e=new IntersectionObserver(e=>{let t=function(e){let t=e.filter(e=>e.isIntersecting).sort((e,t)=>e.boundingClientRect.top-t.boundingClientRect.top);return t.length>0?t[0].target.id:null}(e);t&&d(t)},{root:a,rootMargin:"-".concat(o,"px 0px -70% 0px"),threshold:0}),r=[];for(let n of t){let t=document.getElementById(n.id);t&&(e.observe(t),r.push(t))}return()=>{e.disconnect(),r.length=0}},[t,o,a]),0===t.length)?null:(0,n.jsxs)("nav",{"aria-label":r,className:s,children:[(0,n.jsx)("p",{className:"px-3 pb-2 text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:r}),(0,n.jsx)("ul",{className:"space-y-0.5 text-sm",children:t.map((e,t)=>{let r=e.id===i;return(0,n.jsx)("li",{children:(0,n.jsx)("a",{href:"#".concat(e.id),onClick:t=>((e,t)=>{e.preventDefault();let r="undefined"!=typeof document?document.getElementById(t):null;r&&r.scrollIntoView({behavior:"smooth",block:"start"}),d(t)})(t,e.id),"aria-current":r?"location":void 0,"data-depth":e.depth,style:{paddingLeft:"".concat((e.depth-1)*12+12,"px")},className:["block truncate rounded py-1 pr-2 transition-colors",r?"bg-accent-50 font-medium text-accent-700":"text-muted-foreground hover:bg-muted hover:text-foreground"].join(" "),title:e.text,children:e.text})},"".concat(e.id,"-").concat(t))})})]})}},79962:(e,t,r)=>{r.d(t,{K:()=>s,Y:()=>l});var n=r(21286);let l="commandmate:md-toc-visible",o=/^ {0,3}(#{1,6})(?:[ \t]+(.*?))?[ \t]*$/,a=/^( {0,3})(`{3,}|~{3,})(.*)$/;function s(e){if(!e)return[];let t=new n.A,r=[],l=null,s=0;for(let n of e.split("\n")){var i;let e=a.exec(n);if(l){if(e){let t=e[2];t[0]===l&&t.length>=s&&""===e[3].trim()&&(l=null,s=0)}continue}if(e){let t=e[2],r=t[0];if("`"===r&&e[3].includes("`"));else{l=r,s=t.length;continue}}let d=o.exec(n);if(!d)continue;let c=d[1].length,u=function(e){let t=e;return(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace(/!\[[^\]]*\]\([^)]*\)/g,"")).replace(/!\[[^\]]*\]\[[^\]]*\]/g,"")).replace(/\[([^\]]*)\]\([^)]*\)/g,"$1")).replace(/\[([^\]]*)\]\[[^\]]*\]/g,"$1")).replace(/\[([^\]]*)\]/g,"$1")).replace(/(`+)([\s\S]*?)\1/g,"$2")).replace(/(\*\*|__)(.*?)\1/g,"$2")).replace(/(\*|_)(.*?)\1/g,"$2")).replace(/~~(.*?)~~/g,"$1")).replace(/\\([\\`*_{}[\]()#+\-.!~])/g,"$1")).trim()}((null!=(i=d[2])?i:"").replace(/([ \t]|^)#+[ \t]*$/,"")),f=t.slug(u);r.push({depth:c,text:u,id:f})}return r}},80003:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(71847).A)("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]])}}]);
|