@agentbrain/mcp-server 1.4.70 → 1.4.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,9 @@
1
1
  // MCP tool: load_context - load context docs at session start
2
- import { readFile, writeFile, readdir } from 'node:fs/promises';
2
+ import { readFile, writeFile, readdir, mkdir } from 'node:fs/promises';
3
3
  import { existsSync } from 'node:fs';
4
4
  import { join, resolve } from 'node:path';
5
5
  import { homedir } from 'node:os';
6
- import { loadAIConfig, generateContext, getGitHash, loadCache, getPendingDoomForMCP, ensureGitignore, installPostCommitHook, isGitRepository, createAgentFilesShared, } from '@agentbrain/core';
6
+ import { loadAIConfig, generateContext, getGitHash, loadCache, getPendingDoomForMCP, ensureGitignore, installPostCommitHook, isGitRepository, createAgentFilesShared, generateContextFiles, } from '@agentbrain/core';
7
7
  /**
8
8
  * Expand path: handles ~, relative paths, etc.
9
9
  */
@@ -20,6 +20,8 @@ function orderContextFiles(files) {
20
20
  const order = [
21
21
  'context.md',
22
22
  'branch-context.md',
23
+ 'agent-hints.md',
24
+ 'run-commands.md',
23
25
  'schema.md',
24
26
  'dependencies.md',
25
27
  'dependency-map.md',
@@ -70,14 +72,16 @@ function getFileDescription(filename) {
70
72
  'branch-context.md': 'current branch and recent commits',
71
73
  'inventory.md': 'components and utilities',
72
74
  'environment.md': 'environment variables',
75
+ 'run-commands.md': 'available commands',
76
+ 'agent-hints.md': 'entry points and stack',
73
77
  };
74
78
  return descriptions[filename] || 'additional context';
75
79
  }
76
80
  /**
77
- * Build a slim summary from context.md
78
- * Extracts key sections without full content
81
+ * Build a slim summary from context.md, run-commands.md, and agent-hints.md
82
+ * Extracts key sections without full content. Keep under 60 lines total.
79
83
  */
80
- function buildSlimSummary(contextContent, availableFiles) {
84
+ function buildSlimSummary(contextContent, availableFiles, runCommandsContent, agentHintsContent) {
81
85
  const lines = contextContent.split('\n');
82
86
  let projectName = 'Project';
83
87
  let techStack = [];
@@ -103,76 +107,211 @@ function buildSlimSummary(contextContent, availableFiles) {
103
107
  break; // Next section
104
108
  if (line.trim().startsWith('-') || line.trim().startsWith('*')) {
105
109
  const item = line.replace(/^[\s\-\*]+/, '').split(':')[0].trim();
106
- if (item && techStack.length < 8) {
110
+ if (item && techStack.length < 6) {
111
+ // Reduced from 8 to keep summary compact
107
112
  techStack.push(item);
108
113
  }
109
114
  }
110
115
  }
111
116
  }
112
- // Extract structure (look for "Structure", "Layout", "Repository" section)
113
- let inStructure = false;
114
- for (let i = 0; i < lines.length; i++) {
115
- const line = lines[i];
116
- if (/^##\s+(Repository Layout|Structure|Organization|Layout)/i.test(line)) {
117
- inStructure = true;
118
- continue;
119
- }
120
- if (inStructure) {
121
- if (line.startsWith('##'))
122
- break;
123
- if (line.includes('apps/') || line.includes('packages/') || line.includes('src/')) {
124
- const match = line.match(/(apps|packages|src)\/([a-zA-Z0-9\-_]+)/);
125
- if (match && structure.length < 6) {
126
- structure.push(`${match[1]}/${match[2]}`);
117
+ // Extract entry points from agent-hints.md if available
118
+ const entryPoints = [];
119
+ if (agentHintsContent) {
120
+ const hintLines = agentHintsContent.split('\n');
121
+ let inEntryPoints = false;
122
+ for (const line of hintLines) {
123
+ if (line.includes('## Entry Points')) {
124
+ inEntryPoints = true;
125
+ continue;
126
+ }
127
+ if (inEntryPoints) {
128
+ if (line.startsWith('##'))
129
+ break;
130
+ if (line.trim().startsWith('-')) {
131
+ const entry = line.replace(/^[\s\-\*]+/, '').trim();
132
+ if (entry && !entry.startsWith('*') && entryPoints.length < 3) {
133
+ entryPoints.push(entry);
134
+ }
127
135
  }
128
136
  }
129
137
  }
130
138
  }
131
- // Extract modules (look for "Modules", "Features", "Core Modules" section)
132
- let inModules = false;
133
- for (let i = 0; i < lines.length; i++) {
134
- const line = lines[i];
135
- if (/^##\s+(Core Modules|Modules|Features|Key Modules)/i.test(line)) {
136
- inModules = true;
137
- continue;
138
- }
139
- if (inModules) {
140
- if (line.startsWith('##'))
141
- break;
142
- if (line.trim().startsWith('-') || line.trim().startsWith('*')) {
143
- const item = line.replace(/^[\s\-\*]+/, '').split(':')[0].split('(')[0].trim();
144
- if (item && modules.length < 12) {
145
- modules.push(item);
139
+ // Extract run commands from run-commands.md if available
140
+ const runCommands = [];
141
+ if (runCommandsContent) {
142
+ const cmdLines = runCommandsContent.split('\n');
143
+ let currentCategory = '';
144
+ for (const line of cmdLines) {
145
+ if (line.startsWith('### ')) {
146
+ currentCategory = line.replace('### ', '').trim();
147
+ runCommands.push({ category: currentCategory, commands: [] });
148
+ }
149
+ else if (line.trim().startsWith('-') && currentCategory) {
150
+ const cmd = line.replace(/^[\s\-\*]+/, '').trim();
151
+ if (cmd) {
152
+ const lastCategory = runCommands[runCommands.length - 1];
153
+ if (lastCategory && lastCategory.commands.length < 3) {
154
+ // Max 3 per category to keep compact
155
+ lastCategory.commands.push(cmd);
156
+ }
146
157
  }
147
158
  }
148
159
  }
149
160
  }
150
- // Build slim summary
161
+ // Build slim summary (keep under 60 lines)
151
162
  let summary = `# ${projectName} - Context Summary\n\n`;
163
+ // Entry points (compact, high-value)
164
+ if (entryPoints.length > 0) {
165
+ summary += `## Entry Points\n${entryPoints.join(', ')}\n\n`;
166
+ }
167
+ // Tech stack
152
168
  if (techStack.length > 0) {
153
169
  summary += `## Tech Stack\n${techStack.join(', ')}\n\n`;
154
170
  }
155
- if (structure.length > 0) {
156
- summary += `## Repository Structure\n${structure.join(', ')}\n\n`;
157
- }
158
- if (modules.length > 0) {
159
- summary += `## Key Modules\n${modules.join(', ')}\n\n`;
171
+ // Run commands (compact format)
172
+ if (runCommands.length > 0) {
173
+ summary += `## Run Commands\n`;
174
+ for (const { category, commands } of runCommands.slice(0, 3)) {
175
+ // Max 3 categories
176
+ if (commands.length > 0) {
177
+ summary += `**${category}**: ${commands.slice(0, 2).join(', ')}\n`; // Max 2 per category
178
+ }
179
+ }
180
+ summary += '\n';
160
181
  }
182
+ // Available files (compact)
161
183
  summary += `## Available Context Files\n`;
162
- for (const file of availableFiles) {
184
+ const importantFiles = availableFiles.filter((f) => ['context.md', 'patterns.md', 'decisions.md', 'schema.md'].includes(f));
185
+ const otherFiles = availableFiles.filter((f) => !importantFiles.includes(f));
186
+ for (const file of importantFiles) {
163
187
  summary += `- .agentbrain/${file} — ${getFileDescription(file)}\n`;
164
188
  }
189
+ if (otherFiles.length > 0) {
190
+ summary += `... and ${otherFiles.length} more files\n`;
191
+ }
165
192
  summary += `\n## How to Load More\n`;
166
193
  summary += `- Full context: load_context({ full: true })\n`;
167
194
  summary += `- Specific file: load_context({ files: ['schema.md'] })\n`;
168
- summary += `- Or just ask me to read a specific file\n`;
195
+ summary += `- Generate new context: generate_context({ focus: "area name" })\n`;
169
196
  return summary;
170
197
  }
198
+ /**
199
+ * Bootstrap a repository with auto-generated context files
200
+ * Uses AST parser to generate factual files in ~1 second
201
+ * Agent only needs to write 3 interpretive files
202
+ */
203
+ async function bootstrapRepo(repoPath) {
204
+ const contextDir = join(repoPath, '.agentbrain');
205
+ // 1. Create .agentbrain/ directory
206
+ if (!existsSync(contextDir)) {
207
+ await mkdir(contextDir, { recursive: true });
208
+ }
209
+ // 2. Auto-generate factual context files using parser (fast, ~1 second)
210
+ const generatedFiles = await generateContextFiles(repoPath);
211
+ // 3. Save generated files to .agentbrain/
212
+ for (const file of generatedFiles) {
213
+ await writeFile(join(contextDir, file.name), file.content, 'utf-8');
214
+ }
215
+ // 4. Get current git hash and write cache.json
216
+ const gitHash = await getGitHash(repoPath);
217
+ const docs = {};
218
+ for (const file of generatedFiles) {
219
+ const baseName = file.name.replace('.md', '');
220
+ docs[baseName] = {
221
+ type: baseName,
222
+ content: file.content,
223
+ savedAt: new Date().toISOString(),
224
+ };
225
+ }
226
+ const cachePath = join(contextDir, 'cache.json');
227
+ const cache = {
228
+ gitHash,
229
+ docs,
230
+ savedAt: new Date().toISOString(),
231
+ };
232
+ await writeFile(cachePath, JSON.stringify(cache, null, 2), 'utf-8');
233
+ // Write setup-source marker
234
+ const setupSourcePath = join(contextDir, 'setup-source.json');
235
+ await writeFile(setupSourcePath, JSON.stringify({ source: 'mcp-bootstrap', setupAt: new Date().toISOString() }, null, 2), 'utf-8');
236
+ // 5. Update .gitignore
237
+ try {
238
+ await ensureGitignore(repoPath);
239
+ }
240
+ catch (err) {
241
+ console.error('[bootstrap] .gitignore update failed:', err);
242
+ }
243
+ // 6. Install git hook if this is a git repository
244
+ if (isGitRepository(repoPath)) {
245
+ try {
246
+ await installPostCommitHook(repoPath);
247
+ }
248
+ catch (err) {
249
+ console.error('[bootstrap] Git hook installation failed:', err);
250
+ }
251
+ }
252
+ // 7. Update AGENTS.md with file list
253
+ const fileNames = generatedFiles.map((f) => f.name);
254
+ try {
255
+ await createAgentFilesShared(repoPath, fileNames);
256
+ }
257
+ catch (err) {
258
+ console.error('[bootstrap] AGENTS.md update failed:', err);
259
+ }
260
+ // 8. Return instruction for agent to write the 3 interpretive files only
261
+ const fileList = generatedFiles.map((f) => `✓ .agentbrain/${f.name}`).join('\n');
262
+ return `AgentBrain has auto-generated ${generatedFiles.length} context files from your codebase in ~2 seconds:
263
+
264
+ ${fileList}
265
+
266
+ These cover ~80% of what you need to work effectively in this codebase.
267
+
268
+ Now generate 3 short interpretive files. Call save_context() when done.
269
+
270
+ IMPORTANT: Keep each file SHORT and focused on NON-OBVIOUS information only. The factual files already exist. Don't repeat what's already in schema.md, dependencies.md, etc.
271
+
272
+ ---
273
+
274
+ 1. context.md (target: 20-30 lines)
275
+ Only include:
276
+ - What this product does (2 sentences max)
277
+ - Key modules list (name + 1 line purpose each)
278
+ - 1-2 non-obvious data flows
279
+ Skip: tech stack (in dependencies.md), file structure (in inventory.md)
280
+
281
+ 2. patterns.md (target: 20-40 lines)
282
+ Only include:
283
+ - Key utilities to ALWAYS use (not reinvent)
284
+ - 3-5 anti-patterns specific to this codebase
285
+ - Error handling approach
286
+ - 1-2 non-obvious conventions
287
+ Skip: standard framework patterns, obvious conventions
288
+
289
+ 3. decisions.md (target: 10-20 lines)
290
+ Only include:
291
+ - What must NOT be changed (compliance, legacy)
292
+ - Why key non-obvious libraries were chosen
293
+ - 1-2 architectural choices that surprise devs
294
+ Skip: obvious choices, anything self-evident from the code
295
+
296
+ Total target: under 80 lines across all 3 files.
297
+ Short, opinionated, non-obvious = high signal.
298
+ Long, comprehensive, obvious = noise.`;
299
+ }
171
300
  export async function loadContext(input) {
172
301
  const { repo_path, force_refresh = false, full = false, files: requestedFiles } = input;
173
302
  // Expand path to handle ~, relative paths, etc.
174
303
  const expandedPath = expandPath(repo_path);
175
304
  const contextDir = join(expandedPath, '.agentbrain');
305
+ // Bootstrap if .agentbrain/ doesn't exist
306
+ if (!existsSync(contextDir)) {
307
+ const bootstrapMessage = await bootstrapRepo(expandedPath);
308
+ return {
309
+ content: bootstrapMessage,
310
+ fromCache: false,
311
+ tokensUsed: 0,
312
+ doom_warning: null,
313
+ };
314
+ }
176
315
  // Get current git hash for staleness check
177
316
  const currentGitHash = await getGitHash(expandedPath);
178
317
  // Try to load from disk first - read ALL .md files
@@ -190,8 +329,8 @@ export async function loadContext(input) {
190
329
  filesToLoad = orderedFiles.filter((f) => requestedFiles.includes(f));
191
330
  }
192
331
  else if (!full) {
193
- // Slim mode: only load context.md for summary extraction
194
- filesToLoad = orderedFiles.filter((f) => f === 'context.md');
332
+ // Slim mode: load context.md, run-commands.md, and agent-hints.md for summary
333
+ filesToLoad = orderedFiles.filter((f) => ['context.md', 'run-commands.md', 'agent-hints.md'].includes(f));
195
334
  }
196
335
  // Load files
197
336
  const fileContents = [];
@@ -204,14 +343,16 @@ export async function loadContext(input) {
204
343
  // Build output based on mode
205
344
  let combined;
206
345
  if (!full && !requestedFiles) {
207
- // Slim mode: build summary from context.md
346
+ // Slim mode: build summary from context.md, run-commands.md, and agent-hints.md
208
347
  const contextContent = fileContents.find((f) => f.name === 'context.md');
348
+ const runCommandsContent = fileContents.find((f) => f.name === 'run-commands.md');
349
+ const agentHintsContent = fileContents.find((f) => f.name === 'agent-hints.md');
209
350
  if (contextContent) {
210
- combined = buildSlimSummary(contextContent.content, orderedFiles);
351
+ combined = buildSlimSummary(contextContent.content, orderedFiles, runCommandsContent?.content, agentHintsContent?.content);
211
352
  }
212
353
  else {
213
354
  // Fallback if context.md doesn't exist
214
- combined = buildSlimSummary('# Project\n\n', orderedFiles);
355
+ combined = buildSlimSummary('# Project\n\n', orderedFiles, runCommandsContent?.content, agentHintsContent?.content);
215
356
  }
216
357
  }
217
358
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"load-context.js","sourceRoot":"","sources":["../../src/tools/load-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"load-context.js","sourceRoot":"","sources":["../../src/tools/load-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export interface LoadDecisionsInput {
2
+ repo_path: string;
3
+ }
4
+ export declare const loadDecisionsSchema: {
5
+ name: string;
6
+ description: string;
7
+ inputSchema: {
8
+ type: string;
9
+ properties: {
10
+ repo_path: {
11
+ type: string;
12
+ description: string;
13
+ };
14
+ };
15
+ required: string[];
16
+ };
17
+ };
18
+ export declare function loadDecisions(input: LoadDecisionsInput): Promise<string>;
19
+ //# sourceMappingURL=load-decisions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-decisions.d.ts","sourceRoot":"","sources":["../../src/tools/load-decisions.ts"],"names":[],"mappings":"AA+BA,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;CAClB;AA+BD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;CAc/B,CAAA;AAuED,wBAAsB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAkD9E"}
@@ -0,0 +1,138 @@
1
+ // MCP tool: load_decisions - Load workspace Decisions from cloud
2
+ import { homedir } from 'node:os';
3
+ import { join } from 'node:path';
4
+ // ══════════════════════════════════════════════════════════════
5
+ // Environment & Configuration
6
+ // ══════════════════════════════════════════════════════════════
7
+ const BASE_URL = process.env.AGENTBRAIN_API_BASE_URL?.replace(/\/$/, '') ?? 'https://www.useagentbrain.com/api/v1';
8
+ const DECISIONS_URL = `${BASE_URL}/decisions`;
9
+ /**
10
+ * Expand path: handles ~, relative paths, etc.
11
+ */
12
+ function expandPath(path) {
13
+ if (path.startsWith('~/') || path === '~') {
14
+ return path.replace('~', homedir());
15
+ }
16
+ if (!path.startsWith('/')) {
17
+ return join(process.cwd(), path);
18
+ }
19
+ return path;
20
+ }
21
+ // ══════════════════════════════════════════════════════════════
22
+ // Schema
23
+ // ══════════════════════════════════════════════════════════════
24
+ export const loadDecisionsSchema = {
25
+ name: 'load_decisions',
26
+ description: 'Load workspace Decisions — why tech choices were made, rejected alternatives, and non-obvious code decisions. Load before any refactor or architectural change.',
27
+ inputSchema: {
28
+ type: 'object',
29
+ properties: {
30
+ repo_path: {
31
+ type: 'string',
32
+ description: 'Absolute path to repository',
33
+ },
34
+ },
35
+ required: ['repo_path'],
36
+ },
37
+ };
38
+ // ══════════════════════════════════════════════════════════════
39
+ // Formatting
40
+ // ══════════════════════════════════════════════════════════════
41
+ function formatDecisions(content) {
42
+ const workspaceName = content.workspace_name || 'Workspace';
43
+ let output = `# Decisions — ${workspaceName}\n\n`;
44
+ // Tech Decisions
45
+ if (content.tech_decisions && content.tech_decisions.length > 0) {
46
+ output += '## Tech Decisions\n';
47
+ for (const decision of content.tech_decisions) {
48
+ output += `- ${decision.technology}: ${decision.reason}\n`;
49
+ }
50
+ output += '\n';
51
+ }
52
+ // Rejected Alternatives
53
+ if (content.rejected_alternatives && content.rejected_alternatives.length > 0) {
54
+ output += '## Rejected Alternatives\n';
55
+ output += '⛔ Do not suggest these — already tried:\n';
56
+ for (const alternative of content.rejected_alternatives) {
57
+ output += `- ${alternative.what_was_tried}: ${alternative.why_rejected}\n`;
58
+ }
59
+ output += '\n';
60
+ }
61
+ // Non-Obvious Code Decisions
62
+ if (content.code_decisions && content.code_decisions.length > 0) {
63
+ output += '## Non-Obvious Code Decisions\n';
64
+ for (const decision of content.code_decisions) {
65
+ output += `- ${decision.file_path}:\n ${decision.explanation}\n`;
66
+ }
67
+ output += '\n';
68
+ }
69
+ // Source of Truth Priority
70
+ if (content.source_of_truth_priority || content.conflict_resolution_rule) {
71
+ output += '## Source of Truth Priority\n';
72
+ if (content.source_of_truth_priority && content.source_of_truth_priority.length > 0) {
73
+ output += 'When docs conflict, use this order:\n';
74
+ content.source_of_truth_priority.forEach((source, index) => {
75
+ output += `${index + 1}. ${source}\n`;
76
+ });
77
+ }
78
+ if (content.conflict_resolution_rule) {
79
+ output += `When conflict found: ${content.conflict_resolution_rule}\n`;
80
+ }
81
+ output += '\n';
82
+ }
83
+ return output;
84
+ }
85
+ function isContentEmpty(content) {
86
+ const hasTechDecisions = content.tech_decisions && content.tech_decisions.length > 0;
87
+ const hasRejectedAlternatives = content.rejected_alternatives && content.rejected_alternatives.length > 0;
88
+ const hasCodeDecisions = content.code_decisions && content.code_decisions.length > 0;
89
+ const hasSourceOfTruth = (content.source_of_truth_priority && content.source_of_truth_priority.length > 0) ||
90
+ !!content.conflict_resolution_rule;
91
+ return !(hasTechDecisions || hasRejectedAlternatives || hasCodeDecisions || hasSourceOfTruth);
92
+ }
93
+ // ══════════════════════════════════════════════════════════════
94
+ // Main Tool Function
95
+ // ══════════════════════════════════════════════════════════════
96
+ export async function loadDecisions(input) {
97
+ const apiKey = process.env.AGENTBRAIN_API_KEY;
98
+ if (!apiKey) {
99
+ return `Decisions requires an API key.
100
+ Add AGENTBRAIN_API_KEY to your MCP config env block.
101
+ Get your key at useagentbrain.com/settings`;
102
+ }
103
+ try {
104
+ const res = await fetch(DECISIONS_URL, {
105
+ method: 'GET',
106
+ headers: {
107
+ 'x-api-key': apiKey,
108
+ 'Content-Type': 'application/json',
109
+ },
110
+ });
111
+ if (res.status === 401) {
112
+ return 'Invalid AGENTBRAIN_API_KEY. Check your MCP config env block.';
113
+ }
114
+ if (res.status === 404) {
115
+ return `No Decisions found for this workspace.
116
+ Create one at useagentbrain.com/settings → Decisions tab.`;
117
+ }
118
+ if (!res.ok) {
119
+ const json = (await res.json());
120
+ return json.error ?? 'Failed to load Decisions from AgentBrain.';
121
+ }
122
+ const json = (await res.json());
123
+ if (!json.data) {
124
+ return `No Decisions found for this workspace.
125
+ Create one at useagentbrain.com/settings → Decisions tab.`;
126
+ }
127
+ const content = json.data.content;
128
+ if (isContentEmpty(content)) {
129
+ return `Decisions exists but has no content yet.
130
+ Fill it out at useagentbrain.com/settings → Decisions tab.`;
131
+ }
132
+ return formatDecisions(content);
133
+ }
134
+ catch (err) {
135
+ return err instanceof Error ? err.message : 'Failed to load Decisions.';
136
+ }
137
+ }
138
+ //# sourceMappingURL=load-decisions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-decisions.js","sourceRoot":"","sources":["../../src/tools/load-decisions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export interface LoadGuardrailsInput {
2
+ repo_path: string;
3
+ }
4
+ export declare const loadGuardrailsSchema: {
5
+ name: string;
6
+ description: string;
7
+ inputSchema: {
8
+ type: string;
9
+ properties: {
10
+ repo_path: {
11
+ type: string;
12
+ description: string;
13
+ };
14
+ };
15
+ required: string[];
16
+ };
17
+ };
18
+ export declare function loadGuardrails(input: LoadGuardrailsInput): Promise<string>;
19
+ //# sourceMappingURL=load-guardrails.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-guardrails.d.ts","sourceRoot":"","sources":["../../src/tools/load-guardrails.ts"],"names":[],"mappings":"AA+BA,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAA;CAClB;AAkCD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;CAchC,CAAA;AAkFD,wBAAsB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAkDhF"}