commandmate 0.14.1 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +7 -0
- package/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +418 -354
- package/.next/app-path-routes-manifest.json +42 -34
- package/.next/build-manifest.json +5 -5
- package/.next/prerender-manifest.json +9 -9
- package/.next/react-loadable-manifest.json +22 -24
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +15 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- 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 +1 -1
- 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/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 +7 -0
- package/.next/server/app/api/fs/browse/route.js.nft.json +1 -0
- package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/fs/recent-paths/route.js +7 -0
- package/.next/server/app/api/fs/recent-paths/route.js.nft.json +1 -0
- package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/hooks/claude-done/route.js +1 -1
- 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/ollama/models/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 +1 -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/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 -0
- package/.next/server/app/api/repositories/validate-path/route.js.nft.json +1 -0
- package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sidebar/group-order/route.js +2 -2
- 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 +23 -0
- package/.next/server/app/api/skills/installations/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/operations/route.js +13 -0
- package/.next/server/app/api/skills/operations/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/reindex/route.js +23 -0
- package/.next/server/app/api/skills/reindex/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -0
- 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/templates/[id]/route.js +1 -1
- 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 +1 -1
- 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/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]/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 +1 -1
- 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 -1
- 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]/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]/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 +1 -1
- 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 +2 -2
- 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]/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]/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 +1 -1
- 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 -1
- 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 +18 -0
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -0
- 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/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]/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]/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/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 +1 -1
- 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_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 +1 -1
- package/.next/server/app/more/page_client-reference-manifest.js +1 -1
- package/.next/server/app/offline/page_client-reference-manifest.js +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_client-reference-manifest.js +1 -1
- package/.next/server/app/review/page_client-reference-manifest.js +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 -0
- package/.next/server/app/skills/installed/page.js.nft.json +1 -0
- package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -0
- 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 +1 -1
- 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 +9 -9
- 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_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +42 -34
- package/.next/server/chunks/1117.js +1 -1
- package/.next/server/chunks/1185.js +1 -0
- package/.next/server/chunks/1239.js +1 -0
- package/.next/server/chunks/1355.js +1 -0
- package/.next/server/chunks/2119.js +1 -1
- package/.next/server/chunks/22.js +1 -1
- package/.next/server/chunks/2328.js +1 -1
- package/.next/server/chunks/2445.js +1 -1
- package/.next/server/chunks/2710.js +2 -0
- package/.next/server/chunks/28.js +35 -0
- package/.next/server/chunks/3042.js +1 -2
- package/.next/server/chunks/3543.js +1 -1
- package/.next/server/chunks/3722.js +1 -1
- package/.next/server/chunks/3736.js +1 -1
- package/.next/server/chunks/3753.js +1 -1
- package/.next/server/chunks/3945.js +1 -1
- package/.next/server/chunks/4390.js +1 -0
- package/.next/server/chunks/4440.js +2 -0
- package/.next/server/chunks/4444.js +1 -1
- package/.next/server/chunks/4548.js +1 -0
- package/.next/server/chunks/5064.js +1 -1
- package/.next/server/chunks/5326.js +1 -1
- package/.next/server/chunks/5381.js +1 -1
- package/.next/server/chunks/5456.js +1 -1
- package/.next/server/chunks/5737.js +1 -0
- package/.next/server/chunks/5793.js +1 -0
- package/.next/server/chunks/5959.js +2 -2
- package/.next/server/chunks/6065.js +1 -1
- package/.next/server/chunks/6130.js +1 -1
- package/.next/server/chunks/646.js +2 -2
- package/.next/server/chunks/7593.js +1 -0
- package/.next/server/chunks/8356.js +1 -1
- package/.next/server/chunks/8681.js +1 -1
- package/.next/server/chunks/8807.js +66 -3
- package/.next/server/chunks/9051.js +1 -0
- package/.next/server/chunks/9123.js +1 -1
- package/.next/server/chunks/9687.js +1 -1
- 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/server/src/middleware.js.map +1 -1
- package/.next/static/AKqbAyuzbFfg05qpbCI_K/_buildManifest.js +1 -0
- package/.next/static/chunks/1191-b7dfdfe86b1d31d1.js +1 -0
- package/.next/static/chunks/2751-7fabd91275b14ca3.js +1 -0
- package/.next/static/chunks/{4459.03172449db395039.js → 4459.a94b52985a76509a.js} +1 -1
- package/.next/static/chunks/{4560-04e5aebcab96bfa1.js → 4560-8ffb0bb19f2ba998.js} +1 -1
- package/.next/static/chunks/530.e31cc754677fed0f.js +1 -0
- package/.next/static/chunks/5542-b6457f305d724a6b.js +1 -0
- package/.next/static/chunks/{6488-74d2f443e43c07b7.js → 6488-c2a968ec806975c2.js} +1 -1
- package/.next/static/chunks/{7485.43871aedf3dbb980.js → 7485.442b21101fca7257.js} +1 -1
- package/.next/static/chunks/8562-6e2ab32452f4fa5b.js +1 -0
- package/.next/static/chunks/8566-a6a7c70558927410.js +1 -0
- package/.next/static/chunks/9263.5259f73f89220d64.js +1 -0
- package/.next/static/chunks/9599-d29d2f8eeaf7c249.js +1 -0
- package/.next/static/chunks/app/api/app/update/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/app/update-check/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/assistant/conversation/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/assistant/current-output/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/assistant/messages/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/assistant/session/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/assistant/start/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/assistant/terminal/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/assistant/tools/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/auth/status/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/daily-summary/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/daily-summary/status/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/external-apps/[id]/health/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/external-apps/[id]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/external-apps/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/fs/browse/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/fs/recent-paths/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/hooks/claude-done/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/ollama/models/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/push/subscriptions/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/push/vapid/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/[id]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/[id]/todos/[todoId]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/[id]/todos/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/clone/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/excluded/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/restore/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/scan/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/sync/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/repositories/validate-path/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/sidebar/group-order/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/skills/[id]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/skills/installations/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/skills/operations/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/skills/reindex/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/skills/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/slash-commands/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/templates/[id]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/templates/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/todos/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/capture/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/logs/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/memos/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/messages/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/respond/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/search/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/send/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/skills/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/start-polling/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/timers/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/todos/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/tree/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/api/worktrees/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/chat/page-83a2238ab453afaa.js +1 -0
- package/.next/static/chunks/app/manifest.webmanifest/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/more/{page-082d4ae496f9a36e.js → page-1619018cac999bbc.js} +1 -1
- package/.next/static/chunks/app/proxy/[...path]/route-55e398bd20e2d7a9.js +1 -0
- package/.next/static/chunks/app/repositories/page-3c4fb889da48ce24.js +1 -0
- package/.next/static/chunks/app/skills/[skillId]/page-6008b904225ebb25.js +1 -0
- package/.next/static/chunks/app/skills/installed/page-6641f95e6a6e5f9d.js +1 -0
- package/.next/static/chunks/app/skills/page-184f8e23e31a3667.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/files/[...path]/{page-6a45f3744da50d95.js → page-6041d3c3db326317.js} +1 -1
- package/.next/static/chunks/app/worktrees/[id]/page-59a63a2c013ec1eb.js +1 -0
- package/.next/static/chunks/webpack-180bebdee221b6f4.js +1 -0
- package/.next/static/css/d3453a6876553d32.css +1 -0
- package/.next/trace +11 -11
- package/.next/types/app/api/fs/browse/route.ts +347 -0
- package/.next/types/app/api/fs/recent-paths/route.ts +347 -0
- package/.next/types/app/api/repositories/validate-path/route.ts +347 -0
- package/.next/types/app/api/skills/installations/route.ts +347 -0
- package/.next/types/app/api/skills/operations/route.ts +347 -0
- package/.next/types/app/api/skills/reindex/route.ts +347 -0
- package/.next/types/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.ts +347 -0
- package/.next/types/app/skills/installed/page.ts +84 -0
- package/.next/types/routes.d.ts +10 -2
- package/.next/types/validator.ts +72 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +15 -0
- package/dist/cli/commands/skill.d.ts +2 -1
- package/dist/cli/commands/skill.d.ts.map +1 -1
- package/dist/cli/commands/skill.js +136 -2
- package/dist/cli/types/api-responses.d.ts +40 -0
- package/dist/cli/types/api-responses.d.ts.map +1 -1
- package/dist/cli/types/index.d.ts +12 -0
- package/dist/cli/types/index.d.ts.map +1 -1
- package/dist/cli/utils/env-setup.d.ts +8 -0
- package/dist/cli/utils/env-setup.d.ts.map +1 -1
- package/dist/cli/utils/env-setup.js +23 -0
- package/dist/server/src/lib/db/migrations/index.js +2 -0
- package/dist/server/src/lib/db/migrations/runner.js +1 -1
- package/dist/server/src/lib/db/migrations/v48-skill-operations-audit-index.js +117 -0
- package/dist/server/src/lib/git/git-exec.js +48 -1
- package/dist/server/src/lib/selected-agents-validator.js +3 -2
- package/dist/server/src/lib/skills/compatibility-matrix.js +256 -0
- package/dist/server/src/lib/skills/compatibility.js +132 -11
- package/dist/server/src/lib/skills/operation-audit.js +85 -15
- package/dist/server/src/lib/skills/operation-journal.js +14 -1
- package/dist/server/src/types/markdown-editor.js +13 -1
- package/package.json +1 -1
- package/.next/server/chunks/1808.js +0 -1
- package/.next/server/chunks/186.js +0 -1
- package/.next/server/chunks/5226.js +0 -28
- package/.next/server/chunks/5306.js +0 -2
- package/.next/server/chunks/7013.js +0 -1
- package/.next/server/chunks/9067.js +0 -1
- package/.next/server/chunks/9192.js +0 -1
- package/.next/static/1WyelLMRgPnhvA2HmhZmm/_buildManifest.js +0 -1
- package/.next/static/chunks/1668-e703b8b55775844b.js +0 -1
- package/.next/static/chunks/2069-c55de93eb6403961.js +0 -1
- package/.next/static/chunks/3418-7e47651340d940b0.js +0 -1
- package/.next/static/chunks/4027-000402aee1e3520b.js +0 -1
- package/.next/static/chunks/530.e377b0f1a7a89620.js +0 -1
- package/.next/static/chunks/6007-de36119357dcd418.js +0 -1
- package/.next/static/chunks/6497-ea466b22a6c1ae89.js +0 -1
- package/.next/static/chunks/8361.4bf062be2d2962f4.js +0 -1
- package/.next/static/chunks/8566-9da32e46c9d3fd54.js +0 -1
- package/.next/static/chunks/934-a37509667baa86ee.js +0 -1
- package/.next/static/chunks/app/api/app/update/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/app/update-check/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/assistant/conversation/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/assistant/current-output/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/assistant/messages/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/assistant/session/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/assistant/start/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/assistant/terminal/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/assistant/tools/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/auth/status/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/daily-summary/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/daily-summary/status/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/external-apps/[id]/health/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/external-apps/[id]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/external-apps/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/hooks/claude-done/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/ollama/models/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/push/subscriptions/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/push/vapid/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/[id]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/[id]/todos/[todoId]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/[id]/todos/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/clone/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/excluded/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/restore/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/scan/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/repositories/sync/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/sidebar/group-order/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/skills/[id]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/skills/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/slash-commands/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/templates/[id]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/templates/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/todos/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/capture/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/logs/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/memos/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/messages/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/respond/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/search/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/send/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/skills/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/start-polling/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/timers/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/todos/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/tree/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/api/worktrees/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/chat/page-623f5cb9040de639.js +0 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/proxy/[...path]/route-56dad0523d3c4a92.js +0 -1
- package/.next/static/chunks/app/repositories/page-70d4b997492884b8.js +0 -1
- package/.next/static/chunks/app/skills/[skillId]/page-68ed5e9186efe56d.js +0 -1
- package/.next/static/chunks/app/skills/page-46242c428ee8bccf.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/page-983a80ece6289026.js +0 -1
- package/.next/static/chunks/webpack-e655374fed175528.js +0 -1
- package/.next/static/css/b4bdb1f3457fe9a7.css +0 -1
- /package/.next/static/{1WyelLMRgPnhvA2HmhZmm → AKqbAyuzbFfg05qpbCI_K}/_ssgManifest.js +0 -0
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
UPDATE daily_reports
|
|
10
10
|
SET content = ?, updated_at = ?
|
|
11
11
|
WHERE date = ?
|
|
12
|
-
`).run(c,d,b).changes)throw Error(`Daily report not found for date: ${b}`)}c.d(b,{IF:()=>f,ap:()=>d,tt:()=>e})},20137:(a,b,c)=>{c.d(b,{Ar:()=>d,Hf:()=>k,Ww:()=>e,XI:()=>l,eb:()=>i,iI:()=>n,kd:()=>f,o1:()=>g,oN:()=>h});let d=100,e=1e4,f=["default","acceptEdits","plan","dontAsk","bypassPermissions"],g=["read-only","workspace-write","danger-full-access"],h=["allow-all-tools","yolo"],i=["--dangerously-skip-permissions"],j=[],k={claude:"acceptEdits",codex:"workspace-write",gemini:"","vibe-local":"",copilot:"allow-all-tools",antigravity:"--dangerously-skip-permissions"};function l(a){switch(a){case"codex":return g;case"copilot":return h;case"antigravity":return i;case"claude":return f;default:return j}}let m=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;function n(a){return m.test(a)}},21586:(a,b,c)=>{c.d(b,{$h:()=>h,Cy:()=>r,DE:()=>s,F5:()=>k,IH:()=>f,JK:()=>d,Nb:()=>i,R7:()=>e,RP:()=>n,VU:()=>q,W9:()=>o,Xb:()=>m,bO:()=>p,bm:()=>j,qw:()=>l,t7:()=>g});let d=3e5,e=6e4,f=["claude","codex","copilot","antigravity"],g=1e3,h=5,i=100,j=1e3,k=3e3,l=15e3,m=15e3,n=6e3,o=3e3,p=500,q=20,r=1e4,s=15e3},25381:(a,b,c)=>{c.d(b,{GI:()=>D,qw:()=>E,xF:()=>A,Hw:()=>F,T5:()=>G,sZ:()=>C,XT:()=>B});var d=c(29021),e=c(33873),f=c(72626),g=c(34207),h=c(21586);let i=h.RP,j=["user_data","commit_log","issue_context"];function k(a){let b=a.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/g,"");for(let a of j){let c=RegExp(`</?${a}>`,"gi");b=b.replace(c,a=>a.replace(/</g,"<").replace(/>/g,">"))}return b.slice(0,g.uv)}var l=c(20137),m=c(52660),n=c(4868),o=c(73753),p=c(10406),q=c(
|
|
12
|
+
`).run(c,d,b).changes)throw Error(`Daily report not found for date: ${b}`)}c.d(b,{IF:()=>f,ap:()=>d,tt:()=>e})},20137:(a,b,c)=>{c.d(b,{Ar:()=>d,Hf:()=>k,Ww:()=>e,XI:()=>l,eb:()=>i,iI:()=>n,kd:()=>f,o1:()=>g,oN:()=>h});let d=100,e=1e4,f=["default","acceptEdits","plan","dontAsk","bypassPermissions"],g=["read-only","workspace-write","danger-full-access"],h=["allow-all-tools","yolo"],i=["--dangerously-skip-permissions"],j=[],k={claude:"acceptEdits",codex:"workspace-write",gemini:"","vibe-local":"",copilot:"allow-all-tools",antigravity:"--dangerously-skip-permissions"};function l(a){switch(a){case"codex":return g;case"copilot":return h;case"antigravity":return i;case"claude":return f;default:return j}}let m=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;function n(a){return m.test(a)}},21586:(a,b,c)=>{c.d(b,{$h:()=>h,Cy:()=>r,DE:()=>s,F5:()=>k,IH:()=>f,JK:()=>d,Nb:()=>i,R7:()=>e,RP:()=>n,VU:()=>q,W9:()=>o,Xb:()=>m,bO:()=>p,bm:()=>j,qw:()=>l,t7:()=>g});let d=3e5,e=6e4,f=["claude","codex","copilot","antigravity"],g=1e3,h=5,i=100,j=1e3,k=3e3,l=15e3,m=15e3,n=6e3,o=3e3,p=500,q=20,r=1e4,s=15e3},25381:(a,b,c)=>{c.d(b,{GI:()=>D,qw:()=>E,xF:()=>A,Hw:()=>F,T5:()=>G,sZ:()=>C,XT:()=>B});var d=c(29021),e=c(33873),f=c(72626),g=c(34207),h=c(21586);let i=h.RP,j=["user_data","commit_log","issue_context"];function k(a){let b=a.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]/g,"");for(let a of j){let c=RegExp(`</?${a}>`,"gi");b=b.replace(c,a=>a.replace(/</g,"<").replace(/>/g,">"))}return b.slice(0,g.uv)}var l=c(20137),m=c(52660),n=c(4868),o=c(73753),p=c(10406),q=c(79051),r=c(79646),s=c(28354);let t=(0,f.h)("github-api"),u=(0,s.promisify)(r.execFile);async function v(){try{return await u("gh",["--version"],{timeout:5e3}),!0}catch{return!1}}async function w(a,b,c){try{if(!await v())return t.debug("gh-cli-unavailable",{issueNumber:a}),null;let{stdout:d}=await u("gh",["issue","view",String(a),"--json","number,title,body,labels,state"],{cwd:b,timeout:h.Cy}),e=JSON.parse(d),f=e.labels.map(a=>"string"==typeof a?a:a.name),g=(e.body??"").slice(0,h.bO);return{repositoryName:c,number:e.number,title:e.title,labels:f,state:e.state,bodySummary:g}}catch(b){return t.debug("get-issue-info-failed",{issueNumber:a,repositoryName:c,error:String(b)}),null}}async function x(a,b){let c=(0,q.Pt)(b).slice(0,h.VU);if(0===c.length||0===a.length)return[];let d=[];for(let b of a)for(let a of c)d.push(w(a,b.path,b.name));let e=await Promise.allSettled(d),f=[];for(let a of e)"fulfilled"===a.status&&null!==a.value&&f.push(a.value);return f}var y=c(70673);let z=(0,f.h)("daily-summary"),A=2*g.uv;function B(){let a=globalThis.__dailySummaryGenerating;return!!a?.active&&(!(Date.now()-a.startedAt>h.R7+1e4)||(z.warn("failsafe-reset",{startedAt:a.startedAt}),globalThis.__dailySummaryGenerating=void 0,!1))}function C(){return B()?globalThis.__dailySummaryGenerating??null:null}class D extends Error{constructor(){super("Summary generation is already in progress"),this.name="ConcurrentGenerationError"}}class E extends Error{constructor(){super("Summary generation timed out"),this.name="GenerationTimeoutError"}}class F extends Error{constructor(a){super(a),this.name="OutputValidationError"}}async function G(a,b){let{date:c,tool:f,model:j,userInstruction:r}=b;if(B())throw z.warn("concurrent-rejected",{date:c}),new D;globalThis.__dailySummaryGenerating={active:!0,startedAt:Date.now(),date:c,tool:f};try{z.info("generation-started",{date:c,tool:f});let b=new Date(c+"T00:00:00"),s=new Date(c+"T23:59:59.999"),t=(0,m.lr)(a,{after:b,before:s});if(0===t.length)throw new F("No messages found for the specified date");let u=(0,o.vi)(a),v=new Map;for(let a of u)v.set(a.id,a.name);let w=(0,p.Yg)(a),B=w.filter(a=>!!a.enabled&&!!(0,d.existsSync)(a.path)&&!!(0,d.existsSync)((0,e.join)(a.path,".git")));B.length<w.length&&z.info("repositories-filtered",{total:w.length,valid:B.length,skipped:w.length-B.length});let C=b.toISOString(),D=s.toISOString(),G=await (0,y.wj)((0,q.z0)(B,C,D),h.qw,new Map),H=Array.from(G.values()).flatMap(({commits:a})=>a.map(a=>a.message)),I=await (0,y.wj)(x(B,H).catch(()=>[]),h.DE,[]),J=function(a,b,c,d,e){let f=`You are a technical report generator. Summarize the following work logs into a concise daily report in Japanese Markdown format.
|
|
13
13
|
|
|
14
14
|
Rules:
|
|
15
15
|
- Summarize by worktree/branch
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=5456,exports.ids=[5456],exports.modules={13075:(a,b,c)=>{c.d(b,{EU:()=>H,JJ:()=>N,MD:()=>Q,Yz:()=>O,bX:()=>M,en:()=>R,jH:()=>G,qZ:()=>P,r5:()=>J,vy:()=>F});var d=c(15194),e=c(96210),f=c(55432),g=c(36931);let h=["schema_version","id","name","version","summary","description","capabilities","expected_outcomes","provider","license","homepage","keywords","compatibility","requirements","declared_permissions","declared_risk","risk_rationale","files"],i=["schema_version","entries"],j=["id","name","summary","provider","license","homepage","keywords","latest","versions"],k=["version","changelog","published_at","source","artifact","compatibility","declared_risk"],l=["name","url","contact"],m=["commandmate","agents"],n=["agent","support","evidence"],o=["commands","network_hosts"],p=["name","version_range"],q=["path","sha256","size","kind","executable","script"],r=["repository","ref","commit"],s=["asset_name","url","sha256","size","content_type","format"];function t(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function u(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function v(a,b,c){return t(a)?a:(c.push((0,f.iS)(f.J$.NOT_AN_OBJECT,b,`${b||"/"} must be an object`)),null)}function w(a,b,c,d){for(let g of Object.keys(a))b.includes(g)||d.push((0,f.iS)(f.J$.UNKNOWN_FIELD,(0,f.uJ)(c,g),`unknown field is not allowed in schema_version ${e.jq}`))}function x(a,b,c,d,e={}){let g=(0,f.uJ)(c,b);if(!u(a,b)||void 0===a[b]){e.optional||d.push((0,f.iS)(f.J$.MISSING_FIELD,g,`${b} is required`));return}let h=a[b];if("string"!=typeof h)return void d.push((0,f.iS)(f.J$.INVALID_TYPE,g,`${b} must be a string`));let i=e.formatCode??f.J$.LIMIT_EXCEEDED,j=e.minLength??1;return h.length<j?void d.push((0,f.iS)(i,g,`${b} is shorter than the minimum`,{minLength:j})):void 0!==e.maxLength&&h.length>e.maxLength?void d.push((0,f.iS)(i,g,`${b} exceeds the maximum length`,{maxLength:e.maxLength})):e.pattern&&!e.pattern.test(h)?void d.push((0,f.iS)(e.formatCode??f.J$.INVALID_FORMAT,g,`${b} does not match the required format`,e.patternName?{format:e.patternName}:void 0)):h}function y(a,b,c,d,e){let g=(0,f.uJ)(c,b);if(!u(a,b)||void 0===a[b])return void d.push((0,f.iS)(f.J$.MISSING_FIELD,g,`${b} is required`));let h=a[b];return"number"==typeof h&&Number.isInteger(h)?h<e.min||h>e.max?void d.push((0,f.iS)(f.J$.LIMIT_EXCEEDED,g,`${b} is out of range`,e)):h:void d.push((0,f.iS)(f.J$.INVALID_TYPE,g,`${b} must be an integer`))}function z(a,b,c,d){let e=(0,f.uJ)(c,b);if(!u(a,b)||void 0===a[b])return void d.push((0,f.iS)(f.J$.MISSING_FIELD,e,`${b} is required`));let g=a[b];return"boolean"!=typeof g?void d.push((0,f.iS)(f.J$.INVALID_TYPE,e,`${b} must be a boolean`)):g}function A(a,b,c,d,e){let g=(0,f.uJ)(c,b);if(!u(a,b)||void 0===a[b]){e.optional||d.push((0,f.iS)(f.J$.MISSING_FIELD,g,`${b} is required`));return}let h=a[b];return Array.isArray(h)?h.length>e.maxItems?void d.push((0,f.iS)(f.J$.LIMIT_EXCEEDED,g,`${b} has too many items`,{maxItems:e.maxItems})):h:void d.push((0,f.iS)(f.J$.INVALID_TYPE,g,`${b} must be an array`))}function B(a,b,c,d,e){let g=(0,f.uJ)(c,b);if(!u(a,b)||void 0===a[b])return void d.push((0,f.iS)(f.J$.MISSING_FIELD,g,`${b} is required`));let h=a[b];return"string"==typeof h&&e.includes(h)?h:void d.push((0,f.iS)(f.J$.INVALID_ENUM,g,`${b} is not an allowed value`,{allowed:e.join("|")}))}function C(a,b,c,d,e){let g=A(a,b,c,d,{maxItems:e.maxItems,optional:e.optional});if(void 0===g)return;let h=[],i=!1;return g.forEach((a,g)=>{let j=(0,f.uJ)((0,f.uJ)(c,b),g);if("string"!=typeof a||0===a.length||a.length>e.maxLength){d.push((0,f.iS)(f.J$.INVALID_TYPE,j,"item must be a bounded string",{maxLength:e.maxLength})),i=!0;return}if(e.pattern&&!e.pattern.test(a)){d.push((0,f.iS)(f.J$.INVALID_FORMAT,j,"item does not match the required format")),i=!0;return}h.push(a)}),i?void 0:h}function D(a,b,c,d,g={}){let h=x(a,b,c,d,{optional:g.optional,maxLength:512});if(void 0!==h)return h.startsWith(e.JO)?h:void d.push((0,f.iS)(f.J$.INVALID_FORMAT,(0,f.uJ)(c,b),`${b} must be an https URL`))}function E(a,b){let c="/schema_version",d=a.schema_version;return void 0===d?void b.push((0,f.iS)(f.J$.SCHEMA_VERSION_UNSUPPORTED,c,"schema_version is required")):d!==e.jq?void b.push((0,f.iS)(f.J$.SCHEMA_VERSION_UNSUPPORTED,c,"schema_version is not supported by this build",{supported:e.jq})):e.jq}function F(a){return a.normalize("NFKC").toLowerCase()}function G(a,b="/id"){return"string"!=typeof a||0===a.length?(0,f._9)([(0,f.iS)(f.J$.ID_INVALID,b,"id must be a non-empty string")]):a.length>e.cj?(0,f._9)([(0,f.iS)(f.J$.ID_INVALID,b,"id exceeds the maximum length",{maxLength:e.cj})]):e.X0.test(a)?e.kM.includes(a)?(0,f._9)([(0,f.iS)(f.J$.ID_RESERVED,b,"id is reserved")]):(0,f.qO)(a):(0,f._9)([(0,f.iS)(f.J$.ID_INVALID,b,"id must be a lowercase ASCII slug",{format:"lowercase-slug"})])}function H(a){let b=G(a.manifestId);if(!b.ok)return b;let c=[];return a.directoryName!==a.manifestId&&c.push((0,f.iS)(f.J$.ID_MISMATCH,"/id","directory name does not match the manifest id")),a.skillMdName!==a.manifestName&&c.push((0,f.iS)(f.J$.ID_MISMATCH,"/name","SKILL.md name does not match the manifest name")),c.length>0?(0,f._9)(c):(0,f.qO)(a.manifestId)}let I=/^[A-Za-z]:/;function J(a,b){let c=(a,c)=>(0,f._9)([(0,f.iS)(f.J$.FILE_PATH_UNSAFE,b,a,c)]);if("string"!=typeof a||0===a.length)return c("path must be a non-empty string");if(a.length>e.S$)return c("path exceeds the maximum length",{maxLength:e.S$});if(function(a){for(let b=0;b<a.length;b++){let c=a.charCodeAt(b);if(c<32||127===c||92===c)return!0}return!1}(a))return c("path contains a control character or a backslash");if(a.startsWith("/")||I.test(a))return c("path must be relative");if(a!==a.normalize("NFC"))return c("path must be NFC-normalized");if(a.includes("//"))return c("path must not contain empty segments");if(a.endsWith("/"))return c("path must not be a directory entry");let d=a.split("/");if(d.length>e.$e)return c("path is nested too deeply",{maxDepth:e.$e});for(let a of d){if("."===a||".."===a)return c('path must not contain "." or ".." segments');if(a.length>e.AN)return c("path segment is too long",{maxLength:e.AN});if(a!==a.trim())return c("path segment must not be padded with whitespace")}return(0,f.qO)(a)}function K(a,b,c){let d=(0,f.uJ)(b,"provider"),g=a.provider;if(void 0===g)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"provider is required"));let h=v(g,d,c);if(!h)return;w(h,l,d,c);let i=x(h,"name",d,c,{maxLength:e.q3}),j=D(h,"url",d,c,{optional:!0}),k=x(h,"contact",d,c,{optional:!0,maxLength:200});if(void 0!==i)return{name:i,...void 0!==j?{url:j}:{},...void 0!==k?{contact:k}:{}}}function L(a,b,c){let h=(0,f.uJ)(b,"compatibility"),i=a.compatibility;if(void 0===i)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,h,"compatibility is required"));let j=v(i,h,c);if(!j)return;w(j,m,h,c);let k=x(j,"commandmate",h,c,{maxLength:100});if(void 0!==k&&!(0,g.LE)(k))return void c.push((0,f.iS)(f.J$.VERSION_RANGE_INVALID,(0,f.uJ)(h,"commandmate"),"commandmate is not a supported version range"));let l=A(j,"agents",h,c,{maxItems:20});if(void 0===k||void 0===l)return;let o=[],p=new Set,q=!1;return l.forEach((a,b)=>{let g=(0,f.uJ)((0,f.uJ)(h,"agents"),b),i=function(a,b,c){let g=v(a,b,c);if(!g)return;w(g,n,b,c);let h=x(g,"agent",b,c,{maxLength:40});if(void 0!==h&&!(0,d.hR)(h))return void c.push((0,f.iS)(f.J$.INVALID_ENUM,(0,f.uJ)(b,"agent"),"agent is not a known CLI tool"));let i=B(g,"support",b,c,e.h3),j=x(g,"evidence",b,c,{maxLength:e.G0});if(void 0!==h&&void 0!==i&&void 0!==j)return{agent:h,support:i,evidence:j}}(a,g,c);if(!i){q=!0;return}if(p.has(i.agent)){c.push((0,f.iS)(f.J$.DUPLICATE_ENTRY,g,"agent is declared more than once")),q=!0;return}p.add(i.agent),o.push(i)}),q?void 0:{commandmate:k,agents:o}}function M(a){let b=[],c=v(a,"",b);if(!c)return(0,f._9)(b);let d=E(c,b);if(void 0===d)return(0,f._9)(b);w(c,h,"",b);let i=G(c.id);i.ok||b.push(...i.errors);let j=x(c,"name","",b,{maxLength:e.q3}),k=x(c,"version","",b,{maxLength:64});void 0===k||(0,g.BO)(k)||b.push((0,f.iS)(f.J$.VERSION_INVALID,"/version",'version must be SemVer 2.0 without a "v" prefix'));let l=x(c,"summary","",b,{maxLength:e.BQ}),m=x(c,"description","",b,{maxLength:e.t9}),n=C(c,"capabilities","",b,{maxItems:e.yV,maxLength:e.$K}),r=C(c,"expected_outcomes","",b,{maxItems:e.yV,maxLength:e.$K}),s=K(c,"",b),t=x(c,"license","",b,{maxLength:64,pattern:e.DA,patternName:"spdx-license-id"}),u=D(c,"homepage","",b,{optional:!0}),H=C(c,"keywords","",b,{maxItems:e.Ue,maxLength:e.UN,optional:!0}),I=L(c,"",b),M=function(a,b,c){let d=(0,f.uJ)("","requirements"),h=a.requirements;if(void 0===h)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"requirements is required"));let i=v(h,d,c);if(!i)return;w(i,o,d,c);let j=A(i,"commands",d,c,{maxItems:e.SU}),k=C(i,"network_hosts",d,c,{maxItems:e._Z,maxLength:253,pattern:e.PB});if(void 0===j||void 0===k)return;let l=[],m=!1;return j.forEach((a,b)=>{let h=(0,f.uJ)((0,f.uJ)(d,"commands"),b),i=v(a,h,c);if(!i){m=!0;return}w(i,p,h,c);let j=x(i,"name",h,c,{maxLength:64,pattern:e.do,patternName:"command-name"}),k=x(i,"version_range",h,c,{optional:!0,maxLength:100});if(void 0!==k&&!(0,g.LE)(k)){c.push((0,f.iS)(f.J$.VERSION_RANGE_INVALID,(0,f.uJ)(h,"version_range"),"version_range is not a supported version range")),m=!0;return}if(void 0===j){m=!0;return}l.push({name:j,...void 0!==k?{version_range:k}:{}})}),m?void 0:{commands:l,network_hosts:k}}(c,0,b),N=C(c,"declared_permissions","",b,{maxItems:e.mt.length,maxLength:40});if(N)for(let[a,c]of N.entries())e.mt.includes(c)||b.push((0,f.iS)(f.J$.INVALID_ENUM,(0,f.uJ)("/declared_permissions",a),"declared permission is not an allowed value"));let O=B(c,"declared_risk","",b,e.wI),P=x(c,"risk_rationale","",b,{maxLength:e.gI}),Q=function(a,b,c){let d=(0,f.uJ)("","files"),g=A(a,"files","",c,{maxItems:e.xP});if(void 0===g)return;let h=[],i=new Set,j=!1;if(g.forEach((a,b)=>{let g=(0,f.uJ)(d,b),k=v(a,g,c);if(!k){j=!0;return}w(k,q,g,c);let l=J(k.path,(0,f.uJ)(g,"path")),m=x(k,"sha256",g,c,{minLength:64,maxLength:64,pattern:e.x2,patternName:"sha256-lowercase-hex",formatCode:f.J$.DIGEST_INVALID}),n=y(k,"size",g,c,{min:0,max:e.em}),o=B(k,"kind",g,c,e.Hx),p=z(k,"executable",g,c),r=z(k,"script",g,c);if(!l.ok){c.push(...l.errors),j=!0;return}if(void 0===m||void 0===n||void 0===o||void 0===p||void 0===r){j=!0;return}let s=l.value;if(s===e.KH){c.push((0,f.iS)(f.J$.FILE_SET_MISMATCH,(0,f.uJ)(g,"path"),"the manifest must not declare a digest for itself")),j=!0;return}let t=F(s);if(i.has(t)){c.push((0,f.iS)(f.J$.FILE_PATH_DUPLICATE,(0,f.uJ)(g,"path"),"path collides with another declared file")),j=!0;return}i.add(t),h.push({path:s,sha256:m,size:n,kind:o,executable:p,script:r})}),j)return;let k=h.filter(a=>a.path===e.Wr);return 1!==k.length?void c.push((0,f.iS)(f.J$.FILE_SET_MISMATCH,d,`files must declare exactly one ${e.Wr}`)):"skill_md"!==k[0].kind?void c.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,d,`${e.Wr} must be declared with kind "skill_md"`)):h}(c,"",b);return(n&&0===n.length&&b.push((0,f.iS)(f.J$.MISSING_FIELD,"/capabilities","capabilities must not be empty")),r&&0===r.length&&b.push((0,f.iS)(f.J$.MISSING_FIELD,"/expected_outcomes","expected_outcomes must not be empty")),b.length>0||!i.ok||void 0===j||void 0===k||void 0===l||void 0===m||void 0===n||void 0===r||void 0===s||void 0===t||void 0===I||void 0===M||void 0===N||void 0===O||void 0===P||void 0===Q)?(0,f._9)(b.length>0?b:[(0,f.iS)(f.J$.MISSING_FIELD,"","manifest is incomplete")]):(0,f.qO)({schema_version:d,id:i.value,name:j,version:k,summary:l,description:m,capabilities:n,expected_outcomes:r,provider:s,license:t,...void 0!==u?{homepage:u}:{},...void 0!==H?{keywords:H}:{},compatibility:I,requirements:M,declared_permissions:N,declared_risk:O,risk_rationale:P,files:Q})}function N(a){let b=[],c=v(a,"",b);if(!c)return(0,f._9)(b);let d=E(c,b);if(void 0===d)return(0,f._9)(b);w(c,i,"",b);let h=A(c,"entries","",b,{maxItems:e.Gm});if(void 0===h)return(0,f._9)(b);let l=[],m=new Set;return(h.forEach((a,c)=>{let d=(0,f.uJ)("/entries",c),h=function(a,b,c){let d=v(a,b,c);if(!d)return;w(d,j,b,c);let h=G(d.id,(0,f.uJ)(b,"id"));if(!h.ok)return void c.push(...h.errors);let i=h.value,l=x(d,"name",b,c,{maxLength:e.q3}),m=x(d,"summary",b,c,{maxLength:e.BQ}),n=K(d,b,c),o=x(d,"license",b,c,{maxLength:64,pattern:e.DA,patternName:"spdx-license-id"}),p=D(d,"homepage",b,c,{optional:!0}),q=C(d,"keywords",b,c,{maxItems:e.Ue,maxLength:e.UN,optional:!0}),t=x(d,"latest",b,c,{maxLength:64}),u=A(d,"versions",b,c,{maxItems:e.Xk});if(void 0===l||void 0===m||void 0===n||void 0===o||void 0===t||void 0===u)return;if(0===u.length)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,(0,f.uJ)(b,"versions"),"versions must not be empty"));let z=[],E=new Set,F=!1;if(u.forEach((a,d)=>{let h=(0,f.uJ)((0,f.uJ)(b,"versions"),d),j=function(a,b,c,d){let h=v(a,b,d);if(!h)return;w(h,k,b,d);let i=x(h,"version",b,d,{maxLength:64});if(void 0!==i&&!(0,g.BO)(i))return void d.push((0,f.iS)(f.J$.VERSION_INVALID,(0,f.uJ)(b,"version"),"version must be SemVer 2.0"));let j=x(h,"changelog",b,d,{maxLength:e.b}),l=x(h,"published_at",b,d,{maxLength:30,pattern:e.qu,patternName:"rfc3339-utc"}),m=function(a,b,c){let d=(0,f.uJ)(b,"source"),g=a.source;if(void 0===g)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"source is required"));let h=v(g,d,c);if(!h)return;w(h,r,d,c);let i=x(h,"repository",d,c,{maxLength:140,pattern:e.AH,patternName:"owner/name"}),j=x(h,"ref",d,c,{maxLength:100,pattern:e.mg,patternName:"git-ref"});if(void 0!==j&&j.includes(".."))return void c.push((0,f.iS)(f.J$.INVALID_FORMAT,(0,f.uJ)(d,"ref"),'ref must not contain ".."'));let k=x(h,"commit",d,c,{maxLength:40,minLength:40,pattern:e.Z4,patternName:"sha1-40-hex",formatCode:f.J$.SOURCE_COMMIT_INVALID});if(void 0!==i&&void 0!==j&&void 0!==k)return{repository:i,ref:j,commit:k}}(h,b,d),n=function(a,b,c){let d=(0,f.uJ)(b,"artifact"),g=a.artifact;if(void 0===g)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"artifact is required"));let h=v(g,d,c);if(!h)return;w(h,s,d,c);let i=x(h,"asset_name",d,c,{maxLength:200}),j=D(h,"url",d,c),k=x(h,"sha256",d,c,{minLength:64,maxLength:64,pattern:e.x2,patternName:"sha256-lowercase-hex",formatCode:f.J$.DIGEST_INVALID}),l=y(h,"size",d,c,{min:1,max:e.a6}),m=x(h,"content_type",d,c,{maxLength:100}),n=B(h,"format",d,c,[e.jn]);return void 0!==m&&m!==e.gJ?void c.push((0,f.iS)(f.J$.ARTIFACT_INVALID,(0,f.uJ)(d,"content_type"),"content_type must be the fixed artifact media type",{expected:e.gJ})):void 0!==i&&void 0!==j&&void 0!==k&&void 0!==l&&void 0!==m&&void 0!==n?{asset_name:i,url:j,sha256:k,size:l,content_type:m,format:n}:void 0}(h,b,d),o=L(h,b,d),p=B(h,"declared_risk",b,d,e.wI);if(void 0===i||void 0===j||void 0===l||void 0===m||void 0===n||void 0===o||void 0===p)return;let q=(0,e.l9)(c,i);return n.asset_name!==q?void d.push((0,f.iS)(f.J$.ARTIFACT_INVALID,(0,f.uJ)((0,f.uJ)(b,"artifact"),"asset_name"),"asset_name must follow the <skill-id>-<version>.tar.gz convention",{expected:q})):{version:i,changelog:j,published_at:l,source:m,artifact:n,compatibility:o,declared_risk:p}}(a,h,i,c);if(!j){F=!0;return}if(E.has(j.version)){c.push((0,f.iS)(f.J$.DUPLICATE_ENTRY,h,"version is listed more than once")),F=!0;return}E.add(j.version),z.push(j)}),!F)return E.has(t)?{id:i,name:l,summary:m,provider:n,license:o,...void 0!==p?{homepage:p}:{},...void 0!==q?{keywords:q}:{},latest:t,versions:z}:void c.push((0,f.iS)(f.J$.CATALOG_LATEST_UNRESOLVED,(0,f.uJ)(b,"latest"),"latest must reference a listed version"))}(a,d,b);if(!h)return;let i=F(h.id);if(m.has(i))return void b.push((0,f.iS)(f.J$.ID_COLLISION,d,"entry id collides with another entry"));m.add(i),l.push(h)}),b.length>0)?(0,f._9)(b):(0,f.qO)({schema_version:d,entries:l})}function O(a,b){let c=new Set(a.files.map(a=>a.path)),d=new Set(b.filter(a=>a!==e.KH)),g=[];for(let a of c)d.has(a)||g.push((0,f.iS)(f.J$.FILE_SET_MISMATCH,"/files","declared file is absent from the package",{path:a}));for(let a of d)c.has(a)||g.push((0,f.iS)(f.J$.FILE_SET_MISMATCH,"/files","package contains an undeclared file",{path:a}));return g.length>0?(0,f._9)(g):(0,f.qO)([...c].sort())}function P(a,b){return e.$Y[b]>e.$Y[a]?b:a}function Q(a){return a.executable_paths.length>0||a.declared_permissions.includes("credential_access")?"high":a.script_paths.length>0||a.network_hosts.length>0||a.declared_permissions.includes("process_execution")||a.declared_permissions.includes("filesystem_write")?"moderate":"low"}function R(a){return JSON.stringify(function a(b){if(Array.isArray(b))return b.map(a);if(t(b)){let c={};for(let d of Object.keys(b).sort())void 0!==b[d]&&(c[d]=a(b[d]));return c}return b}(a))}},55432:(a,b,c)=>{c.d(b,{J$:()=>d,_9:()=>g,iS:()=>e,qO:()=>f,uJ:()=>h});let d={NOT_AN_OBJECT:"SKILL_NOT_AN_OBJECT",SCHEMA_VERSION_UNSUPPORTED:"SKILL_SCHEMA_VERSION_UNSUPPORTED",MISSING_FIELD:"SKILL_MISSING_FIELD",INVALID_TYPE:"SKILL_INVALID_TYPE",INVALID_ENUM:"SKILL_INVALID_ENUM",INVALID_FORMAT:"SKILL_INVALID_FORMAT",LIMIT_EXCEEDED:"SKILL_LIMIT_EXCEEDED",UNKNOWN_FIELD:"SKILL_UNKNOWN_FIELD",ID_INVALID:"SKILL_ID_INVALID",ID_RESERVED:"SKILL_ID_RESERVED",ID_COLLISION:"SKILL_ID_COLLISION",ID_MISMATCH:"SKILL_ID_MISMATCH",VERSION_INVALID:"SKILL_VERSION_INVALID",VERSION_RANGE_INVALID:"SKILL_VERSION_RANGE_INVALID",DIGEST_INVALID:"SKILL_DIGEST_INVALID",FILE_PATH_UNSAFE:"SKILL_FILE_PATH_UNSAFE",FILE_PATH_DUPLICATE:"SKILL_FILE_PATH_DUPLICATE",FILE_SET_MISMATCH:"SKILL_FILE_SET_MISMATCH",ARTIFACT_INVALID:"SKILL_ARTIFACT_INVALID",SOURCE_COMMIT_INVALID:"SKILL_SOURCE_COMMIT_INVALID",CATALOG_LATEST_UNRESOLVED:"SKILL_CATALOG_LATEST_UNRESOLVED",DUPLICATE_ENTRY:"SKILL_DUPLICATE_ENTRY",INCONSISTENT_VALUE:"SKILL_INCONSISTENT_VALUE"};function e(a,b,c,d){return d?{code:a,path:b,message:c,detail:d}:{code:a,path:b,message:c}}function f(a){return{ok:!0,value:a,errors:[]}}function g(a){return{ok:!1,value:null,errors:a}}function h(a,b){return`${a}/${b}`}}};
|
|
1
|
+
"use strict";exports.id=5456,exports.ids=[5456],exports.modules={13075:(a,b,c)=>{c.d(b,{EU:()=>K,JJ:()=>S,Jg:()=>T,MD:()=>W,Yz:()=>U,bX:()=>R,en:()=>X,jH:()=>J,qZ:()=>V,r5:()=>M,vy:()=>I});var d=c(15194),e=c(96210),f=c(55432),g=c(36931);let h=["schema_version","id","name","version","summary","description","capabilities","expected_outcomes","provider","license","homepage","keywords","compatibility","requirements","declared_permissions","declared_risk","risk_rationale","files"],i=["schema_version","entries"],j=["id","name","summary","provider","license","homepage","keywords","latest","versions"],k=["version","changelog","published_at","source","artifact","compatibility","declared_risk"],l=["schema_version","skill_id","version","install_root","install_roots","source","artifact","files","declared_risk","computed_risk","effective_risk","declared_permissions","agent_compatibility"],m=["name","url","contact"],n=["commandmate","agents"],o=["agent","support","evidence"],p=["commands","network_hosts"],q=["name","version_range"],r=["path","sha256","size","kind","executable","script"],s=["repository","ref","commit"],t=["asset_name","url","sha256","size","content_type","format"],u=["asset_name","sha256","size","format"],v=["path","sha256","size","executable"];function w(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function x(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function y(a,b,c){return w(a)?a:(c.push((0,f.iS)(f.J$.NOT_AN_OBJECT,b,`${b||"/"} must be an object`)),null)}function z(a,b,c,d){for(let g of Object.keys(a))b.includes(g)||d.push((0,f.iS)(f.J$.UNKNOWN_FIELD,(0,f.uJ)(c,g),`unknown field is not allowed in schema_version ${e.jq}`))}function A(a,b,c,d,e={}){let g=(0,f.uJ)(c,b);if(!x(a,b)||void 0===a[b]){e.optional||d.push((0,f.iS)(f.J$.MISSING_FIELD,g,`${b} is required`));return}let h=a[b];if("string"!=typeof h)return void d.push((0,f.iS)(f.J$.INVALID_TYPE,g,`${b} must be a string`));let i=e.formatCode??f.J$.LIMIT_EXCEEDED,j=e.minLength??1;return h.length<j?void d.push((0,f.iS)(i,g,`${b} is shorter than the minimum`,{minLength:j})):void 0!==e.maxLength&&h.length>e.maxLength?void d.push((0,f.iS)(i,g,`${b} exceeds the maximum length`,{maxLength:e.maxLength})):e.pattern&&!e.pattern.test(h)?void d.push((0,f.iS)(e.formatCode??f.J$.INVALID_FORMAT,g,`${b} does not match the required format`,e.patternName?{format:e.patternName}:void 0)):h}function B(a,b,c,d,e){let g=(0,f.uJ)(c,b);if(!x(a,b)||void 0===a[b])return void d.push((0,f.iS)(f.J$.MISSING_FIELD,g,`${b} is required`));let h=a[b];return"number"==typeof h&&Number.isInteger(h)?h<e.min||h>e.max?void d.push((0,f.iS)(f.J$.LIMIT_EXCEEDED,g,`${b} is out of range`,e)):h:void d.push((0,f.iS)(f.J$.INVALID_TYPE,g,`${b} must be an integer`))}function C(a,b,c,d){let e=(0,f.uJ)(c,b);if(!x(a,b)||void 0===a[b])return void d.push((0,f.iS)(f.J$.MISSING_FIELD,e,`${b} is required`));let g=a[b];return"boolean"!=typeof g?void d.push((0,f.iS)(f.J$.INVALID_TYPE,e,`${b} must be a boolean`)):g}function D(a,b,c,d,e){let g=(0,f.uJ)(c,b);if(!x(a,b)||void 0===a[b]){e.optional||d.push((0,f.iS)(f.J$.MISSING_FIELD,g,`${b} is required`));return}let h=a[b];return Array.isArray(h)?h.length>e.maxItems?void d.push((0,f.iS)(f.J$.LIMIT_EXCEEDED,g,`${b} has too many items`,{maxItems:e.maxItems})):h:void d.push((0,f.iS)(f.J$.INVALID_TYPE,g,`${b} must be an array`))}function E(a,b,c,d,e){let g=(0,f.uJ)(c,b);if(!x(a,b)||void 0===a[b])return void d.push((0,f.iS)(f.J$.MISSING_FIELD,g,`${b} is required`));let h=a[b];return"string"==typeof h&&e.includes(h)?h:void d.push((0,f.iS)(f.J$.INVALID_ENUM,g,`${b} is not an allowed value`,{allowed:e.join("|")}))}function F(a,b,c,d,e){let g=D(a,b,c,d,{maxItems:e.maxItems,optional:e.optional});if(void 0===g)return;let h=[],i=!1;return g.forEach((a,g)=>{let j=(0,f.uJ)((0,f.uJ)(c,b),g);if("string"!=typeof a||0===a.length||a.length>e.maxLength){d.push((0,f.iS)(f.J$.INVALID_TYPE,j,"item must be a bounded string",{maxLength:e.maxLength})),i=!0;return}if(e.pattern&&!e.pattern.test(a)){d.push((0,f.iS)(f.J$.INVALID_FORMAT,j,"item does not match the required format")),i=!0;return}h.push(a)}),i?void 0:h}function G(a,b,c,d,g={}){let h=A(a,b,c,d,{optional:g.optional,maxLength:512});if(void 0!==h)return h.startsWith(e.JO)?h:void d.push((0,f.iS)(f.J$.INVALID_FORMAT,(0,f.uJ)(c,b),`${b} must be an https URL`))}function H(a,b){let c="/schema_version",d=a.schema_version;return void 0===d?void b.push((0,f.iS)(f.J$.SCHEMA_VERSION_UNSUPPORTED,c,"schema_version is required")):d!==e.jq?void b.push((0,f.iS)(f.J$.SCHEMA_VERSION_UNSUPPORTED,c,"schema_version is not supported by this build",{supported:e.jq})):e.jq}function I(a){return a.normalize("NFKC").toLowerCase()}function J(a,b="/id"){return"string"!=typeof a||0===a.length?(0,f._9)([(0,f.iS)(f.J$.ID_INVALID,b,"id must be a non-empty string")]):a.length>e.cj?(0,f._9)([(0,f.iS)(f.J$.ID_INVALID,b,"id exceeds the maximum length",{maxLength:e.cj})]):e.X0.test(a)?e.kM.includes(a)?(0,f._9)([(0,f.iS)(f.J$.ID_RESERVED,b,"id is reserved")]):(0,f.qO)(a):(0,f._9)([(0,f.iS)(f.J$.ID_INVALID,b,"id must be a lowercase ASCII slug",{format:"lowercase-slug"})])}function K(a){let b=J(a.manifestId);if(!b.ok)return b;let c=[];return a.directoryName!==a.manifestId&&c.push((0,f.iS)(f.J$.ID_MISMATCH,"/id","directory name does not match the manifest id")),a.skillMdName!==a.manifestName&&c.push((0,f.iS)(f.J$.ID_MISMATCH,"/name","SKILL.md name does not match the manifest name")),c.length>0?(0,f._9)(c):(0,f.qO)(a.manifestId)}let L=/^[A-Za-z]:/;function M(a,b){let c=(a,c)=>(0,f._9)([(0,f.iS)(f.J$.FILE_PATH_UNSAFE,b,a,c)]);if("string"!=typeof a||0===a.length)return c("path must be a non-empty string");if(a.length>e.S$)return c("path exceeds the maximum length",{maxLength:e.S$});if(function(a){for(let b=0;b<a.length;b++){let c=a.charCodeAt(b);if(c<32||127===c||92===c)return!0}return!1}(a))return c("path contains a control character or a backslash");if(a.startsWith("/")||L.test(a))return c("path must be relative");if(a!==a.normalize("NFC"))return c("path must be NFC-normalized");if(a.includes("//"))return c("path must not contain empty segments");if(a.endsWith("/"))return c("path must not be a directory entry");let d=a.split("/");if(d.length>e.$e)return c("path is nested too deeply",{maxDepth:e.$e});for(let a of d){if("."===a||".."===a)return c('path must not contain "." or ".." segments');if(a.length>e.AN)return c("path segment is too long",{maxLength:e.AN});if(a!==a.trim())return c("path segment must not be padded with whitespace")}return(0,f.qO)(a)}function N(a,b,c){let d=(0,f.uJ)(b,"provider"),g=a.provider;if(void 0===g)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"provider is required"));let h=y(g,d,c);if(!h)return;z(h,m,d,c);let i=A(h,"name",d,c,{maxLength:e.q3}),j=G(h,"url",d,c,{optional:!0}),k=A(h,"contact",d,c,{optional:!0,maxLength:200});if(void 0!==i)return{name:i,...void 0!==j?{url:j}:{},...void 0!==k?{contact:k}:{}}}function O(a,b,c){let g=y(a,b,c);if(!g)return;z(g,o,b,c);let h=A(g,"agent",b,c,{maxLength:40});if(void 0!==h&&!(0,d.hR)(h))return void c.push((0,f.iS)(f.J$.INVALID_ENUM,(0,f.uJ)(b,"agent"),"agent is not a known CLI tool"));let i=E(g,"support",b,c,e.h3),j=A(g,"evidence",b,c,{maxLength:e.G0});if(void 0!==h&&void 0!==i&&void 0!==j)return{agent:h,support:i,evidence:j}}function P(a,b,c){let d=(0,f.uJ)(b,"compatibility"),e=a.compatibility;if(void 0===e)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"compatibility is required"));let h=y(e,d,c);if(!h)return;z(h,n,d,c);let i=A(h,"commandmate",d,c,{maxLength:100});if(void 0!==i&&!(0,g.LE)(i))return void c.push((0,f.iS)(f.J$.VERSION_RANGE_INVALID,(0,f.uJ)(d,"commandmate"),"commandmate is not a supported version range"));let j=D(h,"agents",d,c,{maxItems:20});if(void 0===i||void 0===j)return;let k=[],l=new Set,m=!1;return j.forEach((a,b)=>{let e=(0,f.uJ)((0,f.uJ)(d,"agents"),b),g=O(a,e,c);if(!g){m=!0;return}if(l.has(g.agent)){c.push((0,f.iS)(f.J$.DUPLICATE_ENTRY,e,"agent is declared more than once")),m=!0;return}l.add(g.agent),k.push(g)}),m?void 0:{commandmate:i,agents:k}}function Q(a,b,c){let d=(0,f.uJ)(b,"source"),g=a.source;if(void 0===g)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"source is required"));let h=y(g,d,c);if(!h)return;z(h,s,d,c);let i=A(h,"repository",d,c,{maxLength:140,pattern:e.AH,patternName:"owner/name"}),j=A(h,"ref",d,c,{maxLength:100,pattern:e.mg,patternName:"git-ref"});if(void 0!==j&&j.includes(".."))return void c.push((0,f.iS)(f.J$.INVALID_FORMAT,(0,f.uJ)(d,"ref"),'ref must not contain ".."'));let k=A(h,"commit",d,c,{maxLength:40,minLength:40,pattern:e.Z4,patternName:"sha1-40-hex",formatCode:f.J$.SOURCE_COMMIT_INVALID});if(void 0!==i&&void 0!==j&&void 0!==k)return{repository:i,ref:j,commit:k}}function R(a){let b=[],c=y(a,"",b);if(!c)return(0,f._9)(b);let d=H(c,b);if(void 0===d)return(0,f._9)(b);z(c,h,"",b);let i=J(c.id);i.ok||b.push(...i.errors);let j=A(c,"name","",b,{maxLength:e.q3}),k=A(c,"version","",b,{maxLength:64});void 0===k||(0,g.BO)(k)||b.push((0,f.iS)(f.J$.VERSION_INVALID,"/version",'version must be SemVer 2.0 without a "v" prefix'));let l=A(c,"summary","",b,{maxLength:e.BQ}),m=A(c,"description","",b,{maxLength:e.t9}),n=F(c,"capabilities","",b,{maxItems:e.yV,maxLength:e.$K}),o=F(c,"expected_outcomes","",b,{maxItems:e.yV,maxLength:e.$K}),s=N(c,"",b),t=A(c,"license","",b,{maxLength:64,pattern:e.DA,patternName:"spdx-license-id"}),u=G(c,"homepage","",b,{optional:!0}),v=F(c,"keywords","",b,{maxItems:e.Ue,maxLength:e.UN,optional:!0}),w=P(c,"",b),x=function(a,b,c){let d=(0,f.uJ)("","requirements"),h=a.requirements;if(void 0===h)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"requirements is required"));let i=y(h,d,c);if(!i)return;z(i,p,d,c);let j=D(i,"commands",d,c,{maxItems:e.SU}),k=F(i,"network_hosts",d,c,{maxItems:e._Z,maxLength:253,pattern:e.PB});if(void 0===j||void 0===k)return;let l=[],m=!1;return j.forEach((a,b)=>{let h=(0,f.uJ)((0,f.uJ)(d,"commands"),b),i=y(a,h,c);if(!i){m=!0;return}z(i,q,h,c);let j=A(i,"name",h,c,{maxLength:64,pattern:e.do,patternName:"command-name"}),k=A(i,"version_range",h,c,{optional:!0,maxLength:100});if(void 0!==k&&!(0,g.LE)(k)){c.push((0,f.iS)(f.J$.VERSION_RANGE_INVALID,(0,f.uJ)(h,"version_range"),"version_range is not a supported version range")),m=!0;return}if(void 0===j){m=!0;return}l.push({name:j,...void 0!==k?{version_range:k}:{}})}),m?void 0:{commands:l,network_hosts:k}}(c,0,b),K=F(c,"declared_permissions","",b,{maxItems:e.mt.length,maxLength:40});if(K)for(let[a,c]of K.entries())e.mt.includes(c)||b.push((0,f.iS)(f.J$.INVALID_ENUM,(0,f.uJ)("/declared_permissions",a),"declared permission is not an allowed value"));let L=E(c,"declared_risk","",b,e.wI),O=A(c,"risk_rationale","",b,{maxLength:e.gI}),Q=function(a,b,c){let d=(0,f.uJ)("","files"),g=D(a,"files","",c,{maxItems:e.xP});if(void 0===g)return;let h=[],i=new Set,j=!1;if(g.forEach((a,b)=>{let g=(0,f.uJ)(d,b),k=y(a,g,c);if(!k){j=!0;return}z(k,r,g,c);let l=M(k.path,(0,f.uJ)(g,"path")),m=A(k,"sha256",g,c,{minLength:64,maxLength:64,pattern:e.x2,patternName:"sha256-lowercase-hex",formatCode:f.J$.DIGEST_INVALID}),n=B(k,"size",g,c,{min:0,max:e.em}),o=E(k,"kind",g,c,e.Hx),p=C(k,"executable",g,c),q=C(k,"script",g,c);if(!l.ok){c.push(...l.errors),j=!0;return}if(void 0===m||void 0===n||void 0===o||void 0===p||void 0===q){j=!0;return}let s=l.value;if(s===e.KH){c.push((0,f.iS)(f.J$.FILE_SET_MISMATCH,(0,f.uJ)(g,"path"),"the manifest must not declare a digest for itself")),j=!0;return}let t=I(s);if(i.has(t)){c.push((0,f.iS)(f.J$.FILE_PATH_DUPLICATE,(0,f.uJ)(g,"path"),"path collides with another declared file")),j=!0;return}i.add(t),h.push({path:s,sha256:m,size:n,kind:o,executable:p,script:q})}),j)return;let k=h.filter(a=>a.path===e.Wr);return 1!==k.length?void c.push((0,f.iS)(f.J$.FILE_SET_MISMATCH,d,`files must declare exactly one ${e.Wr}`)):"skill_md"!==k[0].kind?void c.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,d,`${e.Wr} must be declared with kind "skill_md"`)):h}(c,"",b);return(n&&0===n.length&&b.push((0,f.iS)(f.J$.MISSING_FIELD,"/capabilities","capabilities must not be empty")),o&&0===o.length&&b.push((0,f.iS)(f.J$.MISSING_FIELD,"/expected_outcomes","expected_outcomes must not be empty")),b.length>0||!i.ok||void 0===j||void 0===k||void 0===l||void 0===m||void 0===n||void 0===o||void 0===s||void 0===t||void 0===w||void 0===x||void 0===K||void 0===L||void 0===O||void 0===Q)?(0,f._9)(b.length>0?b:[(0,f.iS)(f.J$.MISSING_FIELD,"","manifest is incomplete")]):(0,f.qO)({schema_version:d,id:i.value,name:j,version:k,summary:l,description:m,capabilities:n,expected_outcomes:o,provider:s,license:t,...void 0!==u?{homepage:u}:{},...void 0!==v?{keywords:v}:{},compatibility:w,requirements:x,declared_permissions:K,declared_risk:L,risk_rationale:O,files:Q})}function S(a){let b=[],c=y(a,"",b);if(!c)return(0,f._9)(b);let d=H(c,b);if(void 0===d)return(0,f._9)(b);z(c,i,"",b);let h=D(c,"entries","",b,{maxItems:e.Gm});if(void 0===h)return(0,f._9)(b);let l=[],m=new Set;return(h.forEach((a,c)=>{let d=(0,f.uJ)("/entries",c),h=function(a,b,c){let d=y(a,b,c);if(!d)return;z(d,j,b,c);let h=J(d.id,(0,f.uJ)(b,"id"));if(!h.ok)return void c.push(...h.errors);let i=h.value,l=A(d,"name",b,c,{maxLength:e.q3}),m=A(d,"summary",b,c,{maxLength:e.BQ}),n=N(d,b,c),o=A(d,"license",b,c,{maxLength:64,pattern:e.DA,patternName:"spdx-license-id"}),p=G(d,"homepage",b,c,{optional:!0}),q=F(d,"keywords",b,c,{maxItems:e.Ue,maxLength:e.UN,optional:!0}),r=A(d,"latest",b,c,{maxLength:64}),s=D(d,"versions",b,c,{maxItems:e.Xk});if(void 0===l||void 0===m||void 0===n||void 0===o||void 0===r||void 0===s)return;if(0===s.length)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,(0,f.uJ)(b,"versions"),"versions must not be empty"));let u=[],v=new Set,w=!1;if(s.forEach((a,d)=>{let h=(0,f.uJ)((0,f.uJ)(b,"versions"),d),j=function(a,b,c,d){let h=y(a,b,d);if(!h)return;z(h,k,b,d);let i=A(h,"version",b,d,{maxLength:64});if(void 0!==i&&!(0,g.BO)(i))return void d.push((0,f.iS)(f.J$.VERSION_INVALID,(0,f.uJ)(b,"version"),"version must be SemVer 2.0"));let j=A(h,"changelog",b,d,{maxLength:e.b}),l=A(h,"published_at",b,d,{maxLength:30,pattern:e.qu,patternName:"rfc3339-utc"}),m=Q(h,b,d),n=function(a,b,c){let d=(0,f.uJ)(b,"artifact"),g=a.artifact;if(void 0===g)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"artifact is required"));let h=y(g,d,c);if(!h)return;z(h,t,d,c);let i=A(h,"asset_name",d,c,{maxLength:200}),j=G(h,"url",d,c),k=A(h,"sha256",d,c,{minLength:64,maxLength:64,pattern:e.x2,patternName:"sha256-lowercase-hex",formatCode:f.J$.DIGEST_INVALID}),l=B(h,"size",d,c,{min:1,max:e.a6}),m=A(h,"content_type",d,c,{maxLength:100}),n=E(h,"format",d,c,[e.jn]);return void 0!==m&&m!==e.gJ?void c.push((0,f.iS)(f.J$.ARTIFACT_INVALID,(0,f.uJ)(d,"content_type"),"content_type must be the fixed artifact media type",{expected:e.gJ})):void 0!==i&&void 0!==j&&void 0!==k&&void 0!==l&&void 0!==m&&void 0!==n?{asset_name:i,url:j,sha256:k,size:l,content_type:m,format:n}:void 0}(h,b,d),o=P(h,b,d),p=E(h,"declared_risk",b,d,e.wI);if(void 0===i||void 0===j||void 0===l||void 0===m||void 0===n||void 0===o||void 0===p)return;let q=(0,e.l9)(c,i);return n.asset_name!==q?void d.push((0,f.iS)(f.J$.ARTIFACT_INVALID,(0,f.uJ)((0,f.uJ)(b,"artifact"),"asset_name"),"asset_name must follow the <skill-id>-<version>.tar.gz convention",{expected:q})):{version:i,changelog:j,published_at:l,source:m,artifact:n,compatibility:o,declared_risk:p}}(a,h,i,c);if(!j){w=!0;return}if(v.has(j.version)){c.push((0,f.iS)(f.J$.DUPLICATE_ENTRY,h,"version is listed more than once")),w=!0;return}v.add(j.version),u.push(j)}),!w)return v.has(r)?{id:i,name:l,summary:m,provider:n,license:o,...void 0!==p?{homepage:p}:{},...void 0!==q?{keywords:q}:{},latest:r,versions:u}:void c.push((0,f.iS)(f.J$.CATALOG_LATEST_UNRESOLVED,(0,f.uJ)(b,"latest"),"latest must reference a listed version"))}(a,d,b);if(!h)return;let i=I(h.id);if(m.has(i))return void b.push((0,f.iS)(f.J$.ID_COLLISION,d,"entry id collides with another entry"));m.add(i),l.push(h)}),b.length>0)?(0,f._9)(b):(0,f.qO)({schema_version:d,entries:l})}function T(a){let b=[],c=y(a,"",b);if(!c)return(0,f._9)(b);let d=H(c,b);if(void 0===d)return(0,f._9)(b);z(c,l,"",b);let h=J(c.skill_id,"/skill_id");h.ok||b.push(...h.errors);let i=A(c,"version","",b,{maxLength:64});void 0===i||(0,g.BO)(i)||b.push((0,f.iS)(f.J$.VERSION_INVALID,"/version","version must be SemVer 2.0"));let j=A(c,"install_root","",b,{maxLength:200}),k=void 0!==c.install_roots?F(c,"install_roots","",b,{maxItems:e.y2.length,maxLength:200}):void 0,m=Q(c,"",b),n=function(a,b,c){let d=(0,f.uJ)("","artifact"),g=a.artifact;if(void 0===g)return void c.push((0,f.iS)(f.J$.MISSING_FIELD,d,"artifact is required"));let h=y(g,d,c);if(!h)return;z(h,u,d,c);let i=A(h,"asset_name",d,c,{maxLength:200}),j=A(h,"sha256",d,c,{minLength:64,maxLength:64,pattern:e.x2,patternName:"sha256-lowercase-hex",formatCode:f.J$.DIGEST_INVALID}),k=B(h,"size",d,c,{min:1,max:e.a6}),l=E(h,"format",d,c,[e.jn]);if(void 0!==i&&void 0!==j&&void 0!==k&&void 0!==l)return{asset_name:i,sha256:j,size:k,format:l}}(c,0,b),o=function(a,b,c){let d=(0,f.uJ)("","files"),g=D(a,"files","",c,{maxItems:e.xP});if(void 0===g)return;let h=[],i=!1;if(g.forEach((a,b)=>{let g=(0,f.uJ)(d,b),j=y(a,g,c);if(!j){i=!0;return}z(j,v,g,c);let k=M(j.path,(0,f.uJ)(g,"path")),l=A(j,"sha256",g,c,{minLength:64,maxLength:64,pattern:e.x2,patternName:"sha256-lowercase-hex",formatCode:f.J$.DIGEST_INVALID}),m=B(j,"size",g,c,{min:0,max:e.em}),n=C(j,"executable",g,c);if(!k.ok){c.push(...k.errors),i=!0;return}if(void 0===l||void 0===m||void 0===n){i=!0;return}h.push({path:k.value,sha256:l,size:m,executable:n})}),!i){for(let a=1;a<h.length;a++)if(h[a-1].path>=h[a].path)return void c.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,d,"files must be sorted by path in ascending order without duplicates"));return h}}(c,"",b),p=E(c,"declared_risk","",b,e.wI),q=E(c,"computed_risk","",b,e.wI),r=E(c,"effective_risk","",b,e.wI),s=F(c,"declared_permissions","",b,{maxItems:e.mt.length,maxLength:40});if(s)for(let[a,c]of s.entries())e.mt.includes(c)||b.push((0,f.iS)(f.J$.INVALID_ENUM,(0,f.uJ)("/declared_permissions",a),"declared permission is not an allowed value"));let t=D(c,"agent_compatibility","",b,{maxItems:20}),w=[];if(t&&t.forEach((a,c)=>{let d=O(a,(0,f.uJ)("/agent_compatibility",c),b);d&&w.push(d)}),h.ok&&void 0!==j){let a=`${e.Co}/${h.value}`;j!==a&&b.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,"/install_root","install_root must be the repository-relative skill root",{expected:a}))}if(h.ok&&void 0!==j&&void 0!==k){let a=e.y2.map(a=>`${a}/${h.value}`);0===k.length?b.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,"/install_roots","install_roots must not be empty")):k[0]!==j&&b.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,"/install_roots/0","install_roots[0] must equal install_root (the primary root)",{expected:j}));let c=new Set;k.forEach((d,e)=>{a.includes(d)||b.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,`/install_roots/${e}`,"install_roots entry must be a known repository-relative skill root")),c.has(d)&&b.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,`/install_roots/${e}`,"install_roots must not repeat a root")),c.add(d)})}if(h.ok&&void 0!==i&&void 0!==n){let a=(0,e.l9)(h.value,i);n.asset_name!==a&&b.push((0,f.iS)(f.J$.ARTIFACT_INVALID,"/artifact/asset_name","asset_name must follow the <skill-id>-<version>.tar.gz convention",{expected:a}))}if(void 0!==p&&void 0!==q&&void 0!==r){let a=V(p,q);r!==a&&b.push((0,f.iS)(f.J$.INCONSISTENT_VALUE,"/effective_risk","effective_risk must be the higher of declared_risk and computed_risk",{expected:a}))}return b.length>0||!h.ok||void 0===i||void 0===j||void 0===m||void 0===n||void 0===o||void 0===p||void 0===q||void 0===r||void 0===s||void 0===t?(0,f._9)(b.length>0?b:[(0,f.iS)(f.J$.MISSING_FIELD,"","receipt is incomplete")]):(0,f.qO)({schema_version:d,skill_id:h.value,version:i,install_root:j,...void 0!==k?{install_roots:k}:{},source:m,artifact:n,files:o,declared_risk:p,computed_risk:q,effective_risk:r,declared_permissions:s,agent_compatibility:w})}function U(a,b){let c=new Set(a.files.map(a=>a.path)),d=new Set(b.filter(a=>a!==e.KH)),g=[];for(let a of c)d.has(a)||g.push((0,f.iS)(f.J$.FILE_SET_MISMATCH,"/files","declared file is absent from the package",{path:a}));for(let a of d)c.has(a)||g.push((0,f.iS)(f.J$.FILE_SET_MISMATCH,"/files","package contains an undeclared file",{path:a}));return g.length>0?(0,f._9)(g):(0,f.qO)([...c].sort())}function V(a,b){return e.$Y[b]>e.$Y[a]?b:a}function W(a){return a.executable_paths.length>0||a.declared_permissions.includes("credential_access")?"high":a.script_paths.length>0||a.network_hosts.length>0||a.declared_permissions.includes("process_execution")||a.declared_permissions.includes("filesystem_write")?"moderate":"low"}function X(a){return JSON.stringify(function a(b){if(Array.isArray(b))return b.map(a);if(w(b)){let c={};for(let d of Object.keys(b).sort())void 0!==b[d]&&(c[d]=a(b[d]));return c}return b}(a))}},55432:(a,b,c)=>{c.d(b,{J$:()=>d,_9:()=>g,iS:()=>e,qO:()=>f,uJ:()=>h});let d={NOT_AN_OBJECT:"SKILL_NOT_AN_OBJECT",SCHEMA_VERSION_UNSUPPORTED:"SKILL_SCHEMA_VERSION_UNSUPPORTED",MISSING_FIELD:"SKILL_MISSING_FIELD",INVALID_TYPE:"SKILL_INVALID_TYPE",INVALID_ENUM:"SKILL_INVALID_ENUM",INVALID_FORMAT:"SKILL_INVALID_FORMAT",LIMIT_EXCEEDED:"SKILL_LIMIT_EXCEEDED",UNKNOWN_FIELD:"SKILL_UNKNOWN_FIELD",ID_INVALID:"SKILL_ID_INVALID",ID_RESERVED:"SKILL_ID_RESERVED",ID_COLLISION:"SKILL_ID_COLLISION",ID_MISMATCH:"SKILL_ID_MISMATCH",VERSION_INVALID:"SKILL_VERSION_INVALID",VERSION_RANGE_INVALID:"SKILL_VERSION_RANGE_INVALID",DIGEST_INVALID:"SKILL_DIGEST_INVALID",FILE_PATH_UNSAFE:"SKILL_FILE_PATH_UNSAFE",FILE_PATH_DUPLICATE:"SKILL_FILE_PATH_DUPLICATE",FILE_SET_MISMATCH:"SKILL_FILE_SET_MISMATCH",ARTIFACT_INVALID:"SKILL_ARTIFACT_INVALID",SOURCE_COMMIT_INVALID:"SKILL_SOURCE_COMMIT_INVALID",CATALOG_LATEST_UNRESOLVED:"SKILL_CATALOG_LATEST_UNRESOLVED",DUPLICATE_ENTRY:"SKILL_DUPLICATE_ENTRY",INCONSISTENT_VALUE:"SKILL_INCONSISTENT_VALUE"};function e(a,b,c,d){return d?{code:a,path:b,message:c,detail:d}:{code:a,path:b,message:c}}function f(a){return{ok:!0,value:a,errors:[]}}function g(a){return{ok:!1,value:null,errors:a}}function h(a,b){return`${a}/${b}`}}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=5737,exports.ids=[5737],exports.modules={3805:(a,b,c)=>{c.d(b,{u:()=>k});var d=c(21124);c(38301);var e=c(71117),f=c(16945),g=c(93983),h=c(35595);let i={info:"bg-info-subtle border-info-border text-info-foreground",warning:"bg-warning-subtle border-warning-border text-warning-foreground",danger:"bg-danger-subtle border-danger-border text-danger-foreground",neutral:"bg-muted border-border text-muted-foreground"},j={info:e.A,warning:f.A,danger:g.A,neutral:e.A};function k({tone:a="neutral",children:b,className:c,"data-testid":e}){let f=j[a];return(0,d.jsxs)("div",{"data-testid":e,className:(0,h.cn)("flex items-start gap-2 rounded-md border px-3 py-2 text-xs leading-relaxed",i[a],c),children:[(0,d.jsx)(f,{size:14,"aria-hidden":"true",className:"mt-0.5 shrink-0"}),(0,d.jsx)("div",{className:"min-w-0",children:b})]})}},27884:(a,b,c)=>{c.d(b,{$d:()=>C,AJ:()=>D,AS:()=>k,DN:()=>E,Et:()=>h,FW:()=>s,H$:()=>d,IV:()=>z,J:()=>G,KL:()=>l,Mj:()=>o,OV:()=>e,R1:()=>J,RG:()=>y,RO:()=>q,SC:()=>F,TE:()=>i,bD:()=>K,e5:()=>v,eK:()=>f,gh:()=>A,hJ:()=>p,kF:()=>n,pP:()=>g,pk:()=>u,r0:()=>B,tC:()=>j,u0:()=>H,xX:()=>I,z2:()=>m});let d={compatible:"success",incompatible:"error",unknown:"warning"},e={compatible:"compatibility.status.compatible",incompatible:"compatibility.status.incompatible",unknown:"compatibility.status.unknown"},f={low:"gray",moderate:"warning",high:"error"},g={low:"risk.level.low",moderate:"risk.level.moderate",high:"risk.level.high"},h={native:"success",commandmate_runtime:"info",unsupported:"error",unknown:"warning"},i={SKILL_RECOMMEND_HIGHEST_COMPATIBLE:"detail.recommendation.highestCompatible",SKILL_RECOMMEND_LATEST_UNVERIFIED:"detail.recommendation.latestUnverified",SKILL_RECOMMEND_NONE_COMPATIBLE:"detail.recommendation.noneCompatible",SKILL_RECOMMEND_NO_VERSIONS:"detail.recommendation.noVersions"},j={add:"info",modify:"warning",unchanged:"gray",conflict:"error",unmanaged:"error"},k={add:"plan.change.add",modify:"plan.change.modify",unchanged:"plan.change.unchanged",conflict:"plan.change.conflict",unmanaged:"plan.change.unmanaged"},l={SKILL_DIFF_NEW_FILE:"plan.diffReason.newFile",SKILL_DIFF_CONTENT_IDENTICAL:"plan.diffReason.contentIdentical",SKILL_DIFF_MANAGED_UPDATE:"plan.diffReason.managedUpdate",SKILL_DIFF_LOCAL_MODIFICATION:"plan.diffReason.localModification",SKILL_DIFF_UNMANAGED_SKILL:"plan.diffReason.unmanagedSkill",SKILL_DIFF_RECEIPT_ORPHAN:"plan.diffReason.receiptOrphan",SKILL_DIFF_NOT_A_REGULAR_FILE:"plan.diffReason.notARegularFile"},m={filesystem_read:"plan.permission.filesystemRead",filesystem_write:"plan.permission.filesystemWrite",network_access:"plan.permission.networkAccess",process_execution:"plan.permission.processExecution",environment_read:"plan.permission.environmentRead",credential_access:"plan.permission.credentialAccess"},n={attached:"plan.headState.attached",detached:"plan.headState.detached",unborn:"plan.headState.unborn",unknown:"plan.headState.unknown"},o={remove:"uninstall.disposition.remove",modified:"uninstall.disposition.modified",missing:"uninstall.disposition.missing",unknown:"uninstall.disposition.unknown",irregular:"uninstall.disposition.irregular"},p={SKILL_UNINSTALL_MANAGED_UNCHANGED:"uninstall.reason.managedUnchanged",SKILL_UNINSTALL_LOCAL_MODIFICATION:"uninstall.reason.localModification",SKILL_UNINSTALL_RECEIPT_ORPHAN:"uninstall.reason.receiptOrphan",SKILL_UNINSTALL_UNMANAGED_FILE:"uninstall.reason.unmanagedFile",SKILL_UNINSTALL_NOT_A_REGULAR_FILE:"uninstall.reason.notARegularFile",SKILL_UNINSTALL_NOT_INSTALLED:"uninstall.reason.notInstalled",SKILL_UNINSTALL_RECEIPT_MISSING:"uninstall.reason.receiptMissing",SKILL_UNINSTALL_RECEIPT_UNREADABLE:"uninstall.reason.receiptUnreadable",SKILL_UNINSTALL_RECEIPT_FOREIGN:"uninstall.reason.receiptForeign",SKILL_UNINSTALL_TREE_SCAN_TRUNCATED:"uninstall.reason.treeScanTruncated"},q={SKILL_PREVIEW_DETACHED_HEAD:"plan.warning.detachedHead",SKILL_PREVIEW_UNBORN_HEAD:"plan.warning.unbornHead",SKILL_PREVIEW_HEAD_UNRESOLVED:"plan.warning.headUnresolved",SKILL_PREVIEW_WORKING_TREE_DIRTY:"plan.warning.workingTreeDirty",SKILL_PREVIEW_PATH_GIT_IGNORED:"plan.warning.pathGitIgnored",SKILL_PREVIEW_DIFF_TRUNCATED:"plan.warning.diffTruncated",SKILL_PREVIEW_BINARY_CONTENT:"plan.warning.binaryContent",SKILL_PREVIEW_LINE_ENDING_CRLF:"plan.warning.lineEndingCrlf",SKILL_PREVIEW_TREE_SCAN_TRUNCATED:"plan.warning.treeScanTruncated"},r={SKILL_PLAN_STALE:"operation.error.planStale",SKILL_PLAN_EXPIRED:"operation.error.planExpired",SKILL_PLAN_CONSUMED:"operation.error.planConsumed",SKILL_PLAN_NOT_FOUND:"operation.error.planNotFound",SKILL_PLAN_BINDING_MISMATCH:"operation.error.planBindingMismatch",SKILL_PLAN_NOT_INSTALLABLE:"operation.error.planNotInstallable",SKILL_PLAN_RISK_NOT_ACKNOWLEDGED:"operation.error.planRiskNotAcknowledged",SKILL_INSTALL_LOCKED:"operation.error.installLocked",SKILL_INSTALL_IN_PROGRESS:"operation.error.installInProgress",SKILL_INSTALL_DESTINATION_EXISTS:"operation.error.installDestinationExists",SKILL_INSTALL_DESTINATION_UNMANAGED:"operation.error.installDestinationUnmanaged",SKILL_INSTALL_IDEMPOTENCY_CONFLICT:"operation.error.installIdempotencyConflict",SKILL_INSTALL_FAILED:"operation.error.installFailed",SKILL_UNINSTALL_LOCKED:"operation.error.uninstallLocked",SKILL_UNINSTALL_IN_PROGRESS:"operation.error.uninstallInProgress",SKILL_UNINSTALL_IDEMPOTENCY_CONFLICT:"operation.error.uninstallIdempotencyConflict",SKILL_UNINSTALL_NOT_INSTALLED:"operation.error.uninstallNotInstalled",SKILL_UNINSTALL_BLOCKED:"operation.error.uninstallBlocked",SKILL_UNINSTALL_DRIFT:"operation.error.uninstallDrift",SKILL_UNINSTALL_FILE_CHANGED:"operation.error.uninstallFileChanged",SKILL_UNINSTALL_FAILED:"operation.error.uninstallFailed",SKILL_REQUEST_FAILED:"operation.error.requestFailed"};function s(a){return r[a]??"operation.error.unexpected"}let t={SKILL_CATALOG_FETCH_FAILED:"catalog.reason.fetchFailed",SKILL_CATALOG_RATE_LIMITED:"catalog.reason.rateLimited",SKILL_CATALOG_OVERSIZED:"catalog.reason.oversized",SKILL_CATALOG_MALFORMED:"catalog.reason.malformed",SKILL_CATALOG_INVALID_SCHEMA:"catalog.reason.invalidSchema"};function u(a){return a&&t[a]||"catalog.reason.unknown"}function v(a){return a.startsWith("skills.")?a.slice(7):a}let w=/!\[([^\]]*)\]\([^)]*\)/g,x=/<\/?(?:img|picture|source|video|audio|iframe|embed|object|track)\b[^>]*>/gi;function y(a){return a.replace(w,"$1").replace(x,"")}let z={query:"",compatibility:"all",risk:"all",agent:"all"};function A(a){let b=a.versions.find(b=>b.version===a.recommendedVersion);return(b??a.versions[0])?.declaredRisk??null}function B(a){let b=new Set;for(let c of a.versions)for(let a of c.compatibility.agents)("native"===a.support||"commandmate_runtime"===a.support)&&b.add(a.agent);return[...b].sort()}function C(a,b){return a.filter(a=>!!function(a,b){let c=b.trim().toLowerCase();return 0===c.length||[a.name,a.summary,a.id,a.provider.name,...a.keywords].some(a=>a.toLowerCase().includes(c))}(a,b.query)&&("all"===b.compatibility||a.compatibility?.status===b.compatibility)&&("all"===b.risk||A(a)===b.risk)&&("all"===b.agent||!!B(a).includes(b.agent)))}function D(a){let b=new Set;for(let c of a)for(let a of c.versions)for(let c of a.compatibility.agents)b.add(c.agent);return[...b].sort()}let E={installed:"dashboard.status.installed",modified:"dashboard.status.modified",missing:"dashboard.status.missing",unmanaged:"dashboard.status.unmanaged",update_available:"dashboard.status.updateAvailable"},F={installed:"dashboard.statusHint.installed",modified:"dashboard.statusHint.modified",missing:"dashboard.statusHint.missing",unmanaged:"dashboard.statusHint.unmanaged",update_available:"dashboard.statusHint.updateAvailable"},G={installed:"success",modified:"warning",missing:"error",unmanaged:"warning",update_available:"info"},H={install:"history.operation.install",uninstall:"history.operation.uninstall",update:"history.operation.update"},I={succeeded:"history.result.succeeded",failed:"history.result.failed",reconciled:"history.result.reconciled"},J={succeeded:"success",failed:"error",reconciled:"warning"},K={user:"history.actor.user",cli:"history.actor.cli",system:"history.actor.system"}},30156:(a,b,c)=>{c.d(b,{Db:()=>k,E:()=>u,Gj:()=>l,Q6:()=>r,V_:()=>n,Xi:()=>s,hN:()=>t,mf:()=>o,s5:()=>j,vg:()=>p});let d="SKILL_CATALOG_UNREACHABLE",e="SKILL_REQUEST_FAILED";function f(a,b,c){let d=a&&"object"==typeof a?a:{},e={code:!function(a){if(!a||"object"!=typeof a)return!1;let{error:b,code:c}=a;return"string"==typeof b&&"string"==typeof c}(a)?c:a.code,message:"string"==typeof d.error?d.error:"",status:b};return Array.isArray(d.blockers)&&(e.blockers=d.blockers),"string"==typeof d.nextActionKey&&(e.nextActionKey=d.nextActionKey),e}async function g(a,b){let c=await fetch(a,{signal:b,headers:{Accept:"application/json"}}),e=await c.json().catch(()=>null);return c.ok?{ok:!0,data:e}:{ok:!1,failure:f(e,c.status,d)}}async function h(a,b,c){let d=await fetch(a,{method:"POST",signal:c,headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(b)}),g=await d.json().catch(()=>null);return d.ok?{ok:!0,data:g}:{ok:!1,failure:f(g,d.status,e)}}async function i(a,b,c){try{return await a()}catch(a){if(c?.aborted)throw a;return{ok:!1,failure:{code:b,message:a instanceof Error?a.message:"",status:null}}}}function j(a){return i(()=>g("/api/skills",a),d,a)}function k(a,b){return i(()=>g(`/api/skills/${encodeURIComponent(a)}`,b),d,b)}function l(a,b){return i(()=>g(`/api/worktrees/${encodeURIComponent(a)}/skills`,b),e,b)}function m(a){let b=new URLSearchParams;for(let[c,d]of Object.entries(a))void 0!==d&&""!==d&&b.set(c,d);let c=b.toString();return c?`?${c}`:""}function n(a={},b){let c=m({worktreeId:a.worktreeId,skillId:a.skillId,status:a.status,refresh:a.refresh?"true":void 0});return i(()=>g(`/api/skills/installations${c}`,b),e,b)}function o(a={},b){let c=m({worktreeId:a.worktreeId,skillId:a.skillId,operation:a.operation,result:a.result,cursor:a.cursor,limit:void 0===a.limit?void 0:String(a.limit)});return i(()=>g(`/api/skills/operations${c}`,b),e,b)}function p(a){return i(()=>h("/api/skills/reindex",{},a),e,a)}function q(a,b,c){return`/api/worktrees/${encodeURIComponent(a)}/skills/${encodeURIComponent(b)}/${c}`}function r(a,b,c={},d){let f={};return c.version&&(f.version=c.version),c.acknowledgeRisk&&(f.acknowledgeRisk=!0),i(()=>h(q(a,b,"plan"),f,d),e,d)}function s(a,b,c,d){let f={planToken:c.planToken,version:c.version};return c.acknowledgeRisk&&(f.acknowledgeRisk=!0),c.idempotencyKey&&(f.idempotencyKey=c.idempotencyKey),i(()=>h(q(a,b,"install"),f,d),e,d)}function t(a,b,c){return i(()=>h(q(a,b,"uninstall-plan"),{},c),e,c)}function u(a,b,c,d){let f={planToken:c.planToken};return c.idempotencyKey&&(f.idempotencyKey=c.idempotencyKey),i(()=>h(q(a,b,"uninstall"),f,d),e,d)}}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=5793,exports.ids=[5793],exports.modules={9758:(a,b,c)=>{c.d(b,{Ck:()=>h});var d=c(21124),e=c(38301),f=c.n(e),g=c(62484);function h({children:a,as:b="div",className:c=""}){let e=function a(b){return null==b||"boolean"==typeof b?"":"string"==typeof b?b:"number"==typeof b?String(b):Array.isArray(b)?b.map(a).join(""):f().isValidElement(b)?a(b.props.children):""}(a);if(!e||0===e.trim().length)return(0,d.jsx)(b,{className:c||void 0,children:a});let h=`relative group ${"span"===b?"block ":""}${c}`.trim();return(0,d.jsxs)(b,{className:h,"data-testid":"code-block-with-copy",children:[a,(0,d.jsx)(g.i,{text:e,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"})]})}},9815:(a,b,c)=>{c.d(b,{B:()=>B});var d=c(21124),e=c(38301),f=c(20481),g=c(73451),h=c(17252),i=c(90349),j=c(85389),k=c(3805);let l={status:"loading",options:[]};function m({selectedWorktreeId:a,onSelect:b,disabled:c=!1}){let h=(0,f.c)("skills"),[i,j]=(0,e.useState)(l),[m,o]=(0,e.useState)(0),p=(0,e.useCallback)(()=>o(a=>a+1),[]);return"loading"===i.status?(0,d.jsxs)("div",{className:"space-y-2","data-testid":"skill-target-loading",children:[(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:h("target.loading")}),(0,d.jsx)(g.EA,{className:"h-24 w-full rounded-lg"})]}):"error"===i.status?(0,d.jsxs)(g.Zp,{className:"space-y-3","data-testid":"skill-target-error",children:[(0,d.jsx)(k.u,{tone:"danger",children:h("target.errorNotice")}),(0,d.jsx)(g.$n,{variant:"secondary",size:"sm",onClick:p,"data-testid":"skill-target-retry",children:h("target.retry")})]}):0===i.options.length?(0,d.jsx)(g.Zp,{"data-testid":"skill-target-empty",children:(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:h("target.empty")})}):(0,d.jsxs)("div",{className:"space-y-3","data-testid":"skill-target-selector",children:[(0,d.jsx)("div",{role:"radiogroup","aria-label":h("target.heading"),className:"space-y-2",children:i.options.map(e=>(0,d.jsx)(n,{option:e,selected:e.id===a,disabled:c,onSelect:b},e.id))}),(0,d.jsx)(k.u,{tone:"neutral","data-testid":"skill-target-branch-notice",children:h("target.branchFreshnessNotice")})]})}function n({option:a,selected:b,disabled:c,onSelect:e}){let h=(0,f.c)("skills"),i=a.liveBranch??a.syncedBranch;return(0,d.jsxs)("button",{type:"button",role:"radio","aria-checked":b,disabled:c,onClick:()=>e(a.id),"data-testid":`skill-target-option-${a.id}`,className:`w-full rounded-lg border px-3 py-2.5 text-left transition-colors disabled:cursor-not-allowed disabled:opacity-60 ${b?"border-accent-500 bg-accent-50 dark:bg-accent-950/40":"border-border bg-card hover:bg-muted"}`,children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsx)("span",{className:"text-sm font-semibold text-foreground break-all",children:a.name}),b&&(0,d.jsx)(g.Ex,{variant:"info",children:h("target.selected")})]}),(0,d.jsxs)("dl",{className:"mt-1.5 grid grid-cols-1 gap-x-4 gap-y-1 sm:grid-cols-2",children:[(0,d.jsx)(o,{label:h("target.repository"),children:a.repositoryName}),(0,d.jsx)(o,{label:h("target.branch"),children:i??h("target.branchUnknown")}),(0,d.jsx)(o,{label:h("target.agents"),children:a.agents.length>0?a.agents.join(", "):h("target.agentsNone")}),(0,d.jsx)(o,{label:h("target.workingTree"),children:h(null===a.dirty?"target.workingTreeUnknown":a.dirty?"target.workingTreeDirty":"target.workingTreeClean")})]}),a.sessionRunning&&(0,d.jsx)("p",{className:"mt-1.5 text-xs text-muted-foreground","data-testid":`skill-target-session-${a.id}`,children:h("target.sessionRunning")})]})}function o({label:a,children:b}){return(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("dt",{className:"text-xs font-medium text-muted-foreground",children:a}),(0,d.jsx)("dd",{className:"text-xs text-foreground break-words",children:b})]})}var p=c(27884);function q({label:a,children:b}){return(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("dt",{className:"text-xs font-medium text-muted-foreground",children:a}),(0,d.jsx)("dd",{className:"mt-0.5 break-words text-sm text-foreground",children:b})]})}function r({level:a,kind:b,label:c}){let e=(0,f.c)("skills");return(0,d.jsxs)(g.Ex,{variant:p.eK[a],"data-testid":`skill-plan-risk-${b}-${a}`,children:[c,": ",e(p.pP[a])]})}function s({entry:a}){let b=(0,f.c)("skills"),c=p.KL[a.reason];return(0,d.jsxs)("li",{className:"space-y-1.5 rounded-md border border-border px-3 py-2","data-testid":`skill-plan-file-${a.path}`,children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsx)(g.Ex,{variant:p.tC[a.change],children:b(p.AS[a.change])}),(0,d.jsx)("span",{className:"break-all font-mono text-xs text-foreground",children:a.path}),a.generated&&(0,d.jsx)(g.Ex,{variant:"gray",children:b("plan.fileGenerated")})]}),c&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:b(c)}),a.gitIgnored&&(0,d.jsx)("p",{className:"text-xs text-warning-foreground",children:b("plan.gitIgnored")}),a.binary?(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:b("plan.diffBinary")}):a.diff?(0,d.jsxs)("details",{children:[(0,d.jsx)("summary",{className:"cursor-pointer text-xs text-accent-600 dark:text-accent-400",children:b("plan.diffToggle",{additions:a.additions,deletions:a.deletions})}),(0,d.jsx)("pre",{className:"mt-1 overflow-x-auto rounded bg-muted p-2 font-mono text-[11px] leading-snug text-foreground",children:a.diff}),a.diffTruncated&&(0,d.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:b("plan.diffTruncated")})]}):null]})}function t({plan:a}){let b=(0,f.c)("skills"),{target:c,skill:e}=a,h=e.compatibility.commandmate;return(0,d.jsxs)(g.Zp,{className:"space-y-4","data-testid":"skill-install-plan",children:[(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:b("plan.heading")}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:b("plan.expiresAt",{timestamp:a.expiresAt})})]}),(0,d.jsxs)("section",{className:"space-y-2",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("plan.targetHeading")}),(0,d.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,d.jsx)(q,{label:b("target.repository"),children:c.repositoryName}),(0,d.jsx)(q,{label:b("target.heading"),children:c.worktreeName}),(0,d.jsx)(q,{label:b("target.branch"),children:c.branch??b("target.branchUnknown")}),(0,d.jsx)(q,{label:b("plan.headStateLabel"),children:b(p.kF[c.headState]??"plan.headState.unknown")}),(0,d.jsx)(q,{label:b("target.workingTree"),children:c.workingTreeDirty?b("target.workingTreeDirty"):b("target.workingTreeClean")}),(0,d.jsx)(q,{label:b("plan.installRoot"),children:(0,d.jsx)("span",{className:"break-all font-mono text-xs",children:(c.installRoots&&c.installRoots.length>0?c.installRoots:[c.installRoot]).map(a=>(0,d.jsx)("span",{className:"block",children:a},a))})}),(0,d.jsx)(q,{label:b("plan.existingInstall"),children:c.existingInstall?b("plan.existingInstallVersion",{version:c.existingInstall.version}):b("plan.existingInstallNone")}),(0,d.jsx)(q,{label:b("detail.recommendedVersion"),children:(0,d.jsx)("span",{className:"font-mono text-xs",children:e.version})})]})]}),(0,d.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-risk-section",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("plan.riskHeading")}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-1.5",children:[(0,d.jsx)(r,{level:e.declaredRisk,kind:"declared",label:b("plan.riskDeclared")}),(0,d.jsx)(r,{level:e.computedRisk,kind:"computed",label:b("plan.riskComputed")}),(0,d.jsx)(r,{level:e.effectiveRisk,kind:"effective",label:b("plan.riskEffective")})]}),(0,d.jsx)("p",{className:"break-words text-sm text-foreground",children:e.riskRationale}),(0,d.jsx)(k.u,{tone:"neutral",children:b("plan.riskNotice")})]}),(0,d.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-permissions",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("permissions.heading")}),e.declaredPermissions.length>0?(0,d.jsx)("div",{className:"flex flex-wrap gap-1.5",children:e.declaredPermissions.map(a=>(0,d.jsx)(g.Ex,{variant:"warning",children:p.z2[a]?b(p.z2[a]):a},a))}):(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:b("plan.permissionsNone")}),(0,d.jsx)(k.u,{tone:"warning",children:b("permissions.declarationOnlyNotice")})]}),(0,d.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-requirements",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("requirements.heading")}),0===e.requirements.commands.length&&0===e.requirements.networkHosts.length?(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:b("plan.requirementsNone")}):(0,d.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[e.requirements.commands.length>0&&(0,d.jsx)(q,{label:b("plan.requirementsCommands"),children:e.requirements.commands.map(a=>`${a.name} ${a.versionRange??b("plan.commandAnyVersion")}`).join(", ")}),e.requirements.networkHosts.length>0&&(0,d.jsx)(q,{label:b("plan.requirementsHosts"),children:e.requirements.networkHosts.join(", ")})]})]}),(0,d.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-scripts",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("plan.scriptsHeading")}),0===e.executablePaths.length&&0===e.scriptPaths.length?(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:b("plan.scriptsNone")}):(0,d.jsx)("ul",{className:"space-y-1",children:[...new Set([...e.scriptPaths,...e.executablePaths])].map(a=>(0,d.jsx)("li",{className:"break-all font-mono text-xs text-foreground",children:a},a))})]}),"compatible"!==h.status&&(0,d.jsx)(k.u,{tone:"warning","data-testid":"skill-plan-compatibility-notice",children:b((0,p.e5)(h.messageKey),{range:h.requiredRange,currentVersion:h.currentVersion??""})}),a.warnings.length>0&&(0,d.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-warnings",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("plan.warningsHeading")}),(0,d.jsx)("ul",{className:"space-y-1",children:a.warnings.map(a=>(0,d.jsx)("li",{className:"text-xs text-warning-foreground",children:p.RO[a]?b(p.RO[a]):a},a))})]}),(0,d.jsxs)("section",{className:"space-y-2","data-testid":"skill-plan-files",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("plan.filesHeading")}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":"skill-plan-stats",children:b("plan.stats",{added:a.stats.added,modified:a.stats.modified,unchanged:a.stats.unchanged,conflicted:a.stats.conflicted,unmanaged:a.stats.unmanaged})}),0===a.files.length?(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:b("plan.filesEmpty")}):(0,d.jsx)("ul",{className:"space-y-2",children:a.files.map(a=>(0,d.jsx)(s,{entry:a},a.path))})]}),a.blockers.length>0&&(0,d.jsxs)("section",{className:"space-y-2","data-testid":"skill-install-blockers",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-danger-foreground",children:b("plan.blockersHeading")}),(0,d.jsx)("ul",{className:"space-y-1",children:a.blockers.map(a=>(0,d.jsxs)("li",{className:"text-xs text-danger-foreground",children:[a.path&&(0,d.jsx)("span",{className:"mr-1 break-all font-mono",children:a.path}),a.code.startsWith("skills.")?b((0,p.e5)(a.code),{range:h.requiredRange,currentVersion:h.currentVersion??""}):p.KL[a.code]?b(p.KL[a.code]):a.code]},`${a.code}:${a.path??""}`))}),(0,d.jsx)(k.u,{tone:"danger",children:b("plan.blockedNotice")})]})]})}function u({entry:a}){let b=(0,f.c)("skills"),c=p.Mj[a.disposition],e=p.hJ[a.reason];return(0,d.jsxs)("li",{className:"flex flex-wrap items-center gap-2","data-testid":`skill-uninstall-file-${a.path}`,children:[(0,d.jsx)(g.Ex,{variant:"remove"===a.disposition?"info":"warning",children:c?b(c):a.disposition}),(0,d.jsx)("span",{className:"break-all font-mono text-xs text-foreground",children:a.path}),e&&(0,d.jsx)("span",{className:"text-xs text-muted-foreground",children:b(e)})]})}function v({plan:a}){let b=(0,f.c)("skills"),{target:c,skill:e}=a;return(0,d.jsxs)(g.Zp,{className:"space-y-4","data-testid":"skill-uninstall-plan",children:[(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:b("uninstall.heading")}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:b("uninstall.expiresAt",{timestamp:a.expiresAt})})]}),(0,d.jsxs)("dl",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2",children:[(0,d.jsx)(q,{label:b("target.repository"),children:c.repositoryName}),(0,d.jsx)(q,{label:b("target.heading"),children:c.worktreeName}),(0,d.jsx)(q,{label:b("target.branch"),children:c.branch??b("target.branchUnknown")}),(0,d.jsx)(q,{label:b("uninstall.installedVersion"),children:(0,d.jsx)("span",{className:"font-mono text-xs",children:e.version||b("uninstall.versionUnknown")})}),(0,d.jsx)(q,{label:b("plan.installRoot"),children:(0,d.jsx)("span",{className:"break-all font-mono text-xs",children:c.installRoot})}),(0,d.jsx)(q,{label:b("target.workingTree"),children:c.workingTreeDirty?b("target.workingTreeDirty"):b("target.workingTreeClean")})]}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground","data-testid":"skill-uninstall-stats",children:b("uninstall.stats",{removable:a.stats.removable,modified:a.stats.modified,missing:a.stats.missing,unknown:a.stats.unknown,irregular:a.stats.irregular})}),(0,d.jsxs)("section",{className:"space-y-2",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("uninstall.removalsHeading")}),0===a.removals.length?(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:b("uninstall.removalsEmpty")}):(0,d.jsx)("ul",{className:"space-y-1.5",children:a.removals.map(a=>(0,d.jsx)(u,{entry:a},a.path))})]}),(0,d.jsxs)("section",{className:"space-y-2",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:b("uninstall.retainedHeading")}),0===a.retained.length?(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:b("uninstall.retainedEmpty")}):(0,d.jsx)("ul",{className:"space-y-1.5",children:a.retained.map(a=>(0,d.jsx)(u,{entry:a},a.path))})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[a.skill.agents.length>0&&(0,d.jsx)("div",{className:"flex flex-wrap gap-1.5","data-testid":"skill-uninstall-agents",children:a.skill.agents.map(a=>(0,d.jsx)(g.Ex,{variant:"gray",children:(0,h.f_)(a.agent)},a.agent))}),(0,d.jsx)(k.u,{tone:"neutral",children:b((0,p.e5)(a.nextActionKey))})]}),a.blockers.length>0&&(0,d.jsxs)("section",{className:"space-y-2","data-testid":"skill-uninstall-blockers",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-danger-foreground",children:b("uninstall.blockersHeading")}),(0,d.jsx)("ul",{className:"space-y-1",children:a.blockers.map(a=>(0,d.jsxs)("li",{className:"text-xs text-danger-foreground",children:[a.path&&(0,d.jsx)("span",{className:"mr-1 break-all font-mono",children:a.path}),b((0,p.e5)(a.messageKey))]},`${a.code}:${a.path??""}`))})]})]})}var w=c(30156);let x={worktreeId:null,busy:null,installPlan:null,uninstallPlan:null,installResult:null,uninstallResult:null,riskAcknowledged:!1,failure:null};function y(a){return{...a,installPlan:null,uninstallPlan:null,installResult:null,uninstallResult:null,riskAcknowledged:!1,failure:null}}function z({failure:a}){let b=(0,f.c)("skills");return(0,d.jsxs)("div",{className:"space-y-2","data-testid":"skill-operation-error",children:[(0,d.jsxs)(k.u,{tone:"danger",children:[(0,d.jsx)("p",{className:"font-medium",children:b("operation.errorHeading")}),(0,d.jsx)("p",{className:"mt-1",children:b((0,p.FW)(a.code))}),(0,d.jsx)("p",{className:"mt-1 break-words",children:b("state.errorCode",{code:a.code})})]}),a.nextActionKey&&(0,d.jsx)(k.u,{tone:"warning",children:b((0,p.e5)(a.nextActionKey))}),a.blockers&&a.blockers.length>0&&(0,d.jsx)("ul",{className:"space-y-1","data-testid":"skill-operation-error-blockers",children:a.blockers.map(a=>(0,d.jsxs)("li",{className:"text-xs text-danger-foreground",children:[a.path&&(0,d.jsx)("span",{className:"mr-1 break-all font-mono",children:a.path}),b((0,p.e5)(a.messageKey))]},`${a.code}:${a.path??""}`))})]})}function A({agents:a,skillId:b,version:c}){let e=(0,f.c)("skills");return 0===a.length?null:(0,d.jsxs)("div",{className:"space-y-1","data-testid":"skill-operation-reload",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:e("operation.reloadHeading")}),(0,d.jsx)("ul",{className:"space-y-1",children:a.map(a=>(0,d.jsx)("li",{className:"text-xs text-muted-foreground",children:e((0,p.e5)(a.messageKey),{agent:(0,h.f_)(a.agent),skillId:b,version:c})},a.agent))})]})}function B({skillId:a,version:b,blockedReason:c,worktreeId:h,agents:l=[]}){let n=(0,f.c)("skills"),[o,q]=(0,e.useState)(()=>h?{...x,worktreeId:h}:x),r=(0,e.useCallback)(a=>{q(b=>b.worktreeId===a?b:y({...b,worktreeId:a,busy:null}))},[]),s=(0,e.useCallback)(async()=>{let c=o.worktreeId;if(!c)return;q(a=>({...y(a),busy:"install-plan"}));let d=await (0,w.Q6)(c,a,{version:b??void 0});q(a=>({...a,busy:null,installPlan:d.ok?d.data.plan:null,failure:d.ok?null:d.failure}))},[a,o.worktreeId,b]),u=(0,e.useCallback)(async()=>{var b;let c=o.worktreeId,d=o.installPlan;if(!c||!d||d.requiresRiskAcknowledgement&&!o.riskAcknowledged)return;q(a=>({...a,busy:"install-apply",failure:null}));let e=await (0,w.Xi)(c,a,{planToken:d.token,version:d.skill.version,acknowledgeRisk:!!d.requiresRiskAcknowledgement||void 0,idempotencyKey:(b=d.token,`skill-install-${b}`)});e.ok&&(0,i.k)(c),q(a=>({...a,busy:null,installPlan:e.ok?null:a.installPlan,installResult:e.ok?e.data:null,failure:e.ok?null:e.failure}))},[a,o.installPlan,o.riskAcknowledged,o.worktreeId]),B=(0,e.useCallback)(async()=>{let b=o.worktreeId;if(!b)return;q(a=>({...y(a),busy:"uninstall-plan"}));let c=await (0,w.hN)(b,a);q(a=>({...a,busy:null,uninstallPlan:c.ok?c.data.plan:null,failure:c.ok?null:c.failure}))},[a,o.worktreeId]),C=(0,e.useCallback)(async()=>{var b;let c=o.worktreeId,d=o.uninstallPlan;if(!c||!d)return;q(a=>({...a,busy:"uninstall-apply",failure:null}));let e=await (0,w.E)(c,a,{planToken:d.token,idempotencyKey:(b=d.token,`skill-uninstall-${b}`)});q(a=>({...a,busy:null,uninstallPlan:e.ok?null:a.uninstallPlan,uninstallResult:e.ok?e.data:null,failure:e.ok?null:e.failure}))},[a,o.uninstallPlan,o.worktreeId]),D=(0,e.useCallback)(()=>{q(a=>y(a))},[]),E=null!==o.busy,F=o.installPlan,G=o.uninstallPlan,H=c??n(o.worktreeId?"plan.ready":"plan.chooseTarget"),I=null!==F&&F.requiresRiskAcknowledgement&&!o.riskAcknowledged;return(0,d.jsxs)("div",{className:"space-y-3","data-testid":"skill-install-panel",children:[!h&&(0,d.jsx)(m,{selectedWorktreeId:o.worktreeId,onSelect:r,disabled:E}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(g.$n,{variant:"primary",disabled:E||null!==c||!o.worktreeId,onClick:s,"data-testid":"skill-install-action","aria-describedby":"skill-install-reason",children:n("install-plan"===o.busy?"plan.building":"plan.build")}),(0,d.jsx)(g.$n,{variant:"secondary",disabled:E||!o.worktreeId,onClick:B,"data-testid":"skill-uninstall-action",children:n("uninstall-plan"===o.busy?"uninstall.building":"uninstall.build")})]}),(0,d.jsx)("p",{id:"skill-install-reason",className:"text-sm text-muted-foreground","data-testid":"skill-install-reason",children:H}),l.length>0&&(0,d.jsxs)("div",{className:"space-y-1","data-testid":"skill-install-reload-preview",children:[(0,d.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:n("operation.reloadHeading")}),(0,d.jsx)("ul",{className:"space-y-1",children:l.map(a=>(0,d.jsx)(j.m,{agent:a,variant:"reload"},a.agent))})]}),o.failure&&(0,d.jsx)(z,{failure:o.failure}),F&&(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsx)(t,{plan:F}),F.requiresRiskAcknowledgement&&(0,d.jsxs)(g.Zp,{className:"space-y-3","data-testid":"skill-install-risk-acknowledgement",children:[(0,d.jsx)(k.u,{tone:"danger",children:n((0,p.e5)(F.riskAcknowledgementMessageKey??"skills.plan.highRiskAcknowledgement"))}),(0,d.jsxs)("label",{className:"flex items-start gap-2 text-sm text-foreground",children:[(0,d.jsx)(g.Sc,{checked:o.riskAcknowledged,onCheckedChange:a=>q(b=>({...b,riskAcknowledged:!0===a})),disabled:E,"data-testid":"skill-install-risk-checkbox",className:"mt-0.5"}),(0,d.jsx)("span",{children:n("plan.acknowledgeLabel")})]})]}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(g.$n,{variant:F.requiresRiskAcknowledgement?"danger":"primary",disabled:E||!F.installable||I,onClick:u,"data-testid":"skill-install-confirm",children:n("install-apply"===o.busy?"plan.confirming":"plan.confirm")}),(0,d.jsx)(g.$n,{variant:"ghost",disabled:E,onClick:D,"data-testid":"skill-install-discard",children:n("plan.discard")})]})]}),G&&(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsx)(v,{plan:G}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(g.$n,{variant:"danger",disabled:E||!G.removable,onClick:C,"data-testid":"skill-uninstall-confirm",children:n("uninstall-apply"===o.busy?"uninstall.confirming":"uninstall.confirm")}),(0,d.jsx)(g.$n,{variant:"ghost",disabled:E,onClick:D,"data-testid":"skill-uninstall-discard",children:n("plan.discard")})]})]}),o.installResult&&(0,d.jsxs)(g.Zp,{className:"space-y-3","data-testid":"skill-install-result",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:n("operation.installedHeading")}),(0,d.jsx)(k.u,{tone:"info",children:n((0,p.e5)(o.installResult.operation.nextActionKey))}),o.installResult.operation.replayed&&(0,d.jsx)(k.u,{tone:"neutral","data-testid":"skill-operation-replayed",children:n("operation.replayNotice")}),o.installResult.install&&"files"in o.installResult.install&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:n("operation.filesWritten",{count:o.installResult.install.files.length})}),"reload"in o.installResult&&(0,d.jsx)(A,{agents:o.installResult.reload.agents,skillId:o.installResult.reload.skillId,version:o.installResult.reload.version}),(0,d.jsx)(g.$n,{variant:"secondary",size:"sm",onClick:D,"data-testid":"skill-operation-reset",children:n("operation.startOver")})]}),o.uninstallResult&&(0,d.jsxs)(g.Zp,{className:"space-y-3","data-testid":"skill-uninstall-result",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:n("operation.uninstalledHeading")}),(0,d.jsx)(k.u,{tone:"info",children:n((0,p.e5)(o.uninstallResult.operation.nextActionKey))}),o.uninstallResult.operation.replayed&&(0,d.jsx)(k.u,{tone:"neutral","data-testid":"skill-operation-replayed",children:n("operation.replayNotice")}),o.uninstallResult.uninstall&&"removedFiles"in o.uninstallResult.uninstall&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:n("operation.filesRemoved",{count:o.uninstallResult.uninstall.removedFiles.length})}),"reload"in o.uninstallResult&&(0,d.jsx)(A,{agents:o.uninstallResult.reload.agents,skillId:o.uninstallResult.reload.skillId,version:o.uninstallResult.reload.version}),(0,d.jsx)(g.$n,{variant:"secondary",size:"sm",onClick:D,"data-testid":"skill-operation-reset",children:n("operation.startOver")})]})]})}},12894:(a,b,c)=>{c.d(b,{o:()=>d});function d(a){return a?a.split("/").map(encodeURIComponent).join("/"):""}},28593:(a,b,c)=>{c.d(b,{Xz:()=>j,qW:()=>k,uE:()=>l});var d=c(21124);c(38301);var e=c(20481),f=c(93983),g=c(73451),h=c(17252),i=c(27884);function j({status:a,className:b}){let c=(0,e.c)("skills");return(0,d.jsx)(g.Ex,{variant:i.H$[a],className:b,"data-testid":`skill-compatibility-${a}`,children:c(i.OV[a])})}function k({risk:a,className:b}){let c=(0,e.c)("skills");return(0,d.jsxs)(g.Ex,{variant:i.eK[a],className:b,"data-testid":`skill-declared-risk-${a}`,children:["high"===a&&(0,d.jsx)(f.A,{size:12,"aria-hidden":"true",className:"mr-1 shrink-0"}),c("risk.declaredLabel",{level:c(i.pP[a])})]})}function l({agent:a}){let b=(0,e.c)("skills");return(0,d.jsxs)(g.Ex,{variant:i.Et[a.support],"data-testid":`skill-agent-${a.agent}-${a.support}`,children:[(0,h.f_)(a.agent),": ",b((0,i.e5)(a.labelKey))]})}},62484:(a,b,c)=>{c.d(b,{i:()=>j});var d=c(21124),e=c(38301),f=c(63156),g=c(58970);function h(){return(0,d.jsx)("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,d.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 i(){return(0,d.jsx)("svg",{className:"h-3.5 w-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,d.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})})}function j({text:a,className:b="",label:c="Copy"}){let[j,k]=(0,e.useState)(!1),l=(0,e.useRef)(null),m=(0,e.useCallback)(async()=>{try{await (0,f.l)(a),k(!0),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>k(!1),g.s7)}catch{}},[a]);return(0,d.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 ${b}`,"aria-label":j?"Copied":c,title:j?"Copied!":c,children:[j?(0,d.jsx)(i,{}):(0,d.jsx)(h,{}),(0,d.jsx)("span",{children:j?"Copied":c})]})}},63156:(a,b,c)=>{c.d(b,{l:()=>e});let d=/\x1b\[[0-9;]*[a-zA-Z]|\x1b\][^\x07]*\x07|\[[0-9;]*m/g;async function e(a){if(!a||0===a.trim().length)return;let b=a.replace(d,"");if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(b);return}catch{}let c=document.createElement("textarea");c.value=b,c.style.position="fixed",c.style.left="-9999px",c.style.top="-9999px",c.style.opacity="0",document.body.appendChild(c),c.focus(),c.select();try{document.execCommand("copy")}finally{document.body.removeChild(c)}}},80855:(a,b,c)=>{c.d(b,{G8:()=>x});var d=c(21124),e=c(38301),f=c.n(e),g=c(20481),h=c(79206),i=c(18954),j=c(26295),k=c(29701),l=c(28752),m=c(37950);c(31230);var n=c(13973),o=c(17793);let p=(0,n.default)(async()=>{},{loadableGenerated:{modules:["components/worktree/MermaidCodeBlock.tsx -> ./MermaidDiagram"]},ssr:!1,loading:function(){let a=(0,g.c)("worktree");return(0,d.jsxs)("div",{className:"mermaid-loading flex items-center gap-2 text-muted-foreground p-4",children:[(0,d.jsx)(o.y,{size:"sm"}),(0,d.jsx)("span",{children:a("mermaid.loading")})]})}});function q({className:a,children:b}){if(a&&a.split(" ").includes("language-mermaid")){let a=null==b?"":"string"==typeof b?b:Array.isArray(b)?b.map(a=>"string"==typeof a?a:"").join(""):String(b);return(0,d.jsx)(p,{code:a})}return(0,d.jsx)("code",{className:a,children:b})}var r=c(9758),s=c(46831);function t(a,b){if(!b)return null;let c=a.substring(0,a.lastIndexOf("/")+1);try{let a=new URL(c,"file:///"),d=new URL(b,a),e=decodeURIComponent(d.pathname);if(e.startsWith("/")){let a=e.substring(1);if(a.length>0)return a}}catch{}return null}let u={...s.j,attributes:{...s.j.attributes,a:[...(s.j.attributes?.a??[]).filter(a=>"href"!==a),["href",/^(?:#|mailto:|tel:|https?:\/\/|(?![a-zA-Z][a-zA-Z0-9+.-]*:))/]],img:[...(s.j.attributes?.img??[]).filter(a=>"src"!==a),["src",/^(?:https?:\/\/|(?![a-zA-Z][a-zA-Z0-9+.-]*:))/],"alt","width","height"]}};var v=c(12894);function w({apiUrl:a,alt:b,width:c,height:f}){let h=(0,g.c)("worktree"),[i,j]=(0,e.useState)(null);return i?(0,d.jsx)("img",{src:i,alt:b,width:c,height:f,style:{maxWidth:c||"100%"}}):(0,d.jsx)("span",{style:{color:"#999"},children:h("markdownPreview.loadingImage")})}let x=(0,e.memo)(function({content:a,onOpenFile:b,currentFilePath:c,worktreeId:g}){let n=(0,e.useRef)(b);n.current=b;let o=(0,e.useRef)(c);o.current=c;let p=(0,e.useRef)(g);p.current=g;let s=(0,e.useCallback)((a,b)=>{let c=!b||0===b.length||b.length>2048||/[\x00-\x1f\x7f]/.test(b)?null:b;if(c)switch(c.startsWith("#")?"anchor":c.startsWith("http://")||c.startsWith("https://")||c.startsWith("mailto:")||c.startsWith("tel:")?"external":"relative"){case"anchor":break;case"external":a.preventDefault(),window.open(c,"_blank","noopener,noreferrer");break;case"relative":{a.preventDefault();let b=o.current,d=n.current;if(b&&d){let a=t(b,c);a&&d(a)}}}},[]),x=(0,e.useMemo)(()=>({code:q,pre:({children:a})=>!function(a){let b=f().Children.toArray(a)[0];if(!f().isValidElement(b))return!1;let c=b.props.className;return"string"==typeof c&&c.split(" ").includes("language-mermaid")}(a)?(0,d.jsx)(r.Ck,{children:(0,d.jsx)("pre",{className:"overflow-x-auto",children:a})}):(0,d.jsx)("pre",{children:a}),img:({src:a,alt:b,width:c,height:e,...f})=>{let g=c??f.node?.properties?.width,h=e??f.node?.properties?.height;if("string"==typeof a&&!a.startsWith("http://")&&!a.startsWith("https://")&&!a.startsWith("data:")){let c=o.current,e=p.current;if(c&&e){let f=t(c,a);if(f){let a=`/api/worktrees/${e}/files/${(0,v.o)(f)}`;return(0,d.jsx)(w,{apiUrl:a,alt:b??"",width:g,height:h})}}}return(0,d.jsx)("img",{src:a,alt:b??"",width:g,height:h,style:{maxWidth:g||"100%"}})},a:({href:a,children:b,...c})=>a?(0,d.jsx)("a",{...c,href:a,onClick:b=>s(b,a),children:b}):(0,d.jsx)("a",{...c,children:b})}),[s]),y=(0,e.useMemo)(()=>[i.A],[]),z=(0,e.useMemo)(()=>[j.A,[k.A,u],l.A,m.A],[]);return(0,d.jsx)(h.oz,{remarkPlugins:y,rehypePlugins:z,components:x,children:a})})},85389:(a,b,c)=>{c.d(b,{m:()=>j});var d=c(21124);c(38301);var e=c(20481),f=c(17252),g=c(3805),h=c(27884);function i({axis:a,agentName:b}){let c=(0,e.c)("skills");return(0,d.jsxs)("li",{className:"text-xs text-muted-foreground","data-testid":`skill-agent-axis-${a.axis}`,children:[(0,d.jsx)("span",{className:"font-medium text-foreground",children:c((0,h.e5)(a.axisKey))}),": ",(0,d.jsx)("span",{"data-testid":`skill-agent-axis-${a.axis}-${a.outcome}`,children:c((0,h.e5)(a.outcomeKey))})," — ",c((0,h.e5)(a.evidenceKindKey)),a.limitationKey&&(0,d.jsx)("span",{className:"mt-0.5 block","data-testid":`skill-agent-axis-${a.axis}-limitation`,children:c((0,h.e5)(a.limitationKey),{agent:b})})]})}function j({agent:a,variant:b="full"}){let c=(0,e.c)("skills"),j=(0,f.f_)(a.agent),k=a.measured;return"reload"===b?(0,d.jsx)("li",{className:"text-xs text-muted-foreground","data-testid":`skill-agent-reload-${a.agent}`,children:c((0,h.e5)(a.reloadKey),{agent:j})}):(0,d.jsxs)("div",{className:"space-y-1","data-testid":`skill-agent-evidence-${a.agent}`,children:[(0,d.jsx)("p",{className:"text-xs font-medium text-foreground",children:j}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground break-words",children:c("compatibility.declaredLabel",{support:c((0,h.e5)(a.declaredLabelKey))})}),(0,d.jsxs)("p",{className:"text-xs text-muted-foreground break-words",children:[c("compatibility.evidence"),": ",a.evidence]}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground break-words","data-testid":`skill-agent-verification-${a.agent}`,children:c((0,h.e5)(a.verificationKey))}),k?(0,d.jsxs)("div",{className:"space-y-0.5 border-l-2 border-border pl-2",children:[(0,d.jsx)("p",{className:"text-xs font-medium text-foreground",children:c("compatibility.measuredHeading")}),(0,d.jsxs)("ul",{className:"space-y-0.5",children:[(0,d.jsx)(i,{axis:k.discovery,agentName:j}),(0,d.jsx)(i,{axis:k.invocation,agentName:j})]}),k.testedVersion&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:c("compatibility.testedVersion",{agent:j,version:k.testedVersion})}),k.testedDate&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:c("compatibility.testedDate",{date:k.testedDate})}),k.discoveryRoots.length>0&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground break-all",children:c("compatibility.discoveryRoots",{roots:k.discoveryRoots.join(", ")})}),k.evidenceSource&&(0,d.jsxs)("p",{className:"text-xs text-muted-foreground break-all",children:[c("compatibility.evidenceSource"),": ",k.evidenceSource]}),k.stale&&(0,d.jsx)(g.u,{tone:"warning","data-testid":`skill-agent-evidence-stale-${a.agent}`,children:c("compatibility.evidenceStale",{days:k.ageDays??0})})]}):a.skipReasonKey&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground break-words","data-testid":`skill-agent-skip-reason-${a.agent}`,children:c((0,h.e5)(a.skipReasonKey))}),(0,d.jsxs)("p",{className:"text-xs text-muted-foreground break-words",children:[(0,d.jsx)("span",{className:"font-medium text-foreground",children:c("compatibility.reloadHeading",{agent:j})}),": ",c((0,h.e5)(a.reloadKey),{agent:j})]})]})}},90349:(a,b,c)=>{c.d(b,{I:()=>d,k:()=>e});let d="skill:installed";function e(a){}}};
|