Un script de shell es código de producción — sin negociación.
Piso para shell: strict mode, shellcheck como gate, eval vetado, exit code como contrato, trap y mktemp. El instalador se adapta al entorno y nunca culpa a quien lo ejecutó.
$ schematize install shellPisos innegociables
Nunca se desactivan "para ir más rápido". La lista completa está en la skill.
Strict mode o excepción escrita
set -euo pipefail en todo script ejecutable; las excepciones legítimas valen declaradas en un comentario.
shellcheck es gate
--severity=warning bloquea el merge; silenciar exige shellcheck disable con código y motivo en la línea.
eval está vetado
Nada de eval ni bash -c con una cadena armada con datos externos: usa un array para armar el comando y case para despachar.
El exit code es un contrato
0 pasa, 1 reprueba y 2 significa que no se pudo verificar; devolver 0 sin haber comprobado nada está prohibido.
trap y mktemp
trap limpia en EXIT INT TERM y los temporales nacen de mktemp, nunca con un nombre predecible en /tmp.
Idempotencia y comillas
Ejecutar dos veces da el mismo resultado, toda expansión va entre comillas y la salida de ls nunca se parsea.
Instalador que se adapta
Descubre el usuario real bajo sudo, el gestor de paquetes y lo que ya existe; falla diciendo qué hacer ahora, y el secreto nunca va como argumento de comando.
Comandos
Instalados en .claude/commands/. Ejecuta /shell-help cuando quieras.
/shell-ccContext compact: guarda el handoff (contexto + checklist) en el archive y ejecuta /compact./shell-claudeCrea o fusiona el CLAUDE.md siempre activo de schematize-shell en la raíz del repo, sin sobrescribir bloques de otras skills./shell-handoffGenera el handoff de contexto en el archive sin compactar: fin de sesión o cambio de tarea./shell-helpLista todos los comandos de la skill./shell-loadCarga a la fuerza todo el cuerpo normativo de schematize-shell y lo aplica en la sesión./shell-reviewRevisa .sh (nuevos o existentes) contra el piso: ejecuta el gate y lee lo que la máquina no lee.Para agentes de IA
Instala sin humano en el bucle. Metadatos en llms.txt.
- Ejecuta: git clone https://github.com/schematizeme/skill-shell.git && ./skill-shell/install.sh
- O descarga https://github.com/schematizeme/skill-shell/releases/latest/download/skill-shell.zip y descomprime en .claude/skills/.
- Copia assets/CLAUDE.md a la raíz del repo (regla siempre activa).
- Confirma con /shell-help.
Discusión
Cargando…