cloneAssistant method
Clone an assistant with modifications
Implementation
Future<Assistant> cloneAssistant(
String assistantId, {
String? newName,
String? newDescription,
Map<String, String>? additionalMetadata,
}) async {
final original = await retrieveAssistant(assistantId);
final createRequest = CreateAssistantRequest(
model: original.model,
name: newName ?? '${original.name} (Copy)',
description: newDescription ?? original.description,
instructions: original.instructions,
tools: original.tools,
toolResources: original.toolResources,
metadata: {
...?original.metadata,
...?additionalMetadata,
'cloned_from': assistantId,
'cloned_at': DateTime.now().toIso8601String(),
},
);
return await createAssistant(createRequest);
}