ironcode-ai 1.11.0 → 1.12.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.
Files changed (2) hide show
  1. package/README.md +104 -8
  2. package/package.json +4 -4
package/README.md CHANGED
@@ -15,16 +15,45 @@
15
15
 
16
16
  <p align="center"><strong>High-performance CLI AI coding agent</strong></p>
17
17
  <p align="center">
18
- <a href="https://github.com/anomalyco/opencode"><img alt="Upstream" src="https://img.shields.io/badge/upstream-opencode-blue?style=flat-square" /></a>
19
18
  <a href="https://github.com/KSD-CO/IronCode/actions/workflows/publish.yml"><img alt="Build status" src="https://img.shields.io/github/actions/workflow/status/KSD-CO/IronCode/publish.yml?style=flat-square&branch=dev" /></a>
20
19
  <a href="https://www.npmjs.com/package/ironcode-ai"><img alt="npm version" src="https://img.shields.io/npm/v/ironcode-ai?style=flat-square" /></a>
20
+ <a href="https://ironcode.cloud/"><img alt="Website" src="https://img.shields.io/badge/website-ironcode.cloud-brightgreen?style=flat-square" /></a>
21
21
  </p>
22
22
 
23
23
  ---
24
24
 
25
25
  ## šŸŽ‰ What's New
26
26
 
27
- ### February 2026 - Git Source Control UI
27
+ ### Feb 15, 2026 - AI SDK v6 Integration
28
+
29
+ **Leveraging new AI SDK v6 features for better debugging and token efficiency:**
30
+
31
+ - šŸ”§ **DevTools Middleware** - Full debugging visibility for LLM calls via `@ai-sdk/devtools`. Enable with `"experimental": { "devtools": true }` in config, then run `npx @ai-sdk/devtools` to launch viewer at `localhost:4983`. Inspect input/output, token usage, timing, and raw provider data.
32
+ - šŸ’° **`toModelOutput` Optimization** - Tool results now send only the essential `output` text back to the model, stripping `title`, `metadata`, and `attachments` (including base64-encoded images). Reduces token usage on every tool call, especially impactful for large file reads and MCP tools.
33
+ - šŸ”Œ **Provider-Specific Tools** - Native server-side tools from AI providers (lazy-loaded, zero memory overhead when unused). Enable via `"experimental": { "provider_tools": ["anthropic:web_search", "openai:*"] }`. Available tools:
34
+ - **Anthropic**: `web_search`, `web_fetch`, `code_execution`
35
+ - **OpenAI**: `web_search`, `code_interpreter`, `image_generation`
36
+ - **Google**: `google_search`, `code_execution`, `url_context`
37
+ - **xAI**: `web_search`, `x_search`, `code_execution`
38
+ - **GitHub Copilot**: `web_search`, `local_shell`, `code_interpreter`, `file_search`, `image_generation`
39
+
40
+ ### Feb 15, 2026 - Memory Optimizations
41
+
42
+ **TypeScript:**
43
+
44
+ - šŸš€ **Lazy Provider SDK Loading** - Provider SDKs (`@ai-sdk/anthropic`, `@ai-sdk/openai`, etc.) are now dynamically imported only when their tools are requested, saving ~20-100MB of unused memory.
45
+ - šŸ“¦ **Streaming Message Processing** - Compaction pruning now streams messages instead of loading entire session history into memory. Combined with O(n) `filterCompacted()` (replacing O(n²) `unshift`), long sessions use significantly less peak RAM.
46
+
47
+ **Rust Native:**
48
+
49
+ - šŸ”§ **edit.rs** - Split content lines once and share across all 9 replacer strategies (was splitting 7x redundantly). `normalize_whitespace` builds string directly without intermediate Vec.
50
+ - šŸ“‚ **archive.rs** - Iterate ZIP entries by index instead of cloning all entry names upfront.
51
+ - šŸ” **grep.rs** - Pre-allocate match buffer with `Vec::with_capacity(128)`. Avoid intermediate clone in line truncation formatting.
52
+ - šŸ—‚ļø **glob.rs** - Partial sort with `select_nth_unstable_by` for top-N results instead of full sort on entire file list.
53
+ - šŸ“– **read.rs** - Build output string directly instead of collecting into intermediate formatted Vec then joining.
54
+ - 🌐 **webfetch.rs** - Stream-join text nodes without intermediate Vec allocation.
55
+
56
+ ### Feb 12, 2026 - Git Source Control UI
28
57
 
29
58
  **Built-in Git UI for seamless version control within TUI:**
30
59
 
@@ -38,7 +67,7 @@
38
67
 
39
68
  **Open Git panel with `Ctrl+X` then `I` or `/git` command**
40
69
 
41
- ### February 2026 - Streaming Optimizations
70
+ ### Feb 10, 2026 - Streaming Optimizations
42
71
 
43
72
  **Massive performance and memory improvements through streaming patterns:**
44
73
 
@@ -65,11 +94,11 @@
65
94
 
66
95
  ### Previous Updates
67
96
 
68
- - **Memory optimization** - 97.6% faster message processing (254ms → 6ms) - Feb 2026
69
- - **Resource monitoring** - Automatic throttling with 300MB default limit - Feb 2026
70
- - **PTY/Terminal native** - 15.29x speedup, powers Bash tool - Feb 2026
71
- - **Edit tool optimization** - 2-6x faster with 9 smart strategies
72
- - **Archive extraction** - 3-5x faster with s-zip native
97
+ - **Memory optimization** - 97.6% faster message processing (254ms → 6ms) - Feb 8, 2026
98
+ - **Resource monitoring** - Automatic throttling with 300MB default limit - Feb 7, 2026
99
+ - **PTY/Terminal native** - 15.29x speedup, powers Bash tool - Feb 5, 2026
100
+ - **Edit tool optimization** - 2-6x faster with 9 smart strategies - Feb 3, 2026
101
+ - **Archive extraction** - 3-5x faster with s-zip native - Feb 1, 2026
73
102
 
74
103
  ---
75
104
 
@@ -446,6 +475,73 @@ gh auth login
446
475
  git config --global credential.helper '!gh auth git-credential'
447
476
  ```
448
477
 
478
+ ### Provider-Specific Tools
479
+
480
+ Enable native server-side tools from AI providers. These tools run on the provider's infrastructure (not locally), giving the model direct access to web search, code execution, and more.
481
+
482
+ **Configuration** — Add `provider_tools` to the `experimental` section in your `ironcode.json`:
483
+
484
+ ```jsonc
485
+ {
486
+ "experimental": {
487
+ // Enable specific tools
488
+ "provider_tools": ["anthropic:web_search"],
489
+ },
490
+ }
491
+ ```
492
+
493
+ **Format**: `"provider:tool_name"` or `"provider:*"` (wildcard for all tools).
494
+
495
+ **Examples:**
496
+
497
+ ```jsonc
498
+ {
499
+ "experimental": {
500
+ // Single tool
501
+ "provider_tools": ["anthropic:web_search"]
502
+
503
+ // Multiple tools from one provider
504
+ "provider_tools": ["anthropic:web_search", "anthropic:code_execution"]
505
+
506
+ // All tools from a provider (wildcard)
507
+ "provider_tools": ["openai:*"]
508
+
509
+ // Mix providers — only matching tools activate
510
+ "provider_tools": [
511
+ "anthropic:web_search",
512
+ "anthropic:web_fetch",
513
+ "openai:web_search",
514
+ "google:google_search",
515
+ "xai:x_search"
516
+ ]
517
+ }
518
+ }
519
+ ```
520
+
521
+ **Available tools by provider:**
522
+
523
+ | Provider | Tool | Description |
524
+ | ------------------ | ------------------ | --------------------------------------- |
525
+ | **Anthropic** | `web_search` | Search the web for current information |
526
+ | | `web_fetch` | Fetch and read web page content |
527
+ | | `code_execution` | Execute code in a sandboxed environment |
528
+ | **OpenAI** | `web_search` | Search the web using Bing |
529
+ | | `code_interpreter` | Execute Python code with file I/O |
530
+ | | `image_generation` | Generate images with DALL-E |
531
+ | **Google** | `google_search` | Search with Google Search |
532
+ | | `code_execution` | Execute code server-side |
533
+ | | `url_context` | Fetch and analyze URL content |
534
+ | **xAI** | `web_search` | Search the web |
535
+ | | `x_search` | Search X (Twitter) posts |
536
+ | | `code_execution` | Execute code server-side |
537
+ | **GitHub Copilot** | `web_search` | Search the web via Bing |
538
+ | | `local_shell` | Execute shell commands |
539
+ | | `code_interpreter` | Execute code in sandbox |
540
+ | | `file_search` | Search files in vector stores |
541
+ | | `image_generation` | Generate images |
542
+
543
+ > **Note**: Tools only activate when the current model matches the provider. For example, `anthropic:web_search` only works when using an Anthropic model (Claude). If you configure tools for multiple providers, only the relevant ones activate per session.
544
+
449
545
  ---
450
546
 
451
547
  ## Agents
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.11.0",
9
+ "version": "1.12.1",
10
10
  "license": "MIT",
11
11
  "optionalDependencies": {
12
- "ironcode-darwin-arm64": "1.11.0",
13
- "ironcode-linux-x64-modern": "1.11.0",
14
- "ironcode-windows-x64-modern": "1.11.0"
12
+ "ironcode-linux-x64-modern": "1.12.1",
13
+ "ironcode-windows-x64-modern": "1.12.1",
14
+ "ironcode-darwin-arm64": "1.12.1"
15
15
  }
16
16
  }