feat: parallelize extension startup and handle errors with toasts (#2045)

This commit is contained in:
Kalvin C
2025-04-07 09:22:46 -07:00
committed by GitHub
parent 08f1167cc5
commit a4e7d4ef5c
2 changed files with 70 additions and 55 deletions
+9 -7
View File
@@ -135,13 +135,15 @@ export const initializeSystem = async (
await syncBundledExtensions(refreshedExtensions, options.addExtension);
}
// Add enabled extensions to agent
for (const extensionEntry of refreshedExtensions) {
if (extensionEntry.enabled) {
const extensionConfig = extractExtensionConfig(extensionEntry);
await addToAgentOnStartup({ addToConfig: options.addExtension, extensionConfig });
}
}
// enable all extensions in parallel
await Promise.all(
refreshedExtensions
.filter((e) => e.enabled)
.map((extensionEntry) => {
const extensionConfig = extractExtensionConfig(extensionEntry);
return addToAgentOnStartup({ addToConfig: options.addExtension, extensionConfig });
})
);
} else {
loadAndAddStoredExtensions().catch((error) => {
console.error('Failed to load and add stored extension configs:', error);