wenox-cli 1.0.9 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/wenox.js CHANGED
@@ -56,8 +56,35 @@ function checkPython() {
56
56
  const python = process.platform === 'win32' ? 'python' : 'python3';
57
57
  const child = spawn(python, ['--version'], { stdio: 'pipe' });
58
58
 
59
+ let versionOutput = '';
60
+ child.stdout.on('data', (data) => {
61
+ versionOutput += data.toString();
62
+ });
63
+
59
64
  child.on('close', (code) => {
60
- resolve(code === 0);
65
+ if (code === 0) {
66
+ // Extract version number
67
+ const versionMatch = versionOutput.match(/Python (\d+)\.(\d+)\.(\d+)/);
68
+ if (versionMatch) {
69
+ const major = parseInt(versionMatch[1]);
70
+ const minor = parseInt(versionMatch[2]);
71
+
72
+ console.log(chalk.cyan(`🐍 Python ${major}.${minor} detected`));
73
+
74
+ if (major === 3 && minor >= 14) {
75
+ console.log(chalk.green('✅ Python 3.14+ detected - using optimized package versions'));
76
+ } else if (major === 3 && minor >= 10) {
77
+ console.log(chalk.yellow('⚠️ Python 3.10-3.13 detected - some packages may need updates'));
78
+ } else {
79
+ console.log(chalk.red('❌ Python 3.10+ is required for WENOX'));
80
+ resolve(false);
81
+ return;
82
+ }
83
+ }
84
+ resolve(true);
85
+ } else {
86
+ resolve(false);
87
+ }
61
88
  });
62
89
 
63
90
  child.on('error', () => {
@@ -83,65 +110,118 @@ function checkAider() {
83
110
 
84
111
  async function installAider() {
85
112
  console.log(chalk.cyan('📦 Installing WENOX Enterprise Environment...'));
86
- console.log(chalk.yellow('🔧 This will install the exact same packages that work on the developer machine'));
113
+ console.log(chalk.yellow('🔧 Installing Python 3.14 compatible packages'));
87
114
 
88
115
  const python = process.platform === 'win32' ? 'python' : 'python3';
89
116
  const pip = process.platform === 'win32' ? 'pip' : 'pip3';
90
117
 
91
118
  return new Promise((resolve, reject) => {
92
- // Install from our exact requirements file
93
- console.log(chalk.cyan('📋 Installing from verified requirements...'));
119
+ // First, upgrade pip and setuptools for Python 3.14 compatibility
120
+ console.log(chalk.cyan('🔧 Upgrading pip and setuptools for Python 3.14...'));
94
121
 
95
- const requirementsPath = path.join(__dirname, '..', 'requirements-wenox.txt');
96
-
97
- const child = spawn(pip, [
122
+ const upgradeChild = spawn(pip, [
98
123
  'install',
99
- '-r',
100
- requirementsPath,
101
- '--force-reinstall',
102
- '--no-deps' // Skip dependency resolution, use exact versions
124
+ '--upgrade',
125
+ 'pip',
126
+ 'setuptools',
127
+ 'wheel'
103
128
  ], {
104
129
  stdio: 'inherit',
105
130
  shell: true
106
131
  });
107
132
 
108
- child.on('close', (code) => {
109
- if (code === 0) {
110
- console.log(chalk.green(' WENOX Enterprise Environment installed successfully!'));
111
- console.log(chalk.cyan('🎯 All packages match the developer environment'));
112
- resolve();
113
- } else {
114
- console.log(chalk.yellow('⚠️ Some packages failed, trying fallback installation...'));
115
-
116
- // Fallback: just install aider-chat with exact version
117
- const fallbackChild = spawn(pip, [
118
- 'install',
119
- 'aider-chat==0.16.0',
120
- 'openai==1.109.1',
121
- 'anthropic==0.76.0',
122
- '--force-reinstall'
123
- ], {
124
- stdio: 'inherit',
125
- shell: true
126
- });
127
-
128
- fallbackChild.on('close', (fallbackCode) => {
129
- if (fallbackCode === 0) {
130
- console.log(chalk.green('✅ WENOX core packages installed successfully!'));
131
- resolve();
132
- } else {
133
- reject(new Error('Failed to install WENOX dependencies'));
134
- }
135
- });
136
-
137
- fallbackChild.on('error', (err) => {
138
- reject(err);
139
- });
133
+ upgradeChild.on('close', (upgradeCode) => {
134
+ if (upgradeCode !== 0) {
135
+ console.log(chalk.yellow('⚠️ Pip upgrade failed, continuing anyway...'));
140
136
  }
137
+
138
+ // Install from our Python 3.14 compatible requirements file
139
+ console.log(chalk.cyan('📋 Installing WENOX packages (Python 3.14 compatible)...'));
140
+
141
+ const requirementsPath = path.join(__dirname, '..', 'requirements-wenox.txt');
142
+
143
+ const child = spawn(pip, [
144
+ 'install',
145
+ '-r',
146
+ requirementsPath,
147
+ '--upgrade',
148
+ '--force-reinstall'
149
+ ], {
150
+ stdio: 'inherit',
151
+ shell: true
152
+ });
153
+
154
+ child.on('close', (code) => {
155
+ if (code === 0) {
156
+ console.log(chalk.green('✅ WENOX Enterprise Environment installed successfully!'));
157
+ console.log(chalk.cyan('🎯 All packages are Python 3.14 compatible'));
158
+ resolve();
159
+ } else {
160
+ console.log(chalk.yellow('⚠️ Some packages failed, trying core installation...'));
161
+
162
+ // Fallback: install core packages only
163
+ const fallbackChild = spawn(pip, [
164
+ 'install',
165
+ 'aider-chat==0.16.0',
166
+ 'openai==1.109.1',
167
+ 'anthropic==0.76.0',
168
+ 'litellm==1.81.3',
169
+ 'pydantic>=2.0.0',
170
+ '--upgrade',
171
+ '--force-reinstall'
172
+ ], {
173
+ stdio: 'inherit',
174
+ shell: true
175
+ });
176
+
177
+ fallbackChild.on('close', (fallbackCode) => {
178
+ if (fallbackCode === 0) {
179
+ console.log(chalk.green('✅ WENOX core packages installed successfully!'));
180
+ console.log(chalk.cyan('🎯 Ready to use WENOX CLI'));
181
+ resolve();
182
+ } else {
183
+ console.log(chalk.red('❌ Installation failed. Trying minimal installation...'));
184
+
185
+ // Last resort: just aider-chat
186
+ const minimalChild = spawn(pip, [
187
+ 'install',
188
+ 'aider-chat==0.16.0',
189
+ '--upgrade'
190
+ ], {
191
+ stdio: 'inherit',
192
+ shell: true
193
+ });
194
+
195
+ minimalChild.on('close', (minimalCode) => {
196
+ if (minimalCode === 0) {
197
+ console.log(chalk.green('✅ WENOX minimal installation completed!'));
198
+ console.log(chalk.yellow('⚠️ Some features may be limited'));
199
+ resolve();
200
+ } else {
201
+ reject(new Error('Failed to install WENOX dependencies. Please check your Python installation.'));
202
+ }
203
+ });
204
+
205
+ minimalChild.on('error', (err) => {
206
+ reject(err);
207
+ });
208
+ }
209
+ });
210
+
211
+ fallbackChild.on('error', (err) => {
212
+ reject(err);
213
+ });
214
+ }
215
+ });
216
+
217
+ child.on('error', (err) => {
218
+ reject(err);
219
+ });
141
220
  });
142
221
 
143
- child.on('error', (err) => {
144
- reject(err);
222
+ upgradeChild.on('error', (err) => {
223
+ console.log(chalk.yellow('⚠️ Pip upgrade failed, continuing with installation...'));
224
+ // Continue with main installation even if upgrade fails
145
225
  });
146
226
  });
147
227
  }
@@ -221,7 +301,7 @@ async function main() {
221
301
  // Handle help flag
222
302
  if (process.argv.includes('--help') || process.argv.includes('-h')) {
223
303
  console.log(`
224
- ${chalk.cyan.bold('WENOX CLI')} - Claude API Enterprise Platform
304
+ ${chalk.bold(chalk.cyan('WENOX CLI'))} - Claude API Enterprise Platform
225
305
 
226
306
  ${chalk.bold('Usage:')}
227
307
  wenox [options] [files...]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wenox-cli",
3
- "version": "1.0.9",
3
+ "version": "1.1.1",
4
4
  "description": "WENOX AI - Advanced AI-powered development assistant",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -1,41 +1,55 @@
1
- # WENOX Enterprise Environment - Exact Working Versions
1
+ # WENOX Enterprise Environment - Python 3.14 Compatible Versions
2
+ # Core WENOX dependencies
2
3
  aider-chat==0.16.0
3
- openai==0.27.6
4
- async-timeout==4.0.2
5
- aiohttp==3.8.4
6
- aiosignal==1.3.1
7
- attrs==23.1.0
8
- certifi==2023.5.7
9
- charset-normalizer==3.1.0
10
- diskcache==5.6.1
11
- frozenlist==1.3.3
12
- gitdb==4.0.10
13
- GitPython==3.1.31
14
- grep-ast==0.2.0
15
- idna==3.4
16
- jsonschema==4.17.3
17
- markdown-it-py==2.2.0
18
- multidict==6.0.4
19
- networkx==3.1
20
- numpy==1.24.3
21
- pathspec==0.11.2
22
- prompt-toolkit==3.0.38
23
- Pygments==2.15.1
24
- pytest==7.3.1
25
- requests==2.30.0
26
- rich==13.3.5
27
- scipy==1.10.1
28
- smmap==5.0.0
29
- sounddevice==0.4.6
30
- soundfile==0.12.1
31
- tiktoken==0.4.0
32
- tqdm==4.65.0
33
- urllib3==2.0.2
34
- wcwidth==0.2.6
35
- yarl==1.9.2
4
+ openai==1.109.1
5
+ anthropic==0.76.0
6
+ litellm==1.81.3
7
+
8
+ # Essential dependencies with Python 3.14 compatibility
9
+ aiohttp==3.13.3
10
+ aiosignal==1.4.0
11
+ attrs==25.4.0
12
+ certifi==2026.1.4
13
+ charset-normalizer==3.4.4
14
+ diskcache==5.6.3
15
+ frozenlist==1.8.0
16
+ gitdb==4.0.12
17
+ GitPython==3.1.46
18
+ grep-ast==0.9.0
19
+ idna==3.11
20
+ jsonschema==4.26.0
21
+ markdown-it-py==4.0.0
22
+ multidict==6.7.1
23
+ networkx==3.6.1
24
+ numpy==2.2.6
25
+ pathspec==1.0.4
26
+ prompt-toolkit==3.0.52
27
+ Pygments==2.19.2
28
+ requests==2.32.5
29
+ rich==13.9.4
30
+ scipy==1.17.0
31
+ smmap==5.0.2
32
+ sounddevice==0.5.5
33
+ soundfile==0.13.1
34
+ tiktoken==0.12.0
35
+ tqdm==4.67.1
36
+ urllib3==2.6.3
37
+ wcwidth==0.5.0
38
+ yarl==1.22.0
36
39
  backoff==2.2.1
37
- configargparse==1.7.1
40
+ ConfigArgParse==1.7.1
38
41
  mdurl==0.1.2
39
42
  PyYAML==6.0.3
40
43
  tree-sitter==0.25.2
41
- tree-sitter-languages==1.10.2
44
+ tree-sitter-language-pack==0.13.0
45
+
46
+ # Additional compatibility packages
47
+ pydantic==2.12.5
48
+ pydantic_core==2.41.5
49
+ typing_extensions==4.15.0
50
+ packaging==25.0
51
+ anyio==4.12.1
52
+ sniffio==1.3.1
53
+ httpcore==1.0.9
54
+ httpx==0.28.1
55
+ distro==1.9.0