toonify-mcp 0.2.3 → 0.3.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.
- package/README.de.md +270 -0
- package/README.es.md +270 -0
- package/README.fr.md +270 -0
- package/README.id.md +270 -0
- package/README.ja.md +270 -0
- package/README.ko.md +270 -0
- package/README.md +21 -10
- package/README.pt.md +270 -0
- package/README.ru.md +270 -0
- package/README.vi.md +270 -0
- package/README.zh-CN.md +270 -0
- package/README.zh-TW.md +27 -16
- package/dist/metrics/metrics-collector.d.ts +2 -0
- package/dist/metrics/metrics-collector.d.ts.map +1 -1
- package/dist/metrics/metrics-collector.js +43 -8
- package/dist/metrics/metrics-collector.js.map +1 -1
- package/dist/optimizer/caching/cache-optimizer.d.ts +53 -0
- package/dist/optimizer/caching/cache-optimizer.d.ts.map +1 -0
- package/dist/optimizer/caching/cache-optimizer.js +176 -0
- package/dist/optimizer/caching/cache-optimizer.js.map +1 -0
- package/dist/optimizer/caching/cache-strategies.d.ts +19 -0
- package/dist/optimizer/caching/cache-strategies.d.ts.map +1 -0
- package/dist/optimizer/caching/cache-strategies.js +62 -0
- package/dist/optimizer/caching/cache-strategies.js.map +1 -0
- package/dist/optimizer/caching/cache-types.d.ts +36 -0
- package/dist/optimizer/caching/cache-types.d.ts.map +1 -0
- package/dist/optimizer/caching/cache-types.js +5 -0
- package/dist/optimizer/caching/cache-types.js.map +1 -0
- package/dist/optimizer/caching/index.d.ts +7 -0
- package/dist/optimizer/caching/index.d.ts.map +1 -0
- package/dist/optimizer/caching/index.js +7 -0
- package/dist/optimizer/caching/index.js.map +1 -0
- package/dist/optimizer/multilingual/index.d.ts +7 -0
- package/dist/optimizer/multilingual/index.d.ts.map +1 -0
- package/dist/optimizer/multilingual/index.js +7 -0
- package/dist/optimizer/multilingual/index.js.map +1 -0
- package/dist/optimizer/multilingual/language-detector.d.ts +43 -0
- package/dist/optimizer/multilingual/language-detector.d.ts.map +1 -0
- package/dist/optimizer/multilingual/language-detector.js +161 -0
- package/dist/optimizer/multilingual/language-detector.js.map +1 -0
- package/dist/optimizer/multilingual/language-profiles.d.ts +34 -0
- package/dist/optimizer/multilingual/language-profiles.d.ts.map +1 -0
- package/dist/optimizer/multilingual/language-profiles.js +196 -0
- package/dist/optimizer/multilingual/language-profiles.js.map +1 -0
- package/dist/optimizer/multilingual/tokenizer-adapter.d.ts +47 -0
- package/dist/optimizer/multilingual/tokenizer-adapter.d.ts.map +1 -0
- package/dist/optimizer/multilingual/tokenizer-adapter.js +96 -0
- package/dist/optimizer/multilingual/tokenizer-adapter.js.map +1 -0
- package/dist/optimizer/token-optimizer.d.ts +11 -1
- package/dist/optimizer/token-optimizer.d.ts.map +1 -1
- package/dist/optimizer/token-optimizer.js +49 -8
- package/dist/optimizer/token-optimizer.js.map +1 -1
- package/dist/optimizer/types.d.ts +15 -0
- package/dist/optimizer/types.d.ts.map +1 -1
- package/package.json +2 -2
package/README.pt.md
ADDED
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
# 🎯 Toonify MCP
|
|
2
|
+
|
|
3
|
+
**[English](README.md) | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [Español](README.es.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [한국어](README.ko.md) | [Русский](README.ru.md) | [Português](README.pt.md) | [Tiếng Việt](README.vi.md) | [Bahasa Indonesia](README.id.md)**
|
|
4
|
+
|
|
5
|
+
Servidor MCP + Plugin Claude Code fornecendo otimização automática de tokens para dados estruturados.
|
|
6
|
+
Reduz o uso de tokens da API do Claude em **30-65% dependendo da estrutura de dados** através da conversão transparente para o formato TOON, com economias típicas de **50-55%** para dados estruturados.
|
|
7
|
+
|
|
8
|
+
## Novidades na v0.3.0
|
|
9
|
+
|
|
10
|
+
✨ **Otimização Multilíngue de Tokens!**
|
|
11
|
+
- ✅ Contagem precisa de tokens para mais de 15 idiomas (chinês, japonês, coreano, espanhol, árabe, etc.)
|
|
12
|
+
- ✅ Multiplicadores de tokens conscientes do idioma (2x para chinês, 2.5x para japonês, 3x para árabe)
|
|
13
|
+
- ✅ Suporte a textos em idiomas mistos com detecção automática
|
|
14
|
+
- ✅ Precisão de otimização aprimorada baseada em benchmarks reais
|
|
15
|
+
- ✅ Economia de tokens comprovada por dados (faixa de 30-65%, tipicamente 50-55%)
|
|
16
|
+
|
|
17
|
+
## Recursos
|
|
18
|
+
|
|
19
|
+
- **Redução de 30-65% de Tokens** (tipicamente 50-55%) para dados JSON, CSV, YAML
|
|
20
|
+
- **Suporte Multilíngue** - Contagem precisa de tokens para mais de 15 idiomas
|
|
21
|
+
- **Totalmente Automático** - Hook PostToolUse intercepta resultados de ferramentas
|
|
22
|
+
- **Configuração Zero** - Funciona imediatamente com padrões sensatos
|
|
23
|
+
- **Modo Duplo** - Funciona como Plugin (automático) ou Servidor MCP (manual)
|
|
24
|
+
- **Métricas Integradas** - Rastreie economia de tokens localmente
|
|
25
|
+
- **Fallback Silencioso** - Nunca quebra seu fluxo de trabalho
|
|
26
|
+
|
|
27
|
+
## Instalação
|
|
28
|
+
|
|
29
|
+
### Opção A: Plugin Claude Code (Recomendado) ⭐
|
|
30
|
+
|
|
31
|
+
**Otimização automática de tokens sem chamadas manuais:**
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# 1. Instalar globalmente
|
|
35
|
+
npm install -g toonify-mcp
|
|
36
|
+
|
|
37
|
+
# 2. Adicionar como plugin (modo automático)
|
|
38
|
+
claude plugin add toonify-mcp
|
|
39
|
+
|
|
40
|
+
# 3. Verificar instalação
|
|
41
|
+
claude plugin list
|
|
42
|
+
# Deve mostrar: toonify-mcp ✓
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**É isso!** O hook PostToolUse agora interceptará e otimizará automaticamente dados estruturados do Read, Grep e outras ferramentas de arquivo.
|
|
46
|
+
|
|
47
|
+
### Opção B: Servidor MCP (Modo manual)
|
|
48
|
+
|
|
49
|
+
**Para controle explícito ou clientes MCP não-Claude Code:**
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
# 1. Instalar globalmente
|
|
53
|
+
npm install -g toonify-mcp
|
|
54
|
+
|
|
55
|
+
# 2. Registrar como servidor MCP
|
|
56
|
+
claude mcp add toonify -- toonify-mcp
|
|
57
|
+
|
|
58
|
+
# 3. Verificar
|
|
59
|
+
claude mcp list
|
|
60
|
+
# Deve mostrar: toonify: toonify-mcp - ✓ Connected
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Então chame as ferramentas explicitamente:
|
|
64
|
+
```bash
|
|
65
|
+
claude mcp call toonify optimize_content '{"content": "..."}'
|
|
66
|
+
claude mcp call toonify get_stats '{}'
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Como Funciona
|
|
70
|
+
|
|
71
|
+
### Modo Plugin (Automático)
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
Usuário: Ler arquivo JSON grande
|
|
75
|
+
↓
|
|
76
|
+
Claude Code chama ferramenta Read
|
|
77
|
+
↓
|
|
78
|
+
Hook PostToolUse intercepta resultado
|
|
79
|
+
↓
|
|
80
|
+
Hook detecta JSON, converte para TOON
|
|
81
|
+
↓
|
|
82
|
+
Conteúdo otimizado enviado à API Claude
|
|
83
|
+
↓
|
|
84
|
+
Redução típica de 50-55% de tokens alcançada ✨
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Modo Servidor MCP (Manual)
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
Usuário: chama explicitamente mcp__toonify__optimize_content
|
|
91
|
+
↓
|
|
92
|
+
Conteúdo convertido para formato TOON
|
|
93
|
+
↓
|
|
94
|
+
Retorna resultado otimizado
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Configuração
|
|
98
|
+
|
|
99
|
+
Crie `~/.claude/toonify-config.json` (opcional):
|
|
100
|
+
|
|
101
|
+
```json
|
|
102
|
+
{
|
|
103
|
+
"enabled": true,
|
|
104
|
+
"minTokensThreshold": 50,
|
|
105
|
+
"minSavingsThreshold": 30,
|
|
106
|
+
"skipToolPatterns": ["Bash", "Write", "Edit"]
|
|
107
|
+
}
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Opções
|
|
111
|
+
|
|
112
|
+
- **enabled**: Habilitar/desabilitar otimização automática (padrão: `true`)
|
|
113
|
+
- **minTokensThreshold**: Tokens mínimos antes da otimização (padrão: `50`)
|
|
114
|
+
- **minSavingsThreshold**: Porcentagem mínima de economia necessária (padrão: `30%`)
|
|
115
|
+
- **skipToolPatterns**: Ferramentas que nunca serão otimizadas (padrão: `["Bash", "Write", "Edit"]`)
|
|
116
|
+
|
|
117
|
+
### Variáveis de Ambiente
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
export TOONIFY_ENABLED=true
|
|
121
|
+
export TOONIFY_MIN_TOKENS=50
|
|
122
|
+
export TOONIFY_MIN_SAVINGS=30
|
|
123
|
+
export TOONIFY_SKIP_TOOLS="Bash,Write"
|
|
124
|
+
export TOONIFY_SHOW_STATS=true # Mostrar estatísticas de otimização na saída
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## Exemplos
|
|
128
|
+
|
|
129
|
+
### Antes da Otimização (142 tokens)
|
|
130
|
+
|
|
131
|
+
```json
|
|
132
|
+
{
|
|
133
|
+
"products": [
|
|
134
|
+
{"id": 101, "name": "Laptop Pro", "price": 1299},
|
|
135
|
+
{"id": 102, "name": "Magic Mouse", "price": 79}
|
|
136
|
+
]
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### Depois da Otimização (57 tokens, -60%)
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
[TOON-JSON]
|
|
144
|
+
products[2]{id,name,price}:
|
|
145
|
+
101,Laptop Pro,1299
|
|
146
|
+
102,Magic Mouse,79
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
**Aplicado automaticamente no modo Plugin - não são necessárias chamadas manuais!**
|
|
150
|
+
|
|
151
|
+
## Dicas de Uso
|
|
152
|
+
|
|
153
|
+
### Quando a Otimização Automática é Acionada?
|
|
154
|
+
|
|
155
|
+
O hook PostToolUse otimiza automaticamente quando:
|
|
156
|
+
- ✅ Conteúdo é JSON, CSV ou YAML válido
|
|
157
|
+
- ✅ Tamanho do conteúdo ≥ `minTokensThreshold` (padrão: 50 tokens)
|
|
158
|
+
- ✅ Economia estimada ≥ `minSavingsThreshold` (padrão: 30%)
|
|
159
|
+
- ✅ Ferramenta NÃO está em `skipToolPatterns` (ex: não Bash/Write/Edit)
|
|
160
|
+
|
|
161
|
+
### Visualizar Estatísticas de Otimização
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
# No modo Plugin
|
|
165
|
+
claude mcp call toonify get_stats '{}'
|
|
166
|
+
|
|
167
|
+
# Ou verifique a saída do Claude Code para estatísticas (se TOONIFY_SHOW_STATS=true)
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
## Solução de Problemas
|
|
171
|
+
|
|
172
|
+
### Hook Não Está Sendo Acionado
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
# 1. Verificar se o plugin está instalado
|
|
176
|
+
claude plugin list | grep toonify
|
|
177
|
+
|
|
178
|
+
# 2. Verificar configuração
|
|
179
|
+
cat ~/.claude/toonify-config.json
|
|
180
|
+
|
|
181
|
+
# 3. Habilitar estatísticas para ver tentativas de otimização
|
|
182
|
+
export TOONIFY_SHOW_STATS=true
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Otimização Não Aplicada
|
|
186
|
+
|
|
187
|
+
- Verifique `minTokensThreshold` - conteúdo pode ser muito pequeno
|
|
188
|
+
- Verifique `minSavingsThreshold` - economia pode ser < 30%
|
|
189
|
+
- Verifique `skipToolPatterns` - ferramenta pode estar na lista de exclusão
|
|
190
|
+
- Verifique se o conteúdo é JSON/CSV/YAML válido
|
|
191
|
+
|
|
192
|
+
### Problemas de Desempenho
|
|
193
|
+
|
|
194
|
+
- Reduza `minTokensThreshold` para otimizar mais agressivamente
|
|
195
|
+
- Aumente `minSavingsThreshold` para pular otimizações marginais
|
|
196
|
+
- Adicione mais ferramentas a `skipToolPatterns` se necessário
|
|
197
|
+
|
|
198
|
+
## Comparação: Plugin vs Servidor MCP
|
|
199
|
+
|
|
200
|
+
| Recurso | Modo Plugin | Modo Servidor MCP |
|
|
201
|
+
|---------|------------|-----------------|
|
|
202
|
+
| **Ativação** | Automática (PostToolUse) | Manual (chamar ferramenta) |
|
|
203
|
+
| **Compatibilidade** | Apenas Claude Code | Qualquer cliente MCP |
|
|
204
|
+
| **Configuração** | Arquivo de config do plugin | Ferramentas MCP |
|
|
205
|
+
| **Desempenho** | Overhead zero | Overhead de chamada |
|
|
206
|
+
| **Caso de Uso** | Fluxo de trabalho diário | Controle explícito |
|
|
207
|
+
|
|
208
|
+
**Recomendação**: Use o modo Plugin para otimização automática. Use o modo Servidor MCP para controle explícito ou outros clientes MCP.
|
|
209
|
+
|
|
210
|
+
## Desinstalar
|
|
211
|
+
|
|
212
|
+
### Modo Plugin
|
|
213
|
+
```bash
|
|
214
|
+
claude plugin remove toonify-mcp
|
|
215
|
+
rm ~/.claude/toonify-config.json
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
### Modo Servidor MCP
|
|
219
|
+
```bash
|
|
220
|
+
claude mcp remove toonify
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### Pacote
|
|
224
|
+
```bash
|
|
225
|
+
npm uninstall -g toonify-mcp
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
## Links
|
|
229
|
+
|
|
230
|
+
- **GitHub**: https://github.com/kevintseng/toonify-mcp
|
|
231
|
+
- **Issues**: https://github.com/kevintseng/toonify-mcp/issues
|
|
232
|
+
- **NPM**: https://www.npmjs.com/package/toonify-mcp
|
|
233
|
+
- **MCP Docs**: https://code.claude.com/docs/mcp
|
|
234
|
+
- **TOON Format**: https://github.com/toon-format/toon
|
|
235
|
+
|
|
236
|
+
## Contribuindo
|
|
237
|
+
|
|
238
|
+
Contribuições são bem-vindas! Por favor, consulte [CONTRIBUTING.md](CONTRIBUTING.md) para diretrizes.
|
|
239
|
+
|
|
240
|
+
## Licença
|
|
241
|
+
|
|
242
|
+
Licença MIT - veja [LICENSE](LICENSE)
|
|
243
|
+
|
|
244
|
+
## Changelog
|
|
245
|
+
|
|
246
|
+
### v0.3.0 (2025-12-26)
|
|
247
|
+
- ✨ **Otimização multilíngue de tokens** - contagem precisa para mais de 15 idiomas
|
|
248
|
+
- ✨ Multiplicadores de tokens conscientes do idioma (2x chinês, 2.5x japonês, 3x árabe, etc.)
|
|
249
|
+
- ✨ Detecção e otimização de texto em idiomas mistos
|
|
250
|
+
- ✨ Testes de benchmark abrangentes com estatísticas reais
|
|
251
|
+
- 📊 Alegações de economia de tokens baseadas em dados (faixa de 30-65%, tipicamente 50-55%)
|
|
252
|
+
- ✅ Mais de 75 testes passando, incluindo casos extremos multilíngues
|
|
253
|
+
- 📝 Versões multilíngues do README
|
|
254
|
+
|
|
255
|
+
### v0.2.0 (2025-12-25)
|
|
256
|
+
- ✨ Adicionado suporte a Plugin Claude Code com hook PostToolUse
|
|
257
|
+
- ✨ Otimização automática de tokens (não são necessárias chamadas manuais)
|
|
258
|
+
- ✨ Sistema de configuração de plugin
|
|
259
|
+
- ✨ Modo duplo: Plugin (automático) + Servidor MCP (manual)
|
|
260
|
+
- 📝 Atualização abrangente da documentação
|
|
261
|
+
|
|
262
|
+
### v0.1.1 (2024-12-24)
|
|
263
|
+
- 🐛 Correções de bugs e melhorias
|
|
264
|
+
- 📝 Atualizações de documentação
|
|
265
|
+
|
|
266
|
+
### v0.1.0 (2024-12-24)
|
|
267
|
+
- 🎉 Lançamento inicial
|
|
268
|
+
- ✨ Implementação do Servidor MCP
|
|
269
|
+
- ✨ Otimização de formato TOON
|
|
270
|
+
- ✨ Rastreamento de métricas integrado
|
package/README.ru.md
ADDED
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
# 🎯 Toonify MCP
|
|
2
|
+
|
|
3
|
+
**[English](README.md) | [繁體中文](README.zh-TW.md) | [简体中文](README.zh-CN.md) | [日本語](README.ja.md) | [Español](README.es.md) | [Français](README.fr.md) | [Deutsch](README.de.md) | [한국어](README.ko.md) | [Русский](README.ru.md) | [Português](README.pt.md) | [Tiếng Việt](README.vi.md) | [Bahasa Indonesia](README.id.md)**
|
|
4
|
+
|
|
5
|
+
MCP-сервер + плагин Claude Code, обеспечивающий автоматическую оптимизацию токенов для структурированных данных.
|
|
6
|
+
Сокращает использование токенов Claude API на **30-65% в зависимости от структуры данных** благодаря прозрачному преобразованию в формат TOON, с типичной экономией **50-55%** для структурированных данных.
|
|
7
|
+
|
|
8
|
+
## Что нового в v0.3.0
|
|
9
|
+
|
|
10
|
+
✨ **Многоязычная оптимизация токенов!**
|
|
11
|
+
- ✅ Точный подсчет токенов для 15+ языков (китайский, японский, корейский, испанский, арабский и др.)
|
|
12
|
+
- ✅ Языково-зависимые множители токенов (2x для китайского, 2.5x для японского, 3x для арабского)
|
|
13
|
+
- ✅ Поддержка смешанных языков с автоматическим определением
|
|
14
|
+
- ✅ Улучшенная точность оптимизации на основе реальных тестов
|
|
15
|
+
- ✅ Подтвержденные данными заявления об экономии токенов (диапазон 30-65%, обычно 50-55%)
|
|
16
|
+
|
|
17
|
+
## Возможности
|
|
18
|
+
|
|
19
|
+
- **Сокращение токенов на 30-65%** (обычно 50-55%) для данных JSON, CSV, YAML
|
|
20
|
+
- **Многоязычная поддержка** - точный подсчет токенов для 15+ языков
|
|
21
|
+
- **Полностью автоматический режим** - хук PostToolUse перехватывает результаты инструментов
|
|
22
|
+
- **Нулевая конфигурация** - работает из коробки с разумными настройками по умолчанию
|
|
23
|
+
- **Двойной режим** - работает как плагин (авто) или MCP-сервер (вручную)
|
|
24
|
+
- **Встроенные метрики** - отслеживание экономии токенов локально
|
|
25
|
+
- **Тихий откат** - никогда не нарушает ваш рабочий процесс
|
|
26
|
+
|
|
27
|
+
## Установка
|
|
28
|
+
|
|
29
|
+
### Вариант A: Плагин Claude Code (Рекомендуется) ⭐
|
|
30
|
+
|
|
31
|
+
**Автоматическая оптимизация токенов без ручных вызовов:**
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# 1. Установить глобально
|
|
35
|
+
npm install -g toonify-mcp
|
|
36
|
+
|
|
37
|
+
# 2. Добавить как плагин (автоматический режим)
|
|
38
|
+
claude plugin add toonify-mcp
|
|
39
|
+
|
|
40
|
+
# 3. Проверить установку
|
|
41
|
+
claude plugin list
|
|
42
|
+
# Должно показать: toonify-mcp ✓
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**Вот и всё!** Хук PostToolUse теперь будет автоматически перехватывать и оптимизировать структурированные данные из инструментов Read, Grep и других файловых инструментов.
|
|
46
|
+
|
|
47
|
+
### Вариант B: MCP-сервер (Ручной режим)
|
|
48
|
+
|
|
49
|
+
**Для явного контроля или других MCP-клиентов:**
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
# 1. Установить глобально
|
|
53
|
+
npm install -g toonify-mcp
|
|
54
|
+
|
|
55
|
+
# 2. Зарегистрировать как MCP-сервер
|
|
56
|
+
claude mcp add toonify -- toonify-mcp
|
|
57
|
+
|
|
58
|
+
# 3. Проверить
|
|
59
|
+
claude mcp list
|
|
60
|
+
# Должно показать: toonify: toonify-mcp - ✓ Connected
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Затем вызывайте инструменты явно:
|
|
64
|
+
```bash
|
|
65
|
+
claude mcp call toonify optimize_content '{"content": "..."}'
|
|
66
|
+
claude mcp call toonify get_stats '{}'
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Как это работает
|
|
70
|
+
|
|
71
|
+
### Режим плагина (Автоматический)
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
Пользователь: Прочитать большой JSON-файл
|
|
75
|
+
↓
|
|
76
|
+
Claude Code вызывает инструмент Read
|
|
77
|
+
↓
|
|
78
|
+
Хук PostToolUse перехватывает результат
|
|
79
|
+
↓
|
|
80
|
+
Хук определяет JSON, преобразует в TOON
|
|
81
|
+
↓
|
|
82
|
+
Оптимизированный контент отправляется в Claude API
|
|
83
|
+
↓
|
|
84
|
+
Достигается типичное сокращение токенов на 50-55% ✨
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Режим MCP-сервера (Ручной)
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
Пользователь: явно вызывает mcp__toonify__optimize_content
|
|
91
|
+
↓
|
|
92
|
+
Контент преобразуется в формат TOON
|
|
93
|
+
↓
|
|
94
|
+
Возвращается оптимизированный результат
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Конфигурация
|
|
98
|
+
|
|
99
|
+
Создайте `~/.claude/toonify-config.json` (необязательно):
|
|
100
|
+
|
|
101
|
+
```json
|
|
102
|
+
{
|
|
103
|
+
"enabled": true,
|
|
104
|
+
"minTokensThreshold": 50,
|
|
105
|
+
"minSavingsThreshold": 30,
|
|
106
|
+
"skipToolPatterns": ["Bash", "Write", "Edit"]
|
|
107
|
+
}
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Параметры
|
|
111
|
+
|
|
112
|
+
- **enabled**: Включить/отключить автоматическую оптимизацию (по умолчанию: `true`)
|
|
113
|
+
- **minTokensThreshold**: Минимальное количество токенов перед оптимизацией (по умолчанию: `50`)
|
|
114
|
+
- **minSavingsThreshold**: Минимальный требуемый процент экономии (по умолчанию: `30%`)
|
|
115
|
+
- **skipToolPatterns**: Инструменты, которые никогда не оптимизировать (по умолчанию: `["Bash", "Write", "Edit"]`)
|
|
116
|
+
|
|
117
|
+
### Переменные окружения
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
export TOONIFY_ENABLED=true
|
|
121
|
+
export TOONIFY_MIN_TOKENS=50
|
|
122
|
+
export TOONIFY_MIN_SAVINGS=30
|
|
123
|
+
export TOONIFY_SKIP_TOOLS="Bash,Write"
|
|
124
|
+
export TOONIFY_SHOW_STATS=true # Показывать статистику оптимизации в выводе
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## Примеры
|
|
128
|
+
|
|
129
|
+
### До оптимизации (142 токена)
|
|
130
|
+
|
|
131
|
+
```json
|
|
132
|
+
{
|
|
133
|
+
"products": [
|
|
134
|
+
{"id": 101, "name": "Laptop Pro", "price": 1299},
|
|
135
|
+
{"id": 102, "name": "Magic Mouse", "price": 79}
|
|
136
|
+
]
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### После оптимизации (57 токенов, -60%)
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
[TOON-JSON]
|
|
144
|
+
products[2]{id,name,price}:
|
|
145
|
+
101,Laptop Pro,1299
|
|
146
|
+
102,Magic Mouse,79
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
**Автоматически применяется в режиме плагина - ручные вызовы не нужны!**
|
|
150
|
+
|
|
151
|
+
## Советы по использованию
|
|
152
|
+
|
|
153
|
+
### Когда срабатывает автоматическая оптимизация?
|
|
154
|
+
|
|
155
|
+
Хук PostToolUse автоматически оптимизирует, когда:
|
|
156
|
+
- ✅ Контент является валидным JSON, CSV или YAML
|
|
157
|
+
- ✅ Размер контента ≥ `minTokensThreshold` (по умолчанию: 50 токенов)
|
|
158
|
+
- ✅ Предполагаемая экономия ≥ `minSavingsThreshold` (по умолчанию: 30%)
|
|
159
|
+
- ✅ Инструмент НЕ входит в `skipToolPatterns` (например, не Bash/Write/Edit)
|
|
160
|
+
|
|
161
|
+
### Просмотр статистики оптимизации
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
# В режиме плагина
|
|
165
|
+
claude mcp call toonify get_stats '{}'
|
|
166
|
+
|
|
167
|
+
# Или проверьте вывод Claude Code для статистики (если TOONIFY_SHOW_STATS=true)
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
## Устранение неполадок
|
|
171
|
+
|
|
172
|
+
### Хук не срабатывает
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
# 1. Проверьте, что плагин установлен
|
|
176
|
+
claude plugin list | grep toonify
|
|
177
|
+
|
|
178
|
+
# 2. Проверьте конфигурацию
|
|
179
|
+
cat ~/.claude/toonify-config.json
|
|
180
|
+
|
|
181
|
+
# 3. Включите статистику для просмотра попыток оптимизации
|
|
182
|
+
export TOONIFY_SHOW_STATS=true
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Оптимизация не применяется
|
|
186
|
+
|
|
187
|
+
- Проверьте `minTokensThreshold` - контент может быть слишком мал
|
|
188
|
+
- Проверьте `minSavingsThreshold` - экономия может быть < 30%
|
|
189
|
+
- Проверьте `skipToolPatterns` - инструмент может быть в списке пропуска
|
|
190
|
+
- Убедитесь, что контент является валидным JSON/CSV/YAML
|
|
191
|
+
|
|
192
|
+
### Проблемы с производительностью
|
|
193
|
+
|
|
194
|
+
- Уменьшите `minTokensThreshold` для более агрессивной оптимизации
|
|
195
|
+
- Увеличьте `minSavingsThreshold` для пропуска незначительных оптимизаций
|
|
196
|
+
- Добавьте больше инструментов в `skipToolPatterns` при необходимости
|
|
197
|
+
|
|
198
|
+
## Сравнение: Плагин vs MCP-сервер
|
|
199
|
+
|
|
200
|
+
| Функция | Режим плагина | Режим MCP-сервера |
|
|
201
|
+
|---------|--------------|-------------------|
|
|
202
|
+
| **Активация** | Автоматическая (PostToolUse) | Ручная (вызов инструмента) |
|
|
203
|
+
| **Совместимость** | Только Claude Code | Любой MCP-клиент |
|
|
204
|
+
| **Конфигурация** | Файл конфигурации плагина | Инструменты MCP |
|
|
205
|
+
| **Производительность** | Нулевые накладные расходы | Накладные расходы на вызов |
|
|
206
|
+
| **Сценарий использования** | Ежедневный рабочий процесс | Явный контроль |
|
|
207
|
+
|
|
208
|
+
**Рекомендация**: Используйте режим плагина для автоматической оптимизации. Используйте режим MCP-сервера для явного контроля или других MCP-клиентов.
|
|
209
|
+
|
|
210
|
+
## Удаление
|
|
211
|
+
|
|
212
|
+
### Режим плагина
|
|
213
|
+
```bash
|
|
214
|
+
claude plugin remove toonify-mcp
|
|
215
|
+
rm ~/.claude/toonify-config.json
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
### Режим MCP-сервера
|
|
219
|
+
```bash
|
|
220
|
+
claude mcp remove toonify
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### Пакет
|
|
224
|
+
```bash
|
|
225
|
+
npm uninstall -g toonify-mcp
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
## Ссылки
|
|
229
|
+
|
|
230
|
+
- **GitHub**: https://github.com/kevintseng/toonify-mcp
|
|
231
|
+
- **Issues**: https://github.com/kevintseng/toonify-mcp/issues
|
|
232
|
+
- **NPM**: https://www.npmjs.com/package/toonify-mcp
|
|
233
|
+
- **MCP Docs**: https://code.claude.com/docs/mcp
|
|
234
|
+
- **TOON Format**: https://github.com/toon-format/toon
|
|
235
|
+
|
|
236
|
+
## Вклад в проект
|
|
237
|
+
|
|
238
|
+
Вклады приветствуются! Пожалуйста, ознакомьтесь с [CONTRIBUTING.md](CONTRIBUTING.md) для получения рекомендаций.
|
|
239
|
+
|
|
240
|
+
## Лицензия
|
|
241
|
+
|
|
242
|
+
Лицензия MIT - см. [LICENSE](LICENSE)
|
|
243
|
+
|
|
244
|
+
## Changelog
|
|
245
|
+
|
|
246
|
+
### v0.3.0 (2025-12-26)
|
|
247
|
+
- ✨ **Многоязычная оптимизация токенов** - точный подсчет для 15+ языков
|
|
248
|
+
- ✨ Языково-зависимые множители токенов (2x китайский, 2.5x японский, 3x арабский и др.)
|
|
249
|
+
- ✨ Определение и оптимизация смешанных языков
|
|
250
|
+
- ✨ Комплексное тестирование с реальной статистикой
|
|
251
|
+
- 📊 Подтвержденные данными заявления об экономии токенов (диапазон 30-65%, обычно 50-55%)
|
|
252
|
+
- ✅ 75+ пройденных тестов, включая многоязычные граничные случаи
|
|
253
|
+
- 📝 Многоязычные версии README
|
|
254
|
+
|
|
255
|
+
### v0.2.0 (2025-12-25)
|
|
256
|
+
- ✨ Добавлена поддержка плагина Claude Code с хуком PostToolUse
|
|
257
|
+
- ✨ Автоматическая оптимизация токенов (ручные вызовы не нужны)
|
|
258
|
+
- ✨ Система конфигурации плагина
|
|
259
|
+
- ✨ Двойной режим: Плагин (авто) + MCP-сервер (вручную)
|
|
260
|
+
- 📝 Комплексное обновление документации
|
|
261
|
+
|
|
262
|
+
### v0.1.1 (2024-12-24)
|
|
263
|
+
- 🐛 Исправления ошибок и улучшения
|
|
264
|
+
- 📝 Обновления документации
|
|
265
|
+
|
|
266
|
+
### v0.1.0 (2024-12-24)
|
|
267
|
+
- 🎉 Первый релиз
|
|
268
|
+
- ✨ Реализация MCP-сервера
|
|
269
|
+
- ✨ Оптимизация формата TOON
|
|
270
|
+
- ✨ Встроенное отслеживание метрик
|