claude-brain 0.14.2 ā 0.14.4
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/README.md +191 -191
- package/VERSION +1 -1
- package/assets/CLAUDE-unified.md +11 -11
- package/assets/CLAUDE.md +11 -11
- package/bunfig.toml +8 -8
- package/package.json +80 -80
- package/packs/backend/node.json +173 -173
- package/packs/core/javascript.json +176 -176
- package/packs/core/typescript.json +222 -222
- package/packs/frontend/react.json +254 -254
- package/packs/meta/testing.json +172 -172
- package/src/automation/auto-context.ts +240 -240
- package/src/automation/decision-detector.ts +452 -452
- package/src/automation/index.ts +11 -11
- package/src/automation/phase12-manager.ts +456 -456
- package/src/automation/proactive-recall.ts +373 -373
- package/src/automation/project-detector.ts +310 -310
- package/src/automation/repo-scanner.ts +205 -205
- package/src/cli/auto-setup.ts +82 -82
- package/src/cli/bin.ts +202 -202
- package/src/cli/commands/chroma.ts +573 -573
- package/src/cli/commands/git-hook.ts +189 -189
- package/src/cli/commands/hooks.ts +213 -213
- package/src/cli/commands/init.ts +122 -122
- package/src/cli/commands/install-mcp.ts +92 -92
- package/src/cli/commands/pack.ts +197 -197
- package/src/cli/commands/serve.ts +167 -167
- package/src/cli/commands/start.ts +42 -42
- package/src/cli/commands/uninstall-mcp.ts +41 -41
- package/src/cli/commands/update.ts +121 -121
- package/src/cli/diagnose.ts +4 -4
- package/src/cli/health-check.ts +4 -4
- package/src/cli/migrate-chroma.ts +106 -106
- package/src/cli/setup.ts +4 -4
- package/src/cli/ui/animations.ts +80 -80
- package/src/cli/ui/components.ts +82 -82
- package/src/cli/ui/index.ts +4 -4
- package/src/cli/ui/logo.ts +36 -36
- package/src/cli/ui/theme.ts +55 -55
- package/src/config/defaults.ts +50 -50
- package/src/config/home.ts +55 -55
- package/src/config/index.ts +7 -7
- package/src/config/loader.ts +166 -166
- package/src/config/migration.ts +76 -76
- package/src/config/schema.ts +360 -360
- package/src/config/validator.ts +184 -184
- package/src/config/watcher.ts +86 -86
- package/src/context/assembler.ts +398 -398
- package/src/context/cache-manager.ts +101 -101
- package/src/context/formatter.ts +84 -84
- package/src/context/hierarchy.ts +85 -85
- package/src/context/index.ts +83 -83
- package/src/context/progress-tracker.ts +174 -174
- package/src/context/standards-manager.ts +287 -287
- package/src/context/types.ts +252 -252
- package/src/context/validator.ts +58 -58
- package/src/diagnostics/index.ts +123 -123
- package/src/health/index.ts +229 -229
- package/src/hooks/brain-hook.ts +112 -112
- package/src/hooks/capture.ts +168 -168
- package/src/hooks/deduplicator.ts +72 -72
- package/src/hooks/git-capture.ts +109 -109
- package/src/hooks/git-hook-installer.ts +207 -207
- package/src/hooks/index.ts +20 -20
- package/src/hooks/installer.ts +191 -194
- package/src/hooks/passive-classifier.ts +366 -366
- package/src/hooks/queue.ts +129 -129
- package/src/hooks/session-tracker.ts +275 -275
- package/src/hooks/types.ts +47 -47
- package/src/index.ts +7 -7
- package/src/intelligence/cross-project/affinity.ts +162 -162
- package/src/intelligence/cross-project/generalizer.ts +283 -283
- package/src/intelligence/cross-project/index.ts +13 -13
- package/src/intelligence/cross-project/transfer.ts +201 -201
- package/src/intelligence/index.ts +24 -24
- package/src/intelligence/optimization/index.ts +10 -10
- package/src/intelligence/optimization/precompute.ts +202 -202
- package/src/intelligence/optimization/semantic-cache.ts +207 -207
- package/src/intelligence/prediction/context-anticipator.ts +198 -198
- package/src/intelligence/prediction/decision-predictor.ts +184 -184
- package/src/intelligence/prediction/index.ts +13 -13
- package/src/intelligence/prediction/recommender.ts +268 -268
- package/src/intelligence/reasoning/chain-retrieval.ts +247 -247
- package/src/intelligence/reasoning/counterfactual.ts +248 -248
- package/src/intelligence/reasoning/index.ts +13 -13
- package/src/intelligence/reasoning/synthesizer.ts +169 -169
- package/src/intelligence/temporal/evolution.ts +197 -197
- package/src/intelligence/temporal/index.ts +16 -16
- package/src/intelligence/temporal/query-processor.ts +190 -190
- package/src/intelligence/temporal/timeline.ts +259 -259
- package/src/intelligence/temporal/trends.ts +263 -263
- package/src/knowledge/entity-extractor.ts +416 -416
- package/src/knowledge/graph/builder.ts +185 -185
- package/src/knowledge/graph/linker.ts +201 -201
- package/src/knowledge/graph/memory-graph.ts +359 -359
- package/src/knowledge/graph/schema.ts +99 -99
- package/src/knowledge/graph/search.ts +168 -168
- package/src/knowledge/relationship-extractor.ts +108 -108
- package/src/memory/chroma/client.ts +174 -174
- package/src/memory/chroma/collection-manager.ts +94 -94
- package/src/memory/chroma/config.ts +57 -57
- package/src/memory/chroma/embeddings.ts +153 -153
- package/src/memory/chroma/index.ts +82 -82
- package/src/memory/chroma/migration.ts +270 -270
- package/src/memory/chroma/schemas.ts +69 -69
- package/src/memory/chroma/search.ts +315 -315
- package/src/memory/chroma/store.ts +741 -741
- package/src/memory/consolidation/archiver.ts +164 -164
- package/src/memory/consolidation/merger.ts +186 -186
- package/src/memory/consolidation/scorer.ts +138 -138
- package/src/memory/context-builder.ts +236 -236
- package/src/memory/database.ts +169 -169
- package/src/memory/embedding-utils.ts +156 -156
- package/src/memory/embeddings.ts +226 -226
- package/src/memory/episodic/detector.ts +108 -108
- package/src/memory/episodic/manager.ts +351 -351
- package/src/memory/episodic/summarizer.ts +179 -179
- package/src/memory/episodic/types.ts +52 -52
- package/src/memory/index.ts +582 -582
- package/src/memory/knowledge-extractor.ts +455 -455
- package/src/memory/learning.ts +378 -378
- package/src/memory/patterns.ts +396 -396
- package/src/memory/schema.ts +88 -88
- package/src/memory/search.ts +309 -309
- package/src/memory/store.ts +787 -787
- package/src/memory/types.ts +121 -121
- package/src/orchestrator/coordinator.ts +272 -272
- package/src/orchestrator/decision-logger.ts +228 -228
- package/src/orchestrator/event-emitter.ts +198 -198
- package/src/orchestrator/event-queue.ts +184 -184
- package/src/orchestrator/handlers/base-handler.ts +70 -70
- package/src/orchestrator/handlers/context-handler.ts +73 -73
- package/src/orchestrator/handlers/decision-handler.ts +204 -204
- package/src/orchestrator/handlers/index.ts +10 -10
- package/src/orchestrator/handlers/status-handler.ts +131 -131
- package/src/orchestrator/handlers/task-handler.ts +171 -171
- package/src/orchestrator/index.ts +275 -275
- package/src/orchestrator/task-parser.ts +284 -284
- package/src/orchestrator/types.ts +98 -98
- package/src/packs/index.ts +9 -9
- package/src/packs/loader.ts +134 -134
- package/src/packs/manager.ts +204 -204
- package/src/packs/ranker.ts +78 -78
- package/src/packs/types.ts +81 -81
- package/src/phase12/index.ts +5 -5
- package/src/retrieval/bm25/index.ts +300 -300
- package/src/retrieval/bm25/tokenizer.ts +184 -184
- package/src/retrieval/feedback/adaptive.ts +223 -223
- package/src/retrieval/feedback/index.ts +16 -16
- package/src/retrieval/feedback/metrics.ts +223 -223
- package/src/retrieval/feedback/store.ts +283 -283
- package/src/retrieval/fusion/index.ts +194 -194
- package/src/retrieval/fusion/rrf.ts +163 -163
- package/src/retrieval/index.ts +12 -12
- package/src/retrieval/pipeline.ts +375 -375
- package/src/retrieval/query/expander.ts +198 -198
- package/src/retrieval/query/index.ts +27 -27
- package/src/retrieval/query/intent-classifier.ts +236 -236
- package/src/retrieval/query/temporal-parser.ts +295 -295
- package/src/retrieval/reranker/index.ts +188 -188
- package/src/retrieval/reranker/model.ts +95 -95
- package/src/retrieval/service.ts +125 -125
- package/src/retrieval/types.ts +162 -162
- package/src/routing/entity-extractor.ts +428 -428
- package/src/routing/intent-classifier.ts +436 -436
- package/src/routing/response-filter.ts +258 -254
- package/src/routing/router.ts +1322 -1314
- package/src/routing/search-engine.ts +475 -475
- package/src/routing/types.ts +94 -84
- package/src/scripts/health-check.ts +118 -118
- package/src/scripts/setup.ts +122 -122
- package/src/server/handlers/call-tool.ts +156 -156
- package/src/server/handlers/index.ts +9 -9
- package/src/server/handlers/list-tools.ts +35 -35
- package/src/server/handlers/tools/analyze-decision-evolution.ts +151 -151
- package/src/server/handlers/tools/auto-remember.ts +200 -200
- package/src/server/handlers/tools/brain.ts +85 -85
- package/src/server/handlers/tools/create-project.ts +135 -135
- package/src/server/handlers/tools/detect-trends.ts +144 -144
- package/src/server/handlers/tools/find-cross-project-patterns.ts +168 -168
- package/src/server/handlers/tools/get-activity-log.ts +194 -194
- package/src/server/handlers/tools/get-code-standards.ts +124 -124
- package/src/server/handlers/tools/get-corrections.ts +154 -154
- package/src/server/handlers/tools/get-decision-timeline.ts +172 -172
- package/src/server/handlers/tools/get-episode.ts +103 -103
- package/src/server/handlers/tools/get-patterns.ts +158 -158
- package/src/server/handlers/tools/get-phase12-status.ts +63 -63
- package/src/server/handlers/tools/get-project-context.ts +75 -75
- package/src/server/handlers/tools/get-recommendations.ts +145 -145
- package/src/server/handlers/tools/index.ts +31 -31
- package/src/server/handlers/tools/init-project.ts +757 -757
- package/src/server/handlers/tools/list-episodes.ts +90 -90
- package/src/server/handlers/tools/list-projects.ts +125 -125
- package/src/server/handlers/tools/rate-memory.ts +101 -101
- package/src/server/handlers/tools/recall-similar.ts +87 -87
- package/src/server/handlers/tools/recognize-pattern.ts +126 -126
- package/src/server/handlers/tools/record-correction.ts +125 -125
- package/src/server/handlers/tools/remember-decision.ts +153 -153
- package/src/server/handlers/tools/schemas.ts +253 -253
- package/src/server/handlers/tools/search-knowledge-graph.ts +102 -102
- package/src/server/handlers/tools/smart-context.ts +146 -146
- package/src/server/handlers/tools/update-progress.ts +131 -131
- package/src/server/handlers/tools/what-if-analysis.ts +135 -135
- package/src/server/http-api.ts +693 -693
- package/src/server/index.ts +40 -40
- package/src/server/mcp-server.ts +283 -283
- package/src/server/providers/index.ts +7 -7
- package/src/server/providers/prompts.ts +327 -327
- package/src/server/providers/resources.ts +622 -622
- package/src/server/services.ts +468 -468
- package/src/server/types.ts +39 -39
- package/src/server/utils/error-handler.ts +155 -155
- package/src/server/utils/index.ts +13 -13
- package/src/server/utils/memory-indicator.ts +83 -83
- package/src/server/utils/request-context.ts +122 -122
- package/src/server/utils/response-formatter.ts +129 -124
- package/src/server/utils/validators.ts +210 -210
- package/src/setup/index.ts +48 -48
- package/src/setup/wizard.ts +461 -461
- package/src/tools/index.ts +24 -24
- package/src/tools/registry.ts +115 -115
- package/src/tools/schemas.test.ts +30 -30
- package/src/tools/schemas.ts +617 -617
- package/src/tools/types.ts +412 -412
- package/src/utils/circuit-breaker.ts +130 -130
- package/src/utils/cleanup.ts +34 -34
- package/src/utils/error-handler.ts +132 -132
- package/src/utils/error-messages.ts +60 -60
- package/src/utils/fallback.ts +45 -45
- package/src/utils/index.ts +54 -54
- package/src/utils/logger-utils.ts +80 -80
- package/src/utils/logger.ts +88 -88
- package/src/utils/phase12-helper.ts +56 -56
- package/src/utils/retry.ts +94 -94
- package/src/utils/timing.ts +47 -47
- package/src/utils/transaction.ts +63 -63
- package/src/vault/frontmatter.ts +264 -264
- package/src/vault/index.ts +318 -318
- package/src/vault/paths.ts +106 -106
- package/src/vault/query.ts +422 -422
- package/src/vault/reader.ts +264 -264
- package/src/vault/templates.ts +186 -186
- package/src/vault/types.ts +73 -73
- package/src/vault/watcher.ts +277 -277
- package/src/vault/writer.ts +413 -413
- package/tsconfig.json +30 -30
package/src/diagnostics/index.ts
CHANGED
|
@@ -1,123 +1,123 @@
|
|
|
1
|
-
import os from 'os'
|
|
2
|
-
import fs from 'fs/promises'
|
|
3
|
-
import { loadConfig } from '@/config'
|
|
4
|
-
import { resolveHomePath } from '@/config/home'
|
|
5
|
-
import { createLogger } from '@/utils/logger'
|
|
6
|
-
|
|
7
|
-
export class DiagnosticTool {
|
|
8
|
-
private logger: any
|
|
9
|
-
|
|
10
|
-
constructor(logger: any) {
|
|
11
|
-
this.logger = logger.child({ component: 'diagnostics' })
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
async run(): Promise<void> {
|
|
15
|
-
console.log('š Running diagnostics...\n')
|
|
16
|
-
|
|
17
|
-
await this.printSystemInfo()
|
|
18
|
-
await this.printConfiguration()
|
|
19
|
-
await this.printRecentLogs()
|
|
20
|
-
await this.printCommonIssues()
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
private async printSystemInfo(): Promise<void> {
|
|
24
|
-
console.log('š System Information')
|
|
25
|
-
console.log('ā'.repeat(50))
|
|
26
|
-
console.log(`OS: ${os.platform()} ${os.release()}`)
|
|
27
|
-
console.log(`Architecture: ${os.arch()}`)
|
|
28
|
-
console.log(`Node/Bun: ${process.version}`)
|
|
29
|
-
console.log(`Bun: ${process.versions.bun || 'Not detected'}`)
|
|
30
|
-
console.log(`Memory: ${Math.round(os.totalmem() / 1024 / 1024 / 1024)}GB total`)
|
|
31
|
-
console.log(`Free Memory: ${Math.round(os.freemem() / 1024 / 1024 / 1024)}GB`)
|
|
32
|
-
console.log(`CPUs: ${os.cpus().length}`)
|
|
33
|
-
console.log(`CWD: ${process.cwd()}`)
|
|
34
|
-
console.log()
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
private async printConfiguration(): Promise<void> {
|
|
38
|
-
console.log('āļø Configuration')
|
|
39
|
-
console.log('ā'.repeat(50))
|
|
40
|
-
|
|
41
|
-
try {
|
|
42
|
-
const config = await loadConfig()
|
|
43
|
-
console.log(`Vault Path: ${config.vaultPath}`)
|
|
44
|
-
console.log(`Database Path: ${config.dbPath}`)
|
|
45
|
-
console.log(`Log Level: ${config.logLevel}`)
|
|
46
|
-
console.log(`File Watch: ${config.enableFileWatch}`)
|
|
47
|
-
console.log(`Server Name: ${config.serverName}`)
|
|
48
|
-
console.log(`Server Version: ${config.serverVersion}`)
|
|
49
|
-
|
|
50
|
-
} catch (error) {
|
|
51
|
-
console.log(`Error loading config: ${error}`)
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
console.log()
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
private async printRecentLogs(): Promise<void> {
|
|
58
|
-
console.log('š Recent Logs (last 20 lines)')
|
|
59
|
-
console.log('ā'.repeat(50))
|
|
60
|
-
|
|
61
|
-
try {
|
|
62
|
-
const logContent = await fs.readFile(resolveHomePath('./logs/claude-brain.log'), 'utf-8')
|
|
63
|
-
const lines = logContent.split('\n').filter(l => l.trim())
|
|
64
|
-
const recentLines = lines.slice(-20)
|
|
65
|
-
|
|
66
|
-
for (const line of recentLines) {
|
|
67
|
-
console.log(line)
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
} catch (error) {
|
|
71
|
-
console.log('No logs found or unable to read logs')
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
console.log()
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
private async printCommonIssues(): Promise<void> {
|
|
78
|
-
console.log('š” Common Issues & Solutions')
|
|
79
|
-
console.log('ā'.repeat(50))
|
|
80
|
-
|
|
81
|
-
const issues = [
|
|
82
|
-
{
|
|
83
|
-
symptom: 'MCP server not found in Claude Code',
|
|
84
|
-
solution: 'Check Claude Code config file has correct absolute path'
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
symptom: 'Vault path not found',
|
|
88
|
-
solution: 'Verify VAULT_PATH in .env points to valid Obsidian vault'
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
symptom: 'Embeddings fail',
|
|
92
|
-
solution: 'Check internet connection (first-time model download)'
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
symptom: 'Tools return stubs',
|
|
96
|
-
solution: 'Rebuild with: bun run build'
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
symptom: 'No projects found',
|
|
100
|
-
solution: 'Create project directory: Projects/your-project/'
|
|
101
|
-
}
|
|
102
|
-
]
|
|
103
|
-
|
|
104
|
-
for (const issue of issues) {
|
|
105
|
-
console.log(`\nā ${issue.symptom}`)
|
|
106
|
-
console.log(` š” ${issue.solution}`)
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
console.log('\n\nš For more help, check the documentation or logs.\n')
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
export async function runDiagnostics() {
|
|
114
|
-
const logger = createLogger('info', resolveHomePath('./logs/diagnostics.log'))
|
|
115
|
-
const tool = new DiagnosticTool(logger)
|
|
116
|
-
|
|
117
|
-
try {
|
|
118
|
-
await tool.run()
|
|
119
|
-
} catch (error) {
|
|
120
|
-
console.error('ā Diagnostics failed:', error)
|
|
121
|
-
process.exit(1)
|
|
122
|
-
}
|
|
123
|
-
}
|
|
1
|
+
import os from 'os'
|
|
2
|
+
import fs from 'fs/promises'
|
|
3
|
+
import { loadConfig } from '@/config'
|
|
4
|
+
import { resolveHomePath } from '@/config/home'
|
|
5
|
+
import { createLogger } from '@/utils/logger'
|
|
6
|
+
|
|
7
|
+
export class DiagnosticTool {
|
|
8
|
+
private logger: any
|
|
9
|
+
|
|
10
|
+
constructor(logger: any) {
|
|
11
|
+
this.logger = logger.child({ component: 'diagnostics' })
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run(): Promise<void> {
|
|
15
|
+
console.log('š Running diagnostics...\n')
|
|
16
|
+
|
|
17
|
+
await this.printSystemInfo()
|
|
18
|
+
await this.printConfiguration()
|
|
19
|
+
await this.printRecentLogs()
|
|
20
|
+
await this.printCommonIssues()
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
private async printSystemInfo(): Promise<void> {
|
|
24
|
+
console.log('š System Information')
|
|
25
|
+
console.log('ā'.repeat(50))
|
|
26
|
+
console.log(`OS: ${os.platform()} ${os.release()}`)
|
|
27
|
+
console.log(`Architecture: ${os.arch()}`)
|
|
28
|
+
console.log(`Node/Bun: ${process.version}`)
|
|
29
|
+
console.log(`Bun: ${process.versions.bun || 'Not detected'}`)
|
|
30
|
+
console.log(`Memory: ${Math.round(os.totalmem() / 1024 / 1024 / 1024)}GB total`)
|
|
31
|
+
console.log(`Free Memory: ${Math.round(os.freemem() / 1024 / 1024 / 1024)}GB`)
|
|
32
|
+
console.log(`CPUs: ${os.cpus().length}`)
|
|
33
|
+
console.log(`CWD: ${process.cwd()}`)
|
|
34
|
+
console.log()
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
private async printConfiguration(): Promise<void> {
|
|
38
|
+
console.log('āļø Configuration')
|
|
39
|
+
console.log('ā'.repeat(50))
|
|
40
|
+
|
|
41
|
+
try {
|
|
42
|
+
const config = await loadConfig()
|
|
43
|
+
console.log(`Vault Path: ${config.vaultPath}`)
|
|
44
|
+
console.log(`Database Path: ${config.dbPath}`)
|
|
45
|
+
console.log(`Log Level: ${config.logLevel}`)
|
|
46
|
+
console.log(`File Watch: ${config.enableFileWatch}`)
|
|
47
|
+
console.log(`Server Name: ${config.serverName}`)
|
|
48
|
+
console.log(`Server Version: ${config.serverVersion}`)
|
|
49
|
+
|
|
50
|
+
} catch (error) {
|
|
51
|
+
console.log(`Error loading config: ${error}`)
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
console.log()
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
private async printRecentLogs(): Promise<void> {
|
|
58
|
+
console.log('š Recent Logs (last 20 lines)')
|
|
59
|
+
console.log('ā'.repeat(50))
|
|
60
|
+
|
|
61
|
+
try {
|
|
62
|
+
const logContent = await fs.readFile(resolveHomePath('./logs/claude-brain.log'), 'utf-8')
|
|
63
|
+
const lines = logContent.split('\n').filter(l => l.trim())
|
|
64
|
+
const recentLines = lines.slice(-20)
|
|
65
|
+
|
|
66
|
+
for (const line of recentLines) {
|
|
67
|
+
console.log(line)
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
} catch (error) {
|
|
71
|
+
console.log('No logs found or unable to read logs')
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
console.log()
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
private async printCommonIssues(): Promise<void> {
|
|
78
|
+
console.log('š” Common Issues & Solutions')
|
|
79
|
+
console.log('ā'.repeat(50))
|
|
80
|
+
|
|
81
|
+
const issues = [
|
|
82
|
+
{
|
|
83
|
+
symptom: 'MCP server not found in Claude Code',
|
|
84
|
+
solution: 'Check Claude Code config file has correct absolute path'
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
symptom: 'Vault path not found',
|
|
88
|
+
solution: 'Verify VAULT_PATH in .env points to valid Obsidian vault'
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
symptom: 'Embeddings fail',
|
|
92
|
+
solution: 'Check internet connection (first-time model download)'
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
symptom: 'Tools return stubs',
|
|
96
|
+
solution: 'Rebuild with: bun run build'
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
symptom: 'No projects found',
|
|
100
|
+
solution: 'Create project directory: Projects/your-project/'
|
|
101
|
+
}
|
|
102
|
+
]
|
|
103
|
+
|
|
104
|
+
for (const issue of issues) {
|
|
105
|
+
console.log(`\nā ${issue.symptom}`)
|
|
106
|
+
console.log(` š” ${issue.solution}`)
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
console.log('\n\nš For more help, check the documentation or logs.\n')
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export async function runDiagnostics() {
|
|
114
|
+
const logger = createLogger('info', resolveHomePath('./logs/diagnostics.log'))
|
|
115
|
+
const tool = new DiagnosticTool(logger)
|
|
116
|
+
|
|
117
|
+
try {
|
|
118
|
+
await tool.run()
|
|
119
|
+
} catch (error) {
|
|
120
|
+
console.error('ā Diagnostics failed:', error)
|
|
121
|
+
process.exit(1)
|
|
122
|
+
}
|
|
123
|
+
}
|