@hanzo/dev 2.1.0 → 2.1.1

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/dev.js CHANGED
@@ -23713,6 +23713,7 @@ var SwarmRunner = class extends import_events5.EventEmitter {
23713
23713
  async run() {
23714
23714
  const spinner = ora(`Initializing swarm with ${this.options.count} agents...`).start();
23715
23715
  try {
23716
+ spinner.text = `Searching for files in ${this.options.cwd || process.cwd()}...`;
23716
23717
  this.fileQueue = await this.findFiles();
23717
23718
  spinner.succeed(`Found ${this.fileQueue.length} files to process`);
23718
23719
  if (this.fileQueue.length === 0) {
@@ -23754,14 +23755,23 @@ var SwarmRunner = class extends import_events5.EventEmitter {
23754
23755
  "**/*.map"
23755
23756
  ]
23756
23757
  };
23757
- glob(this.options.pattern || "**/*", options, (err, files) => {
23758
+ const timeout = setTimeout(() => {
23759
+ reject(new Error("File search timed out"));
23760
+ }, 3e4);
23761
+ const pattern = this.options.pattern || "**/*";
23762
+ console.log(source_default.gray(`Searching with pattern: ${pattern} in ${options.cwd || process.cwd()}`));
23763
+ glob(pattern, options, (err, files) => {
23764
+ clearTimeout(timeout);
23758
23765
  if (err) {
23766
+ console.error(source_default.red("Glob error:"), err);
23759
23767
  reject(err);
23760
23768
  } else {
23769
+ console.log(source_default.gray(`Found ${files.length} total files`));
23761
23770
  const editableFiles = files.filter((file) => {
23762
23771
  const ext2 = path8.extname(file);
23763
23772
  return [".js", ".ts", ".jsx", ".tsx", ".py", ".java", ".cpp", ".c", ".h", ".go", ".rs", ".rb", ".php", ".swift", ".kt", ".scala", ".r", ".m", ".mm", ".md", ".txt", ".json", ".xml", ".yaml", ".yml", ".toml", ".ini", ".conf", ".sh", ".bash", ".zsh", ".fish", ".ps1", ".bat", ".cmd"].includes(ext2);
23764
23773
  });
23774
+ console.log(source_default.gray(`Filtered to ${editableFiles.length} editable files`));
23765
23775
  resolve2(editableFiles);
23766
23776
  }
23767
23777
  });
@@ -23809,8 +23819,7 @@ var SwarmRunner = class extends import_events5.EventEmitter {
23809
23819
  GROK_API_KEY: process.env.GROK_API_KEY,
23810
23820
  // Auto-accept edits for non-interactive mode
23811
23821
  CLAUDE_CODE_PERMISSION_MODE: "acceptEdits"
23812
- },
23813
- shell: true
23822
+ }
23814
23823
  });
23815
23824
  agent.process = child;
23816
23825
  let output = "";
@@ -23939,8 +23948,7 @@ File: ${file}`;
23939
23948
  const testResult = await new Promise((resolve2) => {
23940
23949
  var _a2;
23941
23950
  const child = (0, import_child_process4.spawn)("claude", ["-p", "test", "--max-turns", "1"], {
23942
- env: process.env,
23943
- shell: true
23951
+ env: process.env
23944
23952
  });
23945
23953
  let hasError = false;
23946
23954
  let resolved = false;
@@ -23977,7 +23985,6 @@ File: ${file}`;
23977
23985
  ...process.env,
23978
23986
  ANTHROPIC_API_KEY: process.env.ANTHROPIC_API_KEY
23979
23987
  },
23980
- shell: true,
23981
23988
  stdio: "inherit"
23982
23989
  });
23983
23990
  child.on("close", (code) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hanzo/dev",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "description": "Hanzo Dev - Meta AI development CLI that manages and runs all LLMs and CLI tools",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -45,6 +45,7 @@ export class SwarmRunner extends EventEmitter {
45
45
 
46
46
  try {
47
47
  // Find files to process
48
+ spinner.text = `Searching for files in ${this.options.cwd || process.cwd()}...`;
48
49
  this.fileQueue = await this.findFiles();
49
50
  spinner.succeed(`Found ${this.fileQueue.length} files to process`);
50
51
 
@@ -101,15 +102,27 @@ export class SwarmRunner extends EventEmitter {
101
102
  ]
102
103
  };
103
104
 
104
- glob(this.options.pattern || '**/*', options, (err, files) => {
105
+ // Add timeout to prevent hanging
106
+ const timeout = setTimeout(() => {
107
+ reject(new Error('File search timed out'));
108
+ }, 30000);
109
+
110
+ const pattern = this.options.pattern || '**/*';
111
+ console.log(chalk.gray(`Searching with pattern: ${pattern} in ${options.cwd || process.cwd()}`));
112
+
113
+ glob(pattern, options, (err, files) => {
114
+ clearTimeout(timeout);
105
115
  if (err) {
116
+ console.error(chalk.red('Glob error:'), err);
106
117
  reject(err);
107
118
  } else {
119
+ console.log(chalk.gray(`Found ${files.length} total files`));
108
120
  // Filter to only editable files
109
121
  const editableFiles = files.filter(file => {
110
122
  const ext = path.extname(file);
111
123
  return ['.js', '.ts', '.jsx', '.tsx', '.py', '.java', '.cpp', '.c', '.h', '.go', '.rs', '.rb', '.php', '.swift', '.kt', '.scala', '.r', '.m', '.mm', '.md', '.txt', '.json', '.xml', '.yaml', '.yml', '.toml', '.ini', '.conf', '.sh', '.bash', '.zsh', '.fish', '.ps1', '.bat', '.cmd'].includes(ext);
112
124
  });
125
+ console.log(chalk.gray(`Filtered to ${editableFiles.length} editable files`));
113
126
  resolve(editableFiles);
114
127
  }
115
128
  });
@@ -168,8 +181,7 @@ export class SwarmRunner extends EventEmitter {
168
181
  GROK_API_KEY: process.env.GROK_API_KEY,
169
182
  // Auto-accept edits for non-interactive mode
170
183
  CLAUDE_CODE_PERMISSION_MODE: 'acceptEdits'
171
- },
172
- shell: true
184
+ }
173
185
  });
174
186
 
175
187
  agent.process = child;
@@ -308,8 +320,7 @@ export class SwarmRunner extends EventEmitter {
308
320
  try {
309
321
  const testResult = await new Promise<boolean>((resolve) => {
310
322
  const child = spawn('claude', ['-p', 'test', '--max-turns', '1'], {
311
- env: process.env,
312
- shell: true
323
+ env: process.env
313
324
  });
314
325
 
315
326
  let hasError = false;
@@ -356,7 +367,6 @@ export class SwarmRunner extends EventEmitter {
356
367
  ...process.env,
357
368
  ANTHROPIC_API_KEY: process.env.ANTHROPIC_API_KEY
358
369
  },
359
- shell: true,
360
370
  stdio: 'inherit'
361
371
  });
362
372