ironcode-ai 1.7.0 → 1.8.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 +61 -0
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -37,6 +37,46 @@ IronCode is a **high-performance CLI fork** of [OpenCode](https://github.com/ano
|
|
|
37
37
|
|
|
38
38
|
### 🚀 Performance Improvements
|
|
39
39
|
|
|
40
|
+
IronCode delivers exceptional performance through **native Rust components** and **intelligent memory management**:
|
|
41
|
+
|
|
42
|
+
#### Memory Efficiency & Resource Monitoring
|
|
43
|
+
|
|
44
|
+
IronCode includes an **automatic resource monitoring system** that keeps memory usage under control:
|
|
45
|
+
|
|
46
|
+
- 🎯 **Default 300MB limit** - Prevents excessive memory consumption
|
|
47
|
+
- 📊 **Real-time monitoring** - Checks every 5 seconds with three levels (normal/warning/critical)
|
|
48
|
+
- 🚦 **Auto-throttling** - Automatically slows down at 95% memory to prevent crashes
|
|
49
|
+
- ⚡ **Optimized processing** - 98% faster message handling with selective cloning
|
|
50
|
+
- 🔧 **Configurable** - Adjust limits with `--max-memory` flag or disable with `--no-enable-resource-monitor`
|
|
51
|
+
|
|
52
|
+
**Memory Optimizations:**
|
|
53
|
+
|
|
54
|
+
| Optimization | Impact | Speedup |
|
|
55
|
+
| -------------------------------- | ---------------------- | ------------------------------- |
|
|
56
|
+
| **Selective Message Cloning** | 4.1MB saved per step | 97.6% faster (254ms → 6ms) |
|
|
57
|
+
| **Array Operation Improvements** | Reduced GC pressure | 7 optimizations across codebase |
|
|
58
|
+
| **Automatic Throttling** | Prevents memory spikes | Active at 285MB (95% threshold) |
|
|
59
|
+
|
|
60
|
+
**Example Usage:**
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
# Default (300MB limit, monitoring enabled)
|
|
64
|
+
ironcode
|
|
65
|
+
|
|
66
|
+
# Custom memory limit
|
|
67
|
+
ironcode --max-memory 500
|
|
68
|
+
|
|
69
|
+
# Disable resource monitoring
|
|
70
|
+
ironcode --no-enable-resource-monitor
|
|
71
|
+
|
|
72
|
+
# Both options
|
|
73
|
+
ironcode --max-memory 400 --enable-resource-monitor
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
See [RESOURCE-MONITORING.md](./RESOURCE-MONITORING.md) for full documentation.
|
|
77
|
+
|
|
78
|
+
#### Native Rust Performance
|
|
79
|
+
|
|
40
80
|
IronCode rewrites key operations in native Rust with **measured real-world performance gains**:
|
|
41
81
|
|
|
42
82
|
| Operation | TypeScript/Node | Rust Native | **Speedup** | Notes |
|
|
@@ -132,6 +172,9 @@ IronCode rewrites key operations in native Rust with **measured real-world perfo
|
|
|
132
172
|
- 🔥 **Smart edit strategies** with fuzzy matching and Levenshtein similarity
|
|
133
173
|
- 📊 **Optimized I/O**: Raw FFI implementation for consistent performance
|
|
134
174
|
- 🔧 **Consistent native tooling**: All file operations use Rust for predictable performance
|
|
175
|
+
- 🎯 **Memory efficiency**: Automatic resource monitoring with 300MB default limit
|
|
176
|
+
- 🚦 **Auto-throttling**: Prevents memory spikes and system crashes
|
|
177
|
+
- ⚡ **98% faster message processing**: Selective cloning optimization (254ms → 6ms)
|
|
135
178
|
|
|
136
179
|
---
|
|
137
180
|
|
|
@@ -231,6 +274,12 @@ _Coming soon - AUR package will be available in the future_
|
|
|
231
274
|
# Start interactive session in current directory
|
|
232
275
|
ironcode
|
|
233
276
|
|
|
277
|
+
# Run with custom memory limit (default: 300MB)
|
|
278
|
+
ironcode --max-memory 500
|
|
279
|
+
|
|
280
|
+
# Run without resource monitoring
|
|
281
|
+
ironcode --no-enable-resource-monitor
|
|
282
|
+
|
|
234
283
|
# Run with specific model
|
|
235
284
|
ironcode --model anthropic/claude-sonnet-4
|
|
236
285
|
|
|
@@ -327,6 +376,16 @@ bun run typecheck
|
|
|
327
376
|
# Format code (using prettier)
|
|
328
377
|
bun run format
|
|
329
378
|
|
|
379
|
+
# Resource monitoring tests
|
|
380
|
+
cd packages/ironcode
|
|
381
|
+
bun test test/resource.test.ts # Unit tests
|
|
382
|
+
bun test test/resource-monitor.test.ts # Allocation test
|
|
383
|
+
bun test test/resource-integration.test.ts # Server integration
|
|
384
|
+
bun --expose-gc test/clone-optimization.test.ts # Clone comparison
|
|
385
|
+
bun test test/stress-test.ts # Light load test
|
|
386
|
+
bun test test/heavy-test.ts # Heavy file ops
|
|
387
|
+
bun test test/extreme-test.ts # Conversation simulation
|
|
388
|
+
|
|
330
389
|
# Benchmark native Rust components
|
|
331
390
|
cd packages/ironcode/native/tool
|
|
332
391
|
cargo bench
|
|
@@ -412,6 +471,8 @@ Contributions are welcome! Please read [CONTRIBUTING.md](./CONTRIBUTING.md) befo
|
|
|
412
471
|
|
|
413
472
|
**Recent Contributions:**
|
|
414
473
|
|
|
474
|
+
- ✅ **Memory optimization deployed to production** (97.6% faster message processing - Feb 2026)
|
|
475
|
+
- ✅ **Resource monitoring system** (automatic throttling, 300MB default limit - Feb 2026)
|
|
415
476
|
- ✅ **Native PTY/Terminal deployed to production** (15.29x speedup, powers Bash tool - Feb 2026)
|
|
416
477
|
- ✅ Native Rust edit tool with 9 strategies (3-4x speedup)
|
|
417
478
|
- ✅ File Watcher Rust infrastructure (ready but not integrated - @parcel/watcher already native)
|
package/package.json
CHANGED
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
"scripts": {
|
|
7
7
|
"postinstall": "bun ./postinstall.mjs || node ./postinstall.mjs"
|
|
8
8
|
},
|
|
9
|
-
"version": "1.
|
|
9
|
+
"version": "1.8.0",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"optionalDependencies": {
|
|
12
|
-
"ironcode-darwin-arm64": "1.
|
|
13
|
-
"ironcode-windows-x64": "1.
|
|
14
|
-
"ironcode-linux-x64": "1.
|
|
12
|
+
"ironcode-darwin-arm64": "1.8.0",
|
|
13
|
+
"ironcode-windows-x64": "1.8.0",
|
|
14
|
+
"ironcode-linux-x64": "1.8.0"
|
|
15
15
|
}
|
|
16
16
|
}
|