- Obsidian vault importer with wikilink → edge conversion - Markdown folder importer with frontmatter parsing - Markdown exporter with wikilinks and frontmatter - JSON-LD linked data exporter - Database backup/restore functionality - CLI: import, backup, restore-backup, list-backups - MCP tools: memory_import, memory_backup, memory_export_markdown, memory_export_jsonld
75 lines
2.8 KiB
JavaScript
75 lines
2.8 KiB
JavaScript
#!/usr/bin/env node
|
|
import { Command } from 'commander';
|
|
import { addCommand } from './commands/add';
|
|
import { queryCommand } from './commands/query';
|
|
import { linkCommand } from './commands/link';
|
|
import { showCommand } from './commands/show';
|
|
import { listCommand } from './commands/list';
|
|
import { updateCommand } from './commands/update';
|
|
import { removeCommand } from './commands/remove';
|
|
import { graphCommand } from './commands/graph';
|
|
import { serveCommand } from './commands/serve';
|
|
import { decayCommand } from './commands/decay';
|
|
import { childrenCommand } from './commands/children';
|
|
import { historyCommand } from './commands/history';
|
|
import { diffCommand } from './commands/diff';
|
|
import { restoreCommand } from './commands/restore';
|
|
import { captureCommand, captureHookCommand, configCommand } from './commands/capture';
|
|
import { contextCommand, contextHookCommand } from './commands/context';
|
|
import { indexCommand } from './commands/index-cmd';
|
|
import { journalCommand, journalAliasCommand, quickCaptureCommand } from './commands/journal';
|
|
import { ingestCommand, clipCommand } from './commands/ingest';
|
|
import { exportCommand, vizCommand } from './commands/export';
|
|
import { importCommand } from './commands/import';
|
|
import { backupCommand, restoreDbCommand, listBackupsCommand } from './commands/backup-cmd';
|
|
import { closeDb } from '../core/db';
|
|
|
|
const program = new Command();
|
|
|
|
program
|
|
.name('cortex')
|
|
.description('Cortex — AI project memory & knowledge graph\n\nStore, link, and search project knowledge as a graph of typed nodes.')
|
|
.version('1.0.0');
|
|
|
|
program.addCommand(addCommand);
|
|
program.addCommand(queryCommand);
|
|
program.addCommand(linkCommand);
|
|
program.addCommand(showCommand);
|
|
program.addCommand(listCommand);
|
|
program.addCommand(updateCommand);
|
|
program.addCommand(removeCommand);
|
|
program.addCommand(graphCommand);
|
|
program.addCommand(serveCommand);
|
|
program.addCommand(decayCommand);
|
|
program.addCommand(childrenCommand);
|
|
program.addCommand(historyCommand);
|
|
program.addCommand(diffCommand);
|
|
program.addCommand(restoreCommand);
|
|
program.addCommand(captureCommand);
|
|
program.addCommand(captureHookCommand);
|
|
program.addCommand(contextCommand);
|
|
program.addCommand(contextHookCommand);
|
|
program.addCommand(configCommand);
|
|
program.addCommand(indexCommand);
|
|
program.addCommand(journalCommand);
|
|
program.addCommand(journalAliasCommand);
|
|
program.addCommand(quickCaptureCommand);
|
|
program.addCommand(ingestCommand);
|
|
program.addCommand(clipCommand);
|
|
program.addCommand(exportCommand);
|
|
program.addCommand(vizCommand);
|
|
program.addCommand(importCommand);
|
|
program.addCommand(backupCommand);
|
|
program.addCommand(restoreDbCommand);
|
|
program.addCommand(listBackupsCommand);
|
|
|
|
program.hook('postAction', () => {
|
|
closeDb();
|
|
});
|
|
|
|
program.parseAsync(process.argv).catch((err) => {
|
|
console.error(err);
|
|
closeDb();
|
|
process.exit(1);
|
|
});
|