From 6b45ce7447b8b056cff9270b417c67b9b5f9b65a Mon Sep 17 00:00:00 2001 From: NodimiDO Date: Sat, 8 Aug 2026 10:40:21 +0200 Subject: [PATCH] feat(bootstrap): initial commit of agent configurations --- .gitignore | 5 ++++ mcp/mcp_config.json | 31 +++++++++++++++++++++++ rules/AGENTS.md | 49 ++++++++++++++++++++++++++++++++++++ scripts/sync_agent_config.sh | 25 ++++++++++++++++++ 4 files changed, 110 insertions(+) create mode 100644 .gitignore create mode 100644 mcp/mcp_config.json create mode 100644 rules/AGENTS.md create mode 100644 scripts/sync_agent_config.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dad8a45 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.DS_Store +*.env +config.json +*.log +*.tmp diff --git a/mcp/mcp_config.json b/mcp/mcp_config.json new file mode 100644 index 0000000..3602049 --- /dev/null +++ b/mcp/mcp_config.json @@ -0,0 +1,31 @@ +{ + "mcpServers": { + "antigravity-memory": { + "command": "node", + "args": [ + "/Users/IdeeQuadrat/Projects/antigravity-2.0/mcp/antigravity-memory/server.js" + ] + }, + + "model-router": { + "command": "/bin/bash", + "args": [ + "/Users/IdeeQuadrat/Projects/antigravity-2.0/mcp/start-model-router.sh" + ] + }, + + "agent-reach-mcp": { + "command": "ssh", + "args": [ + "root@80.90.43.178", + "docker", + "exec", + "-i", + "agent-reach", + "python", + "-m", + "agent_reach.integrations.mcp_server" + ] + } + } +} diff --git a/rules/AGENTS.md b/rules/AGENTS.md new file mode 100644 index 0000000..dda8b60 --- /dev/null +++ b/rules/AGENTS.md @@ -0,0 +1,49 @@ +# Antigravity Customization Rules + +## Response Formatting Rule +At the beginning of every response to the user, include a timestamp line with the date, the local time (accounting for geographical offset, e.g. Europe/Luxembourg timezone), and `#` followed by a sequential response number. + +Example format: +`[19.06.2026 - 06:48:36 (Luxemburg) | #1]` + +## Sprache und Anredeform (Language and Tone) +* **Standard-Sprache:** Deutsch (außer vom Benutzer explizit anders gefordert). +* **Anrede:** Verwende für alle Antworten ausschließlich das informelle „Du“ (dein, dir, du). Vermeide jegliche förmliche Ansprache („Sie“, „Ihr“, „Ihnen“). + +## Memory-Drift Protokoll (/md) +* Wenn der Benutzer eine Nachricht mit dem Präfix `/md ` sendet (z. B. `/md Sie`), bedeutet dies, dass das Modell einen kognitiven Drift erlitten hat. +* **Reaktion:** Das Modell muss sich sofort entschuldigen, die Korrektur annehmen, das gewünschte Verhalten wiederherstellen und ggf. seine Präferenznotizen prüfen. + +## Meta-Lernen und Optimierung der Lernstrategien +* **Lernkurvenanalysen:** Das Modell soll regelmäßig versuchen, seine eigenen Lernprozesse und Gedächtnisstrukturen zu verifizieren. Es analysiert, welche Lern- und Speicherstrategien (z. B. direkte Systemprompts vs. Speicherabfragen) am besten performen, um kognitive Drifts zu minimieren. +* **Schwarm-Strategien:** Bei komplexen Aufgaben oder kritischen Alignments prüft das Modell eigenständig, ob der Einsatz von kooperierenden Subagenten (z. B. ein Codierungs-Subagent und ein getrennter Compliance/Watchdog-Subagent zur Qualitätssicherung) eine stabilere und effektivere Performance liefert als ein einzelner Agentenkontext. + +## Web-App Deployment & SSL-Automatisierung (Traefik) +* **Regel:** Bei Anfragen zur Veröffentlichung oder zum Deployment von Web-Apps auf dem Zielserver `80.90.43.178` (oder verbundenen Domains) muss automatisch das Traefik-Reverse-Proxy-Routing konfiguriert und das Let's Encrypt TLS-Zertifikat ausgestellt werden. +* **Ablauf:** Nutze dazu den Skill `deploy-with-traefik-ssl`. + +## Qualitätssicherung & Verifikationspflicht +* **Regel:** Bevor eine Aufgabe als abgeschlossen gemeldet wird, müssen alle automatisierten Tests (z. B. `npm run build`, API-Verifizierungen oder Unit-Tests) lokal ausgeführt werden. Das Ergebnis dieser Tests muss im Walkthrough dokumentiert werden. + +## Session-State-Persistenz +* **Regel:** Pflege am Ende jeder Session den aktuellen Projektzustand, offene To-Dos und wichtige Erkenntnisse in der Datei `.agents/state.json` im Workspace-Verzeichnis. +* **Ablauf:** Lies diese Datei beim Starten eines neuen Projekts oder Chats als erstes ein, um sofort wieder kontextuell synchron zu sein. + +## Software- und Bibliotheks-Quarantänepflicht +* **Regel:** Jedes neue Programm, Docker-Image, Third-Party-Skript oder jede Software-Bibliothek, das/die in eines unserer Systeme oder Projekte (z. B. Bernados, u-Topia, Space Agent) integriert wird, muss zwingend zuerst den Quarantäne-Mechanismus durchlaufen. +* **Ablauf:** Vor der produktiven Freigabe oder direkten Systemintegration müssen solche Software-Komponenten in einer isolierten Quarantäne-Umgebung (z. B. auf der dedizierten Proxmox-Quarantäne-VM 81001171 an vmbr4 oder in einem Docker-Container ohne Netzwerkzugriff `--network none` mit Lese-Rechten auf ein absolutes Minimum beschränkt) auf Supply-Chain-Risiken, Backdoors und unerlaubten Datenabfluss analysiert werden. + + + +## Das Staffelstab-Prinzip (Sequentielle Verifikationskoordination) +* **Regel:** Führe niemals Folge-Befehle oder Systemabfragen aus, bevor das Ergebnis des vorherigen Befehls vollständig abgeschlossen und unabhängig verifiziert ist. +* **Ablauf:** + 1. Setze einen Befehl ab. Nutze bei `run_command` standardmäßig hohe `WaitMsBeforeAsync`-Werte (z. B. 5000–10000ms), um Synchronität zu erzwingen. + 2. Falls ein Task asynchron im Hintergrund laufen muss, stoppe weitere Toolaufrufe (beende den Turn) und warte passiv auf die System-Benachrichtigung der Fertigstellung. + 3. Verifiziere das Ergebnis unabhängig (z. B. per Dateigröße, mtime oder exaktem HTTP-Statuscode), bevor der nächste Schritt eingeleitet wird. + +## Proxmox Master-Dateien & Routing-Regel +* **Regel:** Bevor Konfigurationen (insbesondere Traefik-Routing, Nginx-Configs oder Docker-Compose-Dateien) auf Proxmox-VMs editiert werden, muss geklärt werden, ob ein Watcher oder Sync-Daemon (z. B. `lp-manager-worker` auf VM 150) die Replikate steuert. +* **Ablauf:** + 1. Prüfe auf Ziel-VMs Mounts und Hintergrundprozesse. + 2. Falls ein Synchronisations-Dienst active ist, passe niemals die Datei auf dem Replikat (z. B. Traefik-VM) an, sondern lokalisiere und editiere die Source of Truth (z. B. Master-Datei auf VM 150). diff --git a/scripts/sync_agent_config.sh b/scripts/sync_agent_config.sh new file mode 100644 index 0000000..22b5380 --- /dev/null +++ b/scripts/sync_agent_config.sh @@ -0,0 +1,25 @@ +#!/bin/bash +# sync_agent_config.sh +# Dieses Skript synchronisiert die lokalen Antigravity-Konfigurationen +# mit dem versionierten Backup-Repository auf OMV und pusht sie zu Forgejo. + +set -e + +REPO_DIR="/Volumes/omv-150/MayaDO/Infrastruktur/agent-bootstrap" +CONFIG_SRC="${HOME}/.gemini/config" + +echo "=== 1. Kopiere lokale Konfigurationen ===" +cp "${CONFIG_SRC}/AGENTS.md" "${REPO_DIR}/rules/AGENTS.md" +cp "${CONFIG_SRC}/mcp_config.json" "${REPO_DIR}/mcp/mcp_config.json" + +echo "=== 2. Commit & Push ===" +cd "${REPO_DIR}" + +if [[ -n $(git status --porcelain) ]]; then + git add . + git commit -m "style(config): auto-sync rules and mcp configuration" + git push origin main + echo "Erfolgreich zu Forgejo gepusht!" +else + echo "Keine Änderungen vorhanden." +fi