claude-conversation-memory-mcp 0.3.0 → 0.5.0
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.
- package/.claude-memory-config.example.json +8 -0
- package/.claude-memory-config.example.jsonc +50 -0
- package/README.md +65 -0
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +260 -20
- package/dist/cli/commands.js.map +1 -1
- package/dist/embeddings/ModelRegistry.d.ts +48 -0
- package/dist/embeddings/ModelRegistry.d.ts.map +1 -0
- package/dist/embeddings/ModelRegistry.js +170 -0
- package/dist/embeddings/ModelRegistry.js.map +1 -0
- package/dist/embeddings/providers/OllamaEmbeddings.d.ts +1 -1
- package/dist/embeddings/providers/OllamaEmbeddings.d.ts.map +1 -1
- package/dist/embeddings/providers/OllamaEmbeddings.js +7 -14
- package/dist/embeddings/providers/OllamaEmbeddings.js.map +1 -1
- package/dist/embeddings/providers/OpenAIEmbeddings.d.ts +1 -1
- package/dist/embeddings/providers/OpenAIEmbeddings.d.ts.map +1 -1
- package/dist/embeddings/providers/OpenAIEmbeddings.js +9 -7
- package/dist/embeddings/providers/OpenAIEmbeddings.js.map +1 -1
- package/dist/embeddings/providers/TransformersEmbeddings.d.ts +1 -1
- package/dist/embeddings/providers/TransformersEmbeddings.d.ts.map +1 -1
- package/dist/embeddings/providers/TransformersEmbeddings.js +9 -8
- package/dist/embeddings/providers/TransformersEmbeddings.js.map +1 -1
- package/dist/tools/ToolDefinitions.d.ts +6 -0
- package/dist/tools/ToolDefinitions.d.ts.map +1 -1
- package/dist/tools/ToolDefinitions.js +7 -1
- package/dist/tools/ToolDefinitions.js.map +1 -1
- package/dist/tools/ToolHandlers.d.ts.map +1 -1
- package/dist/tools/ToolHandlers.js +16 -5
- package/dist/tools/ToolHandlers.js.map +1 -1
- package/dist/types/ToolTypes.d.ts +1 -0
- package/dist/types/ToolTypes.d.ts.map +1 -1
- package/dist/utils/ProjectMigration.d.ts +10 -2
- package/dist/utils/ProjectMigration.d.ts.map +1 -1
- package/dist/utils/ProjectMigration.js +131 -23
- package/dist/utils/ProjectMigration.js.map +1 -1
- package/package.json +5 -3
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
{
|
|
2
|
+
"embedding": {
|
|
3
|
+
// Provider: Choose one of "ollama" | "transformers" | "openai"
|
|
4
|
+
// - ollama: Local models via Ollama (fast, private, requires Ollama installed)
|
|
5
|
+
// - transformers: Offline models via Transformers.js (no setup, slower first run)
|
|
6
|
+
// - openai: Cloud API (best quality, requires API key, costs money)
|
|
7
|
+
"provider": "ollama",
|
|
8
|
+
|
|
9
|
+
// Model name: See available models by running `config` command
|
|
10
|
+
//
|
|
11
|
+
// Ollama models (require: ollama pull <model>):
|
|
12
|
+
// - mxbai-embed-large (1024 dims, recommended for quality)
|
|
13
|
+
// - nomic-embed-text (768 dims, fast and good quality)
|
|
14
|
+
// - all-minilm (384 dims, lightweight)
|
|
15
|
+
// - snowflake-arctic-embed (1024 dims, optimized for retrieval)
|
|
16
|
+
//
|
|
17
|
+
// Transformers models (auto-download on first use, no setup):
|
|
18
|
+
// - Xenova/all-MiniLM-L6-v2 (384 dims, default, fastest)
|
|
19
|
+
// - Xenova/all-mpnet-base-v2 (768 dims, better quality)
|
|
20
|
+
// - Xenova/bge-small-en-v1.5 (384 dims, English-optimized)
|
|
21
|
+
// - Xenova/bge-base-en-v1.5 (768 dims, English, higher quality)
|
|
22
|
+
//
|
|
23
|
+
// OpenAI models (require API key):
|
|
24
|
+
// - text-embedding-3-small (1536 dims, $0.020 per 1M tokens)
|
|
25
|
+
// - text-embedding-3-large (3072 dims, $0.130 per 1M tokens, best quality)
|
|
26
|
+
// - text-embedding-ada-002 (1536 dims, legacy)
|
|
27
|
+
"model": "mxbai-embed-large",
|
|
28
|
+
|
|
29
|
+
// Dimensions: Optional - auto-detected based on model name if omitted
|
|
30
|
+
// Only specify if you need to override auto-detection or use a custom model
|
|
31
|
+
// Valid range: 1-10000
|
|
32
|
+
//
|
|
33
|
+
// Common dimensions by model:
|
|
34
|
+
// mxbai-embed-large: 1024
|
|
35
|
+
// nomic-embed-text: 768
|
|
36
|
+
// Xenova/all-MiniLM-L6-v2: 384
|
|
37
|
+
// text-embedding-3-small: 1536
|
|
38
|
+
// text-embedding-3-large: 3072
|
|
39
|
+
"dimensions": 1024,
|
|
40
|
+
|
|
41
|
+
// Base URL: Only for Ollama provider
|
|
42
|
+
// Default: http://localhost:11434
|
|
43
|
+
// Change if Ollama is running on a different host/port
|
|
44
|
+
"baseUrl": "http://localhost:11434"
|
|
45
|
+
|
|
46
|
+
// API Key: Only for OpenAI provider
|
|
47
|
+
// Can also be set via OPENAI_API_KEY environment variable
|
|
48
|
+
// "apiKey": "sk-..."
|
|
49
|
+
}
|
|
50
|
+
}
|
package/README.md
CHANGED
|
@@ -57,6 +57,12 @@ Claude Code CLI is required because it stores conversation history in `~/.claude
|
|
|
57
57
|
npm install -g claude-conversation-memory-mcp
|
|
58
58
|
```
|
|
59
59
|
|
|
60
|
+
**Discover Available Models:**
|
|
61
|
+
After installation, you can see all available embedding models and their dimensions:
|
|
62
|
+
- Run the CLI: `claude-conversation-memory-mcp`
|
|
63
|
+
- Type: `config` to see all available models organized by provider
|
|
64
|
+
- Or check the example config file: `.claude-memory-config.example.jsonc`
|
|
65
|
+
|
|
60
66
|
### Configure Claude Code CLI
|
|
61
67
|
|
|
62
68
|
**MCP Configuration File Priority:**
|
|
@@ -455,6 +461,65 @@ You: "Dry run: migrate from [source] old path [old] new path [new]"
|
|
|
455
461
|
|
|
456
462
|
This shows what would be migrated without actually copying files.
|
|
457
463
|
|
|
464
|
+
### Merge Conversations from Different Projects
|
|
465
|
+
|
|
466
|
+
**NEW in v0.4.0**: Combine conversation history from different projects into one folder using merge mode.
|
|
467
|
+
|
|
468
|
+
**Use case**: You want to merge conversations from `/project-a/drafts/2025-01-05` into your current project `/project-b`.
|
|
469
|
+
|
|
470
|
+
**Step 1: Discover the source folder**
|
|
471
|
+
|
|
472
|
+
```
|
|
473
|
+
You: "Discover old conversations for project path /Users/name/project-a/drafts/2025-01-05"
|
|
474
|
+
```
|
|
475
|
+
|
|
476
|
+
**Step 2: Merge into current project**
|
|
477
|
+
|
|
478
|
+
```
|
|
479
|
+
You: "Merge conversations from /Users/name/.claude/projects/-project-a-drafts-2025-01-05, old path /Users/name/project-a/drafts/2025-01-05, new path /Users/name/project-b, mode merge"
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
Claude will:
|
|
483
|
+
- Copy only **new** conversation files (skip duplicates)
|
|
484
|
+
- Keep target conversations when IDs collide (no data loss)
|
|
485
|
+
- Merge all database entries using INSERT OR IGNORE
|
|
486
|
+
- Create backup of target database before merge
|
|
487
|
+
- Preserve all original source data
|
|
488
|
+
|
|
489
|
+
**Example workflow:**
|
|
490
|
+
|
|
491
|
+
```markdown
|
|
492
|
+
# Scenario: You have conversations from different projects to combine
|
|
493
|
+
|
|
494
|
+
Current project: /Users/alice/main-project (already has 20 conversations)
|
|
495
|
+
Source project: /Users/alice/drafts/experiment (has 10 conversations, 3 overlap with main)
|
|
496
|
+
|
|
497
|
+
You: "Discover old conversations for /Users/alice/drafts/experiment"
|
|
498
|
+
|
|
499
|
+
Claude: Found 1 folder:
|
|
500
|
+
- Folder: -Users-alice-drafts-experiment
|
|
501
|
+
- Original path: /Users/alice/drafts/experiment
|
|
502
|
+
- Conversations: 10
|
|
503
|
+
- Files: 10
|
|
504
|
+
|
|
505
|
+
You: "Merge from /Users/alice/.claude/projects/-Users-alice-drafts-experiment, old path /Users/alice/drafts/experiment, new path /Users/alice/main-project, mode merge"
|
|
506
|
+
|
|
507
|
+
Claude: Successfully merged 7 new conversation files into /Users/alice/.claude/projects/-Users-alice-main-project
|
|
508
|
+
(3 duplicate conversations were skipped to preserve target data)
|
|
509
|
+
Backup created at: .claude-conversations-memory.db.bak
|
|
510
|
+
|
|
511
|
+
# Result: main-project now has 27 conversations (20 original + 7 new from experiment)
|
|
512
|
+
```
|
|
513
|
+
|
|
514
|
+
**Key differences between migrate and merge:**
|
|
515
|
+
|
|
516
|
+
| Feature | Migrate Mode (default) | Merge Mode |
|
|
517
|
+
|---------|----------------------|------------|
|
|
518
|
+
| Target has data | ❌ Rejected (conflict) | ✅ Allowed |
|
|
519
|
+
| Duplicate IDs | Overwrites target | Skips source (keeps target) |
|
|
520
|
+
| Use case | Renamed project | Combine different projects |
|
|
521
|
+
| Backup location | Source folder | Target folder |
|
|
522
|
+
|
|
458
523
|
## 📚 Learn More
|
|
459
524
|
|
|
460
525
|
- **[Tool Examples](docs/TOOL-EXAMPLES.md)** - 50+ natural language examples for each tool
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAiExD;;GAEG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsKxB"}
|
package/dist/cli/commands.js
CHANGED
|
@@ -6,9 +6,11 @@ import Table from "cli-table3";
|
|
|
6
6
|
import { getSQLiteManager } from "../storage/SQLiteManager.js";
|
|
7
7
|
import { showHelp, showCommandHelp } from "./help.js";
|
|
8
8
|
import { ConfigManager } from "../embeddings/ConfigManager.js";
|
|
9
|
+
import { getModelsByProvider, getAllModels, getModelsByQuality, getRecommendedModel, modelExists } from "../embeddings/ModelRegistry.js";
|
|
9
10
|
import { readFileSync } from "fs";
|
|
10
11
|
import { join, dirname } from "path";
|
|
11
12
|
import { fileURLToPath } from "url";
|
|
13
|
+
import prompts from "prompts";
|
|
12
14
|
const __filename = fileURLToPath(import.meta.url);
|
|
13
15
|
const __dirname = dirname(__filename);
|
|
14
16
|
/**
|
|
@@ -169,6 +171,14 @@ export async function executeCommand(input, handlers) {
|
|
|
169
171
|
return chalk.yellow("Usage: config (show current config)\n config <key> <value> (set config value)");
|
|
170
172
|
}
|
|
171
173
|
}
|
|
174
|
+
// Handle models
|
|
175
|
+
if (command === "models") {
|
|
176
|
+
return handleModels(args);
|
|
177
|
+
}
|
|
178
|
+
// Handle select-model (interactive)
|
|
179
|
+
if (command === "select-model" || command === "select") {
|
|
180
|
+
return await handleSelectModel();
|
|
181
|
+
}
|
|
172
182
|
// Handle get
|
|
173
183
|
if (command === "get") {
|
|
174
184
|
if (args.length === 0) {
|
|
@@ -513,10 +523,36 @@ function handleConfigShow() {
|
|
|
513
523
|
output += ` ${chalk.cyan("dimensions")} Embedding dimensions (e.g., 1024)\n`;
|
|
514
524
|
output += ` ${chalk.cyan("baseUrl")} Ollama base URL (default: http://localhost:11434)\n`;
|
|
515
525
|
output += ` ${chalk.cyan("apiKey")} OpenAI API key\n\n`;
|
|
526
|
+
// Show available models by provider using ModelRegistry
|
|
527
|
+
output += chalk.bold("Known Models by Provider:\n\n");
|
|
528
|
+
// Ollama models
|
|
529
|
+
output += chalk.yellow("Ollama (local):\n");
|
|
530
|
+
const ollamaModels = getModelsByProvider("ollama");
|
|
531
|
+
for (const model of ollamaModels) {
|
|
532
|
+
const suffix = model.installation ? ` ${chalk.dim(`(${model.description})`)}` : "";
|
|
533
|
+
output += ` ${model.name.padEnd(30)} ${model.dimensions.toString().padStart(4)} dims${suffix}\n`;
|
|
534
|
+
}
|
|
535
|
+
output += "\n";
|
|
536
|
+
// Transformers models
|
|
537
|
+
output += chalk.yellow("Transformers (offline):\n");
|
|
538
|
+
const transformersModels = getModelsByProvider("transformers");
|
|
539
|
+
for (const model of transformersModels) {
|
|
540
|
+
output += ` ${model.name.padEnd(30)} ${model.dimensions.toString().padStart(4)} dims ${chalk.dim(`(${model.description})`)}\n`;
|
|
541
|
+
}
|
|
542
|
+
output += "\n";
|
|
543
|
+
// OpenAI models
|
|
544
|
+
output += chalk.yellow("OpenAI (cloud):\n");
|
|
545
|
+
const openaiModels = getModelsByProvider("openai");
|
|
546
|
+
for (const model of openaiModels) {
|
|
547
|
+
const costSuffix = model.cost ? ` - ${model.cost}` : "";
|
|
548
|
+
output += ` ${model.name.padEnd(30)} ${model.dimensions.toString().padStart(4)} dims ${chalk.dim(`(${model.description}${costSuffix})`)}\n`;
|
|
549
|
+
}
|
|
550
|
+
output += "\n";
|
|
516
551
|
output += chalk.gray(`Config file location: ${configPath}\n`);
|
|
517
552
|
if (!configExists) {
|
|
518
553
|
output += chalk.yellow("Config file will be created on first 'set' command.\n");
|
|
519
554
|
}
|
|
555
|
+
output += chalk.gray("See example config: .claude-memory-config.example.jsonc\n");
|
|
520
556
|
return output;
|
|
521
557
|
}
|
|
522
558
|
/**
|
|
@@ -544,33 +580,32 @@ function handleConfigGet(key) {
|
|
|
544
580
|
*/
|
|
545
581
|
function handleConfigSet(key, value) {
|
|
546
582
|
try {
|
|
583
|
+
// Validate model name if setting model
|
|
584
|
+
if (key === "model") {
|
|
585
|
+
if (!modelExists(value)) {
|
|
586
|
+
let warning = chalk.yellow(`⚠️ Model '${value}' is not in the registry.\n\n`);
|
|
587
|
+
warning += chalk.gray("This might be a custom model. If so, make sure to also set the correct dimensions.\n\n");
|
|
588
|
+
warning += chalk.cyan("Known models:\n");
|
|
589
|
+
warning += chalk.gray(" Run 'models' to see all available models\n");
|
|
590
|
+
warning += chalk.gray(" Or 'models <provider>' to see provider-specific models\n\n");
|
|
591
|
+
warning += chalk.yellow("Proceeding with custom model...\n\n");
|
|
592
|
+
console.warn(warning);
|
|
593
|
+
}
|
|
594
|
+
}
|
|
547
595
|
ConfigManager.setConfigValue(key, value);
|
|
548
596
|
// Show confirmation with helpful info
|
|
549
597
|
let output = chalk.green(`✓ Config updated: ${key} = ${value}\n\n`);
|
|
550
598
|
// If setting dimensions, suggest matching models
|
|
551
599
|
if (key === "dimensions") {
|
|
552
600
|
const dims = parseInt(value, 10);
|
|
553
|
-
|
|
554
|
-
if (
|
|
555
|
-
output += "
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
output += "
|
|
560
|
-
output += " - Xenova/all-mpnet-base-v2 (transformers)\n";
|
|
561
|
-
}
|
|
562
|
-
else if (dims === 1024) {
|
|
563
|
-
output += " - mxbai-embed-large (ollama) ⭐ default\n";
|
|
564
|
-
output += " - snowflake-arctic-embed (ollama)\n";
|
|
601
|
+
const matchingModels = getAllModels().filter(m => m.dimensions === dims);
|
|
602
|
+
if (matchingModels.length > 0) {
|
|
603
|
+
output += chalk.cyan("Models with matching dimensions:\n");
|
|
604
|
+
for (const model of matchingModels) {
|
|
605
|
+
output += ` - ${model.name} (${model.provider})\n`;
|
|
606
|
+
}
|
|
607
|
+
output += "\n";
|
|
565
608
|
}
|
|
566
|
-
else if (dims === 1536) {
|
|
567
|
-
output += " - text-embedding-3-small (openai)\n";
|
|
568
|
-
output += " - text-embedding-ada-002 (openai)\n";
|
|
569
|
-
}
|
|
570
|
-
else if (dims === 3072) {
|
|
571
|
-
output += " - text-embedding-3-large (openai)\n";
|
|
572
|
-
}
|
|
573
|
-
output += "\n";
|
|
574
609
|
}
|
|
575
610
|
// If setting model, suggest dimensions
|
|
576
611
|
if (key === "model") {
|
|
@@ -587,4 +622,209 @@ function handleConfigSet(key, value) {
|
|
|
587
622
|
return chalk.red(`Error: ${error.message}`);
|
|
588
623
|
}
|
|
589
624
|
}
|
|
625
|
+
/**
|
|
626
|
+
* Handle models command - List, filter, search models
|
|
627
|
+
* Usage:
|
|
628
|
+
* models - List all models
|
|
629
|
+
* models <provider> - Filter by provider (ollama, transformers, openai)
|
|
630
|
+
* models quality <tier> - Filter by quality (low, medium, high, highest)
|
|
631
|
+
* models recommend - Show recommended models for each provider
|
|
632
|
+
*/
|
|
633
|
+
function handleModels(args) {
|
|
634
|
+
let output = "";
|
|
635
|
+
// No args: list all models
|
|
636
|
+
if (args.length === 0) {
|
|
637
|
+
output += chalk.bold("📚 All Available Embedding Models\n\n");
|
|
638
|
+
const allModels = getAllModels();
|
|
639
|
+
output += formatModelsTable(allModels);
|
|
640
|
+
output += "\n";
|
|
641
|
+
output += chalk.gray("💡 Tip: Use 'models <provider>' to filter by provider\n");
|
|
642
|
+
output += chalk.gray(" Or: 'models quality <tier>' to filter by quality\n");
|
|
643
|
+
output += chalk.gray(" Or: 'models recommend' to see recommendations\n");
|
|
644
|
+
return output;
|
|
645
|
+
}
|
|
646
|
+
const subcommand = args[0].toLowerCase();
|
|
647
|
+
// Filter by provider
|
|
648
|
+
if (["ollama", "transformers", "openai"].includes(subcommand)) {
|
|
649
|
+
const models = getModelsByProvider(subcommand);
|
|
650
|
+
output += chalk.bold(`📚 ${capitalize(subcommand)} Models\n\n`);
|
|
651
|
+
output += formatModelsTable(models);
|
|
652
|
+
// Show recommended model for this provider
|
|
653
|
+
const recommended = getRecommendedModel(subcommand);
|
|
654
|
+
if (recommended) {
|
|
655
|
+
output += "\n";
|
|
656
|
+
output += chalk.cyan(`⭐ Recommended: ${recommended.name} (${recommended.dimensions} dims, ${recommended.quality} quality)\n`);
|
|
657
|
+
}
|
|
658
|
+
return output;
|
|
659
|
+
}
|
|
660
|
+
// Filter by quality
|
|
661
|
+
if (subcommand === "quality") {
|
|
662
|
+
if (args.length < 2) {
|
|
663
|
+
return chalk.yellow("Usage: models quality <tier>\nTiers: low, medium, high, highest");
|
|
664
|
+
}
|
|
665
|
+
const quality = args[1].toLowerCase();
|
|
666
|
+
if (!["low", "medium", "high", "highest"].includes(quality)) {
|
|
667
|
+
return chalk.red(`Invalid quality tier: ${args[1]}\nValid tiers: low, medium, high, highest`);
|
|
668
|
+
}
|
|
669
|
+
const models = getModelsByQuality(quality);
|
|
670
|
+
output += chalk.bold(`📚 ${capitalize(quality)} Quality Models\n\n`);
|
|
671
|
+
output += formatModelsTable(models);
|
|
672
|
+
return output;
|
|
673
|
+
}
|
|
674
|
+
// Show recommended models
|
|
675
|
+
if (subcommand === "recommend" || subcommand === "recommended") {
|
|
676
|
+
output += chalk.bold("⭐ Recommended Models by Provider\n\n");
|
|
677
|
+
const providers = ["ollama", "transformers", "openai"];
|
|
678
|
+
for (const provider of providers) {
|
|
679
|
+
const recommended = getRecommendedModel(provider);
|
|
680
|
+
if (recommended) {
|
|
681
|
+
output += chalk.yellow(`${capitalize(provider)}:\n`);
|
|
682
|
+
output += ` ${chalk.green(recommended.name)} ${chalk.dim(`(${recommended.dimensions} dims, ${recommended.quality} quality)`)}\n`;
|
|
683
|
+
output += ` ${chalk.dim(recommended.description)}\n`;
|
|
684
|
+
if (recommended.installation) {
|
|
685
|
+
output += ` ${chalk.dim(`Install: ${recommended.installation}`)}\n`;
|
|
686
|
+
}
|
|
687
|
+
if (recommended.cost) {
|
|
688
|
+
output += ` ${chalk.dim(`Cost: ${recommended.cost}`)}\n`;
|
|
689
|
+
}
|
|
690
|
+
output += "\n";
|
|
691
|
+
}
|
|
692
|
+
}
|
|
693
|
+
return output;
|
|
694
|
+
}
|
|
695
|
+
return chalk.yellow(`Unknown models subcommand: ${subcommand}\n\nUsage:\n models - List all models\n models <provider> - Filter by provider (ollama, transformers, openai)\n models quality <tier> - Filter by quality\n models recommend - Show recommendations`);
|
|
696
|
+
}
|
|
697
|
+
/**
|
|
698
|
+
* Format models into a table
|
|
699
|
+
*/
|
|
700
|
+
function formatModelsTable(models) {
|
|
701
|
+
const table = new Table({
|
|
702
|
+
head: [
|
|
703
|
+
chalk.cyan("Model"),
|
|
704
|
+
chalk.cyan("Provider"),
|
|
705
|
+
chalk.cyan("Dimensions"),
|
|
706
|
+
chalk.cyan("Quality"),
|
|
707
|
+
chalk.cyan("Description")
|
|
708
|
+
],
|
|
709
|
+
colWidths: [35, 13, 12, 10, 45],
|
|
710
|
+
wordWrap: true,
|
|
711
|
+
});
|
|
712
|
+
for (const model of models) {
|
|
713
|
+
table.push([
|
|
714
|
+
model.name,
|
|
715
|
+
model.provider,
|
|
716
|
+
model.dimensions.toString(),
|
|
717
|
+
model.quality,
|
|
718
|
+
model.description
|
|
719
|
+
]);
|
|
720
|
+
}
|
|
721
|
+
return table.toString();
|
|
722
|
+
}
|
|
723
|
+
/**
|
|
724
|
+
* Capitalize first letter
|
|
725
|
+
*/
|
|
726
|
+
function capitalize(str) {
|
|
727
|
+
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
728
|
+
}
|
|
729
|
+
/**
|
|
730
|
+
* Handle interactive model selection
|
|
731
|
+
*/
|
|
732
|
+
async function handleSelectModel() {
|
|
733
|
+
try {
|
|
734
|
+
// Step 1: Choose provider
|
|
735
|
+
const providerResponse = await prompts({
|
|
736
|
+
type: "select",
|
|
737
|
+
name: "provider",
|
|
738
|
+
message: "Choose an embedding provider:",
|
|
739
|
+
choices: [
|
|
740
|
+
{
|
|
741
|
+
title: "Ollama (Local, High Quality)",
|
|
742
|
+
value: "ollama",
|
|
743
|
+
description: "Run models locally with Ollama. Requires: ollama serve"
|
|
744
|
+
},
|
|
745
|
+
{
|
|
746
|
+
title: "Transformers (Offline, No Setup)",
|
|
747
|
+
value: "transformers",
|
|
748
|
+
description: "Auto-download models, runs offline. No external setup needed."
|
|
749
|
+
},
|
|
750
|
+
{
|
|
751
|
+
title: "OpenAI (Cloud, Highest Quality)",
|
|
752
|
+
value: "openai",
|
|
753
|
+
description: "Cloud API with best quality. Requires API key and costs money."
|
|
754
|
+
}
|
|
755
|
+
],
|
|
756
|
+
initial: 0,
|
|
757
|
+
});
|
|
758
|
+
if (!providerResponse.provider) {
|
|
759
|
+
return chalk.yellow("Selection cancelled");
|
|
760
|
+
}
|
|
761
|
+
const provider = providerResponse.provider;
|
|
762
|
+
// Step 2: Choose model from that provider
|
|
763
|
+
const models = getModelsByProvider(provider);
|
|
764
|
+
const modelChoices = models.map(m => ({
|
|
765
|
+
title: `${m.name} (${m.dimensions} dims, ${m.quality} quality)`,
|
|
766
|
+
value: m.name,
|
|
767
|
+
description: m.description + (m.installation ? ` - ${m.installation}` : "") + (m.cost ? ` - ${m.cost}` : "")
|
|
768
|
+
}));
|
|
769
|
+
// Highlight recommended model
|
|
770
|
+
const recommended = getRecommendedModel(provider);
|
|
771
|
+
if (recommended) {
|
|
772
|
+
const recIndex = modelChoices.findIndex(c => c.value === recommended.name);
|
|
773
|
+
if (recIndex >= 0) {
|
|
774
|
+
modelChoices[recIndex].title = `⭐ ${modelChoices[recIndex].title} (recommended)`;
|
|
775
|
+
}
|
|
776
|
+
}
|
|
777
|
+
const modelResponse = await prompts({
|
|
778
|
+
type: "select",
|
|
779
|
+
name: "model",
|
|
780
|
+
message: `Choose a model from ${capitalize(provider)}:`,
|
|
781
|
+
choices: modelChoices,
|
|
782
|
+
initial: 0,
|
|
783
|
+
});
|
|
784
|
+
if (!modelResponse.model) {
|
|
785
|
+
return chalk.yellow("Selection cancelled");
|
|
786
|
+
}
|
|
787
|
+
const modelName = modelResponse.model;
|
|
788
|
+
const selectedModel = models.find(m => m.name === modelName);
|
|
789
|
+
if (!selectedModel) {
|
|
790
|
+
return chalk.red("Error: Model not found");
|
|
791
|
+
}
|
|
792
|
+
// Step 3: Confirm and save
|
|
793
|
+
const confirmResponse = await prompts({
|
|
794
|
+
type: "confirm",
|
|
795
|
+
name: "confirm",
|
|
796
|
+
message: `Set ${selectedModel.name} as your embedding model?\n Provider: ${selectedModel.provider}\n Dimensions: ${selectedModel.dimensions}\n Quality: ${selectedModel.quality}`,
|
|
797
|
+
initial: true,
|
|
798
|
+
});
|
|
799
|
+
if (!confirmResponse.confirm) {
|
|
800
|
+
return chalk.yellow("Selection cancelled");
|
|
801
|
+
}
|
|
802
|
+
// Save configuration
|
|
803
|
+
ConfigManager.setConfigValue("provider", provider);
|
|
804
|
+
ConfigManager.setConfigValue("model", modelName);
|
|
805
|
+
ConfigManager.setConfigValue("dimensions", selectedModel.dimensions.toString());
|
|
806
|
+
let output = chalk.green(`✓ Configuration updated!\n\n`);
|
|
807
|
+
output += ` Provider: ${chalk.cyan(provider)}\n`;
|
|
808
|
+
output += ` Model: ${chalk.cyan(modelName)}\n`;
|
|
809
|
+
output += ` Dimensions: ${chalk.cyan(selectedModel.dimensions)}\n\n`;
|
|
810
|
+
// Add setup instructions
|
|
811
|
+
if (selectedModel.installation) {
|
|
812
|
+
output += chalk.yellow(`⚠️ Setup Required:\n`);
|
|
813
|
+
output += ` ${selectedModel.installation}\n\n`;
|
|
814
|
+
}
|
|
815
|
+
if (selectedModel.cost) {
|
|
816
|
+
output += chalk.yellow(`💰 Cost: ${selectedModel.cost}\n\n`);
|
|
817
|
+
}
|
|
818
|
+
output += chalk.dim("💡 Tip: You may need to reindex conversations for the new model:\n");
|
|
819
|
+
output += chalk.dim(" reset && index\n\n");
|
|
820
|
+
output += chalk.gray(`Config saved to: ${ConfigManager.getConfigPath()}\n`);
|
|
821
|
+
return output;
|
|
822
|
+
}
|
|
823
|
+
catch (error) {
|
|
824
|
+
if (error.message === "User force closed the prompt") {
|
|
825
|
+
return chalk.yellow("\nSelection cancelled");
|
|
826
|
+
}
|
|
827
|
+
return chalk.red(`Error: ${error.message}`);
|
|
828
|
+
}
|
|
829
|
+
}
|
|
590
830
|
//# sourceMappingURL=commands.js.map
|
package/dist/cli/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC;;GAEG;AACH,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;QACvE,OAAO,WAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,KAAa;IAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC;IACzD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE5B,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAqC,EAAE,CAAC;IAErD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAErB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAE7B,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAClD,CAAC,EAAE,CAAC;YACN,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;YACtB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAa,EACb,QAAsB;IAEtB,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAEpD,uBAAuB;IACvB,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;QAChE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,eAAe;IACf,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,cAAc;IACd,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,QAAQ,EAAE,CAAC;IACpB,CAAC;IAED,iBAAiB;IACjB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,+BAA+B,UAAU,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,sBAAsB;IACtB,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QAChD,OAAO,MAAM,YAAY,EAAE,CAAC;IAC9B,CAAC;IAED,eAAe;IACf,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,iBAAiB;IACjB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,MAAM,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,gBAAgB;IAChB,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC/C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,MAAM,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,mBAAmB;IACnB,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACjD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,MAAM,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,kBAAkB;IAClB,IAAI,OAAO,KAAK,UAAU,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACnD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,MAAM,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,eAAe;IACf,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,MAAM,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,2BAA2B;IAC3B,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QACrD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,MAAM,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,qBAAqB;IACrB,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QAC/C,OAAO,MAAM,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,yBAAyB;IACzB,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACnD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,MAAM,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,2BAA2B;IAC3B,IAAI,OAAO,KAAK,cAAc,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACrD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,MAAM,CAAC,2CAA2C,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,MAAM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,eAAe;IACf,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;QACvD,OAAO,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,uBAAuB;IACvB,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QACjD,OAAO,MAAM,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,eAAe;IACf,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,MAAM,WAAW,EAAE,CAAC;IAC7B,CAAC;IAED,gBAAgB;IAChB,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,MAAM,YAAY,EAAE,CAAC;IAC9B,CAAC;IAED,gBAAgB;IAChB,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,gBAAgB,EAAE,CAAC;QAC5B,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAC,MAAM,CAAC,yGAAyG,CAAC,CAAC;QACjI,CAAC;IACH,CAAC;IAED,aAAa;IACb,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,aAAa;IACb,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,kBAAkB;IAClB,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,OAAO,QAAQ,EAAE,CAAC;IACpB,CAAC;IAED,kBAAkB;IAClB,OAAO,KAAK,CAAC,MAAM,CAAC,oBAAoB,OAAO,uCAAuC,CAAC,CAAC;AAC1F,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY;IACzB,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IACrC,MAAM,EAAE,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;IACnC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IAEjE,6BAA6B;IAC7B,MAAM,aAAa,GAAI,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,EAAwB,CAAC,KAAK,CAAC;IACnH,MAAM,QAAQ,GAAI,EAAE,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC,GAAG,EAAwB,CAAC,KAAK,CAAC;IACzG,MAAM,SAAS,GAAI,EAAE,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC,GAAG,EAAwB,CAAC,KAAK,CAAC;IAC3G,MAAM,QAAQ,GAAI,EAAE,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC,GAAG,EAAwB,CAAC,KAAK,CAAC;IACzG,MAAM,OAAO,GAAI,EAAE,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAAC,GAAG,EAAwB,CAAC,KAAK,CAAC;IAC3G,MAAM,UAAU,GAAI,EAAE,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC,GAAG,EAAwB,CAAC,KAAK,CAAC;IAErH,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;QACtB,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;KACpB,CAAC,CAAC;IAEH,KAAK,CAAC,IAAI,CACR,CAAC,UAAU,EAAE,MAAM,CAAC,EACpB,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,EACxC,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAC9B,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,EAChC,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAC9B,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAChC,CAAC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,EAClC,CAAC,iBAAiB,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CACxF,CAAC;IAEF,IAAI,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC;IAE5C,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,iEAAiE,CAAC,CAAC;IACnG,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW,CAAC,QAAsB,EAAE,OAAyC;IAC1F,MAAM,IAAI,GAA4B;QACpC,YAAY,EAAE,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;KACpF,CAAC;IAEF,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACxC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IACpC,CAAC;IAED,IAAI,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAC7C,CAAC;IAED,IAAI,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;IACzC,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEvD,OAAO,KAAK,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AACrF,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAAC,QAAsB,EAAE,OAAyC;IAC5F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,oDAAoD,CAAC,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,0DAA0D,CAAC,CAAC,CAAC;IAEtF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAE1D,iBAAiB;IACjB,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACrC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAChC,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACjC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAChC,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAEnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;IAEvE,OAAO,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY,CACzB,QAAsB,EACtB,KAAa,EACb,OAAyC;IAEzC,MAAM,IAAI,GAA4B,EAAE,KAAK,EAAE,CAAC;IAEhD,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAExD,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC,MAAM,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,OAAO,CAAC,MAAM,eAAe,CAAC,CAAC;IAE1E,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9B,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,SAAS,aAAa,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;QACnG,MAAM,IAAI,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC;QAClF,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe,CAC5B,QAAsB,EACtB,KAAa,EACb,OAAyC;IAEzC,MAAM,IAAI,GAA4B,EAAE,KAAK,EAAE,CAAC;IAEhD,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAEjD,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,OAAO,KAAK,CAAC,MAAM,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,SAAS,CAAC,MAAM,iBAAiB,CAAC,CAAC;IAE9E,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAChC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,YAAY,CAAC,CAAC,SAAS,IAAI,CAAC;QACtC,MAAM,IAAI,iBAAiB,CAAC,CAAC,SAAS,IAAI,KAAK,IAAI,CAAC;QACpD,IAAI,CAAC,CAAC,uBAAuB,IAAI,CAAC,CAAC,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,oBAAoB,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACzE,CAAC;QACD,MAAM,IAAI,IAAI,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAC3B,QAAsB,EACtB,KAAa,EACb,OAAyC;IAEzC,MAAM,IAAI,GAA4B,EAAE,KAAK,EAAE,CAAC;IAEhD,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IACnC,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAEnD,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC,MAAM,CAAC,0BAA0B,KAAK,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,QAAQ,CAAC,MAAM,gBAAgB,CAAC,CAAC;IAE5E,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC;QAC5E,MAAM,IAAI,YAAY,CAAC,CAAC,SAAS,IAAI,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,uBAAuB,IAAI,KAAK,MAAM,CAAC,CAAC;IAC7F,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW,CAAC,QAAsB,EAAE,QAAgB;IACjE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEzE,OAAO,KAAK,CAAC,KAAK,CAAC,kBAAkB,QAAQ,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzF,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,QAAsB,EACtB,QAAgB,EAChB,OAAyC;IAEzC,MAAM,IAAI,GAA4B,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IAE9D,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED,IAAI,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAErD,OAAO,KAAK,CAAC,KAAK,CAAC,yBAAyB,QAAQ,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAChG,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,QAAsB,EACtB,KAAa,EACb,OAAyC;IAEzC,MAAM,IAAI,GAA4B,EAAE,CAAC;IAEzC,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC7C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAE/D,OAAO,KAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACjG,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,QAAsB,EACtB,KAAa,EACb,OAAyC;IAEzC,MAAM,IAAI,GAA4B,EAAE,KAAK,EAAE,CAAC;IAEhD,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAExD,OAAO,KAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB,CAC/B,QAAsB,EACtB,SAAiB,EACjB,OAAyC;IAEzC,MAAM,IAAI,GAA4B,EAAE,SAAS,EAAE,CAAC;IAEpD,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAEpD,OAAO,KAAK,CAAC,KAAK,CAAC,uBAAuB,SAAS,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW,CAAC,QAAsB,EAAE,OAAyC;IAC1F,MAAM,IAAI,GAA4B,EAAE,CAAC;IAEzC,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAEnD,OAAO,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACpF,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,UAAU,CAAC,QAAsB,EAAE,OAAyC;IACzF,MAAM,IAAI,GAA4B;QACpC,YAAY,EAAE,OAAO,CAAC,GAAG,EAAE;KAC5B,CAAC;IAEF,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IACtC,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE1D,OAAO,KAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,WAAW;IACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,0DAA0D,CAAC,CAAC,CAAC;IAEtF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAE1D,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACrC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAChC,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACjC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAChC,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAEnC,OAAO,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY;IACzB,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,GAAG,EAA4B,CAAC;IAEnF,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAElB,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,GAAG,EAA4B,CAAC;IAClF,MAAM,QAAQ,GAAG,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IACvD,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAErD,OAAO,KAAK,CAAC,KAAK,CAAC,0BAA0B,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AACpG,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB;IACvB,MAAM,OAAO,GAAG,aAAa,CAAC,gBAAgB,EAAE,CAAC;IACjD,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,EAAE,CAAC;IACjD,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;IAElD,IAAI,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IAEjE,wBAAwB;IACxB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;QACtB,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;KACpB,CAAC,CAAC;IAEH,KAAK,CAAC,IAAI,CACR,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,EACxC,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAClC,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,IAAI,MAAM,CAAC,CAAC,EAC9D,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,IAAI,KAAK,CAAC,EAChD,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAC3F,CAAC;IAEF,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEpC,yBAAyB;IACzB,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAEnD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,kBAAkB,UAAU,IAAI,CAAC,CAAC;QACxD,MAAM,IAAI,eAAe,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,IAAI,CAAC;QAChE,MAAM,IAAI,YAAY,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,SAAS,IAAI,CAAC;QAC1D,MAAM,IAAI,iBAAiB,OAAO,CAAC,IAAI,CAAC,UAAU,IAAI,SAAS,MAAM,CAAC;IACxE,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,kBAAkB,UAAU,kBAAkB,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACxE,MAAM,IAAI,eAAe,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,SAAS,IAAI,CAAC;QACnE,MAAM,IAAI,YAAY,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,MAAM,CAAC;IACjE,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACpD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACzB,MAAM,IAAI,wBAAwB,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC;QAC7D,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,qBAAqB,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;QACvD,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YAC3B,MAAM,IAAI,0BAA0B,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC;QACjE,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,wBAAwB,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC;QAC5D,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YACvB,MAAM,IAAI,wBAAwB,CAAC;QACrC,CAAC;QACD,MAAM,IAAI,IAAI,CAAC;IACjB,CAAC;IAED,0BAA0B;IAC1B,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjC,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAC5E,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,0BAA0B,CAAC;IAC5E,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,uCAAuC,CAAC;IAC9E,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,iCAAiC,CAAC;IAEhF,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACtC,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,uCAAuC,CAAC;IAC7E,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,kDAAkD,CAAC;IACrF,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,0CAA0C,CAAC;IAClF,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,6DAA6D,CAAC;IAClG,MAAM,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAEjE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,yBAAyB,UAAU,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,uDAAuD,CAAC,CAAC;IAClF,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAEhD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC,MAAM,CAAC,eAAe,GAAG,cAAc,CAAC,CAAC;QACxD,CAAC;QAED,gBAAgB;QAChB,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,KAAe,CAAC;YAC/B,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,QAAQ,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,KAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,GAAW,EAAE,KAAa;IACjD,IAAI,CAAC;QACH,aAAa,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAEzC,sCAAsC;QACtC,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,qBAAqB,GAAG,MAAM,KAAK,MAAM,CAAC,CAAC;QAEpE,iDAAiD;QACjD,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;YAC3D,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACjB,MAAM,IAAI,8CAA8C,CAAC;gBACzD,MAAM,IAAI,2BAA2B,CAAC;YACxC,CAAC;iBAAM,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACxB,MAAM,IAAI,iCAAiC,CAAC;gBAC5C,MAAM,IAAI,+CAA+C,CAAC;YAC5D,CAAC;iBAAM,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBACzB,MAAM,IAAI,4CAA4C,CAAC;gBACvD,MAAM,IAAI,uCAAuC,CAAC;YACpD,CAAC;iBAAM,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBACzB,MAAM,IAAI,uCAAuC,CAAC;gBAClD,MAAM,IAAI,uCAAuC,CAAC;YACpD,CAAC;iBAAM,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBACzB,MAAM,IAAI,uCAAuC,CAAC;YACpD,CAAC;YACD,MAAM,IAAI,IAAI,CAAC;QACjB,CAAC;QAED,uCAAuC;QACvC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,MAAM,SAAS,GAAG,aAAa,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC/D,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,2BAA2B,SAAS,eAAe,CAAC,CAAC;gBAC1E,MAAM,IAAI,WAAW,KAAK,CAAC,KAAK,CAAC,kBAAkB,SAAS,EAAE,CAAC,MAAM,CAAC;YACxE,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,oBAAoB,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAE5E,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,KAAK,CAAC,GAAG,CAAC,UAAW,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Centralized registry of all supported embedding models
|
|
3
|
+
* Single source of truth for model information, dimensions, and metadata
|
|
4
|
+
*/
|
|
5
|
+
export interface ModelInfo {
|
|
6
|
+
name: string;
|
|
7
|
+
dimensions: number;
|
|
8
|
+
provider: "ollama" | "transformers" | "openai";
|
|
9
|
+
description: string;
|
|
10
|
+
quality: "low" | "medium" | "high" | "highest";
|
|
11
|
+
installation?: string;
|
|
12
|
+
cost?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Complete registry of all supported embedding models
|
|
16
|
+
*/
|
|
17
|
+
export declare const MODEL_REGISTRY: ModelInfo[];
|
|
18
|
+
/**
|
|
19
|
+
* Get all models for a specific provider
|
|
20
|
+
*/
|
|
21
|
+
export declare function getModelsByProvider(provider: string): ModelInfo[];
|
|
22
|
+
/**
|
|
23
|
+
* Get model information by name (supports partial matching)
|
|
24
|
+
*/
|
|
25
|
+
export declare function getModelInfo(modelName: string): ModelInfo | null;
|
|
26
|
+
/**
|
|
27
|
+
* Get dimensions for a model by name
|
|
28
|
+
* Returns null if model is unknown
|
|
29
|
+
*/
|
|
30
|
+
export declare function getModelDimensions(modelName: string): number | null;
|
|
31
|
+
/**
|
|
32
|
+
* Get all models from the registry
|
|
33
|
+
*/
|
|
34
|
+
export declare function getAllModels(): ModelInfo[];
|
|
35
|
+
/**
|
|
36
|
+
* Check if a model exists in the registry
|
|
37
|
+
*/
|
|
38
|
+
export declare function modelExists(modelName: string): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Get models by quality level
|
|
41
|
+
*/
|
|
42
|
+
export declare function getModelsByQuality(quality: ModelInfo["quality"]): ModelInfo[];
|
|
43
|
+
/**
|
|
44
|
+
* Get recommended model for a provider
|
|
45
|
+
* Returns the highest quality model available for the provider
|
|
46
|
+
*/
|
|
47
|
+
export declare function getRecommendedModel(provider: string): ModelInfo | null;
|
|
48
|
+
//# sourceMappingURL=ModelRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelRegistry.d.ts","sourceRoot":"","sources":["../../src/embeddings/ModelRegistry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,GAAG,cAAc,GAAG,QAAQ,CAAC;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,EA0FrC,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,CAEjE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAiBhE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGnE;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,SAAS,EAAE,CAE1C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,SAAS,EAAE,CAE7E;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAuBtE"}
|