80 lines
2.8 KiB
Bash
Executable File
80 lines
2.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 获取插件根目录
|
|
if [ -n "$CLAUDE_PLUGIN_ROOT" ]; then
|
|
PLUGIN_ROOT="$CLAUDE_PLUGIN_ROOT"
|
|
else
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
PLUGIN_ROOT="$( cd "$SCRIPT_DIR/.." && pwd )"
|
|
fi
|
|
|
|
MCP_JSON="$PLUGIN_ROOT/.mcp.json"
|
|
MCP_JSON_TEMPLATE="$PLUGIN_ROOT/.mcp.json.template"
|
|
|
|
# 检查 .mcp.json 是否存在,如果不存在则从模板复制
|
|
if [ ! -f "$MCP_JSON" ]; then
|
|
if [ -f "$MCP_JSON_TEMPLATE" ]; then
|
|
echo "📝 首次运行,正在从模板创建 .mcp.json 文件..."
|
|
cp "$MCP_JSON_TEMPLATE" "$MCP_JSON"
|
|
else
|
|
echo "❌ 错误:找不到 .mcp.json 和 .mcp.json.template 文件"
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
# 检查 .mcp.json 中是否还包含未替换的 ${FIGMA_API_KEY} 占位符
|
|
if grep -q '\${FIGMA_API_KEY}' "$MCP_JSON"; then
|
|
# 包含占位符,说明还没配置
|
|
echo ""
|
|
echo "╔════════════════════════════════════════════════════════════╗"
|
|
echo "║ 🎨 切图仔 (Qietuzai) Plugin - 配置向导 ║"
|
|
echo "╚════════════════════════════════════════════════════════════╝"
|
|
echo ""
|
|
echo "⚠️ 检测到您还未配置 Figma API Key"
|
|
echo ""
|
|
echo "🌐 正在启动图形化配置界面..."
|
|
echo ""
|
|
|
|
# 获取脚本所在目录(使用 CLAUDE_PLUGIN_ROOT 如果可用)
|
|
if [ -n "$CLAUDE_PLUGIN_ROOT" ]; then
|
|
SCRIPT_DIR="$CLAUDE_PLUGIN_ROOT/hooks"
|
|
else
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
fi
|
|
|
|
# 启动 Python HTTP 服务器(后台运行)
|
|
python3 "$SCRIPT_DIR/setup-server.py" > /dev/null 2>&1 &
|
|
SERVER_PID=$!
|
|
|
|
# 等待服务器启动
|
|
sleep 2
|
|
|
|
# 打开浏览器到配置页面
|
|
CONFIG_URL="http://localhost:3456"
|
|
|
|
echo "✨ 配置页面已在浏览器中打开: $CONFIG_URL"
|
|
echo ""
|
|
echo "📝 请在浏览器中完成以下步骤:"
|
|
echo " 1. 访问 Figma 设置页面获取 API Key"
|
|
echo " 2. 在表单中输入您的 API Key"
|
|
echo " 3. 点击保存"
|
|
echo " 4. 重启 Claude Code"
|
|
echo ""
|
|
echo "💡 如果浏览器没有自动打开,请手动访问: $CONFIG_URL"
|
|
echo ""
|
|
|
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
# macOS
|
|
open "$CONFIG_URL" 2>/dev/null
|
|
elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
|
|
# Linux
|
|
xdg-open "$CONFIG_URL" 2>/dev/null
|
|
elif [[ "$OSTYPE" == "msys" ]] || [[ "$OSTYPE" == "win32" ]]; then
|
|
# Windows
|
|
start "$CONFIG_URL" 2>/dev/null
|
|
fi
|
|
else
|
|
# API Key 已配置,静默通过
|
|
exit 0
|
|
fi
|