Compare commits

..

2 commits

Author SHA1 Message Date
eb92cde305
[DOCS] Actualizar README.md para incluir información sobre sora_enable.sh y sora_disable.sh
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-20 12:51:45 -05:00
e3c6cb07aa
[ADDED] Scripts sora_enable.sh y sora_disable.sh para alias de Aider
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-20 12:49:15 -05:00
7 changed files with 325 additions and 4 deletions

View file

@ -55,6 +55,10 @@ bin/update.sh
| `bin/cortana_unalias.sh` | Elimina el alias 'cortana' |
| `bin/cortana_enable.sh` | Activa el alias 'cortana' permanentemente |
| `bin/cortana_disable.sh` | Desactiva temporalmente el alias 'cortana' |
| `bin/aider_install.sh` | Instala Aider CLI (asistente de código IA) |
| `bin/aider_install.sh -u` | Desinstala Aider CLI |
| `bin/sora_enable.sh` | Activa el alias 'sora' para Aider permanentemente |
| `bin/sora_disable.sh` | Desactiva el alias 'sora' para Aider |
### Herramientas para Editores de Código
@ -104,9 +108,11 @@ El directorio `$HOME/devs` sirve como área principal de desarrollo donde se ges
Si desea usar Docker en lugar de Podman, debe instalarlo manualmente antes de ejecutar `bootstrap.sh`.
### Configuración de Claude Code
### Configuración de Herramientas de IA
MRDevs Tools facilita el trabajo con herramientas de IA como Claude Code CLI:
MRDevs Tools facilita el trabajo con herramientas de IA:
#### Claude Code CLI
```bash
# Instalación
@ -130,6 +136,24 @@ bin/cortana_unalias.sh
El token se encripta usando SOPS y se almacena de forma segura en `$HOME/.cortana/cortana.sops.yaml`.
#### Aider CLI
```bash
# Instalación
bin/aider_install.sh
# Habilitar alias para facilitar su uso (sora = aider)
bin/sora_enable.sh
# Deshabilitar el alias
bin/sora_disable.sh
# Desinstalar (si es necesario)
bin/aider_install.sh -u
```
Aider es un asistente de código basado en IA que te permite colaborar con modelos de lenguaje de OpenAI directamente desde la terminal. El script de instalación utiliza el instalador oficial de Aider.
La configuración de proyectos se almacena en `bin/config/projects.dat`, donde se encuentra el nombre de la carpeta de proyectos utilizada por el sistema.
### Instalación de Helix Editor
@ -386,6 +410,7 @@ Este proyecto está licenciado bajo la Licencia Pública General Affero (AGPL) -
- **Mauro Rosero P.** - Desarrollador Principal - [mauro@rosero.one](mailto:mauro@rosero.one)
- **Claude Code** - Asistente Digital - [claude@anthropic.com](mailto:claude@anthropic.com)
- **Cortana Rosero One** - Asistente Digital - [cortana@rosero.one](mailto:cortana@rosero.one)
- **Sora Rosero One** - Asistente Digital - [sora@rosero.one](mailto:sora@rosero.one)
## 📞 Soporte

View file

@ -6,7 +6,7 @@
#Generated by : Claude Code (claude-3-7-sonnet-20250219)
#Created : 2025/03/20 10:58:42
#Modified : 2025/03/20 11:01:35
#Version : 1.0.0
#Version : 1.2.0
#Use Notes :
#==============================================================================
# Derechos de Autor [2025] [Mauro Rosero P. <mauro@rosero.one>]
@ -124,4 +124,4 @@ main() {
}
# Ejecutar función principal con los parámetros recibidos
main "$@"
main "$@"

View file

@ -38,6 +38,30 @@ aimsg_022="Aider ha sido instalado correctamente."
aimsg_023="Para usar aider, ejecute 'aider' en una nueva terminal."
aimsg_024="La primera vez que lo ejecute deberá configurar su API key de OpenAI."
# Mensajes para sora_enable.sh y sora_disable.sh
srmsg_000="ALIAS SORA PARA AIDER"
srmsg_001="Alias 'sora' para Aider"
srmsg_002="¿Desea habilitar el alias 'sora' para Aider?"
srmsg_003="¿Desea deshabilitar el alias 'sora' para Aider?"
srmsg_004="El alias 'sora' ya existe en"
srmsg_005="El alias 'sora' ha sido agregado a"
srmsg_006="El alias 'sora' ha sido habilitado en su shell."
srmsg_007="Para activarlo en la sesión actual, ejecute:"
srmsg_008="Alias habilitado"
srmsg_009="Alias creado"
srmsg_010="Alias no encontrado"
srmsg_011="El alias 'sora' no existe en su archivo de configuración"
srmsg_012="Alias eliminado"
srmsg_013="El alias 'sora' ha sido eliminado de"
srmsg_014="El alias 'sora' ha sido deshabilitado en su shell."
srmsg_015="Para desactivarlo en la sesión actual, ejecute:"
srmsg_016="Alias deshabilitado"
srmsg_017="Alias sora habilitado"
srmsg_018="Alias sora deshabilitado"
srmsg_019="Error al agregar el alias al archivo de configuración"
srmsg_020="Error al eliminar el alias del archivo de configuración"
srmsg_021="Shell no soportado. Use bash o zsh."
gpmsg_000="INICIALIZAR GPG"
gpmsg_001="RESTAURAR BACKUP DE PERFIL"

10
bin/sora_alias.sh Executable file
View file

@ -0,0 +1,10 @@
#!/bin/bash
# Verificar si ~/.local/bin está en el PATH
if [[ ":$PATH:" != *":$HOME/.local/bin:"* ]]; then
# Si no está en el PATH, usamos la ruta completa en el alias
alias sora="$HOME/.local/bin/aider"
else
# Si está en el PATH, podemos usar el nombre directamente
alias sora="aider"
fi
echo "Alias sora habilitado"

120
bin/sora_disable.sh Executable file
View file

@ -0,0 +1,120 @@
#!/bin/bash
#Script : sora_disable.sh
#Apps : MRDEVS TOOLS
#Description : Deshabilita el alias 'sora' para Aider
#Author : Sora Rosero One <sora@rosero.one>
#Generated by : Claude Code (claude-3-7-sonnet-20250219)
#Created : 2025/03/20 12:30:00
#Modified : 2025/03/20 12:48:05
#Version : 1.0.0
#Use Notes :
# ./sora_disable.sh -> Deshabilitar
# No usa console.lib, ni console.es
#==============================================================================
# Derechos de Autor [2025] [Mauro Rosero P. <mauro@rosero.one>]
#==============================================================================
# Este programa es software libre: usted puede redistribuirlo y/o modificarlo
# bajo los términos de la Licencia Pública Affero General de GNU tal como
# lo publica la Free Software Foundation, ya sea la versión 3 de la licencia,
# o (a su elección) cualquier versión posterior.
#
# Este programa se distribuye con la esperanza de que sea útil,
# pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de
# COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la
# Licencia Pública Affero General de GNU para obtener más detalles.
#
# Debería haber recibido una copia de la Licencia Pública Affero General
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
# Configuración inicial
# Usar DEVELOPER_DIR de base.lib
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
BIN_BASE="bin"
BIN_LIBS="lib"
BIN_MESG="msg"
BIN_CFGS="config"
# Leer DEVSPATH desde el archivo de configuración o usar "devs" por defecto
if [ -f "$SCRIPT_DIR/config/devspath.dat" ]; then
DEVSPATH=$(cat "$SCRIPT_DIR/$BIN_CFGS/devspath.dat")
else
DEVSPATH="devs"
fi
BIN_HOME="$HOME/$DEVSPATH"
VERSION=$(cat "$BIN_HOME/$BIN_BASE/$BIN_CFGS/version")
# CHECK SHELL LANGUAGE
BIN_LANG=${LANG:0:2}
# Importar bibliotecas necesarias
source "${BIN_HOME}/${BIN_BASE}/${BIN_LIBS}/base.lib"
# Cargar mensajes en el idioma del sistema o español por defecto
load_messages "${BIN_HOME}/${BIN_BASE}" "${BIN_MESG}" "${BIN_LANG}" "head"
load_messages "${BIN_HOME}/${BIN_BASE}" "${BIN_MESG}" "${BIN_LANG}" "developers"
title="${head_000} ${srmsg_000}"
# Verificar que 'dialog' esté instalado
if ! command -v dialog &>/dev/null; then
echo "${npm_001}"
exit 1
fi
# Función para eliminar alias de Sora
remove_sora_alias() {
local alias_nombre="sora"
local shell_config=""
# Detectar el shell actual y seleccionar el archivo de configuración adecuado
case "$SHELL" in
*/bash)
shell_config="$HOME/.bashrc"
;;
*/zsh)
shell_config="$HOME/.zshrc"
;;
*)
dialog --backtitle "${title}" --title "${head_error}" --msgbox "${srmsg_021}" 7 50
return 1
;;
esac
# Verificar si el alias existe en el archivo de configuración
if grep -q "alias $alias_nombre=" "$shell_config"; then
# Eliminar el alias del archivo de configuración
sed -i "/alias $alias_nombre=/d" "$shell_config"
if [[ $? -eq 0 ]]; then
dialog --backtitle "${title}" --title "${srmsg_012}" --msgbox "${srmsg_013} $shell_config" 7 60
else
dialog --backtitle "${title}" --title "${head_error}" --msgbox "${srmsg_020}" 7 50
return 1
fi
else
dialog --backtitle "${title}" --title "${srmsg_010}" --msgbox "${srmsg_011}" 7 50
return 2
fi
}
# Confirmar desactivación
dialog --backtitle "${title}" --title "${npm_031}" --yesno "${srmsg_003}" 7 50
if [[ $? -eq 0 ]]; then
# Crear un archivo fuente para la desactivación del alias
UNALIAS_FILE="$BIN_HOME/bin/sora_unalias.sh"
echo '#!/bin/bash' > "$UNALIAS_FILE"
echo 'unalias sora 2>/dev/null' >> "$UNALIAS_FILE"
echo "echo \"${srmsg_018}\"" >> "$UNALIAS_FILE"
chmod +x "$UNALIAS_FILE"
# Ejecutar la función remove_sora_alias para el archivo de configuración permanente
remove_sora_alias
# Crear un mensaje con instrucciones para desactivar el alias en la sesión actual
dialog --backtitle "${title}" --title "${srmsg_016}" --msgbox "${srmsg_014}\n\n${srmsg_015}\n\nsource $UNALIAS_FILE\n\n" 10 70
else
dialog --backtitle "${title}" --title "${head_canceled}" --msgbox "${npm_008}" 6 40
exit 1
fi
# Limpiar consola
clear

139
bin/sora_enable.sh Executable file
View file

@ -0,0 +1,139 @@
#!/bin/bash
#Script : sora_enable.sh
#Apps : MRDEVS TOOLS
#Description : Habilitar el alias 'sora' para Aider
#Author : Sora Rosero One <sora@rosero.one>
#Generated by : Claude Code (claude-3-7-sonnet-20250219)
#Created : 2025/03/20 12:30:00
#Modified : 2025/03/20 12:48:05
#Version : 1.0.0
#Use Notes :
# ./sora_enable.sh -> Habilitar
# No usa console.lib, ni console.es
#==============================================================================
# Derechos de Autor [2025] [Mauro Rosero P. <mauro@rosero.one>]
#==============================================================================
# Este programa es software libre: usted puede redistribuirlo y/o modificarlo
# bajo los términos de la Licencia Pública Affero General de GNU tal como
# lo publica la Free Software Foundation, ya sea la versión 3 de la licencia,
# o (a su elección) cualquier versión posterior.
#
# Este programa se distribuye con la esperanza de que sea útil,
# pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de
# COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la
# Licencia Pública Affero General de GNU para obtener más detalles.
#
# Debería haber recibido una copia de la Licencia Pública Affero General
# junto con este programa. Si no la recibió, consulte <https://www.gnu.org/licenses/>.
# Configuración inicial
# Usar DEVELOPER_DIR de base.lib
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
BIN_BASE="bin"
BIN_LIBS="lib"
BIN_MESG="msg"
BIN_CFGS="config"
# Leer DEVSPATH desde el archivo de configuración o usar "devs" por defecto
if [ -f "$SCRIPT_DIR/config/devspath.dat" ]; then
DEVSPATH=$(cat "$SCRIPT_DIR/$BIN_CFGS/devspath.dat")
else
DEVSPATH="devs"
fi
BIN_HOME="$HOME/$DEVSPATH"
VERSION=$(cat "$BIN_HOME/$BIN_BASE/$BIN_CFGS/version")
# CHECK SHELL LANGUAGE
BIN_LANG=${LANG:0:2}
# Importar bibliotecas necesarias
source "${BIN_HOME}/${BIN_BASE}/${BIN_LIBS}/base.lib"
# Cargar mensajes en el idioma del sistema o español por defecto
load_messages "${BIN_HOME}/${BIN_BASE}" "${BIN_MESG}" "${BIN_LANG}" "head"
load_messages "${BIN_HOME}/${BIN_BASE}" "${BIN_MESG}" "${BIN_LANG}" "developers"
title="${head_000} ${srmsg_000}"
# Verificar que 'dialog' esté instalado
if ! command -v dialog &>/dev/null; then
echo "${npm_001}"
clear
exit 1
fi
# Función para agregar alias de Sora para Aider
sora_alias() {
local alias_nombre="sora"
local alias_comando=""
local shell_config=""
# Determinar la ruta del comando aider
if [[ -x "$HOME/.local/bin/aider" ]]; then
alias_comando="$HOME/.local/bin/aider"
else
alias_comando="aider" # Fallback al comando en el PATH
fi
# Detectar el shell actual y seleccionar el archivo de configuración adecuado
case "$SHELL" in
*/bash)
shell_config="$HOME/.bashrc"
;;
*/zsh)
shell_config="$HOME/.zshrc"
;;
*)
dialog --backtitle "${title}" --title "${head_error}" --msgbox "${srmsg_021}" 7 50
return 1
;;
esac
# Verificar si el alias ya existe en el archivo de configuración
if grep -q "alias $alias_nombre=" "$shell_config"; then
dialog --backtitle "${title}" --title "${srmsg_008}" --msgbox "${srmsg_004} $shell_config" 7 60
return 2
else
# Agregar el alias al final del archivo de configuración
echo "alias $alias_nombre='$alias_comando'" >> "$shell_config"
if [[ $? -eq 0 ]]; then
# Recargar el archivo de configuración
source "$shell_config" 2>/dev/null || true
dialog --backtitle "${title}" --title "${srmsg_009}" --msgbox "${srmsg_005} $shell_config\n\nRecuerde ejecutar: source $shell_config" 9 60
else
dialog --backtitle "${title}" --title "${head_error}" --msgbox "${srmsg_019}" 7 50
return 1
fi
fi
}
# Confirmar activación
dialog --backtitle "${title}" --title "${npm_031}" --yesno "${srmsg_002}" 7 50
if [[ $? -eq 0 ]]; then
# Crear un archivo fuente para la activación del alias
ALIAS_FILE="$BIN_HOME/bin/sora_alias.sh"
echo '#!/bin/bash' > "$ALIAS_FILE"
echo '# Verificar si ~/.local/bin está en el PATH' >> "$ALIAS_FILE"
echo 'if [[ ":$PATH:" != *":$HOME/.local/bin:"* ]]; then' >> "$ALIAS_FILE"
echo ' # Si no está en el PATH, usamos la ruta completa en el alias' >> "$ALIAS_FILE"
echo ' alias sora="$HOME/.local/bin/aider"' >> "$ALIAS_FILE"
echo 'else' >> "$ALIAS_FILE"
echo ' # Si está en el PATH, podemos usar el nombre directamente' >> "$ALIAS_FILE"
echo ' alias sora="aider"' >> "$ALIAS_FILE"
echo 'fi' >> "$ALIAS_FILE"
echo "echo \"${srmsg_017}\"" >> "$ALIAS_FILE"
chmod +x "$ALIAS_FILE"
# Ejecutar la función sora_alias para el archivo de configuración permanente
sora_alias
# Crear un mensaje con instrucciones para activar el alias en la sesión actual
dialog --backtitle "${title}" --title "${srmsg_008}" --msgbox "${srmsg_006}\n\n${srmsg_007}\n\nsource $ALIAS_FILE\n\n" 10 70
else
dialog --backtitle "${title}" --title "${head_canceled}" --msgbox "${npm_008}" 6 40
clear
exit 1
fi
# Limpiar consola
clear

3
bin/sora_unalias.sh Executable file
View file

@ -0,0 +1,3 @@
#!/bin/bash
unalias sora 2>/dev/null
echo "Alias sora deshabilitado"