Skip to content

Latest commit

 

History

History
307 lines (192 loc) · 11.2 KB

File metadata and controls

307 lines (192 loc) · 11.2 KB

Elezioni Sicilia CLI

Dati elettorali siciliani da riga di comando — senza copiare tabelle HTML.

Il sito ufficiale della Regione Siciliana pubblica i risultati delle elezioni comunali solo in HTML e PDF. Questa CLI estrae affluenza, voti, candidati e risultati in JSON strutturato, con archivio dal 2009 e confronto storico tra anni.

Learn more at Elezioni Sicilia.

Created by @aborruso (aborruso).

Install

The recommended path installs both the elezioni-sicilia-pp-cli binary and the pp-elezioni-sicilia agent skill (Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, and other agents supported by the upstream skills CLI) in one shot:

npx -y @mvanhorn/printing-press-library install elezioni-sicilia

For CLI only (no skill):

npx -y @mvanhorn/printing-press-library install elezioni-sicilia --cli-only

For skill only — installs the skill into the same agents as the default command above, but skips the CLI binary (use this to update or reinstall just the skill):

npx -y @mvanhorn/printing-press-library install elezioni-sicilia --skill-only

To constrain the skill install to one or more specific agents (repeatable — agent names match the skills CLI):

npx -y @mvanhorn/printing-press-library install elezioni-sicilia --agent claude-code
npx -y @mvanhorn/printing-press-library install elezioni-sicilia --agent claude-code --agent codex

Without Node (Go fallback)

If npx isn't available (no Node, offline), install the CLI directly via Go (requires Go 1.26.4 or newer):

go install github.com/mvanhorn/printing-press-library/library/other/elezioni-sicilia/cmd/elezioni-sicilia-pp-cli@latest

This installs the CLI only — no skill.

Pre-built binary

Download a pre-built binary for your platform from the latest release. On macOS, clear the Gatekeeper quarantine: xattr -d com.apple.quarantine <binary>. On Unix, mark it executable: chmod +x <binary>.

Install for Hermes

Install the CLI binary first. The installer writes binaries to a per-user managed bin directory by default: $HOME/.local/bin on macOS/Linux and %LOCALAPPDATA%\Programs\PrintingPress\bin on Windows.

npx -y @mvanhorn/printing-press-library install elezioni-sicilia --cli-only

Then install the focused Hermes skill.

From the Hermes CLI:

hermes skills install mvanhorn/printing-press-library/cli-skills/pp-elezioni-sicilia --force

Inside a Hermes chat session:

/skills install mvanhorn/printing-press-library/cli-skills/pp-elezioni-sicilia --force

Restart the Hermes session or gateway if the newly installed skill is not visible immediately.

Install for OpenClaw

Install both the CLI binary and the focused OpenClaw skill. The installer defaults binaries to a per-user bin directory ($HOME/.local/bin on macOS/Linux, %LOCALAPPDATA%\Programs\PrintingPress\bin on Windows):

npx -y @mvanhorn/printing-press-library install elezioni-sicilia --agent openclaw

Restart the OpenClaw session or gateway if the newly installed skill is not visible immediately.

Use with Claude Desktop

This CLI ships an MCPB bundle — Claude Desktop's standard format for one-click MCP extension installs (no JSON config required).

To install:

  1. Download the .mcpb for your platform from the latest release.
  2. Double-click the .mcpb file. Claude Desktop opens and walks you through the install.

Requires Claude Desktop 1.0.0 or later. Pre-built bundles ship for macOS Apple Silicon (darwin-arm64) and Windows (amd64, arm64); for other platforms, use the manual config below.

Manual JSON config (advanced)

If you can't use the MCPB bundle (older Claude Desktop, unsupported platform), install the MCP binary and configure it manually.

go install github.com/mvanhorn/printing-press-library/library/other/elezioni-sicilia/cmd/elezioni-sicilia-pp-mcp@latest

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "elezioni-sicilia": {
      "command": "elezioni-sicilia-pp-mcp"
    }
  }
}

Quick Start

# Tabella affluenza regionale aggiornata
elezioni-sicilia-pp-cli affluenza --json

# Comuni alle elezioni in provincia di Palermo
elezioni-sicilia-pp-cli comuni --provincia PA --json

# Voti per candidato sindaco ad Agrigento
elezioni-sicilia-pp-cli candidati Agrigento --json

# Confronto affluenza dal 2009 al 2026
elezioni-sicilia-pp-cli storico Agrigento --json

# Elezioni regionali (ARS) — Presidente 2022 con liste collegate
elezioni-sicilia-pp-cli regionali presidente --anno 2022 --json

Unique Features

These capabilities aren't available in any other tool for this API.

Analisi temporale

  • storico — Confronta affluenza, voti e candidati di uno stesso comune in tutti gli anni disponibili (2009-2026).

    Permette analisi di trend elettorali pluridecennali su un singolo comune siciliano senza accesso a database.

    elezioni-sicilia-pp-cli storico Agrigento --json

Analisi territoriale

  • riepilogo — Mostra affluenza e stato scrutini per tutte le 9 province siciliane in un unico output strutturato.

    Snapshot immediato del quadro regionale durante la notte elettorale.

    elezioni-sicilia-pp-cli riepilogo --json

Monitoraggio live

  • watch — Polling periodico dello stato scrutini per tutti i comuni, con alert su avanzamento.

    Permette di monitorare l'avanzamento degli scrutini in tempo reale senza aggiornare manualmente il browser.

    elezioni-sicilia-pp-cli watch --intervallo 5m --json

Usage

Run elezioni-sicilia-pp-cli --help for the full command reference and flag list.

Commands

affluenza

Dati sull'affluenza alle urne per tutti i comuni siciliani in più rilevamenti orari.

  • elezioni-sicilia-pp-cli affluenza tabella - Tabella regionale completa dell'affluenza con tutti i rilevamenti orari e confronto con elezioni precedenti.

candidati

Voti per candidato sindaco per comune.

  • elezioni-sicilia-pp-cli candidati get - Voti per ogni candidato sindaco in un comune specifico.

comuni

Elenco dei comuni che partecipano alle elezioni per una data provincia e anno.

  • elezioni-sicilia-pp-cli comuni list - Lista comuni con dropdown per navigazione, con codici interni del sito.

liste

Voti per lista elettorale collegata a ogni candidato sindaco.

  • elezioni-sicilia-pp-cli liste get - Voti per lista collegata a ciascun candidato sindaco in un comune.

risultati

Risultati finali delle elezioni per comune (disponibile a scrutinio completato).

  • elezioni-sicilia-pp-cli risultati get - Risultato finale del comune: sindaco eletto, sezioni, votanti, seggi per lista.

seggi

Ripartizione dei seggi consiliari per lista.

  • elezioni-sicilia-pp-cli seggi get - Ripartizione seggi in Consiglio Comunale per ogni lista.

regionali

Dati delle elezioni regionali siciliane (Assemblea Regionale Siciliana — ARS). Anni supportati: 2017 e 2022.

  • elezioni-sicilia-pp-cli regionali presidente [--anno 2022] - Voti per ciascun candidato Presidente della Regione, con lista regionale e liste provinciali collegate (voti, %, seggi).
  • elezioni-sicilia-pp-cli regionali affluenza [--anno 2022] - Affluenza per ogni provincia con 3 rilevamenti orari (12:00, 19:00, 22-23:00) e confronto con la tornata precedente.
  • elezioni-sicilia-pp-cli regionali seggi [--anno 2022] - Riparto seggi per lista provinciale: matrice 9 colonne provincia + totale regionale.
  • elezioni-sicilia-pp-cli regionali listino [--anno 2022] - Candidati del listino regionale per ciascuna lista (il capolista è il candidato Presidente).
  • elezioni-sicilia-pp-cli regionali candidati --provincia CT [--anno 2022] - Voti di preferenza dei candidati ARS in una provincia, raggruppati per lista provinciale.
# Voti dei candidati Presidente alle regionali 2022
elezioni-sicilia-pp-cli regionali presidente --anno 2022 --json

# Affluenza regionale 2017 con confronto
elezioni-sicilia-pp-cli regionali affluenza --anno 2017

# Voti preferenza ARS a Catania nel 2022
elezioni-sicilia-pp-cli regionali candidati --provincia CT --anno 2022 --json

Output Formats

# Human-readable table (default in terminal, JSON when piped)
elezioni-sicilia-pp-cli candidati Agrigento --provincia AG

# JSON for scripting and agents
elezioni-sicilia-pp-cli candidati Agrigento --provincia AG --json

# Filter to specific fields
elezioni-sicilia-pp-cli candidati Agrigento --provincia AG --json --select id,name,status

# Dry run — show the request without sending
elezioni-sicilia-pp-cli candidati Agrigento --provincia AG --dry-run

# Agent mode — JSON + compact + no prompts in one flag
elezioni-sicilia-pp-cli candidati Agrigento --provincia AG --agent

Agent Usage

This CLI is designed for AI agent consumption:

  • Non-interactive - never prompts, every input is a flag
  • Pipeable - --json output to stdout, errors to stderr
  • Filterable - --select id,name returns only fields you need
  • Previewable - --dry-run shows the request without sending
  • Read-only by default - this CLI does not create, update, delete, publish, send, or mutate remote resources
  • Offline-friendly - sync/search commands can use the local SQLite store when available
  • Agent-safe by default - no colors or formatting unless --human-friendly is set

Exit codes: 0 success, 2 usage error, 3 not found, 5 API error, 7 rate limited, 10 config error.

Health Check

elezioni-sicilia-pp-cli doctor

Verifies configuration and connectivity to the API.

Configuration

Config file: ~/.config/elezioni-sicilia-pp-cli/config.toml

Static request headers can be configured under headers; per-command header overrides take precedence.

Troubleshooting

Not found errors (exit code 3)

  • Check the resource ID is correct
  • Run the list command to see available items

API-specific

  • Errore TLS certificate — Il sito usa TLS self-signed — il CLI usa Surf automaticamente, non serve azione
  • Dati non disponibili per il comune — Gli scrutini potrebbero essere ancora in corso — usa 'stato ' per verificare
  • Regionali non accessibili — Il server della Regione Siciliana non espone i dati regionali via URL diretti

HTTP Transport

This CLI uses standard HTTP transport with HTTP/2 disabled for browser-facing endpoints. It does not require a resident browser process for normal API calls.


Sources & Inspiration

This CLI was built by studying these projects and resources:

Generated by CLI Printing Press