#!/usr/bin/env bash
# setup_workstation.sh - Cấu hình MCP và Skill cho PO Workstation trong 1 bước duy nhất.
set -euo pipefail

echo "============================================="
echo "  DarkOffice PO Workstation Setup Tool"
echo "============================================="

if [ $# -ne 1 ]; then
    echo "Lỗi: Thiếu tham số member_id."
    echo "Cách dùng: ./setup_workstation.sh <quynh|dien|trong>"
    exit 1
fi

MEMBER_ID=$1
# Ưu tiên key truyền vào (tham số 2 hoặc biến môi trường DARKOFFICE_KEY) để KHÔNG phụ thuộc key hardcode.
KEY_OVERRIDE="${2:-${DARKOFFICE_KEY:-}}"

# ⚠️ SECURITY TODO (Phase 2): map key dưới đây đang hardcode trong script phục vụ CÔNG KHAI —
# bất kỳ ai tải cũng lấy được (kể cả dk-admin-master). Cần thay bằng: PO đăng nhập web →
# tải bộ cài cá nhân hoá chỉ chứa key của CHÍNH họ (qua endpoint có xác thực). Tạm giữ map để
# không gãy onboarding; luôn ưu tiên KEY_OVERRIDE nếu có.
case "$MEMBER_ID" in
    quynh)
        KEY="dk-quynh-9a362fde847fd1bba8cfb76610e06854"
        ;;
    dien)
        KEY="dk-admin-master"
        ;;
    trong)
        KEY="dk-trong-fa9fe27d9b7cd93d671f5b596799c9c6"
        ;;
    *)
        echo "Lỗi: Không tìm thấy member_id '$MEMBER_ID'."
        echo "Danh sách member hợp lệ: quynh, dien, trong"
        exit 1
        ;;
esac
KEY="${KEY_OVERRIDE:-$KEY}"

# 1. Tạo file cấu hình .mcp.json tại root dự án
cat << EOF > .mcp.json
{
  "mcpServers": {
    "darkoffice": {
      "type": "http",
      "url": "https://congnghe.haivan.one/mcp",
      "headers": {
        "Authorization": "Bearer $KEY"
      }
    }
  }
}
EOF
echo "✓ Đã tự động sinh cấu hình .mcp.json cho thành viên: $MEMBER_ID"

# 2. Tạo thư mục chứa skill và copy skill PO Copilot (hỗ trợ cả Claude Code và Antigravity IDE)
# Cấu hình Workspace Customizations (.agents) cho Antigravity IDE / Claude Code mới
mkdir -p .agents/skills/cn-po-sync
if [ -f pmo-agent/po-workstation/skills/cn-po-sync.md ]; then
    cp pmo-agent/po-workstation/skills/cn-po-sync.md .agents/skills/cn-po-sync/SKILL.md
fi

# Cấu hình cho Claude Code cũ (.claude)
mkdir -p .claude/skills/cn-po-sync
if [ -f pmo-agent/po-workstation/skills/cn-po-sync.md ]; then
    cp pmo-agent/po-workstation/skills/cn-po-sync.md .claude/skills/cn-po-sync/SKILL.md
fi

echo "✓ Đã copy các kỹ năng xử lý tài liệu và đồng bộ công việc PO về máy local (.agents/skills/)"
echo "---------------------------------------------"
echo "✓ CÀI ĐẶT THÀNH CÔNG CHO PO: $MEMBER_ID"
echo "Bây giờ bạn chỉ cần mở 'claude' hoặc Cursor trong thư mục này,"
echo "AI Agent sẽ tự động nạp MCP Server và hiểu các lệnh /start, /end!"
echo "============================================="
