---
name: dev-careful
description: "Attiva modalita prudente: conferma prima di operazioni distruttive. Usa questa skill quando l'utente vuole proteggere il progetto, lavorare con cautela, o dice careful, prudente, attenzione, stai attento, modo sicuro, protezione."
---

# /dev-careful — Modalita Prudente

Attiva una modalita di esecuzione prudente per la sessione corrente. Ogni operazione potenzialmente distruttiva richiede conferma esplicita prima di procedere.

## Attivazione

Quando l'utente invoca `/dev-careful`:
1. Conferma attivazione: "Modalita prudente ATTIVA. Da ora ogni operazione distruttiva richiede conferma."
2. La modalita resta attiva per tutta la sessione
3. Se `$ARGUMENTS` contiene `--off`, disattiva: "Modalita prudente DISATTIVATA."

## Operazioni che richiedono conferma

### Filesystem (rischio ALTO)
- `rm`, `rm -rf`, `unlink` — eliminazione file/directory
- `mv` su file esistente — sovrascrittura
- Sovrascrittura di file con Write tool su file esistente critico
- `chmod`, `chown` — modifica permessi

### Git (rischio ALTO)
- `git reset --hard` — perdita commit
- `git push --force` — sovrascrittura remoto
- `git branch -D` — eliminazione branch
- `git checkout -- .` — scarto modifiche
- `git clean -fd` — eliminazione file untracked
- `git rebase` su branch condiviso

### Database (rischio CRITICO)
- `DROP TABLE`, `DROP DATABASE`, `TRUNCATE`
- `DELETE FROM` senza WHERE
- `ALTER TABLE ... DROP COLUMN`
- Migration distruttive (rename column, change type)

### Configurazione (rischio MEDIO)
- Modifica `.env`, `.env.production`
- Modifica `package.json` dependencies (non devDependencies)
- Modifica file CI/CD (`.github/workflows/`, `Dockerfile`)
- Modifica `tsconfig.json`, `vite.config.*`, config root

### Processo (rischio MEDIO)
- `kill`, `pkill` — terminazione processi
- `docker rm`, `docker rmi` — eliminazione container/immagini

## Formato conferma

Quando un'operazione richiede conferma, mostra:

```
CAREFUL: Operazione potenzialmente distruttiva rilevata

  Azione: [descrizione dell'operazione]
  File:   [path del file coinvolto]
  Rischio: [CRITICO/ALTO/MEDIO]
  Motivo: [perche e pericolosa]

Procedere? (si/no)
```

## Regole

1. **Mai aggregare conferme** — ogni operazione richiede la propria conferma separata
2. **Mai bypassare** — nemmeno in modalita `--auto` di altre skill
3. **Mostra sempre il contesto** — non chiedere solo "Procedere?" ma spiega cosa sta per succedere
4. **Log nel changelog** — registra in `specs/_changelog.md`: "Modalita careful attivata/disattivata"
5. **Compatibile con /dev-freeze e /dev-guard** — si sommano, non si sostituiscono

## Interazione con altre skill

- `/dev-implement` + `/dev-careful`: prima di ogni Write/Edit su file applicazione, conferma
- `/dev-validate` + `/dev-careful`: prima di eseguire test distruttivi (es. seed DB), conferma
- `/dev-security` + `/dev-careful`: prima di applicare fix automatici, conferma

## Disattivazione

- `/dev-careful --off` — disattiva per la sessione
- Fine sessione — si disattiva automaticamente
- Non persiste tra sessioni
