sw-plan 0.1.14 → 0.1.16

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 CHANGED
@@ -18,14 +18,19 @@
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 { QuestionsOutputSchema, PlanMetadataOutputSchema } from './index.js';
27
- // Track active tool calls to match with results
28
- const activeToolCalls = new Map();
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
+ import { runCompile2 } from './compile2.js';
30
+ // Schema for document compilation output
31
+ const DocumentOutputSchema = z.object({
32
+ outputFilePath: z.string().describe('The relative path to the file where the document was written')
33
+ });
29
34
  /**
30
35
  * Output stage change message
31
36
  */
@@ -38,20 +43,6 @@ function outputStage(stage, outputMode) {
38
43
  console.error(`\n=== Stage: ${stage} ===\n`);
39
44
  }
40
45
  }
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
46
  /**
56
47
  * Build the prompt for stage 1: Questions
57
48
  */
@@ -301,237 +292,6 @@ async function selectOptions(questions) {
301
292
  }
302
293
  return answers.join('\n\n');
303
294
  }
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
295
  /**
536
296
  * Run the planner agent through all stages
537
297
  */
@@ -780,7 +540,11 @@ async function main() {
780
540
  program
781
541
  .name('planner-cli')
782
542
  .description('Integration planning tool using Claude Agent SDK')
783
- .version('0.1.0')
543
+ .version('0.1.0');
544
+ // Plan subcommand (default)
545
+ program
546
+ .command('plan', { isDefault: true })
547
+ .description('Generate integration plans for a project')
784
548
  .requiredOption('--prompt <text>', 'User prompt describing the task')
785
549
  .option('--project-context <json>', 'Project context as JSON string')
786
550
  .option('--cwd <path>', 'Working directory (defaults to current directory)')
@@ -833,6 +597,146 @@ async function main() {
833
597
  process.exit(1);
834
598
  }
835
599
  });
600
+ // Compile subcommand
601
+ program
602
+ .command('compile')
603
+ .description('Compile notes/transcripts into structured documents')
604
+ .requiredOption('--transcript-file <path>', 'Path to file containing transcript')
605
+ .requiredOption('--doc-type <type>', 'Document type: design-doc, prd, rfp, sow, technical-spec, user-story')
606
+ .option('--session-id <text>', 'ID of the previous session', 'session id')
607
+ .option('--output-mode <mode>', 'Output mode: json or pretty', 'json')
608
+ .option('--clarifications <text>', 'Answers to clarification questions (formatted as: 1. Question\\nAnswer: answer\\n\\n2. ...)')
609
+ .option('--cwd <path>', 'Working directory', process.cwd())
610
+ .action(async (options) => {
611
+ try {
612
+ if (options.outputMode !== 'json' && options.outputMode !== 'pretty') {
613
+ throw new Error('Invalid output mode. Must be "json" or "pretty"');
614
+ }
615
+ const compiler = new DocumentCompiler(options.cwd, options.outputMode);
616
+ if (!options.clarifications) {
617
+ const result = await compiler.clarify(options.transcriptFile, options.docType);
618
+ // Output questions using InternalMessage type
619
+ const questionsMessage = {
620
+ type: 'questions',
621
+ questions: result.questions.questions || []
622
+ };
623
+ if (options.outputMode === 'json') {
624
+ console.log(JSON.stringify(questionsMessage));
625
+ }
626
+ else {
627
+ console.log('\n=== Questions produced ===\n');
628
+ console.log(`Questions ${JSON.stringify(result.questions, null, 2)}`);
629
+ }
630
+ return;
631
+ }
632
+ if (!options.sessionId) {
633
+ throw new Error('Session ID is required to continue the document generation.');
634
+ }
635
+ const outputFilePath = await compiler.compile(options.sessionId, options.clarifications, options.transcriptFile, options.docType);
636
+ // Read the generated document
637
+ // Check if the path is already absolute or starts from repo root
638
+ let absolutePath;
639
+ if (isAbsolute(outputFilePath)) {
640
+ absolutePath = outputFilePath;
641
+ }
642
+ else if (existsSync(outputFilePath)) {
643
+ // Path is relative to CWD where CLI is run from
644
+ absolutePath = resolve(outputFilePath);
645
+ }
646
+ else {
647
+ // Try resolving relative to options.cwd
648
+ absolutePath = resolve(options.cwd, outputFilePath);
649
+ }
650
+ if (!existsSync(absolutePath)) {
651
+ throw new Error(`Document file was not generated at expected path: ${absolutePath}\nOriginal path from compiler: ${outputFilePath}`);
652
+ }
653
+ const documentContent = readFileSync(absolutePath, 'utf-8');
654
+ if (options.outputMode === 'json') {
655
+ // Create a plan message with the document content
656
+ const documentPlan = {
657
+ id: 1,
658
+ title: `${options.docType.split('-').map((w) => w.charAt(0).toUpperCase() + w.slice(1)).join(' ')}`,
659
+ description: `Generated ${options.docType} document`,
660
+ estimatedTime: '',
661
+ difficulty: 'Medium',
662
+ sections: {
663
+ setup: [],
664
+ integration: [],
665
+ verification: [],
666
+ nextSteps: [documentContent]
667
+ },
668
+ summaries: {
669
+ setup: '',
670
+ integration: `Full ${options.docType} document`,
671
+ verification: '',
672
+ nextSteps: ''
673
+ }
674
+ };
675
+ const planMessage = {
676
+ type: 'plan',
677
+ plan: documentPlan
678
+ };
679
+ console.log(JSON.stringify(planMessage));
680
+ // Also output complete message
681
+ const completeMessage = {
682
+ type: 'complete',
683
+ document: outputFilePath
684
+ };
685
+ console.log(JSON.stringify(completeMessage));
686
+ }
687
+ else {
688
+ console.error('\n=== Document Generated ===\n');
689
+ console.error(`File: ${outputFilePath}\n`);
690
+ console.error('---\n');
691
+ console.error(documentContent);
692
+ console.error('\n---\n');
693
+ }
694
+ }
695
+ catch (error) {
696
+ console.error(JSON.stringify({
697
+ type: 'error',
698
+ error: error instanceof Error ? error.message : 'Unknown error',
699
+ stack: error instanceof Error ? error.stack : ''
700
+ }));
701
+ process.exit(1);
702
+ }
703
+ });
704
+ // Compile2 subcommand - multi-stage document generation with sections, questions, and variants
705
+ program
706
+ .command('compile2')
707
+ .description('Compile notes/transcripts into structured documents (multi-stage: sections → questions → variants)')
708
+ .requiredOption('--transcript-file <path>', 'Path to file containing transcript')
709
+ .requiredOption('--doc-type <type>', 'Document type: design-doc, prd, rfp, sow, technical-spec, user-story')
710
+ .option('--session-id <text>', 'ID of the previous session')
711
+ .option('--sections-file <path>', 'Path to save sections to (default: sections.json)')
712
+ .option('--questions-file <path>', 'Path to save questions to (default: questions.json)')
713
+ .option('--log-file <path>', 'Path to save log output to (default: compile.log)')
714
+ .option('--cwd <path>', 'Working directory (session directory)', process.cwd())
715
+ .action(async (options) => {
716
+ try {
717
+ const result = await runCompile2({
718
+ transcriptFile: options.transcriptFile,
719
+ docType: options.docType,
720
+ sessionId: options.sessionId,
721
+ sectionsFile: options.sectionsFile,
722
+ questionsFile: options.questionsFile,
723
+ logFile: options.logFile,
724
+ cwd: options.cwd
725
+ });
726
+ // Output result to stdout for API consumption
727
+ console.log(JSON.stringify(result));
728
+ }
729
+ catch (error) {
730
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
731
+ const errorStack = error instanceof Error ? error.stack : '';
732
+ console.error(JSON.stringify({
733
+ type: 'error',
734
+ error: errorMessage,
735
+ stack: errorStack
736
+ }));
737
+ process.exit(1);
738
+ }
739
+ });
836
740
  await program.parseAsync(process.argv);
837
741
  }
838
742
  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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"}
@@ -0,0 +1,70 @@
1
+ export interface Compile2Options {
2
+ transcriptFile: string;
3
+ docType: string;
4
+ sessionId?: string;
5
+ sectionsFile?: string;
6
+ questionsFile?: string;
7
+ logFile?: string;
8
+ cwd: string;
9
+ }
10
+ export interface Compile2Result {
11
+ type: 'sections_saved' | 'questions_saved' | 'variants_generated';
12
+ sectionsFile?: string;
13
+ questionsFile?: string;
14
+ variantsDir?: string;
15
+ sessionId?: string;
16
+ sectionCount?: number;
17
+ questionCount?: number;
18
+ variantCount?: number;
19
+ }
20
+ /**
21
+ * Compile2 - Multi-stage document compilation
22
+ * Stage 1: Generate sections list
23
+ * Stage 2: Ask clarifying questions
24
+ * Stage 3: Generate 3 variants per section (with refinement pass)
25
+ */
26
+ export declare class Compile2Runner {
27
+ private logStream;
28
+ private options;
29
+ private docTypeLabels;
30
+ private docQuestions;
31
+ constructor(options: Compile2Options);
32
+ private log;
33
+ /**
34
+ * Build the prompt for generating document sections
35
+ */
36
+ private generateSectionsPrompt;
37
+ /**
38
+ * Build the prompt for asking clarifying questions based on approved sections
39
+ */
40
+ private askQuestionsPrompt;
41
+ /**
42
+ * Build the prompt for generating a section variant
43
+ */
44
+ private buildSectionVariantPrompt;
45
+ /**
46
+ * Build the prompt for refining a section variant
47
+ */
48
+ private refineSectionVariantPrompt;
49
+ /**
50
+ * Run the compile2 process
51
+ */
52
+ run(): Promise<Compile2Result>;
53
+ /**
54
+ * Stage 1: Generate document sections
55
+ */
56
+ private handleSectionsGeneration;
57
+ /**
58
+ * Stage 2: Ask clarifying questions based on approved sections
59
+ */
60
+ private handleQuestions;
61
+ /**
62
+ * Stage 3: Generate 3 variants per section with refinement pass
63
+ */
64
+ private handleVariantGeneration;
65
+ }
66
+ /**
67
+ * Factory function to create and run a Compile2Runner
68
+ */
69
+ export declare function runCompile2(options: Compile2Options): Promise<Compile2Result>;
70
+ //# sourceMappingURL=compile2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile2.d.ts","sourceRoot":"","sources":["../compile2.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,gBAAgB,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IAClE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAoBD;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,aAAa,CAQnB;IAEF,OAAO,CAAC,YAAY,CAWlB;gBAEU,OAAO,EAAE,eAAe;IAQpC,OAAO,CAAC,GAAG;IAKX;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA6B9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqD1B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAkDjC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA4ClC;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC;IA4CpC;;OAEG;YACW,wBAAwB;IAuCtC;;OAEG;YACW,eAAe;IAgD7B;;OAEG;YACW,uBAAuB;CA+HtC;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAGnF"}