Zum Hauptinhalt springen

Sessions

Eine Session ist eine Arbeitseinheit beim Erstellen einer App. Der Agent bearbeitet Dateien, die Änderungen werden als Commits festgehalten und lassen sich bei Bedarf zurücknehmen.

Session anlegen

POST /api/session

Das Feld id in der Antwort ist die {sessionId} für alle weiteren Session-Aufrufe.

Lebenszeichen senden

POST /api/session/{sessionId}/ping

Regelmäßig senden, damit die Session nicht wegen Inaktivität aufgeräumt wird. Die Web-UI ruft dies durchgehend auf, solange der Arbeitsbereich geöffnet ist.

Dateien

MethodePfadFunktion
GET/api/session/{sessionId}/filesDateiliste
GET/api/session/{sessionId}/file?path={path}Inhalt einer einzelnen Datei
GET/api/session/{sessionId}/downloadGesamtes Projekt herunterladen

path wird URL-codiert.

Verlauf und Zurücksetzen

MethodePfadFunktion
GET/api/session/{sessionId}/historyCommit-Verlauf
GET/api/session/{sessionId}/transcriptVollständiger Konversationsverlauf
GET/api/session/{sessionId}/diff?hash={hash}Änderungen eines bestimmten Commits
POST/api/session/{sessionId}/revertAuf einen bestimmten Commit zurücksetzen (im Body hash)

Das Zurücksetzen löscht den Verlauf nicht — auch die Rücknahme wird als neuer Commit festgehalten.

Übernehmen und Verwerfen

MethodePfadFunktion
POST/api/session/{id}/commitBisherige Änderungen committen (im Body message, optional)
POST/api/session/{id}/discardÄnderungen verwerfen und Session in den Ausgangszustand zurücksetzen
POST/api/session/{id}/verifyPrüfen, ob die App tatsächlich funktioniert
DELETE/api/session/{sessionId}Session löschen

Freigabe

PUT /api/session/{id}/share

Im Body wird ein Array der Benutzer-IDs gesendet, denen Lesezugriff gewährt wird.

{ "users": ["kim.cs", "park.jh"] }

Ein leeres Array hebt die Freigabe auf.

Datenkontext

PUT /api/session/{id}/data-context

Legt fest, auf welche Anlagen und Tags sich die Session bezieht. Der Agent nutzt diesen Bereich als Referenz beim Erstellen der App. Mit null wird die Zuordnung aufgehoben.