#!/bin/bash # Generic prompt runner — pass any prompt file as an argument # Usage: ./run-prompt.sh /path/to/prompt.md [max-turns] set -euo pipefail PROJECT_DIR="$(cd "$(dirname "$0")/.." && pwd)" PROMPT_FILE="${1:?Usage: $0 [max-turns]}" MAX_TURNS="${2:-15}" LOG_DIR="$PROJECT_DIR/logs" PROMPT_NAME="$(basename "$PROMPT_FILE" .md)" LOG_FILE="$LOG_DIR/${PROMPT_NAME}-$(date +%Y%m%d-%H%M%S).log" if [ ! -f "$PROMPT_FILE" ]; then echo "Error: Prompt file not found: $PROMPT_FILE" >&2 exit 1 fi mkdir -p "$LOG_DIR" cd "$PROJECT_DIR" echo "=== Running prompt: $PROMPT_NAME — $(date) ===" >> "$LOG_FILE" claude -p "$(cat "$PROMPT_FILE")" \ --dangerously-skip-permissions \ --max-turns "$MAX_TURNS" \ --output-format text \ >> "$LOG_FILE" 2>&1 echo "=== Completed: $(date) — exit: $? ===" >> "$LOG_FILE"