chore: Setup-Scripts auf neue Brain-Architektur, OpenClaw-Tutorial raus

aria-setup.sh
  Von 142 Zeilen auf 50 zurechtgestutzt. Alle OpenClaw-Schritte raus
  (openclaw.json, exec-approvals, Permissions fuer .openclaw, doctor).
  Es bleibt nur der SSH-Key-Setup fuer aria-wohnung — Brain + Proxy
  teilen sich denselben Key via Bind-Mount aria-data/ssh/.

init.sh
  Legt jetzt aria-data/brain/data + aria-data/brain/qdrant an damit die
  Bind-Mounts beim ersten docker compose up nicht ins Leere zeigen.

OpenClaw Tutorial _ MI.pdf
  Geloescht — OpenClaw ist abgerissen, das Tutorial gehoert nicht
  mehr ins Repo.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-11 22:25:32 +02:00
parent 96a1f90ac3
commit 5b0b5eeac6
3 changed files with 34 additions and 118 deletions
Binary file not shown.
+29 -118
View File
@@ -1,104 +1,23 @@
#!/bin/bash
# ════════════════════════════════════════════════
# ARIA — Ersteinrichtung nach docker compose up
# Einmalig ausfuehren, danach persistiert alles.
#
# OpenClaw (aria-core) ist abgerissen — das Setup macht jetzt
# nur noch den SSH-Key fuer den Zugriff auf die VM (aria-wohnung).
# Brain + Proxy teilen sich denselben Key, beide haben aria-data/ssh
# als Volume gemountet.
# ════════════════════════════════════════════════
set -e
echo "=== ARIA Setup ==="
echo ""
# Warten bis aria-core laeuft
echo "[1/7] Warte auf aria-core..."
until docker inspect -f '{{.State.Running}}' aria-core 2>/dev/null | grep -q true; do
sleep 2
echo " ... warte..."
done
echo " aria-core laeuft."
# Permissions fixen — Docker-Volumes gehoeren root, OpenClaw laeuft als node
echo ""
echo "[2/7] Fixe Permissions auf /home/node/.openclaw und /home/node/.claude..."
docker exec -u root aria-core chown -R node:node /home/node/.openclaw
docker exec -u root aria-core chown -R node:node /home/node/.claude 2>/dev/null || true
docker exec -u root aria-core chmod 700 /home/node/.openclaw
echo " Permissions OK."
# OpenClaw Config schreiben — Custom Provider fuer claude-max-api-proxy
echo ""
echo "[3/7] Schreibe openclaw.json (Proxy-Provider + Model + Tools)..."
docker exec aria-core sh -c 'cat > /home/node/.openclaw/openclaw.json << '"'"'INNEREOF'"'"'
{
"meta": {
"lastTouchedVersion": "2026.3.8"
},
"gateway": {
"mode": "local"
},
"agents": {
"defaults": {
"model": {
"primary": "proxy/claude-sonnet-4"
},
"compaction": {
"mode": "safeguard"
},
"timeoutSeconds": 900,
"maxConcurrent": 4,
"subagents": {
"maxConcurrent": 8
}
}
},
"models": {
"providers": {
"proxy": {
"api": "openai-completions",
"baseUrl": "http://proxy:3456/v1",
"apiKey": "not-needed",
"models": [
{ "id": "claude-sonnet-4", "name": "claude-sonnet-4" },
{ "id": "claude-opus-4", "name": "claude-opus-4" }
]
}
}
},
"tools": {
"profile": "full",
"web": {
"fetch": {
"enabled": true
}
},
"exec": {
"host": "gateway"
}
},
"messages": {
"ackReactionScope": "all"
},
"commands": {
"native": "auto",
"nativeSkills": "auto",
"restart": true,
"ownerDisplay": "raw"
}
}
INNEREOF'
echo " Config geschrieben."
# Exec-Approvals Wildcard — erlaubt Tool-Ausfuehrung im headless-Modus
echo ""
echo "[4/7] Setze exec-approvals Wildcard..."
docker exec aria-core openclaw approvals allowlist add --agent "*" "*" 2>/dev/null || true
echo " Approvals gesetzt."
# SSH-Key generieren fuer VM-Zugriff
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
SSH_DIR="$SCRIPT_DIR/aria-data/ssh"
echo ""
echo "[5/7] SSH-Key fuer VM-Zugriff..."
echo "=== ARIA Setup ==="
mkdir -p "$SSH_DIR"
if [ ! -f "$SSH_DIR/id_ed25519" ]; then
echo "Generiere SSH-Key fuer aria-wohnung..."
ssh-keygen -t ed25519 -f "$SSH_DIR/id_ed25519" -N "" -C "aria@aria-wohnung"
cat > "$SSH_DIR/config" << 'SSHEOF'
Host aria-wohnung
@@ -108,34 +27,26 @@ Host aria-wohnung
StrictHostKeyChecking accept-new
SSHEOF
chmod 600 "$SSH_DIR/id_ed25519"
chmod 644 "$SSH_DIR/id_ed25519.pub"
chmod 644 "$SSH_DIR/config"
echo " Key generiert."
# Public Key direkt in root's authorized_keys eintragen (Script laeuft als root auf der VM)
mkdir -p /root/.ssh
chmod 700 /root/.ssh
cat "$SSH_DIR/id_ed25519.pub" >> /root/.ssh/authorized_keys
chmod 600 /root/.ssh/authorized_keys
echo " Public Key in /root/.ssh/authorized_keys eingetragen."
chmod 644 "$SSH_DIR/id_ed25519.pub" "$SSH_DIR/config"
# Public Key direkt in /root/.ssh/authorized_keys eintragen
# (Script laeuft als root auf der VM aria-wohnung)
if [ -w /root/.ssh ] || [ -w /root ]; then
mkdir -p /root/.ssh
chmod 700 /root/.ssh
cat "$SSH_DIR/id_ed25519.pub" >> /root/.ssh/authorized_keys
chmod 600 /root/.ssh/authorized_keys
echo " Public Key in /root/.ssh/authorized_keys eingetragen."
else
echo " Hinweis: konnte /root/.ssh/authorized_keys nicht schreiben."
echo " Pubkey manuell eintragen:"
cat "$SSH_DIR/id_ed25519.pub"
fi
else
echo " Key existiert bereits."
echo "SSH-Key existiert bereits — uebersprungen."
fi
# Permissions im Container fixen
echo ""
echo "[6/7] Fixe SSH-Permissions..."
docker exec -u root aria-core chown -R node:node /home/node/.ssh 2>/dev/null || true
# Neustart damit Gateway die Config laedt
echo ""
echo "[7/7] Starte aria-core neu..."
docker restart aria-core
echo ""
echo "=== Setup fertig ==="
echo ""
echo "Teste mit: docker logs aria-core --tail 20"
echo "Erwartete Zeile: 'agent model: proxy/claude-sonnet-4'"
echo ""
echo "SSH-Test: docker exec aria-core ssh aria-wohnung hostname"
echo "Tool-Test: Neue Session anlegen, dann 'Wie wird das Wetter in Bremen?' fragen"
echo "Naechster Schritt: docker compose up -d"
echo "Test: docker exec aria-brain ssh aria-wohnung hostname"
+5
View File
@@ -24,3 +24,8 @@ if [ ! -f .env ]; then
else
echo ".env existiert bereits — uebersprungen."
fi
# ── Brain-Verzeichnisse anlegen (Bind-Mounts fuer aria-brain + aria-qdrant)
# Inhalt ist gitignored — wird ueber Diagnostic-Export/Import gesichert.
mkdir -p aria-data/brain/data aria-data/brain/qdrant
echo "✓ aria-data/brain/{data,qdrant} bereit"