claude-connect 0.1.0 → 0.1.3

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 CHANGED
@@ -1,73 +1,113 @@
1
1
  # Claude Connect
2
2
 
3
- CLI en Node.js para conectar `Claude Code` con proveedores externos desde una interfaz de consola.
3
+ > Conecta `Claude Code` con `OpenCode Go`, `Zen`, `Kimi`, `DeepSeek`, `OpenRouter` y `Qwen` desde una interfaz de consola clara, rápida y reversible.
4
4
 
5
- ## Estado actual
5
+ [![npm version](https://img.shields.io/npm/v/claude-connect?style=for-the-badge&logo=npm&color=cb3837)](https://www.npmjs.com/package/claude-connect)
6
+ [![node](https://img.shields.io/badge/node-%3E%3D22-2f7d32?style=for-the-badge&logo=node.js&logoColor=white)](https://nodejs.org/)
7
+ [![license](https://img.shields.io/badge/license-MIT-0f172a?style=for-the-badge)](./LICENSE)
8
+ [![providers](https://img.shields.io/badge/providers-OpenCode%20Go%20%7C%20Zen%20%7C%20Kimi%20%7C%20DeepSeek%20%7C%20OpenRouter%20%7C%20Qwen-0ea5e9?style=for-the-badge)](https://www.npmjs.com/package/claude-connect)
6
9
 
7
- La app ya soporta:
10
+ ## Why Claude Connect
8
11
 
9
- - `Kimi` por `API key`
10
- - `DeepSeek` por `API key`
11
- - `Qwen` por `OAuth` o `Token`
12
- - catálogo local en SQLite sembrado automáticamente desde código
13
- - creación, edición y eliminación de conexiones
12
+ `Claude Connect` te permite cambiar `Claude Code` hacia otros proveedores sin editar archivos a mano, sin perder tu configuración original y sin convertir tu terminal en un caos de variables de entorno.
13
+
14
+ ### Highlights
15
+
16
+ - `OpenCode Go`, `Zen`, `Kimi`, `DeepSeek`, `OpenRouter` y `Qwen` listos desde el primer arranque
17
+ - soporte para `Token` y `OAuth` cuando el proveedor lo permite
18
+ - API keys compartidas por proveedor para no repetir el mismo token en cada modelo
14
19
  - activación reversible sobre la instalación real de `Claude Code`
15
- - detección automática de rutas en Linux y Windows
20
+ - limpieza automática del conflicto entre `claude.ai` y `ANTHROPIC_API_KEY`
16
21
  - gateway local Anthropic-compatible para `Qwen`
17
- - limpieza y restauración reversible de credenciales de `claude.ai` para evitar `Auth conflict`
18
- - navegación con `Volver` en pantallas y salida por doble `Esc`
22
+ - detección automática de rutas en Linux y Windows
23
+ - catálogo local en SQLite generado automáticamente
24
+ - interfaz de consola con navegación simple y profesional
19
25
 
20
- ## Uso
26
+ ## Package
21
27
 
22
- Arranque local:
28
+ - npm: https://www.npmjs.com/package/claude-connect
29
+ - repo: https://github.com/wmcarlosv/claude-connect
23
30
 
24
- ```bash
25
- npm start
26
- ```
31
+ ## Install
27
32
 
28
- Para exponer el comando globalmente:
33
+ Instalación global:
29
34
 
30
35
  ```bash
31
- npm link
36
+ npm install -g claude-connect
32
37
  claude-connect
33
38
  ```
34
39
 
35
- Instalación desde npm:
40
+ Instalación simple en proyecto:
36
41
 
37
42
  ```bash
38
- npm install -g claude-connect
39
- claude-connect
43
+ npm i claude-connect
40
44
  ```
41
45
 
42
- Ejecución sin instalación global:
46
+ Ejecución con `npx`:
43
47
 
44
48
  ```bash
45
49
  npx claude-connect
46
50
  ```
47
51
 
52
+ Desarrollo local:
53
+
54
+ ```bash
55
+ npm start
56
+ ```
57
+
48
58
  Requisito:
49
59
 
50
- - Node.js 22 o superior
60
+ - `Node.js 22` o superior
51
61
 
52
- ## Flujo principal
62
+ ## Quick Flow
53
63
 
54
- 1. `Nueva conexion`
55
- 2. elegir proveedor
56
- 3. elegir modelo
57
- 4. elegir tipo de conexión: `OAuth` o `Token`
58
- 5. guardar perfil local
59
- 6. `Activar en Claude`
60
- 7. usar `claude`
64
+ ```text
65
+ Nueva conexion
66
+ -> proveedor
67
+ -> modelo
68
+ -> OAuth o Token
69
+ -> guardar API key una vez por proveedor si aplica
70
+ -> guardar perfil
71
+ -> Activar en Claude
72
+ -> usar claude
73
+ ```
61
74
 
62
75
  Al activar:
63
76
 
64
- - `Kimi` usa `https://api.kimi.com/coding/`
65
- - `DeepSeek` usa `https://api.deepseek.com/anthropic`
66
- - `Qwen` usa el gateway local `http://127.0.0.1:4310/anthropic`
77
+ - `OpenCode Go` usa conexión directa o gateway según el modelo elegido
78
+ - `Zen` usa conexión directa o gateway según el modelo elegido
79
+ - `Kimi` usa gateway local y reenvia al endpoint Anthropic de `https://api.kimi.com/coding/`
80
+ - `DeepSeek` apunta a `https://api.deepseek.com/anthropic`
81
+ - `OpenRouter` usa `openrouter/free` por gateway sobre `https://openrouter.ai/api/v1`
82
+ - `Qwen` apunta al gateway local `http://127.0.0.1:4310/anthropic`
83
+
84
+ ## Providers
85
+
86
+ | Proveedor | Modelos | Auth | Integración |
87
+ | --- | --- | --- | --- |
88
+ | `OpenCode Go` | `glm-5`, `kimi-k2.5`, `minimax-m2.7`, `minimax-m2.5` | `Token` | Mixta |
89
+ | `Zen` | `Claude*` de Zen + modelos `chat/completions` de Zen | `Token` | Mixta |
90
+ | `Kimi` | `kimi-for-coding` | `Token` | Gateway local |
91
+ | `DeepSeek` | `deepseek-chat`, `deepseek-reasoner` | `Token` | Directa |
92
+ | `OpenRouter` | `openrouter/free` | `Token` | Gateway local |
93
+ | `Qwen` | `qwen3-coder-plus` | `OAuth`, `Token` | Gateway local |
67
94
 
68
- ## Dónde se guarda cada cosa
95
+ Nota sobre `OpenCode Go`:
69
96
 
70
- Claude Connect guarda estado local fuera del repo. Por defecto:
97
+ - `minimax-m2.7` y `minimax-m2.5` van directos por endpoint `messages`
98
+ - `glm-5` y `kimi-k2.5` van por gateway usando `chat/completions`
99
+
100
+ Nota sobre `Zen`:
101
+
102
+ - los modelos Anthropic de Zen van por conexión directa
103
+ - los modelos de Zen servidos por `chat/completions` van por gateway local
104
+ - esta primera integración no incluye todavía los modelos de Zen expuestos por `responses` ni los de endpoint tipo Google
105
+
106
+ ## What It Stores
107
+
108
+ Claude Connect guarda el estado sensible fuera del repo.
109
+
110
+ Rutas por defecto:
71
111
 
72
112
  ```text
73
113
  Linux: ~/.claude-connect
@@ -78,9 +118,9 @@ Ahí viven:
78
118
 
79
119
  - perfiles
80
120
  - tokens OAuth
81
- - API keys gestionadas por la app
121
+ - API keys compartidas por proveedor
82
122
  - estado del switch de Claude
83
- - estado y logs del gateway
123
+ - logs y estado del gateway
84
124
 
85
125
  El catálogo SQLite local se genera automáticamente en:
86
126
 
@@ -91,62 +131,50 @@ storage/claude-connect.sqlite
91
131
  Importante:
92
132
 
93
133
  - esa base ya no se versiona en git
94
- - el catálogo se reconstruye desde `src/data/catalog-store.js`
95
- - un `git pull` no debería volver a darte conflicto por la base SQLite
134
+ - el catálogo se siembra desde `src/data/catalog-store.js`
135
+ - esto evita conflictos molestos al hacer `git pull`
96
136
 
97
- ## Switch de Claude Code
137
+ ## Claude Code Switching
98
138
 
99
- La activación modifica la configuración real detectada de Claude Code y guarda un snapshot reversible.
139
+ Cuando activas un perfil, la app modifica la configuración real detectada de `Claude Code` y guarda un snapshot reversible.
100
140
 
101
141
  Archivos implicados:
102
142
 
103
- - `settings.json` de Claude
143
+ - `settings.json`
104
144
  - `~/.claude.json`
105
- - `.credentials.json` de Claude
106
-
107
- Esto permite:
108
-
109
- - activar `Kimi`, `DeepSeek` o `Qwen`
110
- - evitar conflicto entre `claude.ai` y `ANTHROPIC_API_KEY`
111
- - restaurar la sesión original con `Revertir Claude`
112
-
113
- ## Proveedores
114
-
115
- ### Kimi
145
+ - `.credentials.json`
116
146
 
117
- - modelo: `kimi-for-coding`
118
- - auth: `Token`
119
- - base URL: `https://api.kimi.com/coding/`
120
- - activación directa en Claude Code
147
+ Eso permite:
121
148
 
122
- ### DeepSeek
149
+ - activar otro proveedor sin tocar archivos manualmente
150
+ - evitar el `Auth conflict` entre sesión `claude.ai` y `API key`
151
+ - volver a tu estado original con `Revertir Claude`
123
152
 
124
- - modelos: `deepseek-chat`, `deepseek-reasoner`
125
- - auth: `Token`
126
- - base URL de activación: `https://api.deepseek.com/anthropic`
127
- - activación directa en Claude Code
153
+ ## Qwen OAuth
128
154
 
129
- ### Qwen
155
+ `Qwen` usa el device flow oficial de `Qwen Code`.
130
156
 
131
- - modelo: `qwen3-coder-plus`
132
- - auth: `OAuth`, `Token`
133
- - OAuth con device flow oficial de `Qwen Code`
134
- - gateway local requerido para integrarlo con Claude Code
135
-
136
- URL de autorización típica:
157
+ URL típica de autorización:
137
158
 
138
159
  ```text
139
160
  https://chat.qwen.ai/auth?user_code=XXXXX&client=qwen-code
140
161
  ```
141
162
 
142
- ## Navegación
163
+ Comportamiento actual:
164
+
165
+ - intenta abrir el navegador por defecto
166
+ - también deja la URL visible para copiar y pegar manualmente
167
+ - en Windows ya se corrigió la apertura del navegador
168
+
169
+ ## Console UX
143
170
 
144
- - `Tab` vuelve a la pantalla anterior cuando aplica
145
171
  - `Volver` aparece como opción visible en listas
172
+ - `Tab` vuelve a la pantalla anterior cuando aplica
146
173
  - `Esc` una vez avisa
147
174
  - `Esc` dos veces sale
175
+ - después de crear o editar una conexión, regresas al menú principal
148
176
 
149
- ## Desarrollo
177
+ ## Development
150
178
 
151
179
  Pruebas:
152
180
 
@@ -154,22 +182,21 @@ Pruebas:
154
182
  npm test
155
183
  ```
156
184
 
157
- Entrada principal:
158
-
159
- - `src/wizard.js`
160
-
161
- Catálogo:
162
-
163
- - `src/data/catalog-store.js`
164
-
165
- Switch de Claude:
185
+ Puntos principales del código:
166
186
 
167
- - `src/lib/claude-settings.js`
187
+ - entrada principal: `src/wizard.js`
188
+ - catálogo: `src/data/catalog-store.js`
189
+ - switch de Claude: `src/lib/claude-settings.js`
190
+ - OAuth de Qwen: `src/lib/oauth.js`
191
+ - gateway local: `src/gateway/server.js`
168
192
 
169
- OAuth Qwen:
193
+ ## Publish Notes
170
194
 
171
- - `src/lib/oauth.js`
195
+ El paquete npm publica solo lo necesario:
172
196
 
173
- Gateway local:
197
+ - `bin/claude-connect.js`
198
+ - `src/`
199
+ - `README.md`
200
+ - `LICENSE`
174
201
 
175
- - `src/gateway/server.js`
202
+ El tarball ya está preparado para distribución limpia.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-connect",
3
- "version": "0.1.0",
3
+ "version": "0.1.3",
4
4
  "description": "CLI para configurar Claude Code con proveedores de modelos externos",
5
5
  "author": "wmcarlosv",
6
6
  "type": "module",