maistro 1.0.390

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 (111) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +107 -0
  3. package/dist/app.d.ts +247 -0
  4. package/dist/app.d.ts.map +1 -0
  5. package/dist/app.js +4971 -0
  6. package/dist/app.js.map +1 -0
  7. package/dist/buildInfo.d.ts +5 -0
  8. package/dist/buildInfo.d.ts.map +1 -0
  9. package/dist/buildInfo.js +2 -0
  10. package/dist/buildInfo.js.map +1 -0
  11. package/dist/caffeinate.d.ts +72 -0
  12. package/dist/caffeinate.d.ts.map +1 -0
  13. package/dist/caffeinate.js +258 -0
  14. package/dist/caffeinate.js.map +1 -0
  15. package/dist/claudePath.d.ts +10 -0
  16. package/dist/claudePath.d.ts.map +1 -0
  17. package/dist/claudePath.js +34 -0
  18. package/dist/claudePath.js.map +1 -0
  19. package/dist/clipboard.d.ts +44 -0
  20. package/dist/clipboard.d.ts.map +1 -0
  21. package/dist/clipboard.js +442 -0
  22. package/dist/clipboard.js.map +1 -0
  23. package/dist/config.d.ts +211 -0
  24. package/dist/config.d.ts.map +1 -0
  25. package/dist/config.js +933 -0
  26. package/dist/config.js.map +1 -0
  27. package/dist/constants.d.ts +50 -0
  28. package/dist/constants.d.ts.map +1 -0
  29. package/dist/constants.js +81 -0
  30. package/dist/constants.js.map +1 -0
  31. package/dist/contextBuilder.d.ts +38 -0
  32. package/dist/contextBuilder.d.ts.map +1 -0
  33. package/dist/contextBuilder.js +113 -0
  34. package/dist/contextBuilder.js.map +1 -0
  35. package/dist/dependencyDetector.d.ts +57 -0
  36. package/dist/dependencyDetector.d.ts.map +1 -0
  37. package/dist/dependencyDetector.js +505 -0
  38. package/dist/dependencyDetector.js.map +1 -0
  39. package/dist/executor.d.ts +83 -0
  40. package/dist/executor.d.ts.map +1 -0
  41. package/dist/executor.js +583 -0
  42. package/dist/executor.js.map +1 -0
  43. package/dist/git.d.ts +85 -0
  44. package/dist/git.d.ts.map +1 -0
  45. package/dist/git.js +283 -0
  46. package/dist/git.js.map +1 -0
  47. package/dist/imageManager.d.ts +161 -0
  48. package/dist/imageManager.d.ts.map +1 -0
  49. package/dist/imageManager.js +674 -0
  50. package/dist/imageManager.js.map +1 -0
  51. package/dist/index.d.ts +3 -0
  52. package/dist/index.d.ts.map +1 -0
  53. package/dist/index.js +437 -0
  54. package/dist/index.js.map +1 -0
  55. package/dist/input-visual-test.d.ts +9 -0
  56. package/dist/input-visual-test.d.ts.map +1 -0
  57. package/dist/input-visual-test.js +108 -0
  58. package/dist/input-visual-test.js.map +1 -0
  59. package/dist/inputBox.d.ts +228 -0
  60. package/dist/inputBox.d.ts.map +1 -0
  61. package/dist/inputBox.js +966 -0
  62. package/dist/inputBox.js.map +1 -0
  63. package/dist/logger.d.ts +136 -0
  64. package/dist/logger.d.ts.map +1 -0
  65. package/dist/logger.js +347 -0
  66. package/dist/logger.js.map +1 -0
  67. package/dist/orchestrator.d.ts +149 -0
  68. package/dist/orchestrator.d.ts.map +1 -0
  69. package/dist/orchestrator.js +821 -0
  70. package/dist/orchestrator.js.map +1 -0
  71. package/dist/planner.d.ts +86 -0
  72. package/dist/planner.d.ts.map +1 -0
  73. package/dist/planner.js +830 -0
  74. package/dist/planner.js.map +1 -0
  75. package/dist/pty-test-runner.d.ts +87 -0
  76. package/dist/pty-test-runner.d.ts.map +1 -0
  77. package/dist/pty-test-runner.js +721 -0
  78. package/dist/pty-test-runner.js.map +1 -0
  79. package/dist/screen.d.ts +44 -0
  80. package/dist/screen.d.ts.map +1 -0
  81. package/dist/screen.js +152 -0
  82. package/dist/screen.js.map +1 -0
  83. package/dist/taskQueue.d.ts +70 -0
  84. package/dist/taskQueue.d.ts.map +1 -0
  85. package/dist/taskQueue.js +282 -0
  86. package/dist/taskQueue.js.map +1 -0
  87. package/dist/tui-test-harness.d.ts +216 -0
  88. package/dist/tui-test-harness.d.ts.map +1 -0
  89. package/dist/tui-test-harness.js +527 -0
  90. package/dist/tui-test-harness.js.map +1 -0
  91. package/dist/types.d.ts +257 -0
  92. package/dist/types.d.ts.map +1 -0
  93. package/dist/types.js +46 -0
  94. package/dist/types.js.map +1 -0
  95. package/dist/ui-visual-test.d.ts +15 -0
  96. package/dist/ui-visual-test.d.ts.map +1 -0
  97. package/dist/ui-visual-test.js +141 -0
  98. package/dist/ui-visual-test.js.map +1 -0
  99. package/dist/ui.d.ts +272 -0
  100. package/dist/ui.d.ts.map +1 -0
  101. package/dist/ui.js +1531 -0
  102. package/dist/ui.js.map +1 -0
  103. package/dist/validator.d.ts +53 -0
  104. package/dist/validator.d.ts.map +1 -0
  105. package/dist/validator.js +491 -0
  106. package/dist/validator.js.map +1 -0
  107. package/dist/versionCheck.d.ts +63 -0
  108. package/dist/versionCheck.d.ts.map +1 -0
  109. package/dist/versionCheck.js +261 -0
  110. package/dist/versionCheck.js.map +1 -0
  111. package/package.json +62 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Version check result
3
+ */
4
+ export interface VersionCheckResult {
5
+ updateAvailable: boolean;
6
+ currentVersion: string;
7
+ latestVersion?: string;
8
+ error?: string;
9
+ }
10
+ /**
11
+ * Compare two semver versions
12
+ * Returns: -1 if a < b, 0 if a == b, 1 if a > b
13
+ */
14
+ export declare function compareVersions(a: string, b: string): number;
15
+ /**
16
+ * Check for updates against npm registry
17
+ * Uses caching to avoid repeated checks (1 hour cache)
18
+ * Silently fails on network errors
19
+ */
20
+ export declare function checkForUpdates(forceCheck?: boolean): Promise<VersionCheckResult>;
21
+ /**
22
+ * Format update notice for display
23
+ * Returns a boxed notification string
24
+ */
25
+ export declare function formatUpdateNotice(currentVersion: string, latestVersion: string): string;
26
+ /**
27
+ * Check for updates and return formatted notice if available
28
+ * Returns null if no update or on error (silent fail)
29
+ */
30
+ export declare function getUpdateNotice(): Promise<string | null>;
31
+ /**
32
+ * Result of an update attempt
33
+ */
34
+ export interface UpdateResult {
35
+ success: boolean;
36
+ error?: string;
37
+ previousVersion?: string;
38
+ newVersion?: string;
39
+ }
40
+ /**
41
+ * Perform the update by running npm update -g maistro
42
+ * Returns success/failure with details
43
+ */
44
+ export declare function performUpdate(): Promise<UpdateResult>;
45
+ /**
46
+ * Check if auto-update prompting is enabled
47
+ * Returns true by default (opt-out behavior)
48
+ */
49
+ export declare function isAutoUpdatePromptEnabled(): boolean;
50
+ /**
51
+ * Check if silent auto-update is enabled
52
+ * Returns false by default (opt-in behavior)
53
+ */
54
+ export declare function isAutoUpdateEnabled(): boolean;
55
+ /**
56
+ * Set auto-update prompt preference
57
+ */
58
+ export declare function setAutoUpdatePrompt(enabled: boolean): void;
59
+ /**
60
+ * Set silent auto-update preference
61
+ */
62
+ export declare function setAutoUpdateEnabled(enabled: boolean): void;
63
+ //# sourceMappingURL=versionCheck.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versionCheck.d.ts","sourceRoot":"","sources":["../src/versionCheck.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAYD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAc5D;AA6CD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,UAAU,UAAQ,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAgDrF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAuBxF;AAED;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQ9D;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,YAAY,CAAC,CA8C3D;AAiCD;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,OAAO,CAGnD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAG7C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAM1D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAM3D"}
@@ -0,0 +1,261 @@
1
+ import { loadConfig, saveConfig } from './config.js';
2
+ import { BUILD_INFO } from './buildInfo.js';
3
+ import { execa } from 'execa';
4
+ import { getLogger } from './logger.js';
5
+ /**
6
+ * Cache duration for version checks (1 hour)
7
+ */
8
+ const VERSION_CHECK_CACHE_MS = 60 * 60 * 1000;
9
+ /**
10
+ * Timeout for npm registry requests (3 seconds)
11
+ */
12
+ const REGISTRY_TIMEOUT_MS = 3000;
13
+ /**
14
+ * Compare two semver versions
15
+ * Returns: -1 if a < b, 0 if a == b, 1 if a > b
16
+ */
17
+ export function compareVersions(a, b) {
18
+ const partsA = a.split('.').map(n => parseInt(n, 10) || 0);
19
+ const partsB = b.split('.').map(n => parseInt(n, 10) || 0);
20
+ // Ensure both have at least 3 parts
21
+ while (partsA.length < 3)
22
+ partsA.push(0);
23
+ while (partsB.length < 3)
24
+ partsB.push(0);
25
+ for (let i = 0; i < 3; i++) {
26
+ if (partsA[i] < partsB[i])
27
+ return -1;
28
+ if (partsA[i] > partsB[i])
29
+ return 1;
30
+ }
31
+ return 0;
32
+ }
33
+ /**
34
+ * Fetch the latest version from npm registry
35
+ */
36
+ async function fetchLatestVersion() {
37
+ try {
38
+ const controller = new AbortController();
39
+ const timeoutId = setTimeout(() => controller.abort(), REGISTRY_TIMEOUT_MS);
40
+ const response = await fetch('https://registry.npmjs.org/maistro/latest', {
41
+ signal: controller.signal,
42
+ headers: {
43
+ 'Accept': 'application/json',
44
+ },
45
+ });
46
+ clearTimeout(timeoutId);
47
+ if (!response.ok) {
48
+ // Package might not be published yet
49
+ if (response.status === 404) {
50
+ return { error: 'Package not found on npm registry' };
51
+ }
52
+ return { error: `Registry returned ${response.status}` };
53
+ }
54
+ const data = await response.json();
55
+ if (!data.version) {
56
+ return { error: 'Invalid response from registry' };
57
+ }
58
+ return { version: data.version };
59
+ }
60
+ catch (err) {
61
+ if (err instanceof Error) {
62
+ if (err.name === 'AbortError') {
63
+ return { error: 'Request timed out' };
64
+ }
65
+ return { error: err.message };
66
+ }
67
+ return { error: 'Unknown error' };
68
+ }
69
+ }
70
+ /**
71
+ * Check for updates against npm registry
72
+ * Uses caching to avoid repeated checks (1 hour cache)
73
+ * Silently fails on network errors
74
+ */
75
+ export async function checkForUpdates(forceCheck = false) {
76
+ const currentVersion = BUILD_INFO.version;
77
+ const config = loadConfig();
78
+ // Check cache first (unless force check)
79
+ if (!forceCheck && config.lastVersionCheck && config.latestKnownVersion) {
80
+ const lastCheck = new Date(config.lastVersionCheck).getTime();
81
+ const now = Date.now();
82
+ if (now - lastCheck < VERSION_CHECK_CACHE_MS) {
83
+ // Use cached result
84
+ const updateAvailable = compareVersions(currentVersion, config.latestKnownVersion) < 0;
85
+ return {
86
+ updateAvailable,
87
+ currentVersion,
88
+ latestVersion: config.latestKnownVersion,
89
+ };
90
+ }
91
+ }
92
+ // Fetch from registry
93
+ const result = await fetchLatestVersion();
94
+ if (result.error) {
95
+ return {
96
+ updateAvailable: false,
97
+ currentVersion,
98
+ error: result.error,
99
+ };
100
+ }
101
+ const latestVersion = result.version;
102
+ // Update cache
103
+ const updatedConfig = {
104
+ ...config,
105
+ lastVersionCheck: new Date().toISOString(),
106
+ latestKnownVersion: latestVersion,
107
+ };
108
+ saveConfig(updatedConfig);
109
+ const updateAvailable = compareVersions(currentVersion, latestVersion) < 0;
110
+ return {
111
+ updateAvailable,
112
+ currentVersion,
113
+ latestVersion,
114
+ };
115
+ }
116
+ /**
117
+ * Format update notice for display
118
+ * Returns a boxed notification string
119
+ */
120
+ export function formatUpdateNotice(currentVersion, latestVersion) {
121
+ const message = `Update available: ${currentVersion} → ${latestVersion}`;
122
+ const command = 'Run: npm update -g maistro';
123
+ // Calculate box width based on longest line
124
+ const maxLen = Math.max(message.length, command.length);
125
+ const padding = 2;
126
+ const innerWidth = maxLen + padding * 2;
127
+ const horizontal = '─'.repeat(innerWidth);
128
+ const padded = (text) => {
129
+ const spaces = innerWidth - text.length;
130
+ const left = Math.floor(spaces / 2);
131
+ const right = spaces - left;
132
+ return ' '.repeat(left) + text + ' '.repeat(right);
133
+ };
134
+ return [
135
+ `╭${horizontal}╮`,
136
+ `│${padded(message)}│`,
137
+ `│${padded(command)}│`,
138
+ `╰${horizontal}╯`,
139
+ ].join('\n');
140
+ }
141
+ /**
142
+ * Check for updates and return formatted notice if available
143
+ * Returns null if no update or on error (silent fail)
144
+ */
145
+ export async function getUpdateNotice() {
146
+ const result = await checkForUpdates();
147
+ if (result.updateAvailable && result.latestVersion) {
148
+ return formatUpdateNotice(result.currentVersion, result.latestVersion);
149
+ }
150
+ return null;
151
+ }
152
+ /**
153
+ * Perform the update by running npm update -g maistro
154
+ * Returns success/failure with details
155
+ */
156
+ export async function performUpdate() {
157
+ const previousVersion = BUILD_INFO.version;
158
+ const logger = getLogger();
159
+ logger?.info('Starting auto-update', { previousVersion });
160
+ try {
161
+ // Run npm update -g maistro
162
+ const result = await execa('npm', ['update', '-g', 'maistro'], {
163
+ reject: false,
164
+ timeout: 120000, // 2 minute timeout for npm operations
165
+ });
166
+ if (result.exitCode !== 0) {
167
+ const stderr = typeof result.stderr === 'string' ? result.stderr : '';
168
+ const errorMsg = stderr || `npm exited with code ${result.exitCode}`;
169
+ logger?.info('Auto-update failed', { error: errorMsg, exitCode: result.exitCode });
170
+ return {
171
+ success: false,
172
+ error: errorMsg,
173
+ previousVersion,
174
+ };
175
+ }
176
+ // Check what version we're at now
177
+ const checkResult = await fetchLatestVersionDirect();
178
+ logger?.info('Auto-update completed', {
179
+ previousVersion,
180
+ installedVersion: checkResult.version || 'unknown',
181
+ });
182
+ return {
183
+ success: true,
184
+ previousVersion,
185
+ newVersion: checkResult.version,
186
+ };
187
+ }
188
+ catch (err) {
189
+ const errorMsg = err instanceof Error ? err.message : 'Unknown error';
190
+ logger?.info('Auto-update exception', { error: errorMsg });
191
+ return {
192
+ success: false,
193
+ error: errorMsg,
194
+ previousVersion,
195
+ };
196
+ }
197
+ }
198
+ /**
199
+ * Fetch latest version directly (bypasses cache)
200
+ */
201
+ async function fetchLatestVersionDirect() {
202
+ try {
203
+ const controller = new AbortController();
204
+ const timeoutId = setTimeout(() => controller.abort(), REGISTRY_TIMEOUT_MS);
205
+ const response = await fetch('https://registry.npmjs.org/maistro/latest', {
206
+ signal: controller.signal,
207
+ headers: {
208
+ 'Accept': 'application/json',
209
+ },
210
+ });
211
+ clearTimeout(timeoutId);
212
+ if (!response.ok) {
213
+ return { error: `Registry returned ${response.status}` };
214
+ }
215
+ const data = await response.json();
216
+ return { version: data.version };
217
+ }
218
+ catch (err) {
219
+ if (err instanceof Error) {
220
+ return { error: err.message };
221
+ }
222
+ return { error: 'Unknown error' };
223
+ }
224
+ }
225
+ /**
226
+ * Check if auto-update prompting is enabled
227
+ * Returns true by default (opt-out behavior)
228
+ */
229
+ export function isAutoUpdatePromptEnabled() {
230
+ const config = loadConfig();
231
+ return config.autoUpdatePrompt !== false; // Default to true
232
+ }
233
+ /**
234
+ * Check if silent auto-update is enabled
235
+ * Returns false by default (opt-in behavior)
236
+ */
237
+ export function isAutoUpdateEnabled() {
238
+ const config = loadConfig();
239
+ return config.autoUpdateEnabled === true; // Default to false
240
+ }
241
+ /**
242
+ * Set auto-update prompt preference
243
+ */
244
+ export function setAutoUpdatePrompt(enabled) {
245
+ const config = loadConfig();
246
+ saveConfig({
247
+ ...config,
248
+ autoUpdatePrompt: enabled,
249
+ });
250
+ }
251
+ /**
252
+ * Set silent auto-update preference
253
+ */
254
+ export function setAutoUpdateEnabled(enabled) {
255
+ const config = loadConfig();
256
+ saveConfig({
257
+ ...config,
258
+ autoUpdateEnabled: enabled,
259
+ });
260
+ }
261
+ //# sourceMappingURL=versionCheck.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versionCheck.js","sourceRoot":"","sources":["../src/versionCheck.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,62 @@
1
+ {
2
+ "name": "maistro",
3
+ "version": "1.0.390",
4
+ "description": "AI-powered CLI that breaks down complex projects into tasks and executes them automatically via Claude Code",
5
+ "main": "dist/index.js",
6
+ "bin": {
7
+ "maistro": "dist/index.js"
8
+ },
9
+ "type": "module",
10
+ "engines": {
11
+ "node": ">=18"
12
+ },
13
+ "files": [
14
+ "dist",
15
+ "README.md",
16
+ "LICENSE"
17
+ ],
18
+ "publishConfig": {
19
+ "access": "public"
20
+ },
21
+ "scripts": {
22
+ "bump": "node -e \"const fs=require('fs'); const pkg=JSON.parse(fs.readFileSync('package.json')); const v=pkg.version.split('.'); v[2]=parseInt(v[2])+1; pkg.version=v.join('.'); fs.writeFileSync('package.json',JSON.stringify(pkg,null,2)+'\\n'); const time=new Date().toISOString().slice(0,16).replace(/[-:T]/g,''); fs.writeFileSync('src/buildInfo.ts', 'export const BUILD_INFO = { version: \\\"'+pkg.version+'\\\", time: \\\"'+time+'\\\" };\\n');\"",
23
+ "build": "tsc",
24
+ "release": "npm run bump && npm run build && npm link",
25
+ "start": "node dist/index.js",
26
+ "dev": "tsx src/index.ts",
27
+ "test": "vitest run --exclude 'src/pty-*.test.ts' --exclude 'src/smoke.test.ts'",
28
+ "test:watch": "vitest --exclude 'src/pty-*.test.ts' --exclude 'src/smoke.test.ts'",
29
+ "test:pty": "vitest run src/pty-*.test.ts --test-timeout 60000",
30
+ "test:smoke": "vitest run src/smoke.test.ts",
31
+ "test:coverage": "vitest run --exclude 'src/pty-*.test.ts' --exclude 'src/smoke.test.ts' --coverage",
32
+ "test:coverage:all": "vitest run --coverage",
33
+ "setup": "git pull 2>/dev/null; npm install && npm run build && npm link"
34
+ },
35
+ "keywords": [
36
+ "claude",
37
+ "claude-code",
38
+ "anthropic",
39
+ "ai-agent",
40
+ "orchestration",
41
+ "task-automation",
42
+ "workflow",
43
+ "cli",
44
+ "llm",
45
+ "code-generation",
46
+ "developer-tools"
47
+ ],
48
+ "author": "DreamTeam Mobile",
49
+ "license": "SEE LICENSE IN LICENSE",
50
+ "dependencies": {
51
+ "commander": "^12.0.0",
52
+ "execa": "^9.5.2",
53
+ "glob": "^11.0.1"
54
+ },
55
+ "devDependencies": {
56
+ "@types/node": "^22.10.7",
57
+ "@vitest/coverage-v8": "^3.2.4",
58
+ "tsx": "^4.19.2",
59
+ "typescript": "^5.7.3",
60
+ "vitest": "^3.0.4"
61
+ }
62
+ }