@shepai/cli 1.127.3-pr400.67a8317 → 1.127.3-pr404.06ba582

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.
Files changed (374) hide show
  1. package/apis/json-schema/EnvironmentConfig.yaml +3 -0
  2. package/apis/json-schema/FeatureFlags.yaml +5 -0
  3. package/apis/json-schema/Repository.yaml +3 -0
  4. package/dist/eslint.config.mjs +0 -2
  5. package/dist/packages/core/src/application/ports/output/repositories/repository-repository.interface.d.ts +4 -0
  6. package/dist/packages/core/src/application/ports/output/repositories/repository-repository.interface.d.ts.map +1 -1
  7. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.d.ts +118 -0
  8. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.d.ts.map +1 -0
  9. package/dist/packages/core/src/application/ports/output/services/github-repository-service.interface.js +58 -0
  10. package/dist/packages/core/src/application/ports/output/services/index.d.ts +2 -0
  11. package/dist/packages/core/src/application/ports/output/services/index.d.ts.map +1 -1
  12. package/dist/packages/core/src/application/ports/output/services/index.js +1 -0
  13. package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.d.ts +31 -0
  14. package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.d.ts.map +1 -0
  15. package/dist/packages/core/src/application/use-cases/repositories/import-github-repository.use-case.js +86 -0
  16. package/dist/packages/core/src/application/use-cases/repositories/list-github-repositories.use-case.d.ts +13 -0
  17. package/dist/packages/core/src/application/use-cases/repositories/list-github-repositories.use-case.d.ts.map +1 -0
  18. package/dist/packages/core/src/application/use-cases/repositories/list-github-repositories.use-case.js +35 -0
  19. package/dist/packages/core/src/domain/factories/settings-defaults.factory.d.ts.map +1 -1
  20. package/dist/packages/core/src/domain/factories/settings-defaults.factory.js +2 -0
  21. package/dist/packages/core/src/domain/generated/output.d.ts +12 -0
  22. package/dist/packages/core/src/domain/generated/output.d.ts.map +1 -1
  23. package/dist/packages/core/src/infrastructure/di/container.d.ts.map +1 -1
  24. package/dist/packages/core/src/infrastructure/di/container.js +12 -0
  25. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/repository.mapper.d.ts +1 -0
  26. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/repository.mapper.d.ts.map +1 -1
  27. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/repository.mapper.js +2 -0
  28. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts +1 -0
  29. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.d.ts.map +1 -1
  30. package/dist/packages/core/src/infrastructure/persistence/sqlite/mappers/settings.mapper.js +2 -0
  31. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-add-repository-remote-url.d.ts +12 -0
  32. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-add-repository-remote-url.d.ts.map +1 -0
  33. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/040-add-repository-remote-url.js +29 -0
  34. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/041-add-feature-flag-github-import.d.ts +11 -0
  35. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/041-add-feature-flag-github-import.d.ts.map +1 -0
  36. package/dist/packages/core/src/infrastructure/persistence/sqlite/migrations/041-add-feature-flag-github-import.js +17 -0
  37. package/dist/packages/core/src/infrastructure/repositories/sqlite-repository.repository.d.ts +3 -0
  38. package/dist/packages/core/src/infrastructure/repositories/sqlite-repository.repository.d.ts.map +1 -1
  39. package/dist/packages/core/src/infrastructure/repositories/sqlite-repository.repository.js +38 -2
  40. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.d.ts.map +1 -1
  41. package/dist/packages/core/src/infrastructure/repositories/sqlite-settings.repository.js +3 -2
  42. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.d.ts +18 -0
  43. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.d.ts.map +1 -0
  44. package/dist/packages/core/src/infrastructure/services/external/github-repository.service.js +171 -0
  45. package/dist/src/presentation/cli/commands/repo/add.command.d.ts +13 -0
  46. package/dist/src/presentation/cli/commands/repo/add.command.d.ts.map +1 -0
  47. package/dist/src/presentation/cli/commands/repo/add.command.js +82 -0
  48. package/dist/src/presentation/cli/commands/repo/index.d.ts +1 -0
  49. package/dist/src/presentation/cli/commands/repo/index.d.ts.map +1 -1
  50. package/dist/src/presentation/cli/commands/repo/index.js +4 -1
  51. package/dist/src/presentation/tui/wizards/github-import.wizard.d.ts +33 -0
  52. package/dist/src/presentation/tui/wizards/github-import.wizard.d.ts.map +1 -0
  53. package/dist/src/presentation/tui/wizards/github-import.wizard.js +121 -0
  54. package/dist/src/presentation/web/app/actions/import-github-repository.d.ts +11 -0
  55. package/dist/src/presentation/web/app/actions/import-github-repository.d.ts.map +1 -0
  56. package/dist/src/presentation/web/app/actions/import-github-repository.js +27 -0
  57. package/dist/src/presentation/web/app/actions/list-github-repositories.d.ts +11 -0
  58. package/dist/src/presentation/web/app/actions/list-github-repositories.d.ts.map +1 -0
  59. package/dist/src/presentation/web/app/actions/list-github-repositories.js +17 -0
  60. package/dist/src/presentation/web/components/common/add-repository-button/add-repository-button.d.ts +4 -3
  61. package/dist/src/presentation/web/components/common/add-repository-button/add-repository-button.d.ts.map +1 -1
  62. package/dist/src/presentation/web/components/common/add-repository-button/add-repository-button.js +22 -5
  63. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.d.ts.map +1 -1
  64. package/dist/src/presentation/web/components/common/control-center-drawer/feature-drawer-client.js +0 -18
  65. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.d.ts.map +1 -1
  66. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-drawer-tabs.js +1 -2
  67. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.d.ts.map +1 -1
  68. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.js +9 -3
  69. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts +4 -0
  70. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.d.ts.map +1 -1
  71. package/dist/src/presentation/web/components/common/feature-drawer-tabs/overview-tab.stories.js +13 -0
  72. package/dist/src/presentation/web/components/common/github-import-dialog/github-import-dialog.d.ts +8 -0
  73. package/dist/src/presentation/web/components/common/github-import-dialog/github-import-dialog.d.ts.map +1 -0
  74. package/dist/src/presentation/web/components/common/github-import-dialog/github-import-dialog.js +33 -0
  75. package/dist/src/presentation/web/components/common/github-import-dialog/github-import-dialog.stories.d.ts +10 -0
  76. package/dist/src/presentation/web/components/common/github-import-dialog/github-import-dialog.stories.d.ts.map +1 -0
  77. package/dist/src/presentation/web/components/common/github-import-dialog/github-import-dialog.stories.js +26 -0
  78. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.d.ts +15 -0
  79. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.d.ts.map +1 -0
  80. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.js +52 -0
  81. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.stories.d.ts +10 -0
  82. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.stories.d.ts.map +1 -0
  83. package/dist/src/presentation/web/components/common/github-import-dialog/github-repo-browser.stories.js +78 -0
  84. package/dist/src/presentation/web/components/common/github-import-dialog/github-url-input.d.ts +7 -0
  85. package/dist/src/presentation/web/components/common/github-import-dialog/github-url-input.d.ts.map +1 -0
  86. package/dist/src/presentation/web/components/common/github-import-dialog/github-url-input.js +46 -0
  87. package/dist/src/presentation/web/components/common/github-import-dialog/github-url-input.stories.d.ts +10 -0
  88. package/dist/src/presentation/web/components/common/github-import-dialog/github-url-input.stories.d.ts.map +1 -0
  89. package/dist/src/presentation/web/components/common/github-import-dialog/github-url-input.stories.js +29 -0
  90. package/dist/src/presentation/web/components/common/github-import-dialog/index.d.ts +4 -0
  91. package/dist/src/presentation/web/components/common/github-import-dialog/index.d.ts.map +1 -0
  92. package/dist/src/presentation/web/components/common/github-import-dialog/index.js +3 -0
  93. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.d.ts.map +1 -1
  94. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.js +9 -1
  95. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.d.ts.map +1 -1
  96. package/dist/src/presentation/web/components/features/settings/feature-flags-settings-section.stories.js +3 -0
  97. package/dist/src/presentation/web/components/features/settings/settings-page-client.d.ts.map +1 -1
  98. package/dist/src/presentation/web/components/features/settings/settings-page-client.js +5 -0
  99. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.d.ts.map +1 -1
  100. package/dist/src/presentation/web/components/features/settings/settings-page-client.stories.js +1 -0
  101. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.d.ts.map +1 -1
  102. package/dist/src/presentation/web/components/layouts/app-shell/app-shell.js +56 -27
  103. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.d.ts.map +1 -1
  104. package/dist/src/presentation/web/components/layouts/app-sidebar/app-sidebar.stories.js +7 -1
  105. package/dist/src/presentation/web/hooks/feature-flags-context.d.ts.map +1 -1
  106. package/dist/src/presentation/web/hooks/feature-flags-context.js +1 -0
  107. package/dist/src/presentation/web/lib/feature-flags.d.ts +2 -0
  108. package/dist/src/presentation/web/lib/feature-flags.d.ts.map +1 -1
  109. package/dist/src/presentation/web/lib/feature-flags.js +5 -0
  110. package/dist/tsconfig.build.tsbuildinfo +1 -1
  111. package/package.json +1 -1
  112. package/web/.next/BUILD_ID +1 -1
  113. package/web/.next/build-manifest.json +2 -2
  114. package/web/.next/fallback-build-manifest.json +2 -2
  115. package/web/.next/prerender-manifest.json +3 -3
  116. package/web/.next/required-server-files.js +1 -1
  117. package/web/.next/required-server-files.json +1 -1
  118. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +74 -44
  119. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js +3 -3
  120. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  121. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  122. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +74 -44
  123. package/web/.next/server/app/(dashboard)/@drawer/create/page.js +3 -3
  124. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  125. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  126. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +86 -56
  127. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js +3 -3
  128. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  129. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  130. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +86 -56
  131. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js +3 -3
  132. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  133. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  134. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +70 -40
  135. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js +3 -3
  136. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  137. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  138. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +74 -44
  139. package/web/.next/server/app/(dashboard)/create/page.js +3 -3
  140. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  141. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  142. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +86 -56
  143. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js +3 -3
  144. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  145. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  146. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +86 -56
  147. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js +3 -3
  148. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  149. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  150. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +70 -40
  151. package/web/.next/server/app/(dashboard)/page.js +3 -3
  152. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  153. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  154. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +70 -40
  155. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js +3 -3
  156. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  157. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  158. package/web/.next/server/app/_global-error.html +2 -2
  159. package/web/.next/server/app/_global-error.rsc +1 -1
  160. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  161. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  162. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  163. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  164. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  165. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +32 -2
  166. package/web/.next/server/app/_not-found/page.js +1 -1
  167. package/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  168. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  169. package/web/.next/server/app/api/attachments/preview/route.js.nft.json +1 -1
  170. package/web/.next/server/app/api/evidence/route.js.nft.json +1 -1
  171. package/web/.next/server/app/api/graph-data/route.js.nft.json +1 -1
  172. package/web/.next/server/app/settings/page/server-reference-manifest.json +42 -12
  173. package/web/.next/server/app/settings/page.js +2 -2
  174. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  175. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  176. package/web/.next/server/app/skills/page/server-reference-manifest.json +42 -12
  177. package/web/.next/server/app/skills/page.js +2 -1
  178. package/web/.next/server/app/skills/page.js.nft.json +1 -1
  179. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  180. package/web/.next/server/app/tools/page/server-reference-manifest.json +42 -12
  181. package/web/.next/server/app/tools/page.js +2 -1
  182. package/web/.next/server/app/tools/page.js.nft.json +1 -1
  183. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  184. package/web/.next/server/app/version/page/server-reference-manifest.json +32 -2
  185. package/web/.next/server/app/version/page.js +2 -2
  186. package/web/.next/server/app/version/page.js.nft.json +1 -1
  187. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  188. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  189. package/web/.next/server/chunks/[root-of-the-server]__cd67a84c._.js.map +1 -1
  190. package/web/.next/server/chunks/[root-of-the-server]__dcd4f847._.js.map +1 -1
  191. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4e741df2.js +3 -0
  192. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_4e741df2.js.map +1 -0
  193. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  194. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  195. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_8b618f7d._.js +3 -0
  196. package/web/.next/server/chunks/ssr/7f428_lucide-react_dist_esm_icons_8b618f7d._.js.map +1 -0
  197. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_026fdffa.js +3 -0
  198. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_026fdffa.js.map +1 -0
  199. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_8b91e197.js +3 -0
  200. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_8b91e197.js.map +1 -0
  201. package/web/.next/server/chunks/ssr/[root-of-the-server]__0e842eba._.js +3 -0
  202. package/web/.next/server/chunks/ssr/[root-of-the-server]__0e842eba._.js.map +1 -0
  203. package/web/.next/server/chunks/ssr/[root-of-the-server]__2f886f77._.js +4 -0
  204. package/web/.next/server/chunks/ssr/[root-of-the-server]__2f886f77._.js.map +1 -0
  205. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js +3 -0
  206. package/web/.next/server/chunks/ssr/[root-of-the-server]__357d99f9._.js.map +1 -0
  207. package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js +4 -0
  208. package/web/.next/server/chunks/ssr/[root-of-the-server]__43f51aa6._.js.map +1 -0
  209. package/web/.next/server/chunks/ssr/[root-of-the-server]__60684242._.js +4 -0
  210. package/web/.next/server/chunks/ssr/[root-of-the-server]__60684242._.js.map +1 -0
  211. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +2 -2
  212. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js.map +1 -1
  213. package/web/.next/server/chunks/ssr/{[root-of-the-server]__e44ae5ca._.js → [root-of-the-server]__755cfe02._.js} +2 -2
  214. package/web/.next/server/chunks/ssr/{[root-of-the-server]__430169b6._.js.map → [root-of-the-server]__755cfe02._.js.map} +1 -1
  215. package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js +4 -0
  216. package/web/.next/server/chunks/ssr/[root-of-the-server]__815546bd._.js.map +1 -0
  217. package/web/.next/server/chunks/ssr/{[root-of-the-server]__34323a67._.js → [root-of-the-server]__a21eef5a._.js} +2 -2
  218. package/web/.next/server/chunks/ssr/[root-of-the-server]__a21eef5a._.js.map +1 -0
  219. package/web/.next/server/chunks/ssr/{[root-of-the-server]__1aa034e9._.js → [root-of-the-server]__a628fb91._.js} +2 -2
  220. package/web/.next/server/chunks/ssr/{[root-of-the-server]__e44ae5ca._.js.map → [root-of-the-server]__a628fb91._.js.map} +1 -1
  221. package/web/.next/server/chunks/ssr/{[root-of-the-server]__6cc70784._.js → [root-of-the-server]__bfba58e6._.js} +2 -2
  222. package/web/.next/server/chunks/ssr/{[root-of-the-server]__6cc70784._.js.map → [root-of-the-server]__bfba58e6._.js.map} +1 -1
  223. package/web/.next/server/chunks/ssr/{[root-of-the-server]__430169b6._.js → [root-of-the-server]__c3ab8422._.js} +2 -2
  224. package/web/.next/server/chunks/ssr/{[root-of-the-server]__1aa034e9._.js.map → [root-of-the-server]__c3ab8422._.js.map} +1 -1
  225. package/web/.next/server/chunks/ssr/[root-of-the-server]__d61bd462._.js +3 -0
  226. package/web/.next/server/chunks/ssr/[root-of-the-server]__d61bd462._.js.map +1 -0
  227. package/web/.next/server/chunks/ssr/[root-of-the-server]__f4a463ee._.js +4 -0
  228. package/web/.next/server/chunks/ssr/[root-of-the-server]__f4a463ee._.js.map +1 -0
  229. package/web/.next/server/chunks/ssr/{_918887c5._.js → _0020fddd._.js} +2 -2
  230. package/web/.next/server/chunks/ssr/_0020fddd._.js.map +1 -0
  231. package/web/.next/server/chunks/ssr/_01046927._.js +9 -0
  232. package/web/.next/server/chunks/ssr/_01046927._.js.map +1 -0
  233. package/web/.next/server/chunks/ssr/{_2f6f48b8._.js → _02ec1aea._.js} +2 -2
  234. package/web/.next/server/chunks/ssr/{_2f6f48b8._.js.map → _02ec1aea._.js.map} +1 -1
  235. package/web/.next/server/chunks/ssr/{_0c916cd8._.js → _1b9aa104._.js} +2 -2
  236. package/web/.next/server/chunks/ssr/_1b9aa104._.js.map +1 -0
  237. package/web/.next/server/chunks/ssr/_67104d9e._.js +3 -0
  238. package/web/.next/server/chunks/ssr/_67104d9e._.js.map +1 -0
  239. package/web/.next/server/chunks/ssr/_7dca1882._.js +1 -1
  240. package/web/.next/server/chunks/ssr/_7dca1882._.js.map +1 -1
  241. package/web/.next/server/chunks/ssr/_a37f5f18._.js +1 -1
  242. package/web/.next/server/chunks/ssr/_a37f5f18._.js.map +1 -1
  243. package/web/.next/server/chunks/ssr/_a9f57758._.js +1 -1
  244. package/web/.next/server/chunks/ssr/_a9f57758._.js.map +1 -1
  245. package/web/.next/server/chunks/ssr/_b4b8a636._.js +3 -0
  246. package/web/.next/server/chunks/ssr/_b4b8a636._.js.map +1 -0
  247. package/web/.next/server/chunks/ssr/_d4b20e29._.js.map +1 -1
  248. package/web/.next/server/chunks/ssr/_d54a7a58._.js +3 -0
  249. package/web/.next/server/chunks/ssr/_d54a7a58._.js.map +1 -0
  250. package/web/.next/server/chunks/ssr/_d8575088._.js +3 -0
  251. package/web/.next/server/chunks/ssr/_d8575088._.js.map +1 -0
  252. package/web/.next/server/chunks/ssr/_f39a1adb._.js +1 -1
  253. package/web/.next/server/chunks/ssr/_f39a1adb._.js.map +1 -1
  254. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  255. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  256. package/web/.next/server/chunks/ssr/node_modules__pnpm_55c7a131._.js +3 -0
  257. package/web/.next/server/chunks/ssr/node_modules__pnpm_55c7a131._.js.map +1 -0
  258. package/web/.next/server/chunks/ssr/src_presentation_web_8e7fe0d1._.js +5 -0
  259. package/web/.next/server/chunks/ssr/{src_presentation_web_9db47db7._.js.map → src_presentation_web_8e7fe0d1._.js.map} +1 -1
  260. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_ca051134.js +3 -0
  261. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_ca051134.js.map +1 -0
  262. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js +3 -0
  263. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_skills_page_actions_1b176e3c.js.map +1 -0
  264. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js +3 -0
  265. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_tools_page_actions_bd9f0dda.js.map +1 -0
  266. package/web/.next/server/chunks/ssr/src_presentation_web_b9023017._.js +5 -0
  267. package/web/.next/server/chunks/ssr/{src_presentation_web_ede4a227._.js.map → src_presentation_web_b9023017._.js.map} +1 -1
  268. package/web/.next/server/chunks/ssr/src_presentation_web_cfdd70ed._.js +3 -0
  269. package/web/.next/server/chunks/ssr/{src_presentation_web_5914be6c._.js.map → src_presentation_web_cfdd70ed._.js.map} +1 -1
  270. package/web/.next/server/chunks/ssr/src_presentation_web_components_a5e6c910._.js +3 -0
  271. package/web/.next/server/chunks/ssr/src_presentation_web_components_a5e6c910._.js.map +1 -0
  272. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js +1 -1
  273. package/web/.next/server/chunks/ssr/src_presentation_web_components_e599bb8c._.js.map +1 -1
  274. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  275. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  276. package/web/.next/server/pages/500.html +2 -2
  277. package/web/.next/server/server-reference-manifest.js +1 -1
  278. package/web/.next/server/server-reference-manifest.json +520 -294
  279. package/web/.next/static/chunks/314b8314f77d6921.js +1 -0
  280. package/web/.next/static/chunks/3e1e0f9bde3530d2.js +1 -0
  281. package/web/.next/static/chunks/3ebc78425ca44fc1.js +1 -0
  282. package/web/.next/static/chunks/601d93593f5f664f.js +1 -0
  283. package/web/.next/static/chunks/688971d5bad5dc7c.js +1 -0
  284. package/web/.next/static/chunks/{ad3b1560b2612b59.js → 74cda0ef8886742f.js} +1 -1
  285. package/web/.next/static/chunks/822c119dba4cfe13.js +1 -0
  286. package/web/.next/static/chunks/90a4ff487d740051.js +2 -0
  287. package/web/.next/static/chunks/98dfbecc5ee30ce1.css +1 -0
  288. package/web/.next/static/chunks/99a01ba4afe8bf59.js +1 -0
  289. package/web/.next/static/chunks/{4265877011a68ce0.js → b47032e2b8cea7a7.js} +1 -1
  290. package/web/.next/static/chunks/bcb19e292795f2b1.js +1 -0
  291. package/web/.next/static/chunks/{10f102e4f3d30fab.js → bd959d8ef8bcbf8b.js} +1 -1
  292. package/web/.next/static/chunks/c272b98911cacff1.js +1 -0
  293. package/web/.next/static/chunks/c976ac02a2d19d26.js +1 -0
  294. package/web/.next/static/chunks/d34a91958ca566fa.js +13 -0
  295. package/web/.next/static/chunks/e15ea4ed03d5d2c8.js +1 -0
  296. package/web/.next/static/chunks/e82b8c7db062d86b.js +1 -0
  297. package/web/.next/static/chunks/f259386f4875e70c.js +1 -0
  298. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-running-controls.d.ts +0 -12
  299. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-running-controls.d.ts.map +0 -1
  300. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-running-controls.js +0 -19
  301. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-running-controls.stories.d.ts +0 -26
  302. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-running-controls.stories.d.ts.map +0 -1
  303. package/dist/src/presentation/web/components/common/feature-drawer-tabs/feature-running-controls.stories.js +0 -91
  304. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_fbb88113.js +0 -3
  305. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_fbb88113.js.map +0 -1
  306. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_fdfbf5cc.js +0 -3
  307. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_fdfbf5cc.js.map +0 -1
  308. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_d8fa0b5f.js +0 -3
  309. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_d8fa0b5f.js.map +0 -1
  310. package/web/.next/server/chunks/ssr/[root-of-the-server]__02c84e6b._.js +0 -3
  311. package/web/.next/server/chunks/ssr/[root-of-the-server]__02c84e6b._.js.map +0 -1
  312. package/web/.next/server/chunks/ssr/[root-of-the-server]__06fef644._.js +0 -3
  313. package/web/.next/server/chunks/ssr/[root-of-the-server]__06fef644._.js.map +0 -1
  314. package/web/.next/server/chunks/ssr/[root-of-the-server]__34323a67._.js.map +0 -1
  315. package/web/.next/server/chunks/ssr/[root-of-the-server]__357de47c._.js +0 -4
  316. package/web/.next/server/chunks/ssr/[root-of-the-server]__357de47c._.js.map +0 -1
  317. package/web/.next/server/chunks/ssr/[root-of-the-server]__67fe07fe._.js +0 -4
  318. package/web/.next/server/chunks/ssr/[root-of-the-server]__67fe07fe._.js.map +0 -1
  319. package/web/.next/server/chunks/ssr/[root-of-the-server]__68c2d48e._.js +0 -3
  320. package/web/.next/server/chunks/ssr/[root-of-the-server]__68c2d48e._.js.map +0 -1
  321. package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +0 -4
  322. package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js.map +0 -1
  323. package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +0 -4
  324. package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js.map +0 -1
  325. package/web/.next/server/chunks/ssr/[root-of-the-server]__8c553503._.js +0 -4
  326. package/web/.next/server/chunks/ssr/[root-of-the-server]__8c553503._.js.map +0 -1
  327. package/web/.next/server/chunks/ssr/[root-of-the-server]__a50a7e39._.js +0 -4
  328. package/web/.next/server/chunks/ssr/[root-of-the-server]__a50a7e39._.js.map +0 -1
  329. package/web/.next/server/chunks/ssr/_0c916cd8._.js.map +0 -1
  330. package/web/.next/server/chunks/ssr/_1bb79fe8._.js +0 -3
  331. package/web/.next/server/chunks/ssr/_1bb79fe8._.js.map +0 -1
  332. package/web/.next/server/chunks/ssr/_583a83fb._.js +0 -3
  333. package/web/.next/server/chunks/ssr/_583a83fb._.js.map +0 -1
  334. package/web/.next/server/chunks/ssr/_832c379b._.js +0 -3
  335. package/web/.next/server/chunks/ssr/_832c379b._.js.map +0 -1
  336. package/web/.next/server/chunks/ssr/_918887c5._.js.map +0 -1
  337. package/web/.next/server/chunks/ssr/_9f56cf8f._.js +0 -3
  338. package/web/.next/server/chunks/ssr/_9f56cf8f._.js.map +0 -1
  339. package/web/.next/server/chunks/ssr/_a187fd7e._.js +0 -3
  340. package/web/.next/server/chunks/ssr/_a187fd7e._.js.map +0 -1
  341. package/web/.next/server/chunks/ssr/_a5aa6371._.js +0 -9
  342. package/web/.next/server/chunks/ssr/_a5aa6371._.js.map +0 -1
  343. package/web/.next/server/chunks/ssr/_b730ac57._.js +0 -3
  344. package/web/.next/server/chunks/ssr/_b730ac57._.js.map +0 -1
  345. package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js +0 -3
  346. package/web/.next/server/chunks/ssr/f7870_sonner_dist_index_mjs_dbf63824._.js.map +0 -1
  347. package/web/.next/server/chunks/ssr/node_modules__pnpm_026172d1._.js +0 -3
  348. package/web/.next/server/chunks/ssr/node_modules__pnpm_026172d1._.js.map +0 -1
  349. package/web/.next/server/chunks/ssr/src_presentation_web_5914be6c._.js +0 -3
  350. package/web/.next/server/chunks/ssr/src_presentation_web_9db47db7._.js +0 -5
  351. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f66cd328.js +0 -3
  352. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f66cd328.js.map +0 -1
  353. package/web/.next/server/chunks/ssr/src_presentation_web_components_bdcfba35._.js +0 -3
  354. package/web/.next/server/chunks/ssr/src_presentation_web_components_bdcfba35._.js.map +0 -1
  355. package/web/.next/server/chunks/ssr/src_presentation_web_ede4a227._.js +0 -5
  356. package/web/.next/static/chunks/01ba448cf76c6014.js +0 -1
  357. package/web/.next/static/chunks/05e9c71e5e4cf531.js +0 -1
  358. package/web/.next/static/chunks/53941e038c6b975c.js +0 -1
  359. package/web/.next/static/chunks/722c4b021a197a84.js +0 -2
  360. package/web/.next/static/chunks/736d94180ff7f37d.js +0 -1
  361. package/web/.next/static/chunks/78d9c944f56f22b4.js +0 -1
  362. package/web/.next/static/chunks/8080c842b0358904.js +0 -1
  363. package/web/.next/static/chunks/a0f0cb1ede328514.js +0 -1
  364. package/web/.next/static/chunks/a5804ae1a0c23932.js +0 -1
  365. package/web/.next/static/chunks/a835d31cfedb9077.js +0 -1
  366. package/web/.next/static/chunks/a8ba3f3e2b0f87aa.js +0 -1
  367. package/web/.next/static/chunks/afa4210db783bc6f.js +0 -1
  368. package/web/.next/static/chunks/cca0f5112a9260d8.js +0 -1
  369. package/web/.next/static/chunks/cd45aed9c46e1bf5.js +0 -11
  370. package/web/.next/static/chunks/d04de4be30ab78ca.js +0 -3
  371. package/web/.next/static/chunks/f7d4ca49260314fb.css +0 -1
  372. /package/web/.next/static/{SUd6bpgXghiSZx_3nWE4Y → 8LFWaiDoKGrMLSC9Zpl7z}/_buildManifest.js +0 -0
  373. /package/web/.next/static/{SUd6bpgXghiSZx_3nWE4Y → 8LFWaiDoKGrMLSC9Zpl7z}/_clientMiddlewareManifest.json +0 -0
  374. /package/web/.next/static/{SUd6bpgXghiSZx_3nWE4Y → 8LFWaiDoKGrMLSC9Zpl7z}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,81181,e=>{"use strict";var t=e.i(95230);e.s(["Download",()=>t.default])},58860,44229,e=>{"use strict";let t=(0,e.i(3645).default)("timer",[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]]);e.s(["Timer",()=>t],58860);var a=e.i(93752);e.s(["Code",()=>a.default],44229)},95230,e=>{"use strict";let t=(0,e.i(3645).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["default",()=>t])},93752,e=>{"use strict";let t=(0,e.i(3645).default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);e.s(["default",()=>t])},16868,48306,80436,28267,86254,50032,42076,e=>{"use strict";var t=e.i(3645);let a=(0,t.default)("paperclip",[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]]);e.s(["PaperclipIcon",()=>a],16868);var l=e.i(20314),r=e.i(31777);function i({className:e,...t}){return(0,l.jsx)("textarea",{"data-slot":"textarea",className:(0,r.cn)("placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input field-sizing-content min-h-[80px] w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...t})}e.s(["Textarea",()=>i],48306);var s=e.i(60253),o=e.i(15506),o=o,n=e.i(95230);e.s(["DownloadIcon",()=>n.default],80436);var n=n,d=e.i(2287),c=e.i(1693);e.s(["VisuallyHidden",0,c],28267);var c=c;let u=(0,t.default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);var h=e.i(16298),h=h;let x=(0,t.default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);var p=e.i(93752),p=p;e.i(35364);let m=new Set([".png",".jpg",".jpeg",".gif",".svg",".webp",".ico",".bmp"]),f=new Set([".ts",".tsx",".js",".jsx",".json",".yaml",".yml",".xml",".html",".css",".md"]);function g(e){if(0===e)return"0 B";let t=Math.floor(Math.log(e)/Math.log(1024));return`${(e/Math.pow(1024,t)).toFixed(+(0!==t))} ${["B","KB","MB","GB"][t]}`}let b=new Set([".png",".jpg",".jpeg",".gif",".svg",".webp",".ico",".bmp"]);function v(e,t){let a=new URLSearchParams({path:e,mimeType:t});return`/api/attachments/preview?${a.toString()}`}function j({name:e,size:t,mimeType:a,path:i,onRemove:j,loading:w=!1,disabled:y=!1}){let k,N,C=(k=e.lastIndexOf("."))>=0?e.slice(k).toLowerCase():"",M=m.has(C)?x:".pdf"===C?h.default:f.has(C)?p.default:u,T=".pdf"===C?"bg-red-50 text-red-600":m.has(C)?"bg-blue-50 text-blue-600":f.has(C)?"bg-emerald-50 text-emerald-600":"bg-gray-50 text-gray-600",B=(N=e.lastIndexOf("."))>=0&&b.has(e.slice(N).toLowerCase());return w?(0,l.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-md border",children:(0,l.jsx)(o.default,{className:"text-muted-foreground h-5 w-5 animate-spin"})}):B?(0,l.jsxs)(d.Dialog,{children:[(0,l.jsxs)("div",{className:"group relative",children:[(0,l.jsx)(d.DialogTrigger,{asChild:!0,children:(0,l.jsx)("img",{src:v(i,a),alt:e,title:e,className:"h-12 w-12 cursor-pointer rounded-md border object-cover transition-opacity hover:opacity-80"})}),!y&&(0,l.jsx)("button",{type:"button",onClick:j,className:"absolute -top-1.5 -right-1.5 hidden h-5 w-5 cursor-pointer items-center justify-center rounded-full bg-black/70 text-white group-hover:flex","aria-label":`Remove ${e}`,children:(0,l.jsx)(s.X,{className:"h-3 w-3"})})]}),(0,l.jsxs)(d.DialogContent,{className:"max-w-3xl gap-0 overflow-hidden border-0 p-0 [&>button:last-child]:!cursor-pointer [&>button:last-child]:!rounded-full [&>button:last-child]:!bg-black/70 [&>button:last-child]:!p-1.5 [&>button:last-child]:!text-white [&>button:last-child]:!opacity-100 [&>button:last-child]:!shadow-lg [&>button:last-child]:!backdrop-blur-md [&>button:last-child]:hover:!bg-black/90",children:[(0,l.jsx)(c.Root,{children:(0,l.jsxs)(d.DialogTitle,{children:["Preview: ",e]})}),(0,l.jsx)("div",{className:"relative bg-black/90",children:(0,l.jsx)("img",{src:v(i,a),alt:e,className:"h-auto max-h-[70vh] w-full object-contain"})}),(0,l.jsxs)("div",{className:"bg-background flex items-center gap-3 px-4 py-3",children:[(0,l.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,l.jsx)("span",{className:"truncate text-sm font-medium",children:e}),(0,l.jsx)("span",{className:"text-muted-foreground text-xs",children:g(t)})]}),(0,l.jsx)("a",{href:v(i,a),download:e,className:"text-muted-foreground hover:text-foreground shrink-0 cursor-pointer rounded p-1.5 transition-colors","aria-label":`Download ${e}`,children:(0,l.jsx)(n.default,{className:"h-4 w-4"})})]})]})]}):(0,l.jsxs)("div",{className:"group relative flex items-center gap-2 rounded-full border py-1 pr-3 pl-2",children:[(0,l.jsx)("div",{className:(0,r.cn)("flex h-6 w-6 shrink-0 items-center justify-center rounded-full",T),children:(0,l.jsx)(M,{className:"h-3 w-3"})}),(0,l.jsx)("span",{className:"max-w-[120px] truncate text-sm",children:e}),(0,l.jsx)("span",{className:"text-muted-foreground text-xs",children:g(t)}),!y&&(0,l.jsx)("button",{type:"button",onClick:j,className:"absolute -top-1.5 -right-1.5 hidden h-5 w-5 cursor-pointer items-center justify-center rounded-full bg-black/70 text-white group-hover:flex","aria-label":`Remove ${e}`,children:(0,l.jsx)(s.X,{className:"h-3 w-3"})})]})}async function w(){let e=await fetch("/api/dialog/pick-files",{method:"POST"});if(!e.ok)throw Error("Failed to open file dialog");let t=await e.json();return t.cancelled?null:t.files}e.s(["AttachmentChip",()=>j],86254),e.s([],50032),e.s(["pickFiles",()=>w],42076)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,956,e=>{"use strict";var a=e.i(20314),s=e.i(79054),r=e.i(31777);let l=s.forwardRef(({className:e,...s},l)=>(0,a.jsx)("div",{ref:l,className:(0,r.cn)("bg-card text-card-foreground rounded-xl border shadow",e),...s}));l.displayName="Card";let i=s.forwardRef(({className:e,...s},l)=>(0,a.jsx)("div",{ref:l,className:(0,r.cn)("flex flex-col space-y-1.5 p-6",e),...s}));i.displayName="CardHeader";let n=s.forwardRef(({className:e,...s},l)=>(0,a.jsx)("div",{ref:l,className:(0,r.cn)("leading-none font-semibold tracking-tight",e),...s}));n.displayName="CardTitle";let t=s.forwardRef(({className:e,...s},l)=>(0,a.jsx)("div",{ref:l,className:(0,r.cn)("text-muted-foreground text-sm",e),...s}));t.displayName="CardDescription";let d=s.forwardRef(({className:e,...s},l)=>(0,a.jsx)("div",{ref:l,className:(0,r.cn)("p-6 pt-0",e),...s}));d.displayName="CardContent",s.forwardRef(({className:e,...s},l)=>(0,a.jsx)("div",{ref:l,className:(0,r.cn)("flex items-center p-6 pt-0",e),...s})).displayName="CardFooter",e.s(["Card",()=>l,"CardContent",()=>d,"CardDescription",()=>t,"CardHeader",()=>i,"CardTitle",()=>n])},1699,e=>{"use strict";var a=e.i(20314),s=e.i(24035),r=e.i(956),l=e.i(81846),i=e.i(35364),n=e.i(68304);function t({label:e,value:s,badge:r,badgeVariant:i="secondary"}){return(0,a.jsxs)("div",{className:"flex items-center justify-between py-2",children:[(0,a.jsx)("span",{className:"text-muted-foreground text-sm",children:e}),r?(0,a.jsx)(l.Badge,{variant:i,children:s}):(0,a.jsx)("span",{className:"font-mono text-sm",children:s})]})}function d({versionInfo:e,systemInfo:d}){return(0,a.jsx)("div",{className:"flex flex-col items-center justify-center p-4",children:(0,a.jsxs)("div",{className:"w-full max-w-2xl space-y-6",children:[(0,a.jsxs)("div",{className:"text-center",children:[(0,a.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:e.name}),(0,a.jsx)("p",{className:"text-muted-foreground mt-2",children:e.description}),(0,a.jsx)("div",{className:"mt-4",children:(0,a.jsxs)(l.Badge,{variant:"default","data-testid":"version-badge",children:["v",e.version]})})]}),(0,a.jsxs)(n.Tabs,{defaultValue:"overview",className:"w-full",children:[(0,a.jsxs)(n.TabsList,{className:"grid w-full grid-cols-3",children:[(0,a.jsx)(n.TabsTrigger,{value:"overview",children:"Overview"}),(0,a.jsx)(n.TabsTrigger,{value:"system",children:"System"}),(0,a.jsx)(n.TabsTrigger,{value:"features",children:"Features"})]}),(0,a.jsx)(n.TabsContent,{value:"overview",children:(0,a.jsxs)(r.Card,{children:[(0,a.jsxs)(r.CardHeader,{children:[(0,a.jsx)(r.CardTitle,{children:"Package Information"}),(0,a.jsx)(r.CardDescription,{children:"Details about the Shep AI CLI package"})]}),(0,a.jsxs)(r.CardContent,{className:"space-y-1",children:[(0,a.jsx)(t,{label:"Package",value:e.name}),(0,a.jsx)(t,{label:"Version",value:`v${e.version}`,badge:!0,badgeVariant:"default"}),(0,a.jsx)(t,{label:"License",value:"MIT",badge:!0,badgeVariant:"outline"}),(0,a.jsx)(t,{label:"Author",value:"Shep AI"})]})]})}),(0,a.jsx)(n.TabsContent,{value:"system",children:(0,a.jsxs)(r.Card,{children:[(0,a.jsxs)(r.CardHeader,{children:[(0,a.jsx)(r.CardTitle,{children:"System Information"}),(0,a.jsx)(r.CardDescription,{children:"Runtime environment details"})]}),(0,a.jsxs)(r.CardContent,{className:"space-y-1",children:[(0,a.jsx)(t,{label:"Node.js",value:d.nodeVersion,badge:!0,badgeVariant:"secondary"}),(0,a.jsx)(t,{label:"Platform",value:`${d.platform} ${d.arch}`})]})]})}),(0,a.jsx)(n.TabsContent,{value:"features",children:(0,a.jsxs)(r.Card,{children:[(0,a.jsxs)(r.CardHeader,{children:[(0,a.jsx)(r.CardTitle,{children:"Key Features"}),(0,a.jsx)(r.CardDescription,{children:"What Shep AI can do for you"})]}),(0,a.jsx)(r.CardContent,{children:(0,a.jsxs)("ul",{className:"space-y-2 text-sm",children:[(0,a.jsxs)("li",{className:"flex items-center gap-2",children:[(0,a.jsx)(l.Badge,{variant:"outline",children:"AI"}),(0,a.jsx)("span",{children:"Autonomous code generation"})]}),(0,a.jsxs)("li",{className:"flex items-center gap-2",children:[(0,a.jsx)(l.Badge,{variant:"outline",children:"SDLC"}),(0,a.jsx)("span",{children:"Full development lifecycle automation"})]}),(0,a.jsxs)("li",{className:"flex items-center gap-2",children:[(0,a.jsx)(l.Badge,{variant:"outline",children:"CLI"}),(0,a.jsx)("span",{children:"Powerful command-line interface"})]}),(0,a.jsxs)("li",{className:"flex items-center gap-2",children:[(0,a.jsx)(l.Badge,{variant:"outline",children:"Web"}),(0,a.jsx)("span",{children:"Modern web UI dashboard"})]})]})})]})})]}),(0,a.jsxs)("div",{className:"flex justify-center gap-4",children:[(0,a.jsx)(i.Button,{asChild:!0,variant:"outline",children:(0,a.jsx)(s.default,{href:"/",children:"Back to Home"})}),(0,a.jsx)(i.Button,{asChild:!0,children:(0,a.jsx)("a",{href:"https://github.com/shep-ai/cli",target:"_blank",rel:"noopener noreferrer",children:"View on GitHub"})})]})]})})}e.s(["default",()=>d])}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,58860,44229,e=>{"use strict";let t=(0,e.i(3645).default)("timer",[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]]);e.s(["Timer",()=>t],58860);var r=e.i(93752);e.s(["Code",()=>r.default],44229)},10714,99105,e=>{"use strict";var t=e.i(3645);let r=(0,t.default)("minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]);e.s(["default",()=>r],10714);let o=(0,t.default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>o],99105)},38573,e=>{"use strict";let t=(0,e.i(3645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],38573)},30702,e=>{"use strict";let t=(0,e.i(3645).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>t],30702)},23925,1012,e=>{"use strict";let t=(0,e.i(3645).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",()=>t],1012),e.s(["Check",()=>t],23925)},23405,e=>{"use strict";var t=e.i(79054);function r(e){let r=t.useRef({value:e,previous:e});return t.useMemo(()=>(r.current.value!==e&&(r.current.previous=r.current.value,r.current.value=e),r.current.previous),[e])}e.s(["usePrevious",()=>r])},11345,e=>{"use strict";let t=(0,e.i(3645).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);e.s(["ChevronLeft",()=>t],11345)},76016,e=>{"use strict";let t=(0,e.i(3645).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],76016)},93752,e=>{"use strict";let t=(0,e.i(3645).default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);e.s(["default",()=>t])},83902,e=>{"use strict";let t=(0,e.i(3645).default)("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);e.s(["Rocket",()=>t],83902)},90382,e=>{"use strict";var t=e.i(20314),r=e.i(79054),o=e.i(91967),a=e.i(5978),n=e.i(22528),s=e.i(53532),i=e.i(41687),l=e.i(56720),c=e.i(13123),d=e.i(52740),u=e.i(39979),p=e.i(85995),f=e.i(87620),h=e.i(86874),m=e.i(36589),v=e.i(73772),x=e.i(13044),g="Popover",[b,y]=(0,n.createContextScope)(g,[d.createPopperScope]),k=(0,d.createPopperScope)(),[w,j]=b(g),C=e=>{let{__scopePopover:o,children:a,open:n,defaultOpen:s,onOpenChange:i,modal:l=!1}=e,u=k(o),p=r.useRef(null),[f,h]=r.useState(!1),[v,x]=(0,m.useControllableState)({prop:n,defaultProp:s??!1,onChange:i,caller:g});return(0,t.jsx)(d.Root,{...u,children:(0,t.jsx)(w,{scope:o,contentId:(0,c.useId)(),triggerRef:p,open:v,onOpenChange:x,onOpenToggle:r.useCallback(()=>x(e=>!e),[x]),hasCustomAnchor:f,onCustomAnchorAdd:r.useCallback(()=>h(!0),[]),onCustomAnchorRemove:r.useCallback(()=>h(!1),[]),modal:l,children:a})})};C.displayName=g;var P="PopoverAnchor",R=r.forwardRef((e,o)=>{let{__scopePopover:a,...n}=e,s=j(P,a),i=k(a),{onCustomAnchorAdd:l,onCustomAnchorRemove:c}=s;return r.useEffect(()=>(l(),()=>c()),[l,c]),(0,t.jsx)(d.Anchor,{...i,...n,ref:o})});R.displayName=P;var N="PopoverTrigger",A=r.forwardRef((e,r)=>{let{__scopePopover:n,...s}=e,i=j(N,n),l=k(n),c=(0,a.useComposedRefs)(r,i.triggerRef),u=(0,t.jsx)(f.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":U(i.open),...s,ref:c,onClick:(0,o.composeEventHandlers)(e.onClick,i.onOpenToggle)});return i.hasCustomAnchor?u:(0,t.jsx)(d.Anchor,{asChild:!0,...l,children:u})});A.displayName=N;var S="PopoverPortal",[T,M]=b(S,{forceMount:void 0}),E=e=>{let{__scopePopover:r,forceMount:o,children:a,container:n}=e,s=j(S,r);return(0,t.jsx)(T,{scope:r,forceMount:o,children:(0,t.jsx)(p.Presence,{present:o||s.open,children:(0,t.jsx)(u.Portal,{asChild:!0,container:n,children:a})})})};E.displayName=S;var F="PopoverContent",O=r.forwardRef((e,r)=>{let o=M(F,e.__scopePopover),{forceMount:a=o.forceMount,...n}=e,s=j(F,e.__scopePopover);return(0,t.jsx)(p.Presence,{present:a||s.open,children:s.modal?(0,t.jsx)(D,{...n,ref:r}):(0,t.jsx)(I,{...n,ref:r})})});O.displayName=F;var z=(0,h.createSlot)("PopoverContent.RemoveScroll"),D=r.forwardRef((e,n)=>{let s=j(F,e.__scopePopover),i=r.useRef(null),l=(0,a.useComposedRefs)(n,i),c=r.useRef(!1);return r.useEffect(()=>{let e=i.current;if(e)return(0,v.hideOthers)(e)},[]),(0,t.jsx)(x.RemoveScroll,{as:z,allowPinchZoom:!0,children:(0,t.jsx)(q,{...e,ref:l,trapFocus:s.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,o.composeEventHandlers)(e.onCloseAutoFocus,e=>{e.preventDefault(),c.current||s.triggerRef.current?.focus()}),onPointerDownOutside:(0,o.composeEventHandlers)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,r=0===t.button&&!0===t.ctrlKey;c.current=2===t.button||r},{checkForDefaultPrevented:!1}),onFocusOutside:(0,o.composeEventHandlers)(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})}),I=r.forwardRef((e,o)=>{let a=j(F,e.__scopePopover),n=r.useRef(!1),s=r.useRef(!1);return(0,t.jsx)(q,{...e,ref:o,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(n.current||a.triggerRef.current?.focus(),t.preventDefault()),n.current=!1,s.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(n.current=!0,"pointerdown"===t.detail.originalEvent.type&&(s.current=!0));let r=t.target;a.triggerRef.current?.contains(r)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&s.current&&t.preventDefault()}})}),q=r.forwardRef((e,r)=>{let{__scopePopover:o,trapFocus:a,onOpenAutoFocus:n,onCloseAutoFocus:c,disableOutsidePointerEvents:u,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:h,onInteractOutside:m,...v}=e,x=j(F,o),g=k(o);return(0,i.useFocusGuards)(),(0,t.jsx)(l.FocusScope,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:n,onUnmountAutoFocus:c,children:(0,t.jsx)(s.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:u,onInteractOutside:m,onEscapeKeyDown:p,onPointerDownOutside:f,onFocusOutside:h,onDismiss:()=>x.onOpenChange(!1),children:(0,t.jsx)(d.Content,{"data-state":U(x.open),role:"dialog",id:x.contentId,...g,...v,ref:r,style:{...v.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),H="PopoverClose",L=r.forwardRef((e,r)=>{let{__scopePopover:a,...n}=e,s=j(H,a);return(0,t.jsx)(f.Primitive.button,{type:"button",...n,ref:r,onClick:(0,o.composeEventHandlers)(e.onClick,()=>s.onOpenChange(!1))})});L.displayName=H;var _=r.forwardRef((e,r)=>{let{__scopePopover:o,...a}=e,n=k(o);return(0,t.jsx)(d.Arrow,{...n,...a,ref:r})});function U(e){return e?"open":"closed"}_.displayName="PopoverArrow",e.s(["Anchor",()=>R,"Arrow",()=>_,"Close",()=>L,"Content",()=>O,"Popover",()=>C,"PopoverAnchor",()=>R,"PopoverArrow",()=>_,"PopoverClose",()=>L,"PopoverContent",()=>O,"PopoverPortal",()=>E,"PopoverTrigger",()=>A,"Portal",()=>E,"Root",()=>C,"Trigger",()=>A,"createPopoverScope",()=>y],89920);var B=e.i(89920),B=B,K=e.i(31777);let X=B.Root,G=B.Trigger;B.Anchor;let V=r.forwardRef(({className:e,align:r="center",sideOffset:o=4,...a},n)=>(0,t.jsx)(B.Portal,{children:(0,t.jsx)(B.Content,{ref:n,align:r,sideOffset:o,className:(0,K.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 shadow-md outline-none",e),...a})}));V.displayName=B.Content.displayName,e.s(["Popover",()=>X,"PopoverContent",()=>V,"PopoverTrigger",()=>G],90382)},32499,72877,e=>{"use strict";var t=e.i(21023);let r=(0,t.createServerReference)("00ce2511c3d647ff23d7bec2c957295e0937be6305",t.callServer,void 0,t.findSourceMapURL,"getAllAgentModels");e.s(["getAllAgentModels",()=>r],32499);let o=(0,t.createServerReference)("605fe53da5aad9fa618caa2ce440349a667b66a015",t.callServer,void 0,t.findSourceMapURL,"updateAgentAndModel");e.s(["updateAgentAndModel",()=>o],72877)},51911,41413,e=>{"use strict";var t=e.i(20314),r=e.i(79054),o=e.i(91967),a=e.i(5978),n=e.i(22528),s=e.i(36589),i=e.i(23405),l=e.i(77624),c=e.i(87620),d="Switch",[u,p]=(0,n.createContextScope)(d),[f,h]=u(d),m=r.forwardRef((e,n)=>{let{__scopeSwitch:i,name:l,checked:u,defaultChecked:p,required:h,disabled:m,value:v="on",onCheckedChange:x,form:y,...k}=e,[w,j]=r.useState(null),C=(0,a.useComposedRefs)(n,e=>j(e)),P=r.useRef(!1),R=!w||y||!!w.closest("form"),[N,A]=(0,s.useControllableState)({prop:u,defaultProp:p??!1,onChange:x,caller:d});return(0,t.jsxs)(f,{scope:i,checked:N,disabled:m,children:[(0,t.jsx)(c.Primitive.button,{type:"button",role:"switch","aria-checked":N,"aria-required":h,"data-state":b(N),"data-disabled":m?"":void 0,disabled:m,value:v,...k,ref:C,onClick:(0,o.composeEventHandlers)(e.onClick,e=>{A(e=>!e),R&&(P.current=e.isPropagationStopped(),P.current||e.stopPropagation())})}),R&&(0,t.jsx)(g,{control:w,bubbles:!P.current,name:l,value:v,checked:N,required:h,disabled:m,form:y,style:{transform:"translateX(-100%)"}})]})});m.displayName=d;var v="SwitchThumb",x=r.forwardRef((e,r)=>{let{__scopeSwitch:o,...a}=e,n=h(v,o);return(0,t.jsx)(c.Primitive.span,{"data-state":b(n.checked),"data-disabled":n.disabled?"":void 0,...a,ref:r})});x.displayName=v;var g=r.forwardRef(({__scopeSwitch:e,control:o,checked:n,bubbles:s=!0,...c},d)=>{let u=r.useRef(null),p=(0,a.useComposedRefs)(u,d),f=(0,i.usePrevious)(n),h=(0,l.useSize)(o);return r.useEffect(()=>{let e=u.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(f!==n&&t){let r=new Event("click",{bubbles:s});t.call(e,n),e.dispatchEvent(r)}},[f,n,s]),(0,t.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n,...c,tabIndex:-1,ref:p,style:{...c.style,...h,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function b(e){return e?"checked":"unchecked"}g.displayName="SwitchBubbleInput",e.s(["Root",()=>m,"Switch",()=>m,"SwitchThumb",()=>x,"Thumb",()=>x,"createSwitchScope",()=>p],95291);var y=e.i(95291),y=y,k=e.i(31777);function w({className:e,size:r="default",...o}){return(0,t.jsx)(y.Root,{"data-slot":"switch","data-size":r,className:(0,k.cn)("peer group/switch focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input dark:data-[state=unchecked]:bg-input/80 inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6",e),...o,children:(0,t.jsx)(y.Thumb,{"data-slot":"switch-thumb",className:(0,k.cn)("bg-background dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")})})}e.s(["Switch",()=>w],51911);var j=e.i(23925),C=e.i(11345),P=e.i(76016),R=e.i(32499),N=e.i(72877),A=e.i(86782),S=e.i(29847),T=e.i(35364),M=e.i(90382);function E({initialAgentType:e,initialModel:o,onAgentModelChange:a,disabled:n,className:s,mode:i}){let[l,c]=r.useState(!1),[d,u]=r.useState([]),[p,f]=r.useState(!0),[h,m]=r.useState(e),[v,x]=r.useState(o),[g,b]=r.useState(null),[y,w]=r.useState(0),[E,F]=r.useState(null);r.useEffect(()=>{(0,R.getAllAgentModels)().then(u).finally(()=>f(!1))},[]),r.useEffect(()=>{if(!l){let e=setTimeout(()=>{w(0),F(null)},150);return()=>clearTimeout(e)}},[l]);let O=async(e,t)=>{if(c(!1),e!==h||t!==v){if("override"===i){m(e),x(t),a?.(e,t);return}m(e),x(t),a?.(e,t),b(null);try{let r=await (0,N.updateAgentAndModel)(e,t||null);r.ok||(m(h),x(v),a?.(h,v),b(r.error??"Failed to save"))}catch{m(h),x(v),a?.(h,v),b("Failed to save")}}},z=(0,A.getAgentTypeIcon)(h),D=d.find(e=>e.agentType===h)?.label??h,I=v?(0,S.getModelMeta)(v).displayName||v:null,q=E?d.find(e=>e.agentType===E):null;return(0,t.jsxs)("div",{className:(0,k.cn)("flex flex-col gap-1",s),children:[(0,t.jsxs)(M.Popover,{open:l,onOpenChange:c,children:[(0,t.jsx)(M.PopoverTrigger,{asChild:!0,children:(0,t.jsx)(T.Button,{variant:"outline",role:"combobox","aria-expanded":l,disabled:(n??!1)||p,className:"w-auto cursor-pointer justify-start font-normal hover:border-violet-300 hover:bg-violet-50/50 dark:hover:border-violet-700 dark:hover:bg-violet-950/30",children:(0,t.jsxs)("span",{className:"flex items-center gap-2 truncate",children:[(0,t.jsx)(z,{className:"h-4 w-4 shrink-0"}),p?"Loading…":(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:D}),I?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-muted-foreground/50 text-xs",children:"·"}),(0,t.jsx)("span",{className:"text-xs font-medium",children:I})]}):null]})]})})}),(0,t.jsx)(M.PopoverContent,{className:"w-(--radix-popover-trigger-width) overflow-hidden p-0",align:"start",children:(0,t.jsxs)("div",{className:"flex transition-transform duration-200 ease-in-out",style:{transform:`translateX(${1===y?"-50%":"0%"})`,width:"200%"},children:[(0,t.jsxs)("div",{className:"w-1/2 shrink-0",children:[(0,t.jsx)("div",{className:"text-muted-foreground border-b px-3 py-2 text-xs font-medium",children:"Select agent"}),d.map(e=>{let r=(0,A.getAgentTypeIcon)(e.agentType),o=h===e.agentType,a=e.models.length>0;return(0,t.jsxs)("button",{type:"button",className:(0,k.cn)("flex w-full cursor-pointer items-center gap-2.5 px-3 py-2 text-xs transition-colors","hover:bg-accent hover:text-accent-foreground",o&&"bg-accent/50"),onClick:()=>{a?(F(e.agentType),requestAnimationFrame(()=>{requestAnimationFrame(()=>w(1))})):O(e.agentType,"")},children:[(0,t.jsx)(r,{className:"h-4 w-4 shrink-0"}),(0,t.jsx)("span",{className:"flex-1 text-left",children:e.label}),o&&!a?(0,t.jsx)(j.Check,{className:"text-primary h-3.5 w-3.5 shrink-0"}):null,a?(0,t.jsx)(P.ChevronRight,{className:"text-muted-foreground h-3.5 w-3.5 shrink-0"}):null]},e.agentType)})]}),(0,t.jsx)("div",{className:"w-1/2 shrink-0",children:q?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("button",{type:"button",className:"text-muted-foreground hover:text-foreground flex w-full cursor-pointer items-center gap-1.5 border-b px-3 py-2 text-xs font-medium transition-colors",onClick:()=>{w(0),setTimeout(()=>F(null),220)},children:[(0,t.jsx)(C.ChevronLeft,{className:"h-3.5 w-3.5"}),q.label]}),q.models.map(e=>{let r=h===q.agentType&&v===e.id;return(0,t.jsxs)("button",{type:"button",className:(0,k.cn)("flex w-full cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors","hover:bg-accent hover:text-accent-foreground",r&&"bg-accent/50"),onClick:()=>O(q.agentType,e.id),children:[(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,t.jsx)("span",{className:"text-xs font-medium",children:e.displayName}),(0,t.jsx)("span",{className:"text-muted-foreground text-xs",children:e.description})]}),r?(0,t.jsx)(j.Check,{className:"text-primary h-3.5 w-3.5 shrink-0"}):null]},e.id)})]}):null})]})})]}),!!g&&(0,t.jsx)("p",{className:"text-destructive text-sm",children:g})]})}e.s(["AgentModelPicker",()=>E],41413)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,81181,e=>{"use strict";var t=e.i(95230);e.s(["Download",()=>t.default])},95812,35e3,e=>{"use strict";let t=(0,e.i(3645).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Circle",()=>t],95812);var a=e.i(80986);e.s(["CheckCircle2",()=>a.default],35e3)},33548,e=>{"use strict";let t=(0,e.i(3645).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",()=>t],33548)},38573,e=>{"use strict";let t=(0,e.i(3645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],38573)},30702,e=>{"use strict";let t=(0,e.i(3645).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>t],30702)},23925,1012,e=>{"use strict";let t=(0,e.i(3645).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",()=>t],1012),e.s(["Check",()=>t],23925)},95230,e=>{"use strict";let t=(0,e.i(3645).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["default",()=>t])},83902,e=>{"use strict";let t=(0,e.i(3645).default)("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);e.s(["Rocket",()=>t],83902)},44412,e=>{"use strict";var t=e.i(20314),a=e.i(79054),s=e.i(81975),l=e.i(68304),r=e.i(31777),n=e.i(83428),i=e.i(83902),c=e.i(81181),o=e.i(3645);let d=(0,o.default)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);var m=e.i(38573),x=e.i(49228),u=e.i(54277),h=e.i(95812),p=e.i(35e3);let g=(0,o.default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);var f=e.i(35364),j=e.i(2828),b=e.i(33548),N=e.i(23925),k=e.i(30702),v=e.i(11495);let y={linux:"Linux",darwin:"macOS",win32:"Windows"},w={ide:{label:"IDE",icon:d},"cli-agent":{label:"CLI Agent",icon:m.Terminal},vcs:{label:"VCS",icon:x.GitBranch},terminal:{label:"Terminal",icon:m.Terminal}};function C({status:e}){return"available"===e?(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-medium text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400",children:[(0,t.jsx)(N.Check,{className:"h-3 w-3"}),"Installed"]}):"error"===e?(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-red-100 px-2 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400",children:"Error"}):(0,t.jsx)("span",{className:"inline-flex items-center gap-1 rounded-full bg-amber-100 px-2 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400",children:"Missing"})}function T({tool:e,open:s,onClose:l,onRefresh:r,autoStart:o}){let[m,x]=(0,a.useState)(!1),[u,h]=(0,a.useState)(!1),{logs:p,status:j,startInstall:T}=function(e){let[t,s]=(0,a.useState)([]),[l,r]=(0,a.useState)("idle"),[n,i]=(0,a.useState)(null),c=(0,a.useRef)(null),o=(0,a.useCallback)(()=>{c.current&&(c.current.close(),c.current=null)},[]);return(0,a.useEffect)(()=>o,[o]),{logs:t,status:l,result:n,startInstall:(0,a.useCallback)(()=>{o(),s([]),i(null),r("streaming");let t=new EventSource(`/api/tools/${e}/install/stream`);c.current=t,t.onmessage=e=>{s(t=>[...t,e.data])},t.addEventListener("done",e=>{let t=JSON.parse(e.data);i(t),r("error"===t.status?"error":"done"),o()}),t.onerror=()=>{r("error"),o()}},[e,o])}}(e.id),z=(0,a.useRef)(null),I=(0,a.useRef)(!0),S=(0,a.useRef)(!1),M="available"===e.status.status,L="error"===e.status.status,E=M&&!!e.openDirectory,R=!M&&!L&&e.autoInstall;async function B(){h(!0);try{await fetch(`/api/tools/${e.id}/launch`,{method:"POST"})}finally{h(!1)}}(0,a.useEffect)(()=>{s&&o&&R&&"idle"===j&&!S.current&&(S.current=!0,T()),s||(S.current=!1)},[s,o,R,j,T]);let D=(0,a.useCallback)(()=>{let e=z.current;e&&(I.current=e.scrollTop+e.clientHeight>=e.scrollHeight-50)},[]);(0,a.useEffect)(()=>{I.current&&z.current&&(z.current.scrollTop=z.current.scrollHeight)},[p,j]),(0,a.useEffect)(()=>{"done"===j&&r&&r()},[j,r]);let q=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5 pr-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[e.iconUrl?(0,t.jsx)("img",{src:e.iconUrl,alt:"",width:24,height:24,className:"shrink-0 dark:invert"}):(0,t.jsx)(g,{className:"text-muted-foreground h-6 w-6 shrink-0"}),(0,t.jsx)("h2",{className:"text-base font-bold",children:e.name}),(0,t.jsx)(C,{status:e.status.status})]}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:e.tags.map(e=>{let a=w[e]??{label:e,icon:d},s=a.icon;return(0,t.jsxs)("span",{className:"text-muted-foreground/70 inline-flex items-center gap-0.5 text-[10px]",children:[(0,t.jsx)(s,{className:"h-3 w-3"}),a.label]},e)})})]});return(0,t.jsx)(v.BaseDrawer,{open:s,onClose:l,size:"md",modal:!0,title:e.name,header:q,"data-testid":"tool-detail-drawer",children:(0,t.jsxs)("div",{className:"flex flex-1 flex-col gap-4 overflow-y-auto p-4",children:[(0,t.jsx)("p",{className:"text-muted-foreground text-sm",children:e.description}),e.author||e.platforms?(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs",children:[e.author?(0,t.jsxs)("span",{className:"text-muted-foreground",children:["by"," ",e.website?(0,t.jsx)("a",{href:e.website,target:"_blank",rel:"noopener noreferrer",className:"text-foreground hover:underline",children:e.author}):(0,t.jsx)("span",{className:"text-foreground",children:e.author})]}):null,e.platforms&&e.platforms.length>0?(0,t.jsx)("span",{className:"text-muted-foreground",children:e.platforms.map(e=>y[e]??e).join(" · ")}):null]}):null,e.installCommand?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs font-semibold tracking-wide uppercase",children:"Install command"}),(0,t.jsxs)("div",{className:"relative rounded-md bg-zinc-900 text-zinc-100",children:[(0,t.jsx)("pre",{className:"overflow-x-auto px-3 py-2.5 pr-16 font-mono text-xs leading-relaxed break-all whitespace-pre-wrap",children:(0,t.jsx)("code",{children:e.installCommand})}),(0,t.jsxs)(f.Button,{variant:"ghost",size:"sm",className:"absolute top-1.5 right-1.5 h-7 cursor-pointer px-2 text-zinc-400 hover:text-zinc-100",onClick:function(){e.installCommand&&navigator.clipboard.writeText(e.installCommand).then(()=>{x(!0),setTimeout(()=>x(!1),2e3)})},"aria-label":m?"Copied!":"Copy install command",children:[m?(0,t.jsx)(N.Check,{className:"h-3.5 w-3.5 text-emerald-500"}):(0,t.jsx)(b.Copy,{className:"h-3.5 w-3.5"}),(0,t.jsx)("span",{className:"ml-1 text-[10px]",children:m?"Copied!":"Copy"})]})]})]}):null,(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[R?(0,t.jsxs)(f.Button,{size:"sm",onClick:T,disabled:"streaming"===j,"aria-label":`Install ${e.name}`,className:"cursor-pointer",children:["streaming"===j?(0,t.jsx)(n.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(c.Download,{className:"mr-1.5 h-3.5 w-3.5"}),"streaming"===j?"Installing...":"Install"]}):null,E?(0,t.jsxs)(f.Button,{size:"sm",variant:"outline",onClick:()=>void B(),disabled:u,"aria-label":`Launch ${e.name}`,className:"cursor-pointer",children:[u?(0,t.jsx)(n.Loader2,{className:"mr-1.5 h-3.5 w-3.5 animate-spin"}):(0,t.jsx)(i.Rocket,{className:"mr-1.5 h-3.5 w-3.5"}),"Launch"]}):null,e.documentationUrl?(0,t.jsx)(f.Button,{variant:"outline",size:"sm",className:"cursor-pointer",asChild:!0,children:(0,t.jsxs)("a",{href:e.documentationUrl,target:"_blank",rel:"noopener noreferrer",children:["Docs",(0,t.jsx)(k.ExternalLink,{className:"ml-1 h-3 w-3"})]})}):null]}),("streaming"===j||"done"===j||"error"===j)&&p.length>0?(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-muted-foreground text-xs font-semibold tracking-wide uppercase",children:"Install log"}),(0,t.jsxs)("div",{ref:z,onScroll:D,className:"max-h-60 overflow-auto rounded-md bg-zinc-900 p-3 font-mono text-xs leading-relaxed text-zinc-100","data-testid":"tool-install-log",children:[p.map((e,a)=>(0,t.jsx)("div",{className:"break-all whitespace-pre-wrap",children:e},a)),"done"===j?(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-emerald-400",children:"Installation complete"}):null,"error"===j?(0,t.jsx)("div",{className:"mt-2 border-t border-zinc-700 pt-2 text-red-400",children:"Installation failed"}):null]})]}):null]})})}let z={ide:{label:"IDE",icon:d},"cli-agent":{label:"CLI Agent",icon:m.Terminal},vcs:{label:"VCS",icon:x.GitBranch},terminal:{label:"Terminal",icon:m.Terminal}};function I({tool:e,onRefresh:s,className:l}){let[o,m]=(0,a.useState)(!1),[x,b]=(0,a.useState)(!1),[N,k]=(0,a.useTransition)(),v="available"===e.status.status,y="error"===e.status.status,w=v&&!!e.openDirectory;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{"data-testid":"tool-card",onClick:function(){b(!1),m(!0)},className:(0,r.cn)("bg-card group flex h-30 w-full cursor-pointer flex-col rounded-lg border p-3 transition-shadow hover:shadow-md",l),children:[(0,t.jsxs)("div",{className:"mb-2 flex items-start justify-between gap-2",children:[(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[e.iconUrl?(0,t.jsx)("img",{src:e.iconUrl,alt:"",width:20,height:20,className:"shrink-0 dark:invert"}):(0,t.jsx)(g,{className:"text-muted-foreground h-5 w-5 shrink-0"}),(0,t.jsx)("h3",{"data-testid":"tool-card-name",className:"truncate text-sm font-bold",children:e.name})]}),(0,t.jsx)("div",{"data-testid":"tool-card-tags",className:"flex shrink-0 items-center gap-1",children:e.tags.map(e=>{let a=z[e]??{label:e,icon:d},s=a.icon;return(0,t.jsxs)("span",{className:"text-muted-foreground/70 inline-flex items-center gap-0.5 text-[9px]",children:[(0,t.jsx)(s,{className:"h-2.5 w-2.5"}),a.label]},e)})})]}),(0,t.jsx)("p",{"data-testid":"tool-card-summary",className:"text-muted-foreground mt-1 truncate text-xs",children:e.summary}),(0,t.jsxs)("div",{className:"mt-auto flex items-center justify-between pt-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[y&&"error"===e.status.status?(0,t.jsxs)("span",{className:"flex items-center gap-1 truncate text-[10px] text-red-600 dark:text-red-400",title:e.status.errorMessage,children:[(0,t.jsx)(u.CircleX,{className:"h-3 w-3 shrink-0"}),e.status.errorMessage??"Error"]}):v?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[10px] text-emerald-600 dark:text-emerald-400",children:[(0,t.jsx)(p.CheckCircle2,{className:"h-3 w-3"}),"Installed"]}):(0,t.jsxs)("span",{className:"text-muted-foreground flex items-center gap-1 text-[10px]",children:[(0,t.jsx)(h.Circle,{className:"h-3 w-3"}),"Not installed"]}),e.required?(0,t.jsx)(j.TooltipProvider,{children:(0,t.jsxs)(j.Tooltip,{children:[(0,t.jsx)(j.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{className:"rounded bg-amber-100 px-1.5 py-0.5 text-[9px] font-medium text-amber-700 dark:bg-amber-900/50 dark:text-amber-400",children:"Required"})}),(0,t.jsx)(j.TooltipContent,{side:"top",children:"This tool is required for Shep to function properly"})]})}):null]}),(0,t.jsx)("div",{className:"flex items-center gap-1",children:v&&w?(0,t.jsxs)(f.Button,{size:"sm",variant:"outline",onClick:function(t){t.stopPropagation(),k(async()=>{await fetch(`/api/tools/${e.id}/launch`,{method:"POST"})})},disabled:N,"aria-label":`Launch ${e.name}`,"data-testid":"tool-card-launch-button",className:"h-7 cursor-pointer rounded-md px-3 text-xs",children:[N?(0,t.jsx)(n.Loader2,{className:"mr-1 h-3 w-3 animate-spin"}):(0,t.jsx)(i.Rocket,{className:"mr-1 h-3 w-3"}),"Launch"]}):v||y?null:(0,t.jsxs)(f.Button,{size:"sm",variant:"default",onClick:function(t){t.stopPropagation(),b(e.autoInstall),m(!0)},"aria-label":`Install ${e.name}`,"data-testid":"tool-card-install-button",className:"h-7 cursor-pointer rounded-md px-3 text-xs",children:[(0,t.jsx)(c.Download,{className:"mr-1 h-3 w-3"}),"Install"]})})]})]}),(0,t.jsx)(T,{tool:e,open:o,onClose:()=>m(!1),onRefresh:s,autoStart:x})]})}let S={all:()=>!0,ide:e=>e.tags.includes("ide"),"cli-agent":e=>e.tags.includes("cli-agent"),vcs:e=>e.tags.includes("vcs"),terminal:e=>e.tags.includes("terminal")};function M({tools:e,className:n}){let[i,c]=(0,a.useState)(e),[o,d]=(0,a.useState)("all"),m=(0,a.useCallback)(async()=>{try{let e=await fetch("/api/tools");if(e.ok){let t=await e.json();c(t)}}catch{}},[]),x=i.filter(S[o]);return(0,t.jsxs)("div",{"data-testid":"tools-page-client",className:(0,r.cn)("space-y-4",n),children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(s.Wrench,{className:"text-muted-foreground h-4 w-4"}),(0,t.jsx)("h1",{className:"text-sm font-bold tracking-tight",children:"Tools"}),(0,t.jsxs)("span",{className:"text-muted-foreground text-[10px]",children:[i.filter(e=>"available"===e.status.status).length,"/",i.length," installed"]})]}),(0,t.jsxs)(l.Tabs,{value:o,onValueChange:e=>d(e),"data-testid":"tools-page-tabs",children:[(0,t.jsxs)(l.TabsList,{className:"h-7",children:[(0,t.jsx)(l.TabsTrigger,{value:"all","data-testid":"tools-tab-all",className:"px-2.5 text-xs",children:"All"}),(0,t.jsx)(l.TabsTrigger,{value:"ide","data-testid":"tools-tab-ide",className:"px-2.5 text-xs",children:"IDEs"}),(0,t.jsx)(l.TabsTrigger,{value:"cli-agent","data-testid":"tools-tab-cli-agent",className:"px-2.5 text-xs",children:"CLI Agents"}),(0,t.jsx)(l.TabsTrigger,{value:"vcs","data-testid":"tools-tab-vcs",className:"px-2.5 text-xs",children:"Version Control"}),(0,t.jsx)(l.TabsTrigger,{value:"terminal","data-testid":"tools-tab-terminal",className:"px-2.5 text-xs",children:"Terminals"})]}),(0,t.jsx)(l.TabsContent,{value:o,className:"mt-3",children:0===x.length?(0,t.jsxs)("div",{"data-testid":"tools-page-empty",className:"text-muted-foreground flex flex-col items-center justify-center py-12 text-center",children:[(0,t.jsx)(s.Wrench,{className:"mb-2 h-6 w-6 opacity-20"}),(0,t.jsx)("p",{className:"text-xs",children:"No tools in this category."})]}):(0,t.jsx)("div",{"data-testid":"tools-page-grid",className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",children:x.map(e=>(0,t.jsx)(I,{tool:e,onRefresh:m},e.id))})})]})]})}e.s(["ToolsPageClient",()=>M],44412)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,30702,e=>{"use strict";let s=(0,e.i(3645).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>s],30702)},38573,e=>{"use strict";let s=(0,e.i(3645).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>s],38573)},1650,e=>{"use strict";e.i(11495),e.s([])},19933,e=>{"use strict";let s=(0,e.i(3645).default)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]);e.s(["FolderOpen",()=>s],19933)},54793,7729,e=>{"use strict";var s=e.i(20314),l=e.i(31777);function t({icon:e,title:t,description:a,action:r,className:n,...i}){return(0,s.jsxs)("div",{className:(0,l.cn)("flex flex-col items-center gap-4 px-4 py-12 text-center",n),...i,children:[e?(0,s.jsx)("div",{className:"text-muted-foreground",children:e}):null,(0,s.jsx)("h3",{className:"text-lg font-semibold",children:t}),a?(0,s.jsx)("p",{className:"text-muted-foreground max-w-md text-sm",children:a}):null,r?(0,s.jsx)("div",{className:"mt-2",children:r}):null]})}e.s(["EmptyState",()=>t],7729),e.s([],54793)},956,e=>{"use strict";var s=e.i(20314),l=e.i(79054),t=e.i(31777);let a=l.forwardRef(({className:e,...l},a)=>(0,s.jsx)("div",{ref:a,className:(0,t.cn)("bg-card text-card-foreground rounded-xl border shadow",e),...l}));a.displayName="Card";let r=l.forwardRef(({className:e,...l},a)=>(0,s.jsx)("div",{ref:a,className:(0,t.cn)("flex flex-col space-y-1.5 p-6",e),...l}));r.displayName="CardHeader";let n=l.forwardRef(({className:e,...l},a)=>(0,s.jsx)("div",{ref:a,className:(0,t.cn)("leading-none font-semibold tracking-tight",e),...l}));n.displayName="CardTitle";let i=l.forwardRef(({className:e,...l},a)=>(0,s.jsx)("div",{ref:a,className:(0,t.cn)("text-muted-foreground text-sm",e),...l}));i.displayName="CardDescription";let o=l.forwardRef(({className:e,...l},a)=>(0,s.jsx)("div",{ref:a,className:(0,t.cn)("p-6 pt-0",e),...l}));o.displayName="CardContent",l.forwardRef(({className:e,...l},a)=>(0,s.jsx)("div",{ref:a,className:(0,t.cn)("flex items-center p-6 pt-0",e),...l})).displayName="CardFooter",e.s(["Card",()=>a,"CardContent",()=>o,"CardDescription",()=>i,"CardHeader",()=>r,"CardTitle",()=>n])},38752,e=>{"use strict";var s=e.i(20314);e.i(1650);var l=e.i(11495),t=e.i(45811),a=e.i(81846),r=e.i(25235),n=e.i(19933);function i({skill:e,onClose:i}){return(0,s.jsx)(l.BaseDrawer,{open:null!==e,onClose:i,size:"sm",modal:!0,"data-testid":"skill-detail-drawer",header:e?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.DrawerTitle,{children:e.displayName}),(0,s.jsx)(t.DrawerDescription,{children:e.name})]}):void 0,children:e?(0,s.jsxs)("div",{className:"px-4 pb-4",children:[(0,s.jsx)("p",{className:"text-muted-foreground text-sm",children:e.description}),(0,s.jsxs)("div",{className:"mt-4 flex flex-wrap items-center gap-1.5",children:[(0,s.jsx)(a.Badge,{variant:"project"===e.source?"secondary":"outline",children:"project"===e.source?"Project":"Global"}),(0,s.jsx)(a.Badge,{variant:"outline",children:e.category}),e.context?(0,s.jsx)(a.Badge,{variant:"outline",children:e.context}):null]}),e.allowedTools?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-semibold",children:"Allowed Tools"}),(0,s.jsx)("p",{className:"text-muted-foreground mt-1 text-sm",children:e.allowedTools})]})]}):null,e.resources.length>0?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-semibold",children:"Resources"}),(0,s.jsx)("ul",{className:"mt-2 space-y-1.5",children:e.resources.map(e=>(0,s.jsxs)("li",{className:"text-muted-foreground flex items-center gap-2 text-sm",children:[(0,s.jsx)(n.FolderOpen,{className:"size-3.5 shrink-0"}),(0,s.jsxs)("span",{children:[e.name,"/ — ",e.fileCount," ",1===e.fileCount?"file":"files"]})]},e.name))})]})]}):null,e.body?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Separator,{className:"my-4"}),(0,s.jsx)("pre",{className:"text-muted-foreground text-sm leading-relaxed whitespace-pre-wrap",children:e.body})]}):null]}):null})}e.s(["SkillDetailDrawer",()=>i])},16919,e=>{"use strict";var s=e.i(20314),l=e.i(79054),t=e.i(66459),a=e.i(12103),r=e.i(98127),n=e.i(35364),i=e.i(31777);function o({title:e,description:l,children:t,className:a}){return(0,s.jsxs)("header",{className:(0,i.cn)("flex items-center justify-between gap-4",a),children:[(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("h1",{className:"text-2xl font-bold tracking-tight",children:e}),l?(0,s.jsx)("p",{className:"text-muted-foreground",children:l}):null]}),t?(0,s.jsx)("div",{"data-slot":"actions",children:t}):null]})}e.i(54793);var c=e.i(7729),d=e.i(956),x=e.i(81846),u=e.i(19933);function m({skill:e,onSelect:l}){return(0,s.jsxs)(d.Card,{className:"hover:border-primary/50 cursor-pointer transition-colors",role:"button",tabIndex:0,onClick:()=>l(e),onKeyDown:s=>{("Enter"===s.key||" "===s.key)&&(s.preventDefault(),l(e))},"data-testid":`skill-card-${e.name}`,children:[(0,s.jsxs)(d.CardHeader,{className:"pb-3",children:[(0,s.jsx)(d.CardTitle,{className:"text-base",children:e.displayName}),(0,s.jsx)("p",{className:"text-muted-foreground font-mono text-xs",children:e.name})]}),(0,s.jsxs)(d.CardContent,{className:"space-y-3",children:[(0,s.jsx)("p",{className:"text-muted-foreground line-clamp-2 text-sm",children:e.description}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[(0,s.jsx)(x.Badge,{variant:"project"===e.source?"secondary":"outline",children:"project"===e.source?"Project":"Global"}),e.context?(0,s.jsx)(x.Badge,{variant:"outline",children:e.context}):null,e.allowedTools?(0,s.jsx)(x.Badge,{variant:"outline",children:"Tools"}):null,e.resources.length>0?(0,s.jsxs)("span",{className:"text-muted-foreground inline-flex items-center gap-1 text-xs",children:[(0,s.jsx)(u.FolderOpen,{className:"size-3"}),e.resources.length," ",1===e.resources.length?"resource":"resources"]}):null]})]})]})}let p=["Workflow","Code Generation","Analysis","Reference"];function h({skills:e,onSkillSelect:l}){let t=function(e){let s=new Map;for(let l of e){let e=s.get(l.category)??[];e.push(l),s.set(l.category,e)}return s}(e);return(0,s.jsx)("div",{className:"space-y-8",children:p.map(e=>{let a=t.get(e);return a&&0!==a.length?(0,s.jsxs)("section",{children:[(0,s.jsxs)("h2",{className:"mb-4 text-lg font-semibold",children:[e," ",(0,s.jsxs)("span",{className:"text-muted-foreground text-sm font-normal",children:["(",a.length,")"]})]}),(0,s.jsx)("div",{className:"grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3",children:a.map(e=>(0,s.jsx)(m,{skill:e,onSelect:l},e.name))})]},e):null})})}let f=[{label:"All",value:null},{label:"Workflow",value:"Workflow"},{label:"Code Generation",value:"Code Generation"},{label:"Analysis",value:"Analysis"},{label:"Reference",value:"Reference"}];function j({activeCategory:e,onCategoryChange:l,counts:t}){return(0,s.jsx)("div",{className:"flex flex-wrap gap-2",role:"group","aria-label":"Filter by category",children:f.map(({label:a,value:r})=>(0,s.jsxs)(n.Button,{variant:e===r?"default":"outline",size:"sm",onClick:()=>l(r),children:[a,t&&r?(0,s.jsxs)("span",{className:"ml-1 text-xs opacity-70",children:["(",t[r],")"]}):null]},a))})}var g=e.i(38752);function N({skills:e}){let[i,d]=(0,l.useState)(""),[x,u]=(0,l.useState)(null),[m,p]=(0,l.useState)(null),f=(0,l.useMemo)(()=>(function(e){let s={Workflow:0,"Code Generation":0,Analysis:0,Reference:0};for(let l of e)s[l.category]++;return s})(e),[e]),N=(0,l.useMemo)(()=>{let s=i.toLowerCase();return e.filter(e=>{if(x&&e.category!==x)return!1;if(s){let l=e.name.toLowerCase().includes(s),t=e.description.toLowerCase().includes(s);if(!l&&!t)return!1}return!0})},[e,i,x]);return 0===e.length?(0,s.jsxs)("div",{className:"flex flex-col gap-6 p-6",children:[(0,s.jsx)(o,{title:"Skills",description:"Claude Code skills installed in this project"}),(0,s.jsx)(c.EmptyState,{icon:(0,s.jsx)(a.Puzzle,{className:"size-10"}),title:"No skills found",description:"No Claude Code skills are installed. Add skills to .claude/skills/ to get started."})]}):(0,s.jsxs)("div",{className:"flex flex-col gap-6 p-6",children:[(0,s.jsx)(o,{title:"Skills",description:"Claude Code skills installed in this project"}),(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(t.Search,{className:"text-muted-foreground absolute top-1/2 left-3 size-4 -translate-y-1/2"}),(0,s.jsx)(r.Input,{placeholder:"Search skills...",value:i,onChange:e=>d(e.target.value),className:"pl-9"})]}),(0,s.jsx)(j,{activeCategory:x,onCategoryChange:u,counts:f}),N.length>0?(0,s.jsx)(h,{skills:N,onSkillSelect:p}):(0,s.jsx)(c.EmptyState,{icon:(0,s.jsx)(t.Search,{className:"size-10"}),title:"No matching skills",description:"No skills match your current search and filter criteria.",action:(0,s.jsx)(n.Button,{variant:"outline",onClick:()=>{d(""),u(null)},children:"Clear filters"})}),(0,s.jsx)(g.SkillDetailDrawer,{skill:m,onClose:()=>p(null)})]})}e.s(["SkillsPageClient",()=>N],16919)}]);