PORTING: Python → Node.js per agency-archivist scripts

Motivazione:
- Node.js già installato (v25.7.0), zero privilegi necessari
- Nessuna dipendenza npm richiesta (usa built-in modules)
- Tool di sistema per estrazione: unzip, tar, identify (ImageMagick)
- Più gestibile in ambienti senza sudo

Cambiamenti:
- extract_archive.py → extract_archive.js (11.6KB)
  - Usa execSync per unzip/tar/unrar
  - Stessa logica, zero dipendenze esterne

- scan_resources.py → scan_resources.js (13.4KB)
  - Usa ImageMagick identify per metadata immagini
  - ffprobe opzionale per video
  - Genera tag e use case automaticamente

- generate_catalog.py → generate_catalog.js (8.7KB)
  - Stesso output markdown
  - Zero dipendenze

- README.md aggiornato con comandi Node.js
- SKILL.md aggiornato con riferimenti corretti

Dipendenze opzionali (tool di sistema):
- unrar: Supporto archivi RAR
- ffmpeg/ffprobe: Metadata video avanzati
This commit is contained in:
AgentePotente 2026-03-10 23:44:14 +01:00
parent 45825704e0
commit 94642c3501
8 changed files with 1117 additions and 951 deletions

View file

@ -16,20 +16,20 @@ cd ~/agency-skills-suite
### 1. Estrazione Archivio
```bash
python scripts/extract_archive.py brand_assets.zip --client demo_co_srl
python scripts/extract_archive.py https://example.com/assets.zip --client demo_co_srl
node scripts/extract_archive.js brand_assets.zip --client demo_co_srl
node scripts/extract_archive.js https://example.com/assets.zip --client demo_co_srl
```
### 2. Scansione Risorse
```bash
python scripts/scan_resources.py --client demo_co_srl --pass 1
node scripts/scan_resources.js --client demo_co_srl --pass 1
```
### 3. Generazione Catalogo
```bash
python scripts/generate_catalog.py --client demo_co_srl
node scripts/generate_catalog.js --client demo_co_srl
```
## Struttura
@ -37,10 +37,11 @@ python scripts/generate_catalog.py --client demo_co_srl
```
agency-archivist/
├── SKILL.md # Istruzioni skill
├── README.md # Questa guida
├── scripts/
│ ├── extract_archive.py # Estrazione zip/URL
│ ├── scan_resources.py # Scansione metadata
│ └── generate_catalog.py # Generazione catalogo
│ ├── extract_archive.js # Estrazione zip/URL (Node.js)
│ ├── scan_resources.js # Scansione metadata (Node.js)
│ └── generate_catalog.js # Generazione catalogo (Node.js)
└── references/
└── resource_types.md # Tipologie risorse e use case
```
@ -54,13 +55,19 @@ Questa skill si integra con:
- **agency-web-developer** — Usa immagini per sito
- **agency-social** — Usa immagini per content calendar
## Dipendenze Python
## Dipendenze
```bash
pip install Pillow
```
**Nessuna dipendenza npm richiesta!** Gli script usano:
- ✅ Node.js built-in modules (fs, path, child_process)
- ✅ Tool di sistema: `unzip`, `tar`, `identify` (ImageMagick), `file`
Per supporto RAR (opzionale):
```bash
pip install rarfile unrar
```
**Opzionale (per funzionalità avanzate):**
- `unrar` — Supporto archivi RAR: `sudo apt-get install unrar`
- `ffprobe` — Metadata video: `sudo apt-get install ffmpeg`
## Vantaggi Node.js vs Python
- ✅ Zero privilegi necessari (gira come user)
- ✅ Nessuna dipendenza npm da installare
- ✅ Tool di sistema per estrazione (più affidabili)
- ✅ ImageMagick per metadata immagini (già installato su molti sistemi)