#!/usr/bin/env bash # Run ON the EC2 instance after the app is live. # Seeds gabriel's account using the Ed25519 key registration flow. # # Prerequisites: # - MuseHub is running (docker compose up) # - muse CLI is installed locally and can reach MUSEHUB_URL # - `muse auth keygen` has been run at least once (creates ~/.muse/identity.toml) # # Usage (from your local machine, after setting MUSEHUB_URL): # export MUSEHUB_URL=https://musehub.ai # bash deploy/seed.sh set -euo pipefail MUSEHUB_URL="${MUSEHUB_URL:-https://staging.musehub.ai}" HANDLE="${HANDLE:-gabriel}" echo "==> MuseHub seed — Ed25519 key registration" echo " Target: $MUSEHUB_URL" echo " Handle: $HANDLE" echo "" # ── Step 1: keygen ──────────────────────────────────────────────────────────── echo "==> [1/3] Checking for existing Ed25519 key..." if muse auth keygen --list 2>/dev/null | grep -q "$MUSEHUB_URL"; then echo " Key already exists for $MUSEHUB_URL — skipping keygen" else echo " Generating new Ed25519 key pair for $MUSEHUB_URL..." muse auth keygen --host "$MUSEHUB_URL" echo " Key generated." fi # ── Step 2: register ────────────────────────────────────────────────────────── echo "" echo "==> [2/3] Registering key with MuseHub..." echo " Running: muse auth register --hub $MUSEHUB_URL --handle $HANDLE" muse auth register --hub "$MUSEHUB_URL" --handle "$HANDLE" \ && echo " Registered successfully." \ || echo " Already registered (handle exists — continuing)" # ── Step 3: verify ──────────────────────────────────────────────────────────── echo "" echo "==> [3/3] Verifying authentication..." muse auth whoami --hub "$MUSEHUB_URL" echo "" echo "============================================================" echo " SEED COMPLETE" echo "============================================================" echo "" echo " Your Ed25519 key is now registered at $MUSEHUB_URL." echo " identity.toml entry was written automatically by muse auth register." echo "" echo " To connect repos and push:" echo " muse -C ~/muse remote add local $MUSEHUB_URL/gabriel/muse" echo " muse -C ~/musehub remote add local $MUSEHUB_URL/gabriel/musehub" echo " muse -C ~/muse push local dev" echo " muse -C ~/musehub push local dev" echo "============================================================"