diff --git a/scripts/README.md b/scripts/README.md index 32f8478..5f486e0 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -39,17 +39,47 @@ Standard-Workflow für eine Copilot-CLI-Migration mit Entire: Dieses Skript ist für den normalen Migrationslauf gedacht. +**Modellwahl:** +Das Skript akzeptiert optional ein Modell als zweiten Parameter. + +Default: + +```bash +./scripts/run-entire-copilot-migration.sh +``` + +verwendet intern: + +```bash +copilot --model "qwen3.5-397b-a17b" +``` + +Mit explizitem Modell: + +```bash +./scripts/run-entire-copilot-migration.sh qt5-before/qt5-legacy-migration-benchmark gpt-5 +``` + ### `run-entire-copilot-migration-with-optional-rewind-resume.sh` Wie das Standardskript, aber zusätzlich mit optionalem: - `entire checkpoint rewind` - `entire session resume ` +**Modellwahl:** +Auch dieses Skript akzeptiert optional ein Modell als zweiten Parameter. + +Beispiel: + +```bash +./scripts/run-entire-copilot-migration-with-optional-rewind-resume.sh qt5-before/qt5-legacy-migration-benchmark claude-sonnet-4 +``` + **Wichtig:** Die Entire-Dokumentation ist bei Copilot CLI in Bezug auf Rewind/Resume nicht ganz konsistent. -Die Copilot-CLI-Seite beschreibt Rewind und Resume, während die allgemeine Agent-Übersicht teils eingeschränkte Aussagen macht. Entire installiert Copilot-CLI-Hooks mit `entire agent add copilot-cli`, erstellt Checkpoints bei Commits und speichert die Daten auf `entire/checkpoints/v1`. ([docs.entire.io](https://docs.entire.io/agents/copilot-cli?utm_source=openai)) +Die Copilot-CLI-Seite beschreibt Rewind und Resume, während die allgemeine Agent-Übersicht teils eingeschränkte Aussagen macht. -Darum behandelt dieses Skript Rewind/Resume bewusst als **optional** und **fehlertolerant**. Diese Vorsicht ist eine Schlussfolgerung aus den widersprüchlichen Entire-Seiten. ([docs.entire.io](https://docs.entire.io/agents/copilot-cli?utm_source=openai)) +Darum behandelt dieses Skript Rewind/Resume bewusst als **optional** und **fehlertolerant**. ### `use-scaleway-copilot-debug.sh` Hilfsskript zum Setzen einer **Scaleway OpenAI-kompatiblen BYOK-Konfiguration** für Copilot CLI. @@ -71,7 +101,36 @@ Ein typischer Inhalt wäre z. B.: - `COPILOT_PROVIDER_MAX_PROMPT_TOKENS=...` - `COPILOT_PROVIDER_MAX_OUTPUT_TOKENS=...` -GitHub Copilot CLI BYOK verwendet für OpenAI-kompatible Provider genau dieses Muster aus Base-URL, API-Key und Modell. ([docs.entire.io](https://docs.entire.io/agents/copilot-cli?utm_source=openai)) +--- + +## NOTE: Secret in `.envrc` hinterlegen + +Das Secret für den verwendeten LLM-Provider soll **nicht** direkt in die Skripte geschrieben oder committed werden. + +Lege den API-Key stattdessen in einer lokalen `.envrc` ab, z. B.: + +```bash +export SCW_SECRET_KEY="YOUR_PROVIDER_SECRET_HERE" +``` + +oder allgemeiner: + +```bash +export OPENAI_API_KEY="YOUR_PROVIDER_SECRET_HERE" +``` + +Danach die Umgebung neu laden, z. B. mit: + +```bash +direnv allow +``` + +oder die Datei manuell sourcen, falls du kein `direnv` verwendest. + +**Wichtig:** +- `.envrc` nicht committen +- Secrets nicht im Repository speichern +- Provider-Zugangsdaten nur lokal halten --- @@ -98,16 +157,22 @@ echo "$COPILOT_MODEL" ### 3. Migration mit Entire + Copilot starten -Standard: +Standard mit Default-Modell: ```bash ./scripts/run-entire-copilot-migration.sh qt5-before/qt5-legacy-migration-benchmark ``` +Standard mit explizitem Modell: + +```bash +./scripts/run-entire-copilot-migration.sh qt5-before/qt5-legacy-migration-benchmark qwen3.5-397b-a17b +``` + Mit optionalem Rewind/Resume: ```bash -./scripts/run-entire-copilot-migration-with-optional-rewind-resume.sh qt5-before/qt5-legacy-migration-benchmark +./scripts/run-entire-copilot-migration-with-optional-rewind-resume.sh qt5-before/qt5-legacy-migration-benchmark qwen3.5-397b-a17b ``` --- @@ -150,20 +215,18 @@ Entire erfasst bei unterstützten Agenten u. a.: - Dateiveränderungen - Zeitstempel - Checkpoints bei Commits -- Session-Kontext auf dem Branch `entire/checkpoints/v1` ([docs.entire.io](https://docs.entire.io/agents/copilot-cli?utm_source=openai)) +- Session-Kontext auf dem Branch `entire/checkpoints/v1` Typischer Entire-Grundablauf: ```bash entire agent add copilot-cli -copilot +copilot --model "qwen3.5-397b-a17b" git add . git commit -m "..." entire checkpoint list ``` -Dieser Ablauf ist direkt in der Copilot-CLI- und Quickstart-Dokumentation beschrieben. ([docs.entire.io](https://docs.entire.io/agents/copilot-cli?utm_source=openai)) - --- ## Hinweise zu `use-scaleway-copilot-debug.sh` @@ -184,7 +247,7 @@ Außerdem: - keine echten Secrets committen - API-Keys nicht im Repo speichern -- sensible Werte besser aus bereits gesetzten Umgebungsvariablen übernehmen +- sensible Werte aus `.envrc` oder bereits gesetzten Umgebungsvariablen übernehmen Beispiel: @@ -211,6 +274,7 @@ Optional kannst du später noch ergänzen: Der `scripts/`-Ordner enthält alles, um: 1. ein Legacy-Qt5-Projekt zu erzeugen, -2. Copilot CLI optional mit Scaleway zu konfigurieren, -3. eine Qt6/C++23-Migration mit Entire zu dokumentieren, -4. und den Migrationslauf reproduzierbar zu machen. +2. Copilot CLI optional mit einem externen Modell zu konfigurieren, +3. Secrets lokal über `.envrc` bereitzustellen, +4. eine Qt6/C++23-Migration mit Entire zu dokumentieren, +5. und den Migrationslauf reproduzierbar zu machen. diff --git a/scripts/run-entire-copilot-migration-with-optional-rewind-resume.sh b/scripts/run-entire-copilot-migration-with-optional-rewind-resume.sh index e26e84b..4f1e27f 100755 --- a/scripts/run-entire-copilot-migration-with-optional-rewind-resume.sh +++ b/scripts/run-entire-copilot-migration-with-optional-rewind-resume.sh @@ -2,6 +2,7 @@ set -euo pipefail PROJECT_DIR="${1:-qt5-before/qt5-legacy-migration-benchmark}" +COPILOT_MODEL="${2:-qwen3.5-397b-a17b}" need_cmd() { command -v "$1" >/dev/null 2>&1 || { @@ -30,6 +31,7 @@ fi echo "Repo root: $REPO_ROOT" echo "Legacy project: $PROJECT_DIR" +echo "Copilot model: $COPILOT_MODEL" entire agent add copilot-cli entire status @@ -72,7 +74,7 @@ Requirements: - Briefly explain each migration change PROMPT -copilot +copilot --model "${COPILOT_MODEL}" echo echo "== Git status after Copilot session ==" diff --git a/scripts/run-entire-copilot-migration.sh b/scripts/run-entire-copilot-migration.sh index 35f3fc7..1c35322 100755 --- a/scripts/run-entire-copilot-migration.sh +++ b/scripts/run-entire-copilot-migration.sh @@ -2,6 +2,7 @@ set -euo pipefail PROJECT_DIR="${1:-qt5-before/qt5-legacy-migration-benchmark}" +COPILOT_MODEL="${2:-qwen3.5-397b-a17b}" need_cmd() { command -v "$1" >/dev/null 2>&1 || { @@ -30,6 +31,7 @@ fi echo "Repo root: $REPO_ROOT" echo "Legacy project: $PROJECT_DIR" +echo "Copilot model: $COPILOT_MODEL" entire agent add copilot-cli entire status @@ -72,7 +74,7 @@ Requirements: - Briefly explain each migration change PROMPT -copilot +copilot --model "${COPILOT_MODEL}" echo echo "== Git status after Copilot session =="