Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

sigil

Sigil es un coordinador multisig Bitcoin auto-alojado y stateless que gestiona quorums M-of-N, permite firmar con Ledger vía WebUSB y soporta firma air-gapped con SeedSigner mediante QR animados. Utiliza bibliotecas Caravan y funciona sin servidor ni bases de datos.

Ficha actualizada 23 sept 2026, 20:51 · upstream 23 sept 2026, 20:31 · release v0.2.0

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es sigil

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Sigil es una aplicación web auto-alojada diseñada para coordinar multisig Bitcoin (M-of-N) utilizando la biblioteca Caravan. Funciona como un proxy API local que orquesta transacciones P2WSH sin mantener estado ni claves privadas en su memoria. La aplicación está construida con Next.js, React y Vite, lo que permite un desarrollo rápido y una compilación eficiente para despliegues estáticos.

La interfaz de usuario permite gestionar múltiples carteras, configurar políticas de cambio (new o source), etiquetar direcciones y aplicar listas blancas de destinatarios. El sistema soporta integración con hardware wallets como Ledger (vía WebUSB) y dispositivos air-gapped como SeedSigner o Coldcard mediante importación/exportación de PSBT. La arquitectura es minimalista: no utiliza bases de datos ni servicios externos persistentes, confiando en APIs públicas de mempool.

La seguridad se basa en el modelo watch-only: las claves privadas nunca tocan la aplicación. Sin embargo, los xpubs están embebidos en el bundle compilado, por lo que cualquier persona con acceso al archivo puede derivar direcciones y ver saldos. Esto exige despliegue local o detrás de autenticación estricta si se hostea públicamente.

CASOS DE USO
  • Gestión de multisig Bitcoin M-of-N (ej. 2-of-3) con quorums configurables vía xpubs.
  • Firma de transacciones con Ledger Nano S/X mediante WebUSB sin necesidad de software adicional.
  • Firma air-gapped con SeedSigner o Coldcard usando QR animados UR2 para transferir PSBT sin archivos.
  • Monitoreo de saldos y direcciones derivadas en tiempo real mediante APIs de mempool.
PUNTOS DESTACADOS
  • Arquitectura stateless: no almacena datos persistentes ni claves privadas en disco o memoria.
  • Soporte nativo para firma air-gapped con QR animados (UR2) y recuperación de frames perdidos.
  • Integración directa con Ledger vía WebUSB sin intermediarios ni software externo.
  • Configuración flexible de políticas de cambio (new/source) y selección dinámica de tarifas.
  • Código abierto basado en Next.js/React, fácil de auditar y desplegar localmente.
PRECAUCIONES
  • Los xpubs están embebidos en el bundle compilado; no apto para hosting público sin autenticación.
  • No permite auto-actualización en despliegues estáticos (npm start vs build estático).
  • Dependencia de APIs externas (mempool/blockstream); si caen, la funcionalidad se degrada.
  • Requiere configuración manual inicial de carteras mediante archivos JSON o UI.
VISUAL

Capturas del proyecto

Imágenes reales detectadas en la documentación del repositorio.

Receive tab — derived addresses with balances, labels and derivation pathsConfig tab — wallet name, network, quorum, change-address policy and API providerAnimated QR export — UR2 crypto-psbt streaming 23 parts, with format, density and speed controlsPSBT panel — base64, destination, amount, fee and fee rate, with Copy, Save PSBT, Show QR and Scan QR actionsSigil
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU2 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Despliegue manual

Despliega localmente con npm start para desarrollo. Para producción, genera un build estático y sirve con nginx/Netlify, añadiendo reglas de proxy API hacia mempool/blockstream. Nunca hosteas una versión compilada con xpubs sin autenticación fuerte. Usa src/configs/mywallet/config.json para definir red, quorum y signers.

—Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Next.jsReactNode.js
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
No detectados
06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.