sw-plan 0.1.14 → 0.1.15
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/dist/cli.js +118 -251
- package/dist/cli.js.map +1 -1
- package/dist/docs.d.ts +31 -0
- package/dist/docs.d.ts.map +1 -0
- package/dist/docs.js +199 -0
- package/dist/docs.js.map +1 -0
- package/dist/index.d.ts +64 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +267 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/README.md +0 -66
package/dist/cli.js
CHANGED
|
@@ -18,14 +18,18 @@
|
|
|
18
18
|
* --project-context <json> Project context as JSON string
|
|
19
19
|
* --cwd <path> Working directory (defaults to current directory)
|
|
20
20
|
*/
|
|
21
|
-
import { query } from '@anthropic-ai/claude-agent-sdk';
|
|
22
21
|
import { Command } from 'commander';
|
|
23
|
-
import { zodToJsonSchema } from 'zod-to-json-schema';
|
|
24
22
|
import { select } from '@inquirer/prompts';
|
|
23
|
+
import { z } from 'zod';
|
|
25
24
|
import { analyzeRepositoryV2 } from 'sourcewizard/repodetect';
|
|
26
|
-
import {
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
import { readFileSync, existsSync } from 'fs';
|
|
26
|
+
import { resolve, isAbsolute } from 'path';
|
|
27
|
+
import { QuestionsOutputSchema, PlanMetadataOutputSchema, runStructuredStage, runTextStage, displayInternalMessage, } from './index.js';
|
|
28
|
+
import { DocumentCompiler } from './docs.js';
|
|
29
|
+
// Schema for document compilation output
|
|
30
|
+
const DocumentOutputSchema = z.object({
|
|
31
|
+
outputFilePath: z.string().describe('The relative path to the file where the document was written')
|
|
32
|
+
});
|
|
29
33
|
/**
|
|
30
34
|
* Output stage change message
|
|
31
35
|
*/
|
|
@@ -38,20 +42,6 @@ function outputStage(stage, outputMode) {
|
|
|
38
42
|
console.error(`\n=== Stage: ${stage} ===\n`);
|
|
39
43
|
}
|
|
40
44
|
}
|
|
41
|
-
function getMCPServersConfig() {
|
|
42
|
-
return {
|
|
43
|
-
"context7": {
|
|
44
|
-
type: "http",
|
|
45
|
-
url: "https://mcp.context7.com/mcp",
|
|
46
|
-
headers: {
|
|
47
|
-
"CONTEXT7_API_KEY": process.env.CONTEXT7_API_KEY || "",
|
|
48
|
-
},
|
|
49
|
-
},
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
function getAllowedTools() {
|
|
53
|
-
return ['Read', 'Write', 'Glob', 'Grep', 'mcp__context7__resolve-library-id', 'mcp__context7__get-library-docs'];
|
|
54
|
-
}
|
|
55
45
|
/**
|
|
56
46
|
* Build the prompt for stage 1: Questions
|
|
57
47
|
*/
|
|
@@ -301,237 +291,6 @@ async function selectOptions(questions) {
|
|
|
301
291
|
}
|
|
302
292
|
return answers.join('\n\n');
|
|
303
293
|
}
|
|
304
|
-
/**
|
|
305
|
-
* Parse SDK messages into internal format
|
|
306
|
-
*/
|
|
307
|
-
function parseSDKMessage(message) {
|
|
308
|
-
const results = [];
|
|
309
|
-
switch (message.type) {
|
|
310
|
-
case 'stream_event':
|
|
311
|
-
const event = message.event;
|
|
312
|
-
if (event.type === 'content_block_delta') {
|
|
313
|
-
const delta = event.delta;
|
|
314
|
-
if (delta.type === 'text_delta') {
|
|
315
|
-
results.push({ type: 'agent_response', text: delta.text });
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
break;
|
|
319
|
-
case 'user':
|
|
320
|
-
if (!message.isSynthetic) {
|
|
321
|
-
const content = message.message.content;
|
|
322
|
-
if (Array.isArray(content)) {
|
|
323
|
-
for (const block of content) {
|
|
324
|
-
if (block.type === 'tool_result') {
|
|
325
|
-
const response = typeof block.content === 'string'
|
|
326
|
-
? block.content
|
|
327
|
-
: JSON.stringify(block.content);
|
|
328
|
-
results.push({ type: 'tool_result', tool_use_id: block.tool_use_id, tool_response: response });
|
|
329
|
-
}
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
break;
|
|
334
|
-
case 'assistant':
|
|
335
|
-
if (message.message.content) {
|
|
336
|
-
for (const block of message.message.content) {
|
|
337
|
-
if (block.type === 'tool_use') {
|
|
338
|
-
activeToolCalls.set(block.id, { tool_name: block.name, tool_params: block.input });
|
|
339
|
-
results.push({ type: 'tool_call', tool_name: block.name, tool_params: block.input, tool_use_id: block.id });
|
|
340
|
-
}
|
|
341
|
-
else if (block.type === 'text') {
|
|
342
|
-
results.push({ type: 'agent_response', text: block.text });
|
|
343
|
-
}
|
|
344
|
-
}
|
|
345
|
-
}
|
|
346
|
-
break;
|
|
347
|
-
case 'system':
|
|
348
|
-
if (message.subtype === 'init') {
|
|
349
|
-
results.push({ type: 'status', message: `Session started (model: ${message.model})` });
|
|
350
|
-
}
|
|
351
|
-
else if (message.subtype === 'status' && message.status) {
|
|
352
|
-
results.push({ type: 'status', message: `Status: ${message.status}...` });
|
|
353
|
-
}
|
|
354
|
-
break;
|
|
355
|
-
}
|
|
356
|
-
return results;
|
|
357
|
-
}
|
|
358
|
-
/**
|
|
359
|
-
* Format internal message for display
|
|
360
|
-
*/
|
|
361
|
-
function displayInternalMessage(msg) {
|
|
362
|
-
switch (msg.type) {
|
|
363
|
-
case 'tool_call':
|
|
364
|
-
const paramsStr = JSON.stringify(msg.tool_params).substring(0, 80);
|
|
365
|
-
console.error(`Tool call: ${msg.tool_name}(${paramsStr}${JSON.stringify(msg.tool_params).length > 80 ? '...' : ''})`);
|
|
366
|
-
break;
|
|
367
|
-
case 'tool_result':
|
|
368
|
-
const toolCall = activeToolCalls.get(msg.tool_use_id);
|
|
369
|
-
const toolName = toolCall ? toolCall.tool_name : 'unknown';
|
|
370
|
-
const size = msg.tool_response.length;
|
|
371
|
-
console.error(`Tool result: ${toolName} -> ${size} bytes`);
|
|
372
|
-
// Debug: Print full StructuredOutput content
|
|
373
|
-
if (toolName === 'StructuredOutput') {
|
|
374
|
-
console.error(`[DEBUG] StructuredOutput full response:\n'${msg.tool_response}'`);
|
|
375
|
-
}
|
|
376
|
-
activeToolCalls.delete(msg.tool_use_id);
|
|
377
|
-
break;
|
|
378
|
-
case 'agent_response':
|
|
379
|
-
console.error(`Agent message: ${msg.text}`);
|
|
380
|
-
break;
|
|
381
|
-
case 'status':
|
|
382
|
-
console.error(msg.message);
|
|
383
|
-
break;
|
|
384
|
-
case 'questions':
|
|
385
|
-
console.error(`\n[Received ${msg.questions.length} questions from agent]`);
|
|
386
|
-
break;
|
|
387
|
-
case 'plan':
|
|
388
|
-
console.error(`\n[Generated ${msg.plan.difficulty} plan: ${msg.plan.title}]`);
|
|
389
|
-
break;
|
|
390
|
-
case 'stage':
|
|
391
|
-
console.error(`\n[Stage: ${msg.stage}]`);
|
|
392
|
-
break;
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
/**
|
|
396
|
-
* Run a stage with structured output (for questions)
|
|
397
|
-
*/
|
|
398
|
-
async function runStructuredStage(prompt, schema, cwd, outputMode, sessionId) {
|
|
399
|
-
const jsonSchema = zodToJsonSchema(schema, {
|
|
400
|
-
$refStrategy: 'none',
|
|
401
|
-
target: 'jsonSchema7'
|
|
402
|
-
});
|
|
403
|
-
const result = query({
|
|
404
|
-
prompt,
|
|
405
|
-
options: {
|
|
406
|
-
cwd,
|
|
407
|
-
model: 'haiku',
|
|
408
|
-
settingSources: [],
|
|
409
|
-
mcpServers: getMCPServersConfig(),
|
|
410
|
-
maxTurns: 30,
|
|
411
|
-
allowedTools: getAllowedTools(),
|
|
412
|
-
outputFormat: {
|
|
413
|
-
type: 'json_schema',
|
|
414
|
-
schema: jsonSchema
|
|
415
|
-
},
|
|
416
|
-
resume: sessionId
|
|
417
|
-
}
|
|
418
|
-
});
|
|
419
|
-
let capturedSessionId = sessionId || '';
|
|
420
|
-
let structuredOutput = null;
|
|
421
|
-
let sessionIdOutputted = false;
|
|
422
|
-
for await (const message of result) {
|
|
423
|
-
if ('session_id' in message && message.session_id) {
|
|
424
|
-
const newSessionId = message.session_id;
|
|
425
|
-
// Only output if session ID changed or first time
|
|
426
|
-
if (capturedSessionId !== newSessionId) {
|
|
427
|
-
capturedSessionId = newSessionId;
|
|
428
|
-
// Output SDK session ID as internal message (once per new session)
|
|
429
|
-
if (outputMode === 'json' && !sessionIdOutputted) {
|
|
430
|
-
console.log(JSON.stringify({ type: 'sdk_session', sessionId: capturedSessionId }));
|
|
431
|
-
sessionIdOutputted = true;
|
|
432
|
-
}
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
if (message.type === 'result' && message.subtype === 'success') {
|
|
436
|
-
if (message.structured_output) {
|
|
437
|
-
structuredOutput = message.structured_output;
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
|
-
// Parse and display messages
|
|
441
|
-
const internalMsgs = parseSDKMessage(message);
|
|
442
|
-
if (outputMode === 'json') {
|
|
443
|
-
// In JSON mode, output internal messages as JSON to stdout
|
|
444
|
-
for (const internalMsg of internalMsgs) {
|
|
445
|
-
console.log(JSON.stringify(internalMsg));
|
|
446
|
-
}
|
|
447
|
-
}
|
|
448
|
-
else {
|
|
449
|
-
// In pretty mode, display to stderr
|
|
450
|
-
for (const internalMsg of internalMsgs) {
|
|
451
|
-
displayInternalMessage(internalMsg);
|
|
452
|
-
}
|
|
453
|
-
if (message.type === 'result') {
|
|
454
|
-
if (message.subtype === 'success') {
|
|
455
|
-
console.error(`\nStage complete (${message.num_turns} turns, $${message.total_cost_usd.toFixed(4)})`);
|
|
456
|
-
}
|
|
457
|
-
else {
|
|
458
|
-
console.error(`[ERROR] Agent returned error subtype: ${message.subtype}`);
|
|
459
|
-
}
|
|
460
|
-
}
|
|
461
|
-
}
|
|
462
|
-
}
|
|
463
|
-
if (!structuredOutput) {
|
|
464
|
-
console.error('[WARNING] No structured output received from agent - returning empty object');
|
|
465
|
-
// Return empty object instead of throwing to allow fallback handling
|
|
466
|
-
return { output: {}, sessionId: capturedSessionId };
|
|
467
|
-
}
|
|
468
|
-
return { output: structuredOutput, sessionId: capturedSessionId };
|
|
469
|
-
}
|
|
470
|
-
/**
|
|
471
|
-
* Run a stage and collect text response (for plan generation)
|
|
472
|
-
*/
|
|
473
|
-
async function runTextStage(prompt, cwd, outputMode, sessionId) {
|
|
474
|
-
const result = query({
|
|
475
|
-
prompt,
|
|
476
|
-
options: {
|
|
477
|
-
cwd,
|
|
478
|
-
model: 'haiku',
|
|
479
|
-
mcpServers: getMCPServersConfig(),
|
|
480
|
-
settingSources: [],
|
|
481
|
-
maxTurns: 30,
|
|
482
|
-
allowedTools: getAllowedTools(),
|
|
483
|
-
resume: sessionId
|
|
484
|
-
}
|
|
485
|
-
});
|
|
486
|
-
let capturedSessionId = sessionId || '';
|
|
487
|
-
let responseText = '';
|
|
488
|
-
let sessionIdOutputted = false;
|
|
489
|
-
for await (const message of result) {
|
|
490
|
-
if ('session_id' in message && message.session_id) {
|
|
491
|
-
const newSessionId = message.session_id;
|
|
492
|
-
// Only output if session ID changed or first time
|
|
493
|
-
if (capturedSessionId !== newSessionId) {
|
|
494
|
-
capturedSessionId = newSessionId;
|
|
495
|
-
// Output SDK session ID as internal message (once per new session)
|
|
496
|
-
if (outputMode === 'json' && !sessionIdOutputted) {
|
|
497
|
-
console.log(JSON.stringify({ type: 'sdk_session', sessionId: capturedSessionId }));
|
|
498
|
-
sessionIdOutputted = true;
|
|
499
|
-
}
|
|
500
|
-
}
|
|
501
|
-
}
|
|
502
|
-
// Collect text from assistant messages
|
|
503
|
-
if (message.type === 'assistant') {
|
|
504
|
-
for (const block of message.message.content) {
|
|
505
|
-
if (block.type === 'text') {
|
|
506
|
-
responseText += block.text;
|
|
507
|
-
}
|
|
508
|
-
}
|
|
509
|
-
}
|
|
510
|
-
// Parse and display messages
|
|
511
|
-
const internalMsgs = parseSDKMessage(message);
|
|
512
|
-
if (outputMode === 'json') {
|
|
513
|
-
// In JSON mode, output internal messages as JSON to stdout
|
|
514
|
-
for (const internalMsg of internalMsgs) {
|
|
515
|
-
console.log(JSON.stringify(internalMsg));
|
|
516
|
-
}
|
|
517
|
-
}
|
|
518
|
-
else {
|
|
519
|
-
// In pretty mode, display to stderr
|
|
520
|
-
for (const internalMsg of internalMsgs) {
|
|
521
|
-
displayInternalMessage(internalMsg);
|
|
522
|
-
}
|
|
523
|
-
if (message.type === 'result') {
|
|
524
|
-
if (message.subtype === 'success') {
|
|
525
|
-
console.error(`\nStage complete (${message.num_turns} turns, $${message.total_cost_usd.toFixed(4)})`);
|
|
526
|
-
}
|
|
527
|
-
else {
|
|
528
|
-
console.error(`[ERROR] Agent returned error subtype: ${message.subtype}`);
|
|
529
|
-
}
|
|
530
|
-
}
|
|
531
|
-
}
|
|
532
|
-
}
|
|
533
|
-
return { response: responseText, sessionId: capturedSessionId };
|
|
534
|
-
}
|
|
535
294
|
/**
|
|
536
295
|
* Run the planner agent through all stages
|
|
537
296
|
*/
|
|
@@ -780,7 +539,11 @@ async function main() {
|
|
|
780
539
|
program
|
|
781
540
|
.name('planner-cli')
|
|
782
541
|
.description('Integration planning tool using Claude Agent SDK')
|
|
783
|
-
.version('0.1.0')
|
|
542
|
+
.version('0.1.0');
|
|
543
|
+
// Plan subcommand (default)
|
|
544
|
+
program
|
|
545
|
+
.command('plan', { isDefault: true })
|
|
546
|
+
.description('Generate integration plans for a project')
|
|
784
547
|
.requiredOption('--prompt <text>', 'User prompt describing the task')
|
|
785
548
|
.option('--project-context <json>', 'Project context as JSON string')
|
|
786
549
|
.option('--cwd <path>', 'Working directory (defaults to current directory)')
|
|
@@ -833,6 +596,110 @@ async function main() {
|
|
|
833
596
|
process.exit(1);
|
|
834
597
|
}
|
|
835
598
|
});
|
|
599
|
+
// Compile subcommand
|
|
600
|
+
program
|
|
601
|
+
.command('compile')
|
|
602
|
+
.description('Compile notes/transcripts into structured documents')
|
|
603
|
+
.requiredOption('--transcript-file <path>', 'Path to file containing transcript')
|
|
604
|
+
.requiredOption('--doc-type <type>', 'Document type: design-doc, prd, rfp, sow, technical-spec, user-story')
|
|
605
|
+
.option('--session-id <text>', 'ID of the previous session', 'session id')
|
|
606
|
+
.option('--output-mode <mode>', 'Output mode: json or pretty', 'json')
|
|
607
|
+
.option('--clarifications <text>', 'Answers to clarification questions (formatted as: 1. Question\\nAnswer: answer\\n\\n2. ...)')
|
|
608
|
+
.option('--cwd <path>', 'Working directory', process.cwd())
|
|
609
|
+
.action(async (options) => {
|
|
610
|
+
try {
|
|
611
|
+
if (options.outputMode !== 'json' && options.outputMode !== 'pretty') {
|
|
612
|
+
throw new Error('Invalid output mode. Must be "json" or "pretty"');
|
|
613
|
+
}
|
|
614
|
+
const compiler = new DocumentCompiler(options.cwd, options.outputMode);
|
|
615
|
+
if (!options.clarifications) {
|
|
616
|
+
const result = await compiler.clarify(options.transcriptFile, options.docType);
|
|
617
|
+
// Output questions using InternalMessage type
|
|
618
|
+
const questionsMessage = {
|
|
619
|
+
type: 'questions',
|
|
620
|
+
questions: result.questions.questions || []
|
|
621
|
+
};
|
|
622
|
+
if (options.outputMode === 'json') {
|
|
623
|
+
console.log(JSON.stringify(questionsMessage));
|
|
624
|
+
}
|
|
625
|
+
else {
|
|
626
|
+
console.log('\n=== Questions produced ===\n');
|
|
627
|
+
console.log(`Questions ${JSON.stringify(result.questions, null, 2)}`);
|
|
628
|
+
}
|
|
629
|
+
return;
|
|
630
|
+
}
|
|
631
|
+
if (!options.sessionId) {
|
|
632
|
+
throw new Error('Session ID is required to continue the document generation.');
|
|
633
|
+
}
|
|
634
|
+
const outputFilePath = await compiler.compile(options.sessionId, options.clarifications, options.transcriptFile, options.docType);
|
|
635
|
+
// Read the generated document
|
|
636
|
+
// Check if the path is already absolute or starts from repo root
|
|
637
|
+
let absolutePath;
|
|
638
|
+
if (isAbsolute(outputFilePath)) {
|
|
639
|
+
absolutePath = outputFilePath;
|
|
640
|
+
}
|
|
641
|
+
else if (existsSync(outputFilePath)) {
|
|
642
|
+
// Path is relative to CWD where CLI is run from
|
|
643
|
+
absolutePath = resolve(outputFilePath);
|
|
644
|
+
}
|
|
645
|
+
else {
|
|
646
|
+
// Try resolving relative to options.cwd
|
|
647
|
+
absolutePath = resolve(options.cwd, outputFilePath);
|
|
648
|
+
}
|
|
649
|
+
if (!existsSync(absolutePath)) {
|
|
650
|
+
throw new Error(`Document file was not generated at expected path: ${absolutePath}\nOriginal path from compiler: ${outputFilePath}`);
|
|
651
|
+
}
|
|
652
|
+
const documentContent = readFileSync(absolutePath, 'utf-8');
|
|
653
|
+
if (options.outputMode === 'json') {
|
|
654
|
+
// Create a plan message with the document content
|
|
655
|
+
const documentPlan = {
|
|
656
|
+
id: 1,
|
|
657
|
+
title: `${options.docType.split('-').map((w) => w.charAt(0).toUpperCase() + w.slice(1)).join(' ')}`,
|
|
658
|
+
description: `Generated ${options.docType} document`,
|
|
659
|
+
estimatedTime: '',
|
|
660
|
+
difficulty: 'Medium',
|
|
661
|
+
sections: {
|
|
662
|
+
setup: [],
|
|
663
|
+
integration: [],
|
|
664
|
+
verification: [],
|
|
665
|
+
nextSteps: [documentContent]
|
|
666
|
+
},
|
|
667
|
+
summaries: {
|
|
668
|
+
setup: '',
|
|
669
|
+
integration: `Full ${options.docType} document`,
|
|
670
|
+
verification: '',
|
|
671
|
+
nextSteps: ''
|
|
672
|
+
}
|
|
673
|
+
};
|
|
674
|
+
const planMessage = {
|
|
675
|
+
type: 'plan',
|
|
676
|
+
plan: documentPlan
|
|
677
|
+
};
|
|
678
|
+
console.log(JSON.stringify(planMessage));
|
|
679
|
+
// Also output complete message
|
|
680
|
+
const completeMessage = {
|
|
681
|
+
type: 'complete',
|
|
682
|
+
document: outputFilePath
|
|
683
|
+
};
|
|
684
|
+
console.log(JSON.stringify(completeMessage));
|
|
685
|
+
}
|
|
686
|
+
else {
|
|
687
|
+
console.error('\n=== Document Generated ===\n');
|
|
688
|
+
console.error(`File: ${outputFilePath}\n`);
|
|
689
|
+
console.error('---\n');
|
|
690
|
+
console.error(documentContent);
|
|
691
|
+
console.error('\n---\n');
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
catch (error) {
|
|
695
|
+
console.error(JSON.stringify({
|
|
696
|
+
type: 'error',
|
|
697
|
+
error: error instanceof Error ? error.message : 'Unknown error',
|
|
698
|
+
stack: error instanceof Error ? error.stack : ''
|
|
699
|
+
}));
|
|
700
|
+
process.exit(1);
|
|
701
|
+
}
|
|
702
|
+
});
|
|
836
703
|
await program.parseAsync(process.argv);
|
|
837
704
|
}
|
|
838
705
|
main();
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../cli.ts"],"names":[],"mappings":"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"}
|
package/dist/docs.d.ts
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { type QuestionsOutput } from './index.js';
|
|
2
|
+
interface ClarifyingResult {
|
|
3
|
+
questions: QuestionsOutput;
|
|
4
|
+
sessionId: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Document Compiler - Converts transcripts/notes into structured documents
|
|
8
|
+
*/
|
|
9
|
+
export declare class DocumentCompiler {
|
|
10
|
+
private outputMode;
|
|
11
|
+
private cwd;
|
|
12
|
+
private docTypeLabels;
|
|
13
|
+
private docQuestions;
|
|
14
|
+
constructor(cwd: string, outputMode?: 'json' | 'pretty');
|
|
15
|
+
/**
|
|
16
|
+
* Build the prompt for asking clarifying questions for the document
|
|
17
|
+
*/
|
|
18
|
+
private askQuestionsPrompt;
|
|
19
|
+
/**
|
|
20
|
+
* Build the prompt for document compilation from file
|
|
21
|
+
*/
|
|
22
|
+
private buildDocumentPrompt;
|
|
23
|
+
private refineDocumentPrompt;
|
|
24
|
+
clarify(transcriptFilePath: string, docType: string): Promise<ClarifyingResult>;
|
|
25
|
+
/**
|
|
26
|
+
* Generate a document from transcript file and return the output file path
|
|
27
|
+
*/
|
|
28
|
+
compile(sessionId: string, clarifications: string, transcriptFilePath: string, docType: string): Promise<string>;
|
|
29
|
+
}
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=docs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../docs.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,eAAe,EAKrB,MAAM,YAAY,CAAC;AAEpB,UAAU,gBAAgB;IACxB,SAAS,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAoBD;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,aAAa,CAQnB;IAEF,OAAO,CAAC,YAAY,CAYlB;gBAEU,GAAG,EAAE,MAAM,EAAE,UAAU,GAAE,MAAM,GAAG,QAAiB;IAK/D;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsD1B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4B3B,OAAO,CAAC,oBAAoB;IAyBtB,OAAO,CAAC,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwBrF;;OAEG;IACG,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA+CvH"}
|
package/dist/docs.js
ADDED
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import z from 'zod';
|
|
2
|
+
import { QuestionsOutputSchema, runStructuredStage, getLastWrittenFilePath, resetLastWrittenFilePath, } from './index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Output stage change message
|
|
5
|
+
*/
|
|
6
|
+
function outputStage(stage, outputMode) {
|
|
7
|
+
const stageMessage = { type: 'stage', stage };
|
|
8
|
+
if (outputMode === 'json') {
|
|
9
|
+
console.log(JSON.stringify(stageMessage));
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
console.error(`\n=== Stage: ${stage} ===\n`);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
// Schema for document compilation output
|
|
16
|
+
const DocumentOutputSchema = z.object({
|
|
17
|
+
outputFilePath: z.string().describe('The relative path to the file where the document was written')
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* Document Compiler - Converts transcripts/notes into structured documents
|
|
21
|
+
*/
|
|
22
|
+
export class DocumentCompiler {
|
|
23
|
+
outputMode;
|
|
24
|
+
cwd;
|
|
25
|
+
docTypeLabels = {
|
|
26
|
+
'design-doc': 'Technical Design Document',
|
|
27
|
+
'brd': 'BRD (Business Requirements Document)',
|
|
28
|
+
'prd': 'PRD (Product Requirements Document)',
|
|
29
|
+
'rfp': 'RFP (Request for Proposal)',
|
|
30
|
+
'sow': 'SOW (Statement of Work)',
|
|
31
|
+
'technical-spec': 'Technical Specification',
|
|
32
|
+
'user-story': 'User Stories',
|
|
33
|
+
};
|
|
34
|
+
docQuestions = {
|
|
35
|
+
'brd': [
|
|
36
|
+
'What problem are we solving?',
|
|
37
|
+
'Who is it for?',
|
|
38
|
+
'Why does it matter (business impact)?',
|
|
39
|
+
'What does success look like (metrics / outcomes)?',
|
|
40
|
+
'What must the solution do (requirements)?',
|
|
41
|
+
'What constraints exist (tech, legal, timeline, budget)?',
|
|
42
|
+
'What is explicitly out of scope?',
|
|
43
|
+
'How will we know it\'s done (acceptance criteria)?',
|
|
44
|
+
],
|
|
45
|
+
};
|
|
46
|
+
constructor(cwd, outputMode = 'json') {
|
|
47
|
+
this.cwd = cwd;
|
|
48
|
+
this.outputMode = outputMode;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Build the prompt for asking clarifying questions for the document
|
|
52
|
+
*/
|
|
53
|
+
askQuestionsPrompt(filePath, docType) {
|
|
54
|
+
const docLabel = this.docTypeLabels[docType] || 'Document';
|
|
55
|
+
const docQuestions = this.docQuestions[docType] || this.docQuestions['brd'];
|
|
56
|
+
return `You are a senior technical manager creating a ${docLabel} from meeting notes.
|
|
57
|
+
|
|
58
|
+
The transcript is in a file at: ${filePath}
|
|
59
|
+
|
|
60
|
+
Your task:
|
|
61
|
+
1. Read the transcript file
|
|
62
|
+
2. Analyze the content
|
|
63
|
+
3. **Ask clarifying questions** - You MUST ask 1-4 clarifying questions about:
|
|
64
|
+
- Specific requirements or constraints for the implementation
|
|
65
|
+
- Preferences for third-party services vs self-hosted solutions
|
|
66
|
+
- Authentication methods or existing auth patterns to maintain
|
|
67
|
+
- Data storage preferences or existing database patterns
|
|
68
|
+
- Any breaking changes they're willing to accept
|
|
69
|
+
- Scale expectations (current users, growth plans)
|
|
70
|
+
- Budget constraints (API costs, infrastructure)
|
|
71
|
+
|
|
72
|
+
The purpose of this document is to answer these questions:
|
|
73
|
+
${docQuestions.join('\n')}
|
|
74
|
+
If any of these are unclear from the transcript ask for clarification.
|
|
75
|
+
|
|
76
|
+
IMPORTANT:
|
|
77
|
+
- You MUST ask at least 1 question - questions are REQUIRED
|
|
78
|
+
- Do NOT ask contradictory questions. Questions must be logically consistent with each other.
|
|
79
|
+
- You MUST AVOID migrations at all cost, ALWAYS try to make things work side-by-side.
|
|
80
|
+
- Act like you're a founder and do it in a simplest way as possible, just make sure it works.
|
|
81
|
+
- ALWAYS use Context7 MCP for retrieving up to date documentation for the library or SDK before integration
|
|
82
|
+
|
|
83
|
+
## Output Format
|
|
84
|
+
|
|
85
|
+
Output your questions in this EXACT JSON format:
|
|
86
|
+
|
|
87
|
+
\`\`\`json
|
|
88
|
+
{
|
|
89
|
+
"questions": [
|
|
90
|
+
{
|
|
91
|
+
"question": "Your question text?",
|
|
92
|
+
"options": ["Option 1", "Option 2", "Option 3"],
|
|
93
|
+
"additionalInfo": "Optional context about why this matters"
|
|
94
|
+
}
|
|
95
|
+
]
|
|
96
|
+
}
|
|
97
|
+
\`\`\`
|
|
98
|
+
|
|
99
|
+
Rules:
|
|
100
|
+
- You MUST provide at least 1 question (1-4 questions is ideal)
|
|
101
|
+
- NEVER use vague options like "Not sure", "Recommend me", "Let you decide", "Other", or "I don't know"
|
|
102
|
+
- Each option MUST be a specific implementation approach, tool, or technology`;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Build the prompt for document compilation from file
|
|
106
|
+
*/
|
|
107
|
+
buildDocumentPrompt(clarifications, filePath, docType) {
|
|
108
|
+
const docLabel = this.docTypeLabels[docType] || 'Document';
|
|
109
|
+
const docQuestions = this.docQuestions[docType] || this.docQuestions['brd'];
|
|
110
|
+
return `You are a senior technical manager creating a ${docLabel} from meeting notes.
|
|
111
|
+
|
|
112
|
+
The transcript is in a file at: ${filePath}
|
|
113
|
+
Clarifications: ${clarifications}
|
|
114
|
+
|
|
115
|
+
Your task:
|
|
116
|
+
1. Read the transcript file
|
|
117
|
+
2. Analyze the content and clarifications
|
|
118
|
+
3. Write a structured ${docLabel} to a file based on clarifications
|
|
119
|
+
|
|
120
|
+
The purpose of this document is to answer these questions:
|
|
121
|
+
${docQuestions.join('\n')}
|
|
122
|
+
Make sure to create a document focused on answering these questions.
|
|
123
|
+
The document should be comprehensive but concise and follow standard ${docLabel} structure.
|
|
124
|
+
|
|
125
|
+
IMPORTANT:
|
|
126
|
+
- Do NOT ask any questions. All clarifications were already gathered. Generate the plan based on the context.
|
|
127
|
+
- Don't include details that are not mentioned in the transcript.
|
|
128
|
+
- Don't generate document date, add a placeholder.
|
|
129
|
+
- Don't make decisions by yourself.
|
|
130
|
+
|
|
131
|
+
After writing the document, return the relative path to the output file in the structured output.`;
|
|
132
|
+
}
|
|
133
|
+
refineDocumentPrompt(clarifications, filePath, transcriptFilePath, docType) {
|
|
134
|
+
const docLabel = this.docTypeLabels[docType] || 'Document';
|
|
135
|
+
const docQuestions = this.docQuestions[docType] || this.docQuestions['brd'];
|
|
136
|
+
return `You are a technical consultant working on a ${docLabel} and meeting notes.
|
|
137
|
+
|
|
138
|
+
The document is in a file at: ${filePath}
|
|
139
|
+
The transcript is in a file at: ${transcriptFilePath}
|
|
140
|
+
Clarifications: ${clarifications}
|
|
141
|
+
|
|
142
|
+
Your task:
|
|
143
|
+
1. Read the document
|
|
144
|
+
2. Analyze the content and clarifications
|
|
145
|
+
3. Refine the document, make it more concise and verify against the meeting notes transcript.
|
|
146
|
+
|
|
147
|
+
The purpose of this document is to answer these questions:
|
|
148
|
+
${docQuestions.join('\n')}
|
|
149
|
+
Make sure that the document is focused on answering these questions.
|
|
150
|
+
|
|
151
|
+
IMPORTANT:
|
|
152
|
+
- Do NOT ask any questions. All clarifications were already gathered. Generate the plan based on the context.
|
|
153
|
+
|
|
154
|
+
Write the refined document to a new path, and return the relative path to the output file in the structured output.`;
|
|
155
|
+
}
|
|
156
|
+
async clarify(transcriptFilePath, docType) {
|
|
157
|
+
if (!process.env.ANTHROPIC_API_KEY) {
|
|
158
|
+
throw new Error('ANTHROPIC_API_KEY environment variable is required');
|
|
159
|
+
}
|
|
160
|
+
outputStage('start', this.outputMode);
|
|
161
|
+
const questionsPrompt = this.askQuestionsPrompt(transcriptFilePath, docType);
|
|
162
|
+
const result = await runStructuredStage(questionsPrompt, QuestionsOutputSchema, this.cwd, this.outputMode);
|
|
163
|
+
outputStage('questions', this.outputMode);
|
|
164
|
+
return {
|
|
165
|
+
questions: result.output,
|
|
166
|
+
sessionId: result.sessionId,
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Generate a document from transcript file and return the output file path
|
|
171
|
+
*/
|
|
172
|
+
async compile(sessionId, clarifications, transcriptFilePath, docType) {
|
|
173
|
+
if (!process.env.ANTHROPIC_API_KEY) {
|
|
174
|
+
throw new Error('ANTHROPIC_API_KEY environment variable is required');
|
|
175
|
+
}
|
|
176
|
+
// Reset to ensure we capture the fresh write
|
|
177
|
+
resetLastWrittenFilePath();
|
|
178
|
+
outputStage('plan1', this.outputMode);
|
|
179
|
+
const buildPrompt = this.buildDocumentPrompt(clarifications, transcriptFilePath, docType);
|
|
180
|
+
await runStructuredStage(buildPrompt, DocumentOutputSchema, this.cwd, this.outputMode, sessionId);
|
|
181
|
+
// Get the actual file path from the Write tool call
|
|
182
|
+
const initialFilePath = getLastWrittenFilePath();
|
|
183
|
+
if (!initialFilePath) {
|
|
184
|
+
throw new Error('No file was written during document generation');
|
|
185
|
+
}
|
|
186
|
+
// Reset for the refinement stage
|
|
187
|
+
resetLastWrittenFilePath();
|
|
188
|
+
const prompt = this.refineDocumentPrompt(clarifications, initialFilePath, transcriptFilePath, docType);
|
|
189
|
+
await runStructuredStage(prompt, DocumentOutputSchema, this.cwd, this.outputMode);
|
|
190
|
+
// Get the actual refined file path from the Write tool call
|
|
191
|
+
const refinedFilePath = getLastWrittenFilePath();
|
|
192
|
+
if (!refinedFilePath) {
|
|
193
|
+
throw new Error('No file was written during document refinement');
|
|
194
|
+
}
|
|
195
|
+
outputStage('complete', this.outputMode);
|
|
196
|
+
return refinedFilePath;
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=docs.js.map
|
package/dist/docs.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../docs.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -220,4 +220,68 @@ export type PlanVerificationOutput = z.infer<typeof PlanVerificationOutputSchema
|
|
|
220
220
|
export type PlanNextStepsOutput = z.infer<typeof PlanNextStepsOutputSchema>;
|
|
221
221
|
export type SectionSummary = z.infer<typeof SectionSummarySchema>;
|
|
222
222
|
export type IntegrationPlan = z.infer<typeof IntegrationPlanSchema>;
|
|
223
|
+
export type Stage = 'start' | 'questions' | 'plan1' | 'plan2' | 'plan3' | 'complete';
|
|
224
|
+
export type InternalMessage = {
|
|
225
|
+
type: 'tool_call';
|
|
226
|
+
tool_name: string;
|
|
227
|
+
tool_params: any;
|
|
228
|
+
tool_use_id: string;
|
|
229
|
+
} | {
|
|
230
|
+
type: 'tool_result';
|
|
231
|
+
tool_use_id: string;
|
|
232
|
+
tool_response: string;
|
|
233
|
+
} | {
|
|
234
|
+
type: 'agent_response';
|
|
235
|
+
text: string;
|
|
236
|
+
} | {
|
|
237
|
+
type: 'status';
|
|
238
|
+
message: string;
|
|
239
|
+
} | {
|
|
240
|
+
type: 'questions';
|
|
241
|
+
questions: Question[];
|
|
242
|
+
} | {
|
|
243
|
+
type: 'plan';
|
|
244
|
+
plan: IntegrationPlan;
|
|
245
|
+
} | {
|
|
246
|
+
type: 'sdk_session';
|
|
247
|
+
sessionId: string;
|
|
248
|
+
} | {
|
|
249
|
+
type: 'stage';
|
|
250
|
+
stage: Stage;
|
|
251
|
+
} | {
|
|
252
|
+
type: 'progress';
|
|
253
|
+
message: string;
|
|
254
|
+
} | {
|
|
255
|
+
type: 'document_chunk';
|
|
256
|
+
content: string;
|
|
257
|
+
} | {
|
|
258
|
+
type: 'complete';
|
|
259
|
+
document: string;
|
|
260
|
+
};
|
|
261
|
+
/**
|
|
262
|
+
* Get the last written file path from Write tool calls
|
|
263
|
+
*/
|
|
264
|
+
export declare function getLastWrittenFilePath(): string | null;
|
|
265
|
+
/**
|
|
266
|
+
* Reset the last written file path (useful for new sessions)
|
|
267
|
+
*/
|
|
268
|
+
export declare function resetLastWrittenFilePath(): void;
|
|
269
|
+
/**
|
|
270
|
+
* Format internal message for display
|
|
271
|
+
*/
|
|
272
|
+
export declare function displayInternalMessage(msg: InternalMessage): void;
|
|
273
|
+
/**
|
|
274
|
+
* Run a stage with structured output (for questions)
|
|
275
|
+
*/
|
|
276
|
+
export declare function runStructuredStage<T>(prompt: string, schema: any, cwd: string, outputMode: 'json' | 'pretty', sessionId?: string): Promise<{
|
|
277
|
+
output: T;
|
|
278
|
+
sessionId: string;
|
|
279
|
+
}>;
|
|
280
|
+
/**
|
|
281
|
+
* Run a stage and collect text response (for plan generation)
|
|
282
|
+
*/
|
|
283
|
+
export declare function runTextStage(prompt: string, cwd: string, outputMode: 'json' | 'pretty', sessionId?: string): Promise<{
|
|
284
|
+
response: string;
|
|
285
|
+
sessionId: string;
|
|
286
|
+
}>;
|
|
223
287
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Exports schemas and types for integration planning.
|
|
5
5
|
*/
|
|
6
|
+
import { query } from '@anthropic-ai/claude-agent-sdk';
|
|
6
7
|
import { z } from 'zod';
|
|
8
|
+
import zodToJsonSchema from 'zod-to-json-schema';
|
|
7
9
|
// Define the schema for questions
|
|
8
10
|
export const QuestionSchema = z.object({
|
|
9
11
|
question: z.string(),
|
|
@@ -65,4 +67,269 @@ export const IntegrationPlanSchema = z.object({
|
|
|
65
67
|
nextSteps: z.string()
|
|
66
68
|
})
|
|
67
69
|
});
|
|
70
|
+
// Track active tool calls to match with results
|
|
71
|
+
const activeToolCalls = new Map();
|
|
72
|
+
// Track written file paths from Write tool calls
|
|
73
|
+
let lastWrittenFilePath = null;
|
|
74
|
+
/**
|
|
75
|
+
* Get the last written file path from Write tool calls
|
|
76
|
+
*/
|
|
77
|
+
export function getLastWrittenFilePath() {
|
|
78
|
+
return lastWrittenFilePath;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Reset the last written file path (useful for new sessions)
|
|
82
|
+
*/
|
|
83
|
+
export function resetLastWrittenFilePath() {
|
|
84
|
+
lastWrittenFilePath = null;
|
|
85
|
+
}
|
|
86
|
+
function getMCPServersConfig() {
|
|
87
|
+
return {
|
|
88
|
+
"context7": {
|
|
89
|
+
type: "http",
|
|
90
|
+
url: "https://mcp.context7.com/mcp",
|
|
91
|
+
headers: {
|
|
92
|
+
"CONTEXT7_API_KEY": process.env.CONTEXT7_API_KEY || "",
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
function getAllowedTools() {
|
|
98
|
+
return ['Read', 'Write', 'Glob', 'Grep', 'mcp__context7__resolve-library-id', 'mcp__context7__get-library-docs'];
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Parse SDK messages into internal format
|
|
102
|
+
*/
|
|
103
|
+
function parseSDKMessage(message) {
|
|
104
|
+
const results = [];
|
|
105
|
+
switch (message.type) {
|
|
106
|
+
case 'stream_event':
|
|
107
|
+
const event = message.event;
|
|
108
|
+
if (event.type === 'content_block_delta') {
|
|
109
|
+
const delta = event.delta;
|
|
110
|
+
if (delta.type === 'text_delta') {
|
|
111
|
+
results.push({ type: 'agent_response', text: delta.text });
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
break;
|
|
115
|
+
case 'user':
|
|
116
|
+
if (!message.isSynthetic) {
|
|
117
|
+
const content = message.message.content;
|
|
118
|
+
if (Array.isArray(content)) {
|
|
119
|
+
for (const block of content) {
|
|
120
|
+
if (block.type === 'tool_result') {
|
|
121
|
+
const response = typeof block.content === 'string'
|
|
122
|
+
? block.content
|
|
123
|
+
: JSON.stringify(block.content);
|
|
124
|
+
results.push({ type: 'tool_result', tool_use_id: block.tool_use_id, tool_response: response });
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
break;
|
|
130
|
+
case 'assistant':
|
|
131
|
+
if (message.message.content) {
|
|
132
|
+
for (const block of message.message.content) {
|
|
133
|
+
if (block.type === 'tool_use') {
|
|
134
|
+
activeToolCalls.set(block.id, { tool_name: block.name, tool_params: block.input });
|
|
135
|
+
results.push({ type: 'tool_call', tool_name: block.name, tool_params: block.input, tool_use_id: block.id });
|
|
136
|
+
// Capture file path from Write tool calls
|
|
137
|
+
if (block.name === 'Write' && block.input && block.input.file_path) {
|
|
138
|
+
lastWrittenFilePath = block.input.file_path;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
else if (block.type === 'text') {
|
|
142
|
+
results.push({ type: 'agent_response', text: block.text });
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
break;
|
|
147
|
+
case 'system':
|
|
148
|
+
if (message.subtype === 'init') {
|
|
149
|
+
results.push({ type: 'status', message: `Session started (model: ${message.model})` });
|
|
150
|
+
}
|
|
151
|
+
else if (message.subtype === 'status' && message.status) {
|
|
152
|
+
results.push({ type: 'status', message: `Status: ${message.status}...` });
|
|
153
|
+
}
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
156
|
+
return results;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Format internal message for display
|
|
160
|
+
*/
|
|
161
|
+
export function displayInternalMessage(msg) {
|
|
162
|
+
switch (msg.type) {
|
|
163
|
+
case 'tool_call':
|
|
164
|
+
const paramsStr = JSON.stringify(msg.tool_params).substring(0, 80);
|
|
165
|
+
console.error(`Tool call: ${msg.tool_name}(${paramsStr}${JSON.stringify(msg.tool_params).length > 80 ? '...' : ''})`);
|
|
166
|
+
break;
|
|
167
|
+
case 'tool_result':
|
|
168
|
+
const toolCall = activeToolCalls.get(msg.tool_use_id);
|
|
169
|
+
const toolName = toolCall ? toolCall.tool_name : 'unknown';
|
|
170
|
+
const size = msg.tool_response.length;
|
|
171
|
+
console.error(`Tool result: ${toolName} -> ${size} bytes`);
|
|
172
|
+
// Debug: Print full StructuredOutput content
|
|
173
|
+
if (toolName === 'StructuredOutput') {
|
|
174
|
+
console.error(`[DEBUG] StructuredOutput full response:\n'${msg.tool_response}'`);
|
|
175
|
+
}
|
|
176
|
+
activeToolCalls.delete(msg.tool_use_id);
|
|
177
|
+
break;
|
|
178
|
+
case 'agent_response':
|
|
179
|
+
console.error(`Agent message: ${msg.text}`);
|
|
180
|
+
break;
|
|
181
|
+
case 'status':
|
|
182
|
+
console.error(msg.message);
|
|
183
|
+
break;
|
|
184
|
+
case 'questions':
|
|
185
|
+
console.error(`\n[Received ${msg.questions.length} questions from agent]`);
|
|
186
|
+
break;
|
|
187
|
+
case 'plan':
|
|
188
|
+
console.error(`\n[Generated ${msg.plan.difficulty} plan: ${msg.plan.title}]`);
|
|
189
|
+
break;
|
|
190
|
+
case 'stage':
|
|
191
|
+
console.error(`\n[Stage: ${msg.stage}]`);
|
|
192
|
+
break;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Run a stage with structured output (for questions)
|
|
197
|
+
*/
|
|
198
|
+
export async function runStructuredStage(prompt, schema, cwd, outputMode, sessionId) {
|
|
199
|
+
const jsonSchema = zodToJsonSchema(schema, {
|
|
200
|
+
$refStrategy: 'none',
|
|
201
|
+
target: 'jsonSchema7'
|
|
202
|
+
});
|
|
203
|
+
const result = query({
|
|
204
|
+
prompt,
|
|
205
|
+
options: {
|
|
206
|
+
cwd,
|
|
207
|
+
model: 'haiku',
|
|
208
|
+
settingSources: [],
|
|
209
|
+
mcpServers: getMCPServersConfig(),
|
|
210
|
+
maxTurns: 30,
|
|
211
|
+
allowedTools: getAllowedTools(),
|
|
212
|
+
outputFormat: {
|
|
213
|
+
type: 'json_schema',
|
|
214
|
+
schema: jsonSchema
|
|
215
|
+
},
|
|
216
|
+
resume: sessionId
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
let capturedSessionId = sessionId || '';
|
|
220
|
+
let structuredOutput = null;
|
|
221
|
+
let sessionIdOutputted = false;
|
|
222
|
+
for await (const message of result) {
|
|
223
|
+
if ('session_id' in message && message.session_id) {
|
|
224
|
+
const newSessionId = message.session_id;
|
|
225
|
+
// Only output if session ID changed or first time
|
|
226
|
+
if (capturedSessionId !== newSessionId) {
|
|
227
|
+
capturedSessionId = newSessionId;
|
|
228
|
+
// Output SDK session ID as internal message (once per new session)
|
|
229
|
+
if (outputMode === 'json' && !sessionIdOutputted) {
|
|
230
|
+
console.log(JSON.stringify({ type: 'sdk_session', sessionId: capturedSessionId }));
|
|
231
|
+
sessionIdOutputted = true;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
if (message.type === 'result' && message.subtype === 'success') {
|
|
236
|
+
if (message.structured_output) {
|
|
237
|
+
structuredOutput = message.structured_output;
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
// Parse and display messages
|
|
241
|
+
const internalMsgs = parseSDKMessage(message);
|
|
242
|
+
if (outputMode === 'json') {
|
|
243
|
+
// In JSON mode, output internal messages as JSON to stdout
|
|
244
|
+
for (const internalMsg of internalMsgs) {
|
|
245
|
+
console.log(JSON.stringify(internalMsg));
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
else {
|
|
249
|
+
// In pretty mode, display to stderr
|
|
250
|
+
for (const internalMsg of internalMsgs) {
|
|
251
|
+
displayInternalMessage(internalMsg);
|
|
252
|
+
}
|
|
253
|
+
if (message.type === 'result') {
|
|
254
|
+
if (message.subtype === 'success') {
|
|
255
|
+
console.error(`\nStage complete (${message.num_turns} turns, $${message.total_cost_usd.toFixed(4)})`);
|
|
256
|
+
}
|
|
257
|
+
else {
|
|
258
|
+
console.error(`[ERROR] Agent returned error subtype: ${message.subtype}`);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
if (!structuredOutput) {
|
|
264
|
+
console.error('[WARNING] No structured output received from agent - returning empty object');
|
|
265
|
+
// Return empty object instead of throwing to allow fallback handling
|
|
266
|
+
return { output: {}, sessionId: capturedSessionId };
|
|
267
|
+
}
|
|
268
|
+
return { output: structuredOutput, sessionId: capturedSessionId };
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Run a stage and collect text response (for plan generation)
|
|
272
|
+
*/
|
|
273
|
+
export async function runTextStage(prompt, cwd, outputMode, sessionId) {
|
|
274
|
+
const result = query({
|
|
275
|
+
prompt,
|
|
276
|
+
options: {
|
|
277
|
+
cwd,
|
|
278
|
+
model: 'haiku',
|
|
279
|
+
mcpServers: getMCPServersConfig(),
|
|
280
|
+
settingSources: [],
|
|
281
|
+
maxTurns: 30,
|
|
282
|
+
allowedTools: getAllowedTools(),
|
|
283
|
+
resume: sessionId
|
|
284
|
+
}
|
|
285
|
+
});
|
|
286
|
+
let capturedSessionId = sessionId || '';
|
|
287
|
+
let responseText = '';
|
|
288
|
+
let sessionIdOutputted = false;
|
|
289
|
+
for await (const message of result) {
|
|
290
|
+
if ('session_id' in message && message.session_id) {
|
|
291
|
+
const newSessionId = message.session_id;
|
|
292
|
+
// Only output if session ID changed or first time
|
|
293
|
+
if (capturedSessionId !== newSessionId) {
|
|
294
|
+
capturedSessionId = newSessionId;
|
|
295
|
+
// Output SDK session ID as internal message (once per new session)
|
|
296
|
+
if (outputMode === 'json' && !sessionIdOutputted) {
|
|
297
|
+
console.log(JSON.stringify({ type: 'sdk_session', sessionId: capturedSessionId }));
|
|
298
|
+
sessionIdOutputted = true;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
// Collect text from assistant messages
|
|
303
|
+
if (message.type === 'assistant') {
|
|
304
|
+
for (const block of message.message.content) {
|
|
305
|
+
if (block.type === 'text') {
|
|
306
|
+
responseText += block.text;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
// Parse and display messages
|
|
311
|
+
const internalMsgs = parseSDKMessage(message);
|
|
312
|
+
if (outputMode === 'json') {
|
|
313
|
+
// In JSON mode, output internal messages as JSON to stdout
|
|
314
|
+
for (const internalMsg of internalMsgs) {
|
|
315
|
+
console.log(JSON.stringify(internalMsg));
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
else {
|
|
319
|
+
// In pretty mode, display to stderr
|
|
320
|
+
for (const internalMsg of internalMsgs) {
|
|
321
|
+
displayInternalMessage(internalMsg);
|
|
322
|
+
}
|
|
323
|
+
if (message.type === 'result') {
|
|
324
|
+
if (message.subtype === 'success') {
|
|
325
|
+
console.error(`\nStage complete (${message.num_turns} turns, $${message.total_cost_usd.toFixed(4)})`);
|
|
326
|
+
}
|
|
327
|
+
else {
|
|
328
|
+
console.error(`[ERROR] Agent returned error subtype: ${message.subtype}`);
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
return { response: responseText, sessionId: capturedSessionId };
|
|
334
|
+
}
|
|
68
335
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sw-plan",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.15",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "CLI tool for running integration planner in sandbox",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
".": "./dist/index.js"
|
|
16
16
|
},
|
|
17
17
|
"scripts": {
|
|
18
|
-
"build": "cd
|
|
18
|
+
"build": "cd ../sourcewizard/ && bun run build && cd ../sw-plan && tsc",
|
|
19
19
|
"dev": "bun run build && node ./dist/cli.js"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
package/README.md
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
# Planner CLI
|
|
2
|
-
|
|
3
|
-
A standalone CLI tool for generating integration plans for software projects using Claude Agent SDK.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
This CLI runs inside a git repository and uses Claude's Agent SDK to:
|
|
8
|
-
|
|
9
|
-
1. **Analyze the codebase** - Explores project structure, dependencies, and patterns
|
|
10
|
-
2. **Ask clarifying questions** - Gathers requirements about the integration
|
|
11
|
-
3. **Generate three integration plans** - Provides Easy, Medium, and Hard difficulty options
|
|
12
|
-
|
|
13
|
-
## Usage
|
|
14
|
-
|
|
15
|
-
The CLI is designed to run in sandboxed environments (like Vercel Sandbox) where it can safely analyze codebases.
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
planner-cli '{"integration": "Stripe", "apiKey": "sk-...", "jsonSchema": {...}, ...}'
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
### Parameters
|
|
22
|
-
|
|
23
|
-
The CLI expects a JSON string with the following parameters:
|
|
24
|
-
|
|
25
|
-
- `integration` (required): The name of the integration (e.g., "Stripe", "Supabase")
|
|
26
|
-
- `apiKey` (required): Anthropic API key for Claude
|
|
27
|
-
- `jsonSchema` (required): JSON Schema defining the expected output structure
|
|
28
|
-
- `projectContext` (optional): Pre-analyzed project context
|
|
29
|
-
- `clarifications` (optional): User answers to clarifying questions
|
|
30
|
-
- `conversationHistory` (optional): Previous conversation messages for continuation
|
|
31
|
-
- `cwd` (optional): Working directory (defaults to current directory)
|
|
32
|
-
|
|
33
|
-
### Output
|
|
34
|
-
|
|
35
|
-
The CLI outputs JSON lines to stdout:
|
|
36
|
-
|
|
37
|
-
```json
|
|
38
|
-
{"type":"assistant","message":{...}}
|
|
39
|
-
{"type":"tool_use","message":{...}}
|
|
40
|
-
{"type":"result","structured_output":{...}}
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Development
|
|
44
|
-
|
|
45
|
-
### Build
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
pnpm build
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### Type Check
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
pnpm run dev # Watch mode
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
## Architecture
|
|
58
|
-
|
|
59
|
-
- **src/index.ts** - Main CLI entry point
|
|
60
|
-
- Runs in sandbox environments with Claude Agent SDK
|
|
61
|
-
- Outputs structured JSON for easy parsing by parent processes
|
|
62
|
-
- Uses Claude's tool use capabilities (Read, Write, Glob, Grep) for codebase analysis
|
|
63
|
-
|
|
64
|
-
## Integration
|
|
65
|
-
|
|
66
|
-
This CLI is compiled and injected into sandbox environments by the parent planner application. The compilation is handled by `compile-sandbox-runner.ts` using esbuild.
|