ironcode-ai 1.9.0 → 1.10.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.
Files changed (2) hide show
  1. package/README.md +75 -0
  2. package/package.json +4 -4
package/README.md CHANGED
@@ -24,6 +24,20 @@
24
24
 
25
25
  ## 🎉 What's New
26
26
 
27
+ ### February 2026 - Git Source Control UI
28
+
29
+ **Built-in Git UI for seamless version control within TUI:**
30
+
31
+ - 🎯 **Full Git Integration** - Stage, commit, push without leaving IronCode
32
+ - 📊 **Visual Status View** - See staged/unstaged changes with color-coded icons
33
+ - 🌿 **Branch Management** - Quick checkout between branches
34
+ - 📝 **Inline Commit** - Type commit messages directly in TUI
35
+ - 🔍 **Syntax-Highlighted Diffs** - Review changes with color-coded diffs
36
+ - ⚡ **Multi-Auth Push** - Supports SSH keys, SSH agent, and HTTPS with credential helper
37
+ - 🎨 **Intuitive UI** - Keyboard shortcuts (p: push, a: stage all, Space: stage/unstage)
38
+
39
+ **Open Git panel with `Ctrl+X` then `I` or `/git` command**
40
+
27
41
  ### February 2026 - Streaming Optimizations
28
42
 
29
43
  **Massive performance and memory improvements through streaming patterns:**
@@ -66,6 +80,7 @@ IronCode is a **high-performance CLI fork** of [OpenCode](https://github.com/ano
66
80
  ### Key Features
67
81
 
68
82
  - ⌨️ **CLI-First**: Powerful terminal UI optimized for command-line workflows
83
+ - 🎯 **Git Source Control**: Full Git integration - stage, commit, diff, push without leaving TUI
69
84
  - 🏠 **100% Local**: No cloud services, works completely offline
70
85
  - 🔒 **Privacy First**: Your code never leaves your machine
71
86
  - 🎯 **Lightweight**: Stripped down to core functionality - CLI only
@@ -142,6 +157,11 @@ IronCode rewrites key operations in native Rust with **measured real-world perfo
142
157
  | **Read (50K lines)** | 1.45 ms | 0.97 ms | **1.49x faster** | Streaming optimized |
143
158
  | **Read (100K lines)** | 3.71 ms | 2.38 ms | **1.56x faster** | 99.7% memory savings |
144
159
  | **Read (500K lines)** | 31.50 ms | 21.55 ms | **1.46x faster** | 30MB file |
160
+ | **Git Status** | ~15-20 ms | 9.43 ms | **1.83x faster** | libgit2, no spawn |
161
+ | **Git Stage/Unstage** | ~10-15 ms | <5 ms | **2-3x faster** | Native operations |
162
+ | **Git Commit** | ~15-20 ms | <10 ms | **2x faster** | Direct libgit2 |
163
+ | **Git Branch List** | ~10 ms | <5 ms | **2x faster** | No process spawn |
164
+ | **Git Diff** | ~20-30 ms | ~15 ms | **1.5x faster** | Streaming diff |
145
165
 
146
166
  **Key Insights:**
147
167
 
@@ -159,6 +179,7 @@ IronCode rewrites key operations in native Rust with **measured real-world perfo
159
179
  **Native Rust Components:**
160
180
 
161
181
  - ✅ **PTY/Terminal**: Full terminal session management with 2MB ring buffer, zero-copy streaming (15.29x faster) - Powers all Bash tool operations
182
+ - ✅ **Git Source Control**: Complete Git operations via libgit2 (status, stage, commit, push, branch, diff) - 1.5-3x faster than subprocess
162
183
  - ✅ **File Reading**: Streaming read with 64KB buffer and pre-allocation (1.2-1.6x faster, 99.7% memory savings)
163
184
  - ✅ **Grep Search**: Streaming line-by-line search (90-99% memory reduction, scales to GB files)
164
185
  - ✅ **Edit Tool**: 9 smart replacement strategies with fuzzy matching (complex compute justifies FFI)
@@ -372,6 +393,59 @@ Once started, IronCode provides an interactive terminal UI:
372
393
  - Use `Ctrl+C` to cancel operations
373
394
  - Use `Ctrl+D` or type `exit` to quit
374
395
 
396
+ ### Git Source Control
397
+
398
+ IronCode includes a built-in Git UI accessible within the TUI:
399
+
400
+ **Open Git Panel:**
401
+
402
+ - Press `Ctrl+X` then `I` (keybinding)
403
+ - Or type `/git` or `/source-control` command
404
+
405
+ **Features:**
406
+
407
+ - **Status View** - See all file changes (staged/unstaged)
408
+ - `↑↓` or `j/k`: Navigate files
409
+ - `Space`: Stage/unstage selected file
410
+ - `Enter`: View diff
411
+ - `a`: Stage all files
412
+ - `u`: Unstage all files
413
+ - `r`: Refresh status
414
+ - `p`: Push to remote
415
+ - **Branches View** - Switch between branches
416
+ - `↑↓` or `j/k`: Navigate branches
417
+ - `Enter`: Checkout branch
418
+ - Current branch marked with `*`
419
+ - **Commit View** - Create commits
420
+ - Type your commit message
421
+ - `Enter`: Commit staged changes
422
+ - `Esc`: Cancel
423
+ - **Diff View** - Review changes
424
+ - Syntax-highlighted diffs (green +, red -, blue line numbers)
425
+ - `h` or `Backspace`: Return to status view
426
+
427
+ **Push Authentication:**
428
+
429
+ IronCode supports multiple authentication methods:
430
+
431
+ - SSH keys (id_rsa, id_ed25519) from `~/.ssh/`
432
+ - SSH agent
433
+ - HTTPS with credential helper (GitHub CLI recommended)
434
+
435
+ For HTTPS authentication with GitHub:
436
+
437
+ ```bash
438
+ # Install GitHub CLI if not already installed
439
+ brew install gh # macOS
440
+ # or: sudo apt install gh # Linux
441
+
442
+ # Authenticate
443
+ gh auth login
444
+
445
+ # Configure git to use gh for credentials
446
+ git config --global credential.helper '!gh auth git-credential'
447
+ ```
448
+
375
449
  ---
376
450
 
377
451
  ## Agents
@@ -529,6 +603,7 @@ Contributions are welcome! Please read [CONTRIBUTING.md](./CONTRIBUTING.md) befo
529
603
 
530
604
  **Recent Contributions:**
531
605
 
606
+ - ✅ **Git Source Control UI** (Full TUI integration with libgit2 - Feb 2026)
532
607
  - ✅ **Streaming read optimization** (1.2-1.6x faster, 99.7% memory savings - Feb 2026)
533
608
  - ✅ **Grep streaming optimization** (90-99% memory reduction, GB-file capability - Feb 2026)
534
609
  - ✅ **Memory optimization deployed to production** (97.6% faster message processing - Feb 2026)
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.0",
9
+ "version": "1.10.0",
10
10
  "license": "MIT",
11
11
  "optionalDependencies": {
12
- "ironcode-darwin-arm64": "1.9.0",
13
- "ironcode-windows-x64": "1.9.0",
14
- "ironcode-linux-x64": "1.9.0"
12
+ "ironcode-darwin-arm64": "1.10.0",
13
+ "ironcode-windows-x64": "1.10.0",
14
+ "ironcode-linux-x64": "1.10.0"
15
15
  }
16
16
  }