Claude-Sessions: Fortsetzen öffnet das Terminal je nach Schalter im Client (Gegenstück iris/Iris) #328

Open
opened 2026-10-31 14:10:54 +00:00 by alf · 2 comments
Owner

Gegenstück zu iris/Iris (Terminal im Mac-Server). Hier: Die Claude-Code-Sessions-Seite (web/sessions.html) startet bei „Fortsetzen“ und „Neue Session“ je nach Schalter Gerät/Mac das Terminal im Client (Link auf die Terminal-Seite des Servers) oder weiter Terminal.app auf dem Mac. Die Seite muss den Zustand des Schalters und der Gerätefreigabe kennen; Rückfall: ohne Freigabe oder mit älterer App bleibt das bisherige Verhalten.

Gegenstück zu iris/Iris (Terminal im Mac-Server). Hier: Die Claude-Code-Sessions-Seite (`web/sessions.html`) startet bei „Fortsetzen“ und „Neue Session“ je nach Schalter Gerät/Mac das Terminal im Client (Link auf die Terminal-Seite des Servers) oder weiter Terminal.app auf dem Mac. Die Seite muss den Zustand des Schalters und der Gerätefreigabe kennen; Rückfall: ohne Freigabe oder mit älterer App bleibt das bisherige Verhalten.
Author
Owner

PR #329 gemergt: feat(terminal): Fortsetzen öffnet das Terminal im Client, Befehl terminal-ziel (#328)
http://docker:3000/iris/iris-plugins/pulls/329

Commits:

  • feat(terminal): Fortsetzen öffnet das Terminal im Client, Befehl terminal-ziel (#328)

Stand: Claude-Code-Sessions 0.11.0 — „Fortsetzen“ öffnet das Terminal im Client

Geändert:

  • claude_sessions.terminal_ziel() getrennt aus terminal_starten() (Auflösen von Session, Arbeitsordner und Name, laufende Session abweisen, neues Projekt anlegen) und neuer Panel-Befehl terminal-ziel (im Manifest unter panel_api.commands): liefert session_id, cwd, name, öffnet selbst nichts.
  • web/sessions.html: „Fortsetzen“ und „Neue Session“ fragen window.irisHost.terminal ab (available und target). Bei target: "device" und Freigabe: terminal-ziel, dann Navigation auf iris-terminal://open?kind=claude&session_id=…&cwd=…&name=…, die die App abfängt; sonst wie bisher start (Terminal.app auf dem Mac). Ohne irisHost (ältere App, Browser) unverändert.
  • Anleitung docs/sessions.md (Abschnitt Fortsetzen), store/changelog.md, changelog im Manifest; Version 0.10.1 → 0.11.0. iris_min_version unverändert (Rückfall).

Geprüft: Unit-Tests 201 grün (197 + 4 neue für terminal-ziel: löst die Session auf ohne die App aufzurufen, eigener Name, laufende Session abgewiesen, neues Projekt); End-to-End-Test im Headless-Chromium (echte Seite, echtes panel_api): der bestehende Teil vollständig grün (Rückfall auf Terminal.app intakt) und 9 neue Prüfungen grün: mit Ziel Gerät fordert „Fortsetzen“ genau eine Navigation iris-terminal://open mit kind=claude, UUID-session_id und cwd der Session an und ruft Terminal.app nicht auf, ebenso „Neue Session“ (ohne session_id, mit Name und Ordner); bei Ziel Mac, ohne Freigabe und ohne irisHost startet wie bisher genau ein Terminal.app-Aufruf. ./publish-plugins.sh --dry-run: 1 würde veröffentlicht.

Nicht geprüft: Die Seite in IrisRemote (WebView, Abfangen der Adresse, Vollbild-Terminal) auf dem iPhone; das geschieht mit E2 in iris/2ndbrain-ios#77. Das Mac-Remote-Fenster (E3) setzt irisHost noch nicht, dort startet weiter Terminal.app.

Offen: Veröffentlichung (folgt direkt, nach deiner Regel für gebaute Plugins).

PR #329 gemergt: feat(terminal): Fortsetzen öffnet das Terminal im Client, Befehl terminal-ziel (#328) http://docker:3000/iris/iris-plugins/pulls/329 Commits: - feat(terminal): Fortsetzen öffnet das Terminal im Client, Befehl terminal-ziel (#328) --- **Stand: Claude-Code-Sessions 0.11.0 — „Fortsetzen“ öffnet das Terminal im Client** **Geändert:** - `claude_sessions.terminal_ziel()` getrennt aus `terminal_starten()` (Auflösen von Session, Arbeitsordner und Name, laufende Session abweisen, neues Projekt anlegen) und neuer Panel-Befehl `terminal-ziel` (im Manifest unter `panel_api.commands`): liefert `session_id`, `cwd`, `name`, öffnet selbst nichts. - `web/sessions.html`: „Fortsetzen“ und „Neue Session“ fragen `window.irisHost.terminal` ab (`available` und `target`). Bei `target: "device"` und Freigabe: `terminal-ziel`, dann Navigation auf `iris-terminal://open?kind=claude&session_id=…&cwd=…&name=…`, die die App abfängt; sonst wie bisher `start` (Terminal.app auf dem Mac). Ohne `irisHost` (ältere App, Browser) unverändert. - Anleitung `docs/sessions.md` (Abschnitt Fortsetzen), `store/changelog.md`, `changelog` im Manifest; Version 0.10.1 → 0.11.0. `iris_min_version` unverändert (Rückfall). **Geprüft:** Unit-Tests 201 grün (197 + 4 neue für `terminal-ziel`: löst die Session auf ohne die App aufzurufen, eigener Name, laufende Session abgewiesen, neues Projekt); End-to-End-Test im Headless-Chromium (echte Seite, echtes `panel_api`): der bestehende Teil vollständig grün (Rückfall auf Terminal.app intakt) und 9 neue Prüfungen grün: mit Ziel Gerät fordert „Fortsetzen“ genau eine Navigation `iris-terminal://open` mit `kind=claude`, UUID-`session_id` und `cwd` der Session an und ruft Terminal.app **nicht** auf, ebenso „Neue Session“ (ohne `session_id`, mit Name und Ordner); bei Ziel Mac, ohne Freigabe und ohne `irisHost` startet wie bisher genau ein Terminal.app-Aufruf. `./publish-plugins.sh --dry-run`: 1 würde veröffentlicht. **Nicht geprüft:** Die Seite in IrisRemote (WebView, Abfangen der Adresse, Vollbild-Terminal) auf dem iPhone; das geschieht mit E2 in iris/2ndbrain-ios#77. Das Mac-Remote-Fenster (E3) setzt `irisHost` noch nicht, dort startet weiter Terminal.app. **Offen:** Veröffentlichung (folgt direkt, nach deiner Regel für gebaute Plugins).
Author
Owner

Veröffentlicht (2026-10-31), im Registry-Repo nach dem Pull geprüft: iris-claude-sessions 0.11.0 (Commit 8269886). Das Update ist abwärtskompatibel: Ältere Iris- und IrisRemote-Versionen setzen window.irisHost nicht und starten „Fortsetzen“ und „Neue Session“ unverändert in Terminal.app auf dem Mac. Das Terminal in der App kommt mit der neuen IrisRemote-Version (iris/2ndbrain-ios#77) und braucht die Freigabe des Geräts im Companion Panel (iris/Iris#274). Der Mac-Remote-Client setzt irisHost noch nicht (E3).

**Veröffentlicht (2026-10-31), im Registry-Repo nach dem Pull geprüft:** iris-claude-sessions **0.11.0** (Commit `8269886`). Das Update ist abwärtskompatibel: Ältere Iris- und IrisRemote-Versionen setzen `window.irisHost` nicht und starten „Fortsetzen“ und „Neue Session“ unverändert in Terminal.app auf dem Mac. Das Terminal in der App kommt mit der neuen IrisRemote-Version (iris/2ndbrain-ios#77) und braucht die Freigabe des Geräts im Companion Panel (iris/Iris#274). Der Mac-Remote-Client setzt `irisHost` noch nicht (E3).
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
iris/iris-plugins#328
No description provided.