smart-thinking-mcp 7.0.0 → 8.0.0
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 +209 -11
- package/build/config.d.ts +27 -6
- package/build/config.js +98 -2
- package/build/config.js.map +1 -1
- package/build/index.js +151 -59
- package/build/index.js.map +1 -1
- package/build/memory-manager.d.ts +5 -0
- package/build/memory-manager.js +78 -17
- package/build/memory-manager.js.map +1 -1
- package/build/utils/path-utils.d.ts +63 -0
- package/build/utils/path-utils.js +238 -0
- package/build/utils/path-utils.js.map +1 -0
- package/build/utils/platform-stdio.d.ts +13 -0
- package/build/utils/platform-stdio.js +55 -0
- package/build/utils/platform-stdio.js.map +1 -0
- package/package.json +13 -4
package/README.md
CHANGED
|
@@ -1,13 +1,23 @@
|
|
|
1
1
|
# Smart-Thinking
|
|
2
2
|
|
|
3
|
+
[](https://smithery.ai/server/@Leghis/smart-thinking)
|
|
3
4
|
[](https://www.npmjs.com/package/smart-thinking-mcp)
|
|
4
5
|
[](https://opensource.org/licenses/MIT)
|
|
5
6
|
[](https://www.typescriptlang.org/)
|
|
7
|
+
[](https://github.com/Leghis/smart-thinking-mcp)
|
|
8
|
+
[](https://github.com/Leghis/smart-thinking-mcp)
|
|
9
|
+
[](https://github.com/Leghis/smart-thinking-mcp)
|
|
10
|
+
|
|
11
|
+
<a href="https://glama.ai/mcp/servers/@Leghis/Smart-Thinking">
|
|
12
|
+
<img width="380" height="200" src="https://glama.ai/mcp/servers/@Leghis/Smart-Thinking/badge" alt="Smart-Thinking MCP server" />
|
|
13
|
+
</a>
|
|
6
14
|
|
|
7
15
|
## Vue d'ensemble
|
|
8
16
|
|
|
9
17
|
Smart-Thinking est un serveur MCP (Model Context Protocol) sophistiqué qui fournit un cadre de raisonnement multi-dimensionnel, adaptatif et auto-vérifiable pour les assistants IA comme Claude. Contrairement aux approches de raisonnement linéaire, Smart-Thinking utilise une architecture basée sur des graphes qui permet des connexions complexes entre les pensées, offrant ainsi une capacité de raisonnement plus nuancée et plus proche de la cognition humaine.
|
|
10
18
|
|
|
19
|
+
Smart-Thinking est entièrement compatible avec toutes les plateformes (Windows, macOS, Linux) et s'intègre parfaitement avec de nombreux clients MCP, notamment Claude Desktop, Cline, Windsurf et d'autres applications compatibles MCP.
|
|
20
|
+
|
|
11
21
|
## Caractéristiques clés
|
|
12
22
|
|
|
13
23
|
### Architecture cognitive avancée
|
|
@@ -30,9 +40,77 @@ Smart-Thinking est un serveur MCP (Model Context Protocol) sophistiqué qui four
|
|
|
30
40
|
- Collaboration multi-agents pour le travail d'équipe
|
|
31
41
|
- Intégration transparente avec l'écosystème d'outils MCP
|
|
32
42
|
|
|
43
|
+
### Compatibilité cross-plateforme
|
|
44
|
+
- Fonctionne de manière identique sur Windows, macOS et Linux
|
|
45
|
+
- Compatible avec NVM (Node Version Manager) sur toutes les plateformes
|
|
46
|
+
- Gestion automatique des chemins de fichiers selon la plateforme
|
|
47
|
+
- Configuration simplifiée pour chaque environnement
|
|
48
|
+
- Résolution automatique des problèmes spécifiques à chaque OS
|
|
49
|
+
|
|
50
|
+
## Installation
|
|
51
|
+
|
|
52
|
+
### Option 1: Installation globale (recommandée)
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
# Sur macOS/Linux
|
|
56
|
+
npm install -g smart-thinking-mcp
|
|
57
|
+
|
|
58
|
+
# Sur Windows (depuis PowerShell ou CMD)
|
|
59
|
+
npm install -g smart-thinking-mcp
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Option 2: Installation via Smithery
|
|
63
|
+
|
|
64
|
+
Pour installer Smart-Thinking automatiquement via [Smithery](https://smithery.ai/server/@Leghis/smart-thinking):
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
npx -y @smithery/cli install @Leghis/smart-thinking --client claude
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Option 3: Utilisation via npx (sans installation)
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
# Sur macOS/Linux
|
|
74
|
+
npx -y smart-thinking-mcp
|
|
75
|
+
|
|
76
|
+
# Sur Windows (moins recommandé, préférez l'installation globale)
|
|
77
|
+
npx -y smart-thinking-mcp
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Option 4: Installation depuis le code source
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
# Cloner le dépôt
|
|
84
|
+
git clone https://github.com/votre-utilisateur/Smart-Thinking.git
|
|
85
|
+
cd Smart-Thinking
|
|
86
|
+
|
|
87
|
+
# Installer les dépendances
|
|
88
|
+
npm install
|
|
89
|
+
|
|
90
|
+
# Compiler le projet
|
|
91
|
+
npm run build
|
|
92
|
+
|
|
93
|
+
# Créer un lien npm global
|
|
94
|
+
npm link
|
|
95
|
+
```
|
|
96
|
+
|
|
33
97
|
## Configuration avec Claude Desktop
|
|
34
98
|
|
|
35
|
-
|
|
99
|
+
### Configuration sur macOS
|
|
100
|
+
|
|
101
|
+
Ajoutez cette configuration à votre fichier `~/Library/Application Support/Claude/claude_desktop_config.json` :
|
|
102
|
+
|
|
103
|
+
```json
|
|
104
|
+
{
|
|
105
|
+
"mcpServers": {
|
|
106
|
+
"smart-thinking": {
|
|
107
|
+
"command": "smart-thinking-mcp"
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
OU via npx:
|
|
36
114
|
|
|
37
115
|
```json
|
|
38
116
|
{
|
|
@@ -45,6 +123,73 @@ Ajoutez cette configuration à votre fichier `claude_desktop_config.json` :
|
|
|
45
123
|
}
|
|
46
124
|
```
|
|
47
125
|
|
|
126
|
+
### Configuration sur Windows
|
|
127
|
+
|
|
128
|
+
Ajoutez cette configuration à votre fichier `%APPDATA%\Claude\claude_desktop_config.json` :
|
|
129
|
+
|
|
130
|
+
```json
|
|
131
|
+
{
|
|
132
|
+
"mcpServers": {
|
|
133
|
+
"smart-thinking": {
|
|
134
|
+
"command": "C:/Users/VotreNom/AppData/Roaming/npm/smart-thinking-mcp.cmd"
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
OU avec le chemin complet vers Node.js (recommandé pour Windows):
|
|
141
|
+
|
|
142
|
+
```json
|
|
143
|
+
{
|
|
144
|
+
"mcpServers": {
|
|
145
|
+
"smart-thinking": {
|
|
146
|
+
"command": "C:/Program Files/nodejs/node.exe",
|
|
147
|
+
"args": ["C:/Users/VotreNom/AppData/Roaming/npm/node_modules/smart-thinking-mcp/build/index.js"]
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
**Important**:
|
|
154
|
+
- Remplacez `VotreNom` par votre nom d'utilisateur Windows.
|
|
155
|
+
- Utilisez des forward slashes (`/`) dans les chemins Windows, même si l'OS utilise des backslashes (`\`).
|
|
156
|
+
|
|
157
|
+
Pour des instructions d'installation détaillées, consultez le [Guide d'installation](./GUIDE_INSTALLATION.md).
|
|
158
|
+
|
|
159
|
+
## Système de fichiers cross-plateforme
|
|
160
|
+
|
|
161
|
+
Smart-Thinking implémente une gestion avancée du système de fichiers compatible avec toutes les plateformes:
|
|
162
|
+
|
|
163
|
+
### Fonctionnalités du système de fichiers
|
|
164
|
+
|
|
165
|
+
- **Normalisation automatique des chemins**: Conversion transparente entre les séparateurs de chemin Windows (`\`) et Unix (`/`)
|
|
166
|
+
- **Détection de plateforme intégrée**: Adaptation automatique selon l'OS (Windows, macOS, Linux)
|
|
167
|
+
- **Gestion des chemins spéciaux**: Support pour les chemins UNC Windows, WSL et les chemins avec espaces
|
|
168
|
+
- **Répertoire de données auto-configuré**: Création et gestion automatique du répertoire de données
|
|
169
|
+
- **Fallback intelligent**: Création automatique d'un répertoire alternatif en cas de problème d'accès
|
|
170
|
+
- **Chemins de configuration spécifiques à la plateforme**: Localisation correcte des fichiers de configuration selon l'OS
|
|
171
|
+
|
|
172
|
+
### Configuration du répertoire de données
|
|
173
|
+
|
|
174
|
+
Par défaut, Smart-Thinking crée et utilise un dossier `data` dans son répertoire de travail. Vous pouvez également spécifier un répertoire personnalisé avec la variable d'environnement `SMART_THINKING_DATA_DIR`:
|
|
175
|
+
|
|
176
|
+
```json
|
|
177
|
+
{
|
|
178
|
+
"mcpServers": {
|
|
179
|
+
"smart-thinking": {
|
|
180
|
+
"command": "smart-thinking-mcp",
|
|
181
|
+
"env": {
|
|
182
|
+
"SMART_THINKING_DATA_DIR": "/chemin/absolu/vers/data"
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### Support pour NVM (Node Version Manager)
|
|
190
|
+
|
|
191
|
+
Smart-Thinking détecte automatiquement si Node.js est installé via NVM et adapte les chemins en conséquence, offrant une compatibilité parfaite sur toutes les plateformes, y compris Windows avec NVM.
|
|
192
|
+
|
|
48
193
|
## Utilisation
|
|
49
194
|
|
|
50
195
|
### Paramètres principaux
|
|
@@ -69,17 +214,17 @@ Utilise l'outil Smart-Thinking pour analyser les avantages et inconvénients des
|
|
|
69
214
|
|
|
70
215
|
#### Avec vérification automatique
|
|
71
216
|
```
|
|
72
|
-
Utilise Smart-Thinking avec vérification pour évaluer les affirmations suivantes sur le changement climatique.
|
|
217
|
+
Utilise Smart-Thinking avec vérification (requestVerification=true) pour évaluer les affirmations suivantes sur le changement climatique.
|
|
73
218
|
```
|
|
74
219
|
|
|
75
220
|
#### Avec visualisation
|
|
76
221
|
```
|
|
77
|
-
Utilise Smart-Thinking avec visualisation pour développer une stratégie marketing multicouche.
|
|
222
|
+
Utilise Smart-Thinking avec visualisation (generateVisualization=true) pour développer une stratégie marketing multicouche.
|
|
78
223
|
```
|
|
79
224
|
|
|
80
225
|
#### Analyse collaborative
|
|
81
226
|
```
|
|
82
|
-
Utilise Smart-Thinking
|
|
227
|
+
Utilise Smart-Thinking avec un identifiant de session (sessionId="projet-innovation") pour analyser ce problème complexe d'optimisation.
|
|
83
228
|
```
|
|
84
229
|
|
|
85
230
|
## Système de vérification
|
|
@@ -113,11 +258,12 @@ Les seuils et les scores ont été optimisés par simulation pour garantir une c
|
|
|
113
258
|
|
|
114
259
|
Smart-Thinking propose plusieurs types de visualisations du graphe de pensée :
|
|
115
260
|
|
|
116
|
-
-
|
|
117
|
-
-
|
|
118
|
-
-
|
|
119
|
-
-
|
|
120
|
-
-
|
|
261
|
+
- **Graphe standard**: Disposition standard du réseau de pensées
|
|
262
|
+
- **Chronologique**: Organisation temporelle des pensées
|
|
263
|
+
- **Thématique**: Clusters par thèmes similaires
|
|
264
|
+
- **Hiérarchique**: Structure arborescente
|
|
265
|
+
- **Force**: Disposition basée sur les forces d'attraction/répulsion
|
|
266
|
+
- **Radiale**: Cercles concentriques autour d'une pensée centrale
|
|
121
267
|
|
|
122
268
|
Les visualisations peuvent être filtrées selon :
|
|
123
269
|
- Types de pensées
|
|
@@ -134,7 +280,19 @@ Smart-Thinking implémente un système robuste de persistance des données qui s
|
|
|
134
280
|
- Les métriques calculées pour analyse et amélioration
|
|
135
281
|
- Les préférences utilisateur pour personnalisation
|
|
136
282
|
|
|
137
|
-
Les données sont stockées dans des fichiers JSON structurés sur le système de fichiers, garantissant la persistance entre les sessions.
|
|
283
|
+
Les données sont stockées de manière compatible cross-plateforme dans des fichiers JSON structurés sur le système de fichiers, garantissant la persistance entre les sessions.
|
|
284
|
+
|
|
285
|
+
## Compatibilité avec les clients MCP
|
|
286
|
+
|
|
287
|
+
Smart-Thinking est compatible avec de nombreux clients MCP, dont :
|
|
288
|
+
|
|
289
|
+
- **Claude Desktop App**: Support complet des outils, ressources et prompts
|
|
290
|
+
- **Cline**: Support pour les outils et ressources
|
|
291
|
+
- **Continue**: Support complet pour toutes les fonctionnalités MCP
|
|
292
|
+
- **5ire**: Support pour les outils
|
|
293
|
+
- **Cursor**: Support pour les outils
|
|
294
|
+
- **Windsurf Editor**: Support pour les outils AI Flow
|
|
295
|
+
- **Et plus encore...**
|
|
138
296
|
|
|
139
297
|
## Comparaison avec Sequential-Thinking
|
|
140
298
|
|
|
@@ -150,6 +308,7 @@ Les données sont stockées dans des fichiers JSON structurés sur le système d
|
|
|
150
308
|
| Personnalisation | Limitée | Adaptative à l'utilisateur |
|
|
151
309
|
| Auto-apprentissage | Non | Oui |
|
|
152
310
|
| Métriques | Basiques | Contextuelle et multi-facteurs |
|
|
311
|
+
| Compatibilité plateforme | Limitée | Complète (Windows, macOS, Linux) |
|
|
153
312
|
|
|
154
313
|
## API et intégration
|
|
155
314
|
|
|
@@ -175,6 +334,45 @@ console.log(result.qualityMetrics);
|
|
|
175
334
|
console.log(result.verificationStatus);
|
|
176
335
|
```
|
|
177
336
|
|
|
337
|
+
## Résolution des problèmes
|
|
338
|
+
|
|
339
|
+
### Vérification rapide du fonctionnement
|
|
340
|
+
|
|
341
|
+
Pour vérifier que Smart-Thinking fonctionne correctement:
|
|
342
|
+
|
|
343
|
+
```bash
|
|
344
|
+
# Sur macOS/Linux
|
|
345
|
+
smart-thinking-mcp
|
|
346
|
+
|
|
347
|
+
# Sur Windows
|
|
348
|
+
smart-thinking-mcp.cmd
|
|
349
|
+
```
|
|
350
|
+
|
|
351
|
+
Vous devriez voir le message de démarrage du serveur.
|
|
352
|
+
|
|
353
|
+
### Consulter les logs
|
|
354
|
+
|
|
355
|
+
Si vous rencontrez des difficultés, consultez les logs de Claude Desktop :
|
|
356
|
+
|
|
357
|
+
- Sur macOS : `~/Library/Logs/Claude/mcp*.log`
|
|
358
|
+
- Sur Windows : `%USERPROFILE%\AppData\Local\Claude\logs\mcp*.log`
|
|
359
|
+
- Sur Linux : `~/.local/share/Claude/logs/mcp*.log`
|
|
360
|
+
|
|
361
|
+
### Problèmes courants et solutions
|
|
362
|
+
|
|
363
|
+
| Problème | Solution |
|
|
364
|
+
|----------|----------|
|
|
365
|
+
| Smart-Thinking n'apparaît pas dans Claude | Vérifiez les chemins dans la configuration, redémarrez Claude Desktop |
|
|
366
|
+
| Erreurs d'accès aux fichiers | Vérifiez les permissions du répertoire de données |
|
|
367
|
+
| Problèmes de connexion sur Windows | Utilisez des chemins complets et absolus avec forward slashes |
|
|
368
|
+
| Erreurs avec NVM sur Windows | Utilisez le chemin complet vers la version active de Node.js |
|
|
369
|
+
|
|
370
|
+
Pour les problèmes spécifiques à Windows et NVM, consultez la section dédiée dans le [Guide d'installation](./GUIDE_INSTALLATION.md).
|
|
371
|
+
|
|
372
|
+
## Contribution
|
|
373
|
+
|
|
374
|
+
Les contributions sont les bienvenues ! Consultez notre [Guide de contribution](./CONTRIBUTING.md) pour plus d'informations.
|
|
375
|
+
|
|
178
376
|
## Licence
|
|
179
377
|
|
|
180
|
-
MIT
|
|
378
|
+
[MIT](./LICENSE)
|
package/build/config.d.ts
CHANGED
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* config.ts
|
|
3
|
-
*
|
|
4
|
-
* Fichier de configuration centralisé pour Smart-Thinking
|
|
5
|
-
* Contient les seuils, paramètres et constantes utilisés dans tout le système
|
|
6
|
-
*/
|
|
7
1
|
/**
|
|
8
2
|
* Configuration pour les seuils de vérification et similarité
|
|
9
3
|
*/
|
|
@@ -45,3 +39,30 @@ export declare const SystemConfig: {
|
|
|
45
39
|
MAX_THOUGHT_LENGTH: number;
|
|
46
40
|
MAX_CONNECTIONS: number;
|
|
47
41
|
};
|
|
42
|
+
/**
|
|
43
|
+
* Configuration spécifique à la plateforme
|
|
44
|
+
* Détecte automatiquement l'environnement d'exécution et ajuste les paramètres
|
|
45
|
+
*/
|
|
46
|
+
export declare const PlatformConfig: {
|
|
47
|
+
IS_WINDOWS: boolean;
|
|
48
|
+
IS_MAC: boolean;
|
|
49
|
+
IS_LINUX: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Obtient le répertoire de configuration selon la plateforme
|
|
52
|
+
*/
|
|
53
|
+
getConfigPath: () => string;
|
|
54
|
+
/**
|
|
55
|
+
* Obtient le répertoire temporaire selon la plateforme
|
|
56
|
+
*/
|
|
57
|
+
getTempPath: () => string;
|
|
58
|
+
/**
|
|
59
|
+
* Vérifie si Node.js est installé via NVM
|
|
60
|
+
* Utile pour ajuster les chemins sur Windows avec NVM
|
|
61
|
+
*/
|
|
62
|
+
isNvmEnvironment: () => boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Obtient le chemin de base de NVM si applicable
|
|
65
|
+
* Important pour les configurations sur Windows avec NVM
|
|
66
|
+
*/
|
|
67
|
+
getNvmBasePath: () => string | null;
|
|
68
|
+
};
|
package/build/config.js
CHANGED
|
@@ -1,12 +1,47 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.PlatformConfig = exports.SystemConfig = exports.EmbeddingConfig = exports.VerificationConfig = void 0;
|
|
2
37
|
/**
|
|
3
38
|
* config.ts
|
|
4
39
|
*
|
|
5
40
|
* Fichier de configuration centralisé pour Smart-Thinking
|
|
6
41
|
* Contient les seuils, paramètres et constantes utilisés dans tout le système
|
|
7
42
|
*/
|
|
8
|
-
|
|
9
|
-
|
|
43
|
+
const os_1 = require("os");
|
|
44
|
+
const path = __importStar(require("path"));
|
|
10
45
|
/**
|
|
11
46
|
* Configuration pour les seuils de vérification et similarité
|
|
12
47
|
*/
|
|
@@ -51,4 +86,65 @@ exports.SystemConfig = {
|
|
|
51
86
|
MAX_THOUGHT_LENGTH: 10000, // Longueur maximale d'une pensée en caractères
|
|
52
87
|
MAX_CONNECTIONS: 50 // Nombre maximum de connexions par pensée
|
|
53
88
|
};
|
|
89
|
+
/**
|
|
90
|
+
* Configuration spécifique à la plateforme
|
|
91
|
+
* Détecte automatiquement l'environnement d'exécution et ajuste les paramètres
|
|
92
|
+
*/
|
|
93
|
+
exports.PlatformConfig = {
|
|
94
|
+
IS_WINDOWS: (0, os_1.platform)() === 'win32',
|
|
95
|
+
IS_MAC: (0, os_1.platform)() === 'darwin',
|
|
96
|
+
IS_LINUX: (0, os_1.platform)() === 'linux',
|
|
97
|
+
/**
|
|
98
|
+
* Obtient le répertoire de configuration selon la plateforme
|
|
99
|
+
*/
|
|
100
|
+
getConfigPath: () => {
|
|
101
|
+
if ((0, os_1.platform)() === 'win32') {
|
|
102
|
+
return process.env.APPDATA
|
|
103
|
+
? path.join(process.env.APPDATA, 'Smart-Thinking')
|
|
104
|
+
: path.join(process.env.USERPROFILE || '', 'AppData', 'Roaming', 'Smart-Thinking');
|
|
105
|
+
}
|
|
106
|
+
else if ((0, os_1.platform)() === 'darwin') {
|
|
107
|
+
return path.join(process.env.HOME || '', 'Library', 'Application Support', 'Smart-Thinking');
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
return path.join(process.env.HOME || '', '.smart-thinking');
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
/**
|
|
114
|
+
* Obtient le répertoire temporaire selon la plateforme
|
|
115
|
+
*/
|
|
116
|
+
getTempPath: () => {
|
|
117
|
+
return path.join((0, os_1.platform)() === 'win32' ? (process.env.TEMP || 'C:/Temp') : '/tmp', 'smart-thinking');
|
|
118
|
+
},
|
|
119
|
+
/**
|
|
120
|
+
* Vérifie si Node.js est installé via NVM
|
|
121
|
+
* Utile pour ajuster les chemins sur Windows avec NVM
|
|
122
|
+
*/
|
|
123
|
+
isNvmEnvironment: () => {
|
|
124
|
+
const nodePath = process.execPath.toLowerCase();
|
|
125
|
+
return nodePath.includes('nvm') ||
|
|
126
|
+
((0, os_1.platform)() === 'win32' && nodePath.includes('appdata\\roaming\\nvm'));
|
|
127
|
+
},
|
|
128
|
+
/**
|
|
129
|
+
* Obtient le chemin de base de NVM si applicable
|
|
130
|
+
* Important pour les configurations sur Windows avec NVM
|
|
131
|
+
*/
|
|
132
|
+
getNvmBasePath: () => {
|
|
133
|
+
if (!exports.PlatformConfig.isNvmEnvironment()) {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
if ((0, os_1.platform)() === 'win32') {
|
|
137
|
+
const nvmPath = process.execPath.split('\\node.exe')[0];
|
|
138
|
+
return nvmPath;
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
// Pour Unix, essayer de détecter le chemin NVM
|
|
142
|
+
const nvmDir = process.env.NVM_DIR;
|
|
143
|
+
if (nvmDir) {
|
|
144
|
+
return nvmDir;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
};
|
|
54
150
|
//# sourceMappingURL=config.js.map
|
package/build/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|