@kosuke-ai/cli 0.0.56 → 1.0.0
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.
- package/README.md +31 -448
- package/dist/commands/auth.js +117 -0
- package/dist/generated/commands/deploy/cancel.js +17 -0
- package/dist/generated/commands/deploy/messages.js +17 -0
- package/dist/generated/commands/deploy/run.js +60 -0
- package/dist/generated/commands/index.js +132 -0
- package/dist/generated/commands/preview/get.js +25 -0
- package/dist/generated/commands/preview/health.js +25 -0
- package/dist/generated/commands/preview/reset.js +27 -0
- package/dist/generated/commands/preview/share-create.js +36 -0
- package/dist/generated/commands/preview/share-delete.js +26 -0
- package/dist/generated/commands/preview/share-get.js +26 -0
- package/dist/generated/commands/preview/shared.js +17 -0
- package/dist/generated/commands/projects/create.js +37 -0
- package/dist/generated/commands/projects/delete.js +17 -0
- package/dist/generated/commands/projects/env-vars-add.js +21 -0
- package/dist/generated/commands/projects/env-vars-remove.js +21 -0
- package/dist/generated/commands/projects/get.js +17 -0
- package/dist/generated/commands/projects/list.js +15 -0
- package/dist/generated/commands/projects/services-add.js +87 -0
- package/dist/generated/commands/projects/services-list.js +18 -0
- package/dist/generated/commands/projects/services-remove.js +19 -0
- package/dist/generated/commands/projects/services-update.js +81 -0
- package/dist/generated/commands/projects/settings-get.js +18 -0
- package/dist/generated/commands/projects/settings-import.js +91 -0
- package/dist/generated/commands/projects/settings-update.js +77 -0
- package/dist/generated/commands/projects/skills.js +35 -0
- package/dist/generated/commands/projects/update.js +27 -0
- package/dist/generated/commands/sessions/activate.js +18 -0
- package/dist/generated/commands/sessions/checklist-generate.js +19 -0
- package/dist/generated/commands/sessions/checklist-get.js +19 -0
- package/dist/generated/commands/sessions/comments-add.js +63 -0
- package/dist/generated/commands/sessions/comments-delete.js +20 -0
- package/dist/generated/commands/sessions/comments-list.js +19 -0
- package/dist/generated/commands/sessions/comments-update.js +23 -0
- package/dist/generated/commands/sessions/create.js +126 -0
- package/dist/generated/commands/sessions/delete.js +18 -0
- package/dist/generated/commands/sessions/diff-files.js +19 -0
- package/dist/generated/commands/sessions/diff-patch.js +86 -0
- package/dist/generated/commands/sessions/edit-prompt.js +59 -0
- package/dist/generated/commands/sessions/files-get.js +27 -0
- package/dist/generated/commands/sessions/files-list.js +19 -0
- package/dist/generated/commands/sessions/files-write.js +41 -0
- package/dist/generated/commands/sessions/get.js +18 -0
- package/dist/generated/commands/sessions/git-commit-message.js +19 -0
- package/dist/generated/commands/sessions/git-commit.js +29 -0
- package/dist/generated/commands/sessions/git-push.js +19 -0
- package/dist/generated/commands/sessions/git-state.js +19 -0
- package/dist/generated/commands/sessions/jobs-cancel.js +20 -0
- package/dist/generated/commands/sessions/jobs-get.js +20 -0
- package/dist/generated/commands/sessions/list.js +81 -0
- package/dist/generated/commands/sessions/messages.js +18 -0
- package/dist/generated/commands/sessions/search.js +23 -0
- package/dist/generated/commands/sessions/send.js +98 -0
- package/dist/generated/commands/sessions/update.js +72 -0
- package/dist/generated/commands/workspaces/access-status.js +29 -0
- package/dist/generated/commands/workspaces/ai-provider-get.js +18 -0
- package/dist/generated/commands/workspaces/ai-provider-remove.js +42 -0
- package/dist/generated/commands/workspaces/ai-provider-set.js +21 -0
- package/dist/generated/commands/workspaces/credits.js +17 -0
- package/dist/generated/commands/workspaces/get.js +17 -0
- package/dist/generated/commands/workspaces/getting-started-get.js +18 -0
- package/dist/generated/commands/workspaces/getting-started-update.js +32 -0
- package/dist/generated/commands/workspaces/list.js +15 -0
- package/dist/generated/commands/workspaces/members.js +25 -0
- package/dist/generated/commands/workspaces/sandbox-limit.js +17 -0
- package/dist/generated/commands/workspaces/stop-sandboxes.js +27 -0
- package/dist/generated/commands/workspaces/usage.js +32 -0
- package/dist/index.js +5 -516
- package/dist/program.js +46 -0
- package/dist/runtime/attach.js +139 -0
- package/dist/runtime/attachments.js +58 -0
- package/dist/runtime/client.js +12 -0
- package/dist/runtime/config.js +49 -0
- package/dist/runtime/credentials.js +24 -0
- package/dist/runtime/descriptor.js +7 -0
- package/dist/runtime/invoke.js +152 -0
- package/dist/runtime/runtime.js +41 -0
- package/dist/runtime/version.js +5 -0
- package/openapi.json +5222 -0
- package/package.json +21 -79
- package/LICENSE +0 -21
- package/claude.costs.json +0 -34
- package/dist/__tests__/utils/file-discovery.test.d.ts +0 -5
- package/dist/__tests__/utils/file-discovery.test.d.ts.map +0 -1
- package/dist/__tests__/utils/file-discovery.test.js +0 -51
- package/dist/__tests__/utils/file-discovery.test.js.map +0 -1
- package/dist/__tests__/utils/logger-nologs.test.d.ts +0 -5
- package/dist/__tests__/utils/logger-nologs.test.d.ts.map +0 -1
- package/dist/__tests__/utils/logger-nologs.test.js +0 -34
- package/dist/__tests__/utils/logger-nologs.test.js.map +0 -1
- package/dist/__tests__/utils/logger.test.d.ts +0 -5
- package/dist/__tests__/utils/logger.test.d.ts.map +0 -1
- package/dist/__tests__/utils/logger.test.js +0 -243
- package/dist/__tests__/utils/logger.test.js.map +0 -1
- package/dist/__tests__/utils/validator.test.d.ts +0 -5
- package/dist/__tests__/utils/validator.test.d.ts.map +0 -1
- package/dist/__tests__/utils/validator.test.js +0 -206
- package/dist/__tests__/utils/validator.test.js.map +0 -1
- package/dist/index.d.ts +0 -35
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/kosuke/commands/analyse.d.ts +0 -15
- package/dist/kosuke/commands/analyse.d.ts.map +0 -1
- package/dist/kosuke/commands/analyse.js +0 -273
- package/dist/kosuke/commands/analyse.js.map +0 -1
- package/dist/kosuke/commands/build.d.ts +0 -35
- package/dist/kosuke/commands/build.d.ts.map +0 -1
- package/dist/kosuke/commands/build.js +0 -659
- package/dist/kosuke/commands/build.js.map +0 -1
- package/dist/kosuke/commands/getcode.d.ts +0 -29
- package/dist/kosuke/commands/getcode.d.ts.map +0 -1
- package/dist/kosuke/commands/getcode.js +0 -221
- package/dist/kosuke/commands/getcode.js.map +0 -1
- package/dist/kosuke/commands/lint.d.ts +0 -21
- package/dist/kosuke/commands/lint.d.ts.map +0 -1
- package/dist/kosuke/commands/lint.js +0 -321
- package/dist/kosuke/commands/lint.js.map +0 -1
- package/dist/kosuke/commands/migrate.d.ts +0 -38
- package/dist/kosuke/commands/migrate.d.ts.map +0 -1
- package/dist/kosuke/commands/migrate.js +0 -284
- package/dist/kosuke/commands/migrate.js.map +0 -1
- package/dist/kosuke/commands/plan.d.ts +0 -28
- package/dist/kosuke/commands/plan.d.ts.map +0 -1
- package/dist/kosuke/commands/plan.js +0 -630
- package/dist/kosuke/commands/plan.js.map +0 -1
- package/dist/kosuke/commands/requirements.d.ts +0 -52
- package/dist/kosuke/commands/requirements.d.ts.map +0 -1
- package/dist/kosuke/commands/requirements.js +0 -615
- package/dist/kosuke/commands/requirements.js.map +0 -1
- package/dist/kosuke/commands/review.d.ts +0 -26
- package/dist/kosuke/commands/review.d.ts.map +0 -1
- package/dist/kosuke/commands/review.js +0 -303
- package/dist/kosuke/commands/review.js.map +0 -1
- package/dist/kosuke/commands/serve.d.ts +0 -9
- package/dist/kosuke/commands/serve.d.ts.map +0 -1
- package/dist/kosuke/commands/serve.js +0 -17
- package/dist/kosuke/commands/serve.js.map +0 -1
- package/dist/kosuke/commands/ship.d.ts +0 -37
- package/dist/kosuke/commands/ship.d.ts.map +0 -1
- package/dist/kosuke/commands/ship.js +0 -375
- package/dist/kosuke/commands/ship.js.map +0 -1
- package/dist/kosuke/commands/sync-rules.d.ts +0 -9
- package/dist/kosuke/commands/sync-rules.d.ts.map +0 -1
- package/dist/kosuke/commands/sync-rules.js +0 -379
- package/dist/kosuke/commands/sync-rules.js.map +0 -1
- package/dist/kosuke/commands/test.d.ts +0 -42
- package/dist/kosuke/commands/test.d.ts.map +0 -1
- package/dist/kosuke/commands/test.js +0 -540
- package/dist/kosuke/commands/test.js.map +0 -1
- package/dist/kosuke/commands/tickets.d.ts +0 -43
- package/dist/kosuke/commands/tickets.d.ts.map +0 -1
- package/dist/kosuke/commands/tickets.js +0 -499
- package/dist/kosuke/commands/tickets.js.map +0 -1
- package/dist/kosuke/serve/middleware/error-handler.d.ts +0 -14
- package/dist/kosuke/serve/middleware/error-handler.d.ts.map +0 -1
- package/dist/kosuke/serve/middleware/error-handler.js +0 -42
- package/dist/kosuke/serve/middleware/error-handler.js.map +0 -1
- package/dist/kosuke/serve/middleware/validation.d.ts +0 -13
- package/dist/kosuke/serve/middleware/validation.d.ts.map +0 -1
- package/dist/kosuke/serve/middleware/validation.js +0 -38
- package/dist/kosuke/serve/middleware/validation.js.map +0 -1
- package/dist/kosuke/serve/routes/build.d.ts +0 -6
- package/dist/kosuke/serve/routes/build.d.ts.map +0 -1
- package/dist/kosuke/serve/routes/build.js +0 -226
- package/dist/kosuke/serve/routes/build.js.map +0 -1
- package/dist/kosuke/serve/routes/health.d.ts +0 -6
- package/dist/kosuke/serve/routes/health.d.ts.map +0 -1
- package/dist/kosuke/serve/routes/health.js +0 -11
- package/dist/kosuke/serve/routes/health.js.map +0 -1
- package/dist/kosuke/serve/routes/plan.d.ts +0 -6
- package/dist/kosuke/serve/routes/plan.d.ts.map +0 -1
- package/dist/kosuke/serve/routes/plan.js +0 -106
- package/dist/kosuke/serve/routes/plan.js.map +0 -1
- package/dist/kosuke/serve/server.d.ts +0 -16
- package/dist/kosuke/serve/server.d.ts.map +0 -1
- package/dist/kosuke/serve/server.js +0 -67
- package/dist/kosuke/serve/server.js.map +0 -1
- package/dist/kosuke/serve/validation/build.d.ts +0 -41
- package/dist/kosuke/serve/validation/build.d.ts.map +0 -1
- package/dist/kosuke/serve/validation/build.js +0 -20
- package/dist/kosuke/serve/validation/build.js.map +0 -1
- package/dist/kosuke/serve/validation/plan.d.ts +0 -26
- package/dist/kosuke/serve/validation/plan.d.ts.map +0 -1
- package/dist/kosuke/serve/validation/plan.js +0 -15
- package/dist/kosuke/serve/validation/plan.js.map +0 -1
- package/dist/kosuke/types.d.ts +0 -469
- package/dist/kosuke/types.d.ts.map +0 -1
- package/dist/kosuke/types.js +0 -5
- package/dist/kosuke/types.js.map +0 -1
- package/dist/kosuke/utils/batch-creator.d.ts +0 -14
- package/dist/kosuke/utils/batch-creator.d.ts.map +0 -1
- package/dist/kosuke/utils/batch-creator.js +0 -76
- package/dist/kosuke/utils/batch-creator.js.map +0 -1
- package/dist/kosuke/utils/claude-agent.d.ts +0 -145
- package/dist/kosuke/utils/claude-agent.d.ts.map +0 -1
- package/dist/kosuke/utils/claude-agent.js +0 -504
- package/dist/kosuke/utils/claude-agent.js.map +0 -1
- package/dist/kosuke/utils/constants.d.ts +0 -40
- package/dist/kosuke/utils/constants.d.ts.map +0 -1
- package/dist/kosuke/utils/constants.js +0 -54
- package/dist/kosuke/utils/constants.js.map +0 -1
- package/dist/kosuke/utils/file-discovery.d.ts +0 -15
- package/dist/kosuke/utils/file-discovery.d.ts.map +0 -1
- package/dist/kosuke/utils/file-discovery.js +0 -80
- package/dist/kosuke/utils/file-discovery.js.map +0 -1
- package/dist/kosuke/utils/git.d.ts +0 -41
- package/dist/kosuke/utils/git.d.ts.map +0 -1
- package/dist/kosuke/utils/git.js +0 -145
- package/dist/kosuke/utils/git.js.map +0 -1
- package/dist/kosuke/utils/github.d.ts +0 -17
- package/dist/kosuke/utils/github.d.ts.map +0 -1
- package/dist/kosuke/utils/github.js +0 -22
- package/dist/kosuke/utils/github.js.map +0 -1
- package/dist/kosuke/utils/interactive-input.d.ts +0 -22
- package/dist/kosuke/utils/interactive-input.d.ts.map +0 -1
- package/dist/kosuke/utils/interactive-input.js +0 -124
- package/dist/kosuke/utils/interactive-input.js.map +0 -1
- package/dist/kosuke/utils/logger.d.ts +0 -161
- package/dist/kosuke/utils/logger.d.ts.map +0 -1
- package/dist/kosuke/utils/logger.js +0 -234
- package/dist/kosuke/utils/logger.js.map +0 -1
- package/dist/kosuke/utils/playwright-mcp-client.d.ts +0 -46
- package/dist/kosuke/utils/playwright-mcp-client.d.ts.map +0 -1
- package/dist/kosuke/utils/playwright-mcp-client.js +0 -135
- package/dist/kosuke/utils/playwright-mcp-client.js.map +0 -1
- package/dist/kosuke/utils/pr-orchestrator.d.ts +0 -49
- package/dist/kosuke/utils/pr-orchestrator.d.ts.map +0 -1
- package/dist/kosuke/utils/pr-orchestrator.js +0 -154
- package/dist/kosuke/utils/pr-orchestrator.js.map +0 -1
- package/dist/kosuke/utils/repository-manager.d.ts +0 -13
- package/dist/kosuke/utils/repository-manager.d.ts.map +0 -1
- package/dist/kosuke/utils/repository-manager.js +0 -94
- package/dist/kosuke/utils/repository-manager.js.map +0 -1
- package/dist/kosuke/utils/repository-resolver.d.ts +0 -12
- package/dist/kosuke/utils/repository-resolver.d.ts.map +0 -1
- package/dist/kosuke/utils/repository-resolver.js +0 -186
- package/dist/kosuke/utils/repository-resolver.js.map +0 -1
- package/dist/kosuke/utils/tickets-manager.d.ts +0 -64
- package/dist/kosuke/utils/tickets-manager.d.ts.map +0 -1
- package/dist/kosuke/utils/tickets-manager.js +0 -331
- package/dist/kosuke/utils/tickets-manager.js.map +0 -1
- package/dist/kosuke/utils/validator.d.ts +0 -45
- package/dist/kosuke/utils/validator.d.ts.map +0 -1
- package/dist/kosuke/utils/validator.js +0 -248
- package/dist/kosuke/utils/validator.js.map +0 -1
- package/dist/lib.d.ts +0 -96
- package/dist/lib.d.ts.map +0 -1
- package/dist/lib.js +0 -95
- package/dist/lib.js.map +0 -1
- package/dist/package.json +0 -99
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../../kosuke/serve/routes/build.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAO5D,wBAAsB,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA6PxF"}
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Build command SSE route
|
|
3
|
-
*/
|
|
4
|
-
import { existsSync } from 'fs';
|
|
5
|
-
import { buildCoreStream } from '../../commands/build.js';
|
|
6
|
-
import { parseToolAction } from '../../utils/claude-agent.js';
|
|
7
|
-
export async function buildRoute(req, reply) {
|
|
8
|
-
// Request body is already validated by middleware
|
|
9
|
-
const { cwd, ticketsFile, dbUrl, reset, review, url, headless, verbose, trace } = req.body;
|
|
10
|
-
// Verify directory exists
|
|
11
|
-
if (!existsSync(cwd)) {
|
|
12
|
-
reply.code(400).send({
|
|
13
|
-
error: 'Invalid directory',
|
|
14
|
-
message: `Directory does not exist: ${cwd}`,
|
|
15
|
-
});
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
// Set SSE headers
|
|
19
|
-
reply.raw.writeHead(200, {
|
|
20
|
-
'Content-Type': 'text/event-stream',
|
|
21
|
-
'Cache-Control': 'no-cache',
|
|
22
|
-
Connection: 'keep-alive',
|
|
23
|
-
});
|
|
24
|
-
const sendEvent = (event, data) => {
|
|
25
|
-
reply.raw.write(`event: ${event}\n`);
|
|
26
|
-
reply.raw.write(`data: ${JSON.stringify(data)}\n\n`);
|
|
27
|
-
};
|
|
28
|
-
try {
|
|
29
|
-
const options = {
|
|
30
|
-
directory: cwd,
|
|
31
|
-
ticketsFile,
|
|
32
|
-
dbUrl,
|
|
33
|
-
reset,
|
|
34
|
-
review,
|
|
35
|
-
url,
|
|
36
|
-
headless,
|
|
37
|
-
verbose,
|
|
38
|
-
trace,
|
|
39
|
-
// No askCommit/askConfirm in API mode (auto-commit everything)
|
|
40
|
-
};
|
|
41
|
-
const stream = buildCoreStream(options);
|
|
42
|
-
// Stream events to client
|
|
43
|
-
for await (const event of stream) {
|
|
44
|
-
switch (event.type) {
|
|
45
|
-
case 'build_started':
|
|
46
|
-
sendEvent('build_started', {
|
|
47
|
-
totalTickets: event.data.totalTickets,
|
|
48
|
-
ticketsFile: event.data.ticketsFile,
|
|
49
|
-
});
|
|
50
|
-
break;
|
|
51
|
-
case 'ticket_started':
|
|
52
|
-
sendEvent('ticket_started', {
|
|
53
|
-
ticket: event.data.ticket,
|
|
54
|
-
index: event.data.index,
|
|
55
|
-
total: event.data.total,
|
|
56
|
-
});
|
|
57
|
-
break;
|
|
58
|
-
case 'ticket_phase':
|
|
59
|
-
sendEvent('ticket_phase', {
|
|
60
|
-
phase: event.data.phase,
|
|
61
|
-
status: event.data.status,
|
|
62
|
-
});
|
|
63
|
-
break;
|
|
64
|
-
case 'ship_event':
|
|
65
|
-
// Handle nested ship events
|
|
66
|
-
if (event.data.type === 'message') {
|
|
67
|
-
const msg = event.data.data;
|
|
68
|
-
// Skip verbose tool results
|
|
69
|
-
if (msg.type === 'user' && 'tool_use_result' in msg) {
|
|
70
|
-
break;
|
|
71
|
-
}
|
|
72
|
-
// Skip system init
|
|
73
|
-
if (msg.type === 'system' && msg.subtype === 'init') {
|
|
74
|
-
break;
|
|
75
|
-
}
|
|
76
|
-
// Extract tool calls and text from assistant messages
|
|
77
|
-
if (msg.type === 'assistant' && msg.message) {
|
|
78
|
-
const msgData = msg.message;
|
|
79
|
-
if (msgData.content && Array.isArray(msgData.content)) {
|
|
80
|
-
let hasText = false;
|
|
81
|
-
for (const block of msgData.content) {
|
|
82
|
-
if (block.type === 'tool_use' && block.name) {
|
|
83
|
-
// Send tool call event
|
|
84
|
-
const toolInput = block.input;
|
|
85
|
-
const parsed = parseToolAction(block.name, toolInput);
|
|
86
|
-
sendEvent('ship_tool_call', {
|
|
87
|
-
action: parsed.action,
|
|
88
|
-
params: parsed.params,
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
else if (block.type === 'text' && block.text) {
|
|
92
|
-
hasText = true;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
// Only forward message if it has text (skip usage-only)
|
|
96
|
-
if (hasText) {
|
|
97
|
-
sendEvent('ship_message', msg);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
// Forward other ship events as-is
|
|
104
|
-
sendEvent(`ship_${event.data.type}`, event.data.data);
|
|
105
|
-
}
|
|
106
|
-
break;
|
|
107
|
-
case 'test_event':
|
|
108
|
-
// Handle nested test events (uses Playwright MCP, different event structure)
|
|
109
|
-
if (event.data.type === 'tool_executed') {
|
|
110
|
-
// Send tool execution as tool_call
|
|
111
|
-
const toolData = event.data.data;
|
|
112
|
-
sendEvent('test_tool_call', {
|
|
113
|
-
action: toolData.toolName,
|
|
114
|
-
params: { success: toolData.success },
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
else if (event.data.type === 'assistant_message') {
|
|
118
|
-
// Send assistant message with text (skip if empty)
|
|
119
|
-
const msgData = event.data.data;
|
|
120
|
-
if (msgData.text && msgData.text.trim()) {
|
|
121
|
-
sendEvent('test_message', { text: msgData.text });
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
// Forward other test events as-is
|
|
126
|
-
sendEvent(`test_${event.data.type}`, event.data.data);
|
|
127
|
-
}
|
|
128
|
-
break;
|
|
129
|
-
case 'migrate_event':
|
|
130
|
-
// Handle nested migrate events
|
|
131
|
-
if (event.data.type === 'message') {
|
|
132
|
-
const msg = event.data.data;
|
|
133
|
-
// Skip verbose tool results
|
|
134
|
-
if (msg.type === 'user' && 'tool_use_result' in msg) {
|
|
135
|
-
break;
|
|
136
|
-
}
|
|
137
|
-
// Skip system init
|
|
138
|
-
if (msg.type === 'system' && msg.subtype === 'init') {
|
|
139
|
-
break;
|
|
140
|
-
}
|
|
141
|
-
// Extract tool calls and text from assistant messages
|
|
142
|
-
if (msg.type === 'assistant' && msg.message) {
|
|
143
|
-
const msgData = msg.message;
|
|
144
|
-
if (msgData.content && Array.isArray(msgData.content)) {
|
|
145
|
-
let hasText = false;
|
|
146
|
-
for (const block of msgData.content) {
|
|
147
|
-
if (block.type === 'tool_use' && block.name) {
|
|
148
|
-
// Send tool call event
|
|
149
|
-
const toolInput = block.input;
|
|
150
|
-
const parsed = parseToolAction(block.name, toolInput);
|
|
151
|
-
sendEvent('migrate_tool_call', {
|
|
152
|
-
action: parsed.action,
|
|
153
|
-
params: parsed.params,
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
else if (block.type === 'text' && block.text) {
|
|
157
|
-
hasText = true;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
// Only forward message if it has text (skip usage-only)
|
|
161
|
-
if (hasText) {
|
|
162
|
-
sendEvent('migrate_message', msg);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
else {
|
|
168
|
-
// Forward other migrate events as-is
|
|
169
|
-
sendEvent(`migrate_${event.data.type}`, event.data.data);
|
|
170
|
-
}
|
|
171
|
-
break;
|
|
172
|
-
case 'test_retry':
|
|
173
|
-
sendEvent('test_retry', {
|
|
174
|
-
attempt: event.data.attempt,
|
|
175
|
-
maxRetries: event.data.maxRetries,
|
|
176
|
-
error: event.data.error,
|
|
177
|
-
});
|
|
178
|
-
break;
|
|
179
|
-
case 'ticket_completed':
|
|
180
|
-
sendEvent('ticket_completed', {
|
|
181
|
-
ticket: event.data.ticket,
|
|
182
|
-
result: event.data.result,
|
|
183
|
-
});
|
|
184
|
-
break;
|
|
185
|
-
case 'ticket_committed':
|
|
186
|
-
sendEvent('ticket_committed', {
|
|
187
|
-
ticket: event.data.ticket,
|
|
188
|
-
commitMessage: event.data.commitMessage,
|
|
189
|
-
});
|
|
190
|
-
break;
|
|
191
|
-
case 'progress':
|
|
192
|
-
sendEvent('progress', {
|
|
193
|
-
completed: event.data.completed,
|
|
194
|
-
total: event.data.total,
|
|
195
|
-
percentage: event.data.percentage,
|
|
196
|
-
});
|
|
197
|
-
break;
|
|
198
|
-
case 'done':
|
|
199
|
-
sendEvent('done', {
|
|
200
|
-
success: event.data.success,
|
|
201
|
-
ticketsProcessed: event.data.ticketsProcessed,
|
|
202
|
-
ticketsSucceeded: event.data.ticketsSucceeded,
|
|
203
|
-
ticketsFailed: event.data.ticketsFailed,
|
|
204
|
-
totalCost: event.data.totalCost,
|
|
205
|
-
tokensUsed: event.data.tokensUsed,
|
|
206
|
-
});
|
|
207
|
-
break;
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
catch (error) {
|
|
212
|
-
sendEvent('done', {
|
|
213
|
-
success: false,
|
|
214
|
-
ticketsProcessed: 0,
|
|
215
|
-
ticketsSucceeded: 0,
|
|
216
|
-
ticketsFailed: 0,
|
|
217
|
-
totalCost: 0,
|
|
218
|
-
tokensUsed: { input: 0, output: 0, cacheCreation: 0, cacheRead: 0 },
|
|
219
|
-
error: error instanceof Error ? error.message : String(error),
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
|
-
finally {
|
|
223
|
-
reply.raw.end();
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
//# sourceMappingURL=build.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../kosuke/serve/routes/build.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,GAAmB,EAAE,KAAmB;IACvE,kDAAkD;IAClD,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,GAC7E,GAAG,CAAC,IAAoB,CAAC;IAE3B,0BAA0B;IAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,mBAAmB;YAC1B,OAAO,EAAE,6BAA6B,GAAG,EAAE;SAC5C,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,kBAAkB;IAClB,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;QACvB,cAAc,EAAE,mBAAmB;QACnC,eAAe,EAAE,UAAU;QAC3B,UAAU,EAAE,YAAY;KACzB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,IAAa,EAAE,EAAE;QACjD,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;QACrC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,OAAO,GAAiB;YAC5B,SAAS,EAAE,GAAG;YACd,WAAW;YACX,KAAK;YACL,KAAK;YACL,MAAM;YACN,GAAG;YACH,QAAQ;YACR,OAAO;YACP,KAAK;YACL,+DAA+D;SAChE,CAAC;QAEF,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QAExC,0BAA0B;QAC1B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACjC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,eAAe;oBAClB,SAAS,CAAC,eAAe,EAAE;wBACzB,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY;wBACrC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW;qBACpC,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,gBAAgB;oBACnB,SAAS,CAAC,gBAAgB,EAAE;wBAC1B,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;wBACzB,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;wBACvB,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;qBACxB,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,cAAc;oBACjB,SAAS,CAAC,cAAc,EAAE;wBACxB,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;wBACvB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;qBAC1B,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,YAAY;oBACf,4BAA4B;oBAC5B,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;wBAClC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;wBAE5B,4BAA4B;wBAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,iBAAiB,IAAI,GAAG,EAAE,CAAC;4BACpD,MAAM;wBACR,CAAC;wBAED,mBAAmB;wBACnB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;4BACpD,MAAM;wBACR,CAAC;wBAED,sDAAsD;wBACtD,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;4BAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,OAOnB,CAAC;4BAEF,IAAI,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gCACtD,IAAI,OAAO,GAAG,KAAK,CAAC;gCAEpB,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oCACpC,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wCAC5C,uBAAuB;wCACvB,MAAM,SAAS,GAAG,KAAK,CAAC,KAAgC,CAAC;wCACzD,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;wCACtD,SAAS,CAAC,gBAAgB,EAAE;4CAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;4CACrB,MAAM,EAAE,MAAM,CAAC,MAAM;yCACtB,CAAC,CAAC;oCACL,CAAC;yCAAM,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wCAC/C,OAAO,GAAG,IAAI,CAAC;oCACjB,CAAC;gCACH,CAAC;gCAED,wDAAwD;gCACxD,IAAI,OAAO,EAAE,CAAC;oCACZ,SAAS,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;gCACjC,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,kCAAkC;wBAClC,SAAS,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxD,CAAC;oBACD,MAAM;gBAER,KAAK,YAAY;oBACf,6EAA6E;oBAC7E,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;wBACxC,mCAAmC;wBACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;wBACjC,SAAS,CAAC,gBAAgB,EAAE;4BAC1B,MAAM,EAAE,QAAQ,CAAC,QAAQ;4BACzB,MAAM,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE;yBACtC,CAAC,CAAC;oBACL,CAAC;yBAAM,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;wBACnD,mDAAmD;wBACnD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;wBAChC,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;4BACxC,SAAS,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;wBACpD,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,kCAAkC;wBAClC,SAAS,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxD,CAAC;oBACD,MAAM;gBAER,KAAK,eAAe;oBAClB,+BAA+B;oBAC/B,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;wBAClC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;wBAE5B,4BAA4B;wBAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,iBAAiB,IAAI,GAAG,EAAE,CAAC;4BACpD,MAAM;wBACR,CAAC;wBAED,mBAAmB;wBACnB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;4BACpD,MAAM;wBACR,CAAC;wBAED,sDAAsD;wBACtD,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;4BAC5C,MAAM,OAAO,GAAG,GAAG,CAAC,OAOnB,CAAC;4BAEF,IAAI,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gCACtD,IAAI,OAAO,GAAG,KAAK,CAAC;gCAEpB,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oCACpC,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wCAC5C,uBAAuB;wCACvB,MAAM,SAAS,GAAG,KAAK,CAAC,KAAgC,CAAC;wCACzD,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;wCACtD,SAAS,CAAC,mBAAmB,EAAE;4CAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;4CACrB,MAAM,EAAE,MAAM,CAAC,MAAM;yCACtB,CAAC,CAAC;oCACL,CAAC;yCAAM,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wCAC/C,OAAO,GAAG,IAAI,CAAC;oCACjB,CAAC;gCACH,CAAC;gCAED,wDAAwD;gCACxD,IAAI,OAAO,EAAE,CAAC;oCACZ,SAAS,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;gCACpC,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,qCAAqC;wBACrC,SAAS,CAAC,WAAW,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC3D,CAAC;oBACD,MAAM;gBAER,KAAK,YAAY;oBACf,SAAS,CAAC,YAAY,EAAE;wBACtB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO;wBAC3B,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU;wBACjC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;qBACxB,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,kBAAkB;oBACrB,SAAS,CAAC,kBAAkB,EAAE;wBAC5B,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;wBACzB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;qBAC1B,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,kBAAkB;oBACrB,SAAS,CAAC,kBAAkB,EAAE;wBAC5B,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM;wBACzB,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa;qBACxC,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,UAAU;oBACb,SAAS,CAAC,UAAU,EAAE;wBACpB,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS;wBAC/B,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;wBACvB,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU;qBAClC,CAAC,CAAC;oBACH,MAAM;gBAER,KAAK,MAAM;oBACT,SAAS,CAAC,MAAM,EAAE;wBAChB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO;wBAC3B,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB;wBAC7C,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB;wBAC7C,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa;wBACvC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS;wBAC/B,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU;qBAClC,CAAC,CAAC;oBACH,MAAM;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,MAAM,EAAE;YAChB,OAAO,EAAE,KAAK;YACd,gBAAgB,EAAE,CAAC;YACnB,gBAAgB,EAAE,CAAC;YACnB,aAAa,EAAE,CAAC;YAChB,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;YACnE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../../../kosuke/serve/routes/health.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D,wBAAsB,WAAW,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAM1F"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"health.js","sourceRoot":"","sources":["../../../../kosuke/serve/routes/health.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAoB,EAAE,KAAmB;IACzE,KAAK,CAAC,IAAI,CAAC;QACT,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;QACxB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../../kosuke/serve/routes/plan.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAO5D,wBAAsB,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAmHvF"}
|
|
@@ -1,106 +0,0 @@
|
|
|
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, reply) {
|
|
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
|
-
reply.code(400).send({
|
|
13
|
-
error: 'Invalid directory',
|
|
14
|
-
message: `Directory does not exist: ${cwd}`,
|
|
15
|
-
});
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
// Set SSE headers
|
|
19
|
-
reply.raw.writeHead(200, {
|
|
20
|
-
'Content-Type': 'text/event-stream',
|
|
21
|
-
'Cache-Control': 'no-cache',
|
|
22
|
-
Connection: 'keep-alive',
|
|
23
|
-
});
|
|
24
|
-
const sendEvent = (event, data) => {
|
|
25
|
-
reply.raw.write(`event: ${event}\n`);
|
|
26
|
-
reply.raw.write(`data: ${JSON.stringify(data)}\n\n`);
|
|
27
|
-
};
|
|
28
|
-
try {
|
|
29
|
-
const options = {
|
|
30
|
-
prompt: query,
|
|
31
|
-
directory: cwd,
|
|
32
|
-
noTest,
|
|
33
|
-
resume,
|
|
34
|
-
};
|
|
35
|
-
const stream = planCoreStream(options);
|
|
36
|
-
// Stream polished events (filter verbose content)
|
|
37
|
-
for await (const event of stream) {
|
|
38
|
-
if (event.type === 'tool_call') {
|
|
39
|
-
// Parse and send tool call event
|
|
40
|
-
const toolInput = event.data.input;
|
|
41
|
-
const parsed = parseToolAction(event.data.name, toolInput);
|
|
42
|
-
sendEvent('tool_call', {
|
|
43
|
-
action: parsed.action,
|
|
44
|
-
params: parsed.params,
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
else if (event.type === 'message') {
|
|
48
|
-
const msg = event.data;
|
|
49
|
-
// Skip verbose tool results (file contents, grep results)
|
|
50
|
-
if (msg.type === 'user' && 'tool_use_result' in msg) {
|
|
51
|
-
continue; // Don't send file contents to client
|
|
52
|
-
}
|
|
53
|
-
// Skip system init (too verbose)
|
|
54
|
-
if (msg.type === 'system' && msg.subtype === 'init') {
|
|
55
|
-
continue;
|
|
56
|
-
}
|
|
57
|
-
// Send assistant messages (text only, tool calls handled separately)
|
|
58
|
-
if (msg.type === 'assistant') {
|
|
59
|
-
const polishedMsg = {
|
|
60
|
-
type: msg.type,
|
|
61
|
-
session_id: msg.session_id,
|
|
62
|
-
};
|
|
63
|
-
// Extract text content
|
|
64
|
-
const msgData = msg.message;
|
|
65
|
-
if (msgData.content && Array.isArray(msgData.content)) {
|
|
66
|
-
for (const block of msgData.content) {
|
|
67
|
-
if (block.type === 'text' && block.text) {
|
|
68
|
-
polishedMsg.text = block.text;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
// Include token usage
|
|
73
|
-
if (msgData.usage) {
|
|
74
|
-
polishedMsg.usage = msgData.usage;
|
|
75
|
-
}
|
|
76
|
-
// Only send if there's actual text content (skip usage-only messages)
|
|
77
|
-
if (polishedMsg.text) {
|
|
78
|
-
sendEvent('message', polishedMsg);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
// Skip result messages (usage-only, not useful for client)
|
|
82
|
-
}
|
|
83
|
-
else if (event.type === 'done') {
|
|
84
|
-
// Send final result
|
|
85
|
-
sendEvent('done', {
|
|
86
|
-
status: event.data.status,
|
|
87
|
-
ticketsFile: event.data.ticketsFile,
|
|
88
|
-
tokensUsed: event.data.tokensUsed,
|
|
89
|
-
cost: event.data.cost,
|
|
90
|
-
sessionId: event.data.sessionId,
|
|
91
|
-
error: event.data.error,
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
catch (error) {
|
|
97
|
-
sendEvent('done', {
|
|
98
|
-
status: 'error',
|
|
99
|
-
error: error instanceof Error ? error.message : String(error),
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
finally {
|
|
103
|
-
reply.raw.end();
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=plan.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../kosuke/serve/routes/plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Fastify server for Kosuke CLI commands over HTTP with SSE
|
|
3
|
-
*/
|
|
4
|
-
import type { FastifyInstance } from 'fastify';
|
|
5
|
-
export interface ServeOptions {
|
|
6
|
-
port?: number;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Create and configure Fastify server
|
|
10
|
-
*/
|
|
11
|
-
export declare function createServer(): FastifyInstance;
|
|
12
|
-
/**
|
|
13
|
-
* Start the Kosuke server
|
|
14
|
-
*/
|
|
15
|
-
export declare function startServer(options?: ServeOptions): Promise<never>;
|
|
16
|
-
//# sourceMappingURL=server.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../kosuke/serve/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAU/C,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,eAAe,CAgB9C;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,CAqC5E"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Fastify server for Kosuke CLI commands over HTTP with SSE
|
|
3
|
-
*/
|
|
4
|
-
import Fastify from 'fastify';
|
|
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
|
-
import { DEFAULT_SERVER_PORT } from '../utils/constants.js';
|
|
13
|
-
/**
|
|
14
|
-
* Create and configure Fastify server
|
|
15
|
-
*/
|
|
16
|
-
export function createServer() {
|
|
17
|
-
const app = Fastify({
|
|
18
|
-
logger: false,
|
|
19
|
-
disableRequestLogging: true,
|
|
20
|
-
});
|
|
21
|
-
// Routes
|
|
22
|
-
app.get('/health', healthRoute);
|
|
23
|
-
app.post('/api/plan', { preHandler: validateRequest(planRequestSchema) }, planRoute);
|
|
24
|
-
app.post('/api/build', { preHandler: validateRequest(buildRequestSchema) }, buildRoute);
|
|
25
|
-
// Error handlers
|
|
26
|
-
app.setNotFoundHandler(notFoundHandler);
|
|
27
|
-
app.setErrorHandler(errorHandler);
|
|
28
|
-
return app;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Start the Kosuke server
|
|
32
|
-
*/
|
|
33
|
-
export async function startServer(options = {}) {
|
|
34
|
-
const port = options.port || DEFAULT_SERVER_PORT;
|
|
35
|
-
// Validate environment
|
|
36
|
-
if (!process.env.ANTHROPIC_API_KEY) {
|
|
37
|
-
throw new Error('ANTHROPIC_API_KEY environment variable is required');
|
|
38
|
-
}
|
|
39
|
-
if (!process.env.GITHUB_TOKEN) {
|
|
40
|
-
throw new Error('GITHUB_TOKEN environment variable is required for build command');
|
|
41
|
-
}
|
|
42
|
-
const app = createServer();
|
|
43
|
-
try {
|
|
44
|
-
await app.listen({ port, host: '0.0.0.0' });
|
|
45
|
-
console.log(`
|
|
46
|
-
╔══════════════════════════════════════════════════════════════════════════════╗
|
|
47
|
-
║ Kosuke Server Running ║
|
|
48
|
-
╚══════════════════════════════════════════════════════════════════════════════╝
|
|
49
|
-
|
|
50
|
-
🚀 Server listening on http://localhost:${port}
|
|
51
|
-
|
|
52
|
-
📡 Available endpoints:
|
|
53
|
-
GET /health - Health check
|
|
54
|
-
POST /api/plan - Plan command with SSE
|
|
55
|
-
POST /api/build - Build command with SSE
|
|
56
|
-
|
|
57
|
-
Press Ctrl+C to stop the server.
|
|
58
|
-
`);
|
|
59
|
-
}
|
|
60
|
-
catch (error) {
|
|
61
|
-
console.error('❌ Failed to start server:', error);
|
|
62
|
-
throw error;
|
|
63
|
-
}
|
|
64
|
-
// Keep the promise pending forever (server runs until Ctrl+C)
|
|
65
|
-
return new Promise(() => { });
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=server.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../kosuke/serve/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,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;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAM5D;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,GAAG,GAAG,OAAO,CAAC;QAClB,MAAM,EAAE,KAAK;QACb,qBAAqB,EAAE,IAAI;KAC5B,CAAC,CAAC;IAEH,SAAS;IACT,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAChC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,iBAAiB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IACrF,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,kBAAkB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IAExF,iBAAiB;IACjB,GAAG,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;IACxC,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAElC,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAAwB,EAAE;IAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,mBAAmB,CAAC;IAEjD,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,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC;;;;;0CAK0B,IAAI;;;;;;;;CAQ7C,CAAC,CAAC;IACD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC;IACd,CAAC;IAED,8DAA8D;IAC9D,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1,41 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,26 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|