createSession method
Implementation
@override
Future<AgentSession> createSession(
semantic.AgentSessionOptions options,
) async {
_requireOpen();
_adapter.validateSessionOptions(options, capabilities);
try {
final response = await _connection.newSession(
wire.NewSessionRequest(
cwd: options.cwd,
additionalDirectories: options.additionalDirectories.isEmpty
? null
: options.additionalDirectories,
mcpServers: _adapter.mcpServers(options.mcpServers),
meta: options.metadata.isEmpty ? null : options.metadata,
),
);
return _registerSession(
id: response.sessionId.value,
configOptions: response.configOptions,
);
} catch (error, stackTrace) {
throwWrappedAcpConnection(error, stackTrace);
}
}