#!/bin/bash
#
# codevibe - CodeVibe shared authentication CLI
#
# Delegates to @quantiya/codevibe-core's CLI for shared auth commands.
# Authentication is shared across all CodeVibe plugins (Claude, Codex, Gemini).
#
# Usage:
#   codevibe login              # Sign in via browser
#   codevibe logout             # Sign out
#   codevibe status             # Show auth status
#   codevibe reset-device       # Reset device identity (destructive)
#
# Environment:
#   ENVIRONMENT                 # Set to 'production' (default) or 'development'
#

export ENVIRONMENT="${ENVIRONMENT:-production}"

SOURCE="${BASH_SOURCE[0]}"
while [ -L "$SOURCE" ]; do
  DIR="$(cd "$(dirname "$SOURCE")" && pwd)"
  SOURCE="$(readlink "$SOURCE")"
  [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE"
done
SCRIPT_DIR="$(cd "$(dirname "$SOURCE")" && pwd)"
PACKAGE_DIR="$(dirname "$SCRIPT_DIR")"

CORE_CLI="$PACKAGE_DIR/node_modules/@quantiya/codevibe-core/bin/codevibe.js"

if [ -f "$CORE_CLI" ]; then
  exec node "$CORE_CLI" "$@"
else
  echo "Error: @quantiya/codevibe-core not found. Try reinstalling: npm install -g @quantiya/codevibe" >&2
  exit 1
fi
