@kosuke-ai/cli 0.0.43 → 0.0.45

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 (86) hide show
  1. package/README.md +94 -1
  2. package/claude.costs.json +34 -0
  3. package/dist/index.js +55 -9
  4. package/dist/index.js.map +1 -1
  5. package/dist/kosuke/commands/build.d.ts +5 -1
  6. package/dist/kosuke/commands/build.d.ts.map +1 -1
  7. package/dist/kosuke/commands/build.js +300 -4
  8. package/dist/kosuke/commands/build.js.map +1 -1
  9. package/dist/kosuke/commands/migrate.d.ts +6 -1
  10. package/dist/kosuke/commands/migrate.d.ts.map +1 -1
  11. package/dist/kosuke/commands/migrate.js +124 -37
  12. package/dist/kosuke/commands/migrate.js.map +1 -1
  13. package/dist/kosuke/commands/plan.d.ts +4 -20
  14. package/dist/kosuke/commands/plan.d.ts.map +1 -1
  15. package/dist/kosuke/commands/plan.js +471 -679
  16. package/dist/kosuke/commands/plan.js.map +1 -1
  17. package/dist/kosuke/commands/requirements.js +2 -2
  18. package/dist/kosuke/commands/requirements.js.map +1 -1
  19. package/dist/kosuke/commands/review.d.ts +6 -1
  20. package/dist/kosuke/commands/review.d.ts.map +1 -1
  21. package/dist/kosuke/commands/review.js +168 -68
  22. package/dist/kosuke/commands/review.js.map +1 -1
  23. package/dist/kosuke/commands/serve.d.ts +9 -0
  24. package/dist/kosuke/commands/serve.d.ts.map +1 -0
  25. package/dist/kosuke/commands/serve.js +17 -0
  26. package/dist/kosuke/commands/serve.js.map +1 -0
  27. package/dist/kosuke/commands/ship.d.ts +6 -1
  28. package/dist/kosuke/commands/ship.d.ts.map +1 -1
  29. package/dist/kosuke/commands/ship.js +226 -67
  30. package/dist/kosuke/commands/ship.js.map +1 -1
  31. package/dist/kosuke/commands/test.d.ts +11 -6
  32. package/dist/kosuke/commands/test.d.ts.map +1 -1
  33. package/dist/kosuke/commands/test.js +438 -105
  34. package/dist/kosuke/commands/test.js.map +1 -1
  35. package/dist/kosuke/commands/tickets.d.ts +7 -15
  36. package/dist/kosuke/commands/tickets.d.ts.map +1 -1
  37. package/dist/kosuke/commands/tickets.js +17 -61
  38. package/dist/kosuke/commands/tickets.js.map +1 -1
  39. package/dist/kosuke/serve/middleware/error-handler.d.ts +13 -0
  40. package/dist/kosuke/serve/middleware/error-handler.d.ts.map +1 -0
  41. package/dist/kosuke/serve/middleware/error-handler.js +34 -0
  42. package/dist/kosuke/serve/middleware/error-handler.js.map +1 -0
  43. package/dist/kosuke/serve/middleware/validation.d.ts +13 -0
  44. package/dist/kosuke/serve/middleware/validation.d.ts.map +1 -0
  45. package/dist/kosuke/serve/middleware/validation.js +39 -0
  46. package/dist/kosuke/serve/middleware/validation.js.map +1 -0
  47. package/dist/kosuke/serve/routes/build.d.ts +6 -0
  48. package/dist/kosuke/serve/routes/build.d.ts.map +1 -0
  49. package/dist/kosuke/serve/routes/build.js +224 -0
  50. package/dist/kosuke/serve/routes/build.js.map +1 -0
  51. package/dist/kosuke/serve/routes/health.d.ts +6 -0
  52. package/dist/kosuke/serve/routes/health.d.ts.map +1 -0
  53. package/dist/kosuke/serve/routes/health.js +11 -0
  54. package/dist/kosuke/serve/routes/health.js.map +1 -0
  55. package/dist/kosuke/serve/routes/plan.d.ts +6 -0
  56. package/dist/kosuke/serve/routes/plan.d.ts.map +1 -0
  57. package/dist/kosuke/serve/routes/plan.js +104 -0
  58. package/dist/kosuke/serve/routes/plan.js.map +1 -0
  59. package/dist/kosuke/serve/server.d.ts +16 -0
  60. package/dist/kosuke/serve/server.d.ts.map +1 -0
  61. package/dist/kosuke/serve/server.js +63 -0
  62. package/dist/kosuke/serve/server.js.map +1 -0
  63. package/dist/kosuke/serve/validation/build.d.ts +41 -0
  64. package/dist/kosuke/serve/validation/build.d.ts.map +1 -0
  65. package/dist/kosuke/serve/validation/build.js +20 -0
  66. package/dist/kosuke/serve/validation/build.js.map +1 -0
  67. package/dist/kosuke/serve/validation/plan.d.ts +26 -0
  68. package/dist/kosuke/serve/validation/plan.d.ts.map +1 -0
  69. package/dist/kosuke/serve/validation/plan.js +15 -0
  70. package/dist/kosuke/serve/validation/plan.js.map +1 -0
  71. package/dist/kosuke/types.d.ts +217 -1
  72. package/dist/kosuke/types.d.ts.map +1 -1
  73. package/dist/kosuke/utils/claude-agent.d.ts +82 -6
  74. package/dist/kosuke/utils/claude-agent.d.ts.map +1 -1
  75. package/dist/kosuke/utils/claude-agent.js +381 -180
  76. package/dist/kosuke/utils/claude-agent.js.map +1 -1
  77. package/dist/kosuke/utils/playwright-mcp-client.d.ts +45 -0
  78. package/dist/kosuke/utils/playwright-mcp-client.d.ts.map +1 -0
  79. package/dist/kosuke/utils/playwright-mcp-client.js +131 -0
  80. package/dist/kosuke/utils/playwright-mcp-client.js.map +1 -0
  81. package/dist/lib.d.ts +4 -4
  82. package/dist/lib.d.ts.map +1 -1
  83. package/dist/lib.js +2 -1
  84. package/dist/lib.js.map +1 -1
  85. package/dist/package.json +7 -3
  86. package/package.json +7 -3
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Plan command SSE route
3
+ */
4
+ import { planCoreStream } from '../../commands/plan.js';
5
+ import { parseToolAction } from '../../utils/claude-agent.js';
6
+ import { existsSync } from 'fs';
7
+ export async function planRoute(req, res) {
8
+ // Request body is already validated by middleware
9
+ const { query, cwd, noTest, resume } = req.body;
10
+ // Verify directory exists
11
+ if (!existsSync(cwd)) {
12
+ res.status(400).json({
13
+ error: 'Invalid directory',
14
+ message: `Directory does not exist: ${cwd}`,
15
+ });
16
+ return;
17
+ }
18
+ // Set SSE headers
19
+ res.setHeader('Content-Type', 'text/event-stream');
20
+ res.setHeader('Cache-Control', 'no-cache');
21
+ res.setHeader('Connection', 'keep-alive');
22
+ const sendEvent = (event, data) => {
23
+ res.write(`event: ${event}\n`);
24
+ res.write(`data: ${JSON.stringify(data)}\n\n`);
25
+ };
26
+ try {
27
+ const options = {
28
+ prompt: query,
29
+ directory: cwd,
30
+ noTest,
31
+ resume,
32
+ };
33
+ const stream = planCoreStream(options);
34
+ // Stream polished events (filter verbose content)
35
+ for await (const event of stream) {
36
+ if (event.type === 'tool_call') {
37
+ // Parse and send tool call event
38
+ const toolInput = event.data.input;
39
+ const parsed = parseToolAction(event.data.name, toolInput);
40
+ sendEvent('tool_call', {
41
+ action: parsed.action,
42
+ params: parsed.params,
43
+ });
44
+ }
45
+ else if (event.type === 'message') {
46
+ const msg = event.data;
47
+ // Skip verbose tool results (file contents, grep results)
48
+ if (msg.type === 'user' && 'tool_use_result' in msg) {
49
+ continue; // Don't send file contents to client
50
+ }
51
+ // Skip system init (too verbose)
52
+ if (msg.type === 'system' && msg.subtype === 'init') {
53
+ continue;
54
+ }
55
+ // Send assistant messages (text only, tool calls handled separately)
56
+ if (msg.type === 'assistant') {
57
+ const polishedMsg = {
58
+ type: msg.type,
59
+ session_id: msg.session_id,
60
+ };
61
+ // Extract text content
62
+ const msgData = msg.message;
63
+ if (msgData.content && Array.isArray(msgData.content)) {
64
+ for (const block of msgData.content) {
65
+ if (block.type === 'text' && block.text) {
66
+ polishedMsg.text = block.text;
67
+ }
68
+ }
69
+ }
70
+ // Include token usage
71
+ if (msgData.usage) {
72
+ polishedMsg.usage = msgData.usage;
73
+ }
74
+ // Only send if there's actual text content (skip usage-only messages)
75
+ if (polishedMsg.text) {
76
+ sendEvent('message', polishedMsg);
77
+ }
78
+ }
79
+ // Skip result messages (usage-only, not useful for client)
80
+ }
81
+ else if (event.type === 'done') {
82
+ // Send final result
83
+ sendEvent('done', {
84
+ status: event.data.status,
85
+ ticketsFile: event.data.ticketsFile,
86
+ tokensUsed: event.data.tokensUsed,
87
+ cost: event.data.cost,
88
+ sessionId: event.data.sessionId,
89
+ error: event.data.error,
90
+ });
91
+ }
92
+ }
93
+ }
94
+ catch (error) {
95
+ sendEvent('done', {
96
+ status: 'error',
97
+ error: error instanceof Error ? error.message : String(error),
98
+ });
99
+ }
100
+ finally {
101
+ res.end();
102
+ }
103
+ }
104
+ //# sourceMappingURL=plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../kosuke/serve/routes/plan.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Express server for Kosuke CLI commands over HTTP with SSE
3
+ */
4
+ import express from 'express';
5
+ export interface ServeOptions {
6
+ port?: number;
7
+ }
8
+ /**
9
+ * Create and configure Express server
10
+ */
11
+ export declare function createServer(): express.Express;
12
+ /**
13
+ * Start the Kosuke server
14
+ */
15
+ export declare function startServer(options?: ServeOptions): Promise<never>;
16
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../kosuke/serve/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAS9B,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAAC,OAAO,CAgB9C;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,CAoC5E"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Express server for Kosuke CLI commands over HTTP with SSE
3
+ */
4
+ import express from 'express';
5
+ import { healthRoute } from './routes/health.js';
6
+ import { planRoute } from './routes/plan.js';
7
+ import { buildRoute } from './routes/build.js';
8
+ import { validateRequest } from './middleware/validation.js';
9
+ import { errorHandler, notFoundHandler } from './middleware/error-handler.js';
10
+ import { planRequestSchema } from './validation/plan.js';
11
+ import { buildRequestSchema } from './validation/build.js';
12
+ /**
13
+ * Create and configure Express server
14
+ */
15
+ export function createServer() {
16
+ const app = express();
17
+ // Middleware
18
+ app.use(express.json());
19
+ // Routes
20
+ app.get('/health', healthRoute);
21
+ app.post('/api/plan', validateRequest(planRequestSchema), planRoute);
22
+ app.post('/api/build', validateRequest(buildRequestSchema), buildRoute);
23
+ // Error handlers (must be last)
24
+ app.use(notFoundHandler);
25
+ app.use(errorHandler);
26
+ return app;
27
+ }
28
+ /**
29
+ * Start the Kosuke server
30
+ */
31
+ export async function startServer(options = {}) {
32
+ const port = options.port || 3000;
33
+ // Validate environment
34
+ if (!process.env.ANTHROPIC_API_KEY) {
35
+ throw new Error('ANTHROPIC_API_KEY environment variable is required');
36
+ }
37
+ if (!process.env.GITHUB_TOKEN) {
38
+ throw new Error('GITHUB_TOKEN environment variable is required for build command');
39
+ }
40
+ const app = createServer();
41
+ return new Promise((_, reject) => {
42
+ const server = app.listen(port, () => {
43
+ console.log(`
44
+ ╔══════════════════════════════════════════════════════════════════════════════╗
45
+ ║ Kosuke Server Running ║
46
+ ╚══════════════════════════════════════════════════════════════════════════════╝
47
+
48
+ 🚀 Server listening on http://localhost:${port}
49
+
50
+ 📡 Available endpoints:
51
+ GET /health - Health check
52
+ POST /api/plan - Plan command with SSE
53
+ POST /api/build - Build command with SSE
54
+
55
+ Press Ctrl+C to stop the server.
56
+ `);
57
+ });
58
+ server.on('error', (error) => {
59
+ reject(error);
60
+ });
61
+ });
62
+ }
63
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../kosuke/serve/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAM3D;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAEtB,aAAa;IACb,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAExB,SAAS;IACT,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAChC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,CAAC;IACrE,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,kBAAkB,CAAC,EAAE,UAAU,CAAC,CAAC;IAExE,gCAAgC;IAChC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACzB,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEtB,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAAwB,EAAE;IAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC;IAElC,uBAAuB;IACvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;IAE3B,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;YACnC,OAAO,CAAC,GAAG,CAAC;;;;;0CAKwB,IAAI;;;;;;;;CAQ7C,CAAC,CAAC;QACC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC3B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Build command validation schemas
3
+ */
4
+ import { z } from 'zod';
5
+ /**
6
+ * Build request validation schema
7
+ * Note: No askCommit/askConfirm in API mode (auto-commit everything)
8
+ */
9
+ export declare const buildRequestSchema: z.ZodObject<{
10
+ cwd: z.ZodString;
11
+ ticketsFile: z.ZodOptional<z.ZodString>;
12
+ dbUrl: z.ZodOptional<z.ZodString>;
13
+ reset: z.ZodOptional<z.ZodBoolean>;
14
+ review: z.ZodOptional<z.ZodBoolean>;
15
+ url: z.ZodOptional<z.ZodString>;
16
+ headless: z.ZodOptional<z.ZodBoolean>;
17
+ verbose: z.ZodOptional<z.ZodBoolean>;
18
+ trace: z.ZodOptional<z.ZodBoolean>;
19
+ }, "strip", z.ZodTypeAny, {
20
+ cwd: string;
21
+ verbose?: boolean | undefined;
22
+ url?: string | undefined;
23
+ review?: boolean | undefined;
24
+ dbUrl?: string | undefined;
25
+ trace?: boolean | undefined;
26
+ headless?: boolean | undefined;
27
+ ticketsFile?: string | undefined;
28
+ reset?: boolean | undefined;
29
+ }, {
30
+ cwd: string;
31
+ verbose?: boolean | undefined;
32
+ url?: string | undefined;
33
+ review?: boolean | undefined;
34
+ dbUrl?: string | undefined;
35
+ trace?: boolean | undefined;
36
+ headless?: boolean | undefined;
37
+ ticketsFile?: string | undefined;
38
+ reset?: boolean | undefined;
39
+ }>;
40
+ export type BuildRequest = z.infer<typeof buildRequestSchema>;
41
+ //# sourceMappingURL=build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../kosuke/serve/validation/build.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Build command validation schemas
3
+ */
4
+ import { z } from 'zod';
5
+ /**
6
+ * Build request validation schema
7
+ * Note: No askCommit/askConfirm in API mode (auto-commit everything)
8
+ */
9
+ export const buildRequestSchema = z.object({
10
+ cwd: z.string().min(1, 'Working directory is required'),
11
+ ticketsFile: z.string().optional(), // Relative to cwd, defaults to 'tickets.json'
12
+ dbUrl: z.string().optional(), // Defaults to postgres://postgres:postgres@localhost:5432/postgres
13
+ reset: z.boolean().optional(), // Reset all tickets to "Todo" before processing
14
+ review: z.boolean().optional(), // Enable code review phase (default: true)
15
+ url: z.string().optional(), // Base URL for web tests
16
+ headless: z.boolean().optional(), // Run tests in headless mode
17
+ verbose: z.boolean().optional(), // Verbose test output
18
+ trace: z.boolean().optional(), // Enable Playwright trace recording
19
+ });
20
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../kosuke/serve/validation/build.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,+BAA+B,CAAC;IACvD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,8CAA8C;IAClF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,mEAAmE;IACjG,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,gDAAgD;IAC/E,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,2CAA2C;IAC3E,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,yBAAyB;IACrD,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,6BAA6B;IAC/D,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,sBAAsB;IACvD,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,oCAAoC;CACpE,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Plan command validation schemas
3
+ */
4
+ import { z } from 'zod';
5
+ /**
6
+ * Plan request validation schema
7
+ *
8
+ */
9
+ export declare const planRequestSchema: z.ZodObject<{
10
+ query: z.ZodString;
11
+ cwd: z.ZodString;
12
+ noTest: z.ZodOptional<z.ZodBoolean>;
13
+ resume: z.ZodOptional<z.ZodString>;
14
+ }, "strip", z.ZodTypeAny, {
15
+ cwd: string;
16
+ query: string;
17
+ resume?: string | undefined;
18
+ noTest?: boolean | undefined;
19
+ }, {
20
+ cwd: string;
21
+ query: string;
22
+ resume?: string | undefined;
23
+ noTest?: boolean | undefined;
24
+ }>;
25
+ export type PlanRequest = z.infer<typeof planRequestSchema>;
26
+ //# sourceMappingURL=plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../../kosuke/serve/validation/plan.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;EAK5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Plan command validation schemas
3
+ */
4
+ import { z } from 'zod';
5
+ /**
6
+ * Plan request validation schema
7
+ *
8
+ */
9
+ export const planRequestSchema = z.object({
10
+ query: z.string().min(1, 'Query cannot be empty'),
11
+ cwd: z.string().min(1, 'Working directory is required'),
12
+ noTest: z.boolean().optional(),
13
+ resume: z.string().optional(),
14
+ });
15
+ //# sourceMappingURL=plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../kosuke/serve/validation/plan.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;IACjD,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,+BAA+B,CAAC;IACvD,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Shared types for Kosuke CLI
3
3
  */
4
+ import type { ClaudeMessage } from './utils/claude-agent.js';
4
5
  export interface Batch {
5
6
  name: string;
6
7
  directory: string;
@@ -131,6 +132,7 @@ export interface BuildOptions {
131
132
  url?: string;
132
133
  headless?: boolean;
133
134
  verbose?: boolean;
135
+ trace?: boolean;
134
136
  noLogs?: boolean;
135
137
  }
136
138
  export interface ReviewContext {
@@ -146,7 +148,7 @@ export interface ReviewOptions {
146
148
  export interface TestContext {
147
149
  ticketId: string;
148
150
  ticketTitle: string;
149
- ticketDescription: string;
151
+ ticketDescription?: string;
150
152
  }
151
153
  export interface ShipResult {
152
154
  success: boolean;
@@ -166,6 +168,7 @@ export interface ReviewResult {
166
168
  success: boolean;
167
169
  issuesFound: number;
168
170
  fixesApplied: number;
171
+ response: string;
169
172
  tokensUsed: {
170
173
  input: number;
171
174
  output: number;
@@ -173,6 +176,7 @@ export interface ReviewResult {
173
176
  cacheRead: number;
174
177
  };
175
178
  cost: number;
179
+ error?: string;
176
180
  }
177
181
  export interface TestOptions {
178
182
  prompt: string;
@@ -180,8 +184,16 @@ export interface TestOptions {
180
184
  url?: string;
181
185
  headless?: boolean;
182
186
  verbose?: boolean;
187
+ trace?: boolean;
183
188
  noLogs?: boolean;
184
189
  }
190
+ export interface MCPToolUsage {
191
+ navigations: number;
192
+ clicks: number;
193
+ types: number;
194
+ extracts: number;
195
+ other: number;
196
+ }
185
197
  export interface TestResult {
186
198
  ticketId: string;
187
199
  success: boolean;
@@ -198,6 +210,8 @@ export interface TestResult {
198
210
  };
199
211
  cost: number;
200
212
  error?: string;
213
+ mcpToolUsage?: MCPToolUsage;
214
+ mcpToolCost?: number;
201
215
  }
202
216
  export interface MigrateOptions {
203
217
  directory?: string;
@@ -223,11 +237,25 @@ export interface MigrateResult {
223
237
  cost: number;
224
238
  error?: string;
225
239
  }
240
+ export interface BuildResult {
241
+ success: boolean;
242
+ ticketsProcessed: number;
243
+ ticketsSucceeded: number;
244
+ ticketsFailed: number;
245
+ totalCost: number;
246
+ tokensUsed: {
247
+ input: number;
248
+ output: number;
249
+ cacheCreation: number;
250
+ cacheRead: number;
251
+ };
252
+ }
226
253
  export interface PlanOptions {
227
254
  prompt: string;
228
255
  directory?: string;
229
256
  noTest?: boolean;
230
257
  noLogs?: boolean;
258
+ resume?: string;
231
259
  }
232
260
  export interface TestRunnerOptions {
233
261
  ticket: Ticket;
@@ -249,7 +277,195 @@ export interface TestRunnerResult {
249
277
  };
250
278
  cost: number;
251
279
  }
280
+ export interface PlanResult {
281
+ status: 'input_required' | 'success' | 'error';
282
+ ticketsFile: string | null;
283
+ tokensUsed: {
284
+ input: number;
285
+ output: number;
286
+ cacheCreation: number;
287
+ cacheRead: number;
288
+ };
289
+ cost: number;
290
+ sessionId?: string;
291
+ message?: string;
292
+ error?: string;
293
+ }
252
294
  export type { CommandName, ExecutionStatus, CliLogData, CommandExecutionContext, } from './utils/logger.js';
253
295
  export type { AnalysisResult, TestFailure } from './utils/error-analyzer.js';
254
296
  export type { ConsoleLog, NetworkLog, DockerLog, CollectedLogs } from './utils/log-collector.js';
297
+ /**
298
+ * Stream event from plan core stream
299
+ */
300
+ export type PlanStreamEvent = {
301
+ type: 'message';
302
+ data: ClaudeMessage;
303
+ } | {
304
+ type: 'tool_call';
305
+ data: {
306
+ name: string;
307
+ input: unknown;
308
+ };
309
+ } | {
310
+ type: 'done';
311
+ data: PlanResult;
312
+ };
313
+ /**
314
+ * Stream event from build core stream
315
+ */
316
+ export type BuildStreamEvent = {
317
+ type: 'build_started';
318
+ data: {
319
+ totalTickets: number;
320
+ ticketsFile: string;
321
+ };
322
+ } | {
323
+ type: 'ticket_started';
324
+ data: {
325
+ ticket: Ticket;
326
+ index: number;
327
+ total: number;
328
+ };
329
+ } | {
330
+ type: 'ticket_phase';
331
+ data: {
332
+ phase: 'ship' | 'test' | 'migrate';
333
+ status: 'started' | 'completed';
334
+ };
335
+ } | {
336
+ type: 'ship_event';
337
+ data: ShipStreamEvent;
338
+ } | {
339
+ type: 'test_event';
340
+ data: TestStreamEvent;
341
+ } | {
342
+ type: 'migrate_event';
343
+ data: MigrateStreamEvent;
344
+ } | {
345
+ type: 'test_retry';
346
+ data: {
347
+ attempt: number;
348
+ maxRetries: number;
349
+ error: string;
350
+ };
351
+ } | {
352
+ type: 'ticket_completed';
353
+ data: {
354
+ ticket: Ticket;
355
+ result: 'success' | 'failed';
356
+ };
357
+ } | {
358
+ type: 'ticket_committed';
359
+ data: {
360
+ ticket: Ticket;
361
+ commitMessage: string;
362
+ };
363
+ } | {
364
+ type: 'progress';
365
+ data: {
366
+ completed: number;
367
+ total: number;
368
+ percentage: number;
369
+ };
370
+ } | {
371
+ type: 'done';
372
+ data: BuildResult;
373
+ };
374
+ /**
375
+ * Stream event from ship core stream
376
+ */
377
+ export type ShipStreamEvent = {
378
+ type: 'phase';
379
+ data: {
380
+ phase: 'implementation' | 'linting' | 'review';
381
+ status: 'started' | 'completed';
382
+ result?: Partial<ShipResult>;
383
+ };
384
+ } | {
385
+ type: 'message';
386
+ data: ClaudeMessage;
387
+ } | {
388
+ type: 'lint_progress';
389
+ data: {
390
+ fixCount: number;
391
+ filesProcessed: number;
392
+ };
393
+ } | {
394
+ type: 'done';
395
+ data: ShipResult;
396
+ };
397
+ /**
398
+ * Stream event from test core stream
399
+ */
400
+ export type TestStreamEvent = {
401
+ type: 'test_started';
402
+ data: {
403
+ testIdentifier: string;
404
+ url: string;
405
+ headless: boolean;
406
+ };
407
+ } | {
408
+ type: 'mcp_connected';
409
+ data: {
410
+ toolsAvailable: number;
411
+ };
412
+ } | {
413
+ type: 'test_turn';
414
+ data: {
415
+ turnNumber: number;
416
+ maxTurns: number;
417
+ };
418
+ } | {
419
+ type: 'assistant_message';
420
+ data: {
421
+ text: string;
422
+ toolUses: Array<{
423
+ name: string;
424
+ }>;
425
+ };
426
+ } | {
427
+ type: 'tool_executed';
428
+ data: {
429
+ toolName: string;
430
+ success: boolean;
431
+ };
432
+ } | {
433
+ type: 'test_completed';
434
+ data: {
435
+ success: boolean;
436
+ };
437
+ } | {
438
+ type: 'done';
439
+ data: TestResult;
440
+ };
441
+ /**
442
+ * Stream event from migrate core stream
443
+ */
444
+ export type MigrateStreamEvent = {
445
+ type: 'migration_started';
446
+ data: {
447
+ dbUrl: string;
448
+ };
449
+ } | {
450
+ type: 'message';
451
+ data: ClaudeMessage;
452
+ } | {
453
+ type: 'done';
454
+ data: MigrateResult;
455
+ };
456
+ /**
457
+ * Stream event from review core stream
458
+ */
459
+ export type ReviewStreamEvent = {
460
+ type: 'git_diff_generated';
461
+ data: {
462
+ diffSize: number;
463
+ };
464
+ } | {
465
+ type: 'message';
466
+ data: ClaudeMessage;
467
+ } | {
468
+ type: 'done';
469
+ data: ReviewResult;
470
+ };
255
471
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../kosuke/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,KAAK,OAAO,GACR,gBAAgB,GAChB,oBAAoB,GACpB,eAAe,GACf,sBAAsB,GACtB,uBAAuB,GACvB,gBAAgB,GAChB,OAAO,CAAC;AAEZ,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IAC5D,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,KAAK,CAAC;QAC1B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,KAAK,CAAC;YAChB,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,OAAO,CAAC;YACf,MAAM,CAAC,EAAE,OAAO,CAAC;SAClB,CAAC,CAAC;KACJ,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;IACF,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,YAAY,EACV,WAAW,EACX,eAAe,EACf,UAAU,EACV,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7E,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../kosuke/types.ts"],"names":[],"mappings":"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"}