Visual CLI for portable configuration bundles
Project description
Peridot
Versión actual: 0.4.4 (ver CHANGELOG.md).
Peridot es un CLI para crear bundles portables de configuración (.peridot) con una UX cuidada.
Además, incluye un servidor MCP (Model Context Protocol) para que una IA pueda usar Peridot mediante tools (sin que el usuario aprenda el CLI): peridot-mcp.
- Docs MCP:
mcp/README_MCP.md
Peridot CLI:
pack: empaqueta dotfiles/carpetas de config en un bundle cifradoinspect/manifest: inspecciona qué hay dentro antes de aplicarapply: restaura en otra máquina (con--dry-runy modo transaccional)
Quickstart (3 comandos)
peridot init
peridot pack "Mi bundle" --output mi-bundle.peridot ~/.config
peridot apply mi-bundle.peridot --dry-run
Notas:
- Recomendación: prueba siempre primero con
--dry-run. - En automatización (sin TTY), si no pasas nombre, Peridot genera uno por defecto.
Qué es un .peridot
Un .peridot es un ZIP con:
my-setup.peridot
├── manifest.json
└── payloads/
├── 0001-....bin
├── 0002-....bin
└── ...
manifest.jsonqueda legible para poder revisar el contenido.- Cada fichero se comprime (si compensa) y se cifra (AES‑GCM).
Instalación
Recomendado (Windows/macOS/Linux): pipx
pipx instala CLIs Python en un entorno aislado y deja el comando en tu PATH.
- Instala Python 3.11+.
- Instala
pipx:
- Windows (PowerShell):
python -m pip install --user pipx
python -m pipx ensurepath
Cierra y vuelve a abrir la terminal.
- macOS (Homebrew):
brew install pipx
pipx ensurepath
- Linux (según distro):
python3 -m pip install --user pipx
python3 -m pipx ensurepath
- Instala Peridot desde PyPI:
pipx install peridot-cli
peridot --version
Nota: en PyPI el paquete se llama
peridot-cli("peridot" ya está ocupado).
macOS: Homebrew (opcional)
Si prefieres brew, una alternativa es instalar pipx con brew y seguir el método anterior.
Desde el repo (modo dev)
./install.sh
# opcional: instala dependencias de desarrollo (pytest, etc.)
PERIDOT_INSTALL_DEV=1 ./install.sh
peridot --version
Uso básico
Generar o comprobar la clave:
peridot keygen
Modo visual:
peridot ui
Benchmark de rendimiento de pack:
peridot bench --files 200 --size-kb 4 --levels 0,1,3 --runs 1
# guardar resultados en JSON
peridot bench --files 200 --size-kb 4 --levels 0,1,3 --runs 3 --out bench.json
Aplicar de forma segura:
peridot apply bundle.peridot --dry-run
peridot apply bundle.peridot
Por defecto, apply usa modo transaccional (rollback best‑effort) y verificación post‑escritura.
Desarrollo
python3 -m venv .venv
. .venv/bin/activate
pip install -e '.[dev]'
pytest -q
Seguridad
- Cifrado: AES‑GCM por fichero.
applysoporta rollback best‑effort y verificación de hash tras escribir.
Licencia
MIT. Ver LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file peridot_cli-0.4.4.tar.gz.
File metadata
- Download URL: peridot_cli-0.4.4.tar.gz
- Upload date:
- Size: 52.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
64582c271514bcdbb73adc8642681d1b244324216f5312698e45a12a31f6e390
|
|
| MD5 |
e27ccfd66657c21b59050e78973a47a0
|
|
| BLAKE2b-256 |
ec347c1bf530a2cdec4592a0f5adc57c9b9a86c964beebdea560191823731946
|
File details
Details for the file peridot_cli-0.4.4-py3-none-any.whl.
File metadata
- Download URL: peridot_cli-0.4.4-py3-none-any.whl
- Upload date:
- Size: 44.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
268b50a9f269e9e61c82223515fbe711d9098359d82c78a4dd299a71b4f08fad
|
|
| MD5 |
74c55f92635abc1a6744ed78e9c5a021
|
|
| BLAKE2b-256 |
7d0a7fec2a7fa039191754acfaa7ae9f7b56b38481248340e4302c3dc4d4f4f3
|