ironcode-ai 1.16.0 → 1.16.2
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 +92 -0
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -24,6 +24,46 @@
|
|
|
24
24
|
|
|
25
25
|
## 🎉 What's New
|
|
26
26
|
|
|
27
|
+
### Mar 2, 2026 - Fix TUI crash when MCP servers are configured
|
|
28
|
+
|
|
29
|
+
Fixed a fatal crash (`TextNodeRenderable only accepts strings...`) that occurred ~5–10 seconds after startup whenever MCP servers were defined in `~/.config/ironcode/ironcode.json`.
|
|
30
|
+
|
|
31
|
+
- **Root cause 1** (`prompt/index.tsx`): `{props.hint}` was placed inside a `<text>` node. The MCP hint in `home.tsx` renders a `<box>`, which is not a valid child of `TextNodeRenderable`. When MCP status loaded after bootstrap, the reactive update tried to insert a `BoxRenderable` into a `TextNodeRenderable`, crashing the TUI.
|
|
32
|
+
- **Root cause 2** (`dialog-select.tsx`): The `footer` prop was always wrapped in `<text>`, but `DialogMcp` passes a JSX element (`<Status>` component) as footer — also not text-compatible.
|
|
33
|
+
|
|
34
|
+
**Fix:** Moved `{props.hint}` outside the `<text>` tag in prompt; added type-branching for footer rendering in dialog-select.
|
|
35
|
+
|
|
36
|
+
### Mar 1, 2026 - Telegram Integration
|
|
37
|
+
|
|
38
|
+
**Control IronCode remotely from your phone via Telegram:**
|
|
39
|
+
|
|
40
|
+
- **`@ironcode-ai/telegram`** — new standalone package; install globally and run from any project directory
|
|
41
|
+
- **Live streaming output** — agent responses stream in real time to your Telegram chat (throttled edits every 1.2s)
|
|
42
|
+
- **Session management** — each conversation is a separate IronCode session; switch between sessions with inline keyboard buttons
|
|
43
|
+
- **One-command setup** — `ironcode-telegram setup` walks you through token + allowed-user config, saved to `~/.config/ironcode/telegram.json`
|
|
44
|
+
- **Server deployment** — run 24/7 on a VPS with PM2 or systemd; send tasks from your phone while the server does the work
|
|
45
|
+
|
|
46
|
+
**Setup:**
|
|
47
|
+
```bash
|
|
48
|
+
npm install -g @ironcode-ai/telegram
|
|
49
|
+
|
|
50
|
+
ironcode-telegram setup
|
|
51
|
+
# → Enter your Telegram bot token (from @BotFather)
|
|
52
|
+
# → Enter your Telegram user ID (from @userinfobot)
|
|
53
|
+
|
|
54
|
+
cd your-project
|
|
55
|
+
ironcode-telegram # starts the bot, connects to IronCode
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
**Bot commands:**
|
|
59
|
+
| Command | Description |
|
|
60
|
+
|---------|-------------|
|
|
61
|
+
| `/start` | Start a new IronCode session |
|
|
62
|
+
| `/sessions` | List and switch between active sessions |
|
|
63
|
+
| `/clear` | Clear current session history |
|
|
64
|
+
| `/stop` | Stop current session |
|
|
65
|
+
| _(any message)_ | Send task to IronCode, stream the response |
|
|
66
|
+
|
|
27
67
|
### Feb 26, 2026 - Multi-Account Providers & Round-Robin Load Balancing
|
|
28
68
|
|
|
29
69
|
**Connect multiple API keys per provider and distribute load automatically:**
|
|
@@ -725,6 +765,58 @@ ironcode-telegram
|
|
|
725
765
|
- Tool calls (file edits, searches, bash commands) are reported as they complete
|
|
726
766
|
- Sessions persist across messages; switch between them with `/sessions`
|
|
727
767
|
|
|
768
|
+
**Running on a server (24/7):**
|
|
769
|
+
|
|
770
|
+
Deploy on a VPS or cloud instance so the bot is always available:
|
|
771
|
+
|
|
772
|
+
```bash
|
|
773
|
+
# 1. Install on the server
|
|
774
|
+
npm install -g ironcode-ai
|
|
775
|
+
bun install -g @ironcode-ai/telegram
|
|
776
|
+
|
|
777
|
+
# 2. Authenticate with your AI provider
|
|
778
|
+
ironcode auth login
|
|
779
|
+
|
|
780
|
+
# 3. Clone your project
|
|
781
|
+
git clone your-repo /app/my-project
|
|
782
|
+
|
|
783
|
+
# 4. Setup bot token
|
|
784
|
+
ironcode-telegram setup
|
|
785
|
+
|
|
786
|
+
# 5. Run with PM2 (auto-restart, survives reboots)
|
|
787
|
+
npm install -g pm2
|
|
788
|
+
cd /app/my-project
|
|
789
|
+
pm2 start --name ironcode-telegram -- ironcode-telegram
|
|
790
|
+
pm2 save # persist process list
|
|
791
|
+
pm2 startup # enable auto-start on reboot
|
|
792
|
+
```
|
|
793
|
+
|
|
794
|
+
Or with **systemd** (Linux):
|
|
795
|
+
|
|
796
|
+
```ini
|
|
797
|
+
# /etc/systemd/system/ironcode-telegram.service
|
|
798
|
+
[Unit]
|
|
799
|
+
Description=IronCode Telegram Bot
|
|
800
|
+
After=network.target
|
|
801
|
+
|
|
802
|
+
[Service]
|
|
803
|
+
Type=simple
|
|
804
|
+
User=ubuntu
|
|
805
|
+
WorkingDirectory=/app/my-project
|
|
806
|
+
ExecStart=/usr/local/bin/ironcode-telegram
|
|
807
|
+
Restart=on-failure
|
|
808
|
+
RestartSec=5
|
|
809
|
+
|
|
810
|
+
[Install]
|
|
811
|
+
WantedBy=multi-user.target
|
|
812
|
+
```
|
|
813
|
+
|
|
814
|
+
```bash
|
|
815
|
+
sudo systemctl enable --now ironcode-telegram
|
|
816
|
+
```
|
|
817
|
+
|
|
818
|
+
> **Note:** `WorkingDirectory` is the project directory the bot will work with. For multiple projects, run a separate instance for each.
|
|
819
|
+
|
|
728
820
|
---
|
|
729
821
|
|
|
730
822
|
## 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.16.
|
|
9
|
+
"version": "1.16.2",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"optionalDependencies": {
|
|
12
|
-
"ironcode-linux-x64": "1.16.
|
|
13
|
-
"ironcode-darwin-arm64": "1.16.
|
|
14
|
-
"ironcode-windows-x64": "1.16.
|
|
12
|
+
"ironcode-linux-x64": "1.16.2",
|
|
13
|
+
"ironcode-darwin-arm64": "1.16.2",
|
|
14
|
+
"ironcode-windows-x64": "1.16.2"
|
|
15
15
|
}
|
|
16
16
|
}
|