multisig-hsm/reference/start_rig.sh
mineracks 7a17ffd12e Initial public release — multisig HSM reference + recipe book
Open-source 2-of-3 policy-enforced threshold HSM: auto-signs cold→hot treasury
refills under on-device Coldcard policy, no human in the loop. Includes the full
operator manual + quick-start, the reference coordinator/signing code, and a
signer-host bootstrap. No keys, seeds, or secrets — placeholders only.

Live signet demo: https://multisighsm.mineracks.com

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-26 13:56:51 +10:00

24 lines
966 B
Bash
Executable File

#!/usr/bin/env bash
# Start 3 headless Coldcard Mk5 sims, each with a distinct seed + isolated state + stable socket.
set -uo pipefail
export PATH="$HOME/gccshim:$PATH"
RUN=~/cksim
cd ~/coldcard-firmware/unix
pkill -f "simulator.py --mk5" 2>/dev/null || true; sleep 2
rm -f /tmp/ckcc-simulator-*.sock /tmp/cksim-*.sock
: > "$RUN/sims.manifest"
for n in 1 2 3; do
SEED=$(cat "$RUN/seeds/$n.txt")
setsid ~/ccsim-venv/bin/python simulator.py --mk5 --headless --segregate --seed "$SEED" \
>"$RUN/sim-$n.log" 2>&1 </dev/null &
for i in $(seq 1 25); do
cnt=$(ls /tmp/ckcc-simulator-*.sock 2>/dev/null | wc -l)
[ "$cnt" -ge "$n" ] && break; sleep 1
done
newsock=$(ls -t /tmp/ckcc-simulator-*.sock 2>/dev/null | head -1)
ln -sf "$newsock" "/tmp/cksim-$n.sock"
echo "$n $newsock /tmp/cksim-$n.sock" >> "$RUN/sims.manifest"
done
echo "=== manifest ==="; cat "$RUN/sims.manifest"
echo "=== stable sockets ==="; ls -l /tmp/cksim-*.sock 2>/dev/null