agentvibes 2.9.3 → 2.9.4
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/package.json +1 -1
- package/src/installer.js +11 -3
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "agentvibes",
|
|
4
|
-
"version": "2.9.
|
|
4
|
+
"version": "2.9.4",
|
|
5
5
|
"description": "Now your AI Agents can finally talk back! Professional TTS voice for Claude Code and Claude Desktop (via MCP) with multi-provider support.",
|
|
6
6
|
"homepage": "https://agentvibes.org",
|
|
7
7
|
"keywords": [
|
package/src/installer.js
CHANGED
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
import { program } from 'commander';
|
|
45
45
|
import path from 'node:path';
|
|
46
46
|
import fs from 'node:fs/promises';
|
|
47
|
+
import fsSync from 'node:fs';
|
|
47
48
|
import { execSync } from 'node:child_process';
|
|
48
49
|
import chalk from 'chalk';
|
|
49
50
|
import inquirer from 'inquirer';
|
|
@@ -1317,6 +1318,7 @@ async function install(options = {}) {
|
|
|
1317
1318
|
console.log(chalk.yellow(` • ElevenLabs API key: Set manually later`));
|
|
1318
1319
|
}
|
|
1319
1320
|
} else {
|
|
1321
|
+
console.error(chalk.red(` DEBUG: In Piper block, selectedProvider = ${selectedProvider}`));
|
|
1320
1322
|
// Check for installed Piper voices
|
|
1321
1323
|
const piperVoicesDir = path.join(process.env.HOME || process.env.USERPROFILE, '.claude', 'piper-voices');
|
|
1322
1324
|
let installedVoices = [];
|
|
@@ -1332,23 +1334,27 @@ async function install(options = {}) {
|
|
|
1332
1334
|
];
|
|
1333
1335
|
|
|
1334
1336
|
try {
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
+
console.error(chalk.gray(` Debug: Checking ${piperVoicesDir}`));
|
|
1338
|
+
if (fsSync.existsSync(piperVoicesDir)) {
|
|
1339
|
+
const files = fsSync.readdirSync(piperVoicesDir);
|
|
1340
|
+
console.error(chalk.gray(` Debug: Found ${files.length} files`));
|
|
1337
1341
|
installedVoices = files
|
|
1338
1342
|
.filter(f => f.endsWith('.onnx'))
|
|
1339
1343
|
.map(f => {
|
|
1340
1344
|
const voiceName = f.replace('.onnx', '');
|
|
1341
1345
|
const voicePath = path.join(piperVoicesDir, f);
|
|
1342
1346
|
try {
|
|
1343
|
-
const stats =
|
|
1347
|
+
const stats = fsSync.statSync(voicePath);
|
|
1344
1348
|
const sizeMB = (stats.size / 1024 / 1024).toFixed(1);
|
|
1345
1349
|
return { name: voiceName, path: voicePath, size: `${sizeMB}M` };
|
|
1346
1350
|
} catch (statErr) {
|
|
1347
1351
|
// Skip files that can't be read (broken symlinks, etc)
|
|
1352
|
+
console.error(chalk.gray(` Debug: Skipped ${voiceName} (${statErr.message})`));
|
|
1348
1353
|
return null;
|
|
1349
1354
|
}
|
|
1350
1355
|
})
|
|
1351
1356
|
.filter(v => v !== null);
|
|
1357
|
+
console.error(chalk.gray(` Debug: ${installedVoices.length} valid voices after filtering`));
|
|
1352
1358
|
|
|
1353
1359
|
// Check which common voices are missing
|
|
1354
1360
|
for (const voice of commonVoices) {
|
|
@@ -1356,7 +1362,9 @@ async function install(options = {}) {
|
|
|
1356
1362
|
missingVoices.push(voice);
|
|
1357
1363
|
}
|
|
1358
1364
|
}
|
|
1365
|
+
console.error(chalk.gray(` Debug: ${missingVoices.length} missing voices`));
|
|
1359
1366
|
} else {
|
|
1367
|
+
console.error(chalk.gray(` Debug: Directory does not exist`));
|
|
1360
1368
|
missingVoices = commonVoices;
|
|
1361
1369
|
}
|
|
1362
1370
|
} catch (err) {
|