@omiron33/omi-neuron-web 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/cli/utils/logger.ts","../../src/cli/utils/templates.ts","../../src/cli/commands/init.ts","../../src/cli/utils/config.ts","../../src/cli/utils/prompts.ts","../../src/cli/utils/spinner.ts","../../src/cli/commands/db.ts","../../src/cli/commands/analyze.ts","../../src/cli/commands/validate.ts","../../src/cli/commands/config.ts","../../src/cli/index.ts"],"names":["output","path","fs","input","Command","buildConnectionString"],"mappings":"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","file":"index.js","sourcesContent":["import chalk from 'chalk';\n\nexport const logger = {\n info: (message: string) => {\n console.log(chalk.cyan(`[omi-neuron] ${message}`));\n },\n success: (message: string) => {\n console.log(chalk.green(`[omi-neuron] ${message}`));\n },\n warn: (message: string) => {\n console.warn(chalk.yellow(`[omi-neuron] ${message}`));\n },\n error: (message: string) => {\n console.error(chalk.red(`[omi-neuron] ${message}`));\n },\n};\n","import fs from 'node:fs/promises';\nimport path from 'node:path';\n\nexport const renderTemplate = (template: string, values: Record<string, string>): string => {\n let output = template;\n for (const [key, value] of Object.entries(values)) {\n output = output.replace(new RegExp(`{{${key}}}`, 'g'), value);\n }\n return output;\n};\n\nexport async function writeTemplateFile(\n filePath: string,\n template: string,\n values: Record<string, string>,\n force = false\n): Promise<void> {\n const resolved = path.resolve(filePath);\n await fs.mkdir(path.dirname(resolved), { recursive: true });\n try {\n await fs.access(resolved);\n if (!force) {\n throw new Error(`File already exists: ${resolved}`);\n }\n } catch {\n // File does not exist; continue.\n }\n\n const content = renderTemplate(template, values);\n await fs.writeFile(resolved, content, 'utf8');\n}\n","import path from 'node:path';\nimport fs from 'node:fs/promises';\nimport { Command } from 'commander';\nimport { logger } from '../utils/logger';\nimport { writeTemplateFile } from '../utils/templates';\n\nconst CONFIG_TEMPLATE = `import { defineNeuronConfig, DEFAULT_ANALYSIS_SETTINGS, DEFAULT_VISUALIZATION_SETTINGS } from 'omi-neuron-web';\n\nexport default defineNeuronConfig({\n instance: {\n name: '{{INSTANCE_NAME}}',\n version: '0.1.0',\n repoName: '{{REPO_NAME}}',\n },\n visualization: DEFAULT_VISUALIZATION_SETTINGS,\n analysis: DEFAULT_ANALYSIS_SETTINGS,\n nodeTypes: [],\n domains: [],\n relationshipTypes: [],\n openai: {\n apiKey: process.env.OPENAI_API_KEY ?? '',\n },\n database: {\n mode: 'docker',\n port: {{DB_PORT}},\n user: 'neuron',\n password: 'neuron_dev',\n database: 'neuron_web',\n },\n api: {\n basePath: '/api/neuron',\n enableCors: false,\n },\n logging: {\n level: 'info',\n prettyPrint: true,\n },\n});\n`;\n\nconst ENV_TEMPLATE = `# omi-neuron-web environment variables\nOPENAI_API_KEY=\nDATABASE_URL=\n`;\n\nconst DOCKER_TEMPLATE = `version: '3.8'\n\nservices:\n pg-{{REPO_NAME}}:\n image: pgvector/pgvector:pg16\n container_name: pg-{{REPO_NAME}}\n restart: unless-stopped\n environment:\n POSTGRES_USER: neuron\n POSTGRES_PASSWORD: neuron_dev\n POSTGRES_DB: neuron_web\n ports:\n - \"{{DB_PORT}}:5432\"\n volumes:\n - {{REPO_NAME}}_neuron_data:/var/lib/postgresql/data\n healthcheck:\n test: [\"CMD-SHELL\", \"pg_isready -U neuron -d neuron_web\"]\n interval: 10s\n timeout: 5s\n retries: 5\n\nvolumes:\n {{REPO_NAME}}_neuron_data:\n name: {{REPO_NAME}}_neuron_data\n`;\n\nconst API_ROUTE_TEMPLATE = `import { createNeuronRoutes } from 'omi-neuron-web/api';\nimport config from '../../../../neuron.config';\n\nconst routes = createNeuronRoutes(config);\n\nexport const GET = routes.health.GET;\nexport const POST = routes.health.GET;\n`;\n\nexport const initCommand = new Command('init')\n .description('Initialize omi-neuron-web in your project')\n .option('--name <name>', 'Instance name (default: directory name)')\n .option('--port <port>', 'PostgreSQL port (default: 5433)', '5433')\n .option('--skip-docker', \"Don't generate Docker files\")\n .option('--skip-api', \"Don't generate API route files\")\n .option('--skip-config', \"Don't generate neuron.config.ts\")\n .option('--app-dir <path>', 'Path to Next.js app directory', './app')\n .option('--force', 'Overwrite existing files')\n .action(async (options) => {\n const repoName = path.basename(process.cwd());\n const instanceName = options.name ?? repoName;\n const port = Number(options.port ?? 5433);\n\n if (!options.skipConfig) {\n await writeTemplateFile(\n path.join(process.cwd(), 'neuron.config.ts'),\n CONFIG_TEMPLATE,\n {\n INSTANCE_NAME: instanceName,\n REPO_NAME: repoName,\n DB_PORT: String(port),\n },\n options.force\n );\n logger.success('Created neuron.config.ts');\n }\n\n if (!options.skipDocker) {\n await writeTemplateFile(\n path.join(process.cwd(), 'docker-compose.neuron.yml'),\n DOCKER_TEMPLATE,\n {\n REPO_NAME: repoName,\n DB_PORT: String(port),\n },\n options.force\n );\n logger.success('Created docker-compose.neuron.yml');\n }\n\n await writeTemplateFile(\n path.join(process.cwd(), '.env.neuron.local'),\n ENV_TEMPLATE,\n {},\n options.force\n );\n logger.success('Created .env.neuron.local');\n\n if (!options.skipApi) {\n const apiPath = path.join(process.cwd(), options.appDir, 'api', 'neuron', '[...path]');\n await fs.mkdir(apiPath, { recursive: true });\n await fs.writeFile(path.join(apiPath, 'route.ts'), API_ROUTE_TEMPLATE, 'utf8');\n logger.success('Created Next.js API route stub');\n }\n\n logger.info('Initialization complete.');\n });\n","import path from 'node:path';\nimport { pathToFileURL } from 'node:url';\nimport fs from 'node:fs/promises';\nimport type { NeuronConfig } from '../../core/types/settings';\n\nexport interface CliConfig {\n repoName: string;\n port: number;\n containerName?: string;\n databaseUrl?: string;\n databaseUser?: string;\n databasePassword?: string;\n databaseName?: string;\n}\n\nexport async function loadNeuronConfig(): Promise<NeuronConfig | null> {\n const configPath = path.resolve('neuron.config.ts');\n try {\n await fs.access(configPath);\n } catch {\n return null;\n }\n\n try {\n const module = await import(pathToFileURL(configPath).toString());\n return module.default ?? module;\n } catch (error) {\n throw new Error(\n `Unable to load neuron.config.ts. Consider transpiling or using a JS config. ${String(error)}`\n );\n }\n}\n\nexport async function resolveCliConfig(overrides?: Partial<CliConfig>): Promise<CliConfig> {\n const repoName = overrides?.repoName ?? path.basename(process.cwd());\n let config: NeuronConfig | null = null;\n\n try {\n config = await loadNeuronConfig();\n } catch {\n config = null;\n }\n\n return {\n repoName,\n port:\n overrides?.port ??\n config?.database?.port ??\n (process.env.DB_PORT ? Number(process.env.DB_PORT) : 5433),\n containerName: overrides?.containerName ?? config?.database?.containerName,\n databaseUrl: overrides?.databaseUrl ?? config?.database?.url ?? process.env.DATABASE_URL,\n databaseUser: overrides?.databaseUser ?? config?.database?.user ?? process.env.DB_USER,\n databasePassword:\n overrides?.databasePassword ?? config?.database?.password ?? process.env.DB_PASSWORD,\n databaseName: overrides?.databaseName ?? config?.database?.database ?? process.env.DB_NAME,\n };\n}\n","import { createInterface } from 'node:readline/promises';\nimport { stdin as input, stdout as output } from 'node:process';\n\nexport async function confirmPrompt(message: string): Promise<boolean> {\n const rl = createInterface({ input, output });\n const answer = await rl.question(`${message} (y/N): `);\n rl.close();\n return answer.trim().toLowerCase() === 'y';\n}\n","type SpinnerState = 'running' | 'stopped';\n\nexport class Spinner {\n private state: SpinnerState = 'stopped';\n private intervalId: NodeJS.Timeout | null = null;\n private frames = ['-', '\\\\', '|', '/'];\n private frameIndex = 0;\n\n constructor(private message: string) {}\n\n start(): void {\n if (this.state === 'running') return;\n this.state = 'running';\n this.intervalId = setInterval(() => {\n const frame = this.frames[this.frameIndex % this.frames.length];\n this.frameIndex += 1;\n process.stdout.write(`\\r${frame} ${this.message}`);\n }, 120);\n }\n\n stop(success = true, finalMessage?: string): void {\n if (this.intervalId) {\n clearInterval(this.intervalId);\n }\n this.state = 'stopped';\n const symbol = success ? '✓' : '✗';\n process.stdout.write(`\\r${symbol} ${finalMessage ?? this.message}\\n`);\n }\n}\n","import { Command } from 'commander';\nimport { DockerManager } from '../../storage/docker-manager';\nimport { Database } from '../../storage/database';\nimport { MigrationRunner } from '../../storage/migrations/runner';\nimport { resolveCliConfig } from '../utils/config';\nimport { logger } from '../utils/logger';\nimport { confirmPrompt } from '../utils/prompts';\nimport { Spinner } from '../utils/spinner';\n\nconst buildConnectionString = (config: {\n databaseUrl?: string;\n databaseUser?: string;\n databasePassword?: string;\n databaseName?: string;\n port: number;\n}) => {\n if (config.databaseUrl) return config.databaseUrl;\n const user = config.databaseUser ?? 'neuron';\n const password = config.databasePassword ?? 'neuron_dev';\n const database = config.databaseName ?? 'neuron_web';\n return `postgresql://${user}:${password}@localhost:${config.port}/${database}`;\n};\n\nexport const dbCommand = new Command('db')\n .description('Database management commands')\n .addCommand(\n new Command('up')\n .description('Start PostgreSQL container')\n .option('--port <port>', 'Override port')\n .option('--force-recreate', 'Force recreate container')\n .option('--wait', 'Wait for readiness', true)\n .action(async (options) => {\n const config = await resolveCliConfig({\n port: options.port ? Number(options.port) : undefined,\n });\n const docker = new DockerManager({\n repoName: config.repoName,\n port: config.port,\n containerName: config.containerName,\n user: config.databaseUser,\n password: config.databasePassword,\n database: config.databaseName,\n });\n const spinner = new Spinner('Starting PostgreSQL container');\n spinner.start();\n await docker.start({\n forceRecreate: options.forceRecreate,\n waitForReady: options.wait,\n });\n spinner.stop(true, 'Database ready');\n const connectionString = await docker.getConnectionString();\n logger.info(`Connection string: ${connectionString}`);\n })\n )\n .addCommand(\n new Command('down')\n .description('Stop PostgreSQL container')\n .option('--remove-volumes', 'Remove volumes (destructive)')\n .action(async (options) => {\n const config = await resolveCliConfig();\n const docker = new DockerManager({\n repoName: config.repoName,\n port: config.port,\n containerName: config.containerName,\n });\n await docker.stop({ removeVolumes: options.removeVolumes });\n logger.success('Database container stopped');\n })\n )\n .addCommand(\n new Command('migrate')\n .description('Run migrations')\n .option('--status', 'Show status only')\n .option('--rollback <count>', 'Rollback N migrations')\n .option('--to <version>', 'Migrate to specific version')\n .option('--dry-run', 'Show SQL without executing')\n .action(async (options) => {\n const config = await resolveCliConfig();\n const db = new Database({\n connectionString: buildConnectionString(config),\n });\n const runner = new MigrationRunner(db);\n\n if (options.status) {\n const status = await runner.getStatus();\n status.forEach((item) => {\n logger.info(`${item.version} ${item.name} - ${item.status}`);\n });\n return;\n }\n\n if (options.dryRun) {\n const sql = await runner.dryRun(options.rollback ? 'down' : 'up');\n logger.info(sql.join('\\n\\n'));\n return;\n }\n\n if (options.rollback) {\n await runner.down({ count: Number(options.rollback) });\n logger.success('Rollback complete');\n return;\n }\n\n await runner.up({ to: options.to });\n logger.success('Migrations complete');\n })\n )\n .addCommand(\n new Command('status')\n .description('Show database status')\n .option('--json', 'Output JSON')\n .option('--verbose', 'Include stats')\n .action(async (options) => {\n const config = await resolveCliConfig();\n const docker = new DockerManager({\n repoName: config.repoName,\n port: config.port,\n containerName: config.containerName,\n });\n const health = await docker.healthCheck();\n\n if (options.json) {\n console.log(JSON.stringify(health, null, 2));\n return;\n }\n\n logger.info(`Container running: ${health.containerRunning}`);\n logger.info(`Database ready: ${health.databaseReady}`);\n if (options.verbose) {\n const stats = await docker.getStats();\n logger.info(`Stats: ${JSON.stringify(stats)}`);\n }\n })\n )\n .addCommand(\n new Command('reset')\n .description('Reset database schema')\n .option('--confirm', 'Skip confirmation prompt')\n .action(async (options) => {\n if (!options.confirm) {\n const confirmed = await confirmPrompt('This will drop and reapply all migrations. Continue?');\n if (!confirmed) return;\n }\n const config = await resolveCliConfig();\n const db = new Database({\n connectionString: buildConnectionString(config),\n });\n const runner = new MigrationRunner(db);\n await runner.reset();\n logger.success('Database reset complete');\n })\n )\n .addCommand(\n new Command('seed')\n .description('Seed database with sample data')\n .option('--file <path>', 'Custom seed file')\n .option('--clear', 'Clear before seeding')\n .option('--count <n>', 'Number of example nodes', '10')\n .action(async (options) => {\n const config = await resolveCliConfig();\n const db = new Database({\n connectionString: buildConnectionString(config),\n });\n if (options.clear) {\n await db.execute('DELETE FROM edges');\n await db.execute('DELETE FROM nodes');\n }\n const count = Number(options.count ?? 10);\n for (let i = 0; i < count; i += 1) {\n await db.execute(\n 'INSERT INTO nodes (slug, label, node_type, domain, metadata) VALUES ($1, $2, $3, $4, $5)',\n [`seed-${i + 1}`, `Seed Node ${i + 1}`, 'concept', 'general', {}]\n );\n }\n logger.success('Seed data inserted');\n })\n );\n","import { Command } from 'commander';\nimport { Database } from '../../storage/database';\nimport { resolveCliConfig } from '../utils/config';\nimport { logger } from '../utils/logger';\nimport { EventBus } from '../../core/events/event-bus';\nimport { EmbeddingsService } from '../../core/analysis/embeddings-service';\nimport { ClusteringEngine } from '../../core/analysis/clustering-engine';\nimport { RelationshipEngine } from '../../core/analysis/relationship-engine';\nimport { AnalysisPipeline } from '../../core/analysis/pipeline';\n\nconst buildConnectionString = (config: {\n databaseUrl?: string;\n databaseUser?: string;\n databasePassword?: string;\n databaseName?: string;\n port: number;\n}) => {\n if (config.databaseUrl) return config.databaseUrl;\n const user = config.databaseUser ?? 'neuron';\n const password = config.databasePassword ?? 'neuron_dev';\n const database = config.databaseName ?? 'neuron_web';\n return `postgresql://${user}:${password}@localhost:${config.port}/${database}`;\n};\n\nasync function buildPipeline(): Promise<AnalysisPipeline> {\n const config = await resolveCliConfig();\n const db = new Database({ connectionString: buildConnectionString(config) });\n const events = new EventBus();\n\n const embeddings = new EmbeddingsService(\n {\n openaiApiKey: process.env.OPENAI_API_KEY ?? '',\n model: 'text-embedding-3-small',\n batchSize: 20,\n rateLimit: 60,\n cacheTTL: 86400,\n maxRetries: 3,\n },\n db\n );\n\n const clustering = new ClusteringEngine(db, embeddings);\n const relationships = new RelationshipEngine(db, {\n model: 'gpt-4o-mini',\n minConfidence: 0.7,\n maxPerNode: 10,\n similarityThreshold: 0.75,\n includeExisting: false,\n batchSize: 10,\n rateLimit: 30,\n });\n\n return new AnalysisPipeline(db, embeddings, clustering, relationships, events);\n}\n\nexport const analyzeCommand = new Command('analyze')\n .description('Analysis commands')\n .addCommand(\n new Command('embeddings')\n .description('Generate embeddings')\n .option('--node-ids <ids>', 'Comma-separated node IDs')\n .option('--force', 'Regenerate existing')\n .action(async (options) => {\n const pipeline = await buildPipeline();\n const nodeIds = options.nodeIds ? options.nodeIds.split(',') : undefined;\n await pipeline.runEmbeddings({ nodeIds, forceRecompute: options.force });\n logger.success('Embeddings complete');\n })\n )\n .addCommand(\n new Command('cluster')\n .description('Run clustering')\n .option('--count <n>', 'Number of clusters')\n .option('--algorithm <alg>', 'kmeans, dbscan, hierarchical', 'kmeans')\n .action(async (options) => {\n const pipeline = await buildPipeline();\n await pipeline.runClustering({\n clusterCount: options.count ? Number(options.count) : undefined,\n clusteringAlgorithm: options.algorithm,\n });\n logger.success('Clustering complete');\n })\n )\n .addCommand(\n new Command('relationships')\n .description('Infer relationships')\n .option('--threshold <n>', 'Min confidence (0-1)', '0.7')\n .option('--dry-run', 'Show without saving')\n .action(async (options) => {\n const pipeline = await buildPipeline();\n await pipeline.runRelationships({\n relationshipThreshold: Number(options.threshold),\n });\n logger.success('Relationship inference complete');\n })\n )\n .addCommand(\n new Command('full')\n .description('Run full analysis pipeline')\n .option('--force', 'Force recompute all')\n .action(async (options) => {\n const pipeline = await buildPipeline();\n await pipeline.runFull({ forceRecompute: options.force });\n logger.success('Analysis pipeline complete');\n })\n );\n","import { Command } from 'commander';\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport { DockerManager } from '../../storage/docker-manager';\nimport { Database } from '../../storage/database';\nimport { MigrationRunner } from '../../storage/migrations/runner';\nimport { resolveCliConfig } from '../utils/config';\nimport { logger } from '../utils/logger';\n\nconst buildConnectionString = (config: {\n databaseUrl?: string;\n databaseUser?: string;\n databasePassword?: string;\n databaseName?: string;\n port: number;\n}) => {\n if (config.databaseUrl) return config.databaseUrl;\n const user = config.databaseUser ?? 'neuron';\n const password = config.databasePassword ?? 'neuron_dev';\n const database = config.databaseName ?? 'neuron_web';\n return `postgresql://${user}:${password}@localhost:${config.port}/${database}`;\n};\n\nexport const validateCommand = new Command('validate')\n .description('Validate configuration and setup')\n .option('--fix', 'Attempt to fix issues')\n .option('--verbose', 'Show detailed validation')\n .action(async (options) => {\n const config = await resolveCliConfig();\n let hasError = false;\n\n const configPath = path.resolve('neuron.config.ts');\n try {\n await fs.access(configPath);\n logger.success('neuron.config.ts exists');\n } catch {\n hasError = true;\n logger.error('neuron.config.ts not found');\n }\n\n try {\n const docker = new DockerManager({ repoName: config.repoName, port: config.port });\n const health = await docker.healthCheck();\n logger.info(`Docker container running: ${health.containerRunning}`);\n logger.info(`Database ready: ${health.databaseReady}`);\n } catch (error) {\n hasError = true;\n logger.error(`Docker check failed: ${String(error)}`);\n }\n\n try {\n const db = new Database({ connectionString: buildConnectionString(config) });\n await db.connect();\n logger.success('Database connection ok');\n const runner = new MigrationRunner(db);\n const pending = await runner.getPending();\n if (pending.length > 0) {\n logger.warn(`Pending migrations: ${pending.map((m) => m.version).join(', ')}`);\n } else {\n logger.success('Migrations up to date');\n }\n } catch (error) {\n hasError = true;\n logger.error(`Database check failed: ${String(error)}`);\n }\n\n if (!process.env.OPENAI_API_KEY) {\n logger.warn('OPENAI_API_KEY not set');\n if (options.fix) {\n logger.info('Set OPENAI_API_KEY in your environment to enable analysis');\n }\n }\n\n if (hasError) {\n process.exitCode = 1;\n }\n });\n","import { Command } from 'commander';\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport { loadNeuronConfig } from '../utils/config';\nimport { logger } from '../utils/logger';\n\nconst CONFIG_FILE = path.resolve('neuron.config.ts');\n\nconst serializeConfig = (config: unknown): string => `import { defineNeuronConfig } from 'omi-neuron-web';\\n\\nexport default defineNeuronConfig(${JSON.stringify(\n config,\n null,\n 2\n)});\\n`;\n\nconst getNestedValue = (obj: Record<string, unknown>, key: string): unknown => {\n return key.split('.').reduce((acc, part) => {\n if (acc && typeof acc === 'object' && part in acc) {\n return (acc as Record<string, unknown>)[part];\n }\n return undefined;\n }, obj as unknown);\n};\n\nconst setNestedValue = (obj: Record<string, unknown>, key: string, value: unknown): void => {\n const parts = key.split('.');\n let current = obj;\n for (let i = 0; i < parts.length - 1; i += 1) {\n const part = parts[i];\n if (!current[part] || typeof current[part] !== 'object') {\n current[part] = {};\n }\n current = current[part] as Record<string, unknown>;\n }\n current[parts[parts.length - 1]] = value;\n};\n\nexport const configCommand = new Command('config')\n .description('Manage neuron.config.ts')\n .addCommand(\n new Command('get')\n .argument('<key>', 'Dot path key')\n .action(async (key) => {\n const config = await loadNeuronConfig();\n if (!config) {\n logger.error('neuron.config.ts not found');\n return;\n }\n const value = getNestedValue(config as unknown as Record<string, unknown>, key);\n console.log(JSON.stringify(value, null, 2));\n })\n )\n .addCommand(\n new Command('set')\n .argument('<key>', 'Dot path key')\n .argument('<value>', 'Value (JSON)')\n .action(async (key, value) => {\n const config = await loadNeuronConfig();\n if (!config) {\n logger.error('neuron.config.ts not found');\n return;\n }\n const parsed = JSON.parse(value);\n const updated = { ...(config as unknown as Record<string, unknown>) };\n setNestedValue(updated, key, parsed);\n await fs.writeFile(CONFIG_FILE, serializeConfig(updated), 'utf8');\n logger.success(`Updated ${key}`);\n })\n )\n .addCommand(\n new Command('list').action(async () => {\n const config = await loadNeuronConfig();\n if (!config) {\n logger.error('neuron.config.ts not found');\n return;\n }\n console.log(JSON.stringify(config, null, 2));\n })\n )\n .addCommand(\n new Command('reset')\n .option('--section <section>', 'Section to reset')\n .action(async (options) => {\n const config = await loadNeuronConfig();\n if (!config) {\n logger.error('neuron.config.ts not found');\n return;\n }\n const updated = { ...(config as unknown as Record<string, unknown>) };\n if (options.section) {\n delete updated[options.section];\n } else {\n for (const key of Object.keys(updated)) {\n delete updated[key];\n }\n }\n await fs.writeFile(CONFIG_FILE, serializeConfig(updated), 'utf8');\n logger.success('Config reset');\n })\n );\n","#!/usr/bin/env node\nimport { program } from 'commander';\nimport { initCommand } from './commands/init';\nimport { dbCommand } from './commands/db';\nimport { analyzeCommand } from './commands/analyze';\nimport { validateCommand } from './commands/validate';\nimport { configCommand } from './commands/config';\n\nprogram\n .name('omi-neuron')\n .description('CLI for omi-neuron-web library')\n .version('0.1.0');\n\nprogram.addCommand(initCommand);\nprogram.addCommand(dbCommand);\nprogram.addCommand(analyzeCommand);\nprogram.addCommand(validateCommand);\nprogram.addCommand(configCommand);\n\nprogram.parse();\n"]}
1
+ {"version":3,"sources":["../../src/cli/utils/logger.ts","../../src/cli/utils/templates.ts","../../src/cli/commands/init.ts","../../src/cli/utils/config.ts","../../src/cli/utils/prompts.ts","../../src/cli/utils/spinner.ts","../../src/cli/commands/db.ts","../../src/cli/commands/analyze.ts","../../src/cli/commands/validate.ts","../../src/cli/commands/config.ts","../../src/cli/index.ts"],"names":["output","path","fs","input","Command","buildConnectionString"],"mappings":"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","file":"index.js","sourcesContent":["import chalk from 'chalk';\n\nexport const logger = {\n info: (message: string) => {\n console.log(chalk.cyan(`[omi-neuron] ${message}`));\n },\n success: (message: string) => {\n console.log(chalk.green(`[omi-neuron] ${message}`));\n },\n warn: (message: string) => {\n console.warn(chalk.yellow(`[omi-neuron] ${message}`));\n },\n error: (message: string) => {\n console.error(chalk.red(`[omi-neuron] ${message}`));\n },\n};\n","import fs from 'node:fs/promises';\nimport path from 'node:path';\n\nexport const renderTemplate = (template: string, values: Record<string, string>): string => {\n let output = template;\n for (const [key, value] of Object.entries(values)) {\n output = output.replace(new RegExp(`{{${key}}}`, 'g'), value);\n }\n return output;\n};\n\nexport async function writeTemplateFile(\n filePath: string,\n template: string,\n values: Record<string, string>,\n force = false\n): Promise<void> {\n const resolved = path.resolve(filePath);\n await fs.mkdir(path.dirname(resolved), { recursive: true });\n try {\n await fs.access(resolved);\n if (!force) {\n throw new Error(`File already exists: ${resolved}`);\n }\n } catch {\n // File does not exist; continue.\n }\n\n const content = renderTemplate(template, values);\n await fs.writeFile(resolved, content, 'utf8');\n}\n","import path from 'node:path';\nimport fs from 'node:fs/promises';\nimport { Command } from 'commander';\nimport { logger } from '../utils/logger';\nimport { writeTemplateFile } from '../utils/templates';\n\nconst CONFIG_TEMPLATE = `import { defineNeuronConfig, DEFAULT_ANALYSIS_SETTINGS, DEFAULT_VISUALIZATION_SETTINGS } from '@omiron33/omi-neuron-web';\n\nexport default defineNeuronConfig({\n instance: {\n name: '{{INSTANCE_NAME}}',\n version: '0.1.1',\n repoName: '{{REPO_NAME}}',\n },\n visualization: DEFAULT_VISUALIZATION_SETTINGS,\n analysis: DEFAULT_ANALYSIS_SETTINGS,\n nodeTypes: [],\n domains: [],\n relationshipTypes: [],\n openai: {\n apiKey: process.env.OPENAI_API_KEY ?? '',\n },\n database: {\n mode: 'docker',\n port: {{DB_PORT}},\n user: 'neuron',\n password: 'neuron_dev',\n database: 'neuron_web',\n },\n api: {\n basePath: '/api/neuron',\n enableCors: false,\n },\n logging: {\n level: 'info',\n prettyPrint: true,\n },\n});\n`;\n\nconst ENV_TEMPLATE = `# omi-neuron-web environment variables\nOPENAI_API_KEY=\nDATABASE_URL=\n`;\n\nconst DOCKER_TEMPLATE = `version: '3.8'\n\nservices:\n pg-{{REPO_NAME}}:\n image: pgvector/pgvector:pg16\n container_name: pg-{{REPO_NAME}}\n restart: unless-stopped\n environment:\n POSTGRES_USER: neuron\n POSTGRES_PASSWORD: neuron_dev\n POSTGRES_DB: neuron_web\n ports:\n - \"{{DB_PORT}}:5432\"\n volumes:\n - {{REPO_NAME}}_neuron_data:/var/lib/postgresql/data\n healthcheck:\n test: [\"CMD-SHELL\", \"pg_isready -U neuron -d neuron_web\"]\n interval: 10s\n timeout: 5s\n retries: 5\n\nvolumes:\n {{REPO_NAME}}_neuron_data:\n name: {{REPO_NAME}}_neuron_data\n`;\n\nconst API_ROUTE_TEMPLATE = `import { createNeuronRoutes } from '@omiron33/omi-neuron-web/api';\nimport config from '../../../../neuron.config';\n\nconst routes = createNeuronRoutes(config);\n\nexport const GET = routes.health.GET;\nexport const POST = routes.health.GET;\n`;\n\nexport const initCommand = new Command('init')\n .description('Initialize omi-neuron-web in your project')\n .option('--name <name>', 'Instance name (default: directory name)')\n .option('--port <port>', 'PostgreSQL port (default: 5433)', '5433')\n .option('--skip-docker', \"Don't generate Docker files\")\n .option('--skip-api', \"Don't generate API route files\")\n .option('--skip-config', \"Don't generate neuron.config.ts\")\n .option('--app-dir <path>', 'Path to Next.js app directory', './app')\n .option('--force', 'Overwrite existing files')\n .action(async (options) => {\n const repoName = path.basename(process.cwd());\n const instanceName = options.name ?? repoName;\n const port = Number(options.port ?? 5433);\n\n if (!options.skipConfig) {\n await writeTemplateFile(\n path.join(process.cwd(), 'neuron.config.ts'),\n CONFIG_TEMPLATE,\n {\n INSTANCE_NAME: instanceName,\n REPO_NAME: repoName,\n DB_PORT: String(port),\n },\n options.force\n );\n logger.success('Created neuron.config.ts');\n }\n\n if (!options.skipDocker) {\n await writeTemplateFile(\n path.join(process.cwd(), 'docker-compose.neuron.yml'),\n DOCKER_TEMPLATE,\n {\n REPO_NAME: repoName,\n DB_PORT: String(port),\n },\n options.force\n );\n logger.success('Created docker-compose.neuron.yml');\n }\n\n await writeTemplateFile(\n path.join(process.cwd(), '.env.neuron.local'),\n ENV_TEMPLATE,\n {},\n options.force\n );\n logger.success('Created .env.neuron.local');\n\n if (!options.skipApi) {\n const apiPath = path.join(process.cwd(), options.appDir, 'api', 'neuron', '[...path]');\n await fs.mkdir(apiPath, { recursive: true });\n await fs.writeFile(path.join(apiPath, 'route.ts'), API_ROUTE_TEMPLATE, 'utf8');\n logger.success('Created Next.js API route stub');\n }\n\n logger.info('Initialization complete.');\n });\n","import path from 'node:path';\nimport { pathToFileURL } from 'node:url';\nimport fs from 'node:fs/promises';\nimport type { NeuronConfig } from '../../core/types/settings';\n\nexport interface CliConfig {\n repoName: string;\n port: number;\n containerName?: string;\n databaseUrl?: string;\n databaseUser?: string;\n databasePassword?: string;\n databaseName?: string;\n}\n\nexport async function loadNeuronConfig(): Promise<NeuronConfig | null> {\n const configPath = path.resolve('neuron.config.ts');\n try {\n await fs.access(configPath);\n } catch {\n return null;\n }\n\n try {\n const module = await import(pathToFileURL(configPath).toString());\n return module.default ?? module;\n } catch (error) {\n throw new Error(\n `Unable to load neuron.config.ts. Consider transpiling or using a JS config. ${String(error)}`\n );\n }\n}\n\nexport async function resolveCliConfig(overrides?: Partial<CliConfig>): Promise<CliConfig> {\n const repoName = overrides?.repoName ?? path.basename(process.cwd());\n let config: NeuronConfig | null = null;\n\n try {\n config = await loadNeuronConfig();\n } catch {\n config = null;\n }\n\n return {\n repoName,\n port:\n overrides?.port ??\n config?.database?.port ??\n (process.env.DB_PORT ? Number(process.env.DB_PORT) : 5433),\n containerName: overrides?.containerName ?? config?.database?.containerName,\n databaseUrl: overrides?.databaseUrl ?? config?.database?.url ?? process.env.DATABASE_URL,\n databaseUser: overrides?.databaseUser ?? config?.database?.user ?? process.env.DB_USER,\n databasePassword:\n overrides?.databasePassword ?? config?.database?.password ?? process.env.DB_PASSWORD,\n databaseName: overrides?.databaseName ?? config?.database?.database ?? process.env.DB_NAME,\n };\n}\n","import { createInterface } from 'node:readline/promises';\nimport { stdin as input, stdout as output } from 'node:process';\n\nexport async function confirmPrompt(message: string): Promise<boolean> {\n const rl = createInterface({ input, output });\n const answer = await rl.question(`${message} (y/N): `);\n rl.close();\n return answer.trim().toLowerCase() === 'y';\n}\n","type SpinnerState = 'running' | 'stopped';\n\nexport class Spinner {\n private state: SpinnerState = 'stopped';\n private intervalId: NodeJS.Timeout | null = null;\n private frames = ['-', '\\\\', '|', '/'];\n private frameIndex = 0;\n\n constructor(private message: string) {}\n\n start(): void {\n if (this.state === 'running') return;\n this.state = 'running';\n this.intervalId = setInterval(() => {\n const frame = this.frames[this.frameIndex % this.frames.length];\n this.frameIndex += 1;\n process.stdout.write(`\\r${frame} ${this.message}`);\n }, 120);\n }\n\n stop(success = true, finalMessage?: string): void {\n if (this.intervalId) {\n clearInterval(this.intervalId);\n }\n this.state = 'stopped';\n const symbol = success ? '✓' : '✗';\n process.stdout.write(`\\r${symbol} ${finalMessage ?? this.message}\\n`);\n }\n}\n","import { Command } from 'commander';\nimport { DockerManager } from '../../storage/docker-manager';\nimport { Database } from '../../storage/database';\nimport { MigrationRunner } from '../../storage/migrations/runner';\nimport { resolveCliConfig } from '../utils/config';\nimport { logger } from '../utils/logger';\nimport { confirmPrompt } from '../utils/prompts';\nimport { Spinner } from '../utils/spinner';\n\nconst buildConnectionString = (config: {\n databaseUrl?: string;\n databaseUser?: string;\n databasePassword?: string;\n databaseName?: string;\n port: number;\n}) => {\n if (config.databaseUrl) return config.databaseUrl;\n const user = config.databaseUser ?? 'neuron';\n const password = config.databasePassword ?? 'neuron_dev';\n const database = config.databaseName ?? 'neuron_web';\n return `postgresql://${user}:${password}@localhost:${config.port}/${database}`;\n};\n\nexport const dbCommand = new Command('db')\n .description('Database management commands')\n .addCommand(\n new Command('up')\n .description('Start PostgreSQL container')\n .option('--port <port>', 'Override port')\n .option('--force-recreate', 'Force recreate container')\n .option('--wait', 'Wait for readiness', true)\n .action(async (options) => {\n const config = await resolveCliConfig({\n port: options.port ? Number(options.port) : undefined,\n });\n const docker = new DockerManager({\n repoName: config.repoName,\n port: config.port,\n containerName: config.containerName,\n user: config.databaseUser,\n password: config.databasePassword,\n database: config.databaseName,\n });\n const spinner = new Spinner('Starting PostgreSQL container');\n spinner.start();\n await docker.start({\n forceRecreate: options.forceRecreate,\n waitForReady: options.wait,\n });\n spinner.stop(true, 'Database ready');\n const connectionString = await docker.getConnectionString();\n logger.info(`Connection string: ${connectionString}`);\n })\n )\n .addCommand(\n new Command('down')\n .description('Stop PostgreSQL container')\n .option('--remove-volumes', 'Remove volumes (destructive)')\n .action(async (options) => {\n const config = await resolveCliConfig();\n const docker = new DockerManager({\n repoName: config.repoName,\n port: config.port,\n containerName: config.containerName,\n });\n await docker.stop({ removeVolumes: options.removeVolumes });\n logger.success('Database container stopped');\n })\n )\n .addCommand(\n new Command('migrate')\n .description('Run migrations')\n .option('--status', 'Show status only')\n .option('--rollback <count>', 'Rollback N migrations')\n .option('--to <version>', 'Migrate to specific version')\n .option('--dry-run', 'Show SQL without executing')\n .action(async (options) => {\n const config = await resolveCliConfig();\n const db = new Database({\n connectionString: buildConnectionString(config),\n });\n const runner = new MigrationRunner(db);\n\n if (options.status) {\n const status = await runner.getStatus();\n status.forEach((item) => {\n logger.info(`${item.version} ${item.name} - ${item.status}`);\n });\n return;\n }\n\n if (options.dryRun) {\n const sql = await runner.dryRun(options.rollback ? 'down' : 'up');\n logger.info(sql.join('\\n\\n'));\n return;\n }\n\n if (options.rollback) {\n await runner.down({ count: Number(options.rollback) });\n logger.success('Rollback complete');\n return;\n }\n\n await runner.up({ to: options.to });\n logger.success('Migrations complete');\n })\n )\n .addCommand(\n new Command('status')\n .description('Show database status')\n .option('--json', 'Output JSON')\n .option('--verbose', 'Include stats')\n .action(async (options) => {\n const config = await resolveCliConfig();\n const docker = new DockerManager({\n repoName: config.repoName,\n port: config.port,\n containerName: config.containerName,\n });\n const health = await docker.healthCheck();\n\n if (options.json) {\n console.log(JSON.stringify(health, null, 2));\n return;\n }\n\n logger.info(`Container running: ${health.containerRunning}`);\n logger.info(`Database ready: ${health.databaseReady}`);\n if (options.verbose) {\n const stats = await docker.getStats();\n logger.info(`Stats: ${JSON.stringify(stats)}`);\n }\n })\n )\n .addCommand(\n new Command('reset')\n .description('Reset database schema')\n .option('--confirm', 'Skip confirmation prompt')\n .action(async (options) => {\n if (!options.confirm) {\n const confirmed = await confirmPrompt('This will drop and reapply all migrations. Continue?');\n if (!confirmed) return;\n }\n const config = await resolveCliConfig();\n const db = new Database({\n connectionString: buildConnectionString(config),\n });\n const runner = new MigrationRunner(db);\n await runner.reset();\n logger.success('Database reset complete');\n })\n )\n .addCommand(\n new Command('seed')\n .description('Seed database with sample data')\n .option('--file <path>', 'Custom seed file')\n .option('--clear', 'Clear before seeding')\n .option('--count <n>', 'Number of example nodes', '10')\n .action(async (options) => {\n const config = await resolveCliConfig();\n const db = new Database({\n connectionString: buildConnectionString(config),\n });\n if (options.clear) {\n await db.execute('DELETE FROM edges');\n await db.execute('DELETE FROM nodes');\n }\n const count = Number(options.count ?? 10);\n for (let i = 0; i < count; i += 1) {\n await db.execute(\n 'INSERT INTO nodes (slug, label, node_type, domain, metadata) VALUES ($1, $2, $3, $4, $5)',\n [`seed-${i + 1}`, `Seed Node ${i + 1}`, 'concept', 'general', {}]\n );\n }\n logger.success('Seed data inserted');\n })\n );\n","import { Command } from 'commander';\nimport { Database } from '../../storage/database';\nimport { resolveCliConfig } from '../utils/config';\nimport { logger } from '../utils/logger';\nimport { EventBus } from '../../core/events/event-bus';\nimport { EmbeddingsService } from '../../core/analysis/embeddings-service';\nimport { ClusteringEngine } from '../../core/analysis/clustering-engine';\nimport { RelationshipEngine } from '../../core/analysis/relationship-engine';\nimport { AnalysisPipeline } from '../../core/analysis/pipeline';\n\nconst buildConnectionString = (config: {\n databaseUrl?: string;\n databaseUser?: string;\n databasePassword?: string;\n databaseName?: string;\n port: number;\n}) => {\n if (config.databaseUrl) return config.databaseUrl;\n const user = config.databaseUser ?? 'neuron';\n const password = config.databasePassword ?? 'neuron_dev';\n const database = config.databaseName ?? 'neuron_web';\n return `postgresql://${user}:${password}@localhost:${config.port}/${database}`;\n};\n\nasync function buildPipeline(): Promise<AnalysisPipeline> {\n const config = await resolveCliConfig();\n const db = new Database({ connectionString: buildConnectionString(config) });\n const events = new EventBus();\n\n const embeddings = new EmbeddingsService(\n {\n openaiApiKey: process.env.OPENAI_API_KEY ?? '',\n model: 'text-embedding-3-small',\n batchSize: 20,\n rateLimit: 60,\n cacheTTL: 86400,\n maxRetries: 3,\n },\n db\n );\n\n const clustering = new ClusteringEngine(db, embeddings);\n const relationships = new RelationshipEngine(db, {\n model: 'gpt-4o-mini',\n minConfidence: 0.7,\n maxPerNode: 10,\n similarityThreshold: 0.75,\n includeExisting: false,\n batchSize: 10,\n rateLimit: 30,\n });\n\n return new AnalysisPipeline(db, embeddings, clustering, relationships, events);\n}\n\nexport const analyzeCommand = new Command('analyze')\n .description('Analysis commands')\n .addCommand(\n new Command('embeddings')\n .description('Generate embeddings')\n .option('--node-ids <ids>', 'Comma-separated node IDs')\n .option('--force', 'Regenerate existing')\n .action(async (options) => {\n const pipeline = await buildPipeline();\n const nodeIds = options.nodeIds ? options.nodeIds.split(',') : undefined;\n await pipeline.runEmbeddings({ nodeIds, forceRecompute: options.force });\n logger.success('Embeddings complete');\n })\n )\n .addCommand(\n new Command('cluster')\n .description('Run clustering')\n .option('--count <n>', 'Number of clusters')\n .option('--algorithm <alg>', 'kmeans, dbscan, hierarchical', 'kmeans')\n .action(async (options) => {\n const pipeline = await buildPipeline();\n await pipeline.runClustering({\n clusterCount: options.count ? Number(options.count) : undefined,\n clusteringAlgorithm: options.algorithm,\n });\n logger.success('Clustering complete');\n })\n )\n .addCommand(\n new Command('relationships')\n .description('Infer relationships')\n .option('--threshold <n>', 'Min confidence (0-1)', '0.7')\n .option('--dry-run', 'Show without saving')\n .action(async (options) => {\n const pipeline = await buildPipeline();\n await pipeline.runRelationships({\n relationshipThreshold: Number(options.threshold),\n });\n logger.success('Relationship inference complete');\n })\n )\n .addCommand(\n new Command('full')\n .description('Run full analysis pipeline')\n .option('--force', 'Force recompute all')\n .action(async (options) => {\n const pipeline = await buildPipeline();\n await pipeline.runFull({ forceRecompute: options.force });\n logger.success('Analysis pipeline complete');\n })\n );\n","import { Command } from 'commander';\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport { DockerManager } from '../../storage/docker-manager';\nimport { Database } from '../../storage/database';\nimport { MigrationRunner } from '../../storage/migrations/runner';\nimport { resolveCliConfig } from '../utils/config';\nimport { logger } from '../utils/logger';\n\nconst buildConnectionString = (config: {\n databaseUrl?: string;\n databaseUser?: string;\n databasePassword?: string;\n databaseName?: string;\n port: number;\n}) => {\n if (config.databaseUrl) return config.databaseUrl;\n const user = config.databaseUser ?? 'neuron';\n const password = config.databasePassword ?? 'neuron_dev';\n const database = config.databaseName ?? 'neuron_web';\n return `postgresql://${user}:${password}@localhost:${config.port}/${database}`;\n};\n\nexport const validateCommand = new Command('validate')\n .description('Validate configuration and setup')\n .option('--fix', 'Attempt to fix issues')\n .option('--verbose', 'Show detailed validation')\n .action(async (options) => {\n const config = await resolveCliConfig();\n let hasError = false;\n\n const configPath = path.resolve('neuron.config.ts');\n try {\n await fs.access(configPath);\n logger.success('neuron.config.ts exists');\n } catch {\n hasError = true;\n logger.error('neuron.config.ts not found');\n }\n\n try {\n const docker = new DockerManager({ repoName: config.repoName, port: config.port });\n const health = await docker.healthCheck();\n logger.info(`Docker container running: ${health.containerRunning}`);\n logger.info(`Database ready: ${health.databaseReady}`);\n } catch (error) {\n hasError = true;\n logger.error(`Docker check failed: ${String(error)}`);\n }\n\n try {\n const db = new Database({ connectionString: buildConnectionString(config) });\n await db.connect();\n logger.success('Database connection ok');\n const runner = new MigrationRunner(db);\n const pending = await runner.getPending();\n if (pending.length > 0) {\n logger.warn(`Pending migrations: ${pending.map((m) => m.version).join(', ')}`);\n } else {\n logger.success('Migrations up to date');\n }\n } catch (error) {\n hasError = true;\n logger.error(`Database check failed: ${String(error)}`);\n }\n\n if (!process.env.OPENAI_API_KEY) {\n logger.warn('OPENAI_API_KEY not set');\n if (options.fix) {\n logger.info('Set OPENAI_API_KEY in your environment to enable analysis');\n }\n }\n\n if (hasError) {\n process.exitCode = 1;\n }\n });\n","import { Command } from 'commander';\nimport fs from 'node:fs/promises';\nimport path from 'node:path';\nimport { loadNeuronConfig } from '../utils/config';\nimport { logger } from '../utils/logger';\n\nconst CONFIG_FILE = path.resolve('neuron.config.ts');\n\nconst serializeConfig = (config: unknown): string => `import { defineNeuronConfig } from '@omiron33/omi-neuron-web';\\n\\nexport default defineNeuronConfig(${JSON.stringify(\n config,\n null,\n 2\n)});\\n`;\n\nconst getNestedValue = (obj: Record<string, unknown>, key: string): unknown => {\n return key.split('.').reduce((acc, part) => {\n if (acc && typeof acc === 'object' && part in acc) {\n return (acc as Record<string, unknown>)[part];\n }\n return undefined;\n }, obj as unknown);\n};\n\nconst setNestedValue = (obj: Record<string, unknown>, key: string, value: unknown): void => {\n const parts = key.split('.');\n let current = obj;\n for (let i = 0; i < parts.length - 1; i += 1) {\n const part = parts[i];\n if (!current[part] || typeof current[part] !== 'object') {\n current[part] = {};\n }\n current = current[part] as Record<string, unknown>;\n }\n current[parts[parts.length - 1]] = value;\n};\n\nexport const configCommand = new Command('config')\n .description('Manage neuron.config.ts')\n .addCommand(\n new Command('get')\n .argument('<key>', 'Dot path key')\n .action(async (key) => {\n const config = await loadNeuronConfig();\n if (!config) {\n logger.error('neuron.config.ts not found');\n return;\n }\n const value = getNestedValue(config as unknown as Record<string, unknown>, key);\n console.log(JSON.stringify(value, null, 2));\n })\n )\n .addCommand(\n new Command('set')\n .argument('<key>', 'Dot path key')\n .argument('<value>', 'Value (JSON)')\n .action(async (key, value) => {\n const config = await loadNeuronConfig();\n if (!config) {\n logger.error('neuron.config.ts not found');\n return;\n }\n const parsed = JSON.parse(value);\n const updated = { ...(config as unknown as Record<string, unknown>) };\n setNestedValue(updated, key, parsed);\n await fs.writeFile(CONFIG_FILE, serializeConfig(updated), 'utf8');\n logger.success(`Updated ${key}`);\n })\n )\n .addCommand(\n new Command('list').action(async () => {\n const config = await loadNeuronConfig();\n if (!config) {\n logger.error('neuron.config.ts not found');\n return;\n }\n console.log(JSON.stringify(config, null, 2));\n })\n )\n .addCommand(\n new Command('reset')\n .option('--section <section>', 'Section to reset')\n .action(async (options) => {\n const config = await loadNeuronConfig();\n if (!config) {\n logger.error('neuron.config.ts not found');\n return;\n }\n const updated = { ...(config as unknown as Record<string, unknown>) };\n if (options.section) {\n delete updated[options.section];\n } else {\n for (const key of Object.keys(updated)) {\n delete updated[key];\n }\n }\n await fs.writeFile(CONFIG_FILE, serializeConfig(updated), 'utf8');\n logger.success('Config reset');\n })\n );\n","#!/usr/bin/env node\nimport { program } from 'commander';\nimport { initCommand } from './commands/init';\nimport { dbCommand } from './commands/db';\nimport { analyzeCommand } from './commands/analyze';\nimport { validateCommand } from './commands/validate';\nimport { configCommand } from './commands/config';\n\nprogram\n .name('omi-neuron')\n .description('CLI for omi-neuron-web library')\n .version('0.1.0');\n\nprogram.addCommand(initCommand);\nprogram.addCommand(dbCommand);\nprogram.addCommand(analyzeCommand);\nprogram.addCommand(validateCommand);\nprogram.addCommand(configCommand);\n\nprogram.parse();\n\n"]}
package/dist/index.cjs CHANGED
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkRTSFO7BW_cjs = require('./chunk-RTSFO7BW.cjs');
3
+ var chunk2WP2AEZC_cjs = require('./chunk-2WP2AEZC.cjs');
4
+ var chunkOBZGUYGW_cjs = require('./chunk-OBZGUYGW.cjs');
4
5
  var chunkFXKXMSLY_cjs = require('./chunk-FXKXMSLY.cjs');
5
6
  var chunkCOO66N7H_cjs = require('./chunk-COO66N7H.cjs');
6
7
  var chunkBSOSHBDR_cjs = require('./chunk-BSOSHBDR.cjs');
@@ -96,7 +97,7 @@ var DataProcessor = class {
96
97
  content,
97
98
  metadata
98
99
  };
99
- return chunkRTSFO7BW_cjs.nodeCreateSchema.parse(node);
100
+ return chunkOBZGUYGW_cjs.nodeCreateSchema.parse(node);
100
101
  }
101
102
  processBatch(items) {
102
103
  const nodes = [];
@@ -560,11 +561,11 @@ var NeuronApiClient = class {
560
561
  var buildDefaultConfig = (overrides) => ({
561
562
  instance: {
562
563
  name: "default",
563
- version: "0.1.0",
564
+ version: "0.1.1",
564
565
  repoName: "omi-neuron-web"
565
566
  },
566
- visualization: { ...chunkRTSFO7BW_cjs.DEFAULT_VISUALIZATION_SETTINGS, ...overrides?.visualization ?? {} },
567
- analysis: { ...chunkRTSFO7BW_cjs.DEFAULT_ANALYSIS_SETTINGS, ...overrides?.analysis ?? {} },
567
+ visualization: { ...chunkOBZGUYGW_cjs.DEFAULT_VISUALIZATION_SETTINGS, ...overrides?.visualization ?? {} },
568
+ analysis: { ...chunkOBZGUYGW_cjs.DEFAULT_ANALYSIS_SETTINGS, ...overrides?.analysis ?? {} },
568
569
  nodeTypes: overrides?.nodeTypes ?? [],
569
570
  domains: overrides?.domains ?? [],
570
571
  relationshipTypes: overrides?.relationshipTypes ?? [],
@@ -651,167 +652,171 @@ function NeuronWebProvider({ children, config }) {
651
652
  }
652
653
 
653
654
  // src/index.ts
654
- var VERSION = "0.1.0";
655
+ var VERSION = "0.1.1";
655
656
 
657
+ Object.defineProperty(exports, "NeuronWeb", {
658
+ enumerable: true,
659
+ get: function () { return chunk2WP2AEZC_cjs.NeuronWeb; }
660
+ });
656
661
  Object.defineProperty(exports, "DEFAULT_ANALYSIS_SETTINGS", {
657
662
  enumerable: true,
658
- get: function () { return chunkRTSFO7BW_cjs.DEFAULT_ANALYSIS_SETTINGS; }
663
+ get: function () { return chunkOBZGUYGW_cjs.DEFAULT_ANALYSIS_SETTINGS; }
659
664
  });
660
665
  Object.defineProperty(exports, "DEFAULT_VISUALIZATION_SETTINGS", {
661
666
  enumerable: true,
662
- get: function () { return chunkRTSFO7BW_cjs.DEFAULT_VISUALIZATION_SETTINGS; }
667
+ get: function () { return chunkOBZGUYGW_cjs.DEFAULT_VISUALIZATION_SETTINGS; }
663
668
  });
664
669
  Object.defineProperty(exports, "ScoringEngine", {
665
670
  enumerable: true,
666
- get: function () { return chunkRTSFO7BW_cjs.ScoringEngine; }
671
+ get: function () { return chunkOBZGUYGW_cjs.ScoringEngine; }
667
672
  });
668
673
  Object.defineProperty(exports, "analysisOptionsSchema", {
669
674
  enumerable: true,
670
- get: function () { return chunkRTSFO7BW_cjs.analysisOptionsSchema; }
675
+ get: function () { return chunkOBZGUYGW_cjs.analysisOptionsSchema; }
671
676
  });
672
677
  Object.defineProperty(exports, "analysisRequestSchema", {
673
678
  enumerable: true,
674
- get: function () { return chunkRTSFO7BW_cjs.analysisRequestSchema; }
679
+ get: function () { return chunkOBZGUYGW_cjs.analysisRequestSchema; }
675
680
  });
676
681
  Object.defineProperty(exports, "analysisSettingsSchema", {
677
682
  enumerable: true,
678
- get: function () { return chunkRTSFO7BW_cjs.analysisSettingsSchema; }
683
+ get: function () { return chunkOBZGUYGW_cjs.analysisSettingsSchema; }
679
684
  });
680
685
  Object.defineProperty(exports, "buildDelete", {
681
686
  enumerable: true,
682
- get: function () { return chunkRTSFO7BW_cjs.buildDelete; }
687
+ get: function () { return chunkOBZGUYGW_cjs.buildDelete; }
683
688
  });
684
689
  Object.defineProperty(exports, "buildInsert", {
685
690
  enumerable: true,
686
- get: function () { return chunkRTSFO7BW_cjs.buildInsert; }
691
+ get: function () { return chunkOBZGUYGW_cjs.buildInsert; }
687
692
  });
688
693
  Object.defineProperty(exports, "buildSelect", {
689
694
  enumerable: true,
690
- get: function () { return chunkRTSFO7BW_cjs.buildSelect; }
695
+ get: function () { return chunkOBZGUYGW_cjs.buildSelect; }
691
696
  });
692
697
  Object.defineProperty(exports, "buildUpdate", {
693
698
  enumerable: true,
694
- get: function () { return chunkRTSFO7BW_cjs.buildUpdate; }
699
+ get: function () { return chunkOBZGUYGW_cjs.buildUpdate; }
695
700
  });
696
701
  Object.defineProperty(exports, "buildWhereClause", {
697
702
  enumerable: true,
698
- get: function () { return chunkRTSFO7BW_cjs.buildWhereClause; }
703
+ get: function () { return chunkOBZGUYGW_cjs.buildWhereClause; }
699
704
  });
700
705
  Object.defineProperty(exports, "createDatabase", {
701
706
  enumerable: true,
702
- get: function () { return chunkRTSFO7BW_cjs.createDatabase; }
707
+ get: function () { return chunkOBZGUYGW_cjs.createDatabase; }
703
708
  });
704
709
  Object.defineProperty(exports, "createDatabaseFromEnv", {
705
710
  enumerable: true,
706
- get: function () { return chunkRTSFO7BW_cjs.createDatabaseFromEnv; }
711
+ get: function () { return chunkOBZGUYGW_cjs.createDatabaseFromEnv; }
707
712
  });
708
713
  Object.defineProperty(exports, "databaseSettingsSchema", {
709
714
  enumerable: true,
710
- get: function () { return chunkRTSFO7BW_cjs.databaseSettingsSchema; }
715
+ get: function () { return chunkOBZGUYGW_cjs.databaseSettingsSchema; }
711
716
  });
712
717
  Object.defineProperty(exports, "domainConfigSchema", {
713
718
  enumerable: true,
714
- get: function () { return chunkRTSFO7BW_cjs.domainConfigSchema; }
719
+ get: function () { return chunkOBZGUYGW_cjs.domainConfigSchema; }
715
720
  });
716
721
  Object.defineProperty(exports, "edgeCreateSchema", {
717
722
  enumerable: true,
718
- get: function () { return chunkRTSFO7BW_cjs.edgeCreateSchema; }
723
+ get: function () { return chunkOBZGUYGW_cjs.edgeCreateSchema; }
719
724
  });
720
725
  Object.defineProperty(exports, "edgeEvidenceSchema", {
721
726
  enumerable: true,
722
- get: function () { return chunkRTSFO7BW_cjs.edgeEvidenceSchema; }
727
+ get: function () { return chunkOBZGUYGW_cjs.edgeEvidenceSchema; }
723
728
  });
724
729
  Object.defineProperty(exports, "edgeFilterSchema", {
725
730
  enumerable: true,
726
- get: function () { return chunkRTSFO7BW_cjs.edgeFilterSchema; }
731
+ get: function () { return chunkOBZGUYGW_cjs.edgeFilterSchema; }
727
732
  });
728
733
  Object.defineProperty(exports, "edgeUpdateSchema", {
729
734
  enumerable: true,
730
- get: function () { return chunkRTSFO7BW_cjs.edgeUpdateSchema; }
735
+ get: function () { return chunkOBZGUYGW_cjs.edgeUpdateSchema; }
731
736
  });
732
737
  Object.defineProperty(exports, "expandGraphRequestSchema", {
733
738
  enumerable: true,
734
- get: function () { return chunkRTSFO7BW_cjs.expandGraphRequestSchema; }
739
+ get: function () { return chunkOBZGUYGW_cjs.expandGraphRequestSchema; }
735
740
  });
736
741
  Object.defineProperty(exports, "findPathRequestSchema", {
737
742
  enumerable: true,
738
- get: function () { return chunkRTSFO7BW_cjs.findPathRequestSchema; }
743
+ get: function () { return chunkOBZGUYGW_cjs.findPathRequestSchema; }
739
744
  });
740
745
  Object.defineProperty(exports, "findSimilarRequestSchema", {
741
746
  enumerable: true,
742
- get: function () { return chunkRTSFO7BW_cjs.findSimilarRequestSchema; }
747
+ get: function () { return chunkOBZGUYGW_cjs.findSimilarRequestSchema; }
743
748
  });
744
749
  Object.defineProperty(exports, "getDatabase", {
745
750
  enumerable: true,
746
- get: function () { return chunkRTSFO7BW_cjs.getDatabase; }
751
+ get: function () { return chunkOBZGUYGW_cjs.getDatabase; }
747
752
  });
748
753
  Object.defineProperty(exports, "getGraphParamsSchema", {
749
754
  enumerable: true,
750
- get: function () { return chunkRTSFO7BW_cjs.getGraphParamsSchema; }
755
+ get: function () { return chunkOBZGUYGW_cjs.getGraphParamsSchema; }
751
756
  });
752
757
  Object.defineProperty(exports, "listEdgesParamsSchema", {
753
758
  enumerable: true,
754
- get: function () { return chunkRTSFO7BW_cjs.listEdgesParamsSchema; }
759
+ get: function () { return chunkOBZGUYGW_cjs.listEdgesParamsSchema; }
755
760
  });
756
761
  Object.defineProperty(exports, "listNodesParamsSchema", {
757
762
  enumerable: true,
758
- get: function () { return chunkRTSFO7BW_cjs.listNodesParamsSchema; }
763
+ get: function () { return chunkOBZGUYGW_cjs.listNodesParamsSchema; }
759
764
  });
760
765
  Object.defineProperty(exports, "neuronConfigSchema", {
761
766
  enumerable: true,
762
- get: function () { return chunkRTSFO7BW_cjs.neuronConfigSchema; }
767
+ get: function () { return chunkOBZGUYGW_cjs.neuronConfigSchema; }
763
768
  });
764
769
  Object.defineProperty(exports, "neuronSettingsSchema", {
765
770
  enumerable: true,
766
- get: function () { return chunkRTSFO7BW_cjs.neuronSettingsSchema; }
771
+ get: function () { return chunkOBZGUYGW_cjs.neuronSettingsSchema; }
767
772
  });
768
773
  Object.defineProperty(exports, "neuronSettingsUpdateSchema", {
769
774
  enumerable: true,
770
- get: function () { return chunkRTSFO7BW_cjs.neuronSettingsUpdateSchema; }
775
+ get: function () { return chunkOBZGUYGW_cjs.neuronSettingsUpdateSchema; }
771
776
  });
772
777
  Object.defineProperty(exports, "nodeBatchCreateSchema", {
773
778
  enumerable: true,
774
- get: function () { return chunkRTSFO7BW_cjs.nodeBatchCreateSchema; }
779
+ get: function () { return chunkOBZGUYGW_cjs.nodeBatchCreateSchema; }
775
780
  });
776
781
  Object.defineProperty(exports, "nodeCreateSchema", {
777
782
  enumerable: true,
778
- get: function () { return chunkRTSFO7BW_cjs.nodeCreateSchema; }
783
+ get: function () { return chunkOBZGUYGW_cjs.nodeCreateSchema; }
779
784
  });
780
785
  Object.defineProperty(exports, "nodeFilterSchema", {
781
786
  enumerable: true,
782
- get: function () { return chunkRTSFO7BW_cjs.nodeFilterSchema; }
787
+ get: function () { return chunkOBZGUYGW_cjs.nodeFilterSchema; }
783
788
  });
784
789
  Object.defineProperty(exports, "nodeTierSchema", {
785
790
  enumerable: true,
786
- get: function () { return chunkRTSFO7BW_cjs.nodeTierSchema; }
791
+ get: function () { return chunkOBZGUYGW_cjs.nodeTierSchema; }
787
792
  });
788
793
  Object.defineProperty(exports, "nodeTypeConfigSchema", {
789
794
  enumerable: true,
790
- get: function () { return chunkRTSFO7BW_cjs.nodeTypeConfigSchema; }
795
+ get: function () { return chunkOBZGUYGW_cjs.nodeTypeConfigSchema; }
791
796
  });
792
797
  Object.defineProperty(exports, "nodeUpdateSchema", {
793
798
  enumerable: true,
794
- get: function () { return chunkRTSFO7BW_cjs.nodeUpdateSchema; }
799
+ get: function () { return chunkOBZGUYGW_cjs.nodeUpdateSchema; }
795
800
  });
796
801
  Object.defineProperty(exports, "paginationSchema", {
797
802
  enumerable: true,
798
- get: function () { return chunkRTSFO7BW_cjs.paginationSchema; }
803
+ get: function () { return chunkOBZGUYGW_cjs.paginationSchema; }
799
804
  });
800
805
  Object.defineProperty(exports, "relationshipTypeConfigSchema", {
801
806
  enumerable: true,
802
- get: function () { return chunkRTSFO7BW_cjs.relationshipTypeConfigSchema; }
807
+ get: function () { return chunkOBZGUYGW_cjs.relationshipTypeConfigSchema; }
803
808
  });
804
809
  Object.defineProperty(exports, "resetDatabaseSingleton", {
805
810
  enumerable: true,
806
- get: function () { return chunkRTSFO7BW_cjs.resetDatabaseSingleton; }
811
+ get: function () { return chunkOBZGUYGW_cjs.resetDatabaseSingleton; }
807
812
  });
808
813
  Object.defineProperty(exports, "semanticSearchRequestSchema", {
809
814
  enumerable: true,
810
- get: function () { return chunkRTSFO7BW_cjs.semanticSearchRequestSchema; }
815
+ get: function () { return chunkOBZGUYGW_cjs.semanticSearchRequestSchema; }
811
816
  });
812
817
  Object.defineProperty(exports, "visualizationSettingsSchema", {
813
818
  enumerable: true,
814
- get: function () { return chunkRTSFO7BW_cjs.visualizationSettingsSchema; }
819
+ get: function () { return chunkOBZGUYGW_cjs.visualizationSettingsSchema; }
815
820
  });
816
821
  Object.defineProperty(exports, "DockerManager", {
817
822
  enumerable: true,