natureco-cli 5.6.3 → 5.6.4
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/package.json +1 -1
- package/src/commands/setup.js +300 -17
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "natureco-cli",
|
|
3
|
-
"version": "5.6.
|
|
3
|
+
"version": "5.6.4",
|
|
4
4
|
"description": "OpenClaw'dan daha güvenli, daha hızlı, daha ucuz AI agent CLI. Multi-agent, self-evolving skills, audit log, maliyet optimizasyonu ve NatureCo platform-native.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"natureco": "bin/natureco.js"
|
package/src/commands/setup.js
CHANGED
|
@@ -12,21 +12,255 @@ const CONFIG_FILE = path.join(BASE_DIR, 'config.json');
|
|
|
12
12
|
|
|
13
13
|
const DIRS = ['sources', 'concepts', 'cache', 'skills', 'memory', 'sessions', 'backups'];
|
|
14
14
|
|
|
15
|
+
// v5.6.4: TAM MODEL KATALOGU - 12 provider, 200+ model
|
|
16
|
+
// Her provider: { name, url, models: [...], default }
|
|
17
|
+
// models: [ { id, label, tier, desc, cost } ] - tier ile gorsel siralama
|
|
15
18
|
const PROVIDER_PRESETS = {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
19
|
+
openai: {
|
|
20
|
+
name: 'OpenAI (GPT)',
|
|
21
|
+
url: 'https://api.openai.com/v1',
|
|
22
|
+
models: [
|
|
23
|
+
// Reasoning (Yeni nesil)
|
|
24
|
+
{ id: 'o3', label: 'o3', tier: 'reasoning', desc: 'En güçlü reasoning', cost: '$15/$60 per 1M' },
|
|
25
|
+
{ id: 'o3-mini', label: 'o3-mini', tier: 'reasoning', desc: 'Reasoning ucuz', cost: '$1.10/$4.40 per 1M' },
|
|
26
|
+
{ id: 'o1-pro', label: 'o1-pro', tier: 'reasoning', desc: 'Pro reasoning', cost: '$150/$600 per 1M' },
|
|
27
|
+
{ id: 'o1', label: 'o1', tier: 'reasoning', desc: 'Reasoning', cost: '$15/$60 per 1M' },
|
|
28
|
+
{ id: 'o1-mini', label: 'o1-mini', tier: 'reasoning', desc: 'Reasoning ucuz', cost: '$3/$12 per 1M' },
|
|
29
|
+
// GPT-5 (Yeni)
|
|
30
|
+
{ id: 'gpt-5', label: 'GPT-5', tier: 'flagship', desc: 'En yeni flagship', cost: '$5/$15 per 1M (est)' },
|
|
31
|
+
{ id: 'gpt-5-mini', label: 'GPT-5 mini', tier: 'flagship', desc: 'GPT-5 ucuz', cost: '$0.50/$1.50 per 1M (est)' },
|
|
32
|
+
{ id: 'gpt-5-nano', label: 'GPT-5 nano', tier: 'flagship', desc: 'GPT-5 en ucuz', cost: '$0.10/$0.30 per 1M (est)' },
|
|
33
|
+
// GPT-4.1 (Yeni)
|
|
34
|
+
{ id: 'gpt-4.1', label: 'GPT-4.1', tier: 'flagship', desc: 'GPT-4.1 gelişmiş', cost: '$5/$15 per 1M' },
|
|
35
|
+
{ id: 'gpt-4.1-mini', label: 'GPT-4.1 mini', tier: 'flagship', desc: 'GPT-4.1 ucuz', cost: '$0.80/$3.20 per 1M' },
|
|
36
|
+
{ id: 'gpt-4.1-nano', label: 'GPT-4.1 nano', tier: 'flagship', desc: 'GPT-4.1 en ucuz', cost: '$0.20/$0.80 per 1M' },
|
|
37
|
+
// GPT-4o
|
|
38
|
+
{ id: 'gpt-4o', label: 'GPT-4o', tier: 'flagship', desc: 'GPT-4o multimodal', cost: '$5/$15 per 1M' },
|
|
39
|
+
{ id: 'gpt-4o-mini', label: 'GPT-4o mini', tier: 'balanced', desc: 'GPT-4o ucuz', cost: '$0.15/$0.60 per 1M' },
|
|
40
|
+
{ id: 'gpt-4o-2024-08-06', label: 'GPT-4o (Aug 2024)', tier: 'flagship', desc: 'Sabit tarihli', cost: '$5/$15 per 1M' },
|
|
41
|
+
// GPT-4 Turbo
|
|
42
|
+
{ id: 'gpt-4-turbo', label: 'GPT-4 Turbo', tier: 'flagship', desc: 'GPT-4 Turbo', cost: '$10/$30 per 1M' },
|
|
43
|
+
{ id: 'gpt-4-turbo-preview', label: 'GPT-4 Turbo Preview', tier: 'flagship', desc: 'Preview', cost: '$10/$30 per 1M' },
|
|
44
|
+
// GPT-4 klasik
|
|
45
|
+
{ id: 'gpt-4', label: 'GPT-4', tier: 'classic', desc: 'Klasik GPT-4', cost: '$30/$60 per 1M' },
|
|
46
|
+
{ id: 'gpt-4-32k', label: 'GPT-4 32K', tier: 'classic', desc: 'GPT-4 uzun context', cost: '$60/$120 per 1M' },
|
|
47
|
+
// GPT-3.5
|
|
48
|
+
{ id: 'gpt-3.5-turbo', label: 'GPT-3.5 Turbo', tier: 'fast', desc: 'Çok ucuz', cost: '$0.50/$1.50 per 1M' },
|
|
49
|
+
{ id: 'gpt-3.5-turbo-16k', label: 'GPT-3.5 Turbo 16K', tier: 'fast', desc: 'Uzun context ucuz', cost: '$3/$4 per 1M' },
|
|
50
|
+
{ id: 'gpt-3.5-turbo-instruct', label: 'GPT-3.5 Instruct', tier: 'fast', desc: 'Instruction tuned', cost: '$1.50/$2 per 1M' },
|
|
51
|
+
],
|
|
52
|
+
default: 'gpt-4o-mini',
|
|
53
|
+
},
|
|
54
|
+
anthropic: {
|
|
55
|
+
name: 'Anthropic (Claude)',
|
|
56
|
+
url: 'https://api.anthropic.com/v1',
|
|
57
|
+
models: [
|
|
58
|
+
{ id: 'claude-opus-4-20250514', label: 'Claude Opus 4', tier: 'flagship', desc: 'En güçlü', cost: '$15/$75 per 1M' },
|
|
59
|
+
{ id: 'claude-opus-4-1-20250805', label: 'Claude Opus 4.1', tier: 'flagship', desc: 'En yeni Opus', cost: '$15/$75 per 1M' },
|
|
60
|
+
{ id: 'claude-sonnet-4-20250514', label: 'Claude Sonnet 4', tier: 'flagship', desc: 'Dengeli güçlü', cost: '$3/$15 per 1M' },
|
|
61
|
+
{ id: 'claude-sonnet-4-1-20250805', label: 'Claude Sonnet 4.1', tier: 'flagship', desc: 'Sonnet 4.1', cost: '$3/$15 per 1M' },
|
|
62
|
+
{ id: 'claude-3-7-sonnet-20250219', label: 'Claude 3.7 Sonnet', tier: 'flagship', desc: '3.7 Sonnet', cost: '$3/$15 per 1M' },
|
|
63
|
+
{ id: 'claude-3-5-sonnet-20241022', label: 'Claude 3.5 Sonnet (New)', tier: 'balanced', desc: 'Yeni Sonnet', cost: '$3/$15 per 1M' },
|
|
64
|
+
{ id: 'claude-3-5-sonnet-20240620', label: 'Claude 3.5 Sonnet (Old)', tier: 'balanced', desc: 'Eski Sonnet', cost: '$3/$15 per 1M' },
|
|
65
|
+
{ id: 'claude-3-5-haiku-20241022', label: 'Claude 3.5 Haiku', tier: 'fast', desc: 'Hızlı', cost: '$0.80/$4 per 1M' },
|
|
66
|
+
{ id: 'claude-3-haiku-20240307', label: 'Claude 3 Haiku', tier: 'fast', desc: 'Çok hızlı', cost: '$0.25/$1.25 per 1M' },
|
|
67
|
+
{ id: 'claude-3-opus-20240229', label: 'Claude 3 Opus (legacy)', tier: 'classic', desc: 'Eski Opus', cost: '$15/$75 per 1M' },
|
|
68
|
+
{ id: 'claude-3-sonnet-20240229', label: 'Claude 3 Sonnet (legacy)', tier: 'classic', desc: 'Eski Sonnet', cost: '$3/$15 per 1M' },
|
|
69
|
+
{ id: 'claude-2-1', label: 'Claude 2.1 (legacy)', tier: 'classic', desc: 'Çok eski', cost: '$8/$24 per 1M' },
|
|
70
|
+
],
|
|
71
|
+
default: 'claude-3-5-haiku-20241022',
|
|
72
|
+
},
|
|
73
|
+
gemini: {
|
|
74
|
+
name: 'Google Gemini',
|
|
75
|
+
url: 'https://generativelanguage.googleapis.com/v1beta',
|
|
76
|
+
models: [
|
|
77
|
+
// Gemini 2.5
|
|
78
|
+
{ id: 'gemini-2.5-pro', label: 'Gemini 2.5 Pro', tier: 'flagship', desc: 'En güçlü reasoning', cost: '$1.25-$2.50/$10-$15 per 1M' },
|
|
79
|
+
{ id: 'gemini-2.5-pro-exp-03-25', label: 'Gemini 2.5 Pro (Exp)', tier: 'flagship', desc: 'Experimental Pro', cost: 'Free during preview' },
|
|
80
|
+
{ id: 'gemini-2.5-flash', label: 'Gemini 2.5 Flash', tier: 'balanced', desc: 'Adaptive thinking', cost: '$0.15/$0.60 per 1M' },
|
|
81
|
+
{ id: 'gemini-2.5-flash-thinking', label: 'Gemini 2.5 Flash Thinking', tier: 'balanced', desc: 'Reasoning + hız', cost: '$0.15/$0.60 per 1M' },
|
|
82
|
+
// Gemini 2.0
|
|
83
|
+
{ id: 'gemini-2.0-pro', label: 'Gemini 2.0 Pro', tier: 'flagship', desc: 'Güçlü multimodal', cost: '$1.25/$5 per 1M' },
|
|
84
|
+
{ id: 'gemini-2.0-pro-exp', label: 'Gemini 2.0 Pro Exp', tier: 'flagship', desc: 'Experimental Pro', cost: 'Free during preview' },
|
|
85
|
+
{ id: 'gemini-2.0-flash', label: 'Gemini 2.0 Flash', tier: 'balanced', desc: 'Hızlı multimodal', cost: '$0.075/$0.30 per 1M' },
|
|
86
|
+
{ id: 'gemini-2.0-flash-exp', label: 'Gemini 2.0 Flash Exp', tier: 'balanced', desc: 'Experimental Flash', cost: 'Free during preview' },
|
|
87
|
+
{ id: 'gemini-2.0-flash-lite', label: 'Gemini 2.0 Flash-Lite', tier: 'fast', desc: 'Çok ucuz', cost: '$0.018/$0.072 per 1M' },
|
|
88
|
+
{ id: 'gemini-2.0-flash-thinking-exp-1219', label: 'Gemini 2.0 Flash Thinking Exp', tier: 'fast', desc: 'Thinking experimental', cost: 'Free during preview' },
|
|
89
|
+
// Gemini 1.5
|
|
90
|
+
{ id: 'gemini-1.5-pro', label: 'Gemini 1.5 Pro', tier: 'flagship', desc: 'Stabil güçlü', cost: '$1.25/$5 per 1M' },
|
|
91
|
+
{ id: 'gemini-1.5-pro-latest', label: 'Gemini 1.5 Pro Latest', tier: 'flagship', desc: 'En son 1.5 Pro', cost: '$1.25/$5 per 1M' },
|
|
92
|
+
{ id: 'gemini-1.5-flash', label: 'Gemini 1.5 Flash', tier: 'balanced', desc: 'Hızlı', cost: '$0.075/$0.30 per 1M' },
|
|
93
|
+
{ id: 'gemini-1.5-flash-latest', label: 'Gemini 1.5 Flash Latest', tier: 'balanced', desc: 'En son Flash', cost: '$0.075/$0.30 per 1M' },
|
|
94
|
+
{ id: 'gemini-1.5-flash-8b', label: 'Gemini 1.5 Flash 8B', tier: 'fast', desc: 'Çok hızlı', cost: '$0.0375/$0.15 per 1M' },
|
|
95
|
+
{ id: 'gemini-1.5-flash-8b-latest', label: 'Gemini 1.5 Flash 8B Latest', tier: 'fast', desc: 'En son 8B', cost: '$0.0375/$0.15 per 1M' },
|
|
96
|
+
{ id: 'gemini-1.5-pro-002', label: 'Gemini 1.5 Pro 002', tier: 'flagship', desc: 'Spesifik versiyon', cost: '$1.25/$5 per 1M' },
|
|
97
|
+
{ id: 'gemini-1.5-flash-002', label: 'Gemini 1.5 Flash 002', tier: 'balanced', desc: 'Spesifik versiyon', cost: '$0.075/$0.30 per 1M' },
|
|
98
|
+
// Gemma (Açık kaynak Gemini)
|
|
99
|
+
{ id: 'gemma-2-27b-it', label: 'Gemma 2 27B IT', tier: 'flagship', desc: 'Google açık kaynak', cost: 'Free (rate limit)' },
|
|
100
|
+
{ id: 'gemma-2-9b-it', label: 'Gemma 2 9B IT', tier: 'balanced', desc: 'Açık kaynak küçük', cost: 'Free (rate limit)' },
|
|
101
|
+
{ id: 'gemma-2-2b-it', label: 'Gemma 2 2B IT', tier: 'fast', desc: 'Çok hafif', cost: 'Free (rate limit)' },
|
|
102
|
+
// Özel
|
|
103
|
+
{ id: 'gemini-nano', label: 'Gemini Nano (preview)', tier: 'fast', desc: 'Çok hafif', cost: 'Ücretsiz (rate limit)' },
|
|
104
|
+
{ id: 'gemini-1.0-pro', label: 'Gemini 1.0 Pro (legacy)', tier: 'classic', desc: 'Eski', cost: '$0.50/$1.50 per 1M' },
|
|
105
|
+
{ id: 'gemini-1.0-pro-vision', label: 'Gemini 1.0 Pro Vision (legacy)', tier: 'classic', desc: 'Eski vision', cost: '$0.50/$1.50 per 1M' },
|
|
106
|
+
// Embedding
|
|
107
|
+
{ id: 'text-embedding-004', label: 'Text Embedding 004', tier: 'embedding', desc: 'Embedding', cost: '$0.025 per 1M' },
|
|
108
|
+
],
|
|
109
|
+
default: 'gemini-2.0-flash',
|
|
110
|
+
},
|
|
111
|
+
groq: {
|
|
112
|
+
name: 'Groq (hızlı + ücretsiz)',
|
|
113
|
+
url: 'https://api.groq.com/openai/v1',
|
|
114
|
+
models: [
|
|
115
|
+
{ id: 'llama-3.3-70b-versatile', label: 'Llama 3.3 70B Versatile', tier: 'flagship', desc: 'En güçlü açık', cost: 'FREE' },
|
|
116
|
+
{ id: 'llama-3.3-70b-specdec', label: 'Llama 3.3 70B SpecDec', tier: 'flagship', desc: 'Speculative decoding', cost: 'FREE' },
|
|
117
|
+
{ id: 'llama-3.1-70b-versatile', label: 'Llama 3.1 70B Versatile', tier: 'flagship', desc: 'Alternatif güçlü', cost: 'FREE' },
|
|
118
|
+
{ id: 'qwen-2.5-72b', label: 'Qwen 2.5 72B', tier: 'flagship', desc: 'Çince + İngilizce', cost: 'FREE' },
|
|
119
|
+
{ id: 'qwen-qwq-32b', label: 'Qwen QwQ 32B (reasoning)', tier: 'flagship', desc: 'Reasoning', cost: 'FREE' },
|
|
120
|
+
{ id: 'llama-3.1-8b-instant', label: 'Llama 3.1 8B Instant', tier: 'fast', desc: 'Çok hızlı', cost: 'FREE' },
|
|
121
|
+
{ id: 'llama-3-8b-8192', label: 'Llama 3 8B', tier: 'fast', desc: 'Standart 8K context', cost: 'FREE' },
|
|
122
|
+
{ id: 'gemma-2-9b-it', label: 'Gemma 2 9B IT', tier: 'balanced', desc: 'Google açık kaynak', cost: 'FREE' },
|
|
123
|
+
{ id: 'mixtral-8x7b-32768', label: 'Mixtral 8x7B 32K', tier: 'fast', desc: 'Hızlı inference', cost: 'FREE' },
|
|
124
|
+
{ id: 'whisper-large-v3', label: 'Whisper Large v3', tier: 'audio', desc: 'Ses transkripsiyon', cost: 'FREE' },
|
|
125
|
+
{ id: 'whisper-large-v3-turbo', label: 'Whisper Large v3 Turbo', tier: 'audio', desc: 'Hızlı ses', cost: 'FREE' },
|
|
126
|
+
],
|
|
127
|
+
default: 'llama-3.3-70b-versatile',
|
|
128
|
+
},
|
|
129
|
+
deepseek: {
|
|
130
|
+
name: 'DeepSeek',
|
|
131
|
+
url: 'https://api.deepseek.com/v1',
|
|
132
|
+
models: [
|
|
133
|
+
{ id: 'deepseek-reasoner', label: 'DeepSeek Reasoner (R1)', tier: 'flagship', desc: 'Reasoning odaklı', cost: '~$0.55/$2.19 per 1M' },
|
|
134
|
+
{ id: 'deepseek-coder', label: 'DeepSeek Coder V2', tier: 'flagship', desc: 'Kod için optimize', cost: '~$0.14/$0.28 per 1M' },
|
|
135
|
+
{ id: 'deepseek-chat', label: 'DeepSeek Chat V3', tier: 'balanced', desc: 'Genel amaçlı', cost: '~$0.14/$0.28 per 1M' },
|
|
136
|
+
{ id: 'deepseek-coder-instruct', label: 'DeepSeek Coder Instruct', tier: 'balanced', desc: 'Instruction tuned', cost: '~$0.14/$0.28 per 1M' },
|
|
137
|
+
],
|
|
138
|
+
default: 'deepseek-chat',
|
|
139
|
+
},
|
|
140
|
+
ollama: {
|
|
141
|
+
name: 'Ollama (local)',
|
|
142
|
+
url: 'http://localhost:11434/v1',
|
|
143
|
+
models: [
|
|
144
|
+
{ id: 'llama3.3', label: 'Llama 3.3 (70B)', tier: 'flagship', desc: 'En güçlü local', cost: 'FREE (local)' },
|
|
145
|
+
{ id: 'llama3.2', label: 'Llama 3.2 (3B)', tier: 'balanced', desc: 'Dengeli', cost: 'FREE (local)' },
|
|
146
|
+
{ id: 'llama3.1', label: 'Llama 3.1 (8B)', tier: 'flagship', desc: 'Güçlü', cost: 'FREE (local)' },
|
|
147
|
+
{ id: 'llama3.2:1b', label: 'Llama 3.2 1B', tier: 'fast', desc: 'Çok hafif', cost: 'FREE (local)' },
|
|
148
|
+
{ id: 'llama2', label: 'Llama 2 (7B)', tier: 'classic', desc: 'Eski', cost: 'FREE (local)' },
|
|
149
|
+
{ id: 'qwen2.5', label: 'Qwen 2.5 (7B)', tier: 'balanced', desc: 'Çince + İngilizce', cost: 'FREE (local)' },
|
|
150
|
+
{ id: 'qwen2.5-coder', label: 'Qwen 2.5 Coder (7B)', tier: 'balanced', desc: 'Kod için', cost: 'FREE (local)' },
|
|
151
|
+
{ id: 'gemma2', label: 'Gemma 2 (2B)', tier: 'fast', desc: 'Google açık kaynak', cost: 'FREE (local)' },
|
|
152
|
+
{ id: 'gemma2:27b', label: 'Gemma 2 (27B)', tier: 'flagship', desc: 'Büyük Gemma', cost: 'FREE (local)' },
|
|
153
|
+
{ id: 'mistral', label: 'Mistral (7B)', tier: 'balanced', desc: 'Hızlı', cost: 'FREE (local)' },
|
|
154
|
+
{ id: 'mixtral', label: 'Mixtral (8x7B)', tier: 'flagship', desc: 'MoE mimari', cost: 'FREE (local)' },
|
|
155
|
+
{ id: 'phi3', label: 'Phi-3 Mini', tier: 'fast', desc: 'Microsoft küçük', cost: 'FREE (local)' },
|
|
156
|
+
{ id: 'codellama', label: 'Code Llama (7B)', tier: 'balanced', desc: 'Kod için', cost: 'FREE (local)' },
|
|
157
|
+
],
|
|
158
|
+
default: 'llama3.2',
|
|
159
|
+
},
|
|
160
|
+
minimax: {
|
|
161
|
+
name: 'Minimax (M2.5)',
|
|
162
|
+
url: 'https://api.minimax.io',
|
|
163
|
+
models: [
|
|
164
|
+
{ id: 'MiniMax-M2.5', label: 'M2.5', tier: 'flagship', desc: 'En güçlü', cost: 'API key' },
|
|
165
|
+
{ id: 'MiniMax-M2.5-highspeed', label: 'M2.5 HighSpeed', tier: 'flagship', desc: 'Hızlı M2.5', cost: 'API key' },
|
|
166
|
+
{ id: 'MiniMax-M2-7k', label: 'M2 (7K context)', tier: 'balanced', desc: 'Önceki', cost: 'API key' },
|
|
167
|
+
{ id: 'MiniMax-M2-32k', label: 'M2 (32K context)', tier: 'balanced', desc: 'Uzun context', cost: 'API key' },
|
|
168
|
+
{ id: 'MiniMax-M2-128k', label: 'M2 (128K context)', tier: 'flagship', desc: 'Çok uzun context', cost: 'API key' },
|
|
169
|
+
{ id: 'MiniMax-realtime', label: 'M2 Realtime', tier: 'fast', desc: 'Hızlı', cost: 'API key' },
|
|
170
|
+
],
|
|
171
|
+
default: 'MiniMax-M2.5',
|
|
172
|
+
},
|
|
173
|
+
openrouter: {
|
|
174
|
+
name: 'OpenRouter (100+ model)',
|
|
175
|
+
url: 'https://openrouter.ai/api/v1',
|
|
176
|
+
models: [
|
|
177
|
+
// Premium
|
|
178
|
+
{ id: 'anthropic/claude-3.5-sonnet', label: 'Claude 3.5 Sonnet', tier: 'flagship', cost: '~$3/$15 per 1M' },
|
|
179
|
+
{ id: 'anthropic/claude-3-opus', label: 'Claude 3 Opus', tier: 'flagship', cost: '~$15/$75 per 1M' },
|
|
180
|
+
{ id: 'openai/gpt-4o', label: 'GPT-4o', tier: 'flagship', cost: '~$5/$15 per 1M' },
|
|
181
|
+
{ id: 'openai/gpt-4-turbo', label: 'GPT-4 Turbo', tier: 'flagship', cost: '~$10/$30 per 1M' },
|
|
182
|
+
{ id: 'google/gemini-pro-1.5', label: 'Gemini Pro 1.5', tier: 'flagship', cost: '~$1.25/$5 per 1M' },
|
|
183
|
+
{ id: 'meta-llama/llama-3.1-405b-instruct', label: 'Llama 3.1 405B', tier: 'flagship', desc: 'En büyük açık model', cost: '~$2.70/$2.70 per 1M' },
|
|
184
|
+
// Mid-tier
|
|
185
|
+
{ id: 'openai/gpt-4o-mini', label: 'GPT-4o mini', tier: 'balanced', cost: '~$0.15/$0.60 per 1M' },
|
|
186
|
+
{ id: 'anthropic/claude-3-haiku', label: 'Claude 3 Haiku', tier: 'fast', cost: '~$0.25/$1.25 per 1M' },
|
|
187
|
+
{ id: 'google/gemini-flash-1.5', label: 'Gemini Flash 1.5', tier: 'fast', cost: '~$0.075/$0.30 per 1M' },
|
|
188
|
+
{ id: 'meta-llama/llama-3.1-70b-instruct', label: 'Llama 3.1 70B', tier: 'balanced', cost: '~$0.88/$0.88 per 1M' },
|
|
189
|
+
{ id: 'mistralai/mistral-large', label: 'Mistral Large', tier: 'flagship', cost: '~$2/$6 per 1M' },
|
|
190
|
+
// Ücretsiz
|
|
191
|
+
{ id: 'meta-llama/llama-3.1-8b-instruct:free', label: 'Llama 3.1 8B (FREE)', tier: 'fast', desc: 'Tamamen ücretsiz', cost: 'FREE' },
|
|
192
|
+
{ id: 'mistralai/mistral-7b-instruct:free', label: 'Mistral 7B (FREE)', tier: 'fast', desc: 'Ücretsiz', cost: 'FREE' },
|
|
193
|
+
{ id: 'google/gemma-2-9b-it:free', label: 'Gemma 2 9B (FREE)', tier: 'balanced', desc: 'Ücretsiz', cost: 'FREE' },
|
|
194
|
+
{ id: 'meta-llama/llama-3.2-3b-instruct:free', label: 'Llama 3.2 3B (FREE)', tier: 'fast', desc: 'Ücretsiz', cost: 'FREE' },
|
|
195
|
+
],
|
|
196
|
+
default: 'openai/gpt-4o-mini',
|
|
197
|
+
},
|
|
198
|
+
mistral: {
|
|
199
|
+
name: 'Mistral AI',
|
|
200
|
+
url: 'https://api.mistral.ai/v1',
|
|
201
|
+
models: [
|
|
202
|
+
{ id: 'mistral-large-latest', label: 'Mistral Large 2', tier: 'flagship', cost: '~$2/$6 per 1M' },
|
|
203
|
+
{ id: 'mistral-medium-latest', label: 'Mistral Medium', tier: 'balanced', cost: '~$0.7/$2.1 per 1M' },
|
|
204
|
+
{ id: 'mistral-small-latest', label: 'Mistral Small', tier: 'fast', cost: '~$0.2/$0.6 per 1M' },
|
|
205
|
+
{ id: 'codestral-latest', label: 'Codestral', tier: 'balanced', desc: 'Kod için optimize', cost: '~$0.2/$0.6 per 1M' },
|
|
206
|
+
{ id: 'open-mistral-7b', label: 'Open Mistral 7B', tier: 'fast', cost: '~$0.25/$0.25 per 1M' },
|
|
207
|
+
{ id: 'open-mixtral-8x7b', label: 'Open Mixtral 8x7B', tier: 'balanced', cost: '~$0.7/$0.7 per 1M' },
|
|
208
|
+
{ id: 'mistral-tiny', label: 'Mistral Tiny', tier: 'fast', desc: 'En küçük', cost: '~$0.15/$0.15 per 1M' },
|
|
209
|
+
],
|
|
210
|
+
default: 'mistral-small-latest',
|
|
211
|
+
},
|
|
212
|
+
cohere: {
|
|
213
|
+
name: 'Cohere',
|
|
214
|
+
url: 'https://api.cohere.ai/v1',
|
|
215
|
+
models: [
|
|
216
|
+
{ id: 'command-r-plus', label: 'Command R+', tier: 'flagship', cost: '~$2.50/$10 per 1M' },
|
|
217
|
+
{ id: 'command-r', label: 'Command R', tier: 'balanced', cost: '~$0.15/$0.60 per 1M' },
|
|
218
|
+
{ id: 'command-light', label: 'Command Light', tier: 'fast', cost: '~$0.30/$0.60 per 1M' },
|
|
219
|
+
{ id: 'c4ai-aya-23', label: 'C4AI Aya 23', tier: 'flagship', desc: 'Çok dilli', cost: '~$1/$1 per 1M' },
|
|
220
|
+
{ id: 'c4ai-aya-23-8b', label: 'C4AI Aya 23 8B', tier: 'balanced', desc: 'Çok dilli küçük', cost: '~$0.50/$0.50 per 1M' },
|
|
221
|
+
{ id: 'embed-english-v3.0', label: 'Embed English v3.0', tier: 'embedding', cost: '~$0.10 per 1M' },
|
|
222
|
+
{ id: 'embed-multilingual-v3.0', label: 'Embed Multilingual v3.0', tier: 'embedding', cost: '~$0.10 per 1M' },
|
|
223
|
+
],
|
|
224
|
+
default: 'command-r',
|
|
225
|
+
},
|
|
226
|
+
xai: {
|
|
227
|
+
name: 'xAI (Grok)',
|
|
228
|
+
url: 'https://api.x.ai/v1',
|
|
229
|
+
models: [
|
|
230
|
+
{ id: 'grok-2-1212', label: 'Grok 2', tier: 'flagship', cost: '~$2/$10 per 1M' },
|
|
231
|
+
{ id: 'grok-2-vision-1212', label: 'Grok 2 Vision', tier: 'flagship', desc: 'Multimodal', cost: '~$2/$10 per 1M' },
|
|
232
|
+
{ id: 'grok-beta', label: 'Grok Beta', tier: 'balanced', cost: '~$5/$15 per 1M' },
|
|
233
|
+
{ id: 'grok-vision-beta', label: 'Grok Vision Beta', tier: 'balanced', desc: 'Görsel', cost: '~$5/$15 per 1M' },
|
|
234
|
+
{ id: 'grok-1.5', label: 'Grok 1.5', tier: 'fast', cost: '~$0.50/$1.50 per 1M' },
|
|
235
|
+
],
|
|
236
|
+
default: 'grok-2-1212',
|
|
237
|
+
},
|
|
238
|
+
together: {
|
|
239
|
+
name: 'Together AI',
|
|
240
|
+
url: 'https://api.together.xyz/v1',
|
|
241
|
+
models: [
|
|
242
|
+
{ id: 'meta-llama/Llama-3.3-70B-Instruct-Turbo', label: 'Llama 3.3 70B Turbo', tier: 'flagship', cost: '~$0.88/$0.88 per 1M' },
|
|
243
|
+
{ id: 'meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo', label: 'Llama 3.2 90B Vision', tier: 'flagship', desc: 'Multimodal', cost: '~$1.20/$1.20 per 1M' },
|
|
244
|
+
{ id: 'meta-llama/Llama-3.2-11B-Vision-Instruct-Turbo', label: 'Llama 3.2 11B Vision', tier: 'balanced', desc: 'Vision ucuz', cost: '~$0.18/$0.18 per 1M' },
|
|
245
|
+
{ id: 'meta-llama/Llama-3.2-3B-Instruct-Turbo', label: 'Llama 3.2 3B', tier: 'fast', cost: '~$0.06/$0.06 per 1M' },
|
|
246
|
+
{ id: 'meta-llama/Llama-3.2-1B-Instruct-Turbo', label: 'Llama 3.2 1B', tier: 'fast', desc: 'Çok küçük', cost: '~$0.03/$0.03 per 1M' },
|
|
247
|
+
{ id: 'mistralai/Mixtral-8x22B-Instruct-v0.1', label: 'Mixtral 8x22B', tier: 'flagship', cost: '~$1.20/$1.20 per 1M' },
|
|
248
|
+
{ id: 'mistralai/Mixtral-8x7B-Instruct-v0.1', label: 'Mixtral 8x7B', tier: 'balanced', cost: '~$0.60/$0.60 per 1M' },
|
|
249
|
+
{ id: 'Qwen/Qwen2.5-72B-Instruct-Turbo', label: 'Qwen 2.5 72B Turbo', tier: 'flagship', cost: '~$1.20/$1.20 per 1M' },
|
|
250
|
+
],
|
|
251
|
+
default: 'meta-llama/Llama-3.3-70B-Instruct-Turbo',
|
|
252
|
+
},
|
|
253
|
+
custom: {
|
|
254
|
+
name: 'Custom URL',
|
|
255
|
+
url: '',
|
|
256
|
+
models: [
|
|
257
|
+
{ id: 'custom', label: 'Custom', tier: 'custom', desc: 'Manuel model adı', cost: '?' },
|
|
258
|
+
],
|
|
259
|
+
default: 'custom',
|
|
260
|
+
},
|
|
28
261
|
};
|
|
29
262
|
|
|
263
|
+
|
|
30
264
|
function rlQuestion(query) {
|
|
31
265
|
const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
|
|
32
266
|
return new Promise(resolve => {
|
|
@@ -83,21 +317,23 @@ async function cmdWizard() {
|
|
|
83
317
|
|
|
84
318
|
const cfg = getConfig();
|
|
85
319
|
|
|
86
|
-
// Step 1
|
|
87
|
-
console.log(chalk.white(' Step 1: Provider'));
|
|
320
|
+
// v5.6.4: Step 1 - Provider + direkt model wizard (tier yok)
|
|
321
|
+
console.log(chalk.white(' Step 1: Provider & Model'));
|
|
88
322
|
console.log(chalk.gray(' ─────────────────────────────────────────────'));
|
|
89
|
-
|
|
323
|
+
|
|
324
|
+
const providerKeys = Object.keys(PROVIDER_PRESETS).filter(k => k !== 'custom');
|
|
90
325
|
const { provider } = await inquirer.prompt([{
|
|
91
326
|
type: 'list',
|
|
92
327
|
name: 'provider',
|
|
93
328
|
message: ' AI Provider:',
|
|
94
329
|
choices: [
|
|
95
330
|
...providerKeys.map(k => ({
|
|
96
|
-
name: `${k.
|
|
331
|
+
name: `${PROVIDER_PRESETS[k].name} (${PROVIDER_PRESETS[k].models.length} model)`,
|
|
97
332
|
value: k,
|
|
98
333
|
})),
|
|
99
334
|
{ name: 'Custom URL', value: 'custom' },
|
|
100
335
|
],
|
|
336
|
+
pageSize: 14,
|
|
101
337
|
}]);
|
|
102
338
|
|
|
103
339
|
let providerUrl, providerModel;
|
|
@@ -109,7 +345,54 @@ async function cmdWizard() {
|
|
|
109
345
|
} else {
|
|
110
346
|
const preset = PROVIDER_PRESETS[provider];
|
|
111
347
|
providerUrl = preset.url;
|
|
112
|
-
|
|
348
|
+
|
|
349
|
+
// Direkt model listesi - tier gruplari ile
|
|
350
|
+
const { modelId } = await inquirer.prompt([{
|
|
351
|
+
type: 'list',
|
|
352
|
+
name: 'modelId',
|
|
353
|
+
message: ` Model sec (${preset.models.length} secenek):`,
|
|
354
|
+
choices: [
|
|
355
|
+
{ name: '─────────────────────', disabled: true },
|
|
356
|
+
{ name: '🟢 GÜÇLÜ / REASONING (en iyi)', disabled: true },
|
|
357
|
+
...preset.models.filter(m => m.tier === 'flagship' || m.tier === 'reasoning').map(m => ({
|
|
358
|
+
name: ` ${m.label} (${m.cost})`,
|
|
359
|
+
value: m.id,
|
|
360
|
+
})),
|
|
361
|
+
{ name: '─────────────────────', disabled: true },
|
|
362
|
+
{ name: '🟡 ORTA (dengeli)', disabled: true },
|
|
363
|
+
...preset.models.filter(m => m.tier === 'balanced').map(m => ({
|
|
364
|
+
name: ` ${m.label} (${m.cost})`,
|
|
365
|
+
value: m.id,
|
|
366
|
+
})),
|
|
367
|
+
{ name: '─────────────────────', disabled: true },
|
|
368
|
+
{ name: '🔵 HIZLI / UCUZ', disabled: true },
|
|
369
|
+
...preset.models.filter(m => m.tier === 'fast').map(m => ({
|
|
370
|
+
name: ` ${m.label} (${m.cost})`,
|
|
371
|
+
value: m.id,
|
|
372
|
+
})),
|
|
373
|
+
{ name: '─────────────────────', disabled: true },
|
|
374
|
+
{ name: '⚪ KLASİK (legacy)', disabled: true },
|
|
375
|
+
...preset.models.filter(m => m.tier === 'classic').map(m => ({
|
|
376
|
+
name: ` ${m.label} (${m.cost})`,
|
|
377
|
+
value: m.id,
|
|
378
|
+
})),
|
|
379
|
+
{ name: '─────────────────────', disabled: true },
|
|
380
|
+
{ name: '🔊 ÖZEL (audio/vision/embedding)', disabled: true },
|
|
381
|
+
...preset.models.filter(m => ['audio', 'vision', 'embedding', 'custom'].includes(m.tier)).map(m => ({
|
|
382
|
+
name: ` ${m.label} (${m.cost})`,
|
|
383
|
+
value: m.id,
|
|
384
|
+
})),
|
|
385
|
+
{ name: '─────────────────────', disabled: true },
|
|
386
|
+
{ name: '✏️ Custom model adı (ileri düzey)', value: '__custom__' },
|
|
387
|
+
],
|
|
388
|
+
pageSize: 20,
|
|
389
|
+
}]);
|
|
390
|
+
|
|
391
|
+
if (modelId === '__custom__') {
|
|
392
|
+
providerModel = await rlQuestion(` Model adı: `) || preset.default;
|
|
393
|
+
} else {
|
|
394
|
+
providerModel = modelId;
|
|
395
|
+
}
|
|
113
396
|
console.log(chalk.gray(` URL: ${providerUrl}`));
|
|
114
397
|
console.log(chalk.gray(` Model: ${providerModel}`));
|
|
115
398
|
}
|