ask method
Implementation
@override
Future<String?> ask(String prompt, {String? sessionId}) async {
if (prompt.trim().isEmpty) {
throw AppleFoundationException(
'Prompt cannot be empty',
code: 'INVALID_PROMPT',
);
}
try {
final String? response = await _invokeMethodWithTimeout<String>('ask', {
'prompt': prompt,
if (sessionId != null) 'sessionId': sessionId,
});
return response;
} catch (e) {
_logError('ask', e);
throw AppleFoundationException(
'Failed to process prompt: ${e.toString()}',
code: 'ASK_FAILED',
details: {'prompt': prompt, 'sessionId': sessionId},
);
}
}