ironcode-ai 1.13.3 โ†’ 1.15.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 +38 -0
  2. package/package.json +4 -4
package/README.md CHANGED
@@ -24,6 +24,37 @@
24
24
 
25
25
  ## ๐ŸŽ‰ What's New
26
26
 
27
+ ### Feb 26, 2026 - Multi-Account Providers & Round-Robin Load Balancing
28
+
29
+ **Connect multiple API keys per provider and distribute load automatically:**
30
+
31
+ - **Any provider supported** โ€” Anthropic, OpenAI, Google, GitHub Copilot, MiniMax, Qwen, and any other API-key provider
32
+ - **Automatic round-robin** โ€” every message rotates to the next account; no configuration needed
33
+ - **Preserves your model choice** โ€” only the account rotates, the model you selected stays the same
34
+ - **Per-message indicator** โ€” message header shows which account was used: `Build ยท claude-sonnet-4 ยท Anthropic (Account 2) ยท 1.2s`
35
+ - **TUI add/replace flow** โ€” clicking a connected provider shows "Add another account" or "Replace existing"; once 2+ accounts exist, the dialog shows individual rows per account
36
+ - **CLI support** โ€” `ironcode auth login` prompts "Add another account" or "Replace existing" when credentials already exist
37
+
38
+ **Setup:**
39
+ ```bash
40
+ # First account (normal flow)
41
+ ironcode auth login โ†’ Select "Anthropic" โ†’ Enter API key
42
+
43
+ # Second account
44
+ ironcode auth login โ†’ Select "Anthropic" โ†’ "Add another account" โ†’ Enter key
45
+ # Saved as "anthropic-2" in auth.json โ€” auto-discovered at startup, no config needed
46
+ ```
47
+
48
+ ### Feb 26, 2026 - Native Bash Permissions Layer
49
+
50
+ **Shell permission checks are now fully native โ€” faster and more accurate:**
51
+
52
+ - **Wildcard matching** โ€” Ported from JS to native Rust (`rexile`). Handles `*`/`?` glob patterns including the tricky `"ls *"` form that matches both `"ls"` and `"ls -la"`. Zero JS overhead on every permission check.
53
+
54
+ - **Bash command parser** โ€” `shell.rs` replaces the old WASM tree-sitter path with a native tree-sitter-bash parser. Extracts filesystem arguments, full command patterns, and `always`-allow prefixes (`"npm run *"`) used by the permission system. **50-100x faster** than WASM.
55
+
56
+ - **Smart command prefix (RETE rule engine)** โ€” 137 GRL rules loaded into a RETE `IncrementalEngine` classify every command to its correct prefix length. `npm run dev` โ†’ `"npm run *"`, `docker compose up` โ†’ `"docker compose *"`, `git config --global` โ†’ `"git config *"`. Longest-match always wins regardless of rule firing order.
57
+
27
58
  ### Feb 23, 2026 - Local Code Search (BM25 + tree-sitter)
28
59
 
29
60
  **Offline semantic code search โ€” no embeddings, no ML model download required:**
@@ -183,6 +214,7 @@ IronCode is a **high-performance CLI fork** of [OpenCode](https://github.com/ano
183
214
  ### Key Features
184
215
 
185
216
  - โŒจ๏ธ **CLI-First**: Powerful terminal UI optimized for command-line workflows
217
+ - ๐Ÿ”€ **Multi-Account Round-Robin**: Connect multiple API keys per provider for automatic load balancing โ€” Anthropic, OpenAI, Google, Copilot, and more
186
218
  - ๐ŸŽฏ **Git Source Control**: Full Git integration - stage, commit, diff, push without leaving TUI
187
219
  - ๐Ÿ” **Code Changes Panel**: Diff viewer with inline comments, hunk revert, and live change counts
188
220
  - ๐Ÿ“ **External Editor**: Opens `$EDITOR`/nvim with auto-install popup if not found
@@ -297,6 +329,8 @@ IronCode rewrites key operations in native Rust with **measured real-world perfo
297
329
  - โœ… **Directory Listing**: Fast recursive directory traversal
298
330
  - โœ… **VCS Info**: Lightning-fast git repository information (libgit2 vs subprocess)
299
331
  - โœ… **Code Search (BM25)**: Local semantic code search with tree-sitter symbol extraction โ€” finds functions by concept, not just exact text
332
+ - โœ… **Wildcard Matching**: `*`/`?` glob patterns via `rexile`, including trailing `" *"` form โ€” replaces JS impl
333
+ - โœ… **Command Prefix (RETE)**: GRL rule engine (137 rules) maps commands โ†’ arity for permission `always`-allow prefixes
300
334
  - โœ… **System Stats**: CPU and memory monitoring
301
335
 
302
336
  **Benefits:**
@@ -776,6 +810,8 @@ IronCode is built with:
776
810
  โ”‚ โ”‚ โ€ข Glob/Grep (optimized) โ”‚ โ”‚
777
811
  โ”‚ โ”‚ โ€ข Git operations (libgit2) โ”‚ โ”‚
778
812
  โ”‚ โ”‚ โ€ข BM25 + tree-sitter search โ”‚ โ”‚
813
+ โ”‚ โ”‚ โ€ข Wildcard matching (rexile) โ”‚ โ”‚
814
+ โ”‚ โ”‚ โ€ข Command prefix (RETE) โ”‚ โ”‚
779
815
  โ”‚ โ”‚ โ€ข System stats (sysinfo) โ”‚ โ”‚
780
816
  โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
781
817
  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
@@ -807,6 +843,8 @@ Contributions are welcome! Please read [CONTRIBUTING.md](./CONTRIBUTING.md) befo
807
843
 
808
844
  **Recent Contributions:**
809
845
 
846
+ - โœ… **Multi-Account Providers + Round-Robin** (Anthropic, OpenAI, Google, Copilot, any API-key provider - Feb 2026)
847
+ - โœ… **Native Wildcard + Bash Parser + Command Prefix (RETE)** (wildcard matching, tree-sitter bash, RETE rule engine - Feb 2026)
810
848
  - โœ… **Local Code Search** (BM25 + tree-sitter semantic search, 7 languages, offline - Feb 2026)
811
849
  - โœ… **Editor & Terminal** (External editor with auto-install + redesigned terminal with autosuggest - Feb 2026)
812
850
  - โœ… **Code Changes Panel** (Diff viewer with hunk revert & inline comments - 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.13.3",
9
+ "version": "1.15.0",
10
10
  "license": "MIT",
11
11
  "optionalDependencies": {
12
- "ironcode-darwin-arm64": "1.13.3",
13
- "ironcode-linux-x64-modern": "1.13.3",
14
- "ironcode-windows-x64-modern": "1.13.3"
12
+ "ironcode-linux-x64-modern": "1.15.0",
13
+ "ironcode-windows-x64-modern": "1.15.0",
14
+ "ironcode-darwin-arm64": "1.15.0"
15
15
  }
16
16
  }