bc-code-intelligence-mcp 1.7.1 → 1.7.2

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.
@@ -11,15 +11,15 @@
11
11
  *
12
12
  * See docs/GIT-AUTH-FIX.md for detailed explanation of authentication fix
13
13
  */
14
- import { access, mkdir, stat, readdir, readFile } from 'fs/promises';
15
- import { join, dirname, basename } from 'path';
16
- import { existsSync } from 'fs';
17
- import simpleGit from 'simple-git';
18
- import * as yaml from 'yaml';
19
- import { glob } from 'glob';
20
- import { BaseKnowledgeLayer } from './base-layer.js';
21
- import { AtomicTopicFrontmatterSchema } from '../types/bc-knowledge.js';
22
- import { AuthType } from '../types/index.js';
14
+ import { access, mkdir, stat, readdir, readFile } from "fs/promises";
15
+ import { join, dirname, basename } from "path";
16
+ import { existsSync } from "fs";
17
+ import simpleGit from "simple-git";
18
+ import * as yaml from "yaml";
19
+ import glob from "fast-glob";
20
+ import { BaseKnowledgeLayer } from "./base-layer.js";
21
+ import { AtomicTopicFrontmatterSchema, } from "../types/bc-knowledge.js";
22
+ import { AuthType, } from "../types/index.js";
23
23
  export class GitKnowledgeLayer extends BaseKnowledgeLayer {
24
24
  gitConfig;
25
25
  auth;
@@ -28,14 +28,14 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
28
28
  localPath;
29
29
  lastUpdated;
30
30
  initializationPromise = null;
31
- constructor(name, priority, gitConfig, auth, cacheDir = '.bckb-cache') {
31
+ constructor(name, priority, gitConfig, auth, cacheDir = ".bckb-cache") {
32
32
  super(name, priority);
33
33
  this.gitConfig = gitConfig;
34
34
  this.auth = auth;
35
35
  this.cacheDir = cacheDir;
36
36
  // Generate local cache path based on URL
37
37
  const urlHash = this.generateUrlHash(gitConfig.url);
38
- this.localPath = join(process.cwd(), cacheDir, 'git-repos', urlHash);
38
+ this.localPath = join(process.cwd(), cacheDir, "git-repos", urlHash);
39
39
  }
40
40
  async initialize() {
41
41
  // If initialization is in progress, wait for it (MUTEX - must be first!)
@@ -93,7 +93,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
93
93
  topicsLoaded: this.topics.size,
94
94
  indexesLoaded: 0,
95
95
  loadTimeMs: Date.now() - startTime,
96
- success: true
96
+ success: true,
97
97
  };
98
98
  return this.loadResult;
99
99
  }
@@ -107,7 +107,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
107
107
  indexesLoaded: 0,
108
108
  loadTimeMs: Date.now() - startTime,
109
109
  success: false,
110
- error: errorMessage
110
+ error: errorMessage,
111
111
  };
112
112
  return this.loadResult;
113
113
  }
@@ -119,9 +119,9 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
119
119
  async setupGitWithAuth() {
120
120
  const gitOptions = {
121
121
  baseDir: dirname(this.localPath),
122
- binary: 'git',
122
+ binary: "git",
123
123
  maxConcurrentProcesses: 1,
124
- trimmed: true
124
+ trimmed: true,
125
125
  };
126
126
  this.git = simpleGit(gitOptions);
127
127
  // Configure authentication based on auth type
@@ -137,34 +137,37 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
137
137
  // GitHub CLI authentication - verify gh CLI is installed and user is authenticated
138
138
  await this.verifyGhCliInstalled();
139
139
  await this.verifyGhCliAuthenticated();
140
- console.error('🔑 Using GitHub CLI authentication (gh auth token)');
140
+ console.error("🔑 Using GitHub CLI authentication (gh auth token)");
141
141
  // No URL modification needed - we'll fetch token from gh CLI for each operation
142
142
  break;
143
143
  case AuthType.AZ_CLI:
144
144
  // Azure CLI authentication - verify az CLI is installed and user is logged in
145
145
  await this.verifyAzCliInstalled();
146
146
  await this.verifyAzCliAuthenticated();
147
- console.error('🔑 Using Azure CLI authentication (Git credential manager will handle tokens)');
147
+ console.error("🔑 Using Azure CLI authentication (Git credential manager will handle tokens)");
148
148
  // No URL modification needed - Git credential manager automatically uses az CLI tokens
149
149
  break;
150
150
  case AuthType.TOKEN:
151
151
  // For GitHub/GitLab token authentication
152
152
  const token = this.auth.token ||
153
- (this.auth.token_env_var ? process.env[this.auth.token_env_var] : undefined);
153
+ (this.auth.token_env_var
154
+ ? process.env[this.auth.token_env_var]
155
+ : undefined);
154
156
  if (token) {
155
157
  // For token authentication, we embed credentials directly in URLs
156
158
  // This avoids issues with git credential helpers and ensures consistent auth
157
- console.error('🔑 Configured token authentication (embedded in URLs)');
159
+ console.error("🔑 Configured token authentication (embedded in URLs)");
158
160
  }
159
161
  else {
160
- throw new Error('Token not found for git authentication');
162
+ throw new Error("Token not found for git authentication");
161
163
  }
162
164
  break;
163
165
  case AuthType.SSH_KEY:
164
166
  // SSH key authentication - requires key to be in SSH agent
165
167
  if (this.auth.key_path) {
166
168
  // Set SSH command to use specific key
167
- process.env['GIT_SSH_COMMAND'] = `ssh -i ${this.auth.key_path} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no`;
169
+ process.env["GIT_SSH_COMMAND"] =
170
+ `ssh -i ${this.auth.key_path} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no`;
168
171
  console.error(`🔑 Configured SSH key authentication: ${this.auth.key_path}`);
169
172
  }
170
173
  break;
@@ -172,13 +175,15 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
172
175
  // Basic username/password authentication
173
176
  const username = this.auth.username;
174
177
  const password = this.auth.password ||
175
- (this.auth.password_env_var ? process.env[this.auth.password_env_var] : undefined);
178
+ (this.auth.password_env_var
179
+ ? process.env[this.auth.password_env_var]
180
+ : undefined);
176
181
  if (username && password) {
177
- console.error('🔑 Configured basic authentication (embedded in URLs)');
182
+ console.error("🔑 Configured basic authentication (embedded in URLs)");
178
183
  // This will be handled in the URL modification
179
184
  }
180
185
  else {
181
- throw new Error('Username/password not found for basic authentication');
186
+ throw new Error("Username/password not found for basic authentication");
182
187
  }
183
188
  break;
184
189
  default:
@@ -187,19 +192,22 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
187
192
  }
188
193
  async ensureRepository() {
189
194
  if (!this.git)
190
- throw new Error('Git not initialized');
191
- const repositoryExists = existsSync(join(this.localPath, '.git'));
195
+ throw new Error("Git not initialized");
196
+ const repositoryExists = existsSync(join(this.localPath, ".git"));
192
197
  if (repositoryExists) {
193
198
  // Repository exists, pull latest changes
194
199
  console.error(`📥 Pulling latest changes for ${this.name}...`);
195
200
  await this.git.cwd(this.localPath);
196
201
  try {
197
202
  // For authenticated pulls, we need to update the remote URL with auth
198
- if (this.auth && (this.auth.type === AuthType.TOKEN || this.auth.type === AuthType.BASIC || this.auth.type === AuthType.GH_CLI)) {
203
+ if (this.auth &&
204
+ (this.auth.type === AuthType.TOKEN ||
205
+ this.auth.type === AuthType.BASIC ||
206
+ this.auth.type === AuthType.GH_CLI)) {
199
207
  const authenticatedUrl = await this.prepareUrlWithAuth(this.gitConfig.url);
200
- await this.git.remote(['set-url', 'origin', authenticatedUrl]);
208
+ await this.git.remote(["set-url", "origin", authenticatedUrl]);
201
209
  }
202
- const pullResult = await this.git.pull('origin', this.gitConfig.branch || 'main');
210
+ const pullResult = await this.git.pull("origin", this.gitConfig.branch || "main");
203
211
  return pullResult.summary.changes > 0;
204
212
  }
205
213
  catch (error) {
@@ -212,9 +220,10 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
212
220
  console.error(`📦 Cloning repository ${this.gitConfig.url}...`);
213
221
  const cloneUrl = await this.prepareUrlWithAuth(this.gitConfig.url);
214
222
  await this.git.clone(cloneUrl, this.localPath, [
215
- '--depth', '1', // Shallow clone for faster downloads
216
- '--single-branch',
217
- ...(this.gitConfig.branch ? ['--branch', this.gitConfig.branch] : [])
223
+ "--depth",
224
+ "1", // Shallow clone for faster downloads
225
+ "--single-branch",
226
+ ...(this.gitConfig.branch ? ["--branch", this.gitConfig.branch] : []),
218
227
  ]);
219
228
  return true;
220
229
  }
@@ -227,7 +236,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
227
236
  return url;
228
237
  }
229
238
  // Only modify HTTPS URLs for token/basic auth
230
- if (!url.startsWith('https://'))
239
+ if (!url.startsWith("https://"))
231
240
  return url;
232
241
  switch (this.auth.type) {
233
242
  case AuthType.GH_CLI:
@@ -235,24 +244,28 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
235
244
  const ghToken = await this.getGhCliToken();
236
245
  if (ghToken) {
237
246
  // For GitHub: https://token@github.com/...
238
- return url.replace('https://', `https://${ghToken}@`);
247
+ return url.replace("https://", `https://${ghToken}@`);
239
248
  }
240
249
  break;
241
250
  case AuthType.TOKEN:
242
251
  const token = this.auth.token ||
243
- (this.auth.token_env_var ? process.env[this.auth.token_env_var] : undefined);
252
+ (this.auth.token_env_var
253
+ ? process.env[this.auth.token_env_var]
254
+ : undefined);
244
255
  if (token) {
245
256
  // For GitHub/GitLab: https://token@github.com/...
246
- return url.replace('https://', `https://${token}@`);
257
+ return url.replace("https://", `https://${token}@`);
247
258
  }
248
259
  break;
249
260
  case AuthType.BASIC:
250
261
  const username = this.auth.username;
251
262
  const password = this.auth.password ||
252
- (this.auth.password_env_var ? process.env[this.auth.password_env_var] : undefined);
263
+ (this.auth.password_env_var
264
+ ? process.env[this.auth.password_env_var]
265
+ : undefined);
253
266
  if (username && password) {
254
267
  // https://username:password@gitlab.com/...
255
- return url.replace('https://', `https://${username}:${password}@`);
268
+ return url.replace("https://", `https://${username}:${password}@`);
256
269
  }
257
270
  break;
258
271
  }
@@ -262,74 +275,74 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
262
275
  * Verify Azure CLI is installed on the system
263
276
  */
264
277
  async verifyGhCliInstalled() {
265
- const { execSync } = await import('child_process');
278
+ const { execSync } = await import("child_process");
266
279
  try {
267
- execSync('gh --version', { stdio: 'ignore' });
280
+ execSync("gh --version", { stdio: "ignore" });
268
281
  }
269
282
  catch {
270
- throw new Error('GitHub CLI not found. Install from https://cli.github.com/\n' +
271
- 'After installation, run: gh auth login');
283
+ throw new Error("GitHub CLI not found. Install from https://cli.github.com/\n" +
284
+ "After installation, run: gh auth login");
272
285
  }
273
286
  }
274
287
  /**
275
288
  * Verify user is authenticated with GitHub CLI
276
289
  */
277
290
  async verifyGhCliAuthenticated() {
278
- const { execSync } = await import('child_process');
291
+ const { execSync } = await import("child_process");
279
292
  try {
280
293
  // Check if user is authenticated by attempting to get auth status
281
- execSync('gh auth status', { stdio: 'ignore' });
294
+ execSync("gh auth status", { stdio: "ignore" });
282
295
  }
283
296
  catch {
284
- throw new Error('Not logged in to GitHub CLI. Run: gh auth login\n' +
285
- 'For organization access, ensure your token has appropriate repo scopes');
297
+ throw new Error("Not logged in to GitHub CLI. Run: gh auth login\n" +
298
+ "For organization access, ensure your token has appropriate repo scopes");
286
299
  }
287
300
  }
288
301
  /**
289
302
  * Get GitHub token from gh CLI
290
303
  */
291
304
  async getGhCliToken() {
292
- const { execSync } = await import('child_process');
305
+ const { execSync } = await import("child_process");
293
306
  try {
294
307
  // Get token for github.com (or enterprise host if specified)
295
- const output = execSync('gh auth token', { encoding: 'utf8' });
308
+ const output = execSync("gh auth token", { encoding: "utf8" });
296
309
  const token = output.trim();
297
310
  if (!token) {
298
- throw new Error('gh CLI returned empty token');
311
+ throw new Error("gh CLI returned empty token");
299
312
  }
300
313
  return token;
301
314
  }
302
315
  catch (error) {
303
316
  throw new Error(`Failed to get GitHub CLI token: ${error instanceof Error ? error.message : String(error)}\n` +
304
- 'Ensure you are authenticated with: gh auth login');
317
+ "Ensure you are authenticated with: gh auth login");
305
318
  }
306
319
  }
307
320
  async verifyAzCliInstalled() {
308
- const { execSync } = await import('child_process');
321
+ const { execSync } = await import("child_process");
309
322
  try {
310
- execSync('az --version', { stdio: 'ignore' });
323
+ execSync("az --version", { stdio: "ignore" });
311
324
  }
312
325
  catch {
313
- throw new Error('Azure CLI not found. Install from https://aka.ms/install-az-cli\n' +
314
- 'After installation, run: az login');
326
+ throw new Error("Azure CLI not found. Install from https://aka.ms/install-az-cli\n" +
327
+ "After installation, run: az login");
315
328
  }
316
329
  }
317
330
  /**
318
331
  * Verify user is authenticated with Azure CLI
319
332
  */
320
333
  async verifyAzCliAuthenticated() {
321
- const { execSync } = await import('child_process');
334
+ const { execSync } = await import("child_process");
322
335
  try {
323
- execSync('az account show', { stdio: 'ignore' });
336
+ execSync("az account show", { stdio: "ignore" });
324
337
  }
325
338
  catch {
326
- throw new Error('Not logged in to Azure CLI. Run: az login\n' +
327
- 'For Azure DevOps, you may also need to run: az devops login');
339
+ throw new Error("Not logged in to Azure CLI. Run: az login\n" +
340
+ "For Azure DevOps, you may also need to run: az devops login");
328
341
  }
329
342
  }
330
343
  async checkoutBranch(branch) {
331
344
  if (!this.git)
332
- throw new Error('Git not initialized');
345
+ throw new Error("Git not initialized");
333
346
  console.error(`🔄 Checking out branch: ${branch}`);
334
347
  await this.git.cwd(this.localPath);
335
348
  try {
@@ -365,8 +378,8 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
365
378
  const knowledgePath = this.gitConfig.subpath
366
379
  ? join(this.localPath, this.gitConfig.subpath)
367
380
  : this.localPath;
368
- const domainsPath = join(knowledgePath, 'domains');
369
- const topicsPath = join(knowledgePath, 'topics');
381
+ const domainsPath = join(knowledgePath, "domains");
382
+ const topicsPath = join(knowledgePath, "topics");
370
383
  try {
371
384
  await access(domainsPath);
372
385
  await this.loadTopicsFromDirectory(domainsPath);
@@ -390,12 +403,12 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
390
403
  const knowledgePath = this.gitConfig.subpath
391
404
  ? join(this.localPath, this.gitConfig.subpath)
392
405
  : this.localPath;
393
- const specialistsPath = join(knowledgePath, 'specialists');
406
+ const specialistsPath = join(knowledgePath, "specialists");
394
407
  try {
395
408
  await access(specialistsPath);
396
409
  const entries = await readdir(specialistsPath);
397
410
  for (const entry of entries) {
398
- if (entry.endsWith('.md')) {
411
+ if (entry.endsWith(".md")) {
399
412
  const filePath = join(specialistsPath, entry);
400
413
  try {
401
414
  const specialist = await this.loadSpecialist(filePath);
@@ -423,8 +436,8 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
423
436
  ? join(this.localPath, this.gitConfig.subpath)
424
437
  : this.localPath;
425
438
  // Prefer workflows/, fall back to methodologies/ for backward compatibility
426
- const workflowsPath = join(knowledgePath, 'workflows');
427
- const legacyPath = join(knowledgePath, 'methodologies');
439
+ const workflowsPath = join(knowledgePath, "workflows");
440
+ const legacyPath = join(knowledgePath, "methodologies");
428
441
  let activePath = null;
429
442
  try {
430
443
  await access(workflowsPath);
@@ -446,9 +459,9 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
446
459
  return 0;
447
460
  }
448
461
  // Load workflow files
449
- let pattern = join(activePath, '*.yaml').replace(/\\/g, '/');
450
- if (pattern.startsWith('/c/')) {
451
- pattern = 'C:' + pattern.substring(2);
462
+ let pattern = join(activePath, "*.yaml").replace(/\\/g, "/");
463
+ if (pattern.startsWith("/c/")) {
464
+ pattern = "C:" + pattern.substring(2);
452
465
  }
453
466
  const workflowFiles = await glob(pattern);
454
467
  console.error(`📋 Found ${workflowFiles.length} workflow files in git layer`);
@@ -457,7 +470,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
457
470
  try {
458
471
  const workflow = await this.loadWorkflow(filePath);
459
472
  if (workflow) {
460
- const workflowId = workflow.type || basename(filePath, '.yaml');
473
+ const workflowId = workflow.type || basename(filePath, ".yaml");
461
474
  this.workflows.set(workflowId, workflow);
462
475
  loadedCount++;
463
476
  }
@@ -474,8 +487,10 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
474
487
  */
475
488
  async loadWorkflow(filePath) {
476
489
  try {
477
- const content = await readFile(filePath, 'utf-8');
478
- const normalizedContent = content.replace(/^\uFEFF/, '').replace(/\r\n/g, '\n');
490
+ const content = await readFile(filePath, "utf-8");
491
+ const normalizedContent = content
492
+ .replace(/^\uFEFF/, "")
493
+ .replace(/\r\n/g, "\n");
479
494
  // Parse YAML content
480
495
  const workflowData = yaml.parse(normalizedContent);
481
496
  // Validate required fields
@@ -494,8 +509,10 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
494
509
  * Load a single specialist from a markdown file
495
510
  */
496
511
  async loadSpecialist(filePath) {
497
- const content = await readFile(filePath, 'utf-8');
498
- const normalizedContent = content.replace(/^\uFEFF/, '').replace(/\r\n/g, '\n');
512
+ const content = await readFile(filePath, "utf-8");
513
+ const normalizedContent = content
514
+ .replace(/^\uFEFF/, "")
515
+ .replace(/\r\n/g, "\n");
499
516
  // Extract YAML frontmatter
500
517
  const frontmatterMatch = normalizedContent.match(/^---\s*\n([\s\S]*?)\n---\s*\n([\s\S]*)$/);
501
518
  if (!frontmatterMatch) {
@@ -503,7 +520,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
503
520
  return null;
504
521
  }
505
522
  const [, frontmatterContent, markdownContent] = frontmatterMatch;
506
- const frontmatterData = yaml.parse(frontmatterContent || '');
523
+ const frontmatterData = yaml.parse(frontmatterContent || "");
507
524
  // Validate required fields
508
525
  if (!frontmatterData.specialist_id || !frontmatterData.title) {
509
526
  console.error(`⚠️ Missing required fields in ${filePath}`);
@@ -513,26 +530,27 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
513
530
  const specialist = {
514
531
  title: frontmatterData.title,
515
532
  specialist_id: frontmatterData.specialist_id,
516
- emoji: frontmatterData.emoji || '🤖',
517
- role: frontmatterData.role || 'Specialist',
518
- team: frontmatterData.team || 'General',
533
+ emoji: frontmatterData.emoji || "🤖",
534
+ role: frontmatterData.role || "Specialist",
535
+ team: frontmatterData.team || "General",
519
536
  persona: {
520
537
  personality: frontmatterData.persona?.personality || [],
521
- communication_style: frontmatterData.persona?.communication_style || '',
522
- greeting: frontmatterData.persona?.greeting || `${frontmatterData.emoji || '🤖'} Hello!`
538
+ communication_style: frontmatterData.persona?.communication_style || "",
539
+ greeting: frontmatterData.persona?.greeting ||
540
+ `${frontmatterData.emoji || "🤖"} Hello!`,
523
541
  },
524
542
  expertise: {
525
543
  primary: frontmatterData.expertise?.primary || [],
526
- secondary: frontmatterData.expertise?.secondary || []
544
+ secondary: frontmatterData.expertise?.secondary || [],
527
545
  },
528
546
  domains: frontmatterData.domains || [],
529
547
  when_to_use: frontmatterData.when_to_use || [],
530
548
  collaboration: {
531
549
  natural_handoffs: frontmatterData.collaboration?.natural_handoffs || [],
532
- team_consultations: frontmatterData.collaboration?.team_consultations || []
550
+ team_consultations: frontmatterData.collaboration?.team_consultations || [],
533
551
  },
534
552
  related_specialists: frontmatterData.related_specialists || [],
535
- content: markdownContent.trim()
553
+ content: markdownContent.trim(),
536
554
  };
537
555
  return specialist;
538
556
  }
@@ -544,10 +562,10 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
544
562
  // Recursively load from subdirectories
545
563
  await this.loadTopicsFromDirectory(fullPath);
546
564
  }
547
- else if (entry.isFile() && entry.name.endsWith('.md')) {
565
+ else if (entry.isFile() && entry.name.endsWith(".md")) {
548
566
  // Load markdown files as topics
549
567
  try {
550
- const content = await readFile(fullPath, 'utf-8');
568
+ const content = await readFile(fullPath, "utf-8");
551
569
  const relativePath = this.getRelativePath(fullPath);
552
570
  const topic = await this.loadAtomicTopic(fullPath, content, relativePath);
553
571
  if (topic && this.validateTopic(topic)) {
@@ -564,14 +582,14 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
564
582
  const basePath = this.gitConfig.subpath
565
583
  ? join(this.localPath, this.gitConfig.subpath)
566
584
  : this.localPath;
567
- return absolutePath.replace(basePath + '/', '').replace(/\\/g, '/');
585
+ return absolutePath.replace(basePath + "/", "").replace(/\\/g, "/");
568
586
  }
569
587
  async getCurrentCommitHash() {
570
588
  if (!this.git)
571
589
  return undefined;
572
590
  try {
573
591
  await this.git.cwd(this.localPath);
574
- const log = await this.git.log(['--oneline', '-1']);
592
+ const log = await this.git.log(["--oneline", "-1"]);
575
593
  return log.latest?.hash;
576
594
  }
577
595
  catch {
@@ -592,7 +610,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
592
610
  let hash = 0;
593
611
  for (let i = 0; i < url.length; i++) {
594
612
  const char = url.charCodeAt(i);
595
- hash = ((hash << 5) - hash) + char;
613
+ hash = (hash << 5) - hash + char;
596
614
  hash = hash & hash; // Convert to 32-bit integer
597
615
  }
598
616
  return Math.abs(hash).toString(16);
@@ -624,7 +642,9 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
624
642
  try {
625
643
  const stats = await stat(filePath);
626
644
  // Normalize line endings
627
- const normalizedContent = content.replace(/\r\n/g, '\n').replace(/\r/g, '\n');
645
+ const normalizedContent = content
646
+ .replace(/\r\n/g, "\n")
647
+ .replace(/\r/g, "\n");
628
648
  // Extract YAML frontmatter
629
649
  const frontmatterMatch = normalizedContent.match(/^---\s*\n([\s\S]*?)\n---\s*\n([\s\S]*)$/);
630
650
  if (!frontmatterMatch) {
@@ -632,18 +652,18 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
632
652
  }
633
653
  const [, frontmatterContent, markdownContent] = frontmatterMatch;
634
654
  // Parse and validate frontmatter
635
- const frontmatterData = yaml.parse(frontmatterContent || '');
655
+ const frontmatterData = yaml.parse(frontmatterContent || "");
636
656
  const frontmatter = AtomicTopicFrontmatterSchema.parse(frontmatterData);
637
657
  // Generate topic ID from relative path
638
658
  const topicId = this.normalizeTopicId(relativePath);
639
659
  return {
640
660
  id: topicId,
641
- title: frontmatter.title || topicId.replace(/-/g, ' '),
661
+ title: frontmatter.title || topicId.replace(/-/g, " "),
642
662
  filePath,
643
663
  frontmatter,
644
- content: markdownContent?.trim() || '',
664
+ content: markdownContent?.trim() || "",
645
665
  wordCount: markdownContent?.split(/\s+/).length || 0,
646
- lastModified: stats.mtime
666
+ lastModified: stats.mtime,
647
667
  };
648
668
  }
649
669
  catch (error) {
@@ -656,10 +676,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
656
676
  */
657
677
  normalizeTopicId(filePath, basePath) {
658
678
  // For git layer, filePath is already relative
659
- return filePath
660
- .replace(/\.md$/, '')
661
- .replace(/\\/g, '/')
662
- .toLowerCase();
679
+ return filePath.replace(/\.md$/, "").replace(/\\/g, "/").toLowerCase();
663
680
  }
664
681
  /**
665
682
  * Validate topic structure
@@ -669,13 +686,13 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
669
686
  }
670
687
  getSourceInfo() {
671
688
  return {
672
- type: 'git',
689
+ type: "git",
673
690
  url: this.gitConfig.url,
674
691
  branch: this.gitConfig.branch,
675
692
  subpath: this.gitConfig.subpath,
676
693
  localPath: this.localPath,
677
694
  lastUpdated: this.lastUpdated,
678
- hasAuth: !!this.auth
695
+ hasAuth: !!this.auth,
679
696
  };
680
697
  }
681
698
  }
@@ -1 +1 @@
1
- {"version":3,"file":"git-layer.js","sourceRoot":"","sources":["../../src/layers/git-layer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-layer.js","sourceRoot":"","sources":["../../src/layers/git-layer.ts"],"names":[],"mappings":"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"}