Spaces:
Configuration error
Configuration error
| # Setup Moltbot Auth Management System | |
| # Run this once to set up: | |
| # 1. Long-lived Claude Code token | |
| # 2. Auth monitoring with notifications | |
| # 3. Instructions for Termux widgets | |
| set -euo pipefail | |
| SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" | |
| echo "=== Moltbot Auth System Setup ===" | |
| echo "" | |
| # Step 1: Check current auth status | |
| echo "Step 1: Checking current auth status..." | |
| "$SCRIPT_DIR/claude-auth-status.sh" full || true | |
| echo "" | |
| # Step 2: Set up long-lived token | |
| echo "Step 2: Long-lived token setup" | |
| echo "" | |
| echo "Option A: Use 'claude setup-token' (recommended)" | |
| echo " - Creates a long-lived API token" | |
| echo " - No daily re-auth needed" | |
| echo " - Run: claude setup-token" | |
| echo "" | |
| echo "Would you like to set up a long-lived token now? [y/N]" | |
| read -r SETUP_TOKEN | |
| if [[ "$SETUP_TOKEN" =~ ^[Yy] ]]; then | |
| echo "" | |
| echo "Opening https://console.anthropic.com/settings/api-keys" | |
| echo "Create a new key or copy existing one, then paste below." | |
| echo "" | |
| claude setup-token | |
| fi | |
| echo "" | |
| # Step 3: Set up auth monitoring | |
| echo "Step 3: Auth monitoring setup" | |
| echo "" | |
| echo "The auth monitor checks expiry every 30 minutes and notifies you." | |
| echo "" | |
| echo "Configure notification channels:" | |
| echo "" | |
| # Check for ntfy | |
| echo " ntfy.sh: Free push notifications to your phone" | |
| echo " 1. Install ntfy app on your phone" | |
| echo " 2. Subscribe to a topic (e.g., 'moltbot-alerts')" | |
| echo "" | |
| echo "Enter ntfy.sh topic (or leave blank to skip):" | |
| read -r NTFY_TOPIC | |
| # Phone notification | |
| echo "" | |
| echo " Moltbot message: Send warning via Moltbot itself" | |
| echo "Enter your phone number for alerts (or leave blank to skip):" | |
| read -r PHONE_NUMBER | |
| # Update service file | |
| SERVICE_FILE="$SCRIPT_DIR/systemd/moltbot-auth-monitor.service" | |
| if [ -n "$NTFY_TOPIC" ]; then | |
| sed -i "s|# Environment=NOTIFY_NTFY=.*|Environment=NOTIFY_NTFY=$NTFY_TOPIC|" "$SERVICE_FILE" | |
| fi | |
| if [ -n "$PHONE_NUMBER" ]; then | |
| sed -i "s|# Environment=NOTIFY_PHONE=.*|Environment=NOTIFY_PHONE=$PHONE_NUMBER|" "$SERVICE_FILE" | |
| fi | |
| # Install systemd units | |
| echo "" | |
| echo "Installing systemd timer..." | |
| mkdir -p ~/.config/systemd/user | |
| cp "$SCRIPT_DIR/systemd/moltbot-auth-monitor.service" ~/.config/systemd/user/ | |
| cp "$SCRIPT_DIR/systemd/moltbot-auth-monitor.timer" ~/.config/systemd/user/ | |
| systemctl --user daemon-reload | |
| systemctl --user enable --now moltbot-auth-monitor.timer | |
| echo "Auth monitor installed and running." | |
| echo "" | |
| # Step 4: Termux widget setup | |
| echo "Step 4: Termux widget setup (for phone)" | |
| echo "" | |
| echo "To set up quick auth from your phone:" | |
| echo "" | |
| echo "1. Install Termux and Termux:Widget from F-Droid" | |
| echo "2. Create ~/.shortcuts/ directory in Termux:" | |
| echo " mkdir -p ~/.shortcuts" | |
| echo "" | |
| echo "3. Copy the widget scripts:" | |
| echo " scp $SCRIPT_DIR/termux-quick-auth.sh phone:~/.shortcuts/ClawdAuth" | |
| echo " scp $SCRIPT_DIR/termux-auth-widget.sh phone:~/.shortcuts/ClawdAuth-Full" | |
| echo "" | |
| echo "4. Make them executable on phone:" | |
| echo " ssh phone 'chmod +x ~/.shortcuts/Clawd*'" | |
| echo "" | |
| echo "5. Add Termux:Widget to your home screen" | |
| echo "6. Tap the widget to see your auth scripts" | |
| echo "" | |
| echo "The quick widget (ClawdAuth) shows status and opens auth URL if needed." | |
| echo "The full widget (ClawdAuth-Full) provides guided re-auth flow." | |
| echo "" | |
| # Summary | |
| echo "=== Setup Complete ===" | |
| echo "" | |
| echo "What's configured:" | |
| echo " - Auth status: $SCRIPT_DIR/claude-auth-status.sh" | |
| echo " - Mobile re-auth: $SCRIPT_DIR/mobile-reauth.sh" | |
| echo " - Auth monitor: systemctl --user status moltbot-auth-monitor.timer" | |
| echo "" | |
| echo "Quick commands:" | |
| echo " Check auth: $SCRIPT_DIR/claude-auth-status.sh" | |
| echo " Re-auth: $SCRIPT_DIR/mobile-reauth.sh" | |
| echo " Test monitor: $SCRIPT_DIR/auth-monitor.sh" | |
| echo "" | |