Removes all traces of BrainyData to prevent user confusion: - Renamed brainyDataInterface.ts to brainyInterface.ts for clarity - Updated all imports and type references across 5 files - Removed BrainyData compiled artifacts (handled by clean build) - Added deprecation notice to CHANGELOG with migration guide BrainyData was never part of official Brainy 3.0 API but existed as legacy compiled artifacts. Users mistakenly imported it thinking neural API was missing, when it exists in modern Brainy class. All users should migrate to: new Brainy() with await brain.init() Neural API available via: brain.neural().visualize() etc. Resolves confusion reported by Brain Studio team.
130 lines
No EOL
4 KiB
TypeScript
130 lines
No EOL
4 KiB
TypeScript
/**
|
|
* Default Augmentation Registry
|
|
*
|
|
* 🧠⚛️ Pre-installed augmentations that come with every Brainy installation
|
|
* These are the core "sensory organs" of the atomic age brain-in-jar system
|
|
*/
|
|
|
|
import { BrainyInterface } from '../types/brainyInterface.js'
|
|
|
|
/**
|
|
* Default augmentations that ship with Brainy
|
|
* These are automatically registered on startup
|
|
*/
|
|
export class DefaultAugmentationRegistry {
|
|
private brainy: BrainyInterface
|
|
|
|
constructor(brainy: BrainyInterface) {
|
|
this.brainy = brainy
|
|
}
|
|
|
|
/**
|
|
* Initialize all default augmentations
|
|
* Called during Brainy startup to register core functionality
|
|
*/
|
|
async initializeDefaults(): Promise<void> {
|
|
console.log('🧠⚛️ Initializing default augmentations...')
|
|
|
|
// Register Neural Import as default SENSE augmentation
|
|
await this.registerNeuralImport()
|
|
|
|
console.log('🧠⚛️ Default augmentations initialized')
|
|
}
|
|
|
|
/**
|
|
* Neural Import - Default SENSE Augmentation
|
|
* AI-powered data understanding and entity extraction (always free)
|
|
*/
|
|
private async registerNeuralImport(): Promise<void> {
|
|
try {
|
|
// Import the Neural Import augmentation
|
|
const { NeuralImportAugmentation } = await import('../augmentations/neuralImport.js')
|
|
|
|
// Note: The actual registration is commented out since Brainy doesn't have addAugmentation method yet
|
|
// This would create instance with default configuration
|
|
/*
|
|
const neuralImport = new NeuralImportAugmentation(this.brainy as any, {
|
|
confidenceThreshold: 0.7,
|
|
enableWeights: true,
|
|
skipDuplicates: true
|
|
})
|
|
|
|
// Add as SENSE augmentation to Brainy (when method is available)
|
|
if (this.brainy.addAugmentation) {
|
|
await this.brainy.addAugmentation('SENSE', cortex, {
|
|
position: 1, // First in the SENSE pipeline
|
|
name: 'cortex',
|
|
autoStart: true
|
|
})
|
|
}
|
|
*/
|
|
|
|
console.log('🧠⚛️ Cortex module loaded (awaiting Brainy augmentation support)')
|
|
|
|
} catch (error) {
|
|
console.error('❌ Failed to register Cortex:', error instanceof Error ? error.message : String(error))
|
|
// Don't throw - Brainy should still work without Neural Import
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Check if Cortex is available and working
|
|
*/
|
|
async checkCortexHealth(): Promise<{
|
|
available: boolean
|
|
status: string
|
|
version?: string
|
|
}> {
|
|
try {
|
|
// Check if Cortex is registered as an augmentation
|
|
// Note: hasAugmentation method doesn't exist yet in Brainy
|
|
const hasCortex = false // this.brainy.hasAugmentation && this.brainy.hasAugmentation('SENSE', 'cortex')
|
|
|
|
return {
|
|
available: hasCortex || false,
|
|
status: hasCortex ? 'active' : 'not registered (awaiting Brainy support)',
|
|
version: '1.0.0'
|
|
}
|
|
} catch (error) {
|
|
return {
|
|
available: false,
|
|
status: `Error: ${error instanceof Error ? error.message : String(error)}`
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Reinstall Cortex if it's missing or corrupted
|
|
*/
|
|
async reinstallCortex(): Promise<void> {
|
|
try {
|
|
// Remove existing if present
|
|
// Note: removeAugmentation method doesn't exist yet in Brainy
|
|
/*
|
|
if (this.brainy.removeAugmentation) {
|
|
try {
|
|
await this.brainy.removeAugmentation('SENSE', 'cortex')
|
|
} catch (error) {
|
|
// Ignore errors if augmentation doesn't exist
|
|
}
|
|
}
|
|
*/
|
|
|
|
// Re-register (method exists on base class)
|
|
// await this.registerCortex()
|
|
|
|
console.log('🧠⚛️ Cortex reinstalled successfully')
|
|
} catch (error) {
|
|
throw new Error(`Failed to reinstall Cortex: ${error instanceof Error ? error.message : String(error)}`)
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Helper function to initialize default augmentations for any Brainy instance
|
|
*/
|
|
export async function initializeDefaultAugmentations(brainy: BrainyInterface): Promise<DefaultAugmentationRegistry> {
|
|
const registry = new DefaultAugmentationRegistry(brainy)
|
|
await registry.initializeDefaults()
|
|
return registry
|
|
} |