Skip to main content

Contesto e filtraggio della sessione

Da GitHub Copilot SDK v0.1.24 è stato aggiunto un contesto che include working directory e informazioni Git nella sessione, ed è ora possibile filtrare l’elenco delle sessioni.

SessionContext

SessionContext conserva la working directory e le informazioni del repository Git al momento della creazione della sessione.

Proprietà

  • cwd (string): percorso assoluto della working directory
  • gitRoot (?string): directory radice del repository Git (null fuori da un repository Git)
  • repository (?string): repository GitHub (formato owner/repo, ad es. invokable/laravel-copilot-sdk)
  • branch (?string): nome del branch Git corrente

Esempio d’uso

SessionListFilter

Con SessionListFilter puoi ottenere solo le sessioni di una specifica working directory o repository.

Proprietà

  • cwd (?string): filtro con match esatto sulla working directory
  • gitRoot (?string): filtro sulla directory Git root
  • repository (?string): filtro sul repository (formato owner/repo)
  • branch (?string): filtro sul nome del branch

Esempio d’uso

Specificare il filtro come array

Uso della classe SessionListFilter

Evento session.context_changed

Se durante la sessione la working directory cambia, viene emesso l’evento session.context_changed.

Tipo di evento

Dati dell’evento

I dati dell’evento includono le informazioni di contesto aggiornate.

SessionMetadata

A SessionMetadata è stata aggiunta la proprietà context.

Nuova proprietà

  • context (?SessionContext): working directory e informazioni Git della sessione

Esempio d’uso

Esempi pratici

Ottenere le sessioni di un progetto specifico

Gestire le sessioni di un feature branch

Organizzare le sessioni per working directory

Note

  • context include informazioni Git (gitRoot, repository, branch) solo per sessioni create all’interno di un repository Git.
  • Il campo context è disponibile da Copilot CLI v0.0.409 in avanti. Nelle versioni precedenti viene restituito null.
  • Il filtraggio funziona con match esatto. Non sono supportati match parziali o wildcard.
  • Tutti i campi di SessionListFilter sono opzionali. Senza filtro vengono restituite tutte le sessioni.
Per le informazioni più recenti fai riferimento al repository GitHub.
Ultima modifica il 13 luglio 2026