crewx 0.8.7-rc.21 → 0.8.7-rc.22

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 (222) hide show
  1. package/dist/assets/{MarketPage-aY16UW1_.js → MarketPage-lLBtAENs.js} +10 -15
  2. package/dist/assets/{PromptTab-C3aTJS6u.js → PromptTab-Daq54dMi.js} +1 -1
  3. package/dist/assets/_baseUniq-BJDqmZBO.js +1 -0
  4. package/dist/assets/{arc-BCQAokB1.js → arc-ByjRIa5p.js} +1 -1
  5. package/dist/assets/{architectureDiagram-UYN6MBPD-Bc87ujv2.js → architectureDiagram-UYN6MBPD-DcKpqSFb.js} +1 -1
  6. package/dist/assets/{blockDiagram-ZHA2E4KO-wC9uH8Lb.js → blockDiagram-ZHA2E4KO-YvUeULT5.js} +1 -1
  7. package/dist/assets/{c4Diagram-6F5ED5ID-CqB7lqni.js → c4Diagram-6F5ED5ID-vggzH2N5.js} +1 -1
  8. package/dist/assets/channel-1Y6YooBb.js +1 -0
  9. package/dist/assets/{chunk-5HRBRIJM-Cc1L17Eh.js → chunk-5HRBRIJM-BbaQwJkn.js} +1 -1
  10. package/dist/assets/{chunk-7U56Z5CX-Df3nu_7G.js → chunk-7U56Z5CX-DVYVpFaa.js} +1 -1
  11. package/dist/assets/{chunk-ASOPGD6M-DIXslLG-.js → chunk-ASOPGD6M-CXEvWb-8.js} +1 -1
  12. package/dist/assets/{chunk-KFBOBJHC-FytVljyP.js → chunk-KFBOBJHC-CadVXFV3.js} +1 -1
  13. package/dist/assets/{chunk-T2TOU4HS-CU5z-cXq.js → chunk-T2TOU4HS-lDZr1sVF.js} +1 -1
  14. package/dist/assets/{chunk-TMUBEWPD-CWo1AFyn.js → chunk-TMUBEWPD-D5A0MrFD.js} +1 -1
  15. package/dist/assets/classDiagram-LNE6IOMH-CDxkV2JV.js +1 -0
  16. package/dist/assets/classDiagram-v2-MQ7JQ4JX-CDxkV2JV.js +1 -0
  17. package/dist/assets/clone-6xznz_9G.js +1 -0
  18. package/dist/assets/{dagre-4EVJKHTY-CgZW5tg4.js → dagre-4EVJKHTY-Bncx7Ijq.js} +1 -1
  19. package/dist/assets/{diagram-QW4FP2JN-CJAng8RC.js → diagram-QW4FP2JN-RkxVNs99.js} +1 -1
  20. package/dist/assets/{erDiagram-6RL3IURR-C1uHztHX.js → erDiagram-6RL3IURR-DIiKqQdx.js} +1 -1
  21. package/dist/assets/{flowDiagram-7ASYPVHJ-Yiu2odO-.js → flowDiagram-7ASYPVHJ-DQ5PN7v6.js} +1 -1
  22. package/dist/assets/{ganttDiagram-NTVNEXSI-tutc0dJP.js → ganttDiagram-NTVNEXSI-BeNWGpB6.js} +1 -1
  23. package/dist/assets/{gitGraph-YCYPL57B-C3jM6T4G.js → gitGraph-YCYPL57B-CdMe059q.js} +1 -1
  24. package/dist/assets/{gitGraphDiagram-NRZ2UAAF-0aqHEKzz.js → gitGraphDiagram-NRZ2UAAF-BEke5TyK.js} +1 -1
  25. package/dist/assets/{graph-DC224ILV.js → graph-DyQIwWJd.js} +1 -1
  26. package/dist/assets/{infoDiagram-A4XQUW5V-Do7Mpzkx.js → infoDiagram-A4XQUW5V-CUcC8I_5.js} +1 -1
  27. package/dist/assets/{journeyDiagram-G5WM74LC-DAruEJc7.js → journeyDiagram-G5WM74LC-CQ5DqAH5.js} +1 -1
  28. package/dist/assets/{kanban-definition-QRCXZQQD-DB63vLR0.js → kanban-definition-QRCXZQQD-BBsgOii7.js} +1 -1
  29. package/dist/assets/{layout-BiYH5x6Q.js → layout-D7vBs_Wy.js} +1 -1
  30. package/dist/assets/{linear-CLyGW2s0.js → linear-CEOF9oJz.js} +1 -1
  31. package/dist/assets/{main-CEKkUqZb.js → main-Bx1nZ7_p.js} +278 -273
  32. package/dist/assets/main-C4ebvOIJ.css +10 -0
  33. package/dist/assets/{min-ChJMFU2N.js → min-RK9J5Utn.js} +1 -1
  34. package/dist/assets/{mindmap-definition-GWI6TPTV-CtADqQgd.js → mindmap-definition-GWI6TPTV-BXvEU7qC.js} +1 -1
  35. package/dist/assets/{pieDiagram-YF2LJOPJ-BSOfzo3O.js → pieDiagram-YF2LJOPJ-TrXqcpni.js} +1 -1
  36. package/dist/assets/{quadrantDiagram-OS5C2QUG-BLBQNFVb.js → quadrantDiagram-OS5C2QUG-B-chTEU4.js} +1 -1
  37. package/dist/assets/{requirementDiagram-MIRIMTAZ-DqorvuS6.js → requirementDiagram-MIRIMTAZ-BgJhNLp_.js} +1 -1
  38. package/dist/assets/{sankeyDiagram-Y46BX6SQ-4NDcrLkB.js → sankeyDiagram-Y46BX6SQ-BVsgYKK7.js} +1 -1
  39. package/dist/assets/{sequenceDiagram-G6AWOVSC-yha6BxK2.js → sequenceDiagram-G6AWOVSC-ByJOpkq3.js} +1 -1
  40. package/dist/assets/{stateDiagram-MAYHULR4-XJ_I41ez.js → stateDiagram-MAYHULR4-Dw7lUL1B.js} +1 -1
  41. package/dist/assets/stateDiagram-v2-4JROLMXI-DYJiM3bF.js +1 -0
  42. package/dist/assets/{timeline-definition-U7ZMHBDA-DCNrmvE7.js → timeline-definition-U7ZMHBDA-CSoEYs60.js} +1 -1
  43. package/dist/assets/{xychartDiagram-6QU3TZC5-9N-Ohhdp.js → xychartDiagram-6QU3TZC5-0_rG7p3L.js} +1 -1
  44. package/dist/index.html +2 -2
  45. package/package.json +8 -8
  46. package/packages/cli/package.json +1 -1
  47. package/dist/assets/_baseUniq-DxEFlwNt.js +0 -1
  48. package/dist/assets/channel-DNLHkiNp.js +0 -1
  49. package/dist/assets/classDiagram-LNE6IOMH-B430Onym.js +0 -1
  50. package/dist/assets/classDiagram-v2-MQ7JQ4JX-B430Onym.js +0 -1
  51. package/dist/assets/clone-B9O3E3P1.js +0 -1
  52. package/dist/assets/main-D3YeRndF.css +0 -10
  53. package/dist/assets/stateDiagram-v2-4JROLMXI-CxcyPJO2.js +0 -1
  54. package/dist-server/adapters/adapter.module.js +0 -35
  55. package/dist-server/adapters/adapter.service.js +0 -79
  56. package/dist-server/adapters/http-router.service.js +0 -91
  57. package/dist-server/app.module.js +0 -111
  58. package/dist-server/bootstrap/crewx-server.js +0 -80
  59. package/dist-server/bootstrap/tls.js +0 -138
  60. package/dist-server/common/analytics.client.js +0 -180
  61. package/dist-server/common/analytics.module.js +0 -21
  62. package/dist-server/common/cors.js +0 -15
  63. package/dist-server/common/decorators/project.decorator.js +0 -21
  64. package/dist-server/common/decorators/workspace.decorator.js +0 -24
  65. package/dist-server/common/device-id.js +0 -33
  66. package/dist-server/common/interceptor/api-id-header.interceptor.js +0 -53
  67. package/dist-server/common/interceptor/http-logging.interceptor.js +0 -124
  68. package/dist-server/common/limits/defaults.js +0 -13
  69. package/dist-server/common/limits/limits-provider.js +0 -6
  70. package/dist-server/common/limits/limits.controller.js +0 -38
  71. package/dist-server/common/limits/limits.module.js +0 -24
  72. package/dist-server/common/limits/local-limits.provider.js +0 -27
  73. package/dist-server/common/middleware/workspace.middleware.js +0 -210
  74. package/dist-server/common/repository.exception-filter.js +0 -48
  75. package/dist-server/common/workspace-context.store.js +0 -25
  76. package/dist-server/domain/agent/agent.controller.js +0 -96
  77. package/dist-server/domain/agent/agent.module.js +0 -27
  78. package/dist-server/domain/agent/agent.service.js +0 -335
  79. package/dist-server/domain/agent/agent.types.js +0 -3
  80. package/dist-server/domain/agent/dto/create-agent.dto.js +0 -80
  81. package/dist-server/domain/agent/dto/preview-prompt.dto.js +0 -77
  82. package/dist-server/domain/agent/dto/provider-meta.dto.js +0 -2
  83. package/dist-server/domain/agent/dto/update-agent.dto.js +0 -92
  84. package/dist-server/domain/agent/provider.controller.js +0 -38
  85. package/dist-server/domain/agent/template-processor.service.js +0 -71
  86. package/dist-server/domain/auth/auth.constants.js +0 -4
  87. package/dist-server/domain/auth/auth.controller.js +0 -123
  88. package/dist-server/domain/auth/auth.module.js +0 -47
  89. package/dist-server/domain/auth/decorators/public.decorator.js +0 -7
  90. package/dist-server/domain/auth/guards/base-auth.guard.js +0 -66
  91. package/dist-server/domain/auth/session-store.js +0 -26
  92. package/dist-server/domain/auth/utils/ip.utils.js +0 -31
  93. package/dist-server/domain/box/box.controller.js +0 -77
  94. package/dist-server/domain/box/box.module.js +0 -21
  95. package/dist-server/domain/box/box.service.js +0 -97
  96. package/dist-server/domain/box/dto/create-box.dto.js +0 -74
  97. package/dist-server/domain/cli/cli.controller.js +0 -136
  98. package/dist-server/domain/cli/cli.module.js +0 -21
  99. package/dist-server/domain/cli/cli.service.js +0 -598
  100. package/dist-server/domain/cli/dto/login-cli.dto.js +0 -25
  101. package/dist-server/domain/cli/dto/update-cli.dto.js +0 -31
  102. package/dist-server/domain/doc/doc.controller.js +0 -95
  103. package/dist-server/domain/doc/doc.module.js +0 -21
  104. package/dist-server/domain/doc/doc.service.js +0 -368
  105. package/dist-server/domain/doc/dto/doc.dto.js +0 -64
  106. package/dist-server/domain/document/document.controller.js +0 -57
  107. package/dist-server/domain/document/document.module.js +0 -22
  108. package/dist-server/domain/document/document.service.js +0 -274
  109. package/dist-server/domain/document/dto/register-document.dto.js +0 -24
  110. package/dist-server/domain/fs/dto/mkdir-request.dto.js +0 -47
  111. package/dist-server/domain/fs/dto/mkdir-response.dto.js +0 -2
  112. package/dist-server/domain/fs/dto/quick-access.dto.js +0 -2
  113. package/dist-server/domain/fs/dto/tree-node.dto.js +0 -2
  114. package/dist-server/domain/fs/dto/tree-query.dto.js +0 -35
  115. package/dist-server/domain/fs/fs.controller.js +0 -63
  116. package/dist-server/domain/fs/fs.module.js +0 -22
  117. package/dist-server/domain/fs/fs.service.js +0 -303
  118. package/dist-server/domain/git/git.module.js +0 -20
  119. package/dist-server/domain/git/git.service.js +0 -222
  120. package/dist-server/domain/goal/dto/goal.dto.js +0 -49
  121. package/dist-server/domain/goal/goal.controller.js +0 -86
  122. package/dist-server/domain/goal/goal.module.js +0 -22
  123. package/dist-server/domain/goal/goal.service.js +0 -197
  124. package/dist-server/domain/goal/parser/goal-md-parser.js +0 -166
  125. package/dist-server/domain/goal/parser/goal-md-serializer.js +0 -110
  126. package/dist-server/domain/health/health.controller.js +0 -57
  127. package/dist-server/domain/health/health.module.js +0 -19
  128. package/dist-server/domain/knowledge/dto/graph-knowledge.dto.js +0 -27
  129. package/dist-server/domain/knowledge/dto/knowledge.dto.js +0 -71
  130. package/dist-server/domain/knowledge/knowledge.controller.js +0 -122
  131. package/dist-server/domain/knowledge/knowledge.module.js +0 -21
  132. package/dist-server/domain/knowledge/knowledge.service.js +0 -538
  133. package/dist-server/domain/market/dto/add-registry.dto.js +0 -32
  134. package/dist-server/domain/market/dto/install-market.dto.js +0 -30
  135. package/dist-server/domain/market/market.controller.js +0 -163
  136. package/dist-server/domain/market/market.module.js +0 -22
  137. package/dist-server/domain/market/market.service.js +0 -1447
  138. package/dist-server/domain/mcp/browser-session.store.js +0 -247
  139. package/dist-server/domain/mcp/crewx-tool.factory.js +0 -119
  140. package/dist-server/domain/mcp/mcp-auth.guard.js +0 -61
  141. package/dist-server/domain/mcp/mcp.constants.js +0 -4
  142. package/dist-server/domain/mcp/mcp.controller.js +0 -125
  143. package/dist-server/domain/mcp/mcp.dto.js +0 -12
  144. package/dist-server/domain/mcp/mcp.module.js +0 -49
  145. package/dist-server/domain/mcp/mcp.service.js +0 -684
  146. package/dist-server/domain/mcp/tool-router.service.js +0 -120
  147. package/dist-server/domain/message/dto/list-messages.dto.js +0 -57
  148. package/dist-server/domain/message/dto/send-message.dto.js +0 -45
  149. package/dist-server/domain/message/message.controller.js +0 -73
  150. package/dist-server/domain/message/message.module.js +0 -25
  151. package/dist-server/domain/message/message.service.js +0 -160
  152. package/dist-server/domain/onboarding/onboarding.controller.js +0 -97
  153. package/dist-server/domain/onboarding/onboarding.module.js +0 -23
  154. package/dist-server/domain/onboarding/onboarding.service.js +0 -106
  155. package/dist-server/domain/onboarding/onboarding.types.js +0 -2
  156. package/dist-server/domain/onboarding/presets/custom.js +0 -10
  157. package/dist-server/domain/onboarding/presets/dev-team.js +0 -41
  158. package/dist-server/domain/onboarding/presets/index.js +0 -15
  159. package/dist-server/domain/onboarding/presets/marketing-team.js +0 -29
  160. package/dist-server/domain/onboarding/presets/planning-team.js +0 -29
  161. package/dist-server/domain/onboarding/presets/solo.js +0 -17
  162. package/dist-server/domain/planner/dto/planner.dto.js +0 -58
  163. package/dist-server/domain/planner/planner.controller.js +0 -74
  164. package/dist-server/domain/planner/planner.module.js +0 -22
  165. package/dist-server/domain/planner/planner.service.js +0 -269
  166. package/dist-server/domain/project/dto/create-project.dto.js +0 -46
  167. package/dist-server/domain/project/dto/update-project.dto.js +0 -60
  168. package/dist-server/domain/project/project.controller.js +0 -129
  169. package/dist-server/domain/project/project.module.js +0 -22
  170. package/dist-server/domain/project/project.service.js +0 -173
  171. package/dist-server/domain/settings/settings.controller.js +0 -52
  172. package/dist-server/domain/settings/settings.module.js +0 -22
  173. package/dist-server/domain/settings/settings.service.js +0 -105
  174. package/dist-server/domain/task/dto/all-tasks.dto.js +0 -55
  175. package/dist-server/domain/task/dto/list-tasks.dto.js +0 -69
  176. package/dist-server/domain/task/dto/search-tasks.dto.js +0 -66
  177. package/dist-server/domain/task/dto/send-message.dto.js +0 -31
  178. package/dist-server/domain/task/dto/task-status.dto.js +0 -34
  179. package/dist-server/domain/task/dto/workspace-usage.dto.js +0 -38
  180. package/dist-server/domain/task/task.constants.js +0 -5
  181. package/dist-server/domain/task/task.controller.js +0 -169
  182. package/dist-server/domain/task/task.module.js +0 -23
  183. package/dist-server/domain/task/task.service.js +0 -775
  184. package/dist-server/domain/thread/dto/build-context.dto.js +0 -42
  185. package/dist-server/domain/thread/dto/list-messages.dto.js +0 -49
  186. package/dist-server/domain/thread/dto/list-threads.dto.js +0 -70
  187. package/dist-server/domain/thread/dto/search-threads.dto.js +0 -13
  188. package/dist-server/domain/thread/dto/update-thread.dto.js +0 -23
  189. package/dist-server/domain/thread/thread.controller.js +0 -160
  190. package/dist-server/domain/thread/thread.module.js +0 -23
  191. package/dist-server/domain/thread/thread.service.js +0 -419
  192. package/dist-server/domain/usage/usage.controller.js +0 -118
  193. package/dist-server/domain/usage/usage.module.js +0 -21
  194. package/dist-server/domain/usage/usage.service.js +0 -358
  195. package/dist-server/domain/usage/usage.types.js +0 -4
  196. package/dist-server/domain/wbs/wbs.controller.js +0 -51
  197. package/dist-server/domain/wbs/wbs.module.js +0 -21
  198. package/dist-server/domain/wbs/wbs.service.js +0 -94
  199. package/dist-server/domain/workflow/workflow.controller.js +0 -53
  200. package/dist-server/domain/workflow/workflow.module.js +0 -21
  201. package/dist-server/domain/workflow/workflow.service.js +0 -209
  202. package/dist-server/domain/workspace/dto/create-workspace.dto.js +0 -45
  203. package/dist-server/domain/workspace/dto/switch-workspace.dto.js +0 -32
  204. package/dist-server/domain/workspace/dto/workspace-info.dto.js +0 -2
  205. package/dist-server/domain/workspace/workspace.controller.js +0 -98
  206. package/dist-server/domain/workspace/workspace.module.js +0 -22
  207. package/dist-server/domain/workspace/workspace.service.js +0 -198
  208. package/dist-server/main.js +0 -204
  209. package/dist-server/modules/crewx-pool.service.js +0 -75
  210. package/dist-server/modules/crewx.module.js +0 -47
  211. package/dist-server/repository/base-sqlite.repository.js +0 -18
  212. package/dist-server/repository/box.repository.js +0 -99
  213. package/dist-server/repository/message.repository.js +0 -22
  214. package/dist-server/repository/project.repository.js +0 -51
  215. package/dist-server/repository/repository.module.js +0 -34
  216. package/dist-server/repository/request-log.repository.js +0 -96
  217. package/dist-server/repository/task.repository.js +0 -105
  218. package/dist-server/repository/thread.repository.js +0 -165
  219. package/dist-server/shared/crewx-home.js +0 -58
  220. package/dist-server/shared/crewx-state.js +0 -66
  221. package/dist-server/test-utils/compat-database.js +0 -30
  222. package/dist-server/utils/tokenizer.js +0 -8
@@ -1,105 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.TaskRepository = void 0;
10
- const common_1 = require("@nestjs/common");
11
- const repository_1 = require("@crewx/sdk/repository");
12
- const base_sqlite_repository_js_1 = require("./base-sqlite.repository.js");
13
- let TaskRepository = class TaskRepository extends base_sqlite_repository_js_1.BaseSqliteRepository {
14
- sdk = new repository_1.TaskRepository();
15
- /** Find a task by its internal UUID (primary) or by thread_id (fallback).
16
- * When workspaceId is provided, results are restricted to that workspace. */
17
- findTaskStatus(taskId, workspaceId) {
18
- return this.sdk.findTaskStatus(taskId, workspaceId);
19
- }
20
- /** Get child tasks for a parent task.
21
- * @deprecated db 파라미터는 무시됩니다. SDK findChildTasks(parentTaskId, workspaceId?)를 직접 사용하세요. */
22
- findChildTasks(db, parentTaskId) {
23
- void db; // SDK가 내부적으로 DB 핸들을 관리
24
- return this.sdk.findChildTasks(parentTaskId);
25
- }
26
- /** Get workspace usage summary, optionally filtered by workspaceId. */
27
- getWorkspaceUsageSummary(workspaceId) {
28
- return this.sdk.getWorkspaceUsageSummary(workspaceId);
29
- }
30
- /** Aggregate token usage for a thread across all DB paths. */
31
- getThreadTokenUsage(threadId, workspaceId) {
32
- return this.sdk.getThreadTokenUsage(threadId, workspaceId);
33
- }
34
- /** Find tasks matching a thread by thread_id or command column. */
35
- findTasksByThread(threadId, workspaceId) {
36
- return this.sdk.findTasksByThread(threadId, workspaceId);
37
- }
38
- /** TSK.ALL: Find all tasks with filtering, search, and pagination. */
39
- findAllTasks(params) {
40
- const { rows, total } = this.sdk.findAllTasks({
41
- workspaceId: params.workspaceId,
42
- agents: params.agents,
43
- statuses: params.statuses,
44
- q: params.q,
45
- limit: params.limit,
46
- offset: params.offset,
47
- sortDir: params.sortDir,
48
- });
49
- return { tasks: rows, total };
50
- }
51
- /** USG.AGENT: Aggregate per-agent usage within a date range. */
52
- getAgentUsage(from, to, workspace) {
53
- const sdkRows = this.sdk.getAgentUsage(from, to, workspace);
54
- return sdkRows.map((r) => ({
55
- agent_id: r.agentId,
56
- workspace_id: r.workspaceId ?? null,
57
- provider: 'cli',
58
- input_tokens: r.inputTokens,
59
- output_tokens: r.outputTokens,
60
- total_tokens: r.inputTokens + r.outputTokens,
61
- total_cost: r.costUsd,
62
- task_count: r.totalTasks,
63
- active_duration_ms: 0,
64
- last_active_at: null,
65
- }));
66
- }
67
- /** USG.AGENT.TREND: Get raw task rows for trend aggregation (tz conversion done in service). */
68
- getAgentUsageTrendRaw(from, to, workspace) {
69
- const sdkRows = this.sdk.getAgentUsageTrendRaw(from, to, workspace);
70
- // SDK TrendRow.date → legacy AgentTrendRawRow.started_at 매핑
71
- return sdkRows.map((r) => ({
72
- started_at: r.date,
73
- agent_id: r.agentId,
74
- input_tokens: r.inputTokens,
75
- output_tokens: r.outputTokens,
76
- }));
77
- }
78
- /** Find a task by id with workspace isolation for stop operation. */
79
- findTaskForStop(taskId, workspaceId) {
80
- const row = this.sdk.findTaskForStop(taskId, workspaceId);
81
- if (!row)
82
- return undefined;
83
- return { id: row.id, status: row.status, pid: row.pid ?? null };
84
- }
85
- /** Conditionally update task status to failed (race condition safe).
86
- * Returns true if row was updated.
87
- * Note: SDK markTaskFailed returns void; boolean return is preserved for backward compat. */
88
- markTaskFailed(taskId, error, workspaceId) {
89
- this.sdk.markTaskFailed(taskId, error, workspaceId);
90
- // SDK performs status='running' guard internally; assume updated if task was running
91
- return true;
92
- }
93
- /** Fallback: find tasks by prompt text hint. */
94
- findTasksByPromptHint(hint, workspaceId) {
95
- return this.sdk.findTasksByPromptHint(hint, workspaceId);
96
- }
97
- /** Transition orphaned running tasks (no live process) to failed. */
98
- reapOrphanedTasks() {
99
- return this.sdk.reapOrphanedTasks();
100
- }
101
- };
102
- exports.TaskRepository = TaskRepository;
103
- exports.TaskRepository = TaskRepository = __decorate([
104
- (0, common_1.Injectable)()
105
- ], TaskRepository);
@@ -1,165 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.ThreadRepository = void 0;
10
- const common_1 = require("@nestjs/common");
11
- const repository_1 = require("@crewx/sdk/repository");
12
- const base_sqlite_repository_js_1 = require("./base-sqlite.repository.js");
13
- let ThreadRepository = class ThreadRepository extends base_sqlite_repository_js_1.BaseSqliteRepository {
14
- sdkThread = new repository_1.ThreadRepository();
15
- /** Fetch all threads from all DB paths, deduplicated by id.
16
- * When workspaceId is provided, only threads matching that workspace
17
- * (or with NULL workspace_id) are returned. */
18
- findAllThreads(workspaceId) {
19
- try {
20
- return this.sdkThread.findAllThreads(workspaceId);
21
- }
22
- catch (e) {
23
- if (e instanceof repository_1.RepositoryError)
24
- return [];
25
- throw e;
26
- }
27
- }
28
- /** Find a single thread row by id across all DB paths. */
29
- findThreadById(threadId, workspaceId) {
30
- try {
31
- return this.sdkThread.findThreadById(threadId, workspaceId);
32
- }
33
- catch (e) {
34
- if (e instanceof repository_1.RepositoryError)
35
- return undefined;
36
- throw e;
37
- }
38
- }
39
- /** Check if a thread exists in any DB. */
40
- threadExists(threadId, workspaceId) {
41
- try {
42
- return this.sdkThread.threadExists(threadId, workspaceId);
43
- }
44
- catch (e) {
45
- if (e instanceof repository_1.RepositoryError)
46
- return false;
47
- throw e;
48
- }
49
- }
50
- /** Aggregate task stats for a thread across all DB paths. */
51
- aggregateTaskStats(threadId, workspaceId) {
52
- try {
53
- const result = this.sdkThread.aggregateTaskStats(threadId, workspaceId);
54
- return {
55
- taskCount: result.taskCount,
56
- inputTokens: result.inputTokens,
57
- outputTokens: result.outputTokens,
58
- costUsd: result.costUsd,
59
- // SDK returns agentIds, legacy returns agents
60
- agents: result.agentIds,
61
- };
62
- }
63
- catch (e) {
64
- if (e instanceof repository_1.RepositoryError) {
65
- return { taskCount: 0, inputTokens: 0, outputTokens: 0, costUsd: 0, agents: [] };
66
- }
67
- throw e;
68
- }
69
- }
70
- /** Fetch top-level tasks for a thread (parent_task_id IS NULL/empty), deduplicated. */
71
- findTopLevelTasks(threadId, workspaceId) {
72
- try {
73
- return this.sdkThread.findTopLevelTasks(threadId, workspaceId);
74
- }
75
- catch (e) {
76
- if (e instanceof repository_1.RepositoryError)
77
- return [];
78
- throw e;
79
- }
80
- }
81
- /** Fetch ALL tasks for a thread (including children), deduplicated. */
82
- findAllTasks(threadId, workspaceId) {
83
- try {
84
- return this.sdkThread.findAllTasks(threadId, workspaceId);
85
- }
86
- catch (e) {
87
- if (e instanceof repository_1.RepositoryError)
88
- return [];
89
- throw e;
90
- }
91
- }
92
- /** Find a single task by id and threadId across all DB paths, with optional children. */
93
- findTaskById(threadId, taskId, workspaceId) {
94
- try {
95
- return this.sdkThread.findTaskById(threadId, taskId, workspaceId);
96
- }
97
- catch (e) {
98
- if (e instanceof repository_1.RepositoryError)
99
- return undefined;
100
- throw e;
101
- }
102
- }
103
- /** Batch fetch lightweight task summaries for multiple thread IDs. */
104
- batchFetchTasks(threadIds, workspaceId) {
105
- try {
106
- return this.sdkThread.batchFetchTasks(threadIds, workspaceId);
107
- }
108
- catch (e) {
109
- if (e instanceof repository_1.RepositoryError)
110
- return new Map();
111
- throw e;
112
- }
113
- }
114
- /** Update thread title and set title_locked=1 to prevent auto-overwrite.
115
- * Returns true if the thread was found and updated, false if not found. */
116
- updateThreadTitle(threadId, title, workspaceId) {
117
- try {
118
- const existing = this.sdkThread.findThreadById(threadId, workspaceId);
119
- if (!existing)
120
- return false;
121
- this.sdkThread.updateThreadTitle(threadId, title, workspaceId);
122
- return true;
123
- }
124
- catch (e) {
125
- if (e instanceof repository_1.RepositoryError && e.code === 'NOT_FOUND')
126
- return false;
127
- throw e;
128
- }
129
- }
130
- /** Toggle pinned 0↔1 for a thread. Returns new state or null if not found. */
131
- togglePin(threadId, workspaceId) {
132
- try {
133
- return this.sdkThread.togglePin(threadId, workspaceId);
134
- }
135
- catch (e) {
136
- if (e instanceof repository_1.RepositoryError)
137
- return null;
138
- throw e;
139
- }
140
- }
141
- /** Toggle starred 0↔1 for a thread. Returns new state or null if not found. */
142
- toggleStar(threadId, workspaceId) {
143
- try {
144
- return this.sdkThread.toggleStar(threadId, workspaceId);
145
- }
146
- catch (e) {
147
- if (e instanceof repository_1.RepositoryError)
148
- return null;
149
- throw e;
150
- }
151
- }
152
- /** UPSERT thread (used by MSG.SEND).
153
- * workspace_id is required on INSERT to prevent NULL workspace rows. */
154
- upsertThread(threadId, opts) {
155
- this.sdkThread.upsertThread(threadId, {
156
- platform: opts.platform ?? 'cli',
157
- workspaceId: opts.workspaceId,
158
- title: opts.title,
159
- });
160
- }
161
- };
162
- exports.ThreadRepository = ThreadRepository;
163
- exports.ThreadRepository = ThreadRepository = __decorate([
164
- (0, common_1.Injectable)()
165
- ], ThreadRepository);
@@ -1,58 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.getCrewxHome = getCrewxHome;
37
- const os = __importStar(require("os"));
38
- const path = __importStar(require("path"));
39
- const fs = __importStar(require("fs"));
40
- /**
41
- * Returns the canonical path to the crewx home directory (~/.crewx/).
42
- * Priority: CREWX_HOME env > XDG_CONFIG_HOME/crewx (non-Windows) > ~/.crewx/
43
- */
44
- function getCrewxHome() {
45
- if (process.env.CREWX_HOME) {
46
- try {
47
- return fs.realpathSync(process.env.CREWX_HOME);
48
- }
49
- catch {
50
- // CREWX_HOME path doesn't exist yet — fall back to default
51
- return path.join(os.homedir(), '.crewx');
52
- }
53
- }
54
- if (process.platform !== 'win32' && process.env.XDG_CONFIG_HOME) {
55
- return path.join(process.env.XDG_CONFIG_HOME, 'crewx');
56
- }
57
- return path.join(os.homedir(), '.crewx');
58
- }
@@ -1,66 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.readCrewxState = readCrewxState;
37
- exports.writeCrewxState = writeCrewxState;
38
- const fs = __importStar(require("fs"));
39
- const path = __importStar(require("path"));
40
- const crewx_home_js_1 = require("./crewx-home.js");
41
- const STATE_FILE = 'state.json';
42
- function readCrewxState() {
43
- try {
44
- const filePath = path.join((0, crewx_home_js_1.getCrewxHome)(), STATE_FILE);
45
- if (!fs.existsSync(filePath))
46
- return {};
47
- const raw = fs.readFileSync(filePath, 'utf-8');
48
- return JSON.parse(raw);
49
- }
50
- catch {
51
- return {};
52
- }
53
- }
54
- function writeCrewxState(state) {
55
- try {
56
- const dir = (0, crewx_home_js_1.getCrewxHome)();
57
- if (!fs.existsSync(dir)) {
58
- fs.mkdirSync(dir, { recursive: true });
59
- }
60
- const filePath = path.join(dir, STATE_FILE);
61
- fs.writeFileSync(filePath, JSON.stringify(state, null, 2), 'utf-8');
62
- }
63
- catch {
64
- // read-only FS etc — fail silently (fail-open)
65
- }
66
- }
@@ -1,30 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.CompatDatabase = void 0;
7
- const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
8
- class CompatDatabase {
9
- inner;
10
- constructor(path, options) {
11
- const readonly = options?.readonly ?? options?.readOnly ?? false;
12
- this.inner = new better_sqlite3_1.default(path, { readonly });
13
- }
14
- run(sql, values) {
15
- return this.inner.prepare(sql).run(...(values ?? []));
16
- }
17
- get(sql, values) {
18
- return (this.inner.prepare(sql).get(...(values ?? [])) ?? null);
19
- }
20
- all(sql, values) {
21
- return this.inner.prepare(sql).all(...(values ?? []));
22
- }
23
- exec(sql) {
24
- this.inner.exec(sql);
25
- }
26
- close() {
27
- this.inner.close();
28
- }
29
- }
30
- exports.CompatDatabase = CompatDatabase;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.countTokens = countTokens;
4
- const js_tiktoken_1 = require("js-tiktoken");
5
- const enc = (0, js_tiktoken_1.encodingForModel)('gpt-4o');
6
- function countTokens(text) {
7
- return enc.encode(text).length;
8
- }