connect method
Connect to VS Code extension host for the given workspace.
Implementation
Future<void> connect(String workspacePath) async {
_workspacePath = workspacePath;
final handshake = BridgeHandshake(
clientName: 'neomage',
clientVersion: BridgeProtocolVersion.current,
capabilities: {
BridgeCapability.fileEdit,
BridgeCapability.diagnostics,
BridgeCapability.completion,
BridgeCapability.hover,
BridgeCapability.definition,
BridgeCapability.references,
BridgeCapability.formatting,
BridgeCapability.terminal,
BridgeCapability.notifications,
BridgeCapability.chat,
BridgeCapability.statusBar,
BridgeCapability.codeActions,
},
workspacePaths: [workspacePath],
pid: 0, // Dart does not expose pid easily; filled by caller if needed.
);
final response = await _protocol.initialize(handshake);
if (response.isError) {
throw response.error!;
}
// Request initial theme if available.
if (_protocol.hasCapability(BridgeCapability.statusBar)) {
_requestTheme();
}
_connected = true;
}