@kosuke-ai/cli 0.0.57 → 1.0.1-next.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 (263) hide show
  1. package/README.md +47 -434
  2. package/dist/commands/auth.js +117 -0
  3. package/dist/generated/commands/deploy/cancel.js +17 -0
  4. package/dist/generated/commands/deploy/messages.js +17 -0
  5. package/dist/generated/commands/deploy/run.js +60 -0
  6. package/dist/generated/commands/index.js +132 -0
  7. package/dist/generated/commands/preview/get.js +25 -0
  8. package/dist/generated/commands/preview/health.js +25 -0
  9. package/dist/generated/commands/preview/reset.js +27 -0
  10. package/dist/generated/commands/preview/share-create.js +36 -0
  11. package/dist/generated/commands/preview/share-delete.js +26 -0
  12. package/dist/generated/commands/preview/share-get.js +26 -0
  13. package/dist/generated/commands/preview/shared.js +17 -0
  14. package/dist/generated/commands/projects/create.js +37 -0
  15. package/dist/generated/commands/projects/delete.js +17 -0
  16. package/dist/generated/commands/projects/env-vars-add.js +21 -0
  17. package/dist/generated/commands/projects/env-vars-remove.js +21 -0
  18. package/dist/generated/commands/projects/get.js +17 -0
  19. package/dist/generated/commands/projects/list.js +15 -0
  20. package/dist/generated/commands/projects/services-add.js +87 -0
  21. package/dist/generated/commands/projects/services-list.js +18 -0
  22. package/dist/generated/commands/projects/services-remove.js +19 -0
  23. package/dist/generated/commands/projects/services-update.js +81 -0
  24. package/dist/generated/commands/projects/settings-get.js +18 -0
  25. package/dist/generated/commands/projects/settings-import.js +91 -0
  26. package/dist/generated/commands/projects/settings-update.js +77 -0
  27. package/dist/generated/commands/projects/skills.js +35 -0
  28. package/dist/generated/commands/projects/update.js +27 -0
  29. package/dist/generated/commands/sessions/activate.js +18 -0
  30. package/dist/generated/commands/sessions/checklist-generate.js +19 -0
  31. package/dist/generated/commands/sessions/checklist-get.js +19 -0
  32. package/dist/generated/commands/sessions/comments-add.js +63 -0
  33. package/dist/generated/commands/sessions/comments-delete.js +20 -0
  34. package/dist/generated/commands/sessions/comments-list.js +19 -0
  35. package/dist/generated/commands/sessions/comments-update.js +23 -0
  36. package/dist/generated/commands/sessions/create.js +126 -0
  37. package/dist/generated/commands/sessions/delete.js +18 -0
  38. package/dist/generated/commands/sessions/diff-files.js +19 -0
  39. package/dist/generated/commands/sessions/diff-patch.js +86 -0
  40. package/dist/generated/commands/sessions/edit-prompt.js +59 -0
  41. package/dist/generated/commands/sessions/files-get.js +27 -0
  42. package/dist/generated/commands/sessions/files-list.js +19 -0
  43. package/dist/generated/commands/sessions/files-write.js +41 -0
  44. package/dist/generated/commands/sessions/get.js +18 -0
  45. package/dist/generated/commands/sessions/git-commit-message.js +19 -0
  46. package/dist/generated/commands/sessions/git-commit.js +29 -0
  47. package/dist/generated/commands/sessions/git-push.js +19 -0
  48. package/dist/generated/commands/sessions/git-state.js +19 -0
  49. package/dist/generated/commands/sessions/jobs-cancel.js +20 -0
  50. package/dist/generated/commands/sessions/jobs-get.js +20 -0
  51. package/dist/generated/commands/sessions/list.js +81 -0
  52. package/dist/generated/commands/sessions/messages.js +18 -0
  53. package/dist/generated/commands/sessions/search.js +23 -0
  54. package/dist/generated/commands/sessions/send.js +98 -0
  55. package/dist/generated/commands/sessions/update.js +72 -0
  56. package/dist/generated/commands/workspaces/access-status.js +29 -0
  57. package/dist/generated/commands/workspaces/ai-provider-get.js +18 -0
  58. package/dist/generated/commands/workspaces/ai-provider-remove.js +42 -0
  59. package/dist/generated/commands/workspaces/ai-provider-set.js +21 -0
  60. package/dist/generated/commands/workspaces/credits.js +17 -0
  61. package/dist/generated/commands/workspaces/get.js +17 -0
  62. package/dist/generated/commands/workspaces/getting-started-get.js +18 -0
  63. package/dist/generated/commands/workspaces/getting-started-update.js +32 -0
  64. package/dist/generated/commands/workspaces/list.js +15 -0
  65. package/dist/generated/commands/workspaces/members.js +25 -0
  66. package/dist/generated/commands/workspaces/sandbox-limit.js +17 -0
  67. package/dist/generated/commands/workspaces/stop-sandboxes.js +27 -0
  68. package/dist/generated/commands/workspaces/usage.js +32 -0
  69. package/dist/index.js +5 -595
  70. package/dist/program.js +46 -0
  71. package/dist/runtime/attach.js +139 -0
  72. package/dist/runtime/attachments.js +58 -0
  73. package/dist/runtime/client.js +12 -0
  74. package/dist/runtime/config.js +49 -0
  75. package/dist/runtime/credentials.js +24 -0
  76. package/dist/runtime/descriptor.js +7 -0
  77. package/dist/runtime/invoke.js +152 -0
  78. package/dist/runtime/runtime.js +41 -0
  79. package/dist/runtime/version.js +5 -0
  80. package/openapi.json +5222 -0
  81. package/package.json +21 -79
  82. package/LICENSE +0 -21
  83. package/claude.costs.json +0 -34
  84. package/dist/__tests__/utils/file-discovery.test.d.ts +0 -5
  85. package/dist/__tests__/utils/file-discovery.test.d.ts.map +0 -1
  86. package/dist/__tests__/utils/file-discovery.test.js +0 -51
  87. package/dist/__tests__/utils/file-discovery.test.js.map +0 -1
  88. package/dist/__tests__/utils/logger-nologs.test.d.ts +0 -5
  89. package/dist/__tests__/utils/logger-nologs.test.d.ts.map +0 -1
  90. package/dist/__tests__/utils/logger-nologs.test.js +0 -34
  91. package/dist/__tests__/utils/logger-nologs.test.js.map +0 -1
  92. package/dist/__tests__/utils/logger.test.d.ts +0 -5
  93. package/dist/__tests__/utils/logger.test.d.ts.map +0 -1
  94. package/dist/__tests__/utils/logger.test.js +0 -243
  95. package/dist/__tests__/utils/logger.test.js.map +0 -1
  96. package/dist/__tests__/utils/validator.test.d.ts +0 -5
  97. package/dist/__tests__/utils/validator.test.d.ts.map +0 -1
  98. package/dist/__tests__/utils/validator.test.js +0 -206
  99. package/dist/__tests__/utils/validator.test.js.map +0 -1
  100. package/dist/index.d.ts +0 -37
  101. package/dist/index.d.ts.map +0 -1
  102. package/dist/index.js.map +0 -1
  103. package/dist/kosuke/commands/analyse.d.ts +0 -15
  104. package/dist/kosuke/commands/analyse.d.ts.map +0 -1
  105. package/dist/kosuke/commands/analyse.js +0 -304
  106. package/dist/kosuke/commands/analyse.js.map +0 -1
  107. package/dist/kosuke/commands/build.d.ts +0 -35
  108. package/dist/kosuke/commands/build.d.ts.map +0 -1
  109. package/dist/kosuke/commands/build.js +0 -660
  110. package/dist/kosuke/commands/build.js.map +0 -1
  111. package/dist/kosuke/commands/fix.d.ts +0 -21
  112. package/dist/kosuke/commands/fix.d.ts.map +0 -1
  113. package/dist/kosuke/commands/fix.js +0 -256
  114. package/dist/kosuke/commands/fix.js.map +0 -1
  115. package/dist/kosuke/commands/getcode.d.ts +0 -29
  116. package/dist/kosuke/commands/getcode.d.ts.map +0 -1
  117. package/dist/kosuke/commands/getcode.js +0 -248
  118. package/dist/kosuke/commands/getcode.js.map +0 -1
  119. package/dist/kosuke/commands/lint.d.ts +0 -21
  120. package/dist/kosuke/commands/lint.d.ts.map +0 -1
  121. package/dist/kosuke/commands/lint.js +0 -342
  122. package/dist/kosuke/commands/lint.js.map +0 -1
  123. package/dist/kosuke/commands/migrate.d.ts +0 -38
  124. package/dist/kosuke/commands/migrate.d.ts.map +0 -1
  125. package/dist/kosuke/commands/migrate.js +0 -284
  126. package/dist/kosuke/commands/migrate.js.map +0 -1
  127. package/dist/kosuke/commands/plan.d.ts +0 -28
  128. package/dist/kosuke/commands/plan.d.ts.map +0 -1
  129. package/dist/kosuke/commands/plan.js +0 -684
  130. package/dist/kosuke/commands/plan.js.map +0 -1
  131. package/dist/kosuke/commands/requirements.d.ts +0 -52
  132. package/dist/kosuke/commands/requirements.d.ts.map +0 -1
  133. package/dist/kosuke/commands/requirements.js +0 -615
  134. package/dist/kosuke/commands/requirements.js.map +0 -1
  135. package/dist/kosuke/commands/review.d.ts +0 -26
  136. package/dist/kosuke/commands/review.d.ts.map +0 -1
  137. package/dist/kosuke/commands/review.js +0 -303
  138. package/dist/kosuke/commands/review.js.map +0 -1
  139. package/dist/kosuke/commands/serve.d.ts +0 -9
  140. package/dist/kosuke/commands/serve.d.ts.map +0 -1
  141. package/dist/kosuke/commands/serve.js +0 -17
  142. package/dist/kosuke/commands/serve.js.map +0 -1
  143. package/dist/kosuke/commands/ship.d.ts +0 -37
  144. package/dist/kosuke/commands/ship.d.ts.map +0 -1
  145. package/dist/kosuke/commands/ship.js +0 -375
  146. package/dist/kosuke/commands/ship.js.map +0 -1
  147. package/dist/kosuke/commands/sync-rules.d.ts +0 -9
  148. package/dist/kosuke/commands/sync-rules.d.ts.map +0 -1
  149. package/dist/kosuke/commands/sync-rules.js +0 -414
  150. package/dist/kosuke/commands/sync-rules.js.map +0 -1
  151. package/dist/kosuke/commands/test.d.ts +0 -42
  152. package/dist/kosuke/commands/test.d.ts.map +0 -1
  153. package/dist/kosuke/commands/test.js +0 -540
  154. package/dist/kosuke/commands/test.js.map +0 -1
  155. package/dist/kosuke/commands/tickets.d.ts +0 -43
  156. package/dist/kosuke/commands/tickets.d.ts.map +0 -1
  157. package/dist/kosuke/commands/tickets.js +0 -876
  158. package/dist/kosuke/commands/tickets.js.map +0 -1
  159. package/dist/kosuke/commands/validate-tickets.d.ts +0 -23
  160. package/dist/kosuke/commands/validate-tickets.d.ts.map +0 -1
  161. package/dist/kosuke/commands/validate-tickets.js +0 -360
  162. package/dist/kosuke/commands/validate-tickets.js.map +0 -1
  163. package/dist/kosuke/serve/middleware/error-handler.d.ts +0 -14
  164. package/dist/kosuke/serve/middleware/error-handler.d.ts.map +0 -1
  165. package/dist/kosuke/serve/middleware/error-handler.js +0 -42
  166. package/dist/kosuke/serve/middleware/error-handler.js.map +0 -1
  167. package/dist/kosuke/serve/middleware/validation.d.ts +0 -13
  168. package/dist/kosuke/serve/middleware/validation.d.ts.map +0 -1
  169. package/dist/kosuke/serve/middleware/validation.js +0 -38
  170. package/dist/kosuke/serve/middleware/validation.js.map +0 -1
  171. package/dist/kosuke/serve/routes/build.d.ts +0 -6
  172. package/dist/kosuke/serve/routes/build.d.ts.map +0 -1
  173. package/dist/kosuke/serve/routes/build.js +0 -226
  174. package/dist/kosuke/serve/routes/build.js.map +0 -1
  175. package/dist/kosuke/serve/routes/health.d.ts +0 -6
  176. package/dist/kosuke/serve/routes/health.d.ts.map +0 -1
  177. package/dist/kosuke/serve/routes/health.js +0 -11
  178. package/dist/kosuke/serve/routes/health.js.map +0 -1
  179. package/dist/kosuke/serve/routes/plan.d.ts +0 -6
  180. package/dist/kosuke/serve/routes/plan.d.ts.map +0 -1
  181. package/dist/kosuke/serve/routes/plan.js +0 -106
  182. package/dist/kosuke/serve/routes/plan.js.map +0 -1
  183. package/dist/kosuke/serve/server.d.ts +0 -16
  184. package/dist/kosuke/serve/server.d.ts.map +0 -1
  185. package/dist/kosuke/serve/server.js +0 -67
  186. package/dist/kosuke/serve/server.js.map +0 -1
  187. package/dist/kosuke/serve/validation/build.d.ts +0 -41
  188. package/dist/kosuke/serve/validation/build.d.ts.map +0 -1
  189. package/dist/kosuke/serve/validation/build.js +0 -20
  190. package/dist/kosuke/serve/validation/build.js.map +0 -1
  191. package/dist/kosuke/serve/validation/plan.d.ts +0 -26
  192. package/dist/kosuke/serve/validation/plan.d.ts.map +0 -1
  193. package/dist/kosuke/serve/validation/plan.js +0 -15
  194. package/dist/kosuke/serve/validation/plan.js.map +0 -1
  195. package/dist/kosuke/types.d.ts +0 -539
  196. package/dist/kosuke/types.d.ts.map +0 -1
  197. package/dist/kosuke/types.js +0 -5
  198. package/dist/kosuke/types.js.map +0 -1
  199. package/dist/kosuke/utils/batch-creator.d.ts +0 -14
  200. package/dist/kosuke/utils/batch-creator.d.ts.map +0 -1
  201. package/dist/kosuke/utils/batch-creator.js +0 -76
  202. package/dist/kosuke/utils/batch-creator.js.map +0 -1
  203. package/dist/kosuke/utils/claude-agent.d.ts +0 -140
  204. package/dist/kosuke/utils/claude-agent.d.ts.map +0 -1
  205. package/dist/kosuke/utils/claude-agent.js +0 -388
  206. package/dist/kosuke/utils/claude-agent.js.map +0 -1
  207. package/dist/kosuke/utils/constants.d.ts +0 -40
  208. package/dist/kosuke/utils/constants.d.ts.map +0 -1
  209. package/dist/kosuke/utils/constants.js +0 -54
  210. package/dist/kosuke/utils/constants.js.map +0 -1
  211. package/dist/kosuke/utils/file-discovery.d.ts +0 -15
  212. package/dist/kosuke/utils/file-discovery.d.ts.map +0 -1
  213. package/dist/kosuke/utils/file-discovery.js +0 -80
  214. package/dist/kosuke/utils/file-discovery.js.map +0 -1
  215. package/dist/kosuke/utils/git.d.ts +0 -41
  216. package/dist/kosuke/utils/git.d.ts.map +0 -1
  217. package/dist/kosuke/utils/git.js +0 -145
  218. package/dist/kosuke/utils/git.js.map +0 -1
  219. package/dist/kosuke/utils/github.d.ts +0 -17
  220. package/dist/kosuke/utils/github.d.ts.map +0 -1
  221. package/dist/kosuke/utils/github.js +0 -22
  222. package/dist/kosuke/utils/github.js.map +0 -1
  223. package/dist/kosuke/utils/interactive-input.d.ts +0 -22
  224. package/dist/kosuke/utils/interactive-input.d.ts.map +0 -1
  225. package/dist/kosuke/utils/interactive-input.js +0 -124
  226. package/dist/kosuke/utils/interactive-input.js.map +0 -1
  227. package/dist/kosuke/utils/json-parser.d.ts +0 -14
  228. package/dist/kosuke/utils/json-parser.d.ts.map +0 -1
  229. package/dist/kosuke/utils/json-parser.js +0 -40
  230. package/dist/kosuke/utils/json-parser.js.map +0 -1
  231. package/dist/kosuke/utils/logger.d.ts +0 -161
  232. package/dist/kosuke/utils/logger.d.ts.map +0 -1
  233. package/dist/kosuke/utils/logger.js +0 -234
  234. package/dist/kosuke/utils/logger.js.map +0 -1
  235. package/dist/kosuke/utils/playwright-mcp-client.d.ts +0 -46
  236. package/dist/kosuke/utils/playwright-mcp-client.d.ts.map +0 -1
  237. package/dist/kosuke/utils/playwright-mcp-client.js +0 -135
  238. package/dist/kosuke/utils/playwright-mcp-client.js.map +0 -1
  239. package/dist/kosuke/utils/pr-orchestrator.d.ts +0 -49
  240. package/dist/kosuke/utils/pr-orchestrator.d.ts.map +0 -1
  241. package/dist/kosuke/utils/pr-orchestrator.js +0 -154
  242. package/dist/kosuke/utils/pr-orchestrator.js.map +0 -1
  243. package/dist/kosuke/utils/repository-manager.d.ts +0 -13
  244. package/dist/kosuke/utils/repository-manager.d.ts.map +0 -1
  245. package/dist/kosuke/utils/repository-manager.js +0 -94
  246. package/dist/kosuke/utils/repository-manager.js.map +0 -1
  247. package/dist/kosuke/utils/repository-resolver.d.ts +0 -12
  248. package/dist/kosuke/utils/repository-resolver.d.ts.map +0 -1
  249. package/dist/kosuke/utils/repository-resolver.js +0 -186
  250. package/dist/kosuke/utils/repository-resolver.js.map +0 -1
  251. package/dist/kosuke/utils/tickets-manager.d.ts +0 -34
  252. package/dist/kosuke/utils/tickets-manager.d.ts.map +0 -1
  253. package/dist/kosuke/utils/tickets-manager.js +0 -106
  254. package/dist/kosuke/utils/tickets-manager.js.map +0 -1
  255. package/dist/kosuke/utils/validator.d.ts +0 -45
  256. package/dist/kosuke/utils/validator.d.ts.map +0 -1
  257. package/dist/kosuke/utils/validator.js +0 -248
  258. package/dist/kosuke/utils/validator.js.map +0 -1
  259. package/dist/lib.d.ts +0 -104
  260. package/dist/lib.d.ts.map +0 -1
  261. package/dist/lib.js +0 -104
  262. package/dist/lib.js.map +0 -1
  263. package/dist/package.json +0 -99
@@ -1,45 +0,0 @@
1
- /**
2
- * Code validation utilities (lint, typecheck, format)
3
- */
4
- export interface ValidationResult {
5
- success: boolean;
6
- output?: string;
7
- error?: string;
8
- warning?: string;
9
- }
10
- interface PackageJson {
11
- scripts?: Record<string, string>;
12
- }
13
- /**
14
- * Detect package manager based on lock files
15
- */
16
- export declare function detectPackageManager(cwd?: string): string;
17
- /**
18
- * Read package.json and extract scripts
19
- */
20
- export declare function readPackageJsonScripts(cwd?: string): PackageJson['scripts'] | null;
21
- /**
22
- * Run formatting using detected package manager and scripts
23
- */
24
- export declare function runFormat(cwd?: string): Promise<ValidationResult>;
25
- /**
26
- * Run linting using detected package manager and scripts
27
- */
28
- export declare function runLint(cwd?: string): Promise<ValidationResult>;
29
- /**
30
- * Run TypeScript type checking using detected package manager
31
- */
32
- export declare function runTypecheck(cwd?: string): Promise<ValidationResult>;
33
- /**
34
- * Run tests using package.json test script
35
- */
36
- export declare function runTests(cwd?: string): Promise<ValidationResult>;
37
- /**
38
- * Run comprehensive linting and fixing
39
- */
40
- export declare function runComprehensiveLinting(cwd?: string): Promise<{
41
- success: boolean;
42
- fixCount: number;
43
- }>;
44
- export {};
45
- //# sourceMappingURL=validator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../kosuke/utils/validator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,WAAW;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAQxE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,GAAE,MAAsB,GAAG,WAAW,CAAC,SAAS,CAAC,GAAG,IAAI,CAcjG;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoCtF;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAuCpF;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoCzF;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA2BrF;AAOD;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAmFjD"}
@@ -1,248 +0,0 @@
1
- /**
2
- * Code validation utilities (lint, typecheck, format)
3
- */
4
- import { execSync } from 'child_process';
5
- import { existsSync, readFileSync } from 'fs';
6
- import { join } from 'path';
7
- /**
8
- * Detect package manager based on lock files
9
- */
10
- export function detectPackageManager(cwd = process.cwd()) {
11
- if (existsSync(join(cwd, 'bun.lockb')))
12
- return 'bun';
13
- if (existsSync(join(cwd, 'pnpm-lock.yaml')))
14
- return 'pnpm';
15
- if (existsSync(join(cwd, 'yarn.lock')))
16
- return 'yarn';
17
- if (existsSync(join(cwd, 'package-lock.json')))
18
- return 'npm';
19
- // Default to npm if no lock file found
20
- return 'npm';
21
- }
22
- /**
23
- * Read package.json and extract scripts
24
- */
25
- export function readPackageJsonScripts(cwd = process.cwd()) {
26
- const packageJsonPath = join(cwd, 'package.json');
27
- if (!existsSync(packageJsonPath)) {
28
- return null;
29
- }
30
- try {
31
- const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
32
- return packageJson.scripts || null;
33
- }
34
- catch (error) {
35
- console.warn(`⚠️ Failed to parse package.json: ${error}`);
36
- return null;
37
- }
38
- }
39
- /**
40
- * Run formatting using detected package manager and scripts
41
- */
42
- export async function runFormat(cwd = process.cwd()) {
43
- const scripts = readPackageJsonScripts(cwd);
44
- if (!scripts) {
45
- return {
46
- success: false,
47
- error: 'package.json not found or has no scripts section',
48
- };
49
- }
50
- if (!scripts.format) {
51
- return {
52
- success: true,
53
- warning: `⚠️ No 'format' script found in package.json. Skipping formatting.\n💡 Hint: kosuke-template uses: "format": "prettier --write ."`,
54
- };
55
- }
56
- const packageManager = detectPackageManager(cwd);
57
- const command = `${packageManager} run format`;
58
- try {
59
- const output = execSync(command, {
60
- cwd,
61
- encoding: 'utf-8',
62
- stdio: 'pipe',
63
- });
64
- return { success: true, output };
65
- }
66
- catch (error) {
67
- const err = error;
68
- const errorMessage = err.stdout || err.stderr || err.message || '';
69
- return {
70
- success: false,
71
- error: `$ ${command}\n\n${errorMessage}`,
72
- };
73
- }
74
- }
75
- /**
76
- * Run linting using detected package manager and scripts
77
- */
78
- export async function runLint(cwd = process.cwd()) {
79
- const scripts = readPackageJsonScripts(cwd);
80
- if (!scripts) {
81
- return {
82
- success: false,
83
- error: 'package.json not found or has no scripts section',
84
- };
85
- }
86
- if (!scripts.lint) {
87
- return {
88
- success: true,
89
- warning: `⚠️ No 'lint' script found in package.json. Skipping linting.\n💡 Hint: kosuke-template uses: "lint": "eslint . --ext .js,.jsx,.ts,.tsx --max-warnings 0"`,
90
- };
91
- }
92
- const packageManager = detectPackageManager(cwd);
93
- // Try to append --fix flag for auto-fixing
94
- // Note: This works with most linters (eslint, biome, etc.)
95
- const command = `${packageManager} run lint -- --fix`;
96
- try {
97
- const output = execSync(command, {
98
- cwd,
99
- encoding: 'utf-8',
100
- stdio: 'pipe',
101
- });
102
- return { success: true, output };
103
- }
104
- catch (error) {
105
- const err = error;
106
- const errorMessage = err.stdout || err.stderr || err.message || '';
107
- return {
108
- success: false,
109
- error: `$ ${command}\n\n${errorMessage}`,
110
- };
111
- }
112
- }
113
- /**
114
- * Run TypeScript type checking using detected package manager
115
- */
116
- export async function runTypecheck(cwd = process.cwd()) {
117
- const scripts = readPackageJsonScripts(cwd);
118
- if (!scripts) {
119
- return {
120
- success: false,
121
- error: 'package.json not found or has no scripts section',
122
- };
123
- }
124
- if (!scripts.typecheck) {
125
- return {
126
- success: true,
127
- warning: `⚠️ No 'typecheck' script found in package.json. Skipping type checking.\n💡 Hint: kosuke-template uses: "typecheck": "tsc --noEmit"`,
128
- };
129
- }
130
- const packageManager = detectPackageManager(cwd);
131
- const command = `${packageManager} run typecheck`;
132
- try {
133
- const output = execSync(command, {
134
- cwd,
135
- encoding: 'utf-8',
136
- stdio: 'pipe',
137
- });
138
- return { success: true, output };
139
- }
140
- catch (error) {
141
- const err = error;
142
- const errorMessage = err.stdout || err.stderr || err.message || '';
143
- return {
144
- success: false,
145
- error: `$ ${command}\n\n${errorMessage}`,
146
- };
147
- }
148
- }
149
- /**
150
- * Run tests using package.json test script
151
- */
152
- export async function runTests(cwd = process.cwd()) {
153
- const scripts = readPackageJsonScripts(cwd);
154
- if (!scripts || !scripts.test) {
155
- return {
156
- success: true,
157
- warning: '⚠️ No test script found in package.json. Skipping tests.',
158
- };
159
- }
160
- const packageManager = detectPackageManager(cwd);
161
- const command = `${packageManager} run test`;
162
- try {
163
- const output = execSync(command, {
164
- cwd,
165
- encoding: 'utf-8',
166
- stdio: 'pipe',
167
- });
168
- return { success: true, output };
169
- }
170
- catch (error) {
171
- const err = error;
172
- return {
173
- success: false,
174
- error: `$ ${command}\n\n${err.stdout || err.stderr || err.message}`,
175
- };
176
- }
177
- }
178
- /**
179
- * Run comprehensive linting and fixing
180
- */
181
- export async function runComprehensiveLinting(cwd = process.cwd()) {
182
- console.log('\n🔍 Running comprehensive code quality checks...\n');
183
- const validationSteps = [
184
- { name: '🎨 Format', run: () => runFormat(cwd) },
185
- { name: '🔍 Lint', run: () => runLint(cwd) },
186
- { name: '🔎 TypeCheck', run: () => runTypecheck(cwd) },
187
- { name: '🧪 Tests', run: () => runTests(cwd) },
188
- ];
189
- let totalFixCount = 0;
190
- // Run each validation step
191
- for (const step of validationSteps) {
192
- console.log(`\n${'='.repeat(60)}`);
193
- console.log(`Running: ${step.name}`);
194
- console.log(`${'='.repeat(60)}\n`);
195
- let result = await step.run();
196
- // Handle warnings (non-blocking)
197
- if (result.warning) {
198
- console.log(result.warning);
199
- console.log(`✅ ${step.name} - SKIPPED\n`);
200
- continue;
201
- }
202
- // Handle success
203
- if (result.success) {
204
- console.log(`✅ ${step.name} - PASSED\n`);
205
- continue;
206
- }
207
- // Handle errors - attempt to fix
208
- console.log(`❌ ${step.name} - FAILED:\n`);
209
- console.log(result.error);
210
- // Attempt to fix errors with Claude (max 3 attempts per step)
211
- let attemptCount = 0;
212
- const maxAttempts = 3;
213
- while (!result.success && attemptCount < maxAttempts) {
214
- attemptCount++;
215
- console.log(`\n${'='.repeat(60)}`);
216
- console.log(`🔄 ${step.name} Fix Attempt ${attemptCount}/${maxAttempts}`);
217
- console.log(`${'='.repeat(60)}`);
218
- const { fixCodeQualityErrors } = await import('../commands/lint.js');
219
- const fixApplied = await fixCodeQualityErrors(step.name, result.error || '', cwd);
220
- if (!fixApplied) {
221
- console.log(`\n⚠️ No fixes were applied by Claude for ${step.name}`);
222
- break;
223
- }
224
- totalFixCount++;
225
- // Verify fixes by running validation again
226
- console.log(`\n🔍 Verifying ${step.name} fixes...\n`);
227
- result = await step.run();
228
- if (result.success) {
229
- console.log(`✅ ${step.name} - All errors fixed!\n`);
230
- break;
231
- }
232
- else {
233
- const errorLines = result.error?.split('\n').length || 0;
234
- console.log(`\n⚠️ Some ${step.name} errors remain (${errorLines} lines):`);
235
- console.log(result.error);
236
- }
237
- }
238
- // Check if step still has errors after attempts
239
- if (!result.success) {
240
- throw new Error(`${step.name} errors remain after ${maxAttempts} attempts. Cannot proceed.`);
241
- }
242
- }
243
- console.log('\n' + '='.repeat(60));
244
- console.log('✅ All validation steps passed!');
245
- console.log('='.repeat(60));
246
- return { success: true, fixCount: totalFixCount };
247
- }
248
- //# sourceMappingURL=validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../kosuke/utils/validator.ts"],"names":[],"mappings":"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"}
package/dist/lib.d.ts DELETED
@@ -1,104 +0,0 @@
1
- /**
2
- * Kosuke CLI - Library API
3
- *
4
- * Use this module to programmatically access Kosuke CLI functionality
5
- * in your TypeScript projects.
6
- *
7
- * @example
8
- * ```typescript
9
- * import {
10
- * analyseCommand,
11
- * getCodeCore,
12
- * shipCore,
13
- * ticketsCoreStream,
14
- * fixCoreStream,
15
- * discoverFiles,
16
- * runLint,
17
- * logger,
18
- * withCommandTracking,
19
- * type Ticket,
20
- * type ValidationResult,
21
- * type CommandExecutionContext
22
- * } from '@kosuke-ai/cli';
23
- *
24
- * // Run analysis programmatically
25
- * await analyseCommand({ scope: 'src', pr: false });
26
- *
27
- * // Explore code from a repository
28
- * const result = await getCodeCore({
29
- * repo: 'owner/repo',
30
- * query: 'How does authentication work?'
31
- * });
32
- *
33
- * // Ship a ticket (ticket-agnostic)
34
- * const ticket: Ticket = {
35
- * id: 'FRONTEND-1',
36
- * title: 'Implement login page',
37
- * description: 'Create a login page with email/password...',
38
- * estimatedEffort: 5,
39
- * status: 'InProgress'
40
- * };
41
- * const shipResult = await shipCore({
42
- * ticketData: ticket,
43
- * review: true,
44
- * directory: './my-project'
45
- * });
46
- *
47
- * // Generate tickets with streaming (recommended)
48
- * for await (const event of ticketsCoreStream({ directory: './my-project' })) {
49
- * if (event.type === 'done' && event.data.status === 'success') {
50
- * console.log(`Generated ${event.data.totalTickets} tickets`);
51
- * }
52
- * }
53
- *
54
- * // Fix malformed JSON with streaming
55
- * for await (const event of fixCoreStream({ format: 'json', file: 'raw.txt' })) {
56
- * if (event.type === 'done' && event.data.status === 'success') {
57
- * console.log(`Extracted ${event.data.ticketsExtracted} tickets`);
58
- * }
59
- * }
60
- *
61
- * // Use validation utilities
62
- * const lintResult: ValidationResult = await runLint();
63
- *
64
- * // Discover files
65
- * const files = await discoverFiles({ types: ['ts', 'tsx'] });
66
- *
67
- * // Track command execution with automatic logging
68
- * await withCommandTracking('ship', async (ctx: CommandExecutionContext) => {
69
- * // Your command logic here
70
- * ctx.fixesApplied = 5;
71
- * ctx.filesModified = ['src/app.ts'];
72
- * });
73
- * ```
74
- */
75
- export { analyseCommand } from './kosuke/commands/analyse.js';
76
- export { buildCommand } from './kosuke/commands/build.js';
77
- export { fixCommand, fixCoreStream } from './kosuke/commands/fix.js';
78
- export { getCodeCore } from './kosuke/commands/getcode.js';
79
- export { fixCodeQualityErrors, fixLintErrors, lintCommand } from './kosuke/commands/lint.js';
80
- export { migrateCommand, migrateCore } from './kosuke/commands/migrate.js';
81
- export { planCommand, planCoreStream } from './kosuke/commands/plan.js';
82
- export { requirementsCommand, requirementsCore } from './kosuke/commands/requirements.js';
83
- export { reviewCommand, reviewCore } from './kosuke/commands/review.js';
84
- export { shipCore } from './kosuke/commands/ship.js';
85
- export { syncRulesCommand } from './kosuke/commands/sync-rules.js';
86
- export { testCommand, testCore } from './kosuke/commands/test.js';
87
- export { ticketsCoreStream } from './kosuke/commands/tickets.js';
88
- export { validateTicketsCommand, validateTicketsCoreStream, } from './kosuke/commands/validate-tickets.js';
89
- export { createBatches } from './kosuke/utils/batch-creator.js';
90
- export { discoverFiles } from './kosuke/utils/file-discovery.js';
91
- export { askQuestion } from './kosuke/utils/interactive-input.js';
92
- export { extractTicketsJSON } from './kosuke/utils/json-parser.js';
93
- export { logger, setupCancellationHandler, withCommandTracking } from './kosuke/utils/logger.js';
94
- export { getRepoLocalPath } from './kosuke/utils/repository-manager.js';
95
- export { validateRepoAccess } from './kosuke/utils/repository-resolver.js';
96
- export { displayTicketsSummary, loadTicketsFile, saveTicketsFile, writeTicketsFile, } from './kosuke/utils/tickets-manager.js';
97
- export { detectPackageManager, readPackageJsonScripts, runComprehensiveLinting, runFormat, runLint, runTests, runTypecheck, } from './kosuke/utils/validator.js';
98
- export type { AnalyseOptions, Batch, BuildOptions, BuildResult, BuildStreamEvent, CliLogData, CodeExplorationResult, CommandExecutionContext, CommandName, ExecutionStatus, Fix, FixOptions, FixStreamEvent, GetCodeOptions, GitInfo, LintOptions, MCPToolUsage, MigrateOptions, MigrateResult, MigrateStreamEvent, PlanOptions, PlanResult, PlanStreamEvent, ReviewContext, ReviewOptions, ReviewResult, ReviewStreamEvent, RulesAdaptation, ShipOptions, ShipResult, ShipStreamEvent, SyncRulesOptions, TestContext, TestOptions, TestResult, TestRunnerOptions, TestRunnerResult, TestStreamEvent, Ticket, TicketsOptions, TicketsStreamEvent, ValidateTicketsOptions, ValidateTicketsStreamEvent, } from './kosuke/types.js';
99
- export type { RequirementsOptions, RequirementsResult } from './kosuke/commands/requirements.js';
100
- export { createServer, startServer, type ServeOptions } from './kosuke/serve/server.js';
101
- export type { AgentConfig, AgentResult, AgentStreamEvent, AgentVerbosity, ClaudeMessage, ParsedToolAction, } from './kosuke/utils/claude-agent.js';
102
- export type { ValidationResult } from './kosuke/utils/validator.js';
103
- export declare const version: string;
104
- //# sourceMappingURL=lib.d.ts.map
package/dist/lib.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../lib.ts"],"names":[],"mappings":"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"}
package/dist/lib.js DELETED
@@ -1,104 +0,0 @@
1
- /**
2
- * Kosuke CLI - Library API
3
- *
4
- * Use this module to programmatically access Kosuke CLI functionality
5
- * in your TypeScript projects.
6
- *
7
- * @example
8
- * ```typescript
9
- * import {
10
- * analyseCommand,
11
- * getCodeCore,
12
- * shipCore,
13
- * ticketsCoreStream,
14
- * fixCoreStream,
15
- * discoverFiles,
16
- * runLint,
17
- * logger,
18
- * withCommandTracking,
19
- * type Ticket,
20
- * type ValidationResult,
21
- * type CommandExecutionContext
22
- * } from '@kosuke-ai/cli';
23
- *
24
- * // Run analysis programmatically
25
- * await analyseCommand({ scope: 'src', pr: false });
26
- *
27
- * // Explore code from a repository
28
- * const result = await getCodeCore({
29
- * repo: 'owner/repo',
30
- * query: 'How does authentication work?'
31
- * });
32
- *
33
- * // Ship a ticket (ticket-agnostic)
34
- * const ticket: Ticket = {
35
- * id: 'FRONTEND-1',
36
- * title: 'Implement login page',
37
- * description: 'Create a login page with email/password...',
38
- * estimatedEffort: 5,
39
- * status: 'InProgress'
40
- * };
41
- * const shipResult = await shipCore({
42
- * ticketData: ticket,
43
- * review: true,
44
- * directory: './my-project'
45
- * });
46
- *
47
- * // Generate tickets with streaming (recommended)
48
- * for await (const event of ticketsCoreStream({ directory: './my-project' })) {
49
- * if (event.type === 'done' && event.data.status === 'success') {
50
- * console.log(`Generated ${event.data.totalTickets} tickets`);
51
- * }
52
- * }
53
- *
54
- * // Fix malformed JSON with streaming
55
- * for await (const event of fixCoreStream({ format: 'json', file: 'raw.txt' })) {
56
- * if (event.type === 'done' && event.data.status === 'success') {
57
- * console.log(`Extracted ${event.data.ticketsExtracted} tickets`);
58
- * }
59
- * }
60
- *
61
- * // Use validation utilities
62
- * const lintResult: ValidationResult = await runLint();
63
- *
64
- * // Discover files
65
- * const files = await discoverFiles({ types: ['ts', 'tsx'] });
66
- *
67
- * // Track command execution with automatic logging
68
- * await withCommandTracking('ship', async (ctx: CommandExecutionContext) => {
69
- * // Your command logic here
70
- * ctx.fixesApplied = 5;
71
- * ctx.filesModified = ['src/app.ts'];
72
- * });
73
- * ```
74
- */
75
- import packageJson from './package.json';
76
- // Re-export commands
77
- export { analyseCommand } from './kosuke/commands/analyse.js';
78
- export { buildCommand } from './kosuke/commands/build.js';
79
- export { fixCommand, fixCoreStream } from './kosuke/commands/fix.js';
80
- export { getCodeCore } from './kosuke/commands/getcode.js';
81
- export { fixCodeQualityErrors, fixLintErrors, lintCommand } from './kosuke/commands/lint.js';
82
- export { migrateCommand, migrateCore } from './kosuke/commands/migrate.js';
83
- export { planCommand, planCoreStream } from './kosuke/commands/plan.js';
84
- export { requirementsCommand, requirementsCore } from './kosuke/commands/requirements.js';
85
- export { reviewCommand, reviewCore } from './kosuke/commands/review.js';
86
- export { shipCore } from './kosuke/commands/ship.js';
87
- export { syncRulesCommand } from './kosuke/commands/sync-rules.js';
88
- export { testCommand, testCore } from './kosuke/commands/test.js';
89
- export { ticketsCoreStream } from './kosuke/commands/tickets.js';
90
- export { validateTicketsCommand, validateTicketsCoreStream, } from './kosuke/commands/validate-tickets.js';
91
- // Re-export utilities
92
- export { createBatches } from './kosuke/utils/batch-creator.js';
93
- export { discoverFiles } from './kosuke/utils/file-discovery.js';
94
- export { askQuestion } from './kosuke/utils/interactive-input.js';
95
- export { extractTicketsJSON } from './kosuke/utils/json-parser.js';
96
- export { logger, setupCancellationHandler, withCommandTracking } from './kosuke/utils/logger.js';
97
- export { getRepoLocalPath } from './kosuke/utils/repository-manager.js';
98
- export { validateRepoAccess } from './kosuke/utils/repository-resolver.js';
99
- export { displayTicketsSummary, loadTicketsFile, saveTicketsFile, writeTicketsFile, } from './kosuke/utils/tickets-manager.js';
100
- export { detectPackageManager, readPackageJsonScripts, runComprehensiveLinting, runFormat, runLint, runTests, runTypecheck, } from './kosuke/utils/validator.js';
101
- export { createServer, startServer } from './kosuke/serve/server.js';
102
- // Export version from package.json
103
- export const version = packageJson.version;
104
- //# sourceMappingURL=lib.js.map
package/dist/lib.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyEG;AAEH,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,qBAAqB;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7F,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,uCAAuC,CAAC;AAE/C,sBAAsB;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACjG,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,gBAAgB,GACjB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,SAAS,EACT,OAAO,EACP,QAAQ,EACR,YAAY,GACb,MAAM,6BAA6B,CAAC;AAoDrC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,0BAA0B,CAAC;AAWxF,mCAAmC;AACnC,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC"}
package/dist/package.json DELETED
@@ -1,99 +0,0 @@
1
- {
2
- "name": "@kosuke-ai/cli",
3
- "version": "0.0.57",
4
- "description": "Kosuke CLI - Development automation tool for syncing rules and analyzing code quality",
5
- "keywords": [
6
- "CLI",
7
- "automation",
8
- "code-quality",
9
- "claude-ai"
10
- ],
11
- "homepage": "https://github.com/Kosuke-Org/kosuke-cli#readme",
12
- "bugs": {
13
- "url": "https://github.com/Kosuke-Org/kosuke-cli/issues"
14
- },
15
- "repository": {
16
- "type": "git",
17
- "url": "git+https://github.com/Kosuke-Org/kosuke-cli.git"
18
- },
19
- "license": "ISC",
20
- "author": "filippo.pedrazzini@kosuke.ai",
21
- "type": "module",
22
- "main": "dist/lib.js",
23
- "types": "dist/lib.d.ts",
24
- "bin": {
25
- "kosuke": "dist/index.js"
26
- },
27
- "exports": {
28
- ".": {
29
- "import": "./dist/lib.js",
30
- "types": "./dist/lib.d.ts"
31
- },
32
- "./cli": "./dist/index.js"
33
- },
34
- "files": [
35
- "dist",
36
- "claude.costs.json",
37
- "package.json",
38
- "README.md",
39
- "LICENSE"
40
- ],
41
- "scripts": {
42
- "build": "tsc && chmod +x dist/index.js",
43
- "build:watch": "tsc --watch",
44
- "clean": "rm -rf dist",
45
- "prepublishOnly": "npm run clean && npm run build",
46
- "dev": "tsx index.ts",
47
- "dev:link": "npm run build && npm link && npm run build:watch",
48
- "test": "vitest run",
49
- "test:watch": "vitest",
50
- "test:coverage": "vitest run --coverage",
51
- "prepare": "husky",
52
- "lint": "eslint .",
53
- "lint:fix": "eslint . --fix",
54
- "format": "prettier --write \"**/*.{ts,js,json,md}\"",
55
- "format:check": "prettier --check \"**/*.{ts,js,json,md}\"",
56
- "typecheck": "tsc --noEmit",
57
- "knip": "knip",
58
- "lint-staged": "lint-staged",
59
- "check:all": "npm run lint && npm run typecheck && npm test && npm run knip"
60
- },
61
- "dependencies": {
62
- "@anthropic-ai/claude-agent-sdk": "^0.1.0",
63
- "@anthropic-ai/sdk": "^0.71.2",
64
- "@modelcontextprotocol/sdk": "^1.0.4",
65
- "@octokit/rest": "^22.0.1",
66
- "dotenv": "^17.2.3",
67
- "fastify": "^5.6.2",
68
- "glob": "^13.0.0",
69
- "ignore": "^7.0.5",
70
- "simple-git": "^3.22.0",
71
- "zod": "^3.25.76"
72
- },
73
- "devDependencies": {
74
- "@playwright/test": "^1.49.1",
75
- "@types/node": "^20.11.0",
76
- "@typescript-eslint/eslint-plugin": "^8.19.1",
77
- "@typescript-eslint/parser": "^8.19.1",
78
- "@vitest/coverage-v8": "^3.1.3",
79
- "eslint": "^9.18.0",
80
- "eslint-config-prettier": "^9.1.0",
81
- "husky": "^9.1.7",
82
- "knip": "^5.45.3",
83
- "lint-staged": "^15.2.11",
84
- "prettier": "^3.4.2",
85
- "tsx": "^4.7.0",
86
- "typescript": "^5.3.0",
87
- "vitest": "^3.1.3"
88
- },
89
- "lint-staged": {
90
- "*.{ts,js}": [
91
- "prettier --write",
92
- "eslint --fix --max-warnings 0",
93
- "vitest related --run"
94
- ],
95
- "*.{json,md}": [
96
- "prettier --write"
97
- ]
98
- }
99
- }