claude-evolve 1.3.8 → 1.3.10

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.
@@ -194,10 +194,31 @@ get_top_performers() {
194
194
  return
195
195
  fi
196
196
 
197
- # Get completed algorithms with performance scores, sort by performance descending
198
- awk -F, 'NR > 1 && $4 != "" && $5 == "complete" { print $1 "," $3 "," $4 }' "$FULL_CSV_PATH" | \
199
- sort -t, -k3 -nr | \
200
- head -n "$num_requested"
197
+ # Use Python to properly parse CSV with quoted fields
198
+ "$PYTHON_CMD" -c "
199
+ import csv
200
+ import sys
201
+
202
+ with open('$FULL_CSV_PATH', 'r') as f:
203
+ reader = csv.reader(f)
204
+ next(reader) # Skip header
205
+
206
+ completed = []
207
+ for row in reader:
208
+ if len(row) >= 5 and row[3] and row[4] == 'complete':
209
+ try:
210
+ score = float(row[3])
211
+ completed.append((row[0], row[2], score))
212
+ except ValueError:
213
+ pass
214
+
215
+ # Sort by score descending
216
+ completed.sort(key=lambda x: x[2], reverse=True)
217
+
218
+ # Output top N
219
+ for i, (id, desc, score) in enumerate(completed[:$num_requested]):
220
+ print(f'{id},{desc},{score}')
221
+ "
201
222
  }
202
223
 
203
224
  # Manual entry mode
@@ -276,9 +297,15 @@ generate_novel_ideas_direct() {
276
297
  Current CSV content:
277
298
  $(cat "$FULL_CSV_PATH")
278
299
 
279
- Algorithm files you can examine for context:
300
+ Algorithm files you MUST examine for context:
280
301
  - Base algorithm: $FULL_ALGORITHM_PATH
281
- - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_id*.py (if any exist)
302
+ - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_*.py (examine ALL to see what's been tried)
303
+
304
+ IMPORTANT: Before generating ideas, you should:
305
+ 1. Read the base algorithm to understand the codebase structure and possibilities
306
+ 2. Read ALL existing evolution_*.py files to see what modifications have been attempted
307
+ 3. Analyze the CSV to see which approaches worked (high scores) and which failed
308
+ 4. Avoid repeating failed approaches unless trying them with significant modifications
282
309
 
283
310
  Project Brief:
284
311
  $(cat "$FULL_BRIEF_PATH")
@@ -290,6 +317,10 @@ Requirements for new CSV rows:
290
317
  - Each description should be one clear sentence describing a specific algorithmic change
291
318
  - Descriptions should explore completely different approaches than existing ones
292
319
  - All new rows should have empty performance and status fields
320
+ - CRITICAL: You must read existing evolution files to avoid suggesting changes that:
321
+ * Have already been tried and failed
322
+ * Are impossible given the codebase structure
323
+ * Would break the algorithm interface requirements
293
324
 
294
325
  Example descriptions:
295
326
  - Use ensemble of 3 random forests with different feature subsets
@@ -316,9 +347,15 @@ generate_hill_climbing_direct() {
316
347
  Current CSV content:
317
348
  $(cat "$FULL_CSV_PATH")
318
349
 
319
- Algorithm files you can examine for context:
350
+ Algorithm files you MUST examine for context:
320
351
  - Base algorithm: $FULL_ALGORITHM_PATH
321
- - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_id*.py (if any exist)
352
+ - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_*.py (examine ALL to see what's been tried)
353
+
354
+ IMPORTANT: Before generating ideas, you should:
355
+ 1. Read the base algorithm to understand the codebase structure and possibilities
356
+ 2. Read ALL existing evolution_*.py files to see what modifications have been attempted
357
+ 3. Analyze the CSV to see which approaches worked (high scores) and which failed
358
+ 4. Avoid repeating failed approaches unless trying them with significant modifications
322
359
 
323
360
  Successful algorithms to build on:
324
361
  $top_performers
@@ -333,6 +370,10 @@ Requirements for new CSV rows:
333
370
  - Each description should be one clear sentence about parameter tuning
334
371
  - Focus on adjusting hyperparameters, thresholds, sizes, learning rates
335
372
  - All new rows should have empty performance and status fields
373
+ - CRITICAL: You must read the parent algorithm file to understand:
374
+ * What parameters are actually tunable in the code
375
+ * What changes made this algorithm successful vs its parent
376
+ * What parameter ranges make sense given the implementation
336
377
 
337
378
  Example descriptions:
338
379
  - Increase learning rate from 0.001 to 0.01 for faster convergence
@@ -359,9 +400,15 @@ generate_structural_mutation_direct() {
359
400
  Current CSV content:
360
401
  $(cat "$FULL_CSV_PATH")
361
402
 
362
- Algorithm files you can examine for context:
403
+ Algorithm files you MUST examine for context:
363
404
  - Base algorithm: $FULL_ALGORITHM_PATH
364
- - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_id*.py (if any exist)
405
+ - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_*.py (examine ALL to see what's been tried)
406
+
407
+ IMPORTANT: Before generating ideas, you should:
408
+ 1. Read the base algorithm to understand the codebase structure and possibilities
409
+ 2. Read ALL existing evolution_*.py files to see what modifications have been attempted
410
+ 3. Analyze the CSV to see which approaches worked (high scores) and which failed
411
+ 4. Avoid repeating failed approaches unless trying them with significant modifications
365
412
 
366
413
  Successful algorithms to build on:
367
414
  $top_performers
@@ -376,6 +423,10 @@ Requirements for new CSV rows:
376
423
  - Each description should be one clear sentence about architectural changes
377
424
  - Keep core insights but change implementation approach
378
425
  - All new rows should have empty performance and status fields
426
+ - CRITICAL: You must read the parent algorithm file to understand:
427
+ * What structural elements can be modified within the codebase constraints
428
+ * What architectural decisions led to this algorithm's success
429
+ * Which components are essential vs which can be replaced
379
430
 
380
431
  Example descriptions:
381
432
  - Replace linear layers with convolutional layers for spatial feature learning
@@ -402,9 +453,15 @@ generate_crossover_direct() {
402
453
  Current CSV content:
403
454
  $(cat "$FULL_CSV_PATH")
404
455
 
405
- Algorithm files you can examine for context:
456
+ Algorithm files you MUST examine for context:
406
457
  - Base algorithm: $FULL_ALGORITHM_PATH
407
- - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_id*.py (if any exist)
458
+ - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_*.py (examine ALL to see what's been tried)
459
+
460
+ IMPORTANT: Before generating ideas, you should:
461
+ 1. Read the base algorithm to understand the codebase structure and possibilities
462
+ 2. Read ALL existing evolution_*.py files to see what modifications have been attempted
463
+ 3. Analyze the CSV to see which approaches worked (high scores) and which failed
464
+ 4. Avoid repeating failed approaches unless trying them with significant modifications
408
465
 
409
466
  Top performers to combine:
410
467
  $top_performers
@@ -419,6 +476,10 @@ Requirements for new CSV rows:
419
476
  - Each description should be one clear sentence combining elements from different algorithms
420
477
  - Be specific about what elements to merge
421
478
  - All new rows should have empty performance and status fields
479
+ - CRITICAL: You must read the relevant algorithm files to:
480
+ * Identify the specific improvements that made each algorithm successful
481
+ * Understand which components are compatible for merging
482
+ * Ensure the combined approach is technically feasible in the codebase
422
483
 
423
484
  Example descriptions:
424
485
  - Combine ensemble voting from algorithm 3 with feature selection from algorithm 5
@@ -461,9 +522,15 @@ ideate_ai_legacy() {
461
522
  Current CSV content:
462
523
  $(cat "$FULL_CSV_PATH")
463
524
 
464
- Algorithm files you can examine for context:
525
+ Algorithm files you MUST examine for context:
465
526
  - Base algorithm: $FULL_ALGORITHM_PATH
466
- - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_id*.py (if any exist)
527
+ - Evolved algorithms: $FULL_OUTPUT_DIR/evolution_*.py (examine ALL to see what's been tried)
528
+
529
+ IMPORTANT: Before generating ideas, you should:
530
+ 1. Read the base algorithm to understand the codebase structure and possibilities
531
+ 2. Read ALL existing evolution_*.py files to see what modifications have been attempted
532
+ 3. Analyze the CSV to see which approaches worked (high scores) and which failed
533
+ 4. Avoid repeating failed approaches unless trying them with significant modifications
467
534
 
468
535
  Project Brief:
469
536
  $(cat "$FULL_BRIEF_PATH")"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-evolve",
3
- "version": "1.3.8",
3
+ "version": "1.3.10",
4
4
  "bin": {
5
5
  "claude-evolve": "./bin/claude-evolve",
6
6
  "claude-evolve-main": "./bin/claude-evolve-main",