tower-studio 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1138) hide show
  1. package/.next/standalone/tower/.claude/rules/process-lifecycle.md +31 -0
  2. package/.next/standalone/tower/.claude/rules/security.md +29 -0
  3. package/.next/standalone/tower/.claude/rules/ui.md +105 -0
  4. package/.next/standalone/tower/AGENTS.md +325 -0
  5. package/.next/standalone/tower/CHANGELOG.md +63 -0
  6. package/.next/standalone/tower/CLAUDE.md +33 -0
  7. package/.next/standalone/tower/LICENSE +21 -0
  8. package/.next/standalone/tower/README.md +214 -0
  9. package/.next/standalone/tower/README.zh.md +212 -0
  10. package/.next/standalone/tower/bin/tower.mjs +180 -0
  11. package/.next/standalone/tower/components.json +25 -0
  12. package/.next/standalone/tower/docs/README.md +51 -0
  13. package/.next/standalone/tower/docs/ai/README.md +91 -0
  14. package/.next/standalone/tower/docs/ai/cli-abstraction-design.md +398 -0
  15. package/.next/standalone/tower/docs/ai/cli-abstraction-plan.md +1345 -0
  16. package/.next/standalone/tower/docs/assets-notes/README.md +41 -0
  17. package/.next/standalone/tower/docs/assistant/README.md +48 -0
  18. package/.next/standalone/tower/docs/board/README.md +36 -0
  19. package/.next/standalone/tower/docs/diagrams/tower-ai-architecture-en.html +259 -0
  20. package/.next/standalone/tower/docs/diagrams/tower-ai-architecture.html +259 -0
  21. package/.next/standalone/tower/docs/diagrams/tower-data-model-en.html +344 -0
  22. package/.next/standalone/tower/docs/diagrams/tower-data-model.html +344 -0
  23. package/.next/standalone/tower/docs/diagrams/tower-module-map-en.html +176 -0
  24. package/.next/standalone/tower/docs/diagrams/tower-module-map.html +176 -0
  25. package/.next/standalone/tower/docs/diagrams/tower-system-architecture-en.html +336 -0
  26. package/.next/standalone/tower/docs/diagrams/tower-system-architecture.html +336 -0
  27. package/.next/standalone/tower/docs/diagrams/tower-task-lifecycle-en.html +251 -0
  28. package/.next/standalone/tower/docs/diagrams/tower-task-lifecycle.html +251 -0
  29. package/.next/standalone/tower/docs/en/guide/architecture.md +79 -0
  30. package/.next/standalone/tower/docs/en/guide/diagrams.md +24 -0
  31. package/.next/standalone/tower/docs/en/guide/getting-started.md +80 -0
  32. package/.next/standalone/tower/docs/en/guide/introduction.md +84 -0
  33. package/.next/standalone/tower/docs/en/index.md +36 -0
  34. package/.next/standalone/tower/docs/en/modules/ai.md +110 -0
  35. package/.next/standalone/tower/docs/en/modules/assets-notes.md +56 -0
  36. package/.next/standalone/tower/docs/en/modules/assistant.md +63 -0
  37. package/.next/standalone/tower/docs/en/modules/board.md +44 -0
  38. package/.next/standalone/tower/docs/en/modules/git.md +55 -0
  39. package/.next/standalone/tower/docs/en/modules/i18n.md +35 -0
  40. package/.next/standalone/tower/docs/en/modules/mcp.md +62 -0
  41. package/.next/standalone/tower/docs/en/modules/missions.md +47 -0
  42. package/.next/standalone/tower/docs/en/modules/project.md +57 -0
  43. package/.next/standalone/tower/docs/en/modules/search.md +49 -0
  44. package/.next/standalone/tower/docs/en/modules/settings.md +63 -0
  45. package/.next/standalone/tower/docs/en/modules/task.md +82 -0
  46. package/.next/standalone/tower/docs/en/modules/terminal.md +73 -0
  47. package/.next/standalone/tower/docs/en/modules/workspace.md +61 -0
  48. package/.next/standalone/tower/docs/git/README.md +42 -0
  49. package/.next/standalone/tower/docs/guide/architecture.md +29 -0
  50. package/.next/standalone/tower/docs/guide/diagrams.md +24 -0
  51. package/.next/standalone/tower/docs/guide/getting-started.md +80 -0
  52. package/.next/standalone/tower/docs/guide/introduction.md +84 -0
  53. package/.next/standalone/tower/docs/i18n/README.md +23 -0
  54. package/.next/standalone/tower/docs/index.md +36 -0
  55. package/.next/standalone/tower/docs/mcp/README.md +50 -0
  56. package/.next/standalone/tower/docs/missions/README.md +40 -0
  57. package/.next/standalone/tower/docs/modules/ai.md +104 -0
  58. package/.next/standalone/tower/docs/modules/assets-notes.md +68 -0
  59. package/.next/standalone/tower/docs/modules/assistant.md +74 -0
  60. package/.next/standalone/tower/docs/modules/board.md +56 -0
  61. package/.next/standalone/tower/docs/modules/git.md +61 -0
  62. package/.next/standalone/tower/docs/modules/i18n.md +38 -0
  63. package/.next/standalone/tower/docs/modules/mcp.md +68 -0
  64. package/.next/standalone/tower/docs/modules/missions.md +54 -0
  65. package/.next/standalone/tower/docs/modules/project.md +65 -0
  66. package/.next/standalone/tower/docs/modules/search.md +57 -0
  67. package/.next/standalone/tower/docs/modules/settings.md +72 -0
  68. package/.next/standalone/tower/docs/modules/task.md +82 -0
  69. package/.next/standalone/tower/docs/modules/terminal.md +70 -0
  70. package/.next/standalone/tower/docs/modules/workspace.md +68 -0
  71. package/.next/standalone/tower/docs/package.json +11 -0
  72. package/.next/standalone/tower/docs/pnpm-lock.yaml +1620 -0
  73. package/.next/standalone/tower/docs/postcss.config.mjs +2 -0
  74. package/.next/standalone/tower/docs/project/README.md +45 -0
  75. package/.next/standalone/tower/docs/public/banner.png +0 -0
  76. package/.next/standalone/tower/docs/public/diagrams/tower-ai-architecture-en.html +259 -0
  77. package/.next/standalone/tower/docs/public/diagrams/tower-ai-architecture.html +259 -0
  78. package/.next/standalone/tower/docs/public/diagrams/tower-data-model-en.html +344 -0
  79. package/.next/standalone/tower/docs/public/diagrams/tower-data-model.html +344 -0
  80. package/.next/standalone/tower/docs/public/diagrams/tower-module-map-en.html +176 -0
  81. package/.next/standalone/tower/docs/public/diagrams/tower-module-map.html +176 -0
  82. package/.next/standalone/tower/docs/public/diagrams/tower-system-architecture-en.html +336 -0
  83. package/.next/standalone/tower/docs/public/diagrams/tower-system-architecture.html +336 -0
  84. package/.next/standalone/tower/docs/public/diagrams/tower-task-lifecycle-en.html +251 -0
  85. package/.next/standalone/tower/docs/public/diagrams/tower-task-lifecycle.html +251 -0
  86. package/.next/standalone/tower/docs/search/README.md +37 -0
  87. package/.next/standalone/tower/docs/settings/README.md +43 -0
  88. package/.next/standalone/tower/docs/task/README.md +67 -0
  89. package/.next/standalone/tower/docs/terminal/README.md +58 -0
  90. package/.next/standalone/tower/docs/workspace/README.md +50 -0
  91. package/.next/standalone/tower/docs/zh/guide/architecture.md +29 -0
  92. package/.next/standalone/tower/docs/zh/guide/diagrams.md +24 -0
  93. package/.next/standalone/tower/docs/zh/guide/getting-started.md +80 -0
  94. package/.next/standalone/tower/docs/zh/guide/introduction.md +66 -0
  95. package/.next/standalone/tower/docs/zh/index.md +23 -0
  96. package/.next/standalone/tower/docs/zh/modules/ai.md +104 -0
  97. package/.next/standalone/tower/docs/zh/modules/assets-notes.md +68 -0
  98. package/.next/standalone/tower/docs/zh/modules/assistant.md +74 -0
  99. package/.next/standalone/tower/docs/zh/modules/board.md +56 -0
  100. package/.next/standalone/tower/docs/zh/modules/git.md +61 -0
  101. package/.next/standalone/tower/docs/zh/modules/i18n.md +38 -0
  102. package/.next/standalone/tower/docs/zh/modules/mcp.md +68 -0
  103. package/.next/standalone/tower/docs/zh/modules/missions.md +54 -0
  104. package/.next/standalone/tower/docs/zh/modules/project.md +65 -0
  105. package/.next/standalone/tower/docs/zh/modules/search.md +57 -0
  106. package/.next/standalone/tower/docs/zh/modules/settings.md +72 -0
  107. package/.next/standalone/tower/docs/zh/modules/task.md +82 -0
  108. package/.next/standalone/tower/docs/zh/modules/terminal.md +70 -0
  109. package/.next/standalone/tower/docs/zh/modules/workspace.md +68 -0
  110. package/.next/standalone/tower/eslint.config.mjs +18 -0
  111. package/.next/standalone/tower/next.config.ts +15 -0
  112. package/.next/standalone/tower/package.json +117 -0
  113. package/.next/standalone/tower/playwright.config.ts +28 -0
  114. package/.next/standalone/tower/pnpm-lock.yaml +10524 -0
  115. package/.next/standalone/tower/pnpm-workspace.yaml +6 -0
  116. package/.next/standalone/tower/postcss.config.mjs +7 -0
  117. package/.next/standalone/tower/prisma/init-fts.ts +23 -0
  118. package/.next/standalone/tower/prisma/prisma/dev.db +0 -0
  119. package/.next/standalone/tower/prisma/schema.prisma +290 -0
  120. package/.next/standalone/tower/prisma/seed.ts +50 -0
  121. package/.next/standalone/tower/prompts/backend-developer.md +20 -0
  122. package/.next/standalone/tower/prompts/code-reviewer.md +19 -0
  123. package/.next/standalone/tower/prompts/frontend-developer.md +20 -0
  124. package/.next/standalone/tower/prompts/product-manager.md +16 -0
  125. package/.next/standalone/tower/public/banner.jpg +0 -0
  126. package/.next/standalone/tower/public/logo.png +0 -0
  127. package/.next/standalone/tower/scripts/copy-monaco.js +27 -0
  128. package/.next/standalone/tower/scripts/init-db.ts +74 -0
  129. package/.next/standalone/tower/scripts/init-tower.ts +10 -0
  130. package/.next/standalone/tower/scripts/migrate-data.ts +102 -0
  131. package/.next/standalone/tower/scripts/post-tool-hook.js +188 -0
  132. package/.next/standalone/tower/scripts/session-start-hook.js +79 -0
  133. package/.next/standalone/tower/scripts/stop-hook.js +78 -0
  134. package/.next/standalone/tower/server.js +38 -0
  135. package/.next/standalone/tower/skills/tower/SKILL.md +375 -0
  136. package/.next/standalone/tower/src/actions/agent-actions.ts +741 -0
  137. package/.next/standalone/tower/src/actions/agent-config-actions.ts +44 -0
  138. package/.next/standalone/tower/src/actions/ai-config-actions.ts +51 -0
  139. package/.next/standalone/tower/src/actions/asset-actions.ts +131 -0
  140. package/.next/standalone/tower/src/actions/assistant-actions.ts +107 -0
  141. package/.next/standalone/tower/src/actions/cli-profile-actions.ts +98 -0
  142. package/.next/standalone/tower/src/actions/config-actions.ts +84 -0
  143. package/.next/standalone/tower/src/actions/file-actions.ts +262 -0
  144. package/.next/standalone/tower/src/actions/git-actions.ts +90 -0
  145. package/.next/standalone/tower/src/actions/label-actions.ts +67 -0
  146. package/.next/standalone/tower/src/actions/note-actions.ts +87 -0
  147. package/.next/standalone/tower/src/actions/onboarding-actions.ts +103 -0
  148. package/.next/standalone/tower/src/actions/preview-actions.ts +76 -0
  149. package/.next/standalone/tower/src/actions/project-actions.ts +222 -0
  150. package/.next/standalone/tower/src/actions/prompt-actions.ts +73 -0
  151. package/.next/standalone/tower/src/actions/report-actions.ts +141 -0
  152. package/.next/standalone/tower/src/actions/search-actions.ts +21 -0
  153. package/.next/standalone/tower/src/actions/search-code-actions.ts +185 -0
  154. package/.next/standalone/tower/src/actions/task-actions.ts +350 -0
  155. package/.next/standalone/tower/src/actions/workspace-actions.ts +224 -0
  156. package/.next/standalone/tower/src/app/api/adapters/test/route.ts +52 -0
  157. package/.next/standalone/tower/src/app/api/browse-fs/route.ts +90 -0
  158. package/.next/standalone/tower/src/app/api/files/assets/[projectId]/[filename]/route.ts +38 -0
  159. package/.next/standalone/tower/src/app/api/git/route.ts +367 -0
  160. package/.next/standalone/tower/src/app/api/internal/assets/[projectId]/[filename]/route.ts +51 -0
  161. package/.next/standalone/tower/src/app/api/internal/assets/reveal/route.ts +71 -0
  162. package/.next/standalone/tower/src/app/api/internal/assistant/chat/route.ts +217 -0
  163. package/.next/standalone/tower/src/app/api/internal/assistant/images/route.ts +51 -0
  164. package/.next/standalone/tower/src/app/api/internal/assistant/route.ts +50 -0
  165. package/.next/standalone/tower/src/app/api/internal/assistant/sessions/route.ts +44 -0
  166. package/.next/standalone/tower/src/app/api/internal/cache/[...segments]/route.ts +59 -0
  167. package/.next/standalone/tower/src/app/api/internal/hooks/install/route.ts +41 -0
  168. package/.next/standalone/tower/src/app/api/internal/hooks/session/route.ts +60 -0
  169. package/.next/standalone/tower/src/app/api/internal/hooks/stop/route.ts +61 -0
  170. package/.next/standalone/tower/src/app/api/internal/hooks/upload/route.ts +173 -0
  171. package/.next/standalone/tower/src/app/api/internal/notifications/pending/route.ts +20 -0
  172. package/.next/standalone/tower/src/app/api/internal/terminal/[taskId]/buffer/route.ts +48 -0
  173. package/.next/standalone/tower/src/app/api/internal/terminal/[taskId]/input/route.ts +64 -0
  174. package/.next/standalone/tower/src/app/api/internal/terminal/[taskId]/start/route.ts +37 -0
  175. package/.next/standalone/tower/src/app/api/tasks/[taskId]/diff/route.ts +224 -0
  176. package/.next/standalone/tower/src/app/api/tasks/[taskId]/merge/route.ts +159 -0
  177. package/.next/standalone/tower/src/app/favicon.ico +0 -0
  178. package/.next/standalone/tower/src/app/globals.css +247 -0
  179. package/.next/standalone/tower/src/app/layout.tsx +63 -0
  180. package/.next/standalone/tower/src/app/missions/missions-client.tsx +338 -0
  181. package/.next/standalone/tower/src/app/missions/page.tsx +10 -0
  182. package/.next/standalone/tower/src/app/onboarding/page.tsx +619 -0
  183. package/.next/standalone/tower/src/app/page.tsx +5 -0
  184. package/.next/standalone/tower/src/app/settings/page.tsx +7 -0
  185. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/archive/archive-page-client.tsx +258 -0
  186. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/archive/page.tsx +36 -0
  187. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/assets/assets-page-client.tsx +232 -0
  188. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/assets/page.tsx +36 -0
  189. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/board-page-client.tsx +257 -0
  190. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/notes/notes-page-client.tsx +337 -0
  191. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/notes/page.tsx +39 -0
  192. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/page.tsx +81 -0
  193. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/projects/[projectId]/page.tsx +30 -0
  194. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/tasks/[taskId]/page.tsx +97 -0
  195. package/.next/standalone/tower/src/app/workspaces/[workspaceId]/tasks/[taskId]/task-page-client.tsx +601 -0
  196. package/.next/standalone/tower/src/app/workspaces/page.tsx +13 -0
  197. package/.next/standalone/tower/src/components/assets/asset-item.tsx +128 -0
  198. package/.next/standalone/tower/src/components/assets/asset-list.tsx +31 -0
  199. package/.next/standalone/tower/src/components/assets/asset-upload.tsx +216 -0
  200. package/.next/standalone/tower/src/components/assets/image-lightbox.tsx +72 -0
  201. package/.next/standalone/tower/src/components/assets/text-preview-dialog.tsx +135 -0
  202. package/.next/standalone/tower/src/components/assistant/assistant-chat-bubble.tsx +308 -0
  203. package/.next/standalone/tower/src/components/assistant/assistant-chat.tsx +215 -0
  204. package/.next/standalone/tower/src/components/assistant/assistant-panel.tsx +149 -0
  205. package/.next/standalone/tower/src/components/assistant/assistant-provider.tsx +512 -0
  206. package/.next/standalone/tower/src/components/assistant/image-preview-modal.tsx +60 -0
  207. package/.next/standalone/tower/src/components/assistant/image-thumbnail-strip.tsx +94 -0
  208. package/.next/standalone/tower/src/components/board/board-column.tsx +115 -0
  209. package/.next/standalone/tower/src/components/board/board-filters.tsx +42 -0
  210. package/.next/standalone/tower/src/components/board/board-stats.tsx +52 -0
  211. package/.next/standalone/tower/src/components/board/column-tasks-dialog.tsx +100 -0
  212. package/.next/standalone/tower/src/components/board/create-task-dialog.tsx +362 -0
  213. package/.next/standalone/tower/src/components/board/kanban-board.tsx +169 -0
  214. package/.next/standalone/tower/src/components/board/project-tabs.tsx +93 -0
  215. package/.next/standalone/tower/src/components/board/task-card-context-menu.tsx +121 -0
  216. package/.next/standalone/tower/src/components/board/task-card.tsx +135 -0
  217. package/.next/standalone/tower/src/components/layout/app-sidebar.tsx +662 -0
  218. package/.next/standalone/tower/src/components/layout/folder-browser-dialog.tsx +273 -0
  219. package/.next/standalone/tower/src/components/layout/layout-client.tsx +198 -0
  220. package/.next/standalone/tower/src/components/layout/search-dialog.tsx +196 -0
  221. package/.next/standalone/tower/src/components/layout/sub-page-nav.tsx +54 -0
  222. package/.next/standalone/tower/src/components/layout/top-bar.tsx +265 -0
  223. package/.next/standalone/tower/src/components/missions/grid-layout-presets.ts +19 -0
  224. package/.next/standalone/tower/src/components/missions/grid-preset-picker.tsx +209 -0
  225. package/.next/standalone/tower/src/components/missions/merge-missions.ts +30 -0
  226. package/.next/standalone/tower/src/components/missions/mission-card.tsx +203 -0
  227. package/.next/standalone/tower/src/components/missions/task-picker-dialog.tsx +415 -0
  228. package/.next/standalone/tower/src/components/notes/category-filter.tsx +44 -0
  229. package/.next/standalone/tower/src/components/notes/note-card.tsx +67 -0
  230. package/.next/standalone/tower/src/components/notes/note-editor.tsx +28 -0
  231. package/.next/standalone/tower/src/components/notes/note-list.tsx +30 -0
  232. package/.next/standalone/tower/src/components/notifications/notification-permission-banner.tsx +49 -0
  233. package/.next/standalone/tower/src/components/notifications/use-notification-listener.ts +114 -0
  234. package/.next/standalone/tower/src/components/onboarding/guided-tour.tsx +255 -0
  235. package/.next/standalone/tower/src/components/onboarding/onboarding-wizard.tsx +84 -0
  236. package/.next/standalone/tower/src/components/onboarding/wizard-step-cli.tsx +53 -0
  237. package/.next/standalone/tower/src/components/onboarding/wizard-step-username.tsx +59 -0
  238. package/.next/standalone/tower/src/components/project/create-project-dialog.tsx +310 -0
  239. package/.next/standalone/tower/src/components/project/import-project-dialog.tsx +414 -0
  240. package/.next/standalone/tower/src/components/providers/theme-provider.tsx +8 -0
  241. package/.next/standalone/tower/src/components/repository/create-branch-dialog.tsx +165 -0
  242. package/.next/standalone/tower/src/components/repository/git-changes-panel.tsx +294 -0
  243. package/.next/standalone/tower/src/components/repository/git-log-panel.tsx +83 -0
  244. package/.next/standalone/tower/src/components/repository/git-stash-panel.tsx +158 -0
  245. package/.next/standalone/tower/src/components/repository/repo-sidebar.tsx +855 -0
  246. package/.next/standalone/tower/src/components/settings/cli-adapter-tester.tsx +144 -0
  247. package/.next/standalone/tower/src/components/settings/settings-page.tsx +2111 -0
  248. package/.next/standalone/tower/src/components/task/code-editor.tsx +376 -0
  249. package/.next/standalone/tower/src/components/task/code-search.tsx +219 -0
  250. package/.next/standalone/tower/src/components/task/diff-editor.tsx +97 -0
  251. package/.next/standalone/tower/src/components/task/editor-git-panel.tsx +792 -0
  252. package/.next/standalone/tower/src/components/task/editor-tabs.tsx +68 -0
  253. package/.next/standalone/tower/src/components/task/execution-timeline.tsx +258 -0
  254. package/.next/standalone/tower/src/components/task/file-tree-context-menu.tsx +113 -0
  255. package/.next/standalone/tower/src/components/task/file-tree-node.tsx +269 -0
  256. package/.next/standalone/tower/src/components/task/file-tree.tsx +575 -0
  257. package/.next/standalone/tower/src/components/task/preview-panel.tsx +281 -0
  258. package/.next/standalone/tower/src/components/task/task-detail-panel.tsx +455 -0
  259. package/.next/standalone/tower/src/components/task/task-diff-view.tsx +207 -0
  260. package/.next/standalone/tower/src/components/task/task-file-changes.tsx +19 -0
  261. package/.next/standalone/tower/src/components/task/task-merge-confirm-dialog.tsx +152 -0
  262. package/.next/standalone/tower/src/components/task/task-metadata.tsx +74 -0
  263. package/.next/standalone/tower/src/components/task/task-notes-panel.tsx +219 -0
  264. package/.next/standalone/tower/src/components/task/task-overview-drawer.tsx +172 -0
  265. package/.next/standalone/tower/src/components/task/task-terminal.tsx +294 -0
  266. package/.next/standalone/tower/src/components/task/terminal-portal.tsx +156 -0
  267. package/.next/standalone/tower/src/components/task/types.ts +6 -0
  268. package/.next/standalone/tower/src/components/ui/avatar.tsx +109 -0
  269. package/.next/standalone/tower/src/components/ui/badge.tsx +52 -0
  270. package/.next/standalone/tower/src/components/ui/button.tsx +58 -0
  271. package/.next/standalone/tower/src/components/ui/card.tsx +103 -0
  272. package/.next/standalone/tower/src/components/ui/command.tsx +196 -0
  273. package/.next/standalone/tower/src/components/ui/dialog.tsx +160 -0
  274. package/.next/standalone/tower/src/components/ui/dropdown-menu.tsx +268 -0
  275. package/.next/standalone/tower/src/components/ui/empty-state.tsx +26 -0
  276. package/.next/standalone/tower/src/components/ui/error-boundary.tsx +58 -0
  277. package/.next/standalone/tower/src/components/ui/input-group.tsx +158 -0
  278. package/.next/standalone/tower/src/components/ui/input.tsx +20 -0
  279. package/.next/standalone/tower/src/components/ui/label.tsx +20 -0
  280. package/.next/standalone/tower/src/components/ui/popover.tsx +90 -0
  281. package/.next/standalone/tower/src/components/ui/scroll-area.tsx +55 -0
  282. package/.next/standalone/tower/src/components/ui/segmented-control.tsx +42 -0
  283. package/.next/standalone/tower/src/components/ui/select.tsx +207 -0
  284. package/.next/standalone/tower/src/components/ui/separator.tsx +25 -0
  285. package/.next/standalone/tower/src/components/ui/sheet.tsx +138 -0
  286. package/.next/standalone/tower/src/components/ui/sonner.tsx +49 -0
  287. package/.next/standalone/tower/src/components/ui/switch.tsx +32 -0
  288. package/.next/standalone/tower/src/components/ui/tabs.tsx +82 -0
  289. package/.next/standalone/tower/src/components/ui/textarea.tsx +18 -0
  290. package/.next/standalone/tower/src/components/ui/toast.tsx +86 -0
  291. package/.next/standalone/tower/src/components/ui/tooltip.tsx +66 -0
  292. package/.next/standalone/tower/src/hooks/sse-event-reducer.ts +144 -0
  293. package/.next/standalone/tower/src/hooks/use-assistant-chat.ts +190 -0
  294. package/.next/standalone/tower/src/hooks/use-image-upload.ts +140 -0
  295. package/.next/standalone/tower/src/instrumentation.ts +18 -0
  296. package/.next/standalone/tower/src/lib/ai/adapters/cli/claude-cli-adapter.ts +166 -0
  297. package/.next/standalone/tower/src/lib/ai/capability-resolver.ts +81 -0
  298. package/.next/standalone/tower/src/lib/ai/provider-registry.ts +54 -0
  299. package/.next/standalone/tower/src/lib/ai/providers/claude.ts +19 -0
  300. package/.next/standalone/tower/src/lib/ai/providers/index.ts +12 -0
  301. package/.next/standalone/tower/src/lib/ai/types.ts +151 -0
  302. package/.next/standalone/tower/src/lib/assistant-constants.ts +2 -0
  303. package/.next/standalone/tower/src/lib/assistant-message-converter.ts +131 -0
  304. package/.next/standalone/tower/src/lib/assistant-sessions.ts +75 -0
  305. package/.next/standalone/tower/src/lib/build-multimodal-prompt.ts +53 -0
  306. package/.next/standalone/tower/src/lib/claude-session.ts +156 -0
  307. package/.next/standalone/tower/src/lib/cli-test.ts +476 -0
  308. package/.next/standalone/tower/src/lib/config-defaults.ts +121 -0
  309. package/.next/standalone/tower/src/lib/config-reader.ts +16 -0
  310. package/.next/standalone/tower/src/lib/constants.ts +26 -0
  311. package/.next/standalone/tower/src/lib/db.ts +28 -0
  312. package/.next/standalone/tower/src/lib/diff-parser.ts +132 -0
  313. package/.next/standalone/tower/src/lib/execution-summary.ts +287 -0
  314. package/.next/standalone/tower/src/lib/file-serve-client.ts +13 -0
  315. package/.next/standalone/tower/src/lib/file-serve.ts +32 -0
  316. package/.next/standalone/tower/src/lib/file-utils.ts +108 -0
  317. package/.next/standalone/tower/src/lib/fs-security.ts +22 -0
  318. package/.next/standalone/tower/src/lib/fts.ts +83 -0
  319. package/.next/standalone/tower/src/lib/git-api.ts +19 -0
  320. package/.next/standalone/tower/src/lib/git-url.ts +244 -0
  321. package/.next/standalone/tower/src/lib/i18n/en.ts +754 -0
  322. package/.next/standalone/tower/src/lib/i18n/types.ts +4 -0
  323. package/.next/standalone/tower/src/lib/i18n/zh.ts +769 -0
  324. package/.next/standalone/tower/src/lib/i18n.tsx +64 -0
  325. package/.next/standalone/tower/src/lib/init-tower.ts +129 -0
  326. package/.next/standalone/tower/src/lib/instrumentation-tasks.ts +116 -0
  327. package/.next/standalone/tower/src/lib/internal-api-guard.ts +63 -0
  328. package/.next/standalone/tower/src/lib/logger.ts +46 -0
  329. package/.next/standalone/tower/src/lib/mime-magic.ts +67 -0
  330. package/.next/standalone/tower/src/lib/platform.ts +518 -0
  331. package/.next/standalone/tower/src/lib/preview-process.ts +40 -0
  332. package/.next/standalone/tower/src/lib/pty/pty-session.ts +157 -0
  333. package/.next/standalone/tower/src/lib/pty/session-store.ts +67 -0
  334. package/.next/standalone/tower/src/lib/pty/ws-server.ts +335 -0
  335. package/.next/standalone/tower/src/lib/schemas.ts +67 -0
  336. package/.next/standalone/tower/src/lib/search.ts +225 -0
  337. package/.next/standalone/tower/src/lib/terminal-link-provider.ts +90 -0
  338. package/.next/standalone/tower/src/lib/tower-dir.ts +69 -0
  339. package/.next/standalone/tower/src/lib/utils.ts +20 -0
  340. package/.next/standalone/tower/src/lib/worktree.ts +184 -0
  341. package/.next/standalone/tower/src/mcp/db.ts +11 -0
  342. package/.next/standalone/tower/src/mcp/index.ts +15 -0
  343. package/.next/standalone/tower/src/mcp/server.ts +52 -0
  344. package/.next/standalone/tower/src/mcp/tools/knowledge-tools.ts +100 -0
  345. package/.next/standalone/tower/src/mcp/tools/label-tools.ts +70 -0
  346. package/.next/standalone/tower/src/mcp/tools/note-asset-tools.ts +271 -0
  347. package/.next/standalone/tower/src/mcp/tools/project-tools.ts +79 -0
  348. package/.next/standalone/tower/src/mcp/tools/report-tools.ts +214 -0
  349. package/.next/standalone/tower/src/mcp/tools/search-tools.ts +32 -0
  350. package/.next/standalone/tower/src/mcp/tools/task-tools.ts +250 -0
  351. package/.next/standalone/tower/src/mcp/tools/terminal-tools.ts +154 -0
  352. package/.next/standalone/tower/src/mcp/tools/workspace-tools.ts +73 -0
  353. package/.next/standalone/tower/src/stores/board-store.ts +46 -0
  354. package/.next/standalone/tower/src/stores/task-execution-store.ts +41 -0
  355. package/.next/standalone/tower/src/types/index.ts +36 -0
  356. package/.next/standalone/tower/tests/e2e/chat-flow.spec.ts +249 -0
  357. package/.next/standalone/tower/tests/e2e/notes-assets.spec.ts +287 -0
  358. package/.next/standalone/tower/tests/e2e/search.spec.ts +186 -0
  359. package/.next/standalone/tower/tests/e2e/settings-flow.spec.ts +250 -0
  360. package/.next/standalone/tower/tests/e2e/settings.spec.ts +261 -0
  361. package/.next/standalone/tower/tests/e2e/smoke.spec.ts +317 -0
  362. package/.next/standalone/tower/tests/e2e/task-flow.spec.ts +287 -0
  363. package/.next/standalone/tower/tests/e2e/workbench.spec.ts +307 -0
  364. package/.next/standalone/tower/tests/setup.ts +15 -0
  365. package/.next/standalone/tower/tests/unit/actions/agent-actions.test.ts +157 -0
  366. package/.next/standalone/tower/tests/unit/actions/config-actions.test.ts +170 -0
  367. package/.next/standalone/tower/tests/unit/actions/file-actions.test.ts +283 -0
  368. package/.next/standalone/tower/tests/unit/actions/git-actions.test.ts +34 -0
  369. package/.next/standalone/tower/tests/unit/actions/preview-actions.test.ts +177 -0
  370. package/.next/standalone/tower/tests/unit/actions/search-actions.test.ts +358 -0
  371. package/.next/standalone/tower/tests/unit/actions/task-actions.test.ts +173 -0
  372. package/.next/standalone/tower/tests/unit/api/diff-route.test.ts +9 -0
  373. package/.next/standalone/tower/tests/unit/api/file-serving.test.ts +88 -0
  374. package/.next/standalone/tower/tests/unit/api/merge-route.test.ts +9 -0
  375. package/.next/standalone/tower/tests/unit/api/stream-persist-result.test.ts +7 -0
  376. package/.next/standalone/tower/tests/unit/api/stream-send-back.test.ts +7 -0
  377. package/.next/standalone/tower/tests/unit/components/asset-item.test.tsx +105 -0
  378. package/.next/standalone/tower/tests/unit/components/asset-list.test.tsx +51 -0
  379. package/.next/standalone/tower/tests/unit/components/assets/asset-upload.test.tsx +70 -0
  380. package/.next/standalone/tower/tests/unit/components/board-stats.test.tsx +32 -0
  381. package/.next/standalone/tower/tests/unit/components/category-filter.test.tsx +58 -0
  382. package/.next/standalone/tower/tests/unit/components/cli-adapter-tester.test.tsx +160 -0
  383. package/.next/standalone/tower/tests/unit/components/create-task-dialog.test.tsx +162 -0
  384. package/.next/standalone/tower/tests/unit/components/file-tree.test.tsx +172 -0
  385. package/.next/standalone/tower/tests/unit/components/note-card.test.tsx +71 -0
  386. package/.next/standalone/tower/tests/unit/components/note-editor.test.tsx +39 -0
  387. package/.next/standalone/tower/tests/unit/components/prompts-config.test.tsx +200 -0
  388. package/.next/standalone/tower/tests/unit/components/search-dialog.test.tsx +223 -0
  389. package/.next/standalone/tower/tests/unit/components/system-config.test.tsx +32 -0
  390. package/.next/standalone/tower/tests/unit/hooks/hook-registration.test.ts +89 -0
  391. package/.next/standalone/tower/tests/unit/hooks/stop-hook.test.ts +108 -0
  392. package/.next/standalone/tower/tests/unit/lib/asset-actions.test.ts +257 -0
  393. package/.next/standalone/tower/tests/unit/lib/file-utils.test.ts +102 -0
  394. package/.next/standalone/tower/tests/unit/lib/fs-security.test.ts +34 -0
  395. package/.next/standalone/tower/tests/unit/lib/fts.test.ts +214 -0
  396. package/.next/standalone/tower/tests/unit/lib/git-url.test.ts +258 -0
  397. package/.next/standalone/tower/tests/unit/lib/instrumentation.test.ts +86 -0
  398. package/.next/standalone/tower/tests/unit/lib/local-path-to-api-url.test.ts +40 -0
  399. package/.next/standalone/tower/tests/unit/lib/mime-magic.test.ts +95 -0
  400. package/.next/standalone/tower/tests/unit/lib/note-actions.test.ts +296 -0
  401. package/.next/standalone/tower/tests/unit/lib/preview-process-manager.test.ts +107 -0
  402. package/.next/standalone/tower/tests/unit/lib/process-manager.test.ts +10 -0
  403. package/.next/standalone/tower/tests/unit/lib/pty-session.test.ts +171 -0
  404. package/.next/standalone/tower/tests/unit/lib/search.test.ts +289 -0
  405. package/.next/standalone/tower/tests/unit/lib/session-store.test.ts +111 -0
  406. package/.next/standalone/tower/tests/unit/lib/utils.test.ts +33 -0
  407. package/.next/standalone/tower/tests/unit/lib/worktree.test.ts +190 -0
  408. package/.next/standalone/tower/tests/unit/mcp/identify-project.test.ts +217 -0
  409. package/.next/standalone/tower/tests/unit/mcp/manage-assets.test.ts +199 -0
  410. package/.next/standalone/tower/tests/unit/mcp/manage-notes.test.ts +304 -0
  411. package/.next/standalone/tower/tests/unit/mcp/search-tools.test.ts +186 -0
  412. package/.next/standalone/tower/tests/unit/missions-merge.test.ts +43 -0
  413. package/.next/standalone/tower/tower-studio-0.1.1.tgz +0 -0
  414. package/.next/standalone/tower/tsconfig.json +34 -0
  415. package/.next/standalone/tower/vitest.config.ts +17 -0
  416. package/.next/static/chunks/024pdsc27tjdd.js +5 -0
  417. package/.next/static/chunks/02dd83gbiv778.js +1 -0
  418. package/.next/static/chunks/0b6us7uq72u-d.js +1 -0
  419. package/.next/static/chunks/0gb82g.6g90mn.js +1 -0
  420. package/.next/static/chunks/0gnm22yv~f54b.js +1 -0
  421. package/.next/static/chunks/0lnhjf2a~jaco.js +83 -0
  422. package/.next/static/chunks/0t16ai99uv4j3.js +1 -0
  423. package/.next/static/chunks/0xzdu87n_for1.js +5 -0
  424. package/.next/static/chunks/0y0tdl.rl6v1u.js +1 -0
  425. package/.next/static/chunks/0z4y0x1ifgy.e.js +1 -0
  426. package/.next/static/chunks/102ijqpvi0z-d.js +1 -0
  427. package/.next/static/chunks/11_e3-j5gzbj4.js +1 -0
  428. package/.next/static/chunks/14.ims4y7osot.js +1 -0
  429. package/.next/static/chunks/169po6_~f3-d5.js +1 -0
  430. package/.next/static/chunks/176n7f13ve~a9.js +1 -0
  431. package/bin/tower.mjs +15 -5
  432. package/next.config.ts +7 -0
  433. package/package.json +4 -4
  434. package/.next/BUILD_ID +0 -1
  435. package/.next/app-path-routes-manifest.json +0 -41
  436. package/.next/build/chunks/0kjx__pnpm_05m.mc_._.js +0 -6681
  437. package/.next/build/chunks/[root-of-the-server]__0a5dngl._.js +0 -206
  438. package/.next/build/chunks/[root-of-the-server]__13e2v6w._.js +0 -500
  439. package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_0y_r.ay._.js +0 -13
  440. package/.next/build/chunks/[turbopack]_runtime.js +0 -890
  441. package/.next/build/package.json +0 -1
  442. package/.next/build/postcss.js +0 -6
  443. package/.next/build-manifest.json +0 -22
  444. package/.next/cache/.previewinfo +0 -1
  445. package/.next/cache/.rscinfo +0 -1
  446. package/.next/cache/.tsbuildinfo +0 -1
  447. package/.next/diagnostics/build-diagnostics.json +0 -6
  448. package/.next/diagnostics/framework.json +0 -1
  449. package/.next/diagnostics/route-bundle-stats.json +0 -299
  450. package/.next/export-marker.json +0 -6
  451. package/.next/fallback-build-manifest.json +0 -13
  452. package/.next/images-manifest.json +0 -68
  453. package/.next/next-minimal-server.js.nft.json +0 -1
  454. package/.next/next-server.js.nft.json +0 -1
  455. package/.next/package.json +0 -1
  456. package/.next/prerender-manifest.json +0 -278
  457. package/.next/required-server-files.js +0 -338
  458. package/.next/required-server-files.json +0 -338
  459. package/.next/routes-manifest.json +0 -312
  460. package/.next/server/app/_global-error/page/app-paths-manifest.json +0 -3
  461. package/.next/server/app/_global-error/page/build-manifest.json +0 -18
  462. package/.next/server/app/_global-error/page/next-font-manifest.json +0 -6
  463. package/.next/server/app/_global-error/page/react-loadable-manifest.json +0 -1
  464. package/.next/server/app/_global-error/page/server-reference-manifest.json +0 -4
  465. package/.next/server/app/_global-error/page.js +0 -12
  466. package/.next/server/app/_global-error/page.js.nft.json +0 -1
  467. package/.next/server/app/_global-error/page_client-reference-manifest.js +0 -3
  468. package/.next/server/app/_global-error.html +0 -1
  469. package/.next/server/app/_global-error.meta +0 -15
  470. package/.next/server/app/_global-error.rsc +0 -15
  471. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +0 -5
  472. package/.next/server/app/_global-error.segments/_full.segment.rsc +0 -15
  473. package/.next/server/app/_global-error.segments/_head.segment.rsc +0 -6
  474. package/.next/server/app/_global-error.segments/_index.segment.rsc +0 -5
  475. package/.next/server/app/_global-error.segments/_tree.segment.rsc +0 -1
  476. package/.next/server/app/_not-found/page/app-paths-manifest.json +0 -3
  477. package/.next/server/app/_not-found/page/build-manifest.json +0 -18
  478. package/.next/server/app/_not-found/page/next-font-manifest.json +0 -11
  479. package/.next/server/app/_not-found/page/react-loadable-manifest.json +0 -16
  480. package/.next/server/app/_not-found/page/server-reference-manifest.json +0 -233
  481. package/.next/server/app/_not-found/page.js +0 -20
  482. package/.next/server/app/_not-found/page.js.nft.json +0 -1
  483. package/.next/server/app/_not-found/page_client-reference-manifest.js +0 -3
  484. package/.next/server/app/_not-found.html +0 -1
  485. package/.next/server/app/_not-found.meta +0 -16
  486. package/.next/server/app/_not-found.rsc +0 -24
  487. package/.next/server/app/_not-found.segments/_full.segment.rsc +0 -24
  488. package/.next/server/app/_not-found.segments/_head.segment.rsc +0 -6
  489. package/.next/server/app/_not-found.segments/_index.segment.rsc +0 -12
  490. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +0 -5
  491. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +0 -5
  492. package/.next/server/app/_not-found.segments/_tree.segment.rsc +0 -4
  493. package/.next/server/app/api/adapters/test/route/app-paths-manifest.json +0 -3
  494. package/.next/server/app/api/adapters/test/route/build-manifest.json +0 -9
  495. package/.next/server/app/api/adapters/test/route/server-reference-manifest.json +0 -4
  496. package/.next/server/app/api/adapters/test/route.js +0 -9
  497. package/.next/server/app/api/adapters/test/route.js.nft.json +0 -1
  498. package/.next/server/app/api/adapters/test/route_client-reference-manifest.js +0 -3
  499. package/.next/server/app/api/browse-fs/route/app-paths-manifest.json +0 -3
  500. package/.next/server/app/api/browse-fs/route/build-manifest.json +0 -9
  501. package/.next/server/app/api/browse-fs/route/server-reference-manifest.json +0 -4
  502. package/.next/server/app/api/browse-fs/route.js +0 -7
  503. package/.next/server/app/api/browse-fs/route.js.nft.json +0 -1
  504. package/.next/server/app/api/browse-fs/route_client-reference-manifest.js +0 -3
  505. package/.next/server/app/api/files/assets/[projectId]/[filename]/route/app-paths-manifest.json +0 -3
  506. package/.next/server/app/api/files/assets/[projectId]/[filename]/route/build-manifest.json +0 -9
  507. package/.next/server/app/api/files/assets/[projectId]/[filename]/route/server-reference-manifest.json +0 -4
  508. package/.next/server/app/api/files/assets/[projectId]/[filename]/route.js +0 -7
  509. package/.next/server/app/api/files/assets/[projectId]/[filename]/route.js.nft.json +0 -1
  510. package/.next/server/app/api/files/assets/[projectId]/[filename]/route_client-reference-manifest.js +0 -3
  511. package/.next/server/app/api/git/route/app-paths-manifest.json +0 -3
  512. package/.next/server/app/api/git/route/build-manifest.json +0 -9
  513. package/.next/server/app/api/git/route/server-reference-manifest.json +0 -4
  514. package/.next/server/app/api/git/route.js +0 -8
  515. package/.next/server/app/api/git/route.js.nft.json +0 -1
  516. package/.next/server/app/api/git/route_client-reference-manifest.js +0 -3
  517. package/.next/server/app/api/internal/assets/[projectId]/[filename]/route/app-paths-manifest.json +0 -3
  518. package/.next/server/app/api/internal/assets/[projectId]/[filename]/route/build-manifest.json +0 -9
  519. package/.next/server/app/api/internal/assets/[projectId]/[filename]/route/server-reference-manifest.json +0 -4
  520. package/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js +0 -7
  521. package/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js.nft.json +0 -1
  522. package/.next/server/app/api/internal/assets/[projectId]/[filename]/route_client-reference-manifest.js +0 -3
  523. package/.next/server/app/api/internal/assets/reveal/route/app-paths-manifest.json +0 -3
  524. package/.next/server/app/api/internal/assets/reveal/route/build-manifest.json +0 -9
  525. package/.next/server/app/api/internal/assets/reveal/route/server-reference-manifest.json +0 -4
  526. package/.next/server/app/api/internal/assets/reveal/route.js +0 -7
  527. package/.next/server/app/api/internal/assets/reveal/route.js.nft.json +0 -1
  528. package/.next/server/app/api/internal/assets/reveal/route_client-reference-manifest.js +0 -3
  529. package/.next/server/app/api/internal/assistant/chat/route/app-paths-manifest.json +0 -3
  530. package/.next/server/app/api/internal/assistant/chat/route/build-manifest.json +0 -9
  531. package/.next/server/app/api/internal/assistant/chat/route/server-reference-manifest.json +0 -4
  532. package/.next/server/app/api/internal/assistant/chat/route.js +0 -7
  533. package/.next/server/app/api/internal/assistant/chat/route.js.nft.json +0 -1
  534. package/.next/server/app/api/internal/assistant/chat/route_client-reference-manifest.js +0 -3
  535. package/.next/server/app/api/internal/assistant/images/route/app-paths-manifest.json +0 -3
  536. package/.next/server/app/api/internal/assistant/images/route/build-manifest.json +0 -9
  537. package/.next/server/app/api/internal/assistant/images/route/server-reference-manifest.json +0 -4
  538. package/.next/server/app/api/internal/assistant/images/route.js +0 -9
  539. package/.next/server/app/api/internal/assistant/images/route.js.nft.json +0 -1
  540. package/.next/server/app/api/internal/assistant/images/route_client-reference-manifest.js +0 -3
  541. package/.next/server/app/api/internal/assistant/route/app-paths-manifest.json +0 -3
  542. package/.next/server/app/api/internal/assistant/route/build-manifest.json +0 -9
  543. package/.next/server/app/api/internal/assistant/route/server-reference-manifest.json +0 -4
  544. package/.next/server/app/api/internal/assistant/route.js +0 -7
  545. package/.next/server/app/api/internal/assistant/route.js.nft.json +0 -1
  546. package/.next/server/app/api/internal/assistant/route_client-reference-manifest.js +0 -3
  547. package/.next/server/app/api/internal/assistant/sessions/route/app-paths-manifest.json +0 -3
  548. package/.next/server/app/api/internal/assistant/sessions/route/build-manifest.json +0 -9
  549. package/.next/server/app/api/internal/assistant/sessions/route/server-reference-manifest.json +0 -4
  550. package/.next/server/app/api/internal/assistant/sessions/route.js +0 -7
  551. package/.next/server/app/api/internal/assistant/sessions/route.js.nft.json +0 -1
  552. package/.next/server/app/api/internal/assistant/sessions/route_client-reference-manifest.js +0 -3
  553. package/.next/server/app/api/internal/cache/[...segments]/route/app-paths-manifest.json +0 -3
  554. package/.next/server/app/api/internal/cache/[...segments]/route/build-manifest.json +0 -9
  555. package/.next/server/app/api/internal/cache/[...segments]/route/server-reference-manifest.json +0 -4
  556. package/.next/server/app/api/internal/cache/[...segments]/route.js +0 -7
  557. package/.next/server/app/api/internal/cache/[...segments]/route.js.nft.json +0 -1
  558. package/.next/server/app/api/internal/cache/[...segments]/route_client-reference-manifest.js +0 -3
  559. package/.next/server/app/api/internal/hooks/install/route/app-paths-manifest.json +0 -3
  560. package/.next/server/app/api/internal/hooks/install/route/build-manifest.json +0 -9
  561. package/.next/server/app/api/internal/hooks/install/route/server-reference-manifest.json +0 -4
  562. package/.next/server/app/api/internal/hooks/install/route.js +0 -7
  563. package/.next/server/app/api/internal/hooks/install/route.js.nft.json +0 -1
  564. package/.next/server/app/api/internal/hooks/install/route_client-reference-manifest.js +0 -3
  565. package/.next/server/app/api/internal/hooks/session/route/app-paths-manifest.json +0 -3
  566. package/.next/server/app/api/internal/hooks/session/route/build-manifest.json +0 -9
  567. package/.next/server/app/api/internal/hooks/session/route/server-reference-manifest.json +0 -4
  568. package/.next/server/app/api/internal/hooks/session/route.js +0 -7
  569. package/.next/server/app/api/internal/hooks/session/route.js.nft.json +0 -1
  570. package/.next/server/app/api/internal/hooks/session/route_client-reference-manifest.js +0 -3
  571. package/.next/server/app/api/internal/hooks/stop/route/app-paths-manifest.json +0 -3
  572. package/.next/server/app/api/internal/hooks/stop/route/build-manifest.json +0 -9
  573. package/.next/server/app/api/internal/hooks/stop/route/server-reference-manifest.json +0 -4
  574. package/.next/server/app/api/internal/hooks/stop/route.js +0 -8
  575. package/.next/server/app/api/internal/hooks/stop/route.js.nft.json +0 -1
  576. package/.next/server/app/api/internal/hooks/stop/route_client-reference-manifest.js +0 -3
  577. package/.next/server/app/api/internal/hooks/upload/route/app-paths-manifest.json +0 -3
  578. package/.next/server/app/api/internal/hooks/upload/route/build-manifest.json +0 -9
  579. package/.next/server/app/api/internal/hooks/upload/route/server-reference-manifest.json +0 -4
  580. package/.next/server/app/api/internal/hooks/upload/route.js +0 -7
  581. package/.next/server/app/api/internal/hooks/upload/route.js.nft.json +0 -1
  582. package/.next/server/app/api/internal/hooks/upload/route_client-reference-manifest.js +0 -3
  583. package/.next/server/app/api/internal/notifications/pending/route/app-paths-manifest.json +0 -3
  584. package/.next/server/app/api/internal/notifications/pending/route/build-manifest.json +0 -9
  585. package/.next/server/app/api/internal/notifications/pending/route/server-reference-manifest.json +0 -4
  586. package/.next/server/app/api/internal/notifications/pending/route.js +0 -7
  587. package/.next/server/app/api/internal/notifications/pending/route.js.nft.json +0 -1
  588. package/.next/server/app/api/internal/notifications/pending/route_client-reference-manifest.js +0 -3
  589. package/.next/server/app/api/internal/terminal/[taskId]/buffer/route/app-paths-manifest.json +0 -3
  590. package/.next/server/app/api/internal/terminal/[taskId]/buffer/route/build-manifest.json +0 -9
  591. package/.next/server/app/api/internal/terminal/[taskId]/buffer/route/server-reference-manifest.json +0 -4
  592. package/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js +0 -8
  593. package/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js.nft.json +0 -1
  594. package/.next/server/app/api/internal/terminal/[taskId]/buffer/route_client-reference-manifest.js +0 -3
  595. package/.next/server/app/api/internal/terminal/[taskId]/input/route/app-paths-manifest.json +0 -3
  596. package/.next/server/app/api/internal/terminal/[taskId]/input/route/build-manifest.json +0 -9
  597. package/.next/server/app/api/internal/terminal/[taskId]/input/route/server-reference-manifest.json +0 -4
  598. package/.next/server/app/api/internal/terminal/[taskId]/input/route.js +0 -8
  599. package/.next/server/app/api/internal/terminal/[taskId]/input/route.js.nft.json +0 -1
  600. package/.next/server/app/api/internal/terminal/[taskId]/input/route_client-reference-manifest.js +0 -3
  601. package/.next/server/app/api/internal/terminal/[taskId]/start/route/app-paths-manifest.json +0 -3
  602. package/.next/server/app/api/internal/terminal/[taskId]/start/route/build-manifest.json +0 -9
  603. package/.next/server/app/api/internal/terminal/[taskId]/start/route/server-reference-manifest.json +0 -4
  604. package/.next/server/app/api/internal/terminal/[taskId]/start/route.js +0 -10
  605. package/.next/server/app/api/internal/terminal/[taskId]/start/route.js.nft.json +0 -1
  606. package/.next/server/app/api/internal/terminal/[taskId]/start/route_client-reference-manifest.js +0 -3
  607. package/.next/server/app/api/tasks/[taskId]/diff/route/app-paths-manifest.json +0 -3
  608. package/.next/server/app/api/tasks/[taskId]/diff/route/build-manifest.json +0 -9
  609. package/.next/server/app/api/tasks/[taskId]/diff/route/server-reference-manifest.json +0 -4
  610. package/.next/server/app/api/tasks/[taskId]/diff/route.js +0 -8
  611. package/.next/server/app/api/tasks/[taskId]/diff/route.js.nft.json +0 -1
  612. package/.next/server/app/api/tasks/[taskId]/diff/route_client-reference-manifest.js +0 -3
  613. package/.next/server/app/api/tasks/[taskId]/merge/route/app-paths-manifest.json +0 -3
  614. package/.next/server/app/api/tasks/[taskId]/merge/route/build-manifest.json +0 -9
  615. package/.next/server/app/api/tasks/[taskId]/merge/route/server-reference-manifest.json +0 -4
  616. package/.next/server/app/api/tasks/[taskId]/merge/route.js +0 -9
  617. package/.next/server/app/api/tasks/[taskId]/merge/route.js.nft.json +0 -1
  618. package/.next/server/app/api/tasks/[taskId]/merge/route_client-reference-manifest.js +0 -3
  619. package/.next/server/app/apple-icon.png/route/app-paths-manifest.json +0 -3
  620. package/.next/server/app/apple-icon.png/route/build-manifest.json +0 -9
  621. package/.next/server/app/apple-icon.png/route.js +0 -8
  622. package/.next/server/app/apple-icon.png/route.js.nft.json +0 -1
  623. package/.next/server/app/apple-icon.png.meta +0 -1
  624. package/.next/server/app/favicon.ico/route/app-paths-manifest.json +0 -3
  625. package/.next/server/app/favicon.ico/route/build-manifest.json +0 -9
  626. package/.next/server/app/favicon.ico/route.js +0 -8
  627. package/.next/server/app/favicon.ico/route.js.nft.json +0 -1
  628. package/.next/server/app/favicon.ico.meta +0 -1
  629. package/.next/server/app/icon0.svg/route/app-paths-manifest.json +0 -3
  630. package/.next/server/app/icon0.svg/route/build-manifest.json +0 -9
  631. package/.next/server/app/icon0.svg/route.js +0 -8
  632. package/.next/server/app/icon0.svg/route.js.nft.json +0 -1
  633. package/.next/server/app/icon0.svg.meta +0 -1
  634. package/.next/server/app/icon1.png/route/app-paths-manifest.json +0 -3
  635. package/.next/server/app/icon1.png/route/build-manifest.json +0 -9
  636. package/.next/server/app/icon1.png/route.js +0 -8
  637. package/.next/server/app/icon1.png/route.js.nft.json +0 -1
  638. package/.next/server/app/icon1.png.meta +0 -1
  639. package/.next/server/app/index.html +0 -1
  640. package/.next/server/app/index.meta +0 -16
  641. package/.next/server/app/index.rsc +0 -25
  642. package/.next/server/app/index.segments/__PAGE__.segment.rsc +0 -6
  643. package/.next/server/app/index.segments/_full.segment.rsc +0 -25
  644. package/.next/server/app/index.segments/_head.segment.rsc +0 -6
  645. package/.next/server/app/index.segments/_index.segment.rsc +0 -12
  646. package/.next/server/app/index.segments/_tree.segment.rsc +0 -6
  647. package/.next/server/app/manifest.json/route/app-paths-manifest.json +0 -3
  648. package/.next/server/app/manifest.json/route/build-manifest.json +0 -9
  649. package/.next/server/app/manifest.json/route.js +0 -7
  650. package/.next/server/app/manifest.json/route.js.nft.json +0 -1
  651. package/.next/server/app/manifest.json.meta +0 -1
  652. package/.next/server/app/missions/page/app-paths-manifest.json +0 -3
  653. package/.next/server/app/missions/page/build-manifest.json +0 -18
  654. package/.next/server/app/missions/page/next-font-manifest.json +0 -11
  655. package/.next/server/app/missions/page/react-loadable-manifest.json +0 -16
  656. package/.next/server/app/missions/page/server-reference-manifest.json +0 -401
  657. package/.next/server/app/missions/page.js +0 -22
  658. package/.next/server/app/missions/page.js.nft.json +0 -1
  659. package/.next/server/app/missions/page_client-reference-manifest.js +0 -3
  660. package/.next/server/app/onboarding/page/app-paths-manifest.json +0 -3
  661. package/.next/server/app/onboarding/page/build-manifest.json +0 -18
  662. package/.next/server/app/onboarding/page/next-font-manifest.json +0 -11
  663. package/.next/server/app/onboarding/page/react-loadable-manifest.json +0 -16
  664. package/.next/server/app/onboarding/page/server-reference-manifest.json +0 -233
  665. package/.next/server/app/onboarding/page.js +0 -21
  666. package/.next/server/app/onboarding/page.js.nft.json +0 -1
  667. package/.next/server/app/onboarding/page_client-reference-manifest.js +0 -3
  668. package/.next/server/app/onboarding.html +0 -1
  669. package/.next/server/app/onboarding.meta +0 -15
  670. package/.next/server/app/onboarding.rsc +0 -30
  671. package/.next/server/app/onboarding.segments/_full.segment.rsc +0 -30
  672. package/.next/server/app/onboarding.segments/_head.segment.rsc +0 -6
  673. package/.next/server/app/onboarding.segments/_index.segment.rsc +0 -12
  674. package/.next/server/app/onboarding.segments/_tree.segment.rsc +0 -6
  675. package/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +0 -9
  676. package/.next/server/app/onboarding.segments/onboarding.segment.rsc +0 -5
  677. package/.next/server/app/page/app-paths-manifest.json +0 -3
  678. package/.next/server/app/page/build-manifest.json +0 -18
  679. package/.next/server/app/page/next-font-manifest.json +0 -11
  680. package/.next/server/app/page/react-loadable-manifest.json +0 -16
  681. package/.next/server/app/page/server-reference-manifest.json +0 -233
  682. package/.next/server/app/page.js +0 -21
  683. package/.next/server/app/page.js.nft.json +0 -1
  684. package/.next/server/app/page_client-reference-manifest.js +0 -3
  685. package/.next/server/app/settings/page/app-paths-manifest.json +0 -3
  686. package/.next/server/app/settings/page/build-manifest.json +0 -18
  687. package/.next/server/app/settings/page/next-font-manifest.json +0 -11
  688. package/.next/server/app/settings/page/react-loadable-manifest.json +0 -16
  689. package/.next/server/app/settings/page/server-reference-manifest.json +0 -341
  690. package/.next/server/app/settings/page.js +0 -21
  691. package/.next/server/app/settings/page.js.nft.json +0 -1
  692. package/.next/server/app/settings/page_client-reference-manifest.js +0 -3
  693. package/.next/server/app/settings.html +0 -1
  694. package/.next/server/app/settings.meta +0 -15
  695. package/.next/server/app/settings.rsc +0 -30
  696. package/.next/server/app/settings.segments/_full.segment.rsc +0 -30
  697. package/.next/server/app/settings.segments/_head.segment.rsc +0 -6
  698. package/.next/server/app/settings.segments/_index.segment.rsc +0 -12
  699. package/.next/server/app/settings.segments/_tree.segment.rsc +0 -6
  700. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +0 -9
  701. package/.next/server/app/settings.segments/settings.segment.rsc +0 -5
  702. package/.next/server/app/workspaces/[workspaceId]/archive/page/app-paths-manifest.json +0 -3
  703. package/.next/server/app/workspaces/[workspaceId]/archive/page/build-manifest.json +0 -18
  704. package/.next/server/app/workspaces/[workspaceId]/archive/page/next-font-manifest.json +0 -11
  705. package/.next/server/app/workspaces/[workspaceId]/archive/page/react-loadable-manifest.json +0 -16
  706. package/.next/server/app/workspaces/[workspaceId]/archive/page/server-reference-manifest.json +0 -497
  707. package/.next/server/app/workspaces/[workspaceId]/archive/page.js +0 -21
  708. package/.next/server/app/workspaces/[workspaceId]/archive/page.js.nft.json +0 -1
  709. package/.next/server/app/workspaces/[workspaceId]/archive/page_client-reference-manifest.js +0 -3
  710. package/.next/server/app/workspaces/[workspaceId]/assets/page/app-paths-manifest.json +0 -3
  711. package/.next/server/app/workspaces/[workspaceId]/assets/page/build-manifest.json +0 -18
  712. package/.next/server/app/workspaces/[workspaceId]/assets/page/next-font-manifest.json +0 -11
  713. package/.next/server/app/workspaces/[workspaceId]/assets/page/react-loadable-manifest.json +0 -16
  714. package/.next/server/app/workspaces/[workspaceId]/assets/page/server-reference-manifest.json +0 -461
  715. package/.next/server/app/workspaces/[workspaceId]/assets/page.js +0 -21
  716. package/.next/server/app/workspaces/[workspaceId]/assets/page.js.nft.json +0 -1
  717. package/.next/server/app/workspaces/[workspaceId]/assets/page_client-reference-manifest.js +0 -3
  718. package/.next/server/app/workspaces/[workspaceId]/notes/page/app-paths-manifest.json +0 -3
  719. package/.next/server/app/workspaces/[workspaceId]/notes/page/build-manifest.json +0 -18
  720. package/.next/server/app/workspaces/[workspaceId]/notes/page/next-font-manifest.json +0 -11
  721. package/.next/server/app/workspaces/[workspaceId]/notes/page/react-loadable-manifest.json +0 -16
  722. package/.next/server/app/workspaces/[workspaceId]/notes/page/server-reference-manifest.json +0 -401
  723. package/.next/server/app/workspaces/[workspaceId]/notes/page.js +0 -21
  724. package/.next/server/app/workspaces/[workspaceId]/notes/page.js.nft.json +0 -1
  725. package/.next/server/app/workspaces/[workspaceId]/notes/page_client-reference-manifest.js +0 -3
  726. package/.next/server/app/workspaces/[workspaceId]/page/app-paths-manifest.json +0 -3
  727. package/.next/server/app/workspaces/[workspaceId]/page/build-manifest.json +0 -18
  728. package/.next/server/app/workspaces/[workspaceId]/page/next-font-manifest.json +0 -11
  729. package/.next/server/app/workspaces/[workspaceId]/page/react-loadable-manifest.json +0 -16
  730. package/.next/server/app/workspaces/[workspaceId]/page/server-reference-manifest.json +0 -569
  731. package/.next/server/app/workspaces/[workspaceId]/page.js +0 -22
  732. package/.next/server/app/workspaces/[workspaceId]/page.js.nft.json +0 -1
  733. package/.next/server/app/workspaces/[workspaceId]/page_client-reference-manifest.js +0 -3
  734. package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/app-paths-manifest.json +0 -3
  735. package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/build-manifest.json +0 -18
  736. package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/next-font-manifest.json +0 -11
  737. package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/react-loadable-manifest.json +0 -16
  738. package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/server-reference-manifest.json +0 -233
  739. package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js +0 -21
  740. package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js.nft.json +0 -1
  741. package/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page_client-reference-manifest.js +0 -3
  742. package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/app-paths-manifest.json +0 -3
  743. package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/build-manifest.json +0 -18
  744. package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/next-font-manifest.json +0 -11
  745. package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/react-loadable-manifest.json +0 -22
  746. package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/server-reference-manifest.json +0 -581
  747. package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js +0 -23
  748. package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js.nft.json +0 -1
  749. package/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page_client-reference-manifest.js +0 -3
  750. package/.next/server/app/workspaces/page/app-paths-manifest.json +0 -3
  751. package/.next/server/app/workspaces/page/build-manifest.json +0 -18
  752. package/.next/server/app/workspaces/page/next-font-manifest.json +0 -11
  753. package/.next/server/app/workspaces/page/react-loadable-manifest.json +0 -16
  754. package/.next/server/app/workspaces/page/server-reference-manifest.json +0 -329
  755. package/.next/server/app/workspaces/page.js +0 -21
  756. package/.next/server/app/workspaces/page.js.nft.json +0 -1
  757. package/.next/server/app/workspaces/page_client-reference-manifest.js +0 -3
  758. package/.next/server/app-paths-manifest.json +0 -41
  759. package/.next/server/chunks/03j-_@anthropic-ai_claude-agent-sdk_sdk_mjs_04597t~._.js +0 -85
  760. package/.next/server/chunks/0cve_next-internal_server_app_api_internal_cache_[___segments]_route_actions_09n1sa3.js +0 -3
  761. package/.next/server/chunks/0tp-_server_app_api_files_assets_[projectId]_[filename]_route_actions_02i2urs.js +0 -3
  762. package/.next/server/chunks/0tp-_server_app_api_internal_assets_[projectId]_[filename]_route_actions_0kjz576.js +0 -3
  763. package/.next/server/chunks/0tp-_server_app_api_internal_notifications_pending_route_actions_08bx38r.js +0 -3
  764. package/.next/server/chunks/0tp-_server_app_api_internal_terminal_[taskId]_buffer_route_actions_0bpyf5x.js +0 -3
  765. package/.next/server/chunks/0tp-_server_app_api_internal_terminal_[taskId]_input_route_actions_0alu32r.js +0 -3
  766. package/.next/server/chunks/0tp-_server_app_api_internal_terminal_[taskId]_start_route_actions_0swqog2.js +0 -3
  767. package/.next/server/chunks/0w1v_zod_v4_classic_external_0m-7hz_.js +0 -39
  768. package/.next/server/chunks/0~.g__next-internal_server_app_api_internal_assistant_chat_route_actions_0x-qbrh.js +0 -3
  769. package/.next/server/chunks/0~.g__next-internal_server_app_api_internal_assistant_images_route_actions_0vws40t.js +0 -3
  770. package/.next/server/chunks/0~.g__next-internal_server_app_api_internal_assistant_sessions_route_actions_0p09rcp.js +0 -3
  771. package/.next/server/chunks/10ge_next_dist_08.3req._.js +0 -13
  772. package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_00gmiw_.js +0 -3
  773. package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_0jwpolf.js +0 -3
  774. package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_0liabcf.js +0 -3
  775. package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_0z9_0_i.js +0 -3
  776. package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_13w3ubu.js +0 -3
  777. package/.next/server/chunks/10ge_next_dist_esm_build_templates_app-route_13~vb_i.js +0 -4
  778. package/.next/server/chunks/[externals]__02xkqim._.js +0 -3
  779. package/.next/server/chunks/[externals]__09oeovy._.js +0 -3
  780. package/.next/server/chunks/[externals]__0~rg.xo._.js +0 -3
  781. package/.next/server/chunks/[externals]__11rejr-._.js +0 -3
  782. package/.next/server/chunks/[externals]_child_process_0pwkpv9._.js +0 -3
  783. package/.next/server/chunks/[externals]_next_dist_0g2nsos._.js +0 -3
  784. package/.next/server/chunks/[externals]_util_0wtvqkc._.js +0 -3
  785. package/.next/server/chunks/[root-of-the-server]__02p-gd5._.js +0 -3
  786. package/.next/server/chunks/[root-of-the-server]__0319djr._.js +0 -3
  787. package/.next/server/chunks/[root-of-the-server]__043lk8~._.js +0 -4
  788. package/.next/server/chunks/[root-of-the-server]__053y9tf._.js +0 -3
  789. package/.next/server/chunks/[root-of-the-server]__05pxb~w._.js +0 -20
  790. package/.next/server/chunks/[root-of-the-server]__07-am_7._.js +0 -20
  791. package/.next/server/chunks/[root-of-the-server]__09gjz6h._.js +0 -3
  792. package/.next/server/chunks/[root-of-the-server]__0_irb2s._.js +0 -3
  793. package/.next/server/chunks/[root-of-the-server]__0c4edwt._.js +0 -3
  794. package/.next/server/chunks/[root-of-the-server]__0c7y1r0._.js +0 -3
  795. package/.next/server/chunks/[root-of-the-server]__0dj34zn._.js +0 -3
  796. package/.next/server/chunks/[root-of-the-server]__0dqta7g._.js +0 -3
  797. package/.next/server/chunks/[root-of-the-server]__0j3gbp7._.js +0 -3
  798. package/.next/server/chunks/[root-of-the-server]__0ko_rm_._.js +0 -3
  799. package/.next/server/chunks/[root-of-the-server]__0miy2g.._.js +0 -3
  800. package/.next/server/chunks/[root-of-the-server]__0mt-eeb._.js +0 -3
  801. package/.next/server/chunks/[root-of-the-server]__0n-6-hc._.js +0 -3
  802. package/.next/server/chunks/[root-of-the-server]__0nur_ir._.js +0 -3
  803. package/.next/server/chunks/[root-of-the-server]__0pz60q-._.js +0 -20
  804. package/.next/server/chunks/[root-of-the-server]__0q~5ya5._.js +0 -3
  805. package/.next/server/chunks/[root-of-the-server]__0rpqx55._.js +0 -3
  806. package/.next/server/chunks/[root-of-the-server]__0sjsc63._.js +0 -4
  807. package/.next/server/chunks/[root-of-the-server]__0th.w7w._.js +0 -3
  808. package/.next/server/chunks/[root-of-the-server]__0u..agy._.js +0 -11
  809. package/.next/server/chunks/[root-of-the-server]__0umzekq._.js +0 -3
  810. package/.next/server/chunks/[root-of-the-server]__0wu61w.._.js +0 -3
  811. package/.next/server/chunks/[root-of-the-server]__11v.yk_._.js +0 -4
  812. package/.next/server/chunks/[root-of-the-server]__12._zd-._.js +0 -3
  813. package/.next/server/chunks/[root-of-the-server]__130shf~._.js +0 -3
  814. package/.next/server/chunks/[turbopack]_runtime.js +0 -903
  815. package/.next/server/chunks/ssr/03j-_@anthropic-ai_claude-agent-sdk_sdk_mjs_0kr2_y.._.js +0 -84
  816. package/.next/server/chunks/ssr/040e_@monaco-editor_react_dist_index_mjs_0t4i-ho._.js +0 -3
  817. package/.next/server/chunks/ssr/040e_@monaco-editor_react_dist_index_mjs_0z6t1fr._.js +0 -3
  818. package/.next/server/chunks/ssr/0kjx__pnpm_0g9g8h6._.js +0 -3
  819. package/.next/server/chunks/ssr/0kjx__pnpm_0l.5ii.._.js +0 -3
  820. package/.next/server/chunks/ssr/0kjx__pnpm_0wrn.h9._.js +0 -14
  821. package/.next/server/chunks/ssr/0rik_@dnd-kit_core_dist_core_esm_11giptg.js +0 -3
  822. package/.next/server/chunks/ssr/0~.g_src_app_workspaces_[workspaceId]_tasks_[taskId]_task-page-client_tsx_0bbseig._.js +0 -3
  823. package/.next/server/chunks/ssr/10ge_next_00.-vj.._.js +0 -18
  824. package/.next/server/chunks/ssr/10ge_next_dist_01n~t8z._.js +0 -6
  825. package/.next/server/chunks/ssr/10ge_next_dist_06_-w96._.js +0 -19
  826. package/.next/server/chunks/ssr/10ge_next_dist_0pw4my6._.js +0 -6
  827. package/.next/server/chunks/ssr/10ge_next_dist_0wjbiu9._.js +0 -3
  828. package/.next/server/chunks/ssr/10ge_next_dist_0~ti7jc._.js +0 -3
  829. package/.next/server/chunks/ssr/10ge_next_dist_10.ihny._.js +0 -3
  830. package/.next/server/chunks/ssr/10ge_next_dist_client_components_0--gzcy._.js +0 -3
  831. package/.next/server/chunks/ssr/10ge_next_dist_client_components_0eil7-a._.js +0 -33
  832. package/.next/server/chunks/ssr/10ge_next_dist_client_components_builtin_forbidden_0nzsnb2.js +0 -3
  833. package/.next/server/chunks/ssr/10ge_next_dist_client_components_builtin_global-error_125sopd.js +0 -3
  834. package/.next/server/chunks/ssr/10ge_next_dist_client_components_builtin_unauthorized_0z93cpe.js +0 -3
  835. package/.next/server/chunks/ssr/10ge_next_dist_compiled_0g45ze2._.js +0 -3
  836. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_080g02v.js +0 -4
  837. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_08khzah.js +0 -4
  838. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_09~o5q0.js +0 -4
  839. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0_rj_f4.js +0 -4
  840. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0c-wmj1.js +0 -4
  841. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0fjd2ua.js +0 -4
  842. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0hpuyf0.js +0 -4
  843. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0knnyic.js +0 -4
  844. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0oi86k6.js +0 -4
  845. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0rmwdra.js +0 -4
  846. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_0zgisbd.js +0 -4
  847. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_11pz1fw.js +0 -4
  848. package/.next/server/chunks/ssr/10ge_next_dist_esm_build_templates_app-page_12reczc.js +0 -4
  849. package/.next/server/chunks/ssr/119e_lucide-react_dist_esm_icons_0636jyq._.js +0 -3
  850. package/.next/server/chunks/ssr/[externals]__0of4r_r._.js +0 -3
  851. package/.next/server/chunks/ssr/[externals]__0z1ffhu._.js +0 -3
  852. package/.next/server/chunks/ssr/[externals]_child_process_0pwkpv9._.js +0 -3
  853. package/.next/server/chunks/ssr/[root-of-the-server]__0-0j_z3._.js +0 -3
  854. package/.next/server/chunks/ssr/[root-of-the-server]__0.8y0n9._.js +0 -3
  855. package/.next/server/chunks/ssr/[root-of-the-server]__0.uoh7q._.js +0 -3
  856. package/.next/server/chunks/ssr/[root-of-the-server]__01ws4-7._.js +0 -3
  857. package/.next/server/chunks/ssr/[root-of-the-server]__024-5kd._.js +0 -3
  858. package/.next/server/chunks/ssr/[root-of-the-server]__02ipahf._.js +0 -3
  859. package/.next/server/chunks/ssr/[root-of-the-server]__03.14vw._.js +0 -3
  860. package/.next/server/chunks/ssr/[root-of-the-server]__03swpls._.js +0 -3
  861. package/.next/server/chunks/ssr/[root-of-the-server]__04xn50b._.js +0 -30
  862. package/.next/server/chunks/ssr/[root-of-the-server]__05452ke._.js +0 -30
  863. package/.next/server/chunks/ssr/[root-of-the-server]__06o5v8i._.js +0 -30
  864. package/.next/server/chunks/ssr/[root-of-the-server]__06sm5cw._.js +0 -3
  865. package/.next/server/chunks/ssr/[root-of-the-server]__09m32ch._.js +0 -3
  866. package/.next/server/chunks/ssr/[root-of-the-server]__0_0kxz4._.js +0 -3
  867. package/.next/server/chunks/ssr/[root-of-the-server]__0adx8p4._.js +0 -30
  868. package/.next/server/chunks/ssr/[root-of-the-server]__0bk3s4l._.js +0 -3
  869. package/.next/server/chunks/ssr/[root-of-the-server]__0d5p5d.._.js +0 -30
  870. package/.next/server/chunks/ssr/[root-of-the-server]__0d7u1lw._.js +0 -3
  871. package/.next/server/chunks/ssr/[root-of-the-server]__0fg8.hp._.js +0 -3
  872. package/.next/server/chunks/ssr/[root-of-the-server]__0gsj3~.._.js +0 -30
  873. package/.next/server/chunks/ssr/[root-of-the-server]__0i6glcp._.js +0 -30
  874. package/.next/server/chunks/ssr/[root-of-the-server]__0ibsor_._.js +0 -3
  875. package/.next/server/chunks/ssr/[root-of-the-server]__0j5~a_o._.js +0 -3
  876. package/.next/server/chunks/ssr/[root-of-the-server]__0jgbj6l._.js +0 -3
  877. package/.next/server/chunks/ssr/[root-of-the-server]__0jux8~h._.js +0 -33
  878. package/.next/server/chunks/ssr/[root-of-the-server]__0l~dc3x._.js +0 -3
  879. package/.next/server/chunks/ssr/[root-of-the-server]__0n32nv5._.js +0 -30
  880. package/.next/server/chunks/ssr/[root-of-the-server]__0n8qufu._.js +0 -3
  881. package/.next/server/chunks/ssr/[root-of-the-server]__0ndt9h3._.js +0 -3
  882. package/.next/server/chunks/ssr/[root-of-the-server]__0p~u4y6._.js +0 -3
  883. package/.next/server/chunks/ssr/[root-of-the-server]__0q.du4s._.js +0 -3
  884. package/.next/server/chunks/ssr/[root-of-the-server]__0rs7pkn._.js +0 -3
  885. package/.next/server/chunks/ssr/[root-of-the-server]__0sysz2q._.js +0 -47
  886. package/.next/server/chunks/ssr/[root-of-the-server]__0t25~v8._.js +0 -3
  887. package/.next/server/chunks/ssr/[root-of-the-server]__0ti70do._.js +0 -3
  888. package/.next/server/chunks/ssr/[root-of-the-server]__0uevudp._.js +0 -30
  889. package/.next/server/chunks/ssr/[root-of-the-server]__0v0dk_o._.js +0 -3
  890. package/.next/server/chunks/ssr/[root-of-the-server]__0vpgotk._.js +0 -3
  891. package/.next/server/chunks/ssr/[root-of-the-server]__0wwqzmm._.js +0 -3
  892. package/.next/server/chunks/ssr/[root-of-the-server]__0xt3-qb._.js +0 -3
  893. package/.next/server/chunks/ssr/[root-of-the-server]__0y-lkvf._.js +0 -3
  894. package/.next/server/chunks/ssr/[root-of-the-server]__0zvf.ro._.js +0 -3
  895. package/.next/server/chunks/ssr/[root-of-the-server]__11m7m-q._.js +0 -3
  896. package/.next/server/chunks/ssr/[root-of-the-server]__1223b0_._.js +0 -30
  897. package/.next/server/chunks/ssr/[root-of-the-server]__12f810l._.js +0 -3
  898. package/.next/server/chunks/ssr/[root-of-the-server]__13-by9r._.js +0 -33
  899. package/.next/server/chunks/ssr/[root-of-the-server]__13-egel._.js +0 -3
  900. package/.next/server/chunks/ssr/[turbopack]_runtime.js +0 -903
  901. package/.next/server/chunks/ssr/tower_0-nwtka._.js +0 -3
  902. package/.next/server/chunks/ssr/tower_0-omr_b._.js +0 -30
  903. package/.next/server/chunks/ssr/tower_01szasw._.js +0 -3
  904. package/.next/server/chunks/ssr/tower_035l~qv._.js +0 -3
  905. package/.next/server/chunks/ssr/tower_03jazku._.js +0 -3
  906. package/.next/server/chunks/ssr/tower_0_i~57x._.js +0 -3
  907. package/.next/server/chunks/ssr/tower_0agzi_m._.js +0 -3
  908. package/.next/server/chunks/ssr/tower_0d.car1._.js +0 -30
  909. package/.next/server/chunks/ssr/tower_0egtw-7._.js +0 -30
  910. package/.next/server/chunks/ssr/tower_0h3r32m._.js +0 -30
  911. package/.next/server/chunks/ssr/tower_0kl_bfy._.js +0 -7
  912. package/.next/server/chunks/ssr/tower_0le1h0h._.js +0 -3
  913. package/.next/server/chunks/ssr/tower_0mz4ut.._.js +0 -3
  914. package/.next/server/chunks/ssr/tower_0nuj.0p._.js +0 -39
  915. package/.next/server/chunks/ssr/tower_0pcqezm._.js +0 -3
  916. package/.next/server/chunks/ssr/tower_0r7uuim._.js +0 -30
  917. package/.next/server/chunks/ssr/tower_0rdk81e._.js +0 -3
  918. package/.next/server/chunks/ssr/tower_0sojjnu._.js +0 -3
  919. package/.next/server/chunks/ssr/tower_0tc~.xl._.js +0 -30
  920. package/.next/server/chunks/ssr/tower_0tuq2iz._.js +0 -30
  921. package/.next/server/chunks/ssr/tower_0wvk~r.._.js +0 -3
  922. package/.next/server/chunks/ssr/tower_0xg_zeq._.js +0 -3
  923. package/.next/server/chunks/ssr/tower_0~oir9k._.js +0 -3
  924. package/.next/server/chunks/ssr/tower_10p15te._.js +0 -3
  925. package/.next/server/chunks/ssr/tower_10t13p4._.js +0 -6
  926. package/.next/server/chunks/ssr/tower_117pzh8._.js +0 -3
  927. package/.next/server/chunks/ssr/tower_11q5_.m._.js +0 -3
  928. package/.next/server/chunks/ssr/tower_138qlx5._.js +0 -3
  929. package/.next/server/chunks/ssr/tower__next-internal_server_app__global-error_page_actions_13t5~qk.js +0 -3
  930. package/.next/server/chunks/ssr/tower_src_0puzd-6._.js +0 -3
  931. package/.next/server/chunks/ssr/tower_src_actions_agent-actions_ts_0j.e1tn._.js +0 -4
  932. package/.next/server/chunks/ssr/tower_src_actions_file-actions_ts_0424lna._.js +0 -3
  933. package/.next/server/chunks/ssr/tower_src_app_missions_missions-client_tsx_0a9vjyr._.js +0 -3
  934. package/.next/server/chunks/ssr/tower_src_app_onboarding_page_tsx_0_3krz1._.js +0 -3
  935. package/.next/server/chunks/ssr/tower_src_app_settings_page_tsx_0vo5e-o._.js +0 -3
  936. package/.next/server/chunks/ssr/tower_src_app_workspaces_[workspaceId]_assets_assets-page-client_tsx_0zfgzhi._.js +0 -3
  937. package/.next/server/chunks/ssr/tower_src_app_workspaces_[workspaceId]_board-page-client_tsx_0kjp1u0._.js +0 -7
  938. package/.next/server/chunks/ssr/tower_src_components_ui_select_tsx_10ajx~2._.js +0 -3
  939. package/.next/server/chunks/ssr/tower_src_lib_01420_4._.js +0 -3
  940. package/.next/server/chunks/ssr/tower_src_lib_0i-zjpa._.js +0 -3
  941. package/.next/server/chunks/ssr/tower_src_lib_0ja~kdb._.js +0 -3
  942. package/.next/server/chunks/ssr/tower_src_lib_0obw2r8._.js +0 -3
  943. package/.next/server/chunks/ssr/tower_src_lib_0rgfsuf._.js +0 -3
  944. package/.next/server/chunks/ssr/tower_src_lib_constants_ts_0o218_c._.js +0 -3
  945. package/.next/server/chunks/tower_03g~ktv._.js +0 -7
  946. package/.next/server/chunks/tower_05du07.._.js +0 -10
  947. package/.next/server/chunks/tower_0a-x6m.._.js +0 -3
  948. package/.next/server/chunks/tower__next-internal_server_app_api_adapters_test_route_actions_13jw~9b.js +0 -3
  949. package/.next/server/chunks/tower__next-internal_server_app_api_browse-fs_route_actions_0k5p2xy.js +0 -3
  950. package/.next/server/chunks/tower__next-internal_server_app_api_git_route_actions_0rvpodb.js +0 -3
  951. package/.next/server/chunks/tower__next-internal_server_app_api_internal_assets_reveal_route_actions_0idwm6j.js +0 -3
  952. package/.next/server/chunks/tower__next-internal_server_app_api_internal_assistant_route_actions_0rdz1d..js +0 -3
  953. package/.next/server/chunks/tower__next-internal_server_app_api_internal_hooks_install_route_actions_06dxleu.js +0 -3
  954. package/.next/server/chunks/tower__next-internal_server_app_api_internal_hooks_session_route_actions_0wlv4lf.js +0 -3
  955. package/.next/server/chunks/tower__next-internal_server_app_api_internal_hooks_stop_route_actions_101_oub.js +0 -3
  956. package/.next/server/chunks/tower__next-internal_server_app_api_internal_hooks_upload_route_actions_0439qz_.js +0 -3
  957. package/.next/server/chunks/tower__next-internal_server_app_api_tasks_[taskId]_diff_route_actions_0nthc84.js +0 -3
  958. package/.next/server/chunks/tower__next-internal_server_app_api_tasks_[taskId]_merge_route_actions_0g.x0nb.js +0 -3
  959. package/.next/server/chunks/tower__next-internal_server_app_apple-icon_png_route_actions_0bni-sb.js +0 -3
  960. package/.next/server/chunks/tower__next-internal_server_app_favicon_ico_route_actions_0kw~xj2.js +0 -3
  961. package/.next/server/chunks/tower__next-internal_server_app_icon0_svg_route_actions_0nww9-e.js +0 -3
  962. package/.next/server/chunks/tower__next-internal_server_app_icon1_png_route_actions_09h.ywu.js +0 -3
  963. package/.next/server/chunks/tower__next-internal_server_app_manifest_json_route_actions_080ob~r.js +0 -3
  964. package/.next/server/chunks/tower_src_0..vg-t._.js +0 -3
  965. package/.next/server/chunks/tower_src_05rqj.1._.js +0 -3
  966. package/.next/server/chunks/tower_src_lib_0uok6j3._.js +0 -3
  967. package/.next/server/chunks/tower_src_lib_0w8qt4s._.js +0 -3
  968. package/.next/server/chunks/tower_src_lib_constants_ts_0cxd4.p._.js +0 -3
  969. package/.next/server/edge/chunks/0y9m_next_dist_esm_build_templates_edge-wrapper_0cx_eo..js +0 -3
  970. package/.next/server/edge/chunks/tower_0wvfs38._.js +0 -3
  971. package/.next/server/functions-config-manifest.json +0 -22
  972. package/.next/server/instrumentation/middleware-manifest.json +0 -12
  973. package/.next/server/instrumentation.js +0 -4
  974. package/.next/server/instrumentation.js.nft.json +0 -1
  975. package/.next/server/interception-route-rewrite-manifest.js +0 -1
  976. package/.next/server/middleware-build-manifest.js +0 -22
  977. package/.next/server/middleware-manifest.json +0 -6
  978. package/.next/server/next-font-manifest.js +0 -1
  979. package/.next/server/next-font-manifest.json +0 -55
  980. package/.next/server/pages/404.html +0 -1
  981. package/.next/server/pages/500.html +0 -1
  982. package/.next/server/pages-manifest.json +0 -4
  983. package/.next/server/prefetch-hints.json +0 -1
  984. package/.next/server/server-reference-manifest.js +0 -1
  985. package/.next/server/server-reference-manifest.json +0 -2778
  986. package/.next/static/chunks/0.uav~g39w7rr.js +0 -1
  987. package/.next/static/chunks/02f8le_y~6gnd.js +0 -1
  988. package/.next/static/chunks/06-mw~zl.diaf.js +0 -1
  989. package/.next/static/chunks/06fsp5nfga486.js +0 -1
  990. package/.next/static/chunks/07~c.vc82_c1-.js +0 -1
  991. package/.next/static/chunks/0amhu3hs4zxxw.js +0 -1
  992. package/.next/static/chunks/0k_9.73yz~q10.js +0 -1
  993. package/.next/static/chunks/0ltsz~s~e4wzu.js +0 -1
  994. package/.next/static/chunks/0mf7~j7tvqr46.js +0 -1
  995. package/.next/static/chunks/0qe.8bmmwuucu.js +0 -5
  996. package/.next/static/chunks/0qpq1~6v-eql7.js +0 -1
  997. package/.next/static/chunks/0uxf0jd91e-0r.js +0 -1
  998. package/.next/static/chunks/0vn2y~4w7u3ui.js +0 -83
  999. package/.next/static/chunks/15gjy.xhhriy8.js +0 -5
  1000. package/.next/static/chunks/16ft9mdv3zwse.js +0 -1
  1001. package/.next/trace +0 -2
  1002. package/.next/trace-build +0 -1
  1003. package/.next/turbopack +0 -0
  1004. package/.next/types/routes.d.ts +0 -103
  1005. package/.next/types/validator.ts +0 -349
  1006. package/public/vs/_commonjsHelpers-CT9FvmAN.js +0 -1
  1007. package/public/vs/abap-D-t0cyap.js +0 -1
  1008. package/public/vs/apex-CcIm7xu6.js +0 -1
  1009. package/public/vs/assets/css.worker-HnVq6Ewq.js +0 -93
  1010. package/public/vs/assets/editor.worker-Be8ye1pW.js +0 -26
  1011. package/public/vs/assets/html.worker-B51mlPHg.js +0 -470
  1012. package/public/vs/assets/json.worker-DKiEKt88.js +0 -58
  1013. package/public/vs/assets/ts.worker-CMbG-7ft.js +0 -67731
  1014. package/public/vs/azcli-BA0tQDCg.js +0 -1
  1015. package/public/vs/basic-languages/monaco.contribution.js +0 -1
  1016. package/public/vs/bat-C397hTD6.js +0 -1
  1017. package/public/vs/bicep-DF5aW17k.js +0 -2
  1018. package/public/vs/cameligo-plsz8qhj.js +0 -1
  1019. package/public/vs/clojure-Y2auQMzK.js +0 -1
  1020. package/public/vs/coffee-Bu45yuWE.js +0 -1
  1021. package/public/vs/cpp-CkKPQIni.js +0 -1
  1022. package/public/vs/csharp-CX28MZyh.js +0 -1
  1023. package/public/vs/csp-D8uWnyxW.js +0 -1
  1024. package/public/vs/css-CaeNmE3S.js +0 -3
  1025. package/public/vs/cssMode-CjiAH6dQ.js +0 -1
  1026. package/public/vs/cypher-DVThT8BS.js +0 -1
  1027. package/public/vs/dart-CmGfCvrO.js +0 -1
  1028. package/public/vs/dockerfile-CZqqYdch.js +0 -1
  1029. package/public/vs/ecl-30fUercY.js +0 -1
  1030. package/public/vs/editor/editor.main.css +0 -1
  1031. package/public/vs/editor/editor.main.js +0 -5
  1032. package/public/vs/editor.api-CalNCsUg.js +0 -903
  1033. package/public/vs/elixir-xjPaIfzF.js +0 -1
  1034. package/public/vs/flow9-DqtmStfK.js +0 -1
  1035. package/public/vs/freemarker2-Cz_sV6Md.js +0 -3
  1036. package/public/vs/fsharp-BOMdg4U1.js +0 -1
  1037. package/public/vs/go-D_hbi-Jt.js +0 -1
  1038. package/public/vs/graphql-CKUU4kLG.js +0 -1
  1039. package/public/vs/handlebars-OwglfO-1.js +0 -1
  1040. package/public/vs/hcl-DTaboeZW.js +0 -1
  1041. package/public/vs/html-Pa1xEWsY.js +0 -1
  1042. package/public/vs/htmlMode-Bz67EXwp.js +0 -1
  1043. package/public/vs/ini-CsNwO04R.js +0 -1
  1044. package/public/vs/java-CI4ZMsH9.js +0 -1
  1045. package/public/vs/javascript-PczUCGdz.js +0 -1
  1046. package/public/vs/jsonMode-DULH5oaX.js +0 -7
  1047. package/public/vs/julia-BwzEvaQw.js +0 -1
  1048. package/public/vs/kotlin-IUYPiTV8.js +0 -1
  1049. package/public/vs/language/css/monaco.contribution.js +0 -1
  1050. package/public/vs/language/html/monaco.contribution.js +0 -1
  1051. package/public/vs/language/json/monaco.contribution.js +0 -1
  1052. package/public/vs/language/typescript/monaco.contribution.js +0 -1
  1053. package/public/vs/less-C0eDYdqa.js +0 -2
  1054. package/public/vs/lexon-iON-Kj97.js +0 -1
  1055. package/public/vs/liquid-DqKjdPGy.js +0 -1
  1056. package/public/vs/loader.js +0 -1368
  1057. package/public/vs/lspLanguageFeatures-kM9O9rjY.js +0 -4
  1058. package/public/vs/lua-DtygF91M.js +0 -1
  1059. package/public/vs/m3-CsR4AuFi.js +0 -1
  1060. package/public/vs/markdown-C_rD0bIw.js +0 -1
  1061. package/public/vs/mdx-DEWtB1K5.js +0 -1
  1062. package/public/vs/mips-CiYP61RB.js +0 -1
  1063. package/public/vs/monaco.contribution-D2OdxNBt.js +0 -1
  1064. package/public/vs/monaco.contribution-DO3azKX8.js +0 -1
  1065. package/public/vs/monaco.contribution-EcChJV6a.js +0 -1
  1066. package/public/vs/monaco.contribution-qLAYrEOP.js +0 -1
  1067. package/public/vs/msdax-C38-sJlp.js +0 -1
  1068. package/public/vs/mysql-CdtbpvbG.js +0 -1
  1069. package/public/vs/nls.messages-loader.js +0 -1
  1070. package/public/vs/nls.messages.cs.js.js +0 -17
  1071. package/public/vs/nls.messages.de.js.js +0 -17
  1072. package/public/vs/nls.messages.es.js.js +0 -17
  1073. package/public/vs/nls.messages.fr.js.js +0 -15
  1074. package/public/vs/nls.messages.it.js.js +0 -15
  1075. package/public/vs/nls.messages.ja.js.js +0 -17
  1076. package/public/vs/nls.messages.js.js +0 -10
  1077. package/public/vs/nls.messages.ko.js.js +0 -25
  1078. package/public/vs/nls.messages.pl.js.js +0 -17
  1079. package/public/vs/nls.messages.pt-br.js.js +0 -6
  1080. package/public/vs/nls.messages.ru.js.js +0 -17
  1081. package/public/vs/nls.messages.tr.js.js +0 -15
  1082. package/public/vs/nls.messages.zh-cn.js.js +0 -17
  1083. package/public/vs/nls.messages.zh-tw.js.js +0 -15
  1084. package/public/vs/objective-c-CntZFaHX.js +0 -1
  1085. package/public/vs/pascal-r6kuqfl_.js +0 -1
  1086. package/public/vs/pascaligo-BiXoTmXh.js +0 -1
  1087. package/public/vs/perl-DABw_TcH.js +0 -1
  1088. package/public/vs/pgsql-me_jFXeX.js +0 -1
  1089. package/public/vs/php-D_kh-9LK.js +0 -1
  1090. package/public/vs/pla-VfZjczW0.js +0 -1
  1091. package/public/vs/postiats-BBSzz8Pk.js +0 -1
  1092. package/public/vs/powerquery-Dt-g_2cc.js +0 -1
  1093. package/public/vs/powershell-B-7ap1zc.js +0 -1
  1094. package/public/vs/protobuf-BmtuEB1A.js +0 -2
  1095. package/public/vs/pug-BRpRNeEb.js +0 -1
  1096. package/public/vs/python-Cr0UkIbn.js +0 -1
  1097. package/public/vs/qsharp-BzsFaUU9.js +0 -1
  1098. package/public/vs/r-f8dDdrp4.js +0 -1
  1099. package/public/vs/razor-BYAHOTkz.js +0 -1
  1100. package/public/vs/redis-fvZQY4PI.js +0 -1
  1101. package/public/vs/redshift-45Et0LQi.js +0 -1
  1102. package/public/vs/restructuredtext-C7UUFKFD.js +0 -1
  1103. package/public/vs/ruby-CZO8zYTz.js +0 -1
  1104. package/public/vs/rust-Bfetafyc.js +0 -1
  1105. package/public/vs/sb-3GYllVck.js +0 -1
  1106. package/public/vs/scala-foMgrKo1.js +0 -1
  1107. package/public/vs/scheme-CHdMtr7p.js +0 -1
  1108. package/public/vs/scss-C1cmLt9V.js +0 -3
  1109. package/public/vs/shell-ClXCKCEW.js +0 -1
  1110. package/public/vs/solidity-MZ6ExpPy.js +0 -1
  1111. package/public/vs/sophia-DWkuSsPQ.js +0 -1
  1112. package/public/vs/sparql-AUGFYSyk.js +0 -1
  1113. package/public/vs/sql-32GpJSV2.js +0 -1
  1114. package/public/vs/st-CuDFIVZ_.js +0 -1
  1115. package/public/vs/swift-n-2HociN.js +0 -3
  1116. package/public/vs/systemverilog-Ch4vA8Yt.js +0 -1
  1117. package/public/vs/tcl-D74tq1nH.js +0 -1
  1118. package/public/vs/tsMode-CZz1Umrk.js +0 -11
  1119. package/public/vs/twig-C6taOxMV.js +0 -1
  1120. package/public/vs/typescript-DfOrAzoV.js +0 -1
  1121. package/public/vs/typespec-D-PIh9Xw.js +0 -1
  1122. package/public/vs/vb-Dyb2648j.js +0 -1
  1123. package/public/vs/wgsl-BhLXMOR0.js +0 -298
  1124. package/public/vs/workers-DcJshg-q.js +0 -1
  1125. package/public/vs/xml-CdsdnY8S.js +0 -1
  1126. package/public/vs/yaml-DYGvmE88.js +0 -1
  1127. /package/{public → .next/standalone/tower/docs/public}/banner.jpg +0 -0
  1128. /package/.next/{server/app/favicon.ico.body → standalone/tower/docs/public/favicon.ico} +0 -0
  1129. /package/{public → .next/standalone/tower/docs/public}/logo.png +0 -0
  1130. /package/{public → .next/standalone/tower/public}/web-app-manifest-192x192.png +0 -0
  1131. /package/{public → .next/standalone/tower/public}/web-app-manifest-512x512.png +0 -0
  1132. /package/.next/{server/app/apple-icon.png.body → standalone/tower/src/app/apple-icon.png} +0 -0
  1133. /package/.next/{server/app/icon0.svg.body → standalone/tower/src/app/icon0.svg} +0 -0
  1134. /package/.next/{server/app/icon1.png.body → standalone/tower/src/app/icon1.png} +0 -0
  1135. /package/.next/{server/app/manifest.json.body → standalone/tower/src/app/manifest.json} +0 -0
  1136. /package/.next/static/{dwsGxWRLV_FPRJyEkai5s → a6HR9cTK7s4aKfE5dWzjz}/_buildManifest.js +0 -0
  1137. /package/.next/static/{dwsGxWRLV_FPRJyEkai5s → a6HR9cTK7s4aKfE5dWzjz}/_clientMiddlewareManifest.js +0 -0
  1138. /package/.next/static/{dwsGxWRLV_FPRJyEkai5s → a6HR9cTK7s4aKfE5dWzjz}/_ssgManifest.js +0 -0
@@ -0,0 +1,31 @@
1
+ # Process & Resource Lifecycle
2
+
3
+ ## PTY Sessions
4
+
5
+ - Sessions keyed by `taskId` — one active session per task.
6
+ - Concurrency limited by `system.maxConcurrentExecutions` config (default 20).
7
+ - Disconnect keepalive: 2h (running) / 5min (exited), then auto-destroy.
8
+ - SIGTERM handler in `session-store.ts` kills all sessions on exit.
9
+
10
+ ## Preview Processes
11
+
12
+ - Auto-stop on component unmount (page navigation).
13
+ - Auto-remove from registry on process exit.
14
+ - SIGTERM/SIGINT handlers kill all preview processes on app exit.
15
+ - No `child.unref()` — parent must track child lifecycle.
16
+
17
+ ## WebSocket Server
18
+
19
+ - Flush batched sender on WebSocket close.
20
+ - Clear polling timer on WebSocket error.
21
+ - Port read from `terminal.wsPort` config (default 3001).
22
+
23
+ ## Timers
24
+
25
+ - All `setTimeout`/`setInterval` must be cleared in cleanup (useEffect return, onClose, onExit).
26
+ - Resize debounce timers must be cleared on component unmount.
27
+
28
+ ## Database
29
+
30
+ - Prisma `$disconnect()` called on SIGTERM/SIGINT.
31
+ - SQLite WAL mode + busy_timeout=5000 set in `initDb()`.
@@ -0,0 +1,29 @@
1
+ ---
2
+ paths:
3
+ - "src/actions/**/*.ts"
4
+ - "src/app/api/**/*.ts"
5
+ - "src/lib/**/*.ts"
6
+ ---
7
+
8
+ # Security Rules
9
+
10
+ ## CLI Profile
11
+
12
+ - `command` field must be validated against allowlist (`claude`, `claude-code`).
13
+ - `baseArgs` elements must be strings with no shell metacharacters (`;&|` etc.).
14
+ - `envVars` must block dangerous keys: PATH, LD_PRELOAD, DYLD_INSERT_LIBRARIES, NODE_OPTIONS, HOME, SHELL.
15
+
16
+ ## Environment Injection
17
+
18
+ - Never mutate `process.env` for per-session vars — pass via `envOverrides` to `pty.spawn()`.
19
+ - Signal files use `$TMPDIR/tower-signals/` with 0700 dir + 0600 file permissions.
20
+
21
+ ## Internal API Routes
22
+
23
+ - All `/api/internal/` routes must call `requireLocalhost(request)` + `validateTaskId(taskId)`.
24
+ - Task IDs must match CUID format (`/^c[a-z0-9]{20,30}$/`).
25
+
26
+ ## Server Actions
27
+
28
+ - Catch Prisma `P2025` (record not found) — return user-friendly error, never leak schema details.
29
+ - Validate JSON fields (`JSON.parse`) with try/catch before use.
@@ -0,0 +1,105 @@
1
+ ---
2
+ paths:
3
+ - "src/components/**/*.tsx"
4
+ - "src/app/**/*.tsx"
5
+ ---
6
+
7
+ # UI Rules
8
+
9
+ ## Component Sizing
10
+
11
+ - All Button and SelectTrigger use **default size** (`h-8` = 32px). Never use `size="sm"`.
12
+ - Inputs, selects, and buttons that sit side by side must use the same height.
13
+
14
+ ## Select (Base UI)
15
+
16
+ - **Never use `<SelectValue />`** — it renders the raw `value` (ID), not the display name.
17
+ - Use a manual `<span>` inside `<SelectTrigger>` to show the selected item's name:
18
+ ```tsx
19
+ <SelectTrigger>
20
+ <span className="truncate">{items.find(x => x.id === value)?.name ?? value}</span>
21
+ </SelectTrigger>
22
+ ```
23
+ - `SelectContent` defaults: `alignItemWithTrigger=false`, `align="start"` — dropdown below trigger, left-aligned.
24
+ - Never use native `<select>/<option>` — always use the shadcn Select component.
25
+
26
+ ## Toast
27
+
28
+ - Use **Sonner** (`import { toast } from "sonner"`).
29
+ - API: `toast.success("msg")` / `toast.error("msg")` / `toast.info("msg")`
30
+ - `<Toaster richColors position="top-right" />` is in layout.tsx.
31
+
32
+ ## Loading States
33
+
34
+ - Never insert/remove loading text that causes layout shift.
35
+ - Use opacity overlay + spinner on the content area:
36
+ ```tsx
37
+ <div className={`relative ${isPending ? "opacity-40 pointer-events-none" : ""}`}>
38
+ {isPending && <Loader2 className="absolute inset-0 m-auto size-5 animate-spin" />}
39
+ {children}
40
+ </div>
41
+ ```
42
+
43
+ ## i18n
44
+
45
+ - `I18nProvider` starts with `"zh"` on both server and client (avoids hydration mismatch).
46
+ - Locale is read from localStorage in `useEffect` after mount.
47
+ - All user-facing strings must use `t("key")` from `useI18n()`.
48
+
49
+ ## Buttons — 统一使用 `<Button>` 组件
50
+
51
+ **禁止在可交互按钮场景使用原生 `<button>` + 手写 hover 样式。** 必须使用 `<Button>` 组件,通过 `variant` 和 `size` 控制样式。
52
+
53
+ ### Icon Buttons(工具栏 / 头部 / 面板)
54
+
55
+ ```tsx
56
+ <Button variant="ghost" size="icon" className="text-muted-foreground">
57
+ <Icon className="h-4 w-4" />
58
+ </Button>
59
+ ```
60
+
61
+ ### Text Buttons(带文字的操作按钮)
62
+
63
+ ```tsx
64
+ <Button variant="ghost" className="text-muted-foreground">
65
+ <Icon className="h-3.5 w-3.5" />
66
+ <span className="text-xs">{label}</span>
67
+ </Button>
68
+ ```
69
+
70
+ ### 规则
71
+
72
+ - **Always use `<Button>`** — ghost 变体的 hover 样式(`hover:bg-accent`)在 light/dark 下统一生效
73
+ - **Never use `<button>` + 手写 `hover:bg-*`** — 容易和 Button 组件不一致,dark 模式下可能看不见
74
+ - `variant="ghost"` 用于工具栏、头部、面板内的非主要操作
75
+ - `variant="outline"` 用于次要操作(取消、返回等)
76
+ - `variant="default"` 用于主要操作(创建、提交等)
77
+ - 只在特殊场景用原生 `<button>`:右键菜单项、自定义交互组件内部等
78
+
79
+ ## Header Heights
80
+
81
+ Standardized header/toolbar heights. **Panels on the same horizontal line MUST use the same level.**
82
+
83
+ | Level | Utility Class | Height | Usage |
84
+ |-------|--------------|--------|-------|
85
+ | 1 | `header-xs` | 36px | Inner sub-tabs (Files/Search/Git) |
86
+ | 2 | `header-sm` | 44px | Action bars, simple toolbars |
87
+ | 3 | `header-md` | 56px | Main tab bars (Files/Changes/Preview), page nav |
88
+ | 4 | `header-lg` | 72px | Page headers (title + status, two lines) |
89
+ | 5 | `header-xl` | 88px | Page headers with actions (title + status + buttons) |
90
+
91
+ Each utility sets `min-height` + `border-bottom`. Combine with padding classes as needed:
92
+
93
+ ```tsx
94
+ {/* Left panel header — level 4 */}
95
+ <div className="header-lg px-4 py-3 flex items-center">...</div>
96
+
97
+ {/* Right panel tab bar — must also be level 4 to align */}
98
+ <div className="header-lg px-3 py-3 flex items-center">...</div>
99
+ ```
100
+
101
+ CSS variables available: `var(--header-xs)` through `var(--header-xl)`.
102
+
103
+ ## DnD Kit
104
+
105
+ - Always pass a stable `id` prop to `<DndContext>` to prevent hydration mismatch.
@@ -0,0 +1,325 @@
1
+ <!-- BEGIN:nextjs-agent-rules -->
2
+ # This is NOT the Next.js you know
3
+
4
+ This version has breaking changes — APIs, conventions, and file structure may all differ from your training data. Read the relevant guide in `node_modules/next/dist/docs/` before writing any code. Heed deprecation notices.
5
+ <!-- END:nextjs-agent-rules -->
6
+
7
+ # currentDate
8
+ Today's date is 2026-04-13.
9
+
10
+ ---
11
+
12
+ # Tower — Agent Reference
13
+
14
+ ## Project Overview
15
+
16
+ Tower is an AI task management platform with a Kanban board UI. The core hierarchy is:
17
+
18
+ ```
19
+ Workspace → Projects → Tasks
20
+ ```
21
+
22
+ Workspaces are top-level containers. Each workspace holds multiple Projects and a shared set of Labels. Projects hold Tasks. Tasks are displayed as Kanban cards grouped by status.
23
+
24
+ ---
25
+
26
+ ## Modules
27
+
28
+ System modules for GSD phase scoping. Use the **Slug** as the commit scope (e.g. `feat(terminal-08.01): ...`).
29
+
30
+ | Module | Slug | Description |
31
+ |--------|------|-------------|
32
+ | Workspace | `workspace` | 工作区 CRUD、标签管理 |
33
+ | Project | `project` | 项目 CRUD、导入、git 仓库、描述生成 |
34
+ | Task | `task` | 任务 CRUD、状态流转、Label、详情页 |
35
+ | Board | `board` | 看板 UI、拖拽排序、筛选统计、置顶 |
36
+ | Terminal | `terminal` | PTY 会话、WebSocket、xterm.js、CLI Profile |
37
+ | Assistant | `assistant` | AI 助手聊天、SSE 流式、多模态 |
38
+ | Missions | `missions` | 多任务监控面板、网格布局 |
39
+ | Search | `search` | 全局搜索、代码搜索、FTS |
40
+ | Settings | `settings` | 系统配置、CLI Profile、Agent 配置 |
41
+ | MCP | `mcp` | MCP Server、23 个工具、stdio 传输 |
42
+ | Git | `git` | Git 操作、Worktree、Diff、Merge |
43
+ | Assets & Notes | `assets` | 项目资产上传、笔记系统 |
44
+ | AI | `ai` | Claude SDK、CLI Adapter、执行总结、Prompt 管理 |
45
+ | I18n | `i18n` | 国际化、zh/en 双语 |
46
+
47
+ Detailed module documentation: [`docs/`](docs/README.md)
48
+
49
+ ---
50
+
51
+ ## Data Model
52
+
53
+ ### Hierarchy
54
+
55
+ ```
56
+ Workspace (id, name, description?)
57
+ ├── Project[] (id, name, alias?, description?, type, gitUrl?, localPath?)
58
+ │ └── Task[] (id, title, description?, status, priority, order)
59
+ │ ├── TaskLabel[] → Label
60
+ │ ├── TaskExecution[]
61
+ │ └── TaskMessage[]
62
+ └── Label[] (id, name, color, isBuiltin)
63
+ ```
64
+
65
+ ### Models
66
+
67
+ **Workspace**
68
+ - `id` (cuid), `name`, `description?`
69
+ - Has many: `projects`, `labels`
70
+
71
+ **Project**
72
+ - `id` (cuid), `name`, `alias?`, `description?`
73
+ - `type`: `NORMAL` | `GIT` — derived from whether `gitUrl` is set
74
+ - `gitUrl?`, `localPath?`
75
+ - `workspaceId` (FK → Workspace, cascade delete)
76
+ - Has many: `tasks`, `repositories`
77
+
78
+ **Task**
79
+ - `id` (cuid), `title`, `description?`
80
+ - `status`: `TODO` | `IN_PROGRESS` | `IN_REVIEW` | `DONE` | `CANCELLED` (default: `TODO`)
81
+ - `priority`: `LOW` | `MEDIUM` | `HIGH` | `CRITICAL` (default: `MEDIUM`)
82
+ - `order`: integer used for Kanban column ordering (ascending = top)
83
+ - `projectId` (FK → Project, cascade delete)
84
+ - Has many: `labels` (via TaskLabel), `executions`, `messages`
85
+
86
+ **Label**
87
+ - `id` (cuid), `name`, `color` (hex, default `#94a3b8`)
88
+ - `workspaceId?` — null for builtin labels
89
+ - `isBuiltin`: builtin labels are global and cannot be deleted
90
+
91
+ **TaskExecution**
92
+ - `id` (cuid), `taskId`, `agent` (default `CLAUDE_CODE`), `config?`
93
+ - `status`: `PENDING` | `RUNNING` | `PAUSED` | `COMPLETED` | `FAILED`
94
+ - `branch?`, `startedAt?`, `endedAt?`
95
+ - `sessionId?` — Claude CLI session ID for resume support
96
+ - `worktreePath?`, `worktreeBranch?` — git worktree isolation
97
+ - `callbackUrl?` — external orchestrator callback URL
98
+
99
+ **CliProfile**
100
+ - `id` (cuid), `command` (default `claude`), `baseArgs` (JSON string array), `envVars` (JSON object)
101
+ - `isDefault`: boolean — only one default profile allowed
102
+ - Controls which CLI binary and arguments are used for PTY spawning
103
+
104
+ **TaskMessage**
105
+ - `id` (cuid), `taskId`, `executionId?`
106
+ - `role`: `USER` | `ASSISTANT` | `SYSTEM`
107
+ - `content`, `metadata?`
108
+
109
+ **Repository**
110
+ - `id` (cuid), `name`, `path`, `branch` (default `main`)
111
+ - `projectId` (FK → Project, cascade delete)
112
+
113
+ **AgentConfig**
114
+ - `id` (cuid), `agent`, `configName`, `appendPrompt?`, `settings?`, `isDefault`
115
+ - Unique constraint on `(agent, configName)`
116
+
117
+ ---
118
+
119
+ ## MCP Server
120
+
121
+ To expose Tower tools to an AI agent via MCP, add the following to your MCP client configuration:
122
+
123
+ ```json
124
+ {
125
+ "mcpServers": {
126
+ "tower": {
127
+ "command": "npx",
128
+ "args": ["tsx", "<project-root>/src/mcp/index.ts"]
129
+ }
130
+ }
131
+ }
132
+ ```
133
+
134
+ Replace `<project-root>` with the absolute path to this repository.
135
+
136
+ ---
137
+
138
+ ## Available MCP Tools
139
+
140
+ 23 tools across 7 categories.
141
+
142
+ ### Workspace Tools (`src/mcp/tools/workspace-tools.ts`)
143
+
144
+ | Tool | Description | Key Params |
145
+ |------|-------------|------------|
146
+ | `list_workspaces` | List all workspaces ordered by last updated; includes project count | — |
147
+ | `create_workspace` | Create a new workspace | `name`, `description?` |
148
+ | `update_workspace` | Update name and/or description | `workspaceId`, `name?`, `description?` |
149
+ | `delete_workspace` | Delete workspace (cascades to projects and tasks) | `workspaceId` |
150
+
151
+ ### Project Tools (`src/mcp/tools/project-tools.ts`)
152
+
153
+ | Tool | Description | Key Params |
154
+ |------|-------------|------------|
155
+ | `list_projects` | List projects in a workspace; includes task and repository counts | `workspaceId` |
156
+ | `create_project` | Create a project; type auto-set to GIT if gitUrl provided | `workspaceId`, `name`, `gitUrl?`, `localPath?` |
157
+ | `update_project` | Update name, localPath, and/or description | `projectId`, `name?`, `localPath?`, `description?` |
158
+ | `delete_project` | Delete a project (cascades to tasks) | `projectId` |
159
+
160
+ ### Task Tools (`src/mcp/tools/task-tools.ts`)
161
+
162
+ | Tool | Description | Key Params |
163
+ |------|-------------|------------|
164
+ | `list_tasks` | List tasks in a project, ordered by `order` then `createdAt`; includes labels | `projectId`, `status?` |
165
+ | `create_task` | Create a task with optional labels | `projectId`, `title`, `description?`, `priority?`, `status?`, `labelIds?`, `useWorktree?`, `baseBranch?`, `autoStart?`, `references?` |
166
+ | `update_task` | Update title, description, priority, and/or labels (replaces all labels) | `taskId`, `title?`, `description?`, `priority?`, `labelIds?` |
167
+ | `move_task` | Move task to a different status column | `taskId`, `status` |
168
+ | `delete_task` | Delete a task | `taskId` |
169
+
170
+ ### Label Tools (`src/mcp/tools/label-tools.ts`)
171
+
172
+ | Tool | Description | Key Params |
173
+ |------|-------------|------------|
174
+ | `list_labels` | List all labels for a workspace (builtin + workspace-specific) | `workspaceId` |
175
+ | `create_label` | Create a custom label for a workspace | `workspaceId`, `name`, `color` |
176
+ | `delete_label` | Delete a label by ID | `labelId` |
177
+ | `set_task_labels` | Replace all labels on a task | `taskId`, `labelIds` |
178
+
179
+ ### Search Tools (`src/mcp/tools/search-tools.ts`)
180
+
181
+ | Tool | Description | Key Params |
182
+ |------|-------------|------------|
183
+ | `search` | Search tasks, projects, or repositories by query string | `query`, `category?` (`task`\|`project`\|`repository`) |
184
+
185
+ ### Terminal Tools (`src/mcp/tools/terminal-tools.ts`)
186
+
187
+ | Tool | Description | Key Params |
188
+ |------|-------------|------------|
189
+ | `get_task_terminal_output` | Get recent terminal output lines from a running task's PTY session | `taskId`, `lines?` (default 50, max 500) |
190
+ | `send_task_terminal_input` | Send text input to a running task's PTY terminal (include `\n` for Enter) | `taskId`, `text` |
191
+ | `get_task_execution_status` | Get execution status (running/idle/exited) with output snippet | `taskId` |
192
+
193
+ ### Report Tools (`src/mcp/tools/report-tools.ts`)
194
+
195
+ | Tool | Description | Key Params |
196
+ |------|-------------|------------|
197
+ | `daily_summary` | Today's work summary — completed tasks, in-progress tasks with last chat summary, grouped by workspace → project | `date?` (YYYY-MM-DD) |
198
+ | `daily_todo` | All pending tasks (TODO/IN_PROGRESS/IN_REVIEW), sorted by priority severity | `workspaceId?`, `projectId?`, `status?`, `priority?` |
199
+
200
+ ---
201
+
202
+ ## Server Actions
203
+
204
+ For AI working directly in the Next.js codebase, use these server actions (all in `src/actions/`).
205
+
206
+ ### `workspace-actions.ts`
207
+
208
+ | Function | Signature |
209
+ |----------|-----------|
210
+ | `getWorkspaces` | `() → Workspace[]` |
211
+ | `getWorkspaceById` | `(id) → Workspace \| null` |
212
+ | `createWorkspace` | `({ name, description? }) → Workspace` |
213
+ | `updateWorkspace` | `(id, { name?, description? }) → Workspace` |
214
+ | `deleteWorkspace` | `(id) → void` |
215
+ | `createProject` | `({ name, alias?, description?, gitUrl?, localPath?, workspaceId }) → Project` |
216
+ | `updateProject` | `(id, { name?, alias?, description?, localPath? }) → Project` |
217
+ | `deleteProject` | `(id) → void` |
218
+ | `getProjectByLocalPath` | `(localPath) → Project \| null` |
219
+ | `getRecentLocalProjects` | `(limit?) → Project[]` |
220
+ | `getWorkspacesWithProjects` | `() → { id, name, projects: { id, name, alias }[] }[]` |
221
+ | `getWorkspacesWithRecentTasks` | `(limit?) → { id, name, projects: { id, name, alias, tasks: Task[], _count }[] }[]` — includes recent tasks per project with last sessionId for resume |
222
+
223
+ ### `task-actions.ts`
224
+
225
+ | Function | Signature |
226
+ |----------|-----------|
227
+ | `createTask` | `({ title, description?, projectId, priority?, status?, labelIds? }) → Task` |
228
+ | `updateTask` | `(taskId, { title?, description?, priority?, labelIds? }) → Task` |
229
+ | `updateTaskStatus` | `(taskId, status) → Task` |
230
+ | `deleteTask` | `(taskId) → void` |
231
+ | `getProjectTasks` | `(projectId) → Task[]` |
232
+
233
+ ### `label-actions.ts`
234
+
235
+ | Function | Signature |
236
+ |----------|-----------|
237
+ | `getLabelsForWorkspace` | `(workspaceId) → Label[]` |
238
+ | `createLabel` | `({ name, color, workspaceId }) → Label` |
239
+ | `deleteLabel` | `(id) → void` |
240
+ | `setTaskLabels` | `(taskId, labelIds) → void` |
241
+ | `getTaskLabels` | `(taskId) → Label[]` |
242
+
243
+ ### `search-actions.ts`
244
+
245
+ | Function | Signature |
246
+ |----------|-----------|
247
+ | `globalSearch` | `(query, category?) → SearchResult[]` |
248
+
249
+ ### `report-actions.ts`
250
+
251
+ | Function | Signature |
252
+ |----------|-----------|
253
+ | `getDailySummary` | `(dateStr?) → DailySummaryResult` — tasks with activity on given date, grouped by workspace/project |
254
+ | `getDailyTodo` | `(filters?) → DailyTodoResult` — pending tasks, filterable by workspace/project/status/priority |
255
+
256
+ ### `agent-actions.ts`
257
+
258
+ | Function | Signature |
259
+ |----------|-----------|
260
+ | `sendTaskMessage` | `(taskId, content) → { userMessage, assistantMessage }` |
261
+ | `getTaskMessages` | `(taskId) → TaskMessage[]` |
262
+ | `startTaskExecution` | `(taskId, agent?) → TaskExecution` — also sets task status to IN_PROGRESS |
263
+ | `stopTaskExecution` | `(executionId) → TaskExecution` — sets status to COMPLETED |
264
+ | `stopPtyExecution` | `(taskId) → void` — stops the PTY session for a task |
265
+ | `getTaskExecutions` | `(taskId) → TaskExecution[]` |
266
+ | `startPtyExecution` | `(taskId, prompt) → { executionId, worktreePath }` — spawns Claude CLI in PTY with CliProfile settings |
267
+ | `resumePtyExecution` | `(taskId, previousSessionId) → { executionId, worktreePath }` — resumes a previous Claude CLI session |
268
+ | `getActiveExecutionsAcrossWorkspaces` | `() → ActiveExecutionInfo[]` — all RUNNING executions with workspace/project/task metadata |
269
+
270
+ ---
271
+
272
+ ## Constraints
273
+
274
+ - **Cascade deletes**: Deleting a Workspace deletes all its Projects; deleting a Project deletes all its Tasks; deleting a Task deletes its Messages and Executions.
275
+ - **Builtin labels**: Labels with `isBuiltin: true` are global (no `workspaceId`). Do not delete them — enforce this check before calling `deleteLabel`.
276
+ - **Task order**: The `order` field controls Kanban card position within a status column. Lower values appear higher. Always preserve existing order values when creating tasks unless explicitly reordering.
277
+ - **Project type**: `type` is derived from `gitUrl` — always `GIT` when `gitUrl` is set, `NORMAL` otherwise. Do not set type independently.
278
+ - **Label replacement**: `set_task_labels` / `setTaskLabels` / `update_task` with `labelIds` all perform a full replace, not a merge. Pass the complete desired set.
279
+ - **PTY sessions**: Keyed by `taskId` — one active session per task. Use `startPtyExecution` to create, `resumePtyExecution` to resume with a `sessionId`, `stopPtyExecution` to kill.
280
+ - **CliProfile**: Only one default profile (`isDefault: true`). `baseArgs` and `envVars` are JSON strings — parse before use.
281
+ - **Environment injection**: `AI_MANAGER_TASK_ID` and `CALLBACK_URL` are injected into every PTY session environment. Never mutate `process.env` — use `envOverrides`.
282
+ - **Internal HTTP bridge**: `/api/internal/terminal/[taskId]/buffer` (GET) and `/api/internal/terminal/[taskId]/input` (POST) — localhost-only routes for cross-process PTY access. MCP tools use these since MCP stdio processes cannot share in-memory PTY sessions.
283
+
284
+ ---
285
+
286
+ ## Mission Control
287
+
288
+ **Route:** `/missions` — multi-task monitoring dashboard across all workspaces.
289
+
290
+ **Capabilities:**
291
+ - View all RUNNING task executions with embedded xterm.js terminals
292
+ - Grid layout presets (1×1, 2×1, 3×2, 2×2, 4×2, 3×3) persisted in localStorage
293
+ - Workspace filter dropdown to narrow visible tasks
294
+ - Launch new task execution or resume previous session from Task Picker
295
+ - Stop execution (card removed) / auto-remove on natural completion
296
+ - Drag-and-drop card reordering via dnd-kit
297
+ - 4-second polling for live updates
298
+
299
+ **For external orchestrators (OpenClaw/Paperclip):**
300
+
301
+ To dispatch and monitor tasks programmatically, use MCP tools in this workflow:
302
+
303
+ 1. **Create task:** `create_task` → get `taskId`
304
+ 2. **Start execution:** Call `startPtyExecution(taskId, prompt)` via server action (or use the internal HTTP bridge)
305
+ 3. **Monitor:** `get_task_execution_status` for high-level status, `get_task_terminal_output` for live output
306
+ 4. **Send input:** `send_task_terminal_input` to interact with the running Claude CLI
307
+ 5. **Check completion:** Poll `get_task_execution_status` — `terminalStatus: "exited"` means done
308
+ 6. **Resume if needed:** `resumePtyExecution(taskId, sessionId)` to continue a previous session
309
+
310
+ **ActiveExecutionInfo type** (returned by `getActiveExecutionsAcrossWorkspaces`):
311
+ ```typescript
312
+ {
313
+ executionId: string;
314
+ taskId: string;
315
+ taskTitle: string;
316
+ projectId: string;
317
+ projectName: string;
318
+ projectAlias: string | null;
319
+ projectLocalPath: string | null;
320
+ workspaceId: string;
321
+ workspaceName: string;
322
+ worktreePath: string | null;
323
+ startedAt: string | null; // ISO string
324
+ }
325
+ ```
@@ -0,0 +1,63 @@
1
+ # [0.1.0](/compare/v1.0.0...v0.1.0) (2026-03-26)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * address code review CRITICAL and HIGH issues 0cd6ac9
7
+ * address remaining code review issues (H-4, M-2/4/6/7) a8fcb92
8
+
9
+
10
+ ### Features
11
+
12
+ * add adapter execution engine with Claude Code support 0d1e66e
13
+ * add MCP Server with 18 CRUD tools, AGENTS.md, and SKILL.md 93dd85e
14
+ # [0.1.0](/compare/v1.0.0...v0.1.0) (2026-03-26)
15
+
16
+ # [1.0.0](/compare/9e77b515af277ff8d2b82bba73b491b7e79cdaa2...v1.0.0) (2026-03-26)
17
+
18
+
19
+ ### Bug Fixes
20
+
21
+ * add router.refresh after all server actions, fix task detail messages ca00627
22
+ * board height, project tabs, priority buttons, repo sidebar styling abf4a73
23
+ * improve contrast and readability across dark theme 8ef2182
24
+ * make all buttons functional with toast feedback and proper state 8a85ef0
25
+ * move language toggle from sidebar footer to top-bar header 69b84c6
26
+ * position search dialog at 10vh from top 437cf51
27
+ * prevent unicode escaping of Chinese text, use dialog for workspace edit 5dcce57
28
+ * project creation working, search dialog with Cmd+K, sidebar clip 7a0e0dd
29
+ * project creation, sidebar clip, search dialog with multi-type 82d1299
30
+ * project tab border-b-2 on all states to prevent layout shift 8f63e16
31
+ * replace branch lists with searchable dropdown selectors d4beebc
32
+ * separate sidebar navigation from dropdown menu, add E2E tests ed485bf
33
+ * unify button colors to amber, fix kanban top border clipping 455fff6
34
+ * wire message sending, task editing, and board interactions 62c6211
35
+ * wire sidebar navigation, settings link, and new project dialog 1717334
36
+
37
+
38
+ ### Features
39
+
40
+ * 6 UI improvements 9083dd7
41
+ * add agent runner, SSE streaming, and execution server actions b775e4f
42
+ * add app layout with purple sidebar and top bar ab49cb3
43
+ * add kanban board components with drag-and-drop cb7c0d2
44
+ * add seed data and utility helpers with tests e8e557c
45
+ * add settings page with AI Tools configuration 5779870
46
+ * add task detail panel with conversation UI c849d9e
47
+ * apply Midnight Studio theme to right panels 2de04fb
48
+ * collapsible sidebar with icon selection and dialog creation 0a5c8b5, closes #1
49
+ * complete kanban board page with filters, actions, and task creation b53a996
50
+ * create branch dialog with name, base branch selector, and description 013409e
51
+ * define database schema with Prisma models and types 4de5025
52
+ * full git integration in right sidebar f2435c7
53
+ * full label system - create/assign/display labels on tasks with workspace management c440527
54
+ * full workspace CRUD with create/rename/delete in sidebar 98dbdd0
55
+ * i18n zh/en support with language toggle, tooltips on collapsed sidebar 894c243
56
+ * initial commit 9e77b51
57
+ * labels + project edit + UI improvements d5a8633
58
+ * local folder browser for project path selection 0b3f7c8
59
+ * project CRUD, task edit dialog, and search functionality 92ccbc6
60
+ * project details sidebar, enhanced creation dialog, remove ws tabs, fix collapsed clipping 3e0b3bb
61
+ * project details, enhanced creation, labels schema, sidebar cleanup 3a2a360
62
+ * unified project creation with git URL auto-mapping and clone support d395bf2
63
+ * visual redesign — Midnight Studio dark theme 71a6444
@@ -0,0 +1,33 @@
1
+ # Tower
2
+
3
+ AI 任务调度平台 — 看板 + 终端 + 代码编辑器 + MCP 工具链。
4
+
5
+ **Tech:** Next.js 16 / TypeScript / SQLite (Prisma) / TailwindCSS 4 / shadcn (base-nova)
6
+
7
+ ## Quick Reference
8
+
9
+ ```bash
10
+ pnpm dev # 启动(Webpack 模式,node-pty 需要)
11
+ pnpm db:push # 同步 schema
12
+ pnpm db:seed # 种子数据
13
+ pnpm db:init-fts # 全文搜索索引
14
+ pnpm test:run # 测试
15
+ ```
16
+
17
+ ## Architecture
18
+
19
+ ```
20
+ Workspace → Project → Task → Execution
21
+ ```
22
+
23
+ - 数据模型和 API 参考见 @AGENTS.md
24
+ - UI 规范见 `.claude/rules/ui.md`(组件尺寸、Select、Toast、Loading、i18n)
25
+ - 安全规则见 `.claude/rules/security.md`(输入校验、环境注入、API 防护)
26
+ - 进程生命周期见 `.claude/rules/process-lifecycle.md`(PTY、Preview、WS、定时器)
27
+
28
+ ## Key Conventions
29
+
30
+ - 国际化:所有用户可见文本用 `t("key")`,zh/en 双语
31
+ - Next.js 15+ 异步 params:`const { id } = await params`
32
+ - App Router routes:`export const runtime = "nodejs"` + `export const dynamic = "force-dynamic"`
33
+ - 数据库:SQLite 单文件,Prisma ORM,配置在 `.env` 的 `DATABASE_URL`
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 jp-liu
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.