[GH-ISSUE #237] VS Code remote/devcontainer/codespaces support for prompt and model data #87

Open
opened 2026-03-02 04:11:44 +03:00 by kerem · 0 comments
Owner

Originally created by @svarlamov on GitHub (Nov 24, 2025).
Original GitHub issue: https://github.com/git-ai-project/git-ai/issues/237

Since the copilot agent chat session data is stored in the workspace storage, we need to build special support for remote VSC and codespaces

In codespaces, these chat JSON logs are only available in the browser in the indexed DB-based virtual filesystem. In the remote VSC/local devcontainer environment, the files are stored on the host, but there's no way (as far as I know) to access the host filesystem from the extension. Needs more research to figure out how we could pass this data across all of the environments to the git-ai CLI at checkpoint time.

This is the snippet of code where VS Code stores the chat session:

vscode/src/vs/workbench/contrib/chat/common /chatSessionStore.ts

private async writeSession(session: ChatModel | ISerializableChatData): Promise<void> { try { const index = this.internalGetIndex(); const storageLocation = this.getStorageLocation(session.sessionId); const content = JSON.stringify(session, undefined, 2); await this.fileService.writeFile(storageLocation, VSBuffer.fromString(content)); // Write succeeded, update index index.entries[session.sessionId] = getSessionMetadata(session); } catch (e) { this.reportError('sessionWrite', 'Error writing chat session', e); } } I found the code that's responsible for storing this file.
Originally created by @svarlamov on GitHub (Nov 24, 2025). Original GitHub issue: https://github.com/git-ai-project/git-ai/issues/237 Since the copilot agent chat session data is stored in the workspace storage, we need to build special support for remote VSC and codespaces In codespaces, these chat JSON logs are only available in the browser in the indexed DB-based virtual filesystem. In the remote VSC/local devcontainer environment, the files are stored on the host, but there's no way (as far as I know) to access the host filesystem from the extension. Needs more research to figure out how we could pass this data across all of the environments to the git-ai CLI at checkpoint time. This is the snippet of code where VS Code stores the chat session: ``` vscode/src/vs/workbench/contrib/chat/common /chatSessionStore.ts private async writeSession(session: ChatModel | ISerializableChatData): Promise<void> { try { const index = this.internalGetIndex(); const storageLocation = this.getStorageLocation(session.sessionId); const content = JSON.stringify(session, undefined, 2); await this.fileService.writeFile(storageLocation, VSBuffer.fromString(content)); // Write succeeded, update index index.entries[session.sessionId] = getSessionMetadata(session); } catch (e) { this.reportError('sessionWrite', 'Error writing chat session', e); } } I found the code that's responsible for storing this file. ```
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
starred/git-ai#87
No description provided.