natureco-cli 5.20.3 → 5.21.0
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/CHANGELOG.md +779 -750
- package/README.md +608 -608
- package/bin/natureco.js +1099 -1095
- package/package.json +95 -94
- package/scripts/generate-qr.js +21 -0
- package/scripts/import-curated-skills-log.json +5 -0
- package/scripts/import-curated-skills.js +262 -0
- package/scripts/import-skills-log.json +167 -0
- package/scripts/import-skills.js +261 -0
- package/scripts/postinstall.js +125 -0
- package/src/commands/agent.js +280 -280
- package/src/commands/ask.js +4 -2
- package/src/commands/naturehub.js +206 -282
- package/src/commands/repl.js +1594 -1580
- package/src/providers/mem0-memory.js +121 -121
- package/src/providers/supermemory-memory.js +117 -117
- package/src/tools/llm_task.js +150 -150
- package/src/tools/mac_alarm.js +199 -199
- package/src/tools/workflow.js +424 -424
- package/src/utils/api.js +1211 -1188
- package/src/utils/cost-tracker.js +361 -360
- package/src/utils/inquirer-wrapper.js +43 -31
- package/src/utils/paste-safe-input.js +346 -334
- package/src/utils/process-errors.js +129 -115
- package/src/utils/provider-detect.js +76 -72
- package/src/utils/skills.js +1 -1
- package/src/utils/system-prompt.js +136 -136
- package/src/utils/tools.js +324 -324
- package/README.md.bak +0 -565
- package/src/tools/http.js +0 -78
package/CHANGELOG.md
CHANGED
|
@@ -1,750 +1,779 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to NatureCo CLI will be documented in this file.
|
|
4
|
-
|
|
5
|
-
## [5.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
###
|
|
10
|
-
|
|
11
|
-
- **
|
|
12
|
-
- **
|
|
13
|
-
- **
|
|
14
|
-
- **
|
|
15
|
-
- **
|
|
16
|
-
- **
|
|
17
|
-
- **
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
|
|
25
|
-
### 🔧
|
|
26
|
-
|
|
27
|
-
-
|
|
28
|
-
- `
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
- **
|
|
46
|
-
|
|
47
|
-
- **
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
- **
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
- **
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
`
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
- **
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
-
|
|
159
|
-
-
|
|
160
|
-
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
-
|
|
171
|
-
-
|
|
172
|
-
-
|
|
173
|
-
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
-
|
|
180
|
-
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
**
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
-
|
|
196
|
-
-
|
|
197
|
-
-
|
|
198
|
-
-
|
|
199
|
-
-
|
|
200
|
-
-
|
|
201
|
-
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
-
|
|
208
|
-
-
|
|
209
|
-
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
-
|
|
220
|
-
-
|
|
221
|
-
-
|
|
222
|
-
-
|
|
223
|
-
-
|
|
224
|
-
-
|
|
225
|
-
-
|
|
226
|
-
-
|
|
227
|
-
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
-
|
|
266
|
-
-
|
|
267
|
-
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
-
|
|
272
|
-
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
- v4.2.0 — Phase 8: Launch & marketing
|
|
277
|
-
|
|
278
|
-
###
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
### ✨ Added
|
|
282
|
-
- **`
|
|
283
|
-
-
|
|
284
|
-
-
|
|
285
|
-
|
|
286
|
-
-
|
|
287
|
-
-
|
|
288
|
-
-
|
|
289
|
-
|
|
290
|
-
-
|
|
291
|
-
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
-
|
|
295
|
-
-
|
|
296
|
-
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
-
|
|
301
|
-
-
|
|
302
|
-
|
|
303
|
-
###
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
-
|
|
315
|
-
-
|
|
316
|
-
-
|
|
317
|
-
|
|
318
|
-
-
|
|
319
|
-
-
|
|
320
|
-
-
|
|
321
|
-
|
|
322
|
-
### 📊 Phase
|
|
323
|
-
-
|
|
324
|
-
-
|
|
325
|
-
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
-
|
|
330
|
-
- v4.
|
|
331
|
-
|
|
332
|
-
###
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
### ✨ Added
|
|
336
|
-
- **`src/utils/
|
|
337
|
-
-
|
|
338
|
-
-
|
|
339
|
-
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
-
|
|
344
|
-
-
|
|
345
|
-
|
|
346
|
-
-
|
|
347
|
-
-
|
|
348
|
-
-
|
|
349
|
-
-
|
|
350
|
-
|
|
351
|
-
###
|
|
352
|
-
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
###
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
- **`src/utils/
|
|
366
|
-
-
|
|
367
|
-
-
|
|
368
|
-
-
|
|
369
|
-
-
|
|
370
|
-
-
|
|
371
|
-
-
|
|
372
|
-
|
|
373
|
-
-
|
|
374
|
-
-
|
|
375
|
-
- `
|
|
376
|
-
- `
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
- v3.3.0 — Phase 4: Maliyet optimizasyonu
|
|
385
|
-
- v3.4.0 — Phase 5: Geliştirici deneyimi
|
|
386
|
-
|
|
387
|
-
###
|
|
388
|
-
OpenClaw'
|
|
389
|
-
|
|
390
|
-
### ✨ Added
|
|
391
|
-
-
|
|
392
|
-
-
|
|
393
|
-
-
|
|
394
|
-
-
|
|
395
|
-
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
-
|
|
399
|
-
-
|
|
400
|
-
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
-
|
|
404
|
-
-
|
|
405
|
-
-
|
|
406
|
-
|
|
407
|
-
###
|
|
408
|
-
-
|
|
409
|
-
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
###
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
- **
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
-
|
|
450
|
-
|
|
451
|
-
-
|
|
452
|
-
-
|
|
453
|
-
-
|
|
454
|
-
-
|
|
455
|
-
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
-
|
|
459
|
-
-
|
|
460
|
-
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
-
|
|
464
|
-
-
|
|
465
|
-
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
-
|
|
469
|
-
|
|
470
|
-
-
|
|
471
|
-
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
-
|
|
478
|
-
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
-
|
|
482
|
-
|
|
483
|
-
-
|
|
484
|
-
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
-
|
|
489
|
-
|
|
490
|
-
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
-
|
|
497
|
-
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
-
|
|
501
|
-
-
|
|
502
|
-
|
|
503
|
-
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
-
|
|
508
|
-
-
|
|
509
|
-
|
|
510
|
-
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
-
|
|
514
|
-
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
-
|
|
518
|
-
|
|
519
|
-
-
|
|
520
|
-
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
-
|
|
527
|
-
|
|
528
|
-
-
|
|
529
|
-
-
|
|
530
|
-
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
-
|
|
535
|
-
-
|
|
536
|
-
-
|
|
537
|
-
-
|
|
538
|
-
|
|
539
|
-
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
-
|
|
547
|
-
-
|
|
548
|
-
-
|
|
549
|
-
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
-
|
|
554
|
-
-
|
|
555
|
-
-
|
|
556
|
-
|
|
557
|
-
-
|
|
558
|
-
- `
|
|
559
|
-
-
|
|
560
|
-
-
|
|
561
|
-
|
|
562
|
-
####
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
###
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
- **
|
|
641
|
-
- **
|
|
642
|
-
- **
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
- **
|
|
647
|
-
- **
|
|
648
|
-
- **
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
-
|
|
652
|
-
-
|
|
653
|
-
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
- **
|
|
718
|
-
- **
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
-
|
|
725
|
-
-
|
|
726
|
-
-
|
|
727
|
-
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
-
|
|
735
|
-
-
|
|
736
|
-
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
-
|
|
745
|
-
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
-
|
|
750
|
-
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to NatureCo CLI will be documented in this file.
|
|
4
|
+
|
|
5
|
+
## [5.21.0] - 2026-07-02 — "GÜVENİLİRLİK SPRİNTİ" (gerçek API E2E denetimi)
|
|
6
|
+
|
|
7
|
+
Gerçek MiniMax API anahtarıyla uçtan uca canlı test turu; bulunan her hata düzeltilip yine canlı doğrulandı. 461 test yeşil.
|
|
8
|
+
|
|
9
|
+
### 🐛 Kritik Düzeltmeler
|
|
10
|
+
|
|
11
|
+
- **Pipe/script modu tamamen kırıktı**: paste algılayıcı non-TTY girdide (pipe, script, CI) çok satırlı chunk'ları "yapıştırma" sanıp komutları yutuyordu — `echo "soru" | natureco chat` hiç çalışmıyordu. Non-TTY'de saf geçiş + regresyon testi.
|
|
12
|
+
- **EOF yanıtı kesiyordu**: pipe girdisi bittiğinde REPL, LLM yanıtı hâlâ üretilirken kapanıyordu. Artık süren işlem beklenir; kapalı readline'da `prompt()` çağrısı (Node 24 "readline was closed" çökmesi) korunur; non-TTY'de inquirer soruları güvenli varsayılanlara döner.
|
|
13
|
+
- **Maliyet takibi hiç kayıt yapmıyordu**: `recordUsage` hiçbir API yoluna bağlanmamıştı — `natureco cost` hep $0.00 gösteriyordu. Üç yola da (normal, streaming, Anthropic) bağlandı.
|
|
14
|
+
- **Streaming'de sessiz token kaybı**: SSE satırı chunk sınırında bölününce parse hatası yutulup içerik kayboluyordu. Buffer taşıma eklendi.
|
|
15
|
+
- **REPL profil izolasyonunu deliyordu**: yerel `getConfig` kopyası `--profile` bayrağını yok sayıp gerçek config'i okuyordu; memory/sessions/repl-state yolları da homedir'e sabitti. Hepsi merkezi config/profile bağlandı.
|
|
16
|
+
- **Windows'ta `npm install` kırılabiliyordu**: `postinstall: ... || true` cmd.exe'de geçersiz (`true` yok). `scripts/postinstall.js`'e bağlandı — asla kurulum kırmaz, CI'da atlanır; `scripts/` npm paketine eklendi (`files`).
|
|
17
|
+
- **EPIPE çökmesi**: `natureco help | head` gibi boru zincirlerinde 255 ile çöküyordu. EPIPE artık normal akış sayılır (exit 0).
|
|
18
|
+
|
|
19
|
+
### 💰 Maliyet
|
|
20
|
+
|
|
21
|
+
- **`ask` %97 daha ucuz**: tek atımlık soruda 47 aracın şeması (~15K token) gönderiliyordu; varsayılan artık araçsız (~470 token), `--tools` ile açılır.
|
|
22
|
+
- MiniMax URL toleransı: `.../v1` ile biten providerUrl `404 page not found` veriyordu; endpoint kurucu tek kaynağa (`buildChatEndpoint`) indirildi ve `/v1` toleranslı.
|
|
23
|
+
- `$0.15¢` karışık para gösterimi düzeltildi (1 sentin altı yalnızca `¢`).
|
|
24
|
+
|
|
25
|
+
### 🔧 İyileştirmeler
|
|
26
|
+
|
|
27
|
+
- Yazım hatasında komut önerisi: `natureco docto` → `(Did you mean doctor?)`.
|
|
28
|
+
- `workflow` aracı tanımı ve sistem yönergesi netleştirildi: sohbet/bilgi sorusunda araç çağrılmaz.
|
|
29
|
+
- Girdide BOM/sıfır-genişlik karakter temizliği (PowerShell echo BOM'u).
|
|
30
|
+
- `NATURECO_DEBUG=1` ile unhandled rejection stack'i stderr'a yazılır.
|
|
31
|
+
- Windows test uyumluluğu: `USERPROFILE` override, yol ayracı, spawn timeout'ları — 15 flaky test düzeltildi.
|
|
32
|
+
- Kök dizin temizliği: `fibonacci.js`, `README.md.bak`, `.codedna.db`, ölü `postinstall-doctor.js` kaldırıldı; repo URL'leri `natureco-official`'a eşitlendi.
|
|
33
|
+
|
|
34
|
+
## [5.20.0] - 2026-06-27 — "CLAUDE CODE FEATURES CLONE"
|
|
35
|
+
|
|
36
|
+
13 Claude Code özelliği klonlandı ve her iki CLI moduna (REPL + Code Agent) entegre edildi. 28 test dosyası, 463 test.
|
|
37
|
+
|
|
38
|
+
### ✨ Yeni Özellikler
|
|
39
|
+
|
|
40
|
+
- **Hooks Sistemi** (`src/utils/tool-hooks.js`): Pattern-based pre/post hooks. `ToolName(glob)` syntax ile allow/deny/ask/notify/record.
|
|
41
|
+
- **Permission Sistemi** (`src/utils/permissions.js`): Granular allow/deny/ask rules + persistent approval cache (disk).
|
|
42
|
+
- **Plan Mode** (`src/utils/plan-mode.js`): 3-state (normal → planning → review). Read-only mod, `/plan on|approve|reject|show` CLI.
|
|
43
|
+
- **Worktrees** (`src/utils/worktree.js`): Git worktree + copytree fallback. EnterWorktree/ExitWorktree virtual tools.
|
|
44
|
+
- **Sandbox** (`src/utils/sandbox.js`): none/basic/strict seviyeleri. Strict'te network komutları bloklanır, timeout kısalır.
|
|
45
|
+
- **Fallback Chain** (`src/utils/fallback-chain.js`): 3 model sıralı düşüş. error/ratelimit/timeout'da otomatik geçiş.
|
|
46
|
+
- **Effort Levels** (`src/utils/effort-levels.js`): low/medium/high — token limit, iteration, temperature kontrolü.
|
|
47
|
+
- **File History** (`src/utils/file-history.js`): Snapshot-based undo. `.natureco/history/` altında 20 snap/file. RestoreFile + FileHistory tools.
|
|
48
|
+
- **Session Search** (`src/utils/session-search.js`): Full-text `.natureco/sessions/` arama. SearchSessions tool.
|
|
49
|
+
- **Task Sistemi** (`src/utils/tasks.js`): Child process background task manager. CreateTask/ListTasks/GetTaskResult/StopTask tools.
|
|
50
|
+
- **Cron/Monitor** (`src/utils/cron.js`): Cron expression scheduler. ScheduleTask/ListScheduledTasks/RemoveScheduledTask tools.
|
|
51
|
+
- **Structured Output** (`src/utils/structured-output.js`): JSON schema response format. Config'dan `response_format` okur.
|
|
52
|
+
- **Ultra Review** (`src/utils/ultra-review.js`): 4-focus code review (security/style/logic/performance). UltraReview tool.
|
|
53
|
+
|
|
54
|
+
### 🔧 Entegrasyon
|
|
55
|
+
|
|
56
|
+
- `repl.js`: 14 virtual tool inject, plan review flow, permission + hooks + plan mode pipeline (`executeOne()`)
|
|
57
|
+
- `code_v5.js`: Aynı 14 virtual tool, `/plan` CLI, permission/hooks/plan/effort/fallback entegrasyonu
|
|
58
|
+
- `tools.js`: Sandbox strict seviyesinde bash/shell_command network bloklama
|
|
59
|
+
- Otomatik file snapshot: write_file/edit_file çalıştığında history snapshot alınır
|
|
60
|
+
|
|
61
|
+
### 🧪 Test
|
|
62
|
+
|
|
63
|
+
- 4 yeni test dosyası: tool-hooks (13), permissions (10), plan-mode (15), worktree (9)
|
|
64
|
+
- Toplam: 28 test dosyası, 463 test — tamamı yeşil
|
|
65
|
+
|
|
66
|
+
## [5.7.1] - 2026-06-25 — "BUG FIX SPRINT"
|
|
67
|
+
|
|
68
|
+
Comprehensive audit-driven sprint: 7 real runtime bugs fixed, 6 new
|
|
69
|
+
utility modules with ~90%+ test coverage, ESLint + flat config installed,
|
|
70
|
+
test scripts wired to vitest (previously `npm test` was just running
|
|
71
|
+
`--help`). Pure quality / stability — no public API change.
|
|
72
|
+
|
|
73
|
+
### 🐛 Fixed (runtime bugs)
|
|
74
|
+
- **REPL `/system <text>` crashed with TypeError** (`commands/repl.js`):
|
|
75
|
+
systemPrompt was `const` but the slash handler reassigned it. → `let`.
|
|
76
|
+
- **Telegram + IRC + SMS message handlers ReferenceError on every inbound**
|
|
77
|
+
(`commands/gateway-server.js`): `cleanCommand` variable never declared
|
|
78
|
+
in those scopes. Added `stripSlashPrefix(text)` helper mirroring the
|
|
79
|
+
v5.6.41+ WhatsApp transform; all three channels now derive it correctly.
|
|
80
|
+
- **Tool-alias rewrites threw ReferenceError** (`utils/tools.js`): typo
|
|
81
|
+
`TOOL_ALIASES[t.name]` where the local was `ALIAS_MAP`. Fixed.
|
|
82
|
+
- **5 silent `no-undef` ReferenceErrors** across `commands/{chat,nodes,
|
|
83
|
+
gateway,config}.js` + `utils/error.js` — missing `require()` calls
|
|
84
|
+
that had been hidden by CommonJS load-order side effects (would
|
|
85
|
+
crash on a fresh process or worker restart).
|
|
86
|
+
|
|
87
|
+
### 🔒 Security
|
|
88
|
+
- **exec-approvals.json was world-readable (0644)** — local privilege
|
|
89
|
+
escalation hedef. Now 0o600 (file) + 0o700 (parent dir), with
|
|
90
|
+
auto-tightening of pre-existing loose installs. Removed dangling
|
|
91
|
+
`APPROVALS_SOCKET_PATH` constant + unused `net` require (socket never
|
|
92
|
+
existed; storage is the JSON file).
|
|
93
|
+
- **Anthropic `system` field sent as `''` or `undefined`** (api.js): now
|
|
94
|
+
always non-empty via `extractSystemForAnthropic(messages)` helper with
|
|
95
|
+
a meaningful default. Prevents 400 "system: cannot be empty" on
|
|
96
|
+
recent Messages API revisions + unanchored-model drift.
|
|
97
|
+
|
|
98
|
+
### ⚙️ Reliability
|
|
99
|
+
- **Crash-safe atomic file writes** for sessions, history, memory,
|
|
100
|
+
approvals (new `utils/atomic-file.js`: temp-write + rename(2)).
|
|
101
|
+
Prior `fs.writeFileSync` left truncated JSON on SIGTERM / OOM /
|
|
102
|
+
power loss.
|
|
103
|
+
- **Memory fact cap silent fail fixed** (`tools/memory_write.js`): the
|
|
104
|
+
hardcoded `slice(0, 15)` ran BEFORE push, so once 15 high-score
|
|
105
|
+
facts were saved, every new write was the next iteration's eviction
|
|
106
|
+
victim — silently. Now: `MAX_FACTS_PER_USER` default 50 (env
|
|
107
|
+
`NATURECO_MAX_FACTS`), cap applied AFTER push, just-written fact
|
|
108
|
+
pinned at top, `console.warn` on breach (`NATURECO_QUIET_MEMORY=1`
|
|
109
|
+
to silence).
|
|
110
|
+
- **Global `unhandledRejection` + `uncaughtException` handlers**
|
|
111
|
+
(`utils/process-errors.js`, installed as the first statement in
|
|
112
|
+
`bin/natureco.js`): structured audit log entry + friendly Turkish
|
|
113
|
+
stderr + exit 1, instead of Node's default ugly stack dump.
|
|
114
|
+
- **Dashboard port + host de-hardcoded** (`utils/ports.js`):
|
|
115
|
+
`NATURECO_DASHBOARD_PORT` + `NATURECO_DASHBOARD_HOST` env overrides
|
|
116
|
+
with range/format validation. Previously 7421 was inlined in two
|
|
117
|
+
separate modules; drift risk eliminated.
|
|
118
|
+
|
|
119
|
+
### 🧹 Refactor (DRY)
|
|
120
|
+
- **Streaming tool-call delta accumulator** extracted to
|
|
121
|
+
`utils/streaming-tools.js`. The per-index buffer + string-concat
|
|
122
|
+
pattern was duplicated in `utils/api.js` and `commands/repl.js` —
|
|
123
|
+
any drift between them would silently break tool calling on
|
|
124
|
+
Groq / MiniMax / DeepSeek / OpenAI.
|
|
125
|
+
- **Provider detection** centralized in `utils/provider-detect.js`.
|
|
126
|
+
Three call sites (`utils/api.js`, `commands/setup.js`) used three
|
|
127
|
+
different versions of the URL→provider mapping; the setup.js variant
|
|
128
|
+
was already incorrect (missed `minimax.cn`). Helper makes
|
|
129
|
+
`detectProvider`, `isMiniMax`, `isAnthropic`, `isGroq`, `isOllama`
|
|
130
|
+
the single source of truth.
|
|
131
|
+
|
|
132
|
+
### 🧪 Testing
|
|
133
|
+
- **`npm test` actually runs tests now** — was previously just
|
|
134
|
+
`node bin/natureco.js help` (a load-smoke). Wired to `vitest run`.
|
|
135
|
+
- **+95 unit tests** across 9 new spec files. Coverage of the new
|
|
136
|
+
utility modules: streaming-tools 97%, provider-detect 100%,
|
|
137
|
+
process-errors 88%, ports ~93%, atomic-file ~93%, memory_write
|
|
138
|
+
internals ~85%.
|
|
139
|
+
- **Test suite: 12 files / 270 tests → 21 files / 365 tests.**
|
|
140
|
+
- `@vitest/coverage-v8` dev dep added; `npm run test:coverage` works.
|
|
141
|
+
- **prepublishOnly gate strengthened**: now runs `node --check` +
|
|
142
|
+
`eslint --quiet` + `vitest run` in sequence. A broken publish to
|
|
143
|
+
`npm install -g natureco-cli` users is now strictly blocked.
|
|
144
|
+
|
|
145
|
+
### 🔧 Tooling
|
|
146
|
+
- **ESLint v9 flat config added** (`eslint.config.js`):
|
|
147
|
+
`@eslint/js` recommended + warn-level checks for unused-vars,
|
|
148
|
+
useless-escape, case-declarations, control-regex. Test files get
|
|
149
|
+
ES-module sourceType + vitest globals; `src/tools/browser*.js`
|
|
150
|
+
get browser globals for Playwright page.evaluate context.
|
|
151
|
+
Scripts: `npm run lint`, `lint:fix`, `lint:errors-only`.
|
|
152
|
+
After the no-undef fixes: 0 errors (293 unused-vars warnings
|
|
153
|
+
remain for a follow-up sprint).
|
|
154
|
+
|
|
155
|
+
## [5.7.0] - 2026-06-24 - SOUL SCRUBBED (MINOR)
|
|
156
|
+
|
|
157
|
+
### Security
|
|
158
|
+
- Personal paths removed from README (Users/gencay/.hermes/sasuke-notes*.md and Downloads/notes.py)
|
|
159
|
+
- soul/ directory removed from repo (7 files: AGENTS, IDENTITY, SOUL, notes/{INDEX,note1-5}.md)
|
|
160
|
+
- Note: files remain in git history; use git filter-repo for full purge
|
|
161
|
+
- Internal docs ignored via .gitignore (DEPLOY_*, LAUNCH, AUDIT, TEST_PLAYBOOK, etc.)
|
|
162
|
+
|
|
163
|
+
### Changed
|
|
164
|
+
- Minor version bump 5.6.48 -> 5.7.0 (patch cascade rule: 5+ consecutive patches)
|
|
165
|
+
|
|
166
|
+
## [5.6.48] - 2026-06-24 — "README SHARDED"
|
|
167
|
+
|
|
168
|
+
### 📚 Documentation
|
|
169
|
+
- **README.md + README_EN.md updated** for v5.6.47
|
|
170
|
+
- v5.6.47 + v5.6.46 added to "Recent Releases" table
|
|
171
|
+
- New "v5.6.47 — Sharded Memory System" hero section in "What's New"
|
|
172
|
+
- Folder structure diagram (`soul/notes/{INDEX,note1-5}.md`)
|
|
173
|
+
- Cross-project reference to `sasuke-notes*.md`
|
|
174
|
+
- npm registry will reflect updated README on next publish
|
|
175
|
+
|
|
176
|
+
## [5.6.47] - 2026-06-24 — "SOUL SHARDED"
|
|
177
|
+
|
|
178
|
+
### ✨ Added
|
|
179
|
+
- **soul/notes/ — Sharded memory system for NatureCo CLI agent**
|
|
180
|
+
- `INDEX.md` (2 KB) — file map, navigation
|
|
181
|
+
- `note1.md` (3 KB) — Patron & persona (Gencay, "Patron" hitap, çilek yasağı)
|
|
182
|
+
- `note2.md` (4 KB) — Project structure, 120+ commands, build/publish workflow
|
|
183
|
+
- `note3.md` (3.8 KB) — Tokens, red lines, masking fixes (npm `.npmrc`, PyPI `/tmp/pypi_token.txt`, GitHub `/Users/gencay/.natureco/github_token`)
|
|
184
|
+
- `note4.md` (6 KB) — 7-step release workflow (local commit → tag → push → publish → cache-bust → GitHub release → verify)
|
|
185
|
+
- `note5.md` (5 KB) — Skills, tools, channels, MCP, integrations
|
|
186
|
+
- **SOUL.md updated** to index-based: "read soul/notes/INDEX.md" + 1-line quick reference
|
|
187
|
+
- **Infinite scalability** — `note6.md`, `note7.md`... as needed
|
|
188
|
+
- **Pattern mirrors** `/Users/gencay/.hermes/sasuke-notes*.md` for cross-project memory
|
|
189
|
+
- 1009 + 125 = 1134 new lines, ~28 KB detailed context
|
|
190
|
+
|
|
191
|
+
## [5.6.46] - 2026-06-24 — "README OVERHAUL"
|
|
192
|
+
|
|
193
|
+
### 📚 Documentation
|
|
194
|
+
- **README.md full rewrite** — 5.6.x serisine uygun:
|
|
195
|
+
- Hero slogan: "Yapay Zekânın Gücü artık parmaklarının ucunda / Terminalin hızını NatureCo ile keşfet"
|
|
196
|
+
- ASCII art banner
|
|
197
|
+
- Node badge: `>=16.0.0` (package.json engines ile uyumlu)
|
|
198
|
+
- npm version, downloads, GitHub stars badge'leri
|
|
199
|
+
- Quick Start 4 adım: install → setup → chat → code
|
|
200
|
+
- 51 komut / 10 kategori, gerçek örnekler
|
|
201
|
+
- Discord `https://discord.gg/4FwumbWph`, Twitter `https://twitter.com/naturecoofficial`
|
|
202
|
+
- GitHub: `natureco-official/natureco-cli`
|
|
203
|
+
- Karşılaştırma tablosu (Claude Code / Hermes / OpenClaw)
|
|
204
|
+
- 30s setup wizard tanıtımı
|
|
205
|
+
|
|
206
|
+
### 🎯 Versiyon Notu
|
|
207
|
+
- 5.6.45 → 5.6.46 (patch bump, README-only release)
|
|
208
|
+
- Kod değişikliği yok, npm sayfası güncellendi
|
|
209
|
+
- Yeni kullanıcılar README üzerinden kurulum yapabilir
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## [4.2.0] - 2026-06-22 — "LAUNCH READY"
|
|
214
|
+
|
|
215
|
+
### 🚀 Headline
|
|
216
|
+
**v4.2.0 ile NatureCo CLI npm'e publish'a hazır.** OpenClaw'ın açık ara üstünü.
|
|
217
|
+
|
|
218
|
+
### ✨ Added
|
|
219
|
+
- **package.json launch-ready:**
|
|
220
|
+
- Açıklayıcı description, 18 keywords (SEO optimize)
|
|
221
|
+
- `repository`, `bugs`, `homepage`, `author` (Gencay Olgun) alanları
|
|
222
|
+
- `postinstall` script: `natureco doctor` otomatik çalışır
|
|
223
|
+
- `prepublishOnly`: syntax check + test
|
|
224
|
+
- Files: README, CHANGELOG, AUDIT, DEPLOY docs dahil
|
|
225
|
+
- **LAUNCH.md** — Pazarlama materyali:
|
|
226
|
+
- Reddit/HN/Twitter/Medium/Discord mesajları (Parton imzalı)
|
|
227
|
+
- Hedef kitle segmentleri
|
|
228
|
+
- 30-gün başarı metrikleri
|
|
229
|
+
- Launch checklist
|
|
230
|
+
- **npm publish adımları** dokümante edildi
|
|
231
|
+
|
|
232
|
+
### 📊 Final İstatistikler
|
|
233
|
+
- 152 JS dosyası (8 yeni eklendi)
|
|
234
|
+
- 32K+ satır kod
|
|
235
|
+
- 11 utility modülü (5 yeni)
|
|
236
|
+
- 95+ CLI komutu (8 yeni)
|
|
237
|
+
- 8 phase, 0 blocking bug
|
|
238
|
+
- v2.23.32 → v4.2.0 (8 minor versiyon)
|
|
239
|
+
|
|
240
|
+
### 🎯 Hedef
|
|
241
|
+
- İlk hafta: 1,000 npm indirme
|
|
242
|
+
- İlk ay: 500 GitHub yıldız, 200 aktif kullanıcı
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
## 🏁 TÜM PHASE'LER TAMAMLANDI
|
|
247
|
+
|
|
248
|
+
- [x] Phase 0: Audit
|
|
249
|
+
- [x] Phase 1: Brand & Onboarding (v3.0.0)
|
|
250
|
+
- [x] Phase 2: Defense-in-Depth (v3.1.0)
|
|
251
|
+
- [x] Phase 3: Self-Evolving Skills (v3.2.0)
|
|
252
|
+
- [x] Phase 4: Cost-Optimized (v3.3.0)
|
|
253
|
+
- [x] Phase 5: Developer Experience (v3.4.0)
|
|
254
|
+
- [x] Phase 6: NatureCo Native (v4.0.0)
|
|
255
|
+
- [x] Phase 7: Multi-Agent (v4.1.0)
|
|
256
|
+
- [x] Phase 8: Launch Ready (v4.2.0)
|
|
257
|
+
|
|
258
|
+
**OpenClaw'ın yerini almaya hazırız.** 🌿
|
|
259
|
+
|
|
260
|
+
### 🤖 Headline
|
|
261
|
+
Tek agent değil, **agent ağı**. OpenClaw single-agent — NatureCo multi-agent.
|
|
262
|
+
|
|
263
|
+
### ✨ Added
|
|
264
|
+
- **`src/utils/sub-agent.js`** genişletildi: 3 → 8 agent tipi
|
|
265
|
+
- `explore`, `general`, `review` (mevcut)
|
|
266
|
+
- **Yeni:** `seo`, `content`, `security`, `translator`, `debugger`
|
|
267
|
+
- Her biri farklı system prompt ile uzmanlaşmış
|
|
268
|
+
- **`natureco team`** — Multi-agent orkestrasyon komutu
|
|
269
|
+
- `team list`: 8 agent tipi ve açıklamaları
|
|
270
|
+
- `team status`: Son çalışan agent istatistikleri (toplam/çalışan/tamamlanan/başarısız)
|
|
271
|
+
- `team spawn <type> <task>`: Tek agent çalıştır (token kullanım raporu ile)
|
|
272
|
+
- `team parallel '<json>'`: N agent paralel çalıştır, sonuçları birleştir
|
|
273
|
+
- **Mevcut `spawnSubAgent`/`spawnParallel` altyapısı** zaten vardı (Phase 7 bunu sadece genişletti)
|
|
274
|
+
|
|
275
|
+
### 🔜 Final Phase
|
|
276
|
+
- v4.2.0 — Phase 8: Launch & marketing
|
|
277
|
+
|
|
278
|
+
### 🌿 Headline
|
|
279
|
+
Generic agent değil, **NatureCo platformunun native parçası**. OpenClaw generic — NatureCo natureco.me'ye özel.
|
|
280
|
+
|
|
281
|
+
### ✨ Added
|
|
282
|
+
- **`natureco naturehub`** — Nature Hub topluluk akışına içerik yayınla (post|list|trending|config)
|
|
283
|
+
- Token tabanlı, `natureco config set naturehubToken`
|
|
284
|
+
- Offline: yerel JSONL'e kaydeder, API hazır olunca gönderir
|
|
285
|
+
- **`natureco medium`** — Parton'un ayda 4 makale hedefi için (draft|publish|list)
|
|
286
|
+
- Markdown dosyasından taslak/yayın
|
|
287
|
+
- Medium integration token gerektirir
|
|
288
|
+
- Yerel taslak kayıt (`~/.natureco/medium-drafts/`)
|
|
289
|
+
- **`natureco seo`** — URL SEO denetimi (audit|meta|speed)
|
|
290
|
+
- Title, description, canonical, OG, Twitter Card, schema.org
|
|
291
|
+
- H1-H3 heading analizi, image alt kontrolü
|
|
292
|
+
- Word count ve 100-üzerinden skor
|
|
293
|
+
- **Test: natureco.me → 71/100, H1 eksik bildirildi**
|
|
294
|
+
- **`natureco xp`** — Gamification (stats|leaderboard|rewards)
|
|
295
|
+
- 8 seviye: Tohum → Galaksi (0 → 12,000 XP)
|
|
296
|
+
- 7 farklı ödül (sticker → Founder statüsü)
|
|
297
|
+
- XP history (son 100 kayıt)
|
|
298
|
+
|
|
299
|
+
### 🎯 Phase 6 Canlı Test
|
|
300
|
+
- **SEO audit natureco.me**: 71/100 skor, H1 eksikliği, title uzunluğu tespit edildi
|
|
301
|
+
- **XP sistemi**: 0 XP, Lv.1 Tohum, sonraki Filiz (100 XP)
|
|
302
|
+
|
|
303
|
+
### 🔜 Coming
|
|
304
|
+
- v4.1.0 — Phase 7: Multi-agent orkestrasyon (sub-agents)
|
|
305
|
+
- v4.2.0 — Phase 8: Launch & marketing
|
|
306
|
+
|
|
307
|
+
### 🖥️ Headline
|
|
308
|
+
OpenClaw "kara kutu". NatureCo CLI **şeffaf** — tüm veriler tek bir local dashboard'da.
|
|
309
|
+
|
|
310
|
+
### ✨ Added
|
|
311
|
+
- **`src/utils/dashboard-server.js`** — Local web dashboard
|
|
312
|
+
- Port 7421, vanilla JS + HTML (framework yok)
|
|
313
|
+
- 6 widget: bugünkü maliyet, yüklü skill, aktif cron, audit kayıtları, provider bazlı maliyet, self-evolving proposals, son tool çağrıları
|
|
314
|
+
- Otomatik 5 saniyede bir yenileme (auto-refresh)
|
|
315
|
+
- JSON API endpoint (`/api`)
|
|
316
|
+
- PID file ile kolay durdurma
|
|
317
|
+
- **`src/commands/dashboard.js`** — `natureco dashboard [start|status|stop|url]`
|
|
318
|
+
- Port kontrolü (zaten çalışıyor mu?)
|
|
319
|
+
- Process kill ile temiz shutdown
|
|
320
|
+
- macOS/Windows/Linux uyumlu tarayıcı açma
|
|
321
|
+
|
|
322
|
+
### 📊 Phase 5 Dashboard Test
|
|
323
|
+
- HTTP 200, 8575 byte HTML
|
|
324
|
+
- API JSON: tüm Phase 3 proposal verileri görünüyor
|
|
325
|
+
- Real-time auto-refresh çalışıyor
|
|
326
|
+
|
|
327
|
+
### 🔜 Coming
|
|
328
|
+
- v4.0.0 — Phase 6: NatureCo özgü entegrasyonlar (naturehub, medium, seo)
|
|
329
|
+
- v4.1.0 — Phase 7: Multi-agent orkestrasyon
|
|
330
|
+
- v4.2.0 — Phase 8: Launch & marketing
|
|
331
|
+
|
|
332
|
+
### 💰 Headline
|
|
333
|
+
OpenClaw kullanıcıları ayda $50-200 token faturası ödüyor. NatureCo hedef: $5-15/ay akıllı routing ile.
|
|
334
|
+
|
|
335
|
+
### ✨ Added
|
|
336
|
+
- **`src/utils/cost-tracker.js`** — Maliyet hesaplama ve model router
|
|
337
|
+
- 21 model × provider için güncel fiyat tablosu (Groq, OpenAI, Anthropic, DeepSeek, Together, Fireworks, Ollama)
|
|
338
|
+
- Token → USD dönüşümü (input/output ayrı)
|
|
339
|
+
- **Model router**: 4 karmaşıklık seviyesi (simple/medium/complex/creative)
|
|
340
|
+
- Basit soru → llama-3.1-8b-instant ($0.05 in)
|
|
341
|
+
- Kod → llama-3.3-70b-versatile veya claude-sonnet
|
|
342
|
+
- Yaratıcı yazı → claude-sonnet veya gpt-4o
|
|
343
|
+
- **Otomatik karmaşıklık tahmini**: prompt içeriğinden (kod işaretleri, anahtar kelimeler, uzunluk)
|
|
344
|
+
- **Bütçe sistemi**: günlük $5, aylık $100 limit, %75 uyarı, %90 otomatik downgrade
|
|
345
|
+
- **`src/commands/cost.js`** — `natureco cost [today|week|month|all|budget|set|model|prices]`
|
|
346
|
+
- Renkli bar chart'lar
|
|
347
|
+
- Provider ve model bazlı breakdown
|
|
348
|
+
- Bütçe durumu görselleştirmesi
|
|
349
|
+
- **`bin/natureco.js`** — `cost` komutu kayıtlı
|
|
350
|
+
|
|
351
|
+
### 📊 Phase 4 Test Sonucu
|
|
352
|
+
- 3 farklı provider kullanımı kaydedildi → $0.0252 toplam
|
|
353
|
+
- Basit prompt: `groq:llama-3.1-8b-instant` önerildi (en ucuz)
|
|
354
|
+
- Karmaşık kod prompt: `groq:llama-3.3-70b-versatile` önerildi
|
|
355
|
+
- Bütçe görsel: %1 kullanım (günlük limit $5)
|
|
356
|
+
|
|
357
|
+
### 🔜 Coming
|
|
358
|
+
- v3.4.0 — Phase 5: Geliştirici deneyimi (dashboard)
|
|
359
|
+
- v4.0.0 — Phase 6-8: NatureCo native + launch
|
|
360
|
+
|
|
361
|
+
### 🧠 Headline
|
|
362
|
+
Kullanımın tekrar eden pattern'lerinden otomatik skill oluştur. Hermes Agent'tan ilham, NatureCo uyarlaması.
|
|
363
|
+
|
|
364
|
+
### ✨ Added
|
|
365
|
+
- **`src/utils/pattern-detector.js`** — Tool çağrı pattern detector
|
|
366
|
+
- Normalize: URL'ler, dosya yolları, sayılar, UUID'ler, ISO tarihler, email'ler, hex string'ler generic hale getirilir
|
|
367
|
+
- Sliding window (son 1-5 çağrı)
|
|
368
|
+
- Aynı pattern 3+ kez tekrar → proposal oluştur
|
|
369
|
+
- 24 saat cooldown (aynı pattern'i tekrar önerme)
|
|
370
|
+
- Persistent log: `~/.natureco/patterns.json`
|
|
371
|
+
- Proposal kayıt: `~/.natureco/skill-proposals.json`
|
|
372
|
+
- **`src/commands/skills.js`** — 4 yeni alt komut:
|
|
373
|
+
- `skills suggest` — Bekleyen proposal'ları göster
|
|
374
|
+
- `skills accept <id>` — Proposal'ı SKILL.md olarak oluştur
|
|
375
|
+
- `skills reject <id>` — Proposal'ı reddet
|
|
376
|
+
- `skills forget` — Pattern hafızasını sıfırla
|
|
377
|
+
- **Otomatik SKILL.md üretimi** — accepted proposal'lardan `~/.natureco/skills/<name>/SKILL.md`
|
|
378
|
+
- **Audit entegrasyonu** — Her skill kabulü `SKILL_AUTO` action'ı olarak loglanır
|
|
379
|
+
|
|
380
|
+
### 🐛 Fixed
|
|
381
|
+
- Pattern detector'da fingerprint bug'ı: normalize edilmiş string'ler tekrar normalize ediliyordu (boş pattern üretiyordu)
|
|
382
|
+
|
|
383
|
+
### 🔜 Coming
|
|
384
|
+
- v3.3.0 — Phase 4: Maliyet optimizasyonu (model router, token budget)
|
|
385
|
+
- v3.4.0 — Phase 5: Geliştirici deneyimi (dashboard)
|
|
386
|
+
|
|
387
|
+
### 🛡️ Headline
|
|
388
|
+
OpenClaw'ın en zayıf olduğu alan: güvenlik. v3.1.0 ile NatureCo CLI artık OpenClaw'tan **açık ara daha güvenli**.
|
|
389
|
+
|
|
390
|
+
### ✨ Added
|
|
391
|
+
- **`src/utils/audit.js`** — Merkezi audit log sistemi (JSONL, 30 gün retention, async, non-blocking)
|
|
392
|
+
- 19 action tipi (command, approval, tool, auth, secret, config, cron, skill, error, info)
|
|
393
|
+
- 24 saat istatistik, dosya bazlı günlük log'lar, auto-cleanup
|
|
394
|
+
- **`src/utils/secret-scanner.js`** — 22 bilinen secret pattern tespiti (OpenAI, Anthropic, Groq, AWS, GitHub, Slack, Stripe, Tavily, HuggingFace, Replicate, Firecrawl, NatureCo, JWT, private key, vs)
|
|
395
|
+
- Shannon entropi analizi (bilinmeyen format yüksek entropi secret'lar)
|
|
396
|
+
- Otomatik maskeleme (`sk-a***9012`)
|
|
397
|
+
- Cross-platform dosya tarama (skip: node_modules, .git, dist, lock files)
|
|
398
|
+
- **`src/commands/audit.js`** — `natureco audit [today|stats|show|search|files|cleanup|tail]`
|
|
399
|
+
- Renkli action kategorileri
|
|
400
|
+
- 24 saat bar chart
|
|
401
|
+
- Canlı tail modu (yeni kayıtları real-time göster)
|
|
402
|
+
- **`bin/natureco.js`** — `audit` komutu kayıtlı
|
|
403
|
+
- **`src/commands/doctor.js`** — 2 yeni check:
|
|
404
|
+
- `auditLog`: Audit dizini yazılabilir mi?
|
|
405
|
+
- `secretsClean`: Çalışma dizininde secret var mı?
|
|
406
|
+
|
|
407
|
+
### 📊 Phase 2 Doctor Sonuçları
|
|
408
|
+
- **10 check** toplam (Phase 1'de 8, ilk halde 5)
|
|
409
|
+
- 6/10 geçti (fresh setup'ta config henüz yok — beklenen)
|
|
410
|
+
|
|
411
|
+
### 🔜 Coming
|
|
412
|
+
- v3.2.0 — Phase 3: Self-evolving skills
|
|
413
|
+
- v3.3.0 — Phase 4: Maliyet optimizasyonu
|
|
414
|
+
- v3.4.0 — Phase 5: Geliştirici deneyimi
|
|
415
|
+
|
|
416
|
+
### 🔥 Headline
|
|
417
|
+
OpenClaw'dan daha güvenli, daha hızlı, daha ucuz. İlk kurulum 60 saniye.
|
|
418
|
+
|
|
419
|
+
### ✨ Added
|
|
420
|
+
- **First-run auto-detection** (`bin/natureco.js`) — `natureco` (boş argüman) kurulum yoksa otomatik setup wizard'a yönlendirir
|
|
421
|
+
- **`src/utils/branding.js`** — merkezi brand kimliği (renkler, ASCII art, daily tip)
|
|
422
|
+
- **Doctor 3 yeni check:** `apiKeyValid`, `providerReachable`, `dataDirs` (auto-fix ile)
|
|
423
|
+
- **Setup wizard** artık tam NatureCo logosuyla açılıyor (eski ASCII cat yerine)
|
|
424
|
+
- **README v3.0 notları + OpenClaw karşılaştırma tablosu**
|
|
425
|
+
|
|
426
|
+
### 🐛 Fixed
|
|
427
|
+
- **Doctor `diskSpace` bug:** `os.freemem()` (RAM) kullanıyordu, artık gerçek disk alanı (`df -k`, Windows: `Get-PSDrive`)
|
|
428
|
+
- **README/package.json versiyon senkron:** 2.19.1 → 3.0.0
|
|
429
|
+
- **README Node engine:** >=16 → >=18 (package.json ile uyumlu)
|
|
430
|
+
|
|
431
|
+
### 📁 Audit (Phase 0)
|
|
432
|
+
- 152 JS dosyası, syntax %100 temiz, 0 require hatası
|
|
433
|
+
- 10 TODO/FIXME, 10 boş fonksiyon, 5 deprecated existsSync tespit edildi
|
|
434
|
+
- AUDIT.md oluşturuldu
|
|
435
|
+
|
|
436
|
+
### 🔜 Coming in next versions
|
|
437
|
+
- v3.1.0 — Phase 2: Defense-in-depth güvenlik (approval v2, audit log, sandbox)
|
|
438
|
+
- v3.2.0 — Phase 3: Self-evolving skills
|
|
439
|
+
- v3.3.0 — Phase 4: Maliyet optimizasyonu (model router)
|
|
440
|
+
- v3.4.0 — Phase 5: Geliştirici deneyimi (dashboard)
|
|
441
|
+
- v4.0.0 — Phase 6-8: NatureCo native + launch
|
|
442
|
+
|
|
443
|
+
## [1.0.0] - 2026-05-10
|
|
444
|
+
|
|
445
|
+
### Added
|
|
446
|
+
|
|
447
|
+
#### Core Features
|
|
448
|
+
- **First-Time Setup Wizard**
|
|
449
|
+
- Automatic setup on first run
|
|
450
|
+
- Interactive API key validation with live check
|
|
451
|
+
- Bot selection from user's bots
|
|
452
|
+
- Optional Telegram integration
|
|
453
|
+
- Creates `~/.natureco/` directory structure
|
|
454
|
+
- Beautiful boxed interface
|
|
455
|
+
- Can be run manually with `natureco setup`
|
|
456
|
+
|
|
457
|
+
- **Authentication System**
|
|
458
|
+
- Login/logout with API key
|
|
459
|
+
- Secure storage in `~/.natureco/config.json`
|
|
460
|
+
- Support for both `nco_` and `nc_` key formats
|
|
461
|
+
|
|
462
|
+
- **Bot Management**
|
|
463
|
+
- List available bots
|
|
464
|
+
- Interactive chat with bots
|
|
465
|
+
- Bot switching within chat
|
|
466
|
+
|
|
467
|
+
- **Gateway Screen**
|
|
468
|
+
- Beautiful boxed interface
|
|
469
|
+
- Login status display
|
|
470
|
+
- Active bot information
|
|
471
|
+
- Skill and MCP server counts
|
|
472
|
+
|
|
473
|
+
#### Project Management
|
|
474
|
+
- **Project Initialization**
|
|
475
|
+
- `natureco init` command
|
|
476
|
+
- Creates `.natureco/` folder structure
|
|
477
|
+
- Interactive bot and skill selection
|
|
478
|
+
- Generates `config.json` and `AGENTS.md`
|
|
479
|
+
|
|
480
|
+
- **Configuration System**
|
|
481
|
+
- Global config: `~/.natureco/config.json`
|
|
482
|
+
- Project config: `.natureco/config.json`
|
|
483
|
+
- Get/set/list commands
|
|
484
|
+
- Hierarchical config management
|
|
485
|
+
|
|
486
|
+
#### Skills System
|
|
487
|
+
- **Three-Tier Hierarchy**
|
|
488
|
+
- Built-in skills (code-review, summarize, translate)
|
|
489
|
+
- User skills (`~/.natureco/skills/`)
|
|
490
|
+
- Project skills (`.natureco/skills/`)
|
|
491
|
+
|
|
492
|
+
- **Skill Management**
|
|
493
|
+
- List installed skills
|
|
494
|
+
- Install from NatureHub
|
|
495
|
+
- Remove skills
|
|
496
|
+
- Update all skills
|
|
497
|
+
- Create new skill templates
|
|
498
|
+
|
|
499
|
+
- **Skill Features**
|
|
500
|
+
- Automatic prompt injection in chat
|
|
501
|
+
- Requirement gating (bins, env vars, OS)
|
|
502
|
+
- SKILL.md format with frontmatter
|
|
503
|
+
- Metadata validation
|
|
504
|
+
|
|
505
|
+
#### Chat Features
|
|
506
|
+
- **Interactive Chat**
|
|
507
|
+
- Real-time conversation with bots
|
|
508
|
+
- Readline interface with arrow key support
|
|
509
|
+
- Command history (last 100 commands)
|
|
510
|
+
- Conversation history saved to `~/.natureco/history/`
|
|
511
|
+
|
|
512
|
+
- **Chat Commands**
|
|
513
|
+
- `/clear` - Clear screen
|
|
514
|
+
- `/bot [name]` - Switch bot or list bots
|
|
515
|
+
- `/skills` - Show active skills
|
|
516
|
+
- `/help` - Show chat help
|
|
517
|
+
- `exit`, `quit` - Exit chat
|
|
518
|
+
|
|
519
|
+
- **Quick Commands**
|
|
520
|
+
- `natureco ask "<question>"` - Single-shot questions
|
|
521
|
+
- `natureco run <script.md>` - Run markdown scripts
|
|
522
|
+
- Pipe support for ask command
|
|
523
|
+
|
|
524
|
+
#### MCP Server Support
|
|
525
|
+
- **Server Management**
|
|
526
|
+
- List MCP servers
|
|
527
|
+
- Add servers (interactive or template-based)
|
|
528
|
+
- Remove servers
|
|
529
|
+
- Test connections
|
|
530
|
+
- Enable/disable servers
|
|
531
|
+
|
|
532
|
+
- **Ready Templates**
|
|
533
|
+
- `filesystem` - File system operations
|
|
534
|
+
- `github` - GitHub operations
|
|
535
|
+
- `postgres` - PostgreSQL database
|
|
536
|
+
- `sqlite` - SQLite database
|
|
537
|
+
- `brave-search` - Web search
|
|
538
|
+
|
|
539
|
+
- **Configuration**
|
|
540
|
+
- Stored in `~/.natureco/config.json`
|
|
541
|
+
- Environment variable support
|
|
542
|
+
- Auto-approve lists
|
|
543
|
+
- Disable/enable flags
|
|
544
|
+
|
|
545
|
+
#### AGENTS.md Support
|
|
546
|
+
- Project-specific bot instructions
|
|
547
|
+
- Automatic prompt injection in chat
|
|
548
|
+
- Markdown format
|
|
549
|
+
- Created during `natureco init`
|
|
550
|
+
|
|
551
|
+
#### Update System
|
|
552
|
+
- **Auto-Update Notifications**
|
|
553
|
+
- Checks every 24 hours
|
|
554
|
+
- Notifies when new version available
|
|
555
|
+
- Uses update-notifier package
|
|
556
|
+
|
|
557
|
+
- **Manual Update Check**
|
|
558
|
+
- `natureco update` command
|
|
559
|
+
- Shows current and latest versions
|
|
560
|
+
- Provides update instructions
|
|
561
|
+
|
|
562
|
+
#### UI/UX
|
|
563
|
+
- Colorful terminal interface with chalk
|
|
564
|
+
- Loading animations with spinners
|
|
565
|
+
- Boxed gateway screen
|
|
566
|
+
- Monospace formatting
|
|
567
|
+
- Error messages in Turkish
|
|
568
|
+
- Cross-platform support (Windows, macOS, Linux)
|
|
569
|
+
|
|
570
|
+
### Technical Details
|
|
571
|
+
|
|
572
|
+
#### Dependencies
|
|
573
|
+
- `chalk@4.1.2` - Terminal colors
|
|
574
|
+
- `commander@11.1.0` - CLI framework
|
|
575
|
+
- `inquirer@8.2.7` - Interactive prompts
|
|
576
|
+
- `boxen@5.1.2` - Terminal boxes
|
|
577
|
+
- `ora@5.4.1` - Spinners
|
|
578
|
+
- `conf@10.2.0` - Config management
|
|
579
|
+
- `update-notifier@6.0.2` - Update notifications
|
|
580
|
+
|
|
581
|
+
#### API Integration
|
|
582
|
+
- Base URL: `https://api.natureco.me`
|
|
583
|
+
- Endpoints:
|
|
584
|
+
- `GET /api/v1/bots` - List bots
|
|
585
|
+
- `POST /api/agent/chat` - Chat with bot
|
|
586
|
+
- Headers:
|
|
587
|
+
- `Authorization: Bearer <apiKey>`
|
|
588
|
+
- `X-User-ID: cli-user`
|
|
589
|
+
- Platform identifier: `cli`
|
|
590
|
+
|
|
591
|
+
#### File Structure
|
|
592
|
+
```
|
|
593
|
+
~/.natureco/
|
|
594
|
+
├── config.json # Global config
|
|
595
|
+
├── skills/ # User skills
|
|
596
|
+
└── history/ # Chat history
|
|
597
|
+
└── <bot-id>.json
|
|
598
|
+
|
|
599
|
+
.natureco/ # Project folder
|
|
600
|
+
├── config.json # Project config
|
|
601
|
+
├── AGENTS.md # Bot instructions
|
|
602
|
+
└── skills/ # Project skills
|
|
603
|
+
```
|
|
604
|
+
|
|
605
|
+
### Commands
|
|
606
|
+
|
|
607
|
+
```bash
|
|
608
|
+
natureco # Gateway screen (runs setup if needed)
|
|
609
|
+
natureco setup # Run setup wizard
|
|
610
|
+
natureco login # Login
|
|
611
|
+
natureco logout # Logout
|
|
612
|
+
natureco bots # List bots
|
|
613
|
+
natureco chat <bot> # Start chat
|
|
614
|
+
natureco ask "<question>" # Quick question
|
|
615
|
+
natureco run <script.md> # Run script
|
|
616
|
+
natureco init # Initialize project
|
|
617
|
+
natureco skills [action] # Manage skills
|
|
618
|
+
natureco mcp [action] # Manage MCP servers
|
|
619
|
+
natureco config <action> # Manage config
|
|
620
|
+
natureco update # Check updates
|
|
621
|
+
natureco help # Show help
|
|
622
|
+
```
|
|
623
|
+
|
|
624
|
+
### Requirements
|
|
625
|
+
- Node.js >= 18.0.0 (for native fetch)
|
|
626
|
+
- npm or yarn
|
|
627
|
+
- NatureCo API key
|
|
628
|
+
|
|
629
|
+
### License
|
|
630
|
+
MIT
|
|
631
|
+
|
|
632
|
+
## [4.9.1] - 2026-06-22 — "SELF-COMPLETE TOOLSET"
|
|
633
|
+
|
|
634
|
+
### Yeni: 14 Tool Eklendi (Toplam: 45)
|
|
635
|
+
Parton'un vizyonu: "kendi araçlarimi ekle". Hermes'te olan araçlarin aynisi.
|
|
636
|
+
|
|
637
|
+
#### macOS Native Tools (6 yeni)
|
|
638
|
+
- **calendar_add** - macOS Calendar'a etkinlik ekle (AppleScript)
|
|
639
|
+
- **reminder_add** - macOS Reminders'a hatirlatici
|
|
640
|
+
- **notes_add** - Apple Notes'a not
|
|
641
|
+
- **mac_notify** - Notification Center bildirimi
|
|
642
|
+
- **mac_app_open** / **mac_app_quit** - Uygulama kontrol
|
|
643
|
+
|
|
644
|
+
#### Sistem & Shell (5 yeni)
|
|
645
|
+
- **code_execution** - Python/Node/Bash sandbox
|
|
646
|
+
- **shell_command** - Tek shell komutu (find, ls, df, vb.)
|
|
647
|
+
- **http_request** - HTTP GET/POST/PUT/DELETE
|
|
648
|
+
- **bash** (zaten vardi, guncellendi)
|
|
649
|
+
|
|
650
|
+
#### Dosya & Arama (4 yeni)
|
|
651
|
+
- **file_search** - Glob pattern ile dosya arama (**/*.js)
|
|
652
|
+
- **grep_search** - Icerik arama (ripgrep veya grep)
|
|
653
|
+
- **filesystem**, **list_dir** (zaten vardi)
|
|
654
|
+
|
|
655
|
+
#### Yönetim & Verimlilik (6 yeni)
|
|
656
|
+
- **todo_write** - Yapilacaklar listesi (list/add/done/remove)
|
|
657
|
+
- **kanban** - Kanban board (todo/in_progress/done kolonlar)
|
|
658
|
+
- **memory_search** - Kalici hafizada ve session'larda arama
|
|
659
|
+
- **cron_create** - Zamanlanmis gorev olusturma
|
|
660
|
+
- **notebook_edit** - Jupyter notebook hucre duzenleme
|
|
661
|
+
- **delegate_task** - Alt-agent gorev devretme
|
|
662
|
+
|
|
663
|
+
#### AI & Medya (zaten vardi + Pollinations fallback)
|
|
664
|
+
- **image_generation** - v4.8.4'te Pollinations.ai (ucretsiz) eklendi
|
|
665
|
+
- **media_understanding** - Gorsel analiz (OpenAI/Anthropic/Groq)
|
|
666
|
+
- **text_to_speech** - macOS say / edge-tts
|
|
667
|
+
|
|
668
|
+
### İyilestirmeler
|
|
669
|
+
- **Tool calling tam entegre** - v4.8.0'da basladi, v4.9.1'de tamamlandi
|
|
670
|
+
- **OpenAI uyumlu tool calling** - MiniMax, OpenAI, Anthropic, Groq hepsi
|
|
671
|
+
- **Auto-fallback** - Key yoksa ucretsiz alternatife gec (Pollinations)
|
|
672
|
+
- **Tool UI feedback** - Her tool cagrisi 🔧 Tool: ... ile gosteriliyor
|
|
673
|
+
|
|
674
|
+
### Düzeltmeler
|
|
675
|
+
- **macos.js** (tek dosya, birden fazla tool) → 6 ayri dosyaya bolundu
|
|
676
|
+
- **file_search.js** syntax hatasi (JSDoc icindeki yildiz) duzeltildi
|
|
677
|
+
- **REPL'in tool registry** - Yeni tool'lar REPL acilisinda otomatik yukleniyor
|
|
678
|
+
|
|
679
|
+
### Toplam Ilerleme
|
|
680
|
+
- v2.23 (baslangic): ~12 tool
|
|
681
|
+
- v3.0-v4.0: +5 tool (brand, audit, cost, dashboard, seo)
|
|
682
|
+
- v4.5-v4.7: +8 tool (xp, team, naturehub, medium, repl, vb.)
|
|
683
|
+
- v4.8: Tool calling tam entegre (28 tool)
|
|
684
|
+
- **v4.9.1: 45 tool** - Parton'un vizyonu: "kendi araçlarim olsun"
|
|
685
|
+
|
|
686
|
+
### Kullanim
|
|
687
|
+
```bash
|
|
688
|
+
natureco repl
|
|
689
|
+
> "Yarin 14:00 doktor randevum var" # calendar_add
|
|
690
|
+
> "Spotify ac" # mac_app_open
|
|
691
|
+
> "src/ icindeki TODO'lari bul" # grep_search
|
|
692
|
+
> "Python ile 2+2 hesapla" # code_execution
|
|
693
|
+
> "Tum TODO'lari goster" # todo_write
|
|
694
|
+
```
|
|
695
|
+
|
|
696
|
+
## [5.1.0] - 2026-06-22 — "SELF-GENERATING SKILLS"
|
|
697
|
+
|
|
698
|
+
### Yeni: skill_generate Tool (48. Tool)
|
|
699
|
+
Parton'un vizyonu: "Ihtiyaca gore skill yoksa kendi uretsin". LLM ile yeni bir skill talimati uretir, diske kaydeder ve hemen kullanima sunar.
|
|
700
|
+
|
|
701
|
+
#### Nasil calisir
|
|
702
|
+
1. Kullanici REPL'de bir istek yapar (ornek: "PDF dosyalarini birlestir")
|
|
703
|
+
2. Mevcut 47 tool/skill ile cozum yoksa `skill_generate` otomatik devreye girer
|
|
704
|
+
3. LLM'a (MiniMax, OpenAI, vs) skill taslagi uretmesi icin istek gonderilir
|
|
705
|
+
4. SKILL.md + metadata.json `~/.natureco/skills/<auto-name>/` altina kaydedilir
|
|
706
|
+
5. Skill hemen REPL'de kullanilabilir olur
|
|
707
|
+
|
|
708
|
+
#### Test
|
|
709
|
+
```
|
|
710
|
+
> "PDF dosyalarini tek bir PDF dosyasinda birlestir"
|
|
711
|
+
Tool: skill_generate
|
|
712
|
+
Args: {"taskDescription":"..."}
|
|
713
|
+
Result: skill olusturuldu, hemen kullanilabilir!
|
|
714
|
+
```
|
|
715
|
+
|
|
716
|
+
### Duzeltmeler
|
|
717
|
+
- **file_search regex bug**: `**/*.js` pattern'i patliyordu (`Nothing to repeat`). Placeholder + escape sirasini degistirdik, artik calisiyor.
|
|
718
|
+
- **v4.5.1 tui.C.cyan/accent**: TUI engine palette'inde yoktu, `amber` ile degistirildi.
|
|
719
|
+
- **code_v5.js legacy code komutu**: v5.0'da eski v2.23 kodu eski yere fallback (`--legacy` flag).
|
|
720
|
+
|
|
721
|
+
### Istatistikler (final)
|
|
722
|
+
- **Toplam tool**: 48 (Phase 9'da 1'den basladi)
|
|
723
|
+
- **Toplam komut**: 100+
|
|
724
|
+
- **Toplam satır kod**: ~6000 (bin + src)
|
|
725
|
+
- **Phase 1-9**: 9 buyuk iterasyon
|
|
726
|
+
- **Patch versiyonlari (v4.6-v5.1)**: 14+
|
|
727
|
+
- **npm latest**: 5.1.0
|
|
728
|
+
- **CHANGELOG**: tam
|
|
729
|
+
- **README**: v4.5+, guncel
|
|
730
|
+
- **Doc (natureco.me/cli)**: 9116 char, hazir
|
|
731
|
+
- **Pazarlama**: HN, Reddit, Medium yazilari hazir
|
|
732
|
+
|
|
733
|
+
### Ozellik Matrisi (Final)
|
|
734
|
+
- **AI & Media (6):** image_generation, media_understanding, text_to_speech, llm_task, canvas, audio_understanding
|
|
735
|
+
- **Dosya (6):** read_file, write_file, list_dir, filesystem, file_search, grep_search
|
|
736
|
+
- **Sistem (5):** bash, code_execution, shell_command, http_request, git
|
|
737
|
+
- **Web (6):** web_search, web_readability, exa_search, duckduckgo, firecrawl, browser
|
|
738
|
+
- **macOS Native (6):** calendar_add, reminder_add, notes_add, mac_notify, mac_app_open, mac_app_quit
|
|
739
|
+
- **Verimlilik (5):** todo_write, kanban, memory_search, cron_create, notebook_edit
|
|
740
|
+
- **Sistem Tools (5):** delegate_task, skills_marketplace, skills_autoload, skill_generate, audio_understanding
|
|
741
|
+
- **Diger (8):** document_extract, image_generation, duckduckgo, exa_search, firecrawl, http, audio_understanding, document_extract
|
|
742
|
+
|
|
743
|
+
### Yayin Bilgisi
|
|
744
|
+
- **NPM**: https://npmjs.com/package/natureco-cli
|
|
745
|
+
- **Versiyon**: 5.1.0
|
|
746
|
+
- **Kurulum**: `npm install -g natureco-cli`
|
|
747
|
+
- **Lisans**: MIT
|
|
748
|
+
|
|
749
|
+
## [5.3.0] - 2026-06-22 — "VOICE EDITION + AUTO-MEMORY"
|
|
750
|
+
|
|
751
|
+
### Yeni: voice_chat Tool (52. Tool)
|
|
752
|
+
Parton'un vizyonu: "Bilgisayarla konusayim".
|
|
753
|
+
- macOS'ta mikrofondan ses kaydi (`rec` + `sox`)
|
|
754
|
+
- Whisper API ile ses → metin donusumu (Turkce)
|
|
755
|
+
- Cevabi macOS `say` ile sesli oku
|
|
756
|
+
- Hands-free agent kullanimi
|
|
757
|
+
|
|
758
|
+
### Yeni: Otomatik Memory Extractor (REPL'e entegre)
|
|
759
|
+
v5.3.0 ile REPL, kullanicinin kişisel bilgi verdigini anlayip otomatik kaydeder:
|
|
760
|
+
- 'adım X' → memory'ye 'Adı: X' yaz
|
|
761
|
+
- 'sevdiğim X' → preference kategorisinde
|
|
762
|
+
- 'ben X yapıyorum' → work kategorisinde
|
|
763
|
+
- 'X tutkunuyum' → hobby kategorisinde
|
|
764
|
+
- 'sen benim patronumsun' → botName='Patronum' olarak degistir
|
|
765
|
+
- 'adın X olsun' → botName=X olarak kaydet
|
|
766
|
+
|
|
767
|
+
Bu sayede Parton'un vizyonu gerceklesiyor: "her seferinde hatirlatmayacagim, beni hatirlayacak".
|
|
768
|
+
|
|
769
|
+
### Bagimlilik Temizligi (v5.2.1)
|
|
770
|
+
- chalk 4 → 5
|
|
771
|
+
- commander 11 → 12
|
|
772
|
+
- pino 8 → 9
|
|
773
|
+
- json5 kaldirildi (transitive dependency)
|
|
774
|
+
- npm audit temizlendi
|
|
775
|
+
|
|
776
|
+
### Testler (51 → 52 tool)
|
|
777
|
+
- %88 basarili test (Parton'un son test raporu)
|
|
778
|
+
- Tum Phase 1 bug'lari duzeltildi
|
|
779
|
+
- macOS native integration tamamlandi
|