@votadev/tooncode 2.2.5 → 2.2.7
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 +243 -243
- package/package.json +42 -42
- package/tooncode.py +6 -4
package/README.md
CHANGED
|
@@ -1,243 +1,243 @@
|
|
|
1
|
-
# ToonCode —
|
|
2
|
-
|
|
3
|
-
> **by VotaLab** | v2.0.0 | Claude Code alternative powered by free AI models
|
|
4
|
-
|
|
5
|
-
```
|
|
6
|
-
████████╗ ██████╗ ██████╗ ███╗ ██╗ ██████╗ ██████╗ ██████╗ ███████╗
|
|
7
|
-
██║ ██║ ██║██║ ██║██╔██╗ ██║██║ ██║ ██║██║ ██║█████╗
|
|
8
|
-
╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
ToonCode is a **free, open-source** AI coding agent that runs in your terminal. It uses free AI models (no API key needed) and provides a Claude Code-like experience with 20+ tools, multi-agent teams, browser automation, and more.
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## Requirements
|
|
16
|
-
|
|
17
|
-
- **Python 3.10+**
|
|
18
|
-
- **Git**
|
|
19
|
-
- **Node.js 16+** (optional, for npm install method)
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## Installation
|
|
24
|
-
|
|
25
|
-
### Method 1: One-line install (recommended)
|
|
26
|
-
|
|
27
|
-
**Mac / Linux:**
|
|
28
|
-
```bash
|
|
29
|
-
curl -fsSL https://raw.githubusercontent.com/votalab/tooncode/main/install.sh | bash
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
**Windows (PowerShell):**
|
|
33
|
-
```powershell
|
|
34
|
-
irm https://raw.githubusercontent.com/votalab/tooncode/main/install.bat -OutFile install.bat; .\install.bat
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
### Method 2: Git clone (manual)
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
# Clone
|
|
41
|
-
git clone https://github.com/votalab/tooncode.git ~/.tooncode
|
|
42
|
-
|
|
43
|
-
# Install dependencies
|
|
44
|
-
pip install -r ~/.tooncode/requirements.txt
|
|
45
|
-
|
|
46
|
-
# Optional: Playwright for browser tool
|
|
47
|
-
pip install playwright && playwright install chromium
|
|
48
|
-
|
|
49
|
-
# Run
|
|
50
|
-
python ~/.tooncode/tooncode.py
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
**Add to PATH (run from anywhere):**
|
|
54
|
-
|
|
55
|
-
Mac/Linux — add to `~/.bashrc` or `~/.zshrc`:
|
|
56
|
-
```bash
|
|
57
|
-
alias tooncode="python ~/.tooncode/tooncode.py"
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
Windows — create `tooncode.cmd` in a PATH directory:
|
|
61
|
-
```cmd
|
|
62
|
-
@echo off
|
|
63
|
-
python %USERPROFILE%\.tooncode\tooncode.py %*
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
### Method 3: npm
|
|
67
|
-
|
|
68
|
-
```bash
|
|
69
|
-
npm install -g tooncode
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
### Method 4: Copy the folder
|
|
73
|
-
|
|
74
|
-
Just copy the entire `tooncode` folder anywhere and run:
|
|
75
|
-
```bash
|
|
76
|
-
cd /path/to/tooncode
|
|
77
|
-
pip install -r requirements.txt
|
|
78
|
-
python tooncode.py
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
---
|
|
82
|
-
|
|
83
|
-
## Quick Start
|
|
84
|
-
|
|
85
|
-
```bash
|
|
86
|
-
tooncode # Start in current directory
|
|
87
|
-
tooncode big-pickle # Start with specific model
|
|
88
|
-
tooncode minimax-m2.5-free ~/my-project # Model + directory
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
|
-
## Features
|
|
94
|
-
|
|
95
|
-
### 20 Tools
|
|
96
|
-
|
|
97
|
-
| Tool | Description |
|
|
98
|
-
|------|-------------|
|
|
99
|
-
| `bash` | Run shell commands (auto-detects PowerShell/bash) |
|
|
100
|
-
| `read` | Read files with line numbers |
|
|
101
|
-
| `write` | Create/overwrite files (shows diff) |
|
|
102
|
-
| `edit` | String replacement in files (shows diff) |
|
|
103
|
-
| `multi_edit` | Batch edits in one call |
|
|
104
|
-
| `glob` | Find files by pattern |
|
|
105
|
-
| `grep` | Search file contents with regex |
|
|
106
|
-
| `list_dir` | Browse directory structure |
|
|
107
|
-
| `web_search` | Search the web (DuckDuckGo) |
|
|
108
|
-
| `web_fetch` | Fetch web page content |
|
|
109
|
-
| `http` | Full HTTP client (GET/POST/PUT/DELETE + auth) |
|
|
110
|
-
| `browser` | Playwright browser: open, click, fill, screenshot, console, network |
|
|
111
|
-
| `screenshot` | Capture desktop/window screenshot |
|
|
112
|
-
| `spawn_agent` | Spawn sub-agent (coder/reviewer/tester/researcher) |
|
|
113
|
-
| `memory_save` | Save notes for future sessions |
|
|
114
|
-
| `memory_search` | Search past memories |
|
|
115
|
-
| `task_create/update/list` | Task management |
|
|
116
|
-
| `bosshelp` | Escalate to Claude Code or fallback model |
|
|
117
|
-
|
|
118
|
-
### Slash Commands
|
|
119
|
-
|
|
120
|
-
| Command | Description |
|
|
121
|
-
|---------|-------------|
|
|
122
|
-
| `/help` | Show all commands |
|
|
123
|
-
| `/model [name]` | Switch AI model |
|
|
124
|
-
| `/boss <task>` | Create task plan (uses Claude Code or own model) |
|
|
125
|
-
| `/team <task>` | Multi-agent team: planner + frontend + backend + reviewer + tester |
|
|
126
|
-
| `/plan` | Toggle Plan Mode (read-only) |
|
|
127
|
-
| `/do` | Execute pending tasks |
|
|
128
|
-
| `/tasks` | Show task progress |
|
|
129
|
-
| `/continue`, `/c` | Continue where AI left off |
|
|
130
|
-
| `/save`, `/s` | Save session |
|
|
131
|
-
| `/resume`, `/r` | Load saved session |
|
|
132
|
-
| `/compact` | Compress context |
|
|
133
|
-
| `/memory` | Browse saved memories |
|
|
134
|
-
| `/paste`, `/v` | Send clipboard content |
|
|
135
|
-
| `/send <msg>` | Chat between ToonCode windows |
|
|
136
|
-
| `/bg`, `/ps` | Manage background processes |
|
|
137
|
-
| `/commit` | Git add & commit |
|
|
138
|
-
| `/diff` | Git diff |
|
|
139
|
-
| `/status` | Git status |
|
|
140
|
-
| `/undo` | Undo last file edit |
|
|
141
|
-
| `/init` | Create TOONCODE.md (auto-imports CLAUDE.md etc.) |
|
|
142
|
-
| `/config` | Show/edit config |
|
|
143
|
-
| `/skills` | List 32 built-in skills |
|
|
144
|
-
| `/cost` | Token usage stats |
|
|
145
|
-
|
|
146
|
-
### Multi-Agent Team
|
|
147
|
-
|
|
148
|
-
```bash
|
|
149
|
-
/team สร้างเว็บ portfolio # Default: planner + frontend + backend
|
|
150
|
-
/team สร้าง API --roles planner,backend,tester # Custom roles
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
Agents coordinate automatically via shared channel:
|
|
154
|
-
- 📋 **planner** — Creates plan, assigns work
|
|
155
|
-
- 🎨 **frontend** — Builds UI (HTML/CSS/JS)
|
|
156
|
-
- ⚙️ **backend** — Builds API/server logic
|
|
157
|
-
- 🔍 **reviewer** — Reviews code, fixes bugs
|
|
158
|
-
- 🧪 **tester** — Writes & runs tests
|
|
159
|
-
|
|
160
|
-
### 32 Built-in Skills
|
|
161
|
-
|
|
162
|
-
```bash
|
|
163
|
-
/refactor src/utils.py # Refactor code
|
|
164
|
-
/review # Code review
|
|
165
|
-
/test api/users.js # Generate tests
|
|
166
|
-
/fix # Fix bugs
|
|
167
|
-
/explain server.py # Explain code
|
|
168
|
-
/optimize # Performance optimization
|
|
169
|
-
/docker # Create Dockerfile
|
|
170
|
-
/commit # Smart git commit
|
|
171
|
-
/audit # Security audit
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
### Available Models
|
|
175
|
-
|
|
176
|
-
| Model | Context | Notes |
|
|
177
|
-
|-------|---------|-------|
|
|
178
|
-
| `minimax-m2.5-free` | 200K | Default, good all-round |
|
|
179
|
-
| `big-pickle` | 200K | Strong coding |
|
|
180
|
-
| `nemotron-3-super-free` | 131K | Fast |
|
|
181
|
-
| `gpt-5-nano` | 1M | Largest context |
|
|
182
|
-
|
|
183
|
-
Auto-fallback: if a model fails, ToonCode automatically tries the next one.
|
|
184
|
-
|
|
185
|
-
---
|
|
186
|
-
|
|
187
|
-
## Project Context
|
|
188
|
-
|
|
189
|
-
ToonCode auto-reads these files from your project:
|
|
190
|
-
- `TOONCODE.md` — ToonCode project context
|
|
191
|
-
- `CLAUDE.md` — Claude Code context (auto-imported)
|
|
192
|
-
- `GEMINI.md` — Gemini context
|
|
193
|
-
- `.cursorrules` — Cursor rules
|
|
194
|
-
- `COPILOT.md` — Copilot instructions
|
|
195
|
-
|
|
196
|
-
Run `/init` to auto-create `TOONCODE.md` with imported content.
|
|
197
|
-
|
|
198
|
-
---
|
|
199
|
-
|
|
200
|
-
## Browser Tool
|
|
201
|
-
|
|
202
|
-
Requires Playwright:
|
|
203
|
-
```bash
|
|
204
|
-
pip install playwright && playwright install chromium
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
AI can control a real browser:
|
|
208
|
-
```
|
|
209
|
-
❯ เปิด google ค้นหา "ToonCode" แล้วสรุปผลลัพธ์
|
|
210
|
-
|
|
211
|
-
AI → browser open https://google.com/search?q=ToonCode
|
|
212
|
-
AI → browser text (reads search results)
|
|
213
|
-
AI → browser console (checks JS errors)
|
|
214
|
-
AI → browser screenshot (captures page)
|
|
215
|
-
```
|
|
216
|
-
|
|
217
|
-
---
|
|
218
|
-
|
|
219
|
-
## Update
|
|
220
|
-
|
|
221
|
-
```bash
|
|
222
|
-
cd ~/.tooncode && git pull
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
---
|
|
226
|
-
|
|
227
|
-
## Cross-Platform
|
|
228
|
-
|
|
229
|
-
| Feature | Windows | Mac | Linux |
|
|
230
|
-
|---------|:-------:|:---:|:-----:|
|
|
231
|
-
| All tools | ✅ | ✅ | ✅ |
|
|
232
|
-
| Shell | PowerShell | bash | bash |
|
|
233
|
-
| Screenshot | ImageGrab | screencapture | scrot |
|
|
234
|
-
| Clipboard | Get-Clipboard | pbpaste | xclip |
|
|
235
|
-
| Browser | ✅ | ✅ | ✅ |
|
|
236
|
-
|
|
237
|
-
---
|
|
238
|
-
|
|
239
|
-
## License
|
|
240
|
-
|
|
241
|
-
MIT — Free to use, modify, and distribute.
|
|
242
|
-
|
|
243
|
-
**Made with ❤️ by VotaLab**
|
|
1
|
+
# ToonCode — 🇹🇭 Thai Coding Agent CLI
|
|
2
|
+
|
|
3
|
+
> **by VotaLab** | v2.0.0 | Claude Code alternative powered by free AI models
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
████████╗ ██████╗ ██████╗ ███╗ ██╗ ██████╗ ██████╗ ██████╗ ███████╗
|
|
7
|
+
██║ ██║ ██║██║ ██║██╔██╗ ██║██║ ██║ ██║██║ ██║█████╗
|
|
8
|
+
╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
ToonCode is a **free, open-source** AI coding agent that runs in your terminal. It uses free AI models (no API key needed) and provides a Claude Code-like experience with 20+ tools, multi-agent teams, browser automation, and more.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Requirements
|
|
16
|
+
|
|
17
|
+
- **Python 3.10+**
|
|
18
|
+
- **Git**
|
|
19
|
+
- **Node.js 16+** (optional, for npm install method)
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Installation
|
|
24
|
+
|
|
25
|
+
### Method 1: One-line install (recommended)
|
|
26
|
+
|
|
27
|
+
**Mac / Linux:**
|
|
28
|
+
```bash
|
|
29
|
+
curl -fsSL https://raw.githubusercontent.com/votalab/tooncode/main/install.sh | bash
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
**Windows (PowerShell):**
|
|
33
|
+
```powershell
|
|
34
|
+
irm https://raw.githubusercontent.com/votalab/tooncode/main/install.bat -OutFile install.bat; .\install.bat
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Method 2: Git clone (manual)
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# Clone
|
|
41
|
+
git clone https://github.com/votalab/tooncode.git ~/.tooncode
|
|
42
|
+
|
|
43
|
+
# Install dependencies
|
|
44
|
+
pip install -r ~/.tooncode/requirements.txt
|
|
45
|
+
|
|
46
|
+
# Optional: Playwright for browser tool
|
|
47
|
+
pip install playwright && playwright install chromium
|
|
48
|
+
|
|
49
|
+
# Run
|
|
50
|
+
python ~/.tooncode/tooncode.py
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Add to PATH (run from anywhere):**
|
|
54
|
+
|
|
55
|
+
Mac/Linux — add to `~/.bashrc` or `~/.zshrc`:
|
|
56
|
+
```bash
|
|
57
|
+
alias tooncode="python ~/.tooncode/tooncode.py"
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Windows — create `tooncode.cmd` in a PATH directory:
|
|
61
|
+
```cmd
|
|
62
|
+
@echo off
|
|
63
|
+
python %USERPROFILE%\.tooncode\tooncode.py %*
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Method 3: npm
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
npm install -g tooncode
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Method 4: Copy the folder
|
|
73
|
+
|
|
74
|
+
Just copy the entire `tooncode` folder anywhere and run:
|
|
75
|
+
```bash
|
|
76
|
+
cd /path/to/tooncode
|
|
77
|
+
pip install -r requirements.txt
|
|
78
|
+
python tooncode.py
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Quick Start
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
tooncode # Start in current directory
|
|
87
|
+
tooncode big-pickle # Start with specific model
|
|
88
|
+
tooncode minimax-m2.5-free ~/my-project # Model + directory
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Features
|
|
94
|
+
|
|
95
|
+
### 20 Tools
|
|
96
|
+
|
|
97
|
+
| Tool | Description |
|
|
98
|
+
|------|-------------|
|
|
99
|
+
| `bash` | Run shell commands (auto-detects PowerShell/bash) |
|
|
100
|
+
| `read` | Read files with line numbers |
|
|
101
|
+
| `write` | Create/overwrite files (shows diff) |
|
|
102
|
+
| `edit` | String replacement in files (shows diff) |
|
|
103
|
+
| `multi_edit` | Batch edits in one call |
|
|
104
|
+
| `glob` | Find files by pattern |
|
|
105
|
+
| `grep` | Search file contents with regex |
|
|
106
|
+
| `list_dir` | Browse directory structure |
|
|
107
|
+
| `web_search` | Search the web (DuckDuckGo) |
|
|
108
|
+
| `web_fetch` | Fetch web page content |
|
|
109
|
+
| `http` | Full HTTP client (GET/POST/PUT/DELETE + auth) |
|
|
110
|
+
| `browser` | Playwright browser: open, click, fill, screenshot, console, network |
|
|
111
|
+
| `screenshot` | Capture desktop/window screenshot |
|
|
112
|
+
| `spawn_agent` | Spawn sub-agent (coder/reviewer/tester/researcher) |
|
|
113
|
+
| `memory_save` | Save notes for future sessions |
|
|
114
|
+
| `memory_search` | Search past memories |
|
|
115
|
+
| `task_create/update/list` | Task management |
|
|
116
|
+
| `bosshelp` | Escalate to Claude Code or fallback model |
|
|
117
|
+
|
|
118
|
+
### Slash Commands
|
|
119
|
+
|
|
120
|
+
| Command | Description |
|
|
121
|
+
|---------|-------------|
|
|
122
|
+
| `/help` | Show all commands |
|
|
123
|
+
| `/model [name]` | Switch AI model |
|
|
124
|
+
| `/boss <task>` | Create task plan (uses Claude Code or own model) |
|
|
125
|
+
| `/team <task>` | Multi-agent team: planner + frontend + backend + reviewer + tester |
|
|
126
|
+
| `/plan` | Toggle Plan Mode (read-only) |
|
|
127
|
+
| `/do` | Execute pending tasks |
|
|
128
|
+
| `/tasks` | Show task progress |
|
|
129
|
+
| `/continue`, `/c` | Continue where AI left off |
|
|
130
|
+
| `/save`, `/s` | Save session |
|
|
131
|
+
| `/resume`, `/r` | Load saved session |
|
|
132
|
+
| `/compact` | Compress context |
|
|
133
|
+
| `/memory` | Browse saved memories |
|
|
134
|
+
| `/paste`, `/v` | Send clipboard content |
|
|
135
|
+
| `/send <msg>` | Chat between ToonCode windows |
|
|
136
|
+
| `/bg`, `/ps` | Manage background processes |
|
|
137
|
+
| `/commit` | Git add & commit |
|
|
138
|
+
| `/diff` | Git diff |
|
|
139
|
+
| `/status` | Git status |
|
|
140
|
+
| `/undo` | Undo last file edit |
|
|
141
|
+
| `/init` | Create TOONCODE.md (auto-imports CLAUDE.md etc.) |
|
|
142
|
+
| `/config` | Show/edit config |
|
|
143
|
+
| `/skills` | List 32 built-in skills |
|
|
144
|
+
| `/cost` | Token usage stats |
|
|
145
|
+
|
|
146
|
+
### Multi-Agent Team
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
/team สร้างเว็บ portfolio # Default: planner + frontend + backend
|
|
150
|
+
/team สร้าง API --roles planner,backend,tester # Custom roles
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
Agents coordinate automatically via shared channel:
|
|
154
|
+
- 📋 **planner** — Creates plan, assigns work
|
|
155
|
+
- 🎨 **frontend** — Builds UI (HTML/CSS/JS)
|
|
156
|
+
- ⚙️ **backend** — Builds API/server logic
|
|
157
|
+
- 🔍 **reviewer** — Reviews code, fixes bugs
|
|
158
|
+
- 🧪 **tester** — Writes & runs tests
|
|
159
|
+
|
|
160
|
+
### 32 Built-in Skills
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
/refactor src/utils.py # Refactor code
|
|
164
|
+
/review # Code review
|
|
165
|
+
/test api/users.js # Generate tests
|
|
166
|
+
/fix # Fix bugs
|
|
167
|
+
/explain server.py # Explain code
|
|
168
|
+
/optimize # Performance optimization
|
|
169
|
+
/docker # Create Dockerfile
|
|
170
|
+
/commit # Smart git commit
|
|
171
|
+
/audit # Security audit
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
### Available Models
|
|
175
|
+
|
|
176
|
+
| Model | Context | Notes |
|
|
177
|
+
|-------|---------|-------|
|
|
178
|
+
| `minimax-m2.5-free` | 200K | Default, good all-round |
|
|
179
|
+
| `big-pickle` | 200K | Strong coding |
|
|
180
|
+
| `nemotron-3-super-free` | 131K | Fast |
|
|
181
|
+
| `gpt-5-nano` | 1M | Largest context |
|
|
182
|
+
|
|
183
|
+
Auto-fallback: if a model fails, ToonCode automatically tries the next one.
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## Project Context
|
|
188
|
+
|
|
189
|
+
ToonCode auto-reads these files from your project:
|
|
190
|
+
- `TOONCODE.md` — ToonCode project context
|
|
191
|
+
- `CLAUDE.md` — Claude Code context (auto-imported)
|
|
192
|
+
- `GEMINI.md` — Gemini context
|
|
193
|
+
- `.cursorrules` — Cursor rules
|
|
194
|
+
- `COPILOT.md` — Copilot instructions
|
|
195
|
+
|
|
196
|
+
Run `/init` to auto-create `TOONCODE.md` with imported content.
|
|
197
|
+
|
|
198
|
+
---
|
|
199
|
+
|
|
200
|
+
## Browser Tool
|
|
201
|
+
|
|
202
|
+
Requires Playwright:
|
|
203
|
+
```bash
|
|
204
|
+
pip install playwright && playwright install chromium
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
AI can control a real browser:
|
|
208
|
+
```
|
|
209
|
+
❯ เปิด google ค้นหา "ToonCode" แล้วสรุปผลลัพธ์
|
|
210
|
+
|
|
211
|
+
AI → browser open https://google.com/search?q=ToonCode
|
|
212
|
+
AI → browser text (reads search results)
|
|
213
|
+
AI → browser console (checks JS errors)
|
|
214
|
+
AI → browser screenshot (captures page)
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Update
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
cd ~/.tooncode && git pull
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Cross-Platform
|
|
228
|
+
|
|
229
|
+
| Feature | Windows | Mac | Linux |
|
|
230
|
+
|---------|:-------:|:---:|:-----:|
|
|
231
|
+
| All tools | ✅ | ✅ | ✅ |
|
|
232
|
+
| Shell | PowerShell | bash | bash |
|
|
233
|
+
| Screenshot | ImageGrab | screencapture | scrot |
|
|
234
|
+
| Clipboard | Get-Clipboard | pbpaste | xclip |
|
|
235
|
+
| Browser | ✅ | ✅ | ✅ |
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## License
|
|
240
|
+
|
|
241
|
+
MIT — Free to use, modify, and distribute.
|
|
242
|
+
|
|
243
|
+
**Made with ❤️ by VotaLab**
|
package/package.json
CHANGED
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@votadev/tooncode",
|
|
3
|
-
"version": "2.2.
|
|
4
|
-
"description": "
|
|
5
|
-
"author": "VotaLab",
|
|
6
|
-
"license": "MIT",
|
|
7
|
-
"keywords": [
|
|
8
|
-
"ai",
|
|
9
|
-
"coding",
|
|
10
|
-
"agent",
|
|
11
|
-
"cli",
|
|
12
|
-
"claude",
|
|
13
|
-
"free",
|
|
14
|
-
"tooncode",
|
|
15
|
-
"copilot",
|
|
16
|
-
"cursor"
|
|
17
|
-
],
|
|
18
|
-
"repository": {
|
|
19
|
-
"type": "git",
|
|
20
|
-
"url": "git+https://github.com/votalab/tooncode.git"
|
|
21
|
-
},
|
|
22
|
-
"homepage": "https://github.com/votalab/tooncode#readme",
|
|
23
|
-
"bin": {
|
|
24
|
-
"tooncode": "bin/tooncode.js"
|
|
25
|
-
},
|
|
26
|
-
"files": [
|
|
27
|
-
"bin/",
|
|
28
|
-
"tooncode.py",
|
|
29
|
-
"__main__.py",
|
|
30
|
-
"skills/",
|
|
31
|
-
"requirements.txt",
|
|
32
|
-
"setup.py",
|
|
33
|
-
"tooncode.cmd",
|
|
34
|
-
"README.md"
|
|
35
|
-
],
|
|
36
|
-
"scripts": {
|
|
37
|
-
"postinstall": "node bin/postinstall.js"
|
|
38
|
-
},
|
|
39
|
-
"engines": {
|
|
40
|
-
"node": ">=16"
|
|
41
|
-
}
|
|
42
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@votadev/tooncode",
|
|
3
|
+
"version": "2.2.7",
|
|
4
|
+
"description": "🇹🇭 Thai Coding Agent CLI — Claude Code alternative powered by free models. 20 tools, multi-agent team, browser automation, MCP servers.",
|
|
5
|
+
"author": "VotaLab",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"keywords": [
|
|
8
|
+
"ai",
|
|
9
|
+
"coding",
|
|
10
|
+
"agent",
|
|
11
|
+
"cli",
|
|
12
|
+
"claude",
|
|
13
|
+
"free",
|
|
14
|
+
"tooncode",
|
|
15
|
+
"copilot",
|
|
16
|
+
"cursor"
|
|
17
|
+
],
|
|
18
|
+
"repository": {
|
|
19
|
+
"type": "git",
|
|
20
|
+
"url": "git+https://github.com/votalab/tooncode.git"
|
|
21
|
+
},
|
|
22
|
+
"homepage": "https://github.com/votalab/tooncode#readme",
|
|
23
|
+
"bin": {
|
|
24
|
+
"tooncode": "bin/tooncode.js"
|
|
25
|
+
},
|
|
26
|
+
"files": [
|
|
27
|
+
"bin/",
|
|
28
|
+
"tooncode.py",
|
|
29
|
+
"__main__.py",
|
|
30
|
+
"skills/",
|
|
31
|
+
"requirements.txt",
|
|
32
|
+
"setup.py",
|
|
33
|
+
"tooncode.cmd",
|
|
34
|
+
"README.md"
|
|
35
|
+
],
|
|
36
|
+
"scripts": {
|
|
37
|
+
"postinstall": "node bin/postinstall.js"
|
|
38
|
+
},
|
|
39
|
+
"engines": {
|
|
40
|
+
"node": ">=16"
|
|
41
|
+
}
|
|
42
|
+
}
|
package/tooncode.py
CHANGED
|
@@ -8,7 +8,7 @@ Usage:
|
|
|
8
8
|
python tooncode.py
|
|
9
9
|
"""
|
|
10
10
|
|
|
11
|
-
VERSION = "2.2.
|
|
11
|
+
VERSION = "2.2.7"
|
|
12
12
|
|
|
13
13
|
import httpx
|
|
14
14
|
import json
|
|
@@ -4634,7 +4634,9 @@ OUTPUT THE JSON ARRAY NOW:"""
|
|
|
4634
4634
|
shell=True, capture_output=True, text=True,
|
|
4635
4635
|
encoding="utf-8", errors="replace", timeout=120)
|
|
4636
4636
|
if r2.returncode == 0:
|
|
4637
|
-
console.print(f"[bold green]Updated to v{latest}!
|
|
4637
|
+
console.print(f"[bold green]Updated to v{latest}! Restarting...[/bold green]")
|
|
4638
|
+
# Auto-restart with same args
|
|
4639
|
+
os.execv(sys.executable, [sys.executable] + sys.argv)
|
|
4638
4640
|
else:
|
|
4639
4641
|
console.print(f"[error]Update failed: {r2.stderr[:200]}[/error]")
|
|
4640
4642
|
console.print("[dim]Try manually: npm install -g @votadev/tooncode[/dim]")
|
|
@@ -4726,7 +4728,7 @@ def print_banner():
|
|
|
4726
4728
|
tagline.append(" | ", style="dim")
|
|
4727
4729
|
tagline.append(f"v{VERSION}", style="bold #00ccff")
|
|
4728
4730
|
tagline.append(" | ", style="dim")
|
|
4729
|
-
tagline.append("
|
|
4731
|
+
tagline.append("🇹🇭 Thai Coding Agent", style="dim white")
|
|
4730
4732
|
|
|
4731
4733
|
# Count stats
|
|
4732
4734
|
install_dir = os.path.dirname(os.path.abspath(__file__))
|
|
@@ -5430,7 +5432,7 @@ def _cli():
|
|
|
5430
5432
|
|
|
5431
5433
|
parser = argparse.ArgumentParser(
|
|
5432
5434
|
prog="tooncode",
|
|
5433
|
-
description="ToonCode —
|
|
5435
|
+
description="ToonCode — 🇹🇭 Thai Coding Agent CLI by VotaLab",
|
|
5434
5436
|
epilog="""Examples:
|
|
5435
5437
|
tooncode Start interactive mode
|
|
5436
5438
|
tooncode -m big-pickle Use specific model
|