@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.
- package/dist/index.js +67 -20
- package/dist/index.js.map +1 -1
- package/dist/tools/generate-context.d.ts +24 -0
- package/dist/tools/generate-context.d.ts.map +1 -0
- package/dist/tools/generate-context.js +73 -0
- package/dist/tools/generate-context.js.map +1 -0
- package/dist/tools/load-blueprint.d.ts +19 -0
- package/dist/tools/load-blueprint.d.ts.map +1 -0
- package/dist/tools/load-blueprint.js +152 -0
- package/dist/tools/load-blueprint.js.map +1 -0
- package/dist/tools/load-context.d.ts.map +1 -1
- package/dist/tools/load-context.js +190 -49
- package/dist/tools/load-context.js.map +1 -1
- package/dist/tools/load-decisions.d.ts +19 -0
- package/dist/tools/load-decisions.d.ts.map +1 -0
- package/dist/tools/load-decisions.js +138 -0
- package/dist/tools/load-decisions.js.map +1 -0
- package/dist/tools/load-guardrails.d.ts +19 -0
- package/dist/tools/load-guardrails.d.ts.map +1 -0
- package/dist/tools/load-guardrails.js +149 -0
- package/dist/tools/load-guardrails.js.map +1 -0
- package/dist/tools/load-standards.d.ts.map +1 -1
- package/dist/tools/load-standards.js +135 -4
- package/dist/tools/load-standards.js.map +1 -1
- package/dist/tools/preflight-check.d.ts +24 -0
- package/dist/tools/preflight-check.d.ts.map +1 -0
- package/dist/tools/preflight-check.js +279 -0
- package/dist/tools/preflight-check.js.map +1 -0
- package/dist/tools/save-context.d.ts.map +1 -1
- package/dist/tools/save-context.js +40 -10
- package/dist/tools/save-context.js.map +1 -1
- package/package.json +1 -1
|
@@ -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 <
|
|
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
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
if (
|
|
126
|
-
|
|
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
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
const
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
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
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
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
|
-
|
|
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 += `-
|
|
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:
|
|
194
|
-
filesToLoad = orderedFiles.filter((f) =>
|
|
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":"AAAA,8DAA8D;AAE9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EACL,YAAY,EACZ,eAAe,EAEf,UAAU,EACV,SAAS,EACT,oBAAoB,EAEpB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,kBAAkB,CAAA;AAGzB;;GAEG;AACH,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAA;IACrC,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAA;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,KAAe;IACxC,MAAM,KAAK,GAAG;QACZ,YAAY;QACZ,mBAAmB;QACnB,gBAAgB;QAChB,iBAAiB;QACjB,WAAW;QACX,iBAAiB;QACjB,mBAAmB;QACnB,aAAa;QACb,cAAc;QACd,cAAc;QACd,YAAY;QACZ,gBAAgB;KACjB,CAAA;IAED,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,MAAM,SAAS,GAAa,EAAE,CAAA;IAC9B,IAAI,UAAU,GAAkB,IAAI,CAAA;IAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,UAAU,GAAG,IAAI,CAAA;QACnB,CAAC;aAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACtB,CAAC;IACH,CAAC;IAED,kCAAkC;IAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAE3D,gCAAgC;IAChC,SAAS,CAAC,IAAI,EAAE,CAAA;IAEhB,2CAA2C;IAC3C,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,SAAS,CAAC,CAAA;IACzC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACzB,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,MAAM,YAAY,GAA2B;QAC3C,YAAY,EAAE,uBAAuB;QACrC,WAAW,EAAE,iBAAiB;QAC9B,aAAa,EAAE,oBAAoB;QACnC,iBAAiB,EAAE,kBAAkB;QACrC,mBAAmB,EAAE,sBAAsB;QAC3C,YAAY,EAAE,eAAe;QAC7B,cAAc,EAAE,sBAAsB;QACtC,WAAW,EAAE,4BAA4B;QACzC,mBAAmB,EAAE,mCAAmC;QACxD,cAAc,EAAE,0BAA0B;QAC1C,gBAAgB,EAAE,uBAAuB;QACzC,iBAAiB,EAAE,oBAAoB;QACvC,gBAAgB,EAAE,wBAAwB;KAC3C,CAAA;IACD,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAA;AACvD,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CACvB,cAAsB,EACtB,cAAwB,EACxB,kBAA2B,EAC3B,iBAA0B;IAE1B,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACxC,IAAI,WAAW,GAAG,SAAS,CAAA;IAC3B,IAAI,SAAS,GAAa,EAAE,CAAA;IAC5B,IAAI,SAAS,GAAa,EAAE,CAAA;IAC5B,IAAI,OAAO,GAAa,EAAE,CAAA;IAE1B,yCAAyC;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC1C,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YAC3C,MAAK;QACP,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACrB,IAAI,mDAAmD,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACnE,WAAW,GAAG,IAAI,CAAA;YAClB,SAAQ;QACV,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,MAAK,CAAC,eAAe;YAChD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAChE,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjC,yCAAyC;oBACzC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,MAAM,WAAW,GAAa,EAAE,CAAA;IAChC,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,aAAa,GAAG,KAAK,CAAA;QACzB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACrC,aAAa,GAAG,IAAI,CAAA;gBACpB,SAAQ;YACV,CAAC;YACD,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;oBAAE,MAAK;gBAChC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;oBACnD,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC9D,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBACzB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,MAAM,WAAW,GAA+C,EAAE,CAAA;IAClE,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,eAAe,GAAG,EAAE,CAAA;QACxB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBACjD,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;YAC/D,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,eAAe,EAAE,CAAC;gBAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBACjD,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;oBACxD,IAAI,YAAY,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACrD,qCAAqC;wBACrC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACjC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,2CAA2C;IAC3C,IAAI,OAAO,GAAG,KAAK,WAAW,wBAAwB,CAAA;IAEtD,qCAAqC;IACrC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,oBAAoB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;IAC7D,CAAC;IAED,aAAa;IACb,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,kBAAkB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;IACzD,CAAC;IAED,gCAAgC;IAChC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,mBAAmB,CAAA;QAC9B,KAAK,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC7D,mBAAmB;YACnB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,IAAI,KAAK,QAAQ,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA,CAAC,qBAAqB;YAC1F,CAAC;QACH,CAAC;QACD,OAAO,IAAI,IAAI,CAAA;IACjB,CAAC;IAED,4BAA4B;IAC5B,OAAO,IAAI,8BAA8B,CAAA;IACzC,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACjD,CAAC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACvE,CAAA;IACD,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5E,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;QAClC,OAAO,IAAI,iBAAiB,IAAI,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAA;IACpE,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,WAAW,UAAU,CAAC,MAAM,eAAe,CAAA;IACxD,CAAC;IAED,OAAO,IAAI,yBAAyB,CAAA;IACpC,OAAO,IAAI,gDAAgD,CAAA;IAC3D,OAAO,IAAI,2DAA2D,CAAA;IACtE,OAAO,IAAI,oEAAoE,CAAA;IAE/E,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,aAAa,CAAC,QAAgB;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAA;IAEhD,mCAAmC;IACnC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9C,CAAC;IAED,wEAAwE;IACxE,MAAM,cAAc,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAA;IAE3D,0CAA0C;IAC1C,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;QAClC,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACrE,CAAC;IAED,+CAA+C;IAC/C,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC1C,MAAM,IAAI,GAAuE,EAAE,CAAA;IACnF,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAC7C,IAAI,CAAC,QAAQ,CAAC,GAAG;YACf,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAClC,CAAA;IACH,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;IAChD,MAAM,KAAK,GAAG;QACZ,OAAO;QACP,IAAI;QACJ,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KAClC,CAAA;IACD,MAAM,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IAEnE,4BAA4B;IAC5B,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAA;IAC7D,MAAM,SAAS,CACb,eAAe,EACf,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EACvF,OAAO,CACR,CAAA;IAED,uBAAuB;IACvB,IAAI,CAAC;QACH,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAA;IACjC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,GAAG,CAAC,CAAA;IAC7D,CAAC;IAED,kDAAkD;IAClD,IAAI,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAA;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACnD,IAAI,CAAC;QACH,MAAM,sBAAsB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAA;IAC5D,CAAC;IAED,yEAAyE;IACzE,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEhF,OAAO,iCAAiC,cAAc,CAAC,MAAM;;EAE7D,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sCAkC4B,CAAA;AACtC,CAAC;AAoBD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAuB;IACvD,MAAM,EAAE,SAAS,EAAE,aAAa,GAAG,KAAK,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,KAAK,CAAA;IAEvF,gDAAgD;IAChD,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;IAE1C,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAA;IAEpD,0CAA0C;IAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAA;QAE1D,OAAO;YACL,OAAO,EAAE,gBAAgB;YACzB,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,IAAI;SACnB,CAAA;IACH,CAAC;IAED,2CAA2C;IAC3C,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,CAAA;IAErD,mDAAmD;IACnD,IAAI,CAAC,aAAa,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAA;YAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;YAEzD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,uBAAuB;gBACvB,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;gBAE/C,8CAA8C;gBAC9C,IAAI,WAAW,GAAG,YAAY,CAAA;gBAC9B,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChD,4BAA4B;oBAC5B,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;gBACtE,CAAC;qBAAM,IAAI,CAAC,IAAI,EAAE,CAAC;oBACjB,8EAA8E;oBAC9E,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACtC,CAAC,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAChE,CAAA;gBACH,CAAC;gBAED,aAAa;gBACb,MAAM,YAAY,GAA6C,EAAE,CAAA;gBACjE,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;oBAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;oBACvC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;oBACjD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;oBACjG,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,KAAK,OAAO,OAAO,EAAE,EAAE,CAAC,CAAA;gBACxE,CAAC;gBAED,6BAA6B;gBAC7B,IAAI,QAAgB,CAAA;gBACpB,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBAC7B,gFAAgF;oBAChF,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAA;oBACxE,MAAM,kBAAkB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAA;oBACjF,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAA;oBAE/E,IAAI,cAAc,EAAE,CAAC;wBACnB,QAAQ,GAAG,gBAAgB,CACzB,cAAc,CAAC,OAAO,EACtB,YAAY,EACZ,kBAAkB,EAAE,OAAO,EAC3B,iBAAiB,EAAE,OAAO,CAC3B,CAAA;oBACH,CAAC;yBAAM,CAAC;wBACN,uCAAuC;wBACvC,QAAQ,GAAG,gBAAgB,CACzB,eAAe,EACf,YAAY,EACZ,kBAAkB,EAAE,OAAO,EAC3B,iBAAiB,EAAE,OAAO,CAC3B,CAAA;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,4DAA4D;oBAC5D,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBACnE,CAAC;gBAED,6FAA6F;gBAC7F,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;gBAChD,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAA;gBAC7D,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;gBACzC,MAAM,iBAAiB,GAAG,UAAU,CAAC,eAAe,CAAC,CAAA;gBAErD,IAAI,CAAC,WAAW,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvC,mDAAmD;oBACnD,IAAI,CAAC;wBACH,kCAAkC;wBAClC,IAAI,CAAC,WAAW,EAAE,CAAC;4BACjB,MAAM,IAAI,GAAuE,EAAE,CAAA;4BACnF,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;gCAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;gCACvC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;gCACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;gCACxC,IAAI,CAAC,QAAQ,CAAC,GAAG;oCACf,IAAI,EAAE,QAAQ;oCACd,OAAO;oCACP,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iCAClC,CAAA;4BACH,CAAC;4BAED,MAAM,KAAK,GAAG;gCACZ,OAAO,EAAE,cAAc;gCACvB,IAAI;gCACJ,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;6BAClC,CAAA;4BACD,MAAM,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;wBACrE,CAAC;wBAED,0BAA0B;wBAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;4BACvB,MAAM,SAAS,CACb,eAAe,EACf,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAC7E,OAAO,CACR,CAAA;wBACH,CAAC;wBAED,oBAAoB;wBACpB,MAAM,eAAe,CAAC,YAAY,CAAC,CAAA;wBAEnC,+CAA+C;wBAC/C,IAAI,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;4BAClC,MAAM,qBAAqB,CAAC,YAAY,CAAC,CAAA;wBAC3C,CAAC;wBAED,4CAA4C;wBAC5C,MAAM,sBAAsB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;wBAExD,mCAAmC;oBACrC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAA;oBAC9D,CAAC;gBACH,CAAC;gBAED,gDAAgD;gBAChD,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,CAAA;gBAC3C,MAAM,OAAO,GAAG,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,cAAc,CAAA;gBAEzD,+BAA+B;gBAC/B,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAA;gBAE5D,MAAM,MAAM,GAAG,yFAAyF,CAAA;gBAExG,OAAO;oBACL,OAAO,EAAE,QAAQ,GAAG,MAAM;oBAC1B,SAAS,EAAE,IAAI;oBACf,UAAU,EAAE,CAAC;oBACb,GAAG,CAAC,OAAO,IAAI;wBACb,KAAK,EAAE,IAAI;wBACX,UAAU,EAAE,KAAK,CAAC,OAAO;wBACzB,WAAW,EAAE,cAAc;wBAC3B,OAAO,EAAE,0DAA0D;qBACpE,CAAC;oBACF,YAAY,EAAE,WAAW;iBAC1B,CAAA;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,iEAAiE;YACjE,OAAO,CAAC,KAAK,CAAC,iDAAiD,EAAE,GAAG,CAAC,CAAA;QACvE,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,CAAA;IAE3C,IAAI,CAAC,aAAa,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QAC1C,uCAAuC;QACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,CAAA;QACpE,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QAE/C,6CAA6C;QAC7C,IAAI,UAAU,GAAG,WAAW,CAAA;QAC5B,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChD,4BAA4B;YAC5B,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACpE,CAAC;aAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YACjB,2CAA2C;YAC3C,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC,CAAA;QAC5D,CAAC;QAED,2BAA2B;QAC3B,MAAM,YAAY,GAAa,EAAE,CAAA;QACjC,KAAK,MAAM,OAAO,IAAI,UAAU,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;YAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC/B,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;gBACjF,YAAY,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;YACnD,CAAC;QACH,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,6BAA6B;YAC7B,IAAI,QAAgB,CAAA;YACpB,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC7B,2BAA2B;gBAC3B,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAA;gBAC1E,IAAI,cAAc,EAAE,CAAC;oBACnB,QAAQ,GAAG,gBAAgB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA;gBAC1D,CAAC;qBAAM,CAAC;oBACN,QAAQ,GAAG,gBAAgB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAA;gBAC3D,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,8BAA8B;gBAC9B,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAC7C,CAAC;YAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,KAAK,cAAc,CAAA;YAEhD,+BAA+B;YAC/B,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAA;YAE5D,MAAM,MAAM,GAAG,yFAAyF,CAAA;YAExG,OAAO;gBACL,OAAO,EAAE,QAAQ,GAAG,MAAM;gBAC1B,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,CAAC;gBACb,GAAG,CAAC,OAAO,IAAI;oBACb,KAAK,EAAE,IAAI;oBACX,UAAU,EAAE,KAAK,CAAC,OAAO;oBACzB,WAAW,EAAE,cAAc;oBAC3B,OAAO,EAAE,0DAA0D;iBACpE,CAAC;gBACF,YAAY,EAAE,WAAW;aAC1B,CAAA;QACH,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,IAAI,QAAQ,GAAG,IAAI,CAAA;IACnB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,YAAY,EAAE,CAAA;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;QAC/C,OAAO;YACL,OAAO,EAAE;;;;;iCAKkB,YAAY,MAAM;YAC7C,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,IAAI;SACnB,CAAA;IACH,CAAC;IAED,iCAAiC;IACjC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC;QACnC,QAAQ,EAAE,YAAY;QACtB,QAAQ;QACR,QAAQ,EAAE,CAAC,aAAa;KACzB,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI;SACzB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,OAAO,EAAE,CAAC;SAC/C,IAAI,CAAC,aAAa,CAAC,CAAA;IAEtB,+BAA+B;IAC/B,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAA;IAE5D,yCAAyC;IACzC,MAAM,MAAM,GAAG,yFAAyF,CAAA;IAExG,OAAO;QACL,OAAO,EAAE,QAAQ,GAAG,MAAM;QAC1B,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,MAAM,CAAC,WAAW;QAC9B,YAAY,EAAE,WAAW;KAC1B,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,cAAc;IACpB,WAAW,EACT,4BAA4B;QAC5B,wGAAwG;QACxG,YAAY;QACZ,8DAA8D;QAC9D,qDAAqD;QACrD,gDAAgD;QAChD,+EAA+E;IACjF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iCAAiC;aAC/C;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,4DAA4D;aAC1E;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,iEAAiE;aAC/E;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,+DAA+D;gBAC5E,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;iBACf;aACF;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;CACF,CAAA"}
|
|
@@ -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"}
|