wenox-cli 2.2.0 → 3.1.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/README.md CHANGED
@@ -1,101 +1,119 @@
1
1
  # WENOX CLI
2
2
 
3
- 🚀 Advanced AI-powered development assistant for your terminal.
3
+ **Claude API Enterprise AI Platform**
4
4
 
5
- ## Quick Install
5
+ Basit kurulum, sıfır sorun. Python dependency cehennemini atlayın.
6
+
7
+ ## Hızlı Kurulum
6
8
 
7
9
  ```bash
10
+ # 1. WENOX CLI'yi kur
8
11
  npm install -g wenox-cli
9
- ```
10
-
11
- ## Setup & Usage
12
12
 
13
- 1. **Get your API key** from [WENOX Dashboard](https://wenox.ai/dashboard)
13
+ # 2. Python bağımlılığını kur
14
+ pip install aider-chat
14
15
 
15
- 2. **Set your API key:**
16
+ # 3. API anahtarını ayarla
17
+ set WENOX_API_KEY=your_api_key_here
16
18
 
17
- **For CMD (Windows Command Prompt):**
18
- ```cmd
19
- set WENOX_API_KEY=your_api_key_here
20
- ```
21
-
22
- **For PowerShell:**
23
- ```powershell
24
- $env:WENOX_API_KEY="your_api_key_here"
25
- ```
26
-
27
- **For Linux/Mac:**
28
- ```bash
29
- export WENOX_API_KEY="your_api_key_here"
30
- ```
19
+ # 4. Başlat
20
+ wenox
21
+ ```
31
22
 
32
- 3. **Start coding with AI:**
33
- ```bash
34
- wenox
35
- ```
23
+ ## Özellikler
36
24
 
37
- ## Troubleshooting
25
+ - 🚀 **Sıfır Karmaşa** - Basit pip install, çalışır
26
+ - 🔧 **Manuel Kontrol** - Sen kurarsın, sen kontrol edersin
27
+ - 🎯 **Garantili Çalışma** - Python dependency cehennemini atlar
28
+ - 💻 **Çapraz Platform** - Windows, macOS, Linux
29
+ - 🛡️ **Güvenli** - Kendi Python ortamında çalışır
38
30
 
39
- ### Command Not Found
40
- If you get `'wenox' is not recognized` error:
31
+ ## Kurulum Seçenekleri
41
32
 
42
- 1. **Try using npx:**
43
- ```bash
44
- npx wenox
45
- ```
33
+ ### Yöntem 1: Global Kurulum (Önerilen)
34
+ ```bash
35
+ npm install -g wenox-cli
36
+ pip install aider-chat
37
+ ```
46
38
 
47
- 2. **Restart your terminal** after installation
39
+ ### Yöntem 2: NPX (Kurulum Yok)
40
+ ```bash
41
+ npx wenox-cli
42
+ # (Yine de pip install aider-chat gerekli)
43
+ ```
48
44
 
49
- 3. **Check NPM global path:**
50
- ```bash
51
- npm config get prefix
52
- ```
45
+ ## Kurulum
53
46
 
54
- 4. **Install globally with admin rights:**
55
- ```bash
56
- npm install -g wenox-cli
57
- ```
47
+ 1. **Python bağımlılığını kur**: `pip install aider-chat`
48
+ 2. **API anahtarını al**: [wenox.ai/dashboard](https://wenox.ai/dashboard)
49
+ 3. **Ortam değişkenini ayarla**:
50
+ - **CMD**: `set WENOX_API_KEY=your_key_here`
51
+ - **PowerShell**: `$env:WENOX_API_KEY="your_key_here"`
52
+ 4. **WENOX'u çalıştır**: `wenox`
58
53
 
59
- ## Features
54
+ ## Sistem Gereksinimleri
60
55
 
61
- - 🤖 **Latest AI Models** - Claude, GPT-4, and more
62
- - 💻 **Terminal Native** - Works in your existing workflow
63
- - 🔄 **Real-time Collaboration** - AI pair programming
64
- - 📁 **Project Aware** - Understands your entire codebase
65
- - ⚡ **Lightning Fast** - Optimized for productivity
56
+ - **Python 3.10+** + `pip install aider-chat`
57
+ - **Node.js 16+** (NPM kurulumu için)
66
58
 
67
- ## Usage Examples
59
+ ## Kullanım
68
60
 
69
61
  ```bash
70
- # Start WENOX in current directory
62
+ # Mevcut dizinde WENOX'u başlat
71
63
  wenox
72
64
 
73
- # Work with specific files
74
- wenox src/app.js components/Header.tsx
65
+ # Belirli dosyalarla çalış
66
+ wenox file1.py file2.js
75
67
 
76
- # Use different model
68
+ # Farklı AI modeli kullan
77
69
  wenox --model gpt-4
78
70
 
79
- # Get help
71
+ # Yardım al
80
72
  wenox --help
81
73
  ```
82
74
 
83
- ## Requirements
75
+ ## Sorun Giderme
76
+
77
+ ### "wenox komutu bulunamadı"
78
+ - Dene: `npx wenox-cli`
79
+ - Veya kurulumdan sonra terminali yeniden başlat
80
+
81
+ ### Python Hataları
82
+ ```bash
83
+ pip install aider-chat
84
+ # Veya
85
+ pip install aider-chat --user
86
+ # Veya
87
+ python -m pip install aider-chat
88
+ ```
89
+
90
+ ### API Anahtarı Sorunları
91
+ API anahtarının doğru ayarlandığından emin ol:
92
+ - CMD: `echo %WENOX_API_KEY%`
93
+ - PowerShell: `echo $env:WENOX_API_KEY`
84
94
 
85
- - Node.js 16+
86
- - Python 3.10+ (auto-detected and prompted if missing)
95
+ ## v3.1.0'daki Yenilikler
87
96
 
88
- ## Environment Variables
97
+ - **Basitleştirilmiş Yaklaşım** - Otomatik kurulum yok, manuel kontrol
98
+ - ✅ **Sıfır Dependency Cehennem** - Sen pip install yaparsın, çalışır
99
+ - ✅ **Net Hata Mesajları** - Sorun olursa ne yapacağın belli
100
+ - ✅ **Müşteri Dostu** - Kurulum adımları açık ve net
89
101
 
90
- - `WENOX_API_KEY` - Your WENOX API key (required)
91
- - `WENOX_MODEL` - Default model (optional)
102
+ ## Müşteri İçin Basit Talimat
103
+
104
+ ```bash
105
+ # Bu 4 komutu çalıştır, çalışır:
106
+ npm install -g wenox-cli
107
+ pip install aider-chat
108
+ set WENOX_API_KEY=your_key_here
109
+ wenox
110
+ ```
92
111
 
93
- ## Support
112
+ ## Destek
94
113
 
95
- - 📖 [Documentation](https://docs.wenox.ai)
96
- - 💬 [Discord](https://discord.gg/wenox)
97
- - 📧 [Support](mailto:support@wenox.ai)
114
+ - 📧 Email: support@wenox.ai
115
+ - 🌐 Website: [wenox.ai](https://wenox.ai)
98
116
 
99
117
  ---
100
118
 
101
- **WENOX** - AI-powered development, simplified.
119
+ **WENOX CLI v3.1.0** - Basit kurulum, garantili çalışma.
package/bin/wenox.js CHANGED
@@ -1,18 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  const { spawn } = require('child_process');
4
- const path = require('path');
5
- const fs = require('fs');
6
- const os = require('os');
7
-
8
- // WENOX environment path
9
- const WENOX_ENV_PATH = path.join(os.homedir(), '.wenox', 'env');
10
- const WENOX_PYTHON = process.platform === 'win32'
11
- ? path.join(WENOX_ENV_PATH, 'Scripts', 'python.exe')
12
- : path.join(WENOX_ENV_PATH, 'bin', 'python');
13
- const WENOX_PIP = process.platform === 'win32'
14
- ? path.join(WENOX_ENV_PATH, 'Scripts', 'pip.exe')
15
- : path.join(WENOX_ENV_PATH, 'bin', 'pip');
16
4
 
17
5
  // Simple console colors
18
6
  const chalk = {
@@ -24,21 +12,6 @@ const chalk = {
24
12
  bold: (text) => `\x1b[1m${text}\x1b[0m`
25
13
  };
26
14
 
27
- // Simple boxen replacement
28
- function boxen(content, options = {}) {
29
- const lines = content.split('\n');
30
- const maxLength = Math.max(...lines.map(line => line.length));
31
- const border = '─'.repeat(maxLength + 2);
32
-
33
- let result = `┌${border}┐\n`;
34
- lines.forEach(line => {
35
- result += `│ ${line.padEnd(maxLength)} │\n`;
36
- });
37
- result += `└${border}┘`;
38
-
39
- return result;
40
- }
41
-
42
15
  // WENOX Banner
43
16
  const banner = chalk.cyan(`
44
17
  ██╗ ██╗███████╗███╗ ██╗ ██████╗ ██╗ ██╗
@@ -52,182 +25,7 @@ const banner = chalk.cyan(`
52
25
  `);
53
26
 
54
27
  function showWelcome() {
55
- console.log(boxen(banner, {
56
- padding: 1,
57
- margin: 1,
58
- borderStyle: 'round',
59
- borderColor: 'cyan'
60
- }));
61
- }
62
-
63
- function checkPython() {
64
- return new Promise((resolve) => {
65
- const python = process.platform === 'win32' ? 'python' : 'python3';
66
- const child = spawn(python, ['--version'], { stdio: 'pipe' });
67
-
68
- let versionOutput = '';
69
- child.stdout.on('data', (data) => {
70
- versionOutput += data.toString();
71
- });
72
-
73
- child.on('close', (code) => {
74
- if (code === 0) {
75
- // Extract version number
76
- const versionMatch = versionOutput.match(/Python (\d+)\.(\d+)\.(\d+)/);
77
- if (versionMatch) {
78
- const major = parseInt(versionMatch[1]);
79
- const minor = parseInt(versionMatch[2]);
80
-
81
- console.log(chalk.cyan(`🐍 Python ${major}.${minor} detected`));
82
-
83
- if (major === 3 && minor >= 14) {
84
- console.log(chalk.green('✅ Python 3.14+ detected - using latest compatible packages'));
85
- } else if (major === 3 && minor === 12) {
86
- console.log(chalk.green('✅ Python 3.12 detected - excellent compatibility'));
87
- } else if (major === 3 && minor >= 10) {
88
- console.log(chalk.green('✅ Python 3.10-3.13 detected - good compatibility'));
89
- } else {
90
- console.log(chalk.red('❌ Python 3.10+ is required for WENOX'));
91
- resolve(false);
92
- return;
93
- }
94
- }
95
- resolve(true);
96
- } else {
97
- resolve(false);
98
- }
99
- });
100
-
101
- child.on('error', () => {
102
- resolve(false);
103
- });
104
- });
105
- }
106
-
107
- function checkWenoxEnvironment() {
108
- return fs.existsSync(WENOX_PYTHON) && fs.existsSync(WENOX_PIP);
109
- }
110
-
111
- async function createWenoxEnvironment() {
112
- console.log(chalk.cyan('🔧 Creating WENOX isolated environment...'));
113
-
114
- // Create .wenox directory
115
- const wenoxDir = path.join(os.homedir(), '.wenox');
116
- if (!fs.existsSync(wenoxDir)) {
117
- fs.mkdirSync(wenoxDir, { recursive: true });
118
- }
119
-
120
- return new Promise((resolve, reject) => {
121
- const python = process.platform === 'win32' ? 'python' : 'python3';
122
-
123
- // Create virtual environment
124
- const venvChild = spawn(python, ['-m', 'venv', WENOX_ENV_PATH], {
125
- stdio: 'inherit',
126
- shell: true
127
- });
128
-
129
- venvChild.on('close', (code) => {
130
- if (code === 0) {
131
- console.log(chalk.green('✅ WENOX environment created successfully!'));
132
- resolve();
133
- } else {
134
- reject(new Error('Failed to create WENOX environment'));
135
- }
136
- });
137
-
138
- venvChild.on('error', (err) => {
139
- reject(err);
140
- });
141
- });
142
- }
143
-
144
- async function installWenoxPackages() {
145
- console.log(chalk.cyan('📦 Installing WENOX packages in isolated environment...'));
146
- console.log(chalk.yellow('🔧 This ensures no conflicts with your system Python'));
147
-
148
- return new Promise((resolve, reject) => {
149
- // First upgrade pip in the virtual environment
150
- console.log(chalk.cyan('🔧 Upgrading pip in WENOX environment...'));
151
-
152
- const upgradeChild = spawn(WENOX_PIP, [
153
- 'install',
154
- '--upgrade',
155
- 'pip>=25.0',
156
- 'setuptools>=70.0',
157
- 'wheel'
158
- ], {
159
- stdio: 'inherit',
160
- shell: true
161
- });
162
-
163
- upgradeChild.on('close', (upgradeCode) => {
164
- if (upgradeCode !== 0) {
165
- console.log(chalk.yellow('⚠️ Pip upgrade failed, continuing anyway...'));
166
- }
167
-
168
- // Install core packages first without dependencies
169
- console.log(chalk.cyan('📋 Installing core WENOX packages...'));
170
-
171
- const coreChild = spawn(WENOX_PIP, [
172
- 'install',
173
- 'aider-chat==0.16.0',
174
- 'openai==0.27.6',
175
- 'anthropic==0.76.0',
176
- '--no-deps'
177
- ], {
178
- stdio: 'inherit',
179
- shell: true
180
- });
181
-
182
- coreChild.on('close', (code) => {
183
- if (code === 0) {
184
- console.log(chalk.green('✅ Core packages installed!'));
185
-
186
- // Now install dependencies from requirements
187
- console.log(chalk.cyan('📋 Installing additional dependencies...'));
188
-
189
- const requirementsPath = path.join(__dirname, '..', 'requirements-wenox.txt');
190
-
191
- const depsChild = spawn(WENOX_PIP, [
192
- 'install',
193
- '-r',
194
- requirementsPath
195
- ], {
196
- stdio: 'inherit',
197
- shell: true
198
- });
199
-
200
- depsChild.on('close', (depsCode) => {
201
- if (depsCode === 0) {
202
- console.log(chalk.green('✅ WENOX packages installed successfully!'));
203
- console.log(chalk.cyan('🎯 All packages are isolated and working perfectly'));
204
- resolve();
205
- } else {
206
- console.log(chalk.yellow('⚠️ Some dependencies failed, but core packages are ready'));
207
- console.log(chalk.green('✅ WENOX should work with basic functionality'));
208
- resolve();
209
- }
210
- });
211
-
212
- depsChild.on('error', (err) => {
213
- console.log(chalk.yellow('⚠️ Dependencies installation failed, but core is ready'));
214
- resolve();
215
- });
216
- } else {
217
- console.log(chalk.red('❌ Core package installation failed'));
218
- reject(new Error('Failed to install core WENOX packages'));
219
- }
220
- });
221
-
222
- coreChild.on('error', (err) => {
223
- reject(err);
224
- });
225
- });
226
-
227
- upgradeChild.on('error', (err) => {
228
- console.log(chalk.yellow('⚠️ Pip upgrade failed, continuing with installation...'));
229
- });
230
- });
28
+ console.log(banner);
231
29
  }
232
30
 
233
31
  function checkApiKey() {
@@ -241,7 +39,7 @@ function checkApiKey() {
241
39
  console.log(' ' + chalk.bold('CMD:') + ' set WENOX_API_KEY=your_api_key_here');
242
40
  console.log(' ' + chalk.bold('PowerShell:') + ' $env:WENOX_API_KEY="your_api_key_here"');
243
41
  console.log('\n3. Run ' + chalk.cyan('wenox') + ' again');
244
- console.log('\n' + chalk.yellow('💡 Tip: If "wenox" command not found, try: npx wenox'));
42
+ console.log('\n' + chalk.yellow('💡 Tip: If "wenox" command not found, try: npx wenox-cli'));
245
43
  process.exit(1);
246
44
  }
247
45
 
@@ -278,8 +76,10 @@ async function runAider() {
278
76
  const args = [...defaultArgs, ...userArgs];
279
77
 
280
78
  console.log(chalk.green('✅ Starting WENOX Claude API Platform...\n'));
79
+ console.log(chalk.yellow('💡 Make sure you have: pip install aider-chat'));
281
80
 
282
- const child = spawn(WENOX_PYTHON, args, {
81
+ const python = process.platform === 'win32' ? 'python' : 'python3';
82
+ const child = spawn(python, args, {
283
83
  stdio: 'inherit',
284
84
  shell: true
285
85
  });
@@ -293,6 +93,12 @@ async function runAider() {
293
93
 
294
94
  child.on('error', (err) => {
295
95
  console.error(chalk.red('❌ Error starting WENOX:'), err.message);
96
+ console.log(chalk.cyan('\n💡 Quick Fix:'));
97
+ console.log(chalk.cyan(' pip install aider-chat'));
98
+ console.log(chalk.cyan(' python -m pip install aider-chat'));
99
+ console.log(chalk.cyan('\n💡 If still issues:'));
100
+ console.log(chalk.cyan(' pip install --upgrade pip setuptools'));
101
+ console.log(chalk.cyan(' pip install aider-chat --user'));
296
102
  process.exit(1);
297
103
  });
298
104
  }
@@ -325,19 +131,20 @@ ${chalk.bold('Examples:')}
325
131
  wenox --model gpt-4 # Use specific model
326
132
 
327
133
  ${chalk.bold('Setup:')}
328
- 1. Get API key: ${chalk.blue('https://wenox.ai/dashboard')}
329
- 2. Set environment variable:
134
+ 1. Install Python dependency: ${chalk.cyan('pip install aider-chat')}
135
+ 2. Get API key: ${chalk.blue('https://wenox.ai/dashboard')}
136
+ 3. Set environment variable:
330
137
  ${chalk.yellow('CMD:')} set WENOX_API_KEY=your_key
331
138
  ${chalk.yellow('PowerShell:')} $env:WENOX_API_KEY="your_key"
332
- 3. Run: ${chalk.cyan('wenox')}
139
+ 4. Run: ${chalk.cyan('wenox')}
333
140
 
334
141
  ${chalk.bold('Troubleshooting:')}
335
- • If 'wenox' command not found, try: ${chalk.cyan('npx wenox')}
142
+ • If 'wenox' command not found, try: ${chalk.cyan('npx wenox-cli')}
143
+ • If Python errors: ${chalk.cyan('pip install aider-chat --user')}
336
144
  • Or restart your terminal after installation
337
- • Check PATH: ${chalk.cyan('npm config get prefix')}
338
145
 
339
146
  ${chalk.bold('System Requirements:')}
340
- • Python 3.10+ (all versions supported)
147
+ • Python 3.10+ with pip install aider-chat
341
148
  • Node.js 16+ for NPM installation
342
149
  `);
343
150
  return;
@@ -345,29 +152,6 @@ ${chalk.bold('System Requirements:')}
345
152
 
346
153
  showWelcome();
347
154
 
348
- // Check Python
349
- const hasPython = await checkPython();
350
- if (!hasPython) {
351
- console.log(chalk.red('❌ Python 3.10+ is required'));
352
- console.log('Please install Python from: https://python.org');
353
- process.exit(1);
354
- }
355
-
356
- // Check if WENOX environment exists
357
- const hasWenoxEnv = checkWenoxEnvironment();
358
- if (!hasWenoxEnv) {
359
- console.log(chalk.cyan('🔧 First time setup - creating WENOX environment...'));
360
- try {
361
- await createWenoxEnvironment();
362
- await installWenoxPackages();
363
- } catch (err) {
364
- console.error(chalk.red('❌ Failed to setup WENOX environment:'), err.message);
365
- process.exit(1);
366
- }
367
- } else {
368
- console.log(chalk.green('✅ WENOX environment ready'));
369
- }
370
-
371
155
  // Setup WENOX defaults
372
156
  setupWenoxDefaults();
373
157
 
package/package.json CHANGED
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "wenox-cli",
3
- "version": "2.2.0",
3
+ "version": "3.1.0",
4
4
  "description": "WENOX AI - Advanced AI-powered development assistant",
5
5
  "main": "index.js",
6
6
  "bin": {
7
7
  "wenox": "bin/wenox.js"
8
8
  },
9
9
  "scripts": {
10
- "postinstall": "node scripts/install-python-deps.js",
11
10
  "test": "echo \"Error: no test specified\" && exit 1"
12
11
  },
13
12
  "keywords": [
@@ -25,17 +24,10 @@
25
24
  "type": "git",
26
25
  "url": "git+https://github.com/wenox/wenox-cli.git"
27
26
  },
28
- "dependencies": {
29
- "inquirer": "^9.2.12",
30
- "ora": "^7.0.1",
31
- "boxen": "^7.1.1",
32
- "node-fetch": "^3.3.2"
33
- },
27
+ "dependencies": {},
34
28
  "files": [
35
29
  "bin/",
36
- "scripts/",
37
- "README.md",
38
- "requirements-wenox.txt"
30
+ "README.md"
39
31
  ],
40
32
  "engines": {
41
33
  "node": ">=16.0.0"
@@ -1,33 +0,0 @@
1
- # WENOX Enterprise Environment - Minimal Working Configuration
2
- # Core WENOX dependencies only - no version conflicts
3
- aider-chat==0.16.0
4
- openai==0.27.6
5
- anthropic==0.76.0
6
-
7
- # Essential dependencies - let pip resolve versions automatically
8
- requests
9
- tqdm
10
- colorama
11
- click
12
- pydantic
13
- tiktoken
14
- PyYAML
15
- tree-sitter
16
- diskcache
17
- GitPython
18
- rich
19
- prompt-toolkit
20
- Pygments
21
- pathspec
22
- networkx
23
- numpy
24
- scipy
25
- sounddevice
26
- soundfile
27
- grep-ast
28
- backoff
29
- ConfigArgParse
30
- markdown-it-py
31
-
32
- # Note: Minimal package list to avoid dependency conflicts
33
- # Additional packages will be installed as dependencies automatically
@@ -1,48 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- const { spawn } = require('child_process');
4
-
5
- // Simple console colors without chalk
6
- const colors = {
7
- cyan: (text) => `\x1b[36m${text}\x1b[0m`,
8
- green: (text) => `\x1b[32m${text}\x1b[0m`,
9
- yellow: (text) => `\x1b[33m${text}\x1b[0m`,
10
- blue: (text) => `\x1b[34m${text}\x1b[0m`
11
- };
12
-
13
- console.log(colors.cyan('🚀 Setting up WENOX CLI...'));
14
-
15
- function checkPython() {
16
- return new Promise((resolve) => {
17
- const python = process.platform === 'win32' ? 'python' : 'python3';
18
- const child = spawn(python, ['--version'], { stdio: 'pipe' });
19
-
20
- child.on('close', (code) => {
21
- resolve(code === 0);
22
- });
23
-
24
- child.on('error', () => {
25
- resolve(false);
26
- });
27
- });
28
- }
29
-
30
- async function main() {
31
- const hasPython = await checkPython();
32
-
33
- if (!hasPython) {
34
- console.log(colors.yellow('⚠️ Python 3.10+ is required for WENOX CLI'));
35
- console.log('Please install Python from: https://python.org');
36
- console.log('After installing Python, run: ' + colors.cyan('npm install -g wenox-cli'));
37
- return;
38
- }
39
-
40
- console.log(colors.green('✅ Python detected'));
41
- console.log(colors.green('✅ WENOX CLI is ready!'));
42
- console.log('\nNext steps:');
43
- console.log('1. Get your API key: ' + colors.blue('https://wenox.ai/dashboard'));
44
- console.log('2. Set environment: ' + colors.yellow('export WENOX_API_KEY=your_key'));
45
- console.log('3. Run: ' + colors.cyan('wenox'));
46
- }
47
-
48
- main();