#!/bin/bash
# SkillHub Installer - htmx-rust
# Platform: macOS
# Archive source: GitHub (direct)

set -e

echo "=================================================="
echo "             Mentalok Skill Installer             "
echo "=================================================="
echo "+------------------------------------------------+"
echo "|                    MENTALOK                    |"
echo "|             Agent Skill Installer              |"
echo "+------------------------------------------------+"
echo ""
echo "Skill: htmx-rust"
echo "Target: Claude Code"
echo "Platform: macOS"
echo "--------------------------------------------------"

TMP_DIR="$(mktemp -d)"
ZIP_PATH="$TMP_DIR/skill.zip"
EXTRACT_DIR="$TMP_DIR/extracted"
mkdir -p "$EXTRACT_DIR"

curl -fsSL "https://github.com/lhohan/simple-time-tracker/archive/main.zip" -o "$ZIP_PATH"
if command -v ditto >/dev/null 2>&1; then
  ditto -x -k "$ZIP_PATH" "$EXTRACT_DIR"
else
  unzip -q "$ZIP_PATH" -d "$EXTRACT_DIR"
fi

REPO_ROOT="$(find "$EXTRACT_DIR" -mindepth 1 -maxdepth 1 -type d | head -n 1)"
if [ -z "$REPO_ROOT" ]; then
  REPO_ROOT="$EXTRACT_DIR"
fi

if [ -n ".claude/skills/htmx-rust" ] && [ -d "$REPO_ROOT/.claude/skills/htmx-rust" ]; then
  SOURCE_DIR="$REPO_ROOT/.claude/skills/htmx-rust"
elif [ -f "$REPO_ROOT/SKILL.md" ]; then
  SOURCE_DIR="$REPO_ROOT"
elif [ -f "$EXTRACT_DIR/SKILL.md" ]; then
  SOURCE_DIR="$EXTRACT_DIR"
else
  SOURCE_DIR="$REPO_ROOT"
fi

if [ -z "$SOURCE_DIR" ] || [ ! -d "$SOURCE_DIR" ]; then
  echo "Failed to locate skill project folder in archive."
  rm -rf "$TMP_DIR"
  exit 1
fi

rm -rf "$HOME/.claude/skills/htmx-rust"
mkdir -p "$HOME/.claude/skills/htmx-rust"
cp -R "$SOURCE_DIR"/. "$HOME/.claude/skills/htmx-rust"/
rm -rf "$TMP_DIR"

echo "Installed to Claude Code: $HOME/.claude/skills/htmx-rust"
echo ""
echo "Done! Restart your agent to activate the skill."
