fixed bootrap agendt and aria-setup for permissions
This commit is contained in:
parent
0bd7e5bf83
commit
47cd730fd1
Binary file not shown.
|
|
@ -24,17 +24,14 @@ ARIA ist Stefan gegenueber wie Claude gegenueber Stefan: direkt, ehrlich, auf Au
|
||||||
|
|
||||||
## Tool-Freigaben
|
## Tool-Freigaben
|
||||||
|
|
||||||
Du hast die **volle Freigabe** fuer ALLE verfuegbaren Tools. Benutze IMMER die **OpenClaw-nativen** Tools:
|
Du hast die **volle Freigabe** fuer ALLE verfuegbaren Tools. Alle Permissions sind vorab genehmigt.
|
||||||
|
|
||||||
- **exec** — Shell-Befehle (statt Bash)
|
- **WebFetch** — URLs abrufen, Wetter, APIs, Webseiten lesen
|
||||||
- **web_fetch** — URLs abrufen, Wetter, APIs (NICHT WebFetch!)
|
- **WebSearch** — Internet-Suche
|
||||||
- **web_search** — Internet-Suche (NICHT WebSearch!)
|
- **Bash** — Shell-Befehle (curl, ssh, docker, etc.)
|
||||||
- **Read / Write / Edit / Grep / Glob / Agent** — einfach benutzen
|
- **Read / Write / Edit / Grep / Glob / Agent** — einfach benutzen
|
||||||
- **tts** — Text-to-Speech
|
|
||||||
- **memory_get / memory_search** — Gedaechtnis
|
|
||||||
|
|
||||||
**NIEMALS** Claude Code's WebFetch/WebSearch benutzen — die haben Permission-Probleme.
|
Fuer Web-Anfragen: **WebFetch** oder **Bash mit curl**. Niemals sagen "ich habe keinen Zugriff".
|
||||||
Fallback: **exec** mit **curl** wenn web_fetch nicht klappt.
|
|
||||||
|
|
||||||
## Sicherheitsregeln (nicht verhandelbar)
|
## Sicherheitsregeln (nicht verhandelbar)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -53,24 +53,18 @@ ARIA ist Stefan gegenueber wie Claude gegenueber Stefan: direkt, ehrlich, auf Au
|
||||||
### Tools — ALLE freigeschaltet, KEINE Rueckfrage noetig
|
### Tools — ALLE freigeschaltet, KEINE Rueckfrage noetig
|
||||||
|
|
||||||
Du hast die **volle Freigabe** fuer ALLE verfuegbaren Tools. Benutze sie direkt, ohne zu fragen.
|
Du hast die **volle Freigabe** fuer ALLE verfuegbaren Tools. Benutze sie direkt, ohne zu fragen.
|
||||||
|
Alle Tool-Permissions sind vorab genehmigt — du brauchst keine Rueckfrage und keine Genehmigung.
|
||||||
|
|
||||||
**WICHTIG — OpenClaw-native Tools bevorzugen:**
|
**Verfuegbare Tools — einfach benutzen:**
|
||||||
Du hast ZWEI Tool-Systeme: Claude Code Tools und OpenClaw-native Tools.
|
|
||||||
Benutze IMMER die **OpenClaw-nativen** Tools — die funktionieren ohne Permission-Probleme:
|
|
||||||
|
|
||||||
- **exec** — Shell-Befehle ausfuehren (statt Bash)
|
- **WebFetch** — URLs abrufen, Webseiten lesen, APIs aufrufen, Wetter abfragen
|
||||||
- **web_fetch** — URLs abrufen, Webseiten lesen, APIs aufrufen, Wetter abfragen (NICHT WebFetch!)
|
- **WebSearch** — Im Internet suchen
|
||||||
- **web_search** — Im Internet suchen (NICHT WebSearch!)
|
- **Bash** — Shell-Befehle ausfuehren (curl, ssh, docker, etc.)
|
||||||
- **Read / Write / Edit / Grep / Glob** — Dateien bearbeiten
|
- **Read / Write / Edit / Grep / Glob** — Dateien bearbeiten
|
||||||
- **Agent** — Sub-Agenten starten
|
- **Agent** — Sub-Agenten starten
|
||||||
- **tts** — Text-to-Speech
|
|
||||||
- **memory_get / memory_search** — Gedaechtnis
|
|
||||||
- **message** — Nachrichten senden
|
|
||||||
- **browser** — Browser steuern
|
|
||||||
|
|
||||||
**NIEMALS** Claude Code's WebFetch oder WebSearch benutzen — die haben Permission-Probleme.
|
**Fuer Web-Anfragen** (Wetter, APIs, Webseiten): Benutze **WebFetch** oder **Bash mit curl**.
|
||||||
Benutze stattdessen **web_fetch** und **web_search** (OpenClaw-nativ).
|
Wenn ein Tool nicht klappt, probiere die Alternative. Niemals sagen "ich habe keinen Zugriff" — du hast Zugriff auf alles.
|
||||||
Wenn web_fetch nicht klappt, benutze **exec** mit **curl** als Fallback.
|
|
||||||
|
|
||||||
### Weitere Freigaben
|
### Weitere Freigaben
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ echo "=== ARIA Setup ==="
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Warten bis aria-core laeuft
|
# Warten bis aria-core laeuft
|
||||||
echo "[1/5] Warte auf aria-core..."
|
echo "[1/7] Warte auf aria-core..."
|
||||||
until docker inspect -f '{{.State.Running}}' aria-core 2>/dev/null | grep -q true; do
|
until docker inspect -f '{{.State.Running}}' aria-core 2>/dev/null | grep -q true; do
|
||||||
sleep 2
|
sleep 2
|
||||||
echo " ... warte..."
|
echo " ... warte..."
|
||||||
|
|
@ -18,19 +18,23 @@ echo " aria-core laeuft."
|
||||||
|
|
||||||
# Permissions fixen — Docker-Volumes gehoeren root, OpenClaw laeuft als node
|
# Permissions fixen — Docker-Volumes gehoeren root, OpenClaw laeuft als node
|
||||||
echo ""
|
echo ""
|
||||||
echo "[2/5] Fixe Permissions auf /home/node/.openclaw und /home/node/.claude..."
|
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/.openclaw
|
||||||
docker exec -u root aria-core chown -R node:node /home/node/.claude 2>/dev/null || true
|
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."
|
echo " Permissions OK."
|
||||||
|
|
||||||
# OpenClaw Config schreiben — Custom Provider fuer claude-max-api-proxy
|
# OpenClaw Config schreiben — Custom Provider fuer claude-max-api-proxy
|
||||||
echo ""
|
echo ""
|
||||||
echo "[3/5] Schreibe openclaw.json (Proxy-Provider + Model)..."
|
echo "[3/7] Schreibe openclaw.json (Proxy-Provider + Model + Tools)..."
|
||||||
docker exec aria-core sh -c 'cat > /home/node/.openclaw/openclaw.json << '"'"'INNEREOF'"'"'
|
docker exec aria-core sh -c 'cat > /home/node/.openclaw/openclaw.json << '"'"'INNEREOF'"'"'
|
||||||
{
|
{
|
||||||
"meta": {
|
"meta": {
|
||||||
"lastTouchedVersion": "2026.3.8"
|
"lastTouchedVersion": "2026.3.8"
|
||||||
},
|
},
|
||||||
|
"gateway": {
|
||||||
|
"mode": "local"
|
||||||
|
},
|
||||||
"agents": {
|
"agents": {
|
||||||
"defaults": {
|
"defaults": {
|
||||||
"model": {
|
"model": {
|
||||||
|
|
@ -58,6 +62,17 @@ docker exec aria-core sh -c 'cat > /home/node/.openclaw/openclaw.json << '"'"'IN
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"tools": {
|
||||||
|
"profile": "full",
|
||||||
|
"web": {
|
||||||
|
"fetch": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"exec": {
|
||||||
|
"host": "gateway"
|
||||||
|
}
|
||||||
|
},
|
||||||
"messages": {
|
"messages": {
|
||||||
"ackReactionScope": "all"
|
"ackReactionScope": "all"
|
||||||
},
|
},
|
||||||
|
|
@ -66,22 +81,22 @@ docker exec aria-core sh -c 'cat > /home/node/.openclaw/openclaw.json << '"'"'IN
|
||||||
"nativeSkills": "auto",
|
"nativeSkills": "auto",
|
||||||
"restart": true,
|
"restart": true,
|
||||||
"ownerDisplay": "raw"
|
"ownerDisplay": "raw"
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
INNEREOF'
|
INNEREOF'
|
||||||
echo " Config geschrieben."
|
echo " Config geschrieben."
|
||||||
|
|
||||||
# Tools via openclaw config set (ueberlebt Migrationen)
|
# Exec-Approvals Wildcard — erlaubt Tool-Ausfuehrung im headless-Modus
|
||||||
echo " Aktiviere exec-Tool..."
|
echo ""
|
||||||
docker exec aria-core openclaw config set tools.exec.host gateway
|
echo "[4/7] Setze exec-approvals Wildcard..."
|
||||||
docker exec aria-core openclaw config set tools.exec.ask off
|
docker exec aria-core openclaw approvals allowlist add --agent "*" "*" 2>/dev/null || true
|
||||||
echo " exec-Tool aktiviert."
|
echo " Approvals gesetzt."
|
||||||
|
|
||||||
# SSH-Key generieren fuer VM-Zugriff
|
# SSH-Key generieren fuer VM-Zugriff
|
||||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||||
SSH_DIR="$SCRIPT_DIR/aria-data/ssh"
|
SSH_DIR="$SCRIPT_DIR/aria-data/ssh"
|
||||||
echo ""
|
echo ""
|
||||||
echo "[4/5] SSH-Key fuer VM-Zugriff..."
|
echo "[5/7] SSH-Key fuer VM-Zugriff..."
|
||||||
if [ ! -f "$SSH_DIR/id_ed25519" ]; then
|
if [ ! -f "$SSH_DIR/id_ed25519" ]; then
|
||||||
ssh-keygen -t ed25519 -f "$SSH_DIR/id_ed25519" -N "" -C "aria@aria-wohnung"
|
ssh-keygen -t ed25519 -f "$SSH_DIR/id_ed25519" -N "" -C "aria@aria-wohnung"
|
||||||
cat > "$SSH_DIR/config" << 'SSHEOF'
|
cat > "$SSH_DIR/config" << 'SSHEOF'
|
||||||
|
|
@ -105,16 +120,20 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Permissions im Container fixen
|
# 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
|
docker exec -u root aria-core chown -R node:node /home/node/.ssh 2>/dev/null || true
|
||||||
|
|
||||||
# Neustart damit Gateway die Config laedt
|
# Neustart damit Gateway die Config laedt
|
||||||
echo ""
|
echo ""
|
||||||
echo "[5/5] Starte aria-core neu..."
|
echo "[7/7] Starte aria-core neu..."
|
||||||
docker restart aria-core
|
docker restart aria-core
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "=== Setup fertig ==="
|
echo "=== Setup fertig ==="
|
||||||
|
echo ""
|
||||||
echo "Teste mit: docker logs aria-core --tail 20"
|
echo "Teste mit: docker logs aria-core --tail 20"
|
||||||
echo "Erwartete Zeile: 'agent model: proxy/claude-sonnet-4'"
|
echo "Erwartete Zeile: 'agent model: proxy/claude-sonnet-4'"
|
||||||
echo ""
|
echo ""
|
||||||
echo "SSH-Test: docker exec aria-core ssh aria-wohnung hostname"
|
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"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue