pub struct VersionCompatEntry {
pub extension_min: &'static str,
pub extension_max: &'static str,
pub vscode_min: &'static str,
pub session_format: &'static str,
pub notes: &'static str,
}Expand description
Known Copilot Chat version ranges and their session format characteristics. Derived from the CHANGELOG at https://github.com/microsoft/vscode-copilot-chat
Key format transitions:
- 0.25.x (Feb 2025) VS Code 1.98 — Agent mode experimental, legacy JSON
- 0.26.x (Mar 2025) VS Code 1.99 — Unified chat view, MCP support
- 0.27.x (Apr 2025) VS Code 1.100 — Prompt files, instructions files
- 0.28.x (May 2025) VS Code 1.101 — Custom chat modes, tool sets
- 0.29.x (Jun 2025) VS Code 1.102 — Copilot Chat open source release
- 0.30.x (Jul 2025) VS Code 1.103 — Chat checkpoints, tool picker revamp
- 0.31.x (Aug 2025) VS Code 1.104 — Auto model selection, todo list tool
- 0.32.x (Sep 2025) VS Code 1.105 — MCP marketplace, session management
- 0.33.x (Oct 2025) VS Code 1.106 — Agent Sessions view, plan agent
- 0.35.x (Nov 2025) VS Code 1.107 — Agent sessions in Chat view, language models editor
- 0.36.x (Dec 2025) VS Code 1.108 — Agent Skills experimental
- 0.37.x (Jan 2026) VS Code 1.109 — JSONL format (event-sourced), session type picker
The JSONL format transition happened with VS Code 1.109.0+ (January 2026). Sessions created with 0.37.x use JSONL; earlier versions use legacy JSON.
Fields§
§extension_min: &'static str§extension_max: &'static str§vscode_min: &'static str§session_format: &'static str§notes: &'static strAuto Trait Implementations§
impl Freeze for VersionCompatEntry
impl RefUnwindSafe for VersionCompatEntry
impl Send for VersionCompatEntry
impl Sync for VersionCompatEntry
impl Unpin for VersionCompatEntry
impl UnsafeUnpin for VersionCompatEntry
impl UnwindSafe for VersionCompatEntry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more