@anh3d0nic/qwen-code-termux-ice 4.0.0 → 7.0.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 +110 -194
- package/package.json +12 -43
- package/scripts/ice-mobile.js +5 -0
- package/scripts/ice-session.js +6 -0
- package/scripts/ice-v5.js +371 -0
- package/scripts/ice-v6.js +305 -0
- package/scripts/ice-v7.js +291 -0
- package/scripts/test-v6.js +59 -0
package/README.md
CHANGED
|
@@ -1,253 +1,169 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @anh3d0nic/qwen-code-termux-ice v7.0.0
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Mobile-first AI coding validation assistant for Termux.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
[](https://opensource.org/licenses/MIT)
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 🚀 Quick Start
|
|
5
|
+
## Installation
|
|
11
6
|
|
|
12
7
|
```bash
|
|
13
8
|
npm install -g @anh3d0nic/qwen-code-termux-ice@latest
|
|
14
|
-
qwen-code-ice
|
|
15
9
|
```
|
|
16
10
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
## ✨ v4.0 NEW FEATURES
|
|
20
|
-
|
|
21
|
-
### 📏 50 High-Signal Pattern Rules
|
|
22
|
-
|
|
23
|
-
**Research-backed from SonarQube, ESLint, industry best practices**
|
|
24
|
-
|
|
25
|
-
**Security (15 rules):**
|
|
26
|
-
- SEC-001: SQL Injection (CWE-89, OWASP A03:2021)
|
|
27
|
-
- SEC-002: XSS via innerHTML (CWE-79)
|
|
28
|
-
- SEC-003: Hardcoded Secrets (CWE-798)
|
|
29
|
-
- SEC-004: Weak Cryptography (CWE-327)
|
|
30
|
-
- SEC-005: Path Traversal (CWE-22)
|
|
31
|
-
- SEC-006: Command Injection (CWE-78)
|
|
32
|
-
- ... and 9 more
|
|
33
|
-
|
|
34
|
-
**Performance (15 rules):**
|
|
35
|
-
- PERF-001: N+1 Query Pattern
|
|
36
|
-
- PERF-002: Nested Loops O(n²)
|
|
37
|
-
- PERF-003: Memory Leak Risk
|
|
38
|
-
- PERF-004: Blocking I/O
|
|
39
|
-
- ... and 11 more
|
|
40
|
-
|
|
41
|
-
**Technical Debt (10 rules):**
|
|
42
|
-
- DEBT-001: God Class
|
|
43
|
-
- DEBT-002: Long Method
|
|
44
|
-
- DEBT-003: TODO/FIXME Comments
|
|
45
|
-
- ... and 7 more
|
|
46
|
-
|
|
47
|
-
**Architecture (10 rules):**
|
|
48
|
-
- ARCH-001: Missing Error Boundaries
|
|
49
|
-
- ARCH-002: Global State Overuse
|
|
50
|
-
- ARCH-003: Direct Database Access
|
|
51
|
-
- ... and 7 more
|
|
11
|
+
## Commands
|
|
52
12
|
|
|
13
|
+
### Core CLI
|
|
53
14
|
```bash
|
|
54
|
-
ice
|
|
15
|
+
qwen-code-ice # Main interactive CLI
|
|
16
|
+
qwen-ice # Alias
|
|
55
17
|
```
|
|
56
18
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
### 👍 User Feedback Loop
|
|
60
|
-
|
|
61
|
-
**Learn from 60M+ GitHub Copilot reviews**
|
|
62
|
-
|
|
63
|
-
- Thumbs up/down on suggestions
|
|
64
|
-
- Tracks false positives
|
|
65
|
-
- Improves over time
|
|
66
|
-
- Optional anonymized data collection
|
|
67
|
-
|
|
19
|
+
### v7.0 Validation Tools
|
|
68
20
|
```bash
|
|
69
|
-
#
|
|
70
|
-
ice-
|
|
71
|
-
ice-
|
|
72
|
-
|
|
73
|
-
#
|
|
74
|
-
ice-
|
|
75
|
-
|
|
76
|
-
#
|
|
77
|
-
ice-
|
|
21
|
+
ice-v7 mobile # Mobile-optimized UI layout
|
|
22
|
+
ice-v7 theme [amoled|termux] # Apply dark theme
|
|
23
|
+
ice-v7 session save # Save current session
|
|
24
|
+
ice-v7 session restore # Restore previous session
|
|
25
|
+
ice-v7 session clear # Clear saved session
|
|
26
|
+
ice-v7 validate "code" # Context-aware validation (skips ORM)
|
|
27
|
+
ice-v7 pushback "code" # Pushback on dangerous code
|
|
28
|
+
ice-v7 honest # Honest limitations demo
|
|
29
|
+
ice-v7 layers "code" # Four-layer validation
|
|
30
|
+
ice-v7 debt "code" # Technical debt detection
|
|
31
|
+
ice-v7 response "text" # Format response (auto-detects mobile)
|
|
78
32
|
```
|
|
79
33
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
### 🗳️ Multi-Model Voting
|
|
34
|
+
## Features
|
|
83
35
|
|
|
84
|
-
|
|
36
|
+
### Mobile Detection
|
|
37
|
+
- Detects Termux via `process.env.TERMUX_VERSION`
|
|
38
|
+
- Detects small screens (<80 columns)
|
|
39
|
+
- Formats responses differently for mobile vs desktop
|
|
85
40
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
-
|
|
89
|
-
- Aggregate votes with confidence scores
|
|
90
|
-
- Report only on high-consensus issues
|
|
91
|
-
- Reduces false positives by 40%
|
|
41
|
+
### Mobile Response Format
|
|
42
|
+
- Truncates to 500 characters on mobile
|
|
43
|
+
- Shows tip to use desktop for full output
|
|
92
44
|
|
|
45
|
+
### AMOLED Theme
|
|
93
46
|
```bash
|
|
94
|
-
ice-
|
|
47
|
+
ice-v7 theme amoled
|
|
95
48
|
```
|
|
49
|
+
Pure black (#000000) background with high contrast colors.
|
|
96
50
|
|
|
97
|
-
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
✅ QWEN: VIOLATION (confidence: 95%)
|
|
102
|
-
✅ GEMINI: VIOLATION (confidence: 90%)
|
|
103
|
-
❌ GROQ: OK (confidence: 85%)
|
|
104
|
-
|
|
105
|
-
Consensus: VIOLATION (67% agreement)
|
|
106
|
-
Confidence: MEDIUM
|
|
51
|
+
### Session Management
|
|
52
|
+
```bash
|
|
53
|
+
ice-v7 session save # Saves to ~/.qwen/ice_session.json
|
|
54
|
+
ice-v7 session restore # Restores from ~/.qwen/ice_session.json
|
|
107
55
|
```
|
|
108
56
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
### 🔧 Auto-Fix Mode (Experimental)
|
|
112
|
-
|
|
113
|
-
**Based on GitHub Copilot Autofix, Xygeni AutoFix**
|
|
114
|
-
|
|
115
|
-
⚠️ **VERY CAREFUL** with multiple safety layers:
|
|
116
|
-
|
|
117
|
-
- ✅ Requires user confirmation
|
|
118
|
-
- ✅ Creates backup before changes
|
|
119
|
-
- ✅ Shows diff first (dry run)
|
|
120
|
-
- ✅ Only LOW/MEDIUM severity
|
|
121
|
-
- ✅ Runs tests after (if available)
|
|
122
|
-
- ✅ Logs all changes
|
|
123
|
-
|
|
57
|
+
### Context-Aware Validation
|
|
124
58
|
```bash
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
# Apply with confirmation
|
|
129
|
-
ice-v4 autofix --apply src/auth.py
|
|
130
|
-
# ⚠️ Shows big warnings, requires 'y' to confirm
|
|
59
|
+
ice-v7 validate "prisma.user.findUnique()"
|
|
60
|
+
# Skips SQL injection warning when ORM detected
|
|
131
61
|
```
|
|
132
62
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
63
|
+
Skip contexts configured:
|
|
64
|
+
- `prisma.`, `sequelize.`, `typeorm.`, `knex.` - ORM detection
|
|
65
|
+
- `.findOne()`, `.findAll()` - ORM methods
|
|
66
|
+
- `.query(?)` - Parameterized queries
|
|
67
|
+
- `.test.`, `.spec.` - Test files
|
|
68
|
+
- `process.env` - Already using env vars
|
|
136
69
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
---
|
|
148
|
-
|
|
149
|
-
## 📦 Installation
|
|
150
|
-
|
|
151
|
-
### From npm
|
|
70
|
+
### Pushback Mode
|
|
71
|
+
```bash
|
|
72
|
+
ice-v7 pushback "SELECT * FROM users WHERE id = '' + userId"
|
|
73
|
+
```
|
|
74
|
+
Blocks and explains why for:
|
|
75
|
+
- SQL injection patterns
|
|
76
|
+
- Hardcoded passwords
|
|
77
|
+
- eval() usage
|
|
78
|
+
- Infinite loops
|
|
152
79
|
|
|
80
|
+
### Honest Limitations
|
|
153
81
|
```bash
|
|
154
|
-
|
|
82
|
+
ice-v7 honest
|
|
155
83
|
```
|
|
84
|
+
Shows uncertainty when confidence <60%
|
|
156
85
|
|
|
157
|
-
###
|
|
86
|
+
### Four-Layer Validation
|
|
87
|
+
```bash
|
|
88
|
+
ice-v7 layers "code"
|
|
89
|
+
```
|
|
90
|
+
Checks: Security, Architecture, Performance, Maintainability
|
|
158
91
|
|
|
92
|
+
### Technical Debt Detection
|
|
159
93
|
```bash
|
|
160
|
-
|
|
161
|
-
cd qwen-code-termux-ice
|
|
162
|
-
npm install --legacy-peer-deps
|
|
163
|
-
npm run build
|
|
94
|
+
ice-v7 debt "code"
|
|
164
95
|
```
|
|
96
|
+
Detects: God classes, missing abstractions, TODO/FIXME comments
|
|
165
97
|
|
|
166
|
-
|
|
98
|
+
## Configuration Files
|
|
167
99
|
|
|
168
|
-
|
|
100
|
+
| File | Location | Purpose |
|
|
101
|
+
|------|----------|---------|
|
|
102
|
+
| Session | `~/.qwen/ice_session.json` | Auto-saved conversations |
|
|
103
|
+
| Config | `~/.qwen/ice_config.json` | User preferences |
|
|
169
104
|
|
|
170
|
-
|
|
105
|
+
## Package Info
|
|
171
106
|
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
107
|
+
- **Version:** 7.0.0
|
|
108
|
+
- **License:** MIT
|
|
109
|
+
- **Dependencies:** None
|
|
110
|
+
- **Size:** 13.1 MB (compressed)
|
|
111
|
+
- **Binaries:** qwen-code-ice, qwen-ice, ice-v7
|
|
175
112
|
|
|
176
|
-
|
|
177
|
-
ice-v4 feedback --thumbs-up
|
|
178
|
-
ice-v4 feedback --stats
|
|
113
|
+
## Changelog
|
|
179
114
|
|
|
180
|
-
|
|
181
|
-
ice-v4 vote "src/auth.py"
|
|
115
|
+
### v7.0.0 (2026-03-21)
|
|
182
116
|
|
|
183
|
-
|
|
184
|
-
ice-v4 autofix --dry-run src/auth.py
|
|
185
|
-
ice-v4 autofix --apply src/auth.py
|
|
186
|
-
```
|
|
117
|
+
**Consolidated from previous versions:**
|
|
187
118
|
|
|
188
|
-
|
|
119
|
+
**From v6.0:**
|
|
120
|
+
- Mobile screen detection (`detectMobile()` function)
|
|
121
|
+
- Mobile response formatting (500 char limit)
|
|
122
|
+
- Desktop response formatting
|
|
123
|
+
- AMOLED theme with ANSI codes
|
|
124
|
+
- Session save/restore (`SessionManager` class)
|
|
189
125
|
|
|
190
|
-
|
|
126
|
+
**From v5.0:**
|
|
127
|
+
- Context-aware validation rules (4 rules with skip contexts)
|
|
128
|
+
- Pushback mode (4 triggers with blocking)
|
|
129
|
+
- Honest limitations mode (confidence threshold 60%)
|
|
191
130
|
|
|
192
|
-
|
|
193
|
-
-
|
|
194
|
-
-
|
|
195
|
-
- CWE/OWASP top 10 references
|
|
131
|
+
**From v3.0:**
|
|
132
|
+
- Four-layer validation (Security, Architecture, Performance, Maintainability)
|
|
133
|
+
- Technical debt detection (God class, missing abstractions)
|
|
196
134
|
|
|
197
|
-
|
|
198
|
-
-
|
|
199
|
-
-
|
|
200
|
-
-
|
|
135
|
+
**Removed:**
|
|
136
|
+
- Vim keyboard shortcuts (not aligned with mobile focus)
|
|
137
|
+
- Multi-model voting (was simulation only)
|
|
138
|
+
- Local-first mode (was print only)
|
|
139
|
+
- Feedback loop (no analysis implemented)
|
|
140
|
+
- Auto-fix mode (too basic for production)
|
|
201
141
|
|
|
202
|
-
###
|
|
203
|
-
- Zhihu study (March 2026): Claude vs Gemini vs GPT-5
|
|
204
|
-
- 40% reduction in false positives
|
|
205
|
-
- Consensus-based reporting
|
|
142
|
+
### v6.0.0 (2026-03-21)
|
|
206
143
|
|
|
207
|
-
|
|
208
|
-
- GitHub Advanced Security Autofix
|
|
209
|
-
- Xygeni AutoRemediation
|
|
210
|
-
- International AI Safety Report 2025 recommendations
|
|
144
|
+
Added mobile UX features, AMOLED theme, session management.
|
|
211
145
|
|
|
212
|
-
|
|
146
|
+
### v5.0.0 (2026-03-21)
|
|
213
147
|
|
|
214
|
-
|
|
148
|
+
Added context-aware validation, pushback mode, honest limitations.
|
|
215
149
|
|
|
216
|
-
|
|
217
|
-
# Run v4.0 tests
|
|
218
|
-
npm run test-v4
|
|
150
|
+
### v4.0.0 (2026-03-21)
|
|
219
151
|
|
|
220
|
-
|
|
221
|
-
ice-v4 validate "def login(user): query = 'SELECT * FROM users WHERE id = ' + user"
|
|
152
|
+
Added pattern rules with CWE/OWASP references.
|
|
222
153
|
|
|
223
|
-
|
|
224
|
-
ice-v4 feedback --thumbs-up
|
|
154
|
+
### v3.0.0 (2026-03-21)
|
|
225
155
|
|
|
226
|
-
|
|
227
|
-
ice-v4 vote "test code"
|
|
228
|
-
```
|
|
156
|
+
Added four-layer validation, technical debt detection.
|
|
229
157
|
|
|
230
|
-
|
|
158
|
+
### v1.1.0 (2026-03-21)
|
|
231
159
|
|
|
232
|
-
|
|
160
|
+
Removed deprecated `@anh3d0nic/ice` dependency.
|
|
233
161
|
|
|
234
|
-
|
|
235
|
-
|--------|------|-------------|
|
|
236
|
-
| Pattern Rules | 6 generic | **50 specific** |
|
|
237
|
-
| False Positives | 25% | **<10%** (with voting) |
|
|
238
|
-
| User Satisfaction | N/A | **>85%** (with feedback) |
|
|
239
|
-
| Auto-Fix Success | N/A | **75%** (tests pass) |
|
|
162
|
+
### v1.0.1 (2026-03-21)
|
|
240
163
|
|
|
241
|
-
|
|
164
|
+
Initial release.
|
|
242
165
|
|
|
243
|
-
##
|
|
166
|
+
## Repository
|
|
244
167
|
|
|
168
|
+
- **Source:** https://github.com/anh3d0nic/qwen-code-termux-ice
|
|
245
169
|
- **npm:** https://www.npmjs.com/package/@anh3d0nic/qwen-code-termux-ice
|
|
246
|
-
- **GitHub:** https://github.com/anh3d0nic/qwen-code-termux-ice
|
|
247
|
-
- **Documentation:** ./docs/
|
|
248
|
-
|
|
249
|
-
---
|
|
250
|
-
|
|
251
|
-
**v4.0 - Research-Backed, Production-Ready** ❄️
|
|
252
|
-
|
|
253
|
-
*Based on 2026 industry research + best practices*
|
package/package.json
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anh3d0nic/qwen-code-termux-ice",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "Qwen Code ICE
|
|
5
|
-
"engines": {
|
|
6
|
-
"node": ">=20.0.0"
|
|
7
|
-
},
|
|
3
|
+
"version": "7.0.0",
|
|
4
|
+
"description": "Qwen Code ICE v7.0 - Consolidated Mobile-First Validation",
|
|
5
|
+
"engines": { "node": ">=20.0.0" },
|
|
8
6
|
"type": "module",
|
|
9
|
-
"workspaces": [
|
|
10
|
-
"packages/*"
|
|
11
|
-
],
|
|
7
|
+
"workspaces": [ "packages/*" ],
|
|
12
8
|
"repository": {
|
|
13
9
|
"type": "git",
|
|
14
10
|
"url": "git+https://github.com/anh3d0nic/qwen-code-termux-ice.git"
|
|
@@ -18,46 +14,19 @@
|
|
|
18
14
|
"bin": {
|
|
19
15
|
"qwen-code-ice": "./scripts/start.js",
|
|
20
16
|
"qwen-ice": "./scripts/start.js",
|
|
21
|
-
"ice-
|
|
22
|
-
"ice-v4": "./scripts/ice-v4.js",
|
|
23
|
-
"ice-validate": "./scripts/ice-validate.js",
|
|
24
|
-
"ice-feedback": "./scripts/ice-feedback.js",
|
|
25
|
-
"ice-vote": "./scripts/ice-vote.js",
|
|
26
|
-
"ice-autofix": "./scripts/ice-autofix.js"
|
|
17
|
+
"ice-v7": "./scripts/ice-v7.js"
|
|
27
18
|
},
|
|
28
19
|
"scripts": {
|
|
29
20
|
"start": "node scripts/start.js",
|
|
30
21
|
"dev": "node scripts/dev.js",
|
|
31
22
|
"build": "node scripts/build.js",
|
|
32
|
-
"ice-
|
|
33
|
-
"test-
|
|
34
|
-
"ice-v4": "node scripts/ice-v4.js",
|
|
35
|
-
"test-v4": "node scripts/test-v4.js"
|
|
23
|
+
"ice-v7": "node scripts/ice-v7.js",
|
|
24
|
+
"test-v7": "node scripts/test-v7.js"
|
|
36
25
|
},
|
|
37
26
|
"keywords": [
|
|
38
|
-
"qwen",
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"ice",
|
|
42
|
-
"ai",
|
|
43
|
-
"assistant",
|
|
44
|
-
"android",
|
|
45
|
-
"groq",
|
|
46
|
-
"gemini",
|
|
47
|
-
"thinking-partner",
|
|
48
|
-
"code-validation",
|
|
49
|
-
"security-scanner",
|
|
50
|
-
"technical-debt",
|
|
51
|
-
"code-quality",
|
|
52
|
-
"claude-code-alternative",
|
|
53
|
-
"real-enhancements",
|
|
54
|
-
"multi-model-voting",
|
|
55
|
-
"feedback-loop",
|
|
56
|
-
"autofix",
|
|
57
|
-
"pattern-library",
|
|
58
|
-
"sonarqube",
|
|
59
|
-
"eslint"
|
|
27
|
+
"qwen", "code", "termux", "ice", "ai", "assistant", "android",
|
|
28
|
+
"groq", "gemini", "mobile-ux", "amoled", "session-resume",
|
|
29
|
+
"context-aware", "pushback", "validation"
|
|
60
30
|
],
|
|
61
|
-
"dependencies": {}
|
|
62
|
-
|
|
63
|
-
}
|
|
31
|
+
"dependencies": {}
|
|
32
|
+
}
|