Dogfood des neuen Standards: git mv history/ -> docs/history/ (7 Dateien, Rename-Detection erhalten). Session-Log um Prompt 7 (History-Umzug) ergaenzt und PROJECT_CONTEXT am neuen Ort aktualisiert (Pfade, neue Eintraege, Architekturentscheidungen).
8.1 KiB
PROJECT_CONTEXT – rd13_copilot_setup
Diese Datei ist der persistente Gedächtnis-Speicher für alle Agenten. Beim Start jeder neuen Agent-Session: diese Datei zuerst lesen. Nach Abschluss einer Aufgabe: diesen Stand aktualisieren.
Aktueller Projektstatus
Letzte Aktualisierung: 2026-06-10 – Agent-History nach docs/history/ verschoben (+ Auto-Migration für bestehende Repos); zuvor Portabilität (WP1–7,11,12)
Phase: Produktion / stabil – wird bei Bedarf erweitert
Was ist dieses Projekt?
Portierbare GitHub Copilot Workspace-Konfiguration. Einmal eingerichtet, stattet es jedes neue oder bestehende Git-Repo automatisch mit Copilot-Instruktionen, VS Code- Einstellungen, Dokumentations-Templates, Agent-History-Struktur und einem pre-commit Quality Gate aus.
Stack: Shell (POSIX sh + fish), Markdown
Deployment: bash scripts/deploy.sh oder fish scripts/deploy.fish auf jedem neuen System
Erledigte Aufgaben (neueste zuerst)
| Datum | Aufgabe | Ergebnis | Entscheidungen |
|---|---|---|---|
| 2026-06-10 | Agent-History → docs/history/ + Auto-Migration |
pre-commit Cutover, alle Skripte, settings/prompt/instructions/docs; git mv dieses Repos |
2b20a98 + Dogfood |
| 2026-06-10 | WP12 Doku-Portabilität | README/USER/ADMIN/MAINTAINER: env/config, init-copilot, offline; tote IP raus | afd5b38 |
| 2026-06-10 | WP11 CI + selftest | .github/workflows/ci.yml (shellcheck+fish -n+selftest), scripts/selftest.sh |
deca872 |
| 2026-06-10 | WP6/7/4 deploy nicht-invasiv | kein globales init.templateDir/init-Alias; Opt-in init-copilot; post-merge nur mit Flag | 9e14a5f |
| 2026-06-10 | WP3/5/4 update konfigurierbar/offline | Remote via env/config, graceful skip, portable Editor-Erkennung | 5890bff |
| 2026-06-10 | WP1/2 bootstrap.fish Parität + ADS-Ignore | $HOME statt /home/rd13server; *:Zone.Identifier ignoriert |
80b6248 |
| 2026-06-02 | Konsistenzprüfung: alle --no-verify Referenzen entfernt | docs/USER.md, docs/ADMIN.md, docs/MAINTAINER.md, beide copilot-instructions.md, pre-commit Check-Nummerierung [1/3]→[1/4] |
Opt-outs (.copilot-no-tests/.copilot-no-docs) als Ersatz für --no-verify in Doku |
| 2026-06-03 | Check 6 von Block → Warnung umgestellt | git-templates/hooks/pre-commit |
Zu grob: heute-Prüfung blockiert Folgecommits; besser: Warnung wenn keine *_session.md im aktuellen Commit gestaged |
| 2026-06-02 | pre-commit Check 6 – Session-Datei erforderlich | git-templates/hooks/pre-commit |
Wurde als Block implementiert, am Folgetag als zu grob erkannt |
| 2026-06-02 | Review-Findings behoben (7 Punkte) | pre-commit, .copilot-no-docs, beide copilot-instructions.md, history.prompt.md, copilot-bootstrap.sh |
.copilot-no-docs Opt-out; history.prompt.md Append-Verhalten korrekt |
| 2026-06-02 | copilot-update.sh + git alias + post-merge Hook | scripts/copilot-update.sh, scripts/copilot-update.fish, git-templates/hooks/post-merge |
SSH+HTTP-Fallback; opt-in Update-Hook; copilot-instructions.md nur bei TODO überschreiben |
| 2026-05-31 | Bug fix: mkdir -p .git/hooks + eigenes Repo bootstrapped | e1f912f |
– |
| 2026-05-31 | history/prompts/ committed statt gitignored | 95d0360 |
Vollständige History bleibt im Repo |
| 2026-05-30 | Initiale Erweiterungen: data/, history/, hooks, 3-Zielgruppen-Docs | 045e2e7 |
Nur data/ gitignored |
| 2026-05-30 | Remote origin gesetzt + initial push | ssh://git@192.168.178.6:2222/cschulz/rd13_copilot_setup.git |
– |
Offene Aufgaben & bekannte Probleme
docs/requirements/REQUIREMENTS.mdfür dieses Setup-Repo selbst anlegen (aktuell nur Template in git-templates).github/copilot-instructions.mdTODO-Felder ausfüllen (Stack, Architecture, NFRs dieses Repos)- Bei Änderungen an
git-templates/immerdeploy.shneu ausführen (odergit copilot-updatetesten) - WP8/WP9 (settings.json: Absolute-Mode-Widerspruch entschärfen + non-destruktiver Merge) – zurückgestellt, mit Nutzer besprechen
- WP10 (Vendor-neutrale Namen rd13/cschulz/rd13server) – zurückgestellt
- Remote dieses Repos zeigt auf tote IP
192.168.178.6– bewusst offen (separate Entscheidung)
Kritische Architekturentscheidungen
| Entscheidung | Begründung | Wo dokumentiert |
|---|---|---|
copilot-update.sh mit SSH+HTTP-Fallback |
Funktioniert ohne SSH-Key-Setup auf neuen Maschinen | scripts/copilot-update.sh |
copilot-instructions.md nur bei TODO überschreiben |
User-Content bleibt erhalten; Backup .bak wird erstellt |
scripts/copilot-update.sh |
| post-merge Hook in bootstrapped Repos: opt-in | Kein Overhead bei jedem git pull in anderen Repos |
scripts/copilot-bootstrap.sh --with-update-hook |
| Setup-Repo selbst: post-merge Hook auto-installed | deploy.sh nach jedem git pull auf Setup-Repo |
scripts/deploy.sh Block 7 |
docs/history/prompts/ committed |
Lückenlose Projekt-History im Repo | docs/MAINTAINER.md |
data/ gitignored |
Persistente Daten: Größe + Sicherheit | docs/ADMIN.md |
| POSIX sh für Bootstrap | Läuft überall ohne Abhängigkeiten | docs/MAINTAINER.md |
| Git-Alias statt Fish-Wrapper | Portabel: bash, sh, CI, GUI-Clients | docs/MAINTAINER.md |
.copilot-no-tests + .copilot-no-docs Opt-outs |
Pre-commit Check 1 (Tests) und Check 2 (Doku) deaktivierbar für Repos ohne Framework/Doku-Pflicht | git-templates/hooks/pre-commit |
Kein --no-verify nirgendwo |
Quality Gate darf nie umgangen werden; in copilot-instructions.md verboten, pre-commit enthält keinen Bypass-Hinweis |
git-templates/hooks/pre-commit, .github/copilot-instructions.md |
Kein globales init.templateDir, Opt-in git init-copilot |
Standard-git init/clone unberührt; Quality Gate nur in gewählten Repos |
scripts/deploy.{sh,fish} |
| Remote konfigurierbar (env/Config) + Offline-Modus | Keine hartkodierte Infrastruktur; läuft ohne Netz, graceful skip (exit 0) | scripts/copilot-update.{sh,fish} |
detect_vscode_user_dir dupliziert statt geteilt |
Skripte laufen standalone aus ~/.local/bin → keine sourcebare Lib |
alle 4 Skripte |
| CI: shellcheck + fish -n + selftest | Verhindert Regressionen in den Shell-Skripten | .github/workflows/ci.yml, scripts/selftest.sh |
Agent-History unter docs/history/ |
Aufgeräumte Struktur (alles Doku-Artefakte unter docs/); Cutover statt Dual-Pfad | pre-commit, alle Skripte |
Auto-Migration history/ → docs/history/ in copilot-update |
Bestehende Repos ziehen ohne manuellen Eingriff nach (git mv, Fallback mv) | scripts/copilot-update.{sh,fish} |
Wichtige Pfade & Konventionen
- Requirements:
docs/requirements/REQUIREMENTS.md(committed, immer aktuell halten!) - Persistente Daten:
/data/(gitignored, nie committen!) - Agent-Logs (voll):
/docs/history/prompts/(committed – vollständige History bleibt erhalten) - Dieser Kontext:
/docs/history/summary/PROJECT_CONTEXT.md(committed) - Deploy:
bash scripts/deploy.shoderfish scripts/deploy.fish - Bootstrap einzelnes Repo:
sh ~/.local/bin/copilot-bootstrap.sh [/pfad/zum/repo] - Bootstrap mit Auto-Update-Hook:
sh ~/.local/bin/copilot-bootstrap.sh --with-update-hook [/pfad] - Templates updaten (global + repo-lokal):
git copilot-update(in jedem Repo) - Setup-Quelle:
COPILOT_SETUP_REMOTE_SSH/_HTTPoderCOPILOT_SETUP_DIR(Config:~/.config/copilot-setup/config); Cache~/.copilot-setup/ - Git-Templates:
~/.git-templates/(nach Deploy) - Prompts:
~/.vscode-server/data/User/prompts/(nach Deploy)
Für den nächsten Agenten: Startpunkt
- Diese Datei gelesen? Gut – du kennst den Stand.
- Neues Feature →
git-templates/anpassen →deploy.shausführen → committen - Nach jeder Session:
docs/history/prompts/YYYY-MM-DD_beschreibung_session.mdanlegen + diese Datei aktualisieren
Bekannte Fallstricke / "Don't do this"
deploy.shnach jeder Änderung angit-templates/neu ausführen – sonst sind die lokalen Templates veraltet- Beim Bootstrap neuer Repos ohne
hooks/-Verzeichnis:mkdir -p .git/hooks/ist jetzt im Script (war Bug) deploy.shskippt vorhandene Prompt-Dateien – neue Prompts werden aber korrekt hinzugefügt