[FIXED] Mejorar manejo de dependencias en claude_voice.py

- Modificado el script para comprobar dependencias faltantes
- Actualización de las instrucciones de instalación de dependencias
- Separación clara entre instalación a nivel de sistema y entorno virtual
- Uso de --install-deps ahora muestra instrucciones detalladas por plataforma
- Actualización del README con comandos específicos para Ubuntu/Debian

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Mauro Rosero P. 2025-03-30 16:04:16 -05:00
parent cf68c85869
commit 4b025f904e
Signed by: mrosero
GPG key ID: 83BD2A5F674B7E26
2 changed files with 35 additions and 12 deletions

View file

@ -155,9 +155,13 @@ El token se encripta usando SOPS y se almacena de forma segura en `$HOME/.cortan
MRDevs Tools incluye un script experimental para interactuar con Claude Code mediante comandos de voz:
```bash
# Instalar dependencias necesarias
# Ver instrucciones para instalar dependencias
bin/claude_voice.py --install-deps
# Para sistemas Ubuntu/Debian
sudo apt install python3-pyaudio python3-pip
pip install --user vosk pydub sounddevice wget
# Modo interactivo básico (español por defecto)
bin/claude_voice.py

View file

@ -5,9 +5,9 @@
# [Author] : Cortana Rosero One <cortana@rosero.one>
# [Generated] : Created by Claude Code (claude-3-7-sonnet-20250219)
# [Created] : 2025/03/30 16:45:00
# [Modified] : 2025/03/30 17:25:00
# [Modified] : 2025/03/30 17:45:00
# [Version] : 1.3.0
# [Use Notes] : Instalar dependencias: pip install vosk sounddevice pydub
# [Use Notes] : Instalar dependencias en Ubuntu/Debian: sudo apt install python3-pyaudio python3-pip && pip install --user vosk pydub sounddevice wget
import os
import sys
@ -17,10 +17,6 @@ import argparse
import time
import queue
import threading
import sounddevice as sd
from vosk import Model, KaldiRecognizer
from pydub import AudioSegment
from pydub.playback import play
# Colores para la salida
class Colors:
@ -304,14 +300,37 @@ def main():
# Instalar dependencias si se solicita
if args.install_deps:
try:
print(f"{Colors.BLUE}[Claude Voice]{Colors.END} {Colors.YELLOW}Instalando dependencias...{Colors.END}")
import pip
pip.main(['install', 'vosk', 'sounddevice', 'pydub', 'wget'])
print(f"{Colors.BLUE}[Claude Voice]{Colors.END} {Colors.GREEN}Dependencias instaladas correctamente{Colors.END}")
print(f"{Colors.BLUE}[Claude Voice]{Colors.END} {Colors.YELLOW}Instrucciones para instalar dependencias...{Colors.END}")
print("\nPara sistemas Ubuntu/Debian, ejecuta los siguientes comandos:")
print(f"{Colors.GREEN}sudo apt install python3-pyaudio python3-pip{Colors.END}")
print(f"{Colors.GREEN}pip install --user vosk pydub sounddevice wget{Colors.END}")
print("\nPara otros sistemas, consulta la documentación de Vosk:")
print(f"{Colors.GREEN}https://alphacephei.com/vosk/install{Colors.END}")
print("\nSi prefieres usar un entorno virtual (recomendado):")
print(f"{Colors.GREEN}sudo apt install python3-venv python3-pyaudio{Colors.END}")
print(f"{Colors.GREEN}python3 -m venv ~/venv-claude-voice{Colors.END}")
print(f"{Colors.GREEN}source ~/venv-claude-voice/bin/activate{Colors.END}")
print(f"{Colors.GREEN}pip install vosk pydub sounddevice wget{Colors.END}")
print(f"{Colors.GREEN}# Luego ejecuta: ~/venv-claude-voice/bin/python3 /home/mrosero/devs/bin/claude_voice.py{Colors.END}")
return
except Exception as e:
print(f"{Colors.RED}Error al instalar dependencias: {e}{Colors.END}")
print(f"{Colors.RED}Error al mostrar instrucciones: {e}{Colors.END}")
sys.exit(1)
# Verificar si las dependencias están instaladas
try:
# Intentar importar las dependencias
import sounddevice as sd
from vosk import Model, KaldiRecognizer
from pydub import AudioSegment
from pydub.playback import play
except ImportError as e:
print(f"{Colors.RED}Error: Faltan dependencias. {e}{Colors.END}")
print(f"{Colors.YELLOW}Ejecuta '{sys.argv[0]} --install-deps' para ver instrucciones de instalación.{Colors.END}")
sys.exit(1)
# Listar dispositivos si se solicita
if args.list_devices: