Lory0000 commited on
Commit
bb650ec
Β·
verified Β·
1 Parent(s): bc60c2d

Upload 2 files

Browse files
Files changed (2) hide show
  1. download +12 -0
  2. start.sh +91 -0
download ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # OpenClaw config (non committare mai questi file!)
2
+ .openclaw/
3
+ *.env
4
+ .env*
5
+ !.env.example
6
+
7
+ # Node
8
+ node_modules/
9
+ npm-debug.log*
10
+
11
+ # HF
12
+ .cache/
start.sh ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ # ============================================================
3
+ # Script di avvio OpenClaw per Hugging Face Spaces
4
+ # ============================================================
5
+ set -euo pipefail
6
+
7
+ CONFIG_DIR="${HOME}/.openclaw"
8
+ CONFIG_FILE="${CONFIG_DIR}/openclaw.json"
9
+ LOG_FILE="${CONFIG_DIR}/startup.log"
10
+
11
+ echo "🦞 Avvio OpenClaw su Hugging Face Spaces..."
12
+ echo " Porta: ${OPENCLAW_GATEWAY_PORT:-7860}"
13
+ echo " Modello: ${OPENCLAW_MODEL:-groq/llama-3.3-70b-versatile}"
14
+ echo ""
15
+
16
+ # Crea directory se non esiste
17
+ mkdir -p "${CONFIG_DIR}/workspace"
18
+
19
+ # ─── Determina quale provider/modello usare ─────────────────
20
+ MODEL="${OPENCLAW_MODEL:-}"
21
+
22
+ if [ -z "$MODEL" ]; then
23
+ if [ -n "${GROQ_API_KEY:-}" ]; then
24
+ MODEL="groq/llama-3.3-70b-versatile"
25
+ elif [ -n "${GOOGLE_API_KEY:-}" ]; then
26
+ MODEL="google/gemini-2.0-flash-lite"
27
+ elif [ -n "${ANTHROPIC_API_KEY:-}" ]; then
28
+ MODEL="anthropic/claude-haiku-4-5-20251001"
29
+ elif [ -n "${OPENAI_API_KEY:-}" ]; then
30
+ MODEL="openai/gpt-4o-mini"
31
+ else
32
+ echo "⚠️ ATTENZIONE: Nessuna API key trovata nei Secrets!"
33
+ echo " Aggiungi GROQ_API_KEY (gratuita) nelle impostazioni della Space."
34
+ echo " Avvio comunque OpenClaw, ma le richieste AI falliranno."
35
+ MODEL="groq/llama-3.3-70b-versatile"
36
+ fi
37
+ fi
38
+
39
+ echo "βœ… Modello selezionato: $MODEL"
40
+
41
+ # ─── Scrivi configurazione openclaw.json ────────────────────
42
+ cat > "${CONFIG_FILE}" << JSONEOF
43
+ {
44
+ "gateway": {
45
+ "port": ${OPENCLAW_GATEWAY_PORT:-7860},
46
+ "bind": "${OPENCLAW_GATEWAY_BIND:-0.0.0.0}",
47
+ "token": "${OPENCLAW_TOKEN:-openclaw-hf-token}"
48
+ },
49
+ "agent": {
50
+ "model": "${MODEL}"
51
+ },
52
+ "agents": {
53
+ "defaults": {
54
+ "sandbox": {
55
+ "mode": "off"
56
+ }
57
+ }
58
+ }
59
+ }
60
+ JSONEOF
61
+
62
+ echo "βœ… Configurazione scritta in ${CONFIG_FILE}"
63
+
64
+ # ─── Esporta variabili per i provider AI ────────────────────
65
+ # OpenClaw legge le API key dall'ambiente
66
+ export GROQ_API_KEY="${GROQ_API_KEY:-}"
67
+ export GOOGLE_API_KEY="${GOOGLE_API_KEY:-}"
68
+ export ANTHROPIC_API_KEY="${ANTHROPIC_API_KEY:-}"
69
+ export OPENAI_API_KEY="${OPENAI_API_KEY:-}"
70
+ export OPENCLAW_GATEWAY_PORT="${OPENCLAW_GATEWAY_PORT:-7860}"
71
+ export OPENCLAW_GATEWAY_BIND="${OPENCLAW_GATEWAY_BIND:-0.0.0.0}"
72
+ export OPENCLAW_TOKEN="${OPENCLAW_TOKEN:-openclaw-hf-token}"
73
+
74
+ # ─── Messaggio di benvenuto ──────────────────────────────────
75
+ echo ""
76
+ echo "═══════════════════════════════════════════════════════"
77
+ echo " 🦞 OpenClaw si sta avviando..."
78
+ echo " πŸ“‘ Gateway: http://0.0.0.0:${OPENCLAW_GATEWAY_PORT:-7860}"
79
+ echo " πŸ”‘ Token WebChat: ${OPENCLAW_TOKEN:-openclaw-hf-token}"
80
+ echo " πŸ€– Modello AI: ${MODEL}"
81
+ echo "═══════════════════════════════════════════════════════"
82
+ echo ""
83
+ echo " Per usare la WebChat:"
84
+ echo " 1. Apri l'interfaccia della Space"
85
+ echo " 2. Inserisci il token quando richiesto"
86
+ echo " 3. Inizia a chattare!"
87
+ echo ""
88
+
89
+ # ─── Avvia OpenClaw Gateway ─────────────────────────────────
90
+ # Il gateway si avvia in foreground (necessario per Docker/HF)
91
+ exec openclaw gateway