galaxy-code 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/dist/app.js +4 -3
  2. package/dist/node_modules/@workspace/agent-core/connections/claude.d.ts +72 -0
  3. package/dist/node_modules/@workspace/agent-core/connections/claude.d.ts.map +1 -0
  4. package/dist/node_modules/@workspace/agent-core/connections/claude.js +270 -0
  5. package/dist/node_modules/@workspace/agent-core/connections/claude.js.map +1 -0
  6. package/dist/node_modules/@workspace/agent-core/connections/gemini.d.ts +41 -0
  7. package/dist/node_modules/@workspace/agent-core/connections/gemini.d.ts.map +1 -0
  8. package/dist/node_modules/@workspace/agent-core/connections/gemini.js +203 -0
  9. package/dist/node_modules/@workspace/agent-core/connections/gemini.js.map +1 -0
  10. package/dist/node_modules/@workspace/agent-core/connections/index.d.ts +12 -0
  11. package/dist/node_modules/@workspace/agent-core/connections/index.d.ts.map +1 -0
  12. package/dist/node_modules/@workspace/agent-core/connections/index.js +12 -0
  13. package/dist/node_modules/@workspace/agent-core/connections/index.js.map +1 -0
  14. package/dist/node_modules/@workspace/agent-core/connections/ollama.d.ts +38 -0
  15. package/dist/node_modules/@workspace/agent-core/connections/ollama.d.ts.map +1 -0
  16. package/dist/node_modules/@workspace/agent-core/connections/ollama.js +64 -0
  17. package/dist/node_modules/@workspace/agent-core/connections/ollama.js.map +1 -0
  18. package/dist/node_modules/@workspace/agent-core/connections/types.d.ts +23 -0
  19. package/dist/node_modules/@workspace/agent-core/connections/types.d.ts.map +1 -0
  20. package/dist/node_modules/@workspace/agent-core/connections/types.js +8 -0
  21. package/dist/node_modules/@workspace/agent-core/connections/types.js.map +1 -0
  22. package/dist/node_modules/@workspace/agent-core/index.d.ts +13 -0
  23. package/dist/node_modules/@workspace/agent-core/index.d.ts.map +1 -0
  24. package/dist/node_modules/@workspace/agent-core/index.js +22 -0
  25. package/dist/node_modules/@workspace/agent-core/index.js.map +1 -0
  26. package/dist/node_modules/@workspace/agent-core/package.json +53 -0
  27. package/dist/node_modules/@workspace/agent-core/prompts/ba-it-analyzer.d.ts +2 -0
  28. package/dist/node_modules/@workspace/agent-core/prompts/ba-it-analyzer.d.ts.map +1 -0
  29. package/dist/node_modules/@workspace/agent-core/prompts/ba-it-analyzer.js +144 -0
  30. package/dist/node_modules/@workspace/agent-core/prompts/ba-it-analyzer.js.map +1 -0
  31. package/dist/node_modules/@workspace/agent-core/prompts/index.d.ts +12 -0
  32. package/dist/node_modules/@workspace/agent-core/prompts/index.d.ts.map +1 -0
  33. package/dist/node_modules/@workspace/agent-core/prompts/index.js +12 -0
  34. package/dist/node_modules/@workspace/agent-core/prompts/index.js.map +1 -0
  35. package/dist/node_modules/@workspace/agent-core/prompts/orchestrator.d.ts +9 -0
  36. package/dist/node_modules/@workspace/agent-core/prompts/orchestrator.d.ts.map +1 -0
  37. package/dist/node_modules/@workspace/agent-core/prompts/orchestrator.js +89 -0
  38. package/dist/node_modules/@workspace/agent-core/prompts/orchestrator.js.map +1 -0
  39. package/dist/node_modules/@workspace/agent-core/prompts/planning-agent.d.ts +9 -0
  40. package/dist/node_modules/@workspace/agent-core/prompts/planning-agent.d.ts.map +1 -0
  41. package/dist/node_modules/@workspace/agent-core/prompts/planning-agent.js +196 -0
  42. package/dist/node_modules/@workspace/agent-core/prompts/planning-agent.js.map +1 -0
  43. package/dist/node_modules/@workspace/agent-core/prompts/universal-agent.d.ts +8 -0
  44. package/dist/node_modules/@workspace/agent-core/prompts/universal-agent.d.ts.map +1 -0
  45. package/dist/node_modules/@workspace/agent-core/prompts/universal-agent.js +112 -0
  46. package/dist/node_modules/@workspace/agent-core/prompts/universal-agent.js.map +1 -0
  47. package/dist/node_modules/@workspace/agent-core/providers/agent-selector.d.ts +30 -0
  48. package/dist/node_modules/@workspace/agent-core/providers/agent-selector.d.ts.map +1 -0
  49. package/dist/node_modules/@workspace/agent-core/providers/agent-selector.js +76 -0
  50. package/dist/node_modules/@workspace/agent-core/providers/agent-selector.js.map +1 -0
  51. package/dist/node_modules/@workspace/agent-core/providers/claude-agent.d.ts +30 -0
  52. package/dist/node_modules/@workspace/agent-core/providers/claude-agent.d.ts.map +1 -0
  53. package/dist/node_modules/@workspace/agent-core/providers/claude-agent.js +107 -0
  54. package/dist/node_modules/@workspace/agent-core/providers/claude-agent.js.map +1 -0
  55. package/dist/node_modules/@workspace/agent-core/providers/gemini-agent.d.ts +37 -0
  56. package/dist/node_modules/@workspace/agent-core/providers/gemini-agent.d.ts.map +1 -0
  57. package/dist/node_modules/@workspace/agent-core/providers/gemini-agent.js +144 -0
  58. package/dist/node_modules/@workspace/agent-core/providers/gemini-agent.js.map +1 -0
  59. package/dist/node_modules/@workspace/agent-core/providers/index.d.ts +13 -0
  60. package/dist/node_modules/@workspace/agent-core/providers/index.d.ts.map +1 -0
  61. package/dist/node_modules/@workspace/agent-core/providers/index.js +13 -0
  62. package/dist/node_modules/@workspace/agent-core/providers/index.js.map +1 -0
  63. package/dist/node_modules/@workspace/agent-core/providers/ollama-agent.d.ts +54 -0
  64. package/dist/node_modules/@workspace/agent-core/providers/ollama-agent.d.ts.map +1 -0
  65. package/dist/node_modules/@workspace/agent-core/providers/ollama-agent.js +247 -0
  66. package/dist/node_modules/@workspace/agent-core/providers/ollama-agent.js.map +1 -0
  67. package/dist/node_modules/@workspace/agent-core/providers/orchestrator.d.ts +17 -0
  68. package/dist/node_modules/@workspace/agent-core/providers/orchestrator.d.ts.map +1 -0
  69. package/dist/node_modules/@workspace/agent-core/providers/orchestrator.js +62 -0
  70. package/dist/node_modules/@workspace/agent-core/providers/orchestrator.js.map +1 -0
  71. package/dist/node_modules/@workspace/agent-core/tools/ba-it-analyzer.d.ts +67 -0
  72. package/dist/node_modules/@workspace/agent-core/tools/ba-it-analyzer.d.ts.map +1 -0
  73. package/dist/node_modules/@workspace/agent-core/tools/ba-it-analyzer.js +81 -0
  74. package/dist/node_modules/@workspace/agent-core/tools/ba-it-analyzer.js.map +1 -0
  75. package/dist/node_modules/@workspace/agent-core/tools/code-generate-agent.d.ts +52 -0
  76. package/dist/node_modules/@workspace/agent-core/tools/code-generate-agent.d.ts.map +1 -0
  77. package/dist/node_modules/@workspace/agent-core/tools/code-generate-agent.js +150 -0
  78. package/dist/node_modules/@workspace/agent-core/tools/code-generate-agent.js.map +1 -0
  79. package/dist/node_modules/@workspace/agent-core/tools/command-runner.d.ts +15 -0
  80. package/dist/node_modules/@workspace/agent-core/tools/command-runner.d.ts.map +1 -0
  81. package/dist/node_modules/@workspace/agent-core/tools/command-runner.js +121 -0
  82. package/dist/node_modules/@workspace/agent-core/tools/command-runner.js.map +1 -0
  83. package/dist/node_modules/@workspace/agent-core/tools/document-parser.d.ts +12 -0
  84. package/dist/node_modules/@workspace/agent-core/tools/document-parser.d.ts.map +1 -0
  85. package/dist/node_modules/@workspace/agent-core/tools/document-parser.js +84 -0
  86. package/dist/node_modules/@workspace/agent-core/tools/document-parser.js.map +1 -0
  87. package/dist/node_modules/@workspace/agent-core/tools/file-operations.d.ts +18 -0
  88. package/dist/node_modules/@workspace/agent-core/tools/file-operations.d.ts.map +1 -0
  89. package/dist/node_modules/@workspace/agent-core/tools/file-operations.js +126 -0
  90. package/dist/node_modules/@workspace/agent-core/tools/file-operations.js.map +1 -0
  91. package/dist/node_modules/@workspace/agent-core/tools/galaxy-ui-integration.d.ts +95 -0
  92. package/dist/node_modules/@workspace/agent-core/tools/galaxy-ui-integration.d.ts.map +1 -0
  93. package/dist/node_modules/@workspace/agent-core/tools/galaxy-ui-integration.js +245 -0
  94. package/dist/node_modules/@workspace/agent-core/tools/galaxy-ui-integration.js.map +1 -0
  95. package/dist/node_modules/@workspace/agent-core/tools/git-operations.d.ts +12 -0
  96. package/dist/node_modules/@workspace/agent-core/tools/git-operations.d.ts.map +1 -0
  97. package/dist/node_modules/@workspace/agent-core/tools/git-operations.js +115 -0
  98. package/dist/node_modules/@workspace/agent-core/tools/git-operations.js.map +1 -0
  99. package/dist/node_modules/@workspace/agent-core/tools/index.d.ts +11 -0
  100. package/dist/node_modules/@workspace/agent-core/tools/index.d.ts.map +1 -0
  101. package/dist/node_modules/@workspace/agent-core/tools/index.js +11 -0
  102. package/dist/node_modules/@workspace/agent-core/tools/index.js.map +1 -0
  103. package/dist/node_modules/@workspace/agent-core/tools/planning-agent.d.ts +30 -0
  104. package/dist/node_modules/@workspace/agent-core/tools/planning-agent.d.ts.map +1 -0
  105. package/dist/node_modules/@workspace/agent-core/tools/planning-agent.js +125 -0
  106. package/dist/node_modules/@workspace/agent-core/tools/planning-agent.js.map +1 -0
  107. package/dist/node_modules/@workspace/agent-core/tools/progress-reporter.d.ts +20 -0
  108. package/dist/node_modules/@workspace/agent-core/tools/progress-reporter.d.ts.map +1 -0
  109. package/dist/node_modules/@workspace/agent-core/tools/progress-reporter.js +46 -0
  110. package/dist/node_modules/@workspace/agent-core/tools/progress-reporter.js.map +1 -0
  111. package/dist/node_modules/@workspace/agent-core/tools/registry.d.ts +22 -0
  112. package/dist/node_modules/@workspace/agent-core/tools/registry.d.ts.map +1 -0
  113. package/dist/node_modules/@workspace/agent-core/tools/registry.js +651 -0
  114. package/dist/node_modules/@workspace/agent-core/tools/registry.js.map +1 -0
  115. package/dist/node_modules/@workspace/agent-core/tools/tool-event-emitter.d.ts +25 -0
  116. package/dist/node_modules/@workspace/agent-core/tools/tool-event-emitter.d.ts.map +1 -0
  117. package/dist/node_modules/@workspace/agent-core/tools/tool-event-emitter.js +26 -0
  118. package/dist/node_modules/@workspace/agent-core/tools/tool-event-emitter.js.map +1 -0
  119. package/dist/node_modules/@workspace/agent-core/tools/types.d.ts +32 -0
  120. package/dist/node_modules/@workspace/agent-core/tools/types.d.ts.map +1 -0
  121. package/dist/node_modules/@workspace/agent-core/tools/types.js +2 -0
  122. package/dist/node_modules/@workspace/agent-core/tools/types.js.map +1 -0
  123. package/dist/node_modules/@workspace/agent-core/types.d.ts +40 -0
  124. package/dist/node_modules/@workspace/agent-core/types.d.ts.map +1 -0
  125. package/dist/node_modules/@workspace/agent-core/types.js +9 -0
  126. package/dist/node_modules/@workspace/agent-core/types.js.map +1 -0
  127. package/dist/node_modules/@workspace/agent-core/utils/config-manager.d.ts +103 -0
  128. package/dist/node_modules/@workspace/agent-core/utils/config-manager.d.ts.map +1 -0
  129. package/dist/node_modules/@workspace/agent-core/utils/config-manager.js +307 -0
  130. package/dist/node_modules/@workspace/agent-core/utils/config-manager.js.map +1 -0
  131. package/dist/node_modules/@workspace/agent-core/utils/devtools.d.ts +22 -0
  132. package/dist/node_modules/@workspace/agent-core/utils/devtools.d.ts.map +1 -0
  133. package/dist/node_modules/@workspace/agent-core/utils/devtools.js +62 -0
  134. package/dist/node_modules/@workspace/agent-core/utils/devtools.js.map +1 -0
  135. package/dist/node_modules/@workspace/agent-core/utils/message-formatters.d.ts +33 -0
  136. package/dist/node_modules/@workspace/agent-core/utils/message-formatters.d.ts.map +1 -0
  137. package/dist/node_modules/@workspace/agent-core/utils/message-formatters.js +591 -0
  138. package/dist/node_modules/@workspace/agent-core/utils/message-formatters.js.map +1 -0
  139. package/dist/node_modules/@workspace/agent-core/utils/progress-tracker.d.ts +60 -0
  140. package/dist/node_modules/@workspace/agent-core/utils/progress-tracker.d.ts.map +1 -0
  141. package/dist/node_modules/@workspace/agent-core/utils/progress-tracker.js +204 -0
  142. package/dist/node_modules/@workspace/agent-core/utils/progress-tracker.js.map +1 -0
  143. package/package.json +4 -2
@@ -0,0 +1,60 @@
1
+ export interface ProgressStep {
2
+ step: number;
3
+ action: string;
4
+ status: 'pending' | 'in-progress' | 'completed' | 'failed';
5
+ startTime?: Date;
6
+ endTime?: Date;
7
+ error?: string;
8
+ filesCreated?: string[];
9
+ }
10
+ export interface ProjectProgress {
11
+ projectName: string;
12
+ startTime: Date;
13
+ lastUpdated: Date;
14
+ currentStep: number;
15
+ totalSteps: number;
16
+ steps: ProgressStep[];
17
+ }
18
+ export declare class ProgressTracker {
19
+ private progressFilePath;
20
+ private progress;
21
+ constructor(workingDir?: string);
22
+ /**
23
+ * Initialize new progress tracking
24
+ */
25
+ initializeProgress(projectName: string, steps: ProgressStep[]): void;
26
+ /**
27
+ * Load existing progress
28
+ */
29
+ loadProgress(): ProjectProgress | null;
30
+ /**
31
+ * Update step status
32
+ */
33
+ updateStepStatus(stepNum: number, status: ProgressStep['status'], error?: string, filesCreated?: string[]): void;
34
+ /**
35
+ * Generate markdown content
36
+ */
37
+ private generateMarkdown;
38
+ /**
39
+ * Save progress to markdown file
40
+ */
41
+ saveProgress(): void;
42
+ /**
43
+ * Get current progress
44
+ */
45
+ getProgress(): ProjectProgress | null;
46
+ /**
47
+ * Check if progress file exists
48
+ */
49
+ hasProgress(): boolean;
50
+ /**
51
+ * Clear progress (delete file)
52
+ */
53
+ clearProgress(): void;
54
+ /**
55
+ * Get progress file path
56
+ */
57
+ getProgressFilePath(): string;
58
+ }
59
+ export declare const progressTracker: ProgressTracker;
60
+ //# sourceMappingURL=progress-tracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress-tracker.d.ts","sourceRoot":"","sources":["../../src/utils/progress-tracker.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3D,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,EAAE,IAAI,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,YAAY,EAAE,CAAC;CACtB;AAED,qBAAa,eAAe;IAC3B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAgC;gBAEpC,UAAU,GAAE,MAAsB;IAI9C;;OAEG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI;IAgBpE;;OAEG;IACH,YAAY,IAAI,eAAe,GAAG,IAAI;IA2BtC;;OAEG;IACH,gBAAgB,CACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,EAC9B,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,EAAE,GACrB,IAAI;IAsCP;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA6ExB;;OAEG;IACH,YAAY,IAAI,IAAI;IAcpB;;OAEG;IACH,WAAW,IAAI,eAAe,GAAG,IAAI;IAIrC;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,aAAa,IAAI,IAAI;IAcrB;;OAEG;IACH,mBAAmB,IAAI,MAAM;CAG7B;AAGD,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
@@ -0,0 +1,204 @@
1
+ /**
2
+ * @author Bùi Trọng Hiếu
3
+ * @email kevinbui210191@gmail.com
4
+ * @create 2024-10-13
5
+ * @modify 2024-10-13
6
+ * @desc Progress tracker for Galaxy CLI
7
+ */
8
+ import fs from 'node:fs';
9
+ import path from 'node:path';
10
+ export class ProgressTracker {
11
+ progressFilePath;
12
+ progress = null;
13
+ constructor(workingDir = process.cwd()) {
14
+ this.progressFilePath = path.join(workingDir, 'Improgress.md');
15
+ }
16
+ /**
17
+ * Initialize new progress tracking
18
+ */
19
+ initializeProgress(projectName, steps) {
20
+ this.progress = {
21
+ projectName,
22
+ startTime: new Date(),
23
+ lastUpdated: new Date(),
24
+ currentStep: 1,
25
+ totalSteps: steps.length,
26
+ steps: steps.map((step, index) => ({
27
+ ...step,
28
+ status: index === 0 ? 'in-progress' : 'pending',
29
+ })),
30
+ };
31
+ this.saveProgress();
32
+ }
33
+ /**
34
+ * Load existing progress
35
+ */
36
+ loadProgress() {
37
+ try {
38
+ if (!fs.existsSync(this.progressFilePath)) {
39
+ return null;
40
+ }
41
+ const content = fs.readFileSync(this.progressFilePath, 'utf-8');
42
+ // Parse markdown to extract progress data
43
+ // For simplicity, we'll store JSON in a comment at the end
44
+ const jsonMatch = content.match(/<!-- PROGRESS_DATA\n([\s\S]*?)\n-->/);
45
+ if (jsonMatch && jsonMatch[1]) {
46
+ this.progress = JSON.parse(jsonMatch[1]);
47
+ return this.progress;
48
+ }
49
+ return null;
50
+ }
51
+ catch (error) {
52
+ console.warn('⚠️ Failed to load progress:', error instanceof Error ? error.message : String(error));
53
+ return null;
54
+ }
55
+ }
56
+ /**
57
+ * Update step status
58
+ */
59
+ updateStepStatus(stepNum, status, error, filesCreated) {
60
+ if (!this.progress)
61
+ return;
62
+ const stepIndex = this.progress.steps.findIndex(s => s.step === stepNum);
63
+ if (stepIndex === -1)
64
+ return;
65
+ const now = new Date();
66
+ const currentStep = this.progress.steps[stepIndex];
67
+ if (!currentStep)
68
+ return;
69
+ // Update current step
70
+ this.progress.steps[stepIndex] = {
71
+ step: currentStep.step,
72
+ action: currentStep.action,
73
+ status,
74
+ startTime: currentStep.startTime,
75
+ endTime: status === 'completed' || status === 'failed' ? now : undefined,
76
+ error,
77
+ filesCreated,
78
+ };
79
+ // Update progress metadata
80
+ this.progress.lastUpdated = now;
81
+ if (status === 'completed' && stepNum < this.progress.totalSteps) {
82
+ this.progress.currentStep = stepNum + 1;
83
+ // Mark next step as in-progress
84
+ const nextStep = this.progress.steps[stepIndex + 1];
85
+ if (nextStep) {
86
+ nextStep.status = 'in-progress';
87
+ nextStep.startTime = now;
88
+ }
89
+ }
90
+ this.saveProgress();
91
+ }
92
+ /**
93
+ * Generate markdown content
94
+ */
95
+ generateMarkdown() {
96
+ if (!this.progress)
97
+ return '';
98
+ const { projectName, startTime, lastUpdated, currentStep, totalSteps, steps } = this.progress;
99
+ let md = `# 🚀 ${projectName} - Implementation Progress\n\n`;
100
+ // Metadata
101
+ md += `**Started**: ${startTime.toLocaleString()}\n`;
102
+ md += `**Last Updated**: ${lastUpdated.toLocaleString()}\n`;
103
+ md += `**Progress**: ${currentStep - 1}/${totalSteps} steps completed\n\n`;
104
+ // Progress bar
105
+ const completed = steps.filter(s => s.status === 'completed').length;
106
+ const percentage = Math.round((completed / totalSteps) * 100);
107
+ const barLength = 30;
108
+ const filled = Math.round((completed / totalSteps) * barLength);
109
+ const bar = '█'.repeat(filled) + '░'.repeat(barLength - filled);
110
+ md += `\`\`\`\n[${bar}] ${percentage}%\n\`\`\`\n\n`;
111
+ // Steps
112
+ md += `## 📋 Implementation Steps\n\n`;
113
+ for (const step of steps) {
114
+ const icon = step.status === 'completed'
115
+ ? '✅'
116
+ : step.status === 'in-progress'
117
+ ? '🔄'
118
+ : step.status === 'failed'
119
+ ? '❌'
120
+ : '⏳';
121
+ md += `### ${icon} Step ${step.step}: ${step.action}\n\n`;
122
+ md += `**Status**: ${step.status.toUpperCase()}\n`;
123
+ if (step.startTime) {
124
+ md += `**Started**: ${step.startTime.toLocaleString()}\n`;
125
+ }
126
+ if (step.endTime) {
127
+ md += `**Completed**: ${step.endTime.toLocaleString()}\n`;
128
+ if (step.startTime) {
129
+ const duration = step.endTime.getTime() - step.startTime.getTime();
130
+ md += `**Duration**: ${Math.round(duration / 1000)}s\n`;
131
+ }
132
+ }
133
+ if (step.filesCreated && step.filesCreated.length > 0) {
134
+ md += `\n**Files Created**:\n`;
135
+ for (const file of step.filesCreated) {
136
+ md += `- \`${file}\`\n`;
137
+ }
138
+ }
139
+ if (step.error) {
140
+ md += `\n**Error**: \`\`\`\n${step.error}\n\`\`\`\n`;
141
+ }
142
+ md += '\n';
143
+ }
144
+ // Summary
145
+ md += `## 📊 Summary\n\n`;
146
+ md += `- Total Steps: ${totalSteps}\n`;
147
+ md += `- Completed: ${steps.filter(s => s.status === 'completed').length}\n`;
148
+ md += `- In Progress: ${steps.filter(s => s.status === 'in-progress').length}\n`;
149
+ md += `- Pending: ${steps.filter(s => s.status === 'pending').length}\n`;
150
+ md += `- Failed: ${steps.filter(s => s.status === 'failed').length}\n\n`;
151
+ // Add JSON data as HTML comment for parsing
152
+ md += `<!-- PROGRESS_DATA\n${JSON.stringify(this.progress, null, 2)}\n-->\n`;
153
+ return md;
154
+ }
155
+ /**
156
+ * Save progress to markdown file
157
+ */
158
+ saveProgress() {
159
+ if (!this.progress)
160
+ return;
161
+ try {
162
+ const markdown = this.generateMarkdown();
163
+ fs.writeFileSync(this.progressFilePath, markdown, 'utf-8');
164
+ }
165
+ catch (error) {
166
+ console.error('❌ Failed to save progress:', error instanceof Error ? error.message : String(error));
167
+ }
168
+ }
169
+ /**
170
+ * Get current progress
171
+ */
172
+ getProgress() {
173
+ return this.progress;
174
+ }
175
+ /**
176
+ * Check if progress file exists
177
+ */
178
+ hasProgress() {
179
+ return fs.existsSync(this.progressFilePath);
180
+ }
181
+ /**
182
+ * Clear progress (delete file)
183
+ */
184
+ clearProgress() {
185
+ try {
186
+ if (fs.existsSync(this.progressFilePath)) {
187
+ fs.unlinkSync(this.progressFilePath);
188
+ }
189
+ this.progress = null;
190
+ }
191
+ catch (error) {
192
+ console.error('❌ Failed to clear progress:', error instanceof Error ? error.message : String(error));
193
+ }
194
+ }
195
+ /**
196
+ * Get progress file path
197
+ */
198
+ getProgressFilePath() {
199
+ return this.progressFilePath;
200
+ }
201
+ }
202
+ // Create instance
203
+ export const progressTracker = new ProgressTracker();
204
+ //# sourceMappingURL=progress-tracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress-tracker.js","sourceRoot":"","sources":["../../src/utils/progress-tracker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "galaxy-code",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "license": "MIT",
5
5
  "description": "Galaxy Code - AI-powered coding assistant with MCP integration",
6
6
  "author": "Galaxy Agent <galaxy.ai.dev@gmail.com> (https://github.com/galaxy-agent)",
@@ -30,17 +30,19 @@
30
30
  },
31
31
  "scripts": {
32
32
  "build": "tsc",
33
+ "build:bundle": "node scripts/build-bundle.js",
33
34
  "dev": "tsc --watch",
34
35
  "test": "prettier --check . && xo && ava",
35
36
  "docs:dev": "cd docs && astro dev",
36
37
  "docs:build": "cd docs && astro build",
37
38
  "devtools": "react-devtools",
38
39
  "debug": "npm run build && NODE_ENV=development node dist/cli.js --dev",
39
- "prepublish": "npm run build",
40
+ "prepublish": "npm run build:bundle",
40
41
  "publish:npm": "node scripts/publish-npm.js"
41
42
  },
42
43
  "files": [
43
44
  "dist",
45
+ "dist/node_modules",
44
46
  "README.md",
45
47
  "LICENSE"
46
48
  ],