dedsession 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -12,7 +12,7 @@ import * as http from "http";
12
12
  const CONFIG = {
13
13
  REMOTE_BASE_URL: "https://files.megafon-apn32.ru/mcp",
14
14
  LOCAL_CACHE_DIR: path.join(process.env.HOME || "", ".cache", "dedsession"),
15
- VERSION: "1.2.0",
15
+ VERSION: "1.4.0",
16
16
  CHECK_UPDATES_ON_START: true,
17
17
  };
18
18
  const state = {
@@ -91,6 +91,21 @@ const INSTRUCTIONS = {
91
91
 
92
92
  **Claude ОБЯЗАН автоматически сохранить когда:**
93
93
  - Пользователь подтвердил напоминание ("да", "сохрани", "ок")
94
+
95
+ ---
96
+
97
+ ## ✅ ЧЕКЛИСТ ПЕРЕД СОХРАНЕНИЕМ
98
+
99
+ **Claude ОБЯЗАН проверить перед сохранением:**
100
+
101
+ - [ ] Название задачи понятное и на латинице
102
+ - [ ] task_overview содержит цель и контекст
103
+ - [ ] changes содержит список изменённых файлов с путями
104
+ - [ ] summary содержит что сделано и что осталось
105
+ - [ ] session_log содержит ключевые моменты диалога
106
+ - [ ] Указан правильный статус (completed/in_progress/blocked)
107
+
108
+ **Если что-то пропущено — Claude ОБЯЗАН дополнить самостоятельно!**
94
109
  `,
95
110
  saveGuide: `# 📝 Сохранение контекста
96
111
 
@@ -153,6 +168,24 @@ function fetch(url) {
153
168
  });
154
169
  }
155
170
  function getWorkingDir() {
171
+ // Ищем директорию проекта по маркерам (.git, package.json)
172
+ // Начинаем с cwd и идём вверх
173
+ let dir = process.cwd();
174
+ for (let i = 0; i < 10; i++) {
175
+ // Проверяем есть ли MD_HISTORY в этой директории
176
+ if (fs.existsSync(path.join(dir, "MD_HISTORY"))) {
177
+ return dir;
178
+ }
179
+ // Проверяем маркеры проекта
180
+ if (fs.existsSync(path.join(dir, ".git")) || fs.existsSync(path.join(dir, "package.json"))) {
181
+ return dir;
182
+ }
183
+ const parent = path.dirname(dir);
184
+ if (parent === dir)
185
+ break; // Достигли корня
186
+ dir = parent;
187
+ }
188
+ // Fallback на cwd
156
189
  return process.cwd();
157
190
  }
158
191
  function getMdHistoryPath() {
@@ -182,60 +215,87 @@ function listContexts() {
182
215
  if (!fs.existsSync(mdHistory)) {
183
216
  return [];
184
217
  }
185
- const dirs = fs.readdirSync(mdHistory, { withFileTypes: true })
186
- .filter(d => d.isDirectory())
187
- .map(d => {
188
- const parsed = parseContextName(d.name);
189
- if (!parsed)
190
- return null;
191
- const contextPath = path.join(mdHistory, d.name);
192
- const files = fs.readdirSync(contextPath).filter(f => f.endsWith(".md"));
193
- let readme = "";
194
- let status = "⏳";
195
- let hasParent;
196
- let hasChild;
197
- const readmePath = path.join(contextPath, "README.md");
198
- if (fs.existsSync(readmePath)) {
199
- readme = fs.readFileSync(readmePath, "utf-8");
200
- if (readme.includes("✅"))
201
- status = "✅";
202
- else if (readme.includes(""))
203
- status = "";
204
- // Ищем связи
205
- const parentMatch = readme.match(/\*\*Parent:\*\*\s*(.+)/);
206
- if (parentMatch)
207
- hasParent = parentMatch[1].trim();
208
- const childMatch = readme.match(/\*\*Child:\*\*\s*(.+)/);
209
- if (childMatch)
210
- hasChild = childMatch[1].trim();
211
- }
212
- let totalSize = 0;
213
- for (const file of files) {
214
- const stat = fs.statSync(path.join(contextPath, file));
215
- totalSize += stat.size;
216
- }
217
- return {
218
- name: d.name,
219
- number: parsed.number,
220
- date: parsed.date,
221
- title: parsed.title,
222
- path: contextPath,
223
- status,
224
- filesCount: files.length,
225
- size: totalSize,
226
- readme: readme.slice(0, 500),
227
- hasParent,
228
- hasChild,
229
- };
230
- })
231
- .filter((c) => c !== null)
232
- .sort((a, b) => {
233
- // Сначала по номеру (если есть), потом по дате
234
- if (a.number !== b.number)
235
- return b.number - a.number;
236
- return b.date.localeCompare(a.date);
237
- });
238
- return dirs;
218
+ try {
219
+ const dirs = fs.readdirSync(mdHistory, { withFileTypes: true })
220
+ .filter(d => d.isDirectory())
221
+ .map(d => {
222
+ try {
223
+ const parsed = parseContextName(d.name);
224
+ if (!parsed)
225
+ return null;
226
+ const contextPath = path.join(mdHistory, d.name);
227
+ // Безопасное чтение директории
228
+ let files = [];
229
+ try {
230
+ files = fs.readdirSync(contextPath).filter(f => f.endsWith(".md"));
231
+ }
232
+ catch {
233
+ return null; // Пропускаем если не можем прочитать
234
+ }
235
+ let readme = "";
236
+ let status = "";
237
+ let hasParent;
238
+ let hasChild;
239
+ const readmePath = path.join(contextPath, "README.md");
240
+ if (fs.existsSync(readmePath)) {
241
+ try {
242
+ readme = fs.readFileSync(readmePath, "utf-8");
243
+ if (readme.includes("✅"))
244
+ status = "✅";
245
+ else if (readme.includes("❌"))
246
+ status = "❌";
247
+ // Ищем связи
248
+ const parentMatch = readme.match(/\*\*Parent:\*\*\s*(.+)/);
249
+ if (parentMatch)
250
+ hasParent = parentMatch[1].trim();
251
+ const childMatch = readme.match(/\*\*Child:\*\*\s*(.+)/);
252
+ if (childMatch)
253
+ hasChild = childMatch[1].trim();
254
+ }
255
+ catch {
256
+ // Игнорируем ошибки чтения
257
+ }
258
+ }
259
+ let totalSize = 0;
260
+ for (const file of files) {
261
+ try {
262
+ const stat = fs.statSync(path.join(contextPath, file));
263
+ totalSize += stat.size;
264
+ }
265
+ catch {
266
+ // Игнорируем
267
+ }
268
+ }
269
+ return {
270
+ name: d.name,
271
+ number: parsed.number,
272
+ date: parsed.date,
273
+ title: parsed.title,
274
+ path: contextPath,
275
+ status,
276
+ filesCount: files.length,
277
+ size: totalSize,
278
+ readme: readme.slice(0, 500),
279
+ hasParent,
280
+ hasChild,
281
+ };
282
+ }
283
+ catch {
284
+ return null;
285
+ }
286
+ })
287
+ .filter((c) => c !== null)
288
+ .sort((a, b) => {
289
+ // Новые сверху: сначала по номеру (убывание), потом по дате (убывание)
290
+ if (a.number !== b.number)
291
+ return b.number - a.number;
292
+ return b.date.localeCompare(a.date);
293
+ });
294
+ return dirs;
295
+ }
296
+ catch {
297
+ return [];
298
+ }
239
299
  }
240
300
  function loadContext(contextName) {
241
301
  const mdHistory = getMdHistoryPath();
@@ -270,11 +330,24 @@ function saveContext(taskName, content, parentContext) {
270
330
  const date = new Date().toISOString().split("T")[0];
271
331
  const number = getNextContextNumber();
272
332
  const paddedNumber = String(number).padStart(3, "0");
273
- const safeName = taskName.toLowerCase()
274
- .replace(/[^a-zа-яё0-9-]/gi, "-")
333
+ // Санитизация имени: только латиница, цифры и дефисы
334
+ // Кириллица транслитерируется или удаляется для совместимости
335
+ const safeName = taskName
336
+ .toLowerCase()
337
+ .replace(/[а-яёА-ЯЁ]/g, (char) => {
338
+ const translit = {
339
+ 'а': 'a', 'б': 'b', 'в': 'v', 'г': 'g', 'д': 'd', 'е': 'e', 'ё': 'yo',
340
+ 'ж': 'zh', 'з': 'z', 'и': 'i', 'й': 'y', 'к': 'k', 'л': 'l', 'м': 'm',
341
+ 'н': 'n', 'о': 'o', 'п': 'p', 'р': 'r', 'с': 's', 'т': 't', 'у': 'u',
342
+ 'ф': 'f', 'х': 'h', 'ц': 'ts', 'ч': 'ch', 'ш': 'sh', 'щ': 'sch',
343
+ 'ъ': '', 'ы': 'y', 'ь': '', 'э': 'e', 'ю': 'yu', 'я': 'ya'
344
+ };
345
+ return translit[char.toLowerCase()] || '';
346
+ })
347
+ .replace(/[^a-z0-9-]/g, "-")
275
348
  .replace(/-+/g, "-")
276
349
  .replace(/^-|-$/g, "")
277
- .slice(0, 50);
350
+ .slice(0, 50) || "unnamed-context";
278
351
  const contextName = `${paddedNumber}_${date}_${safeName}`;
279
352
  const contextPath = path.join(getMdHistoryPath(), contextName);
280
353
  try {
@@ -294,14 +367,17 @@ function saveContext(taskName, content, parentContext) {
294
367
  fs.writeFileSync(path.join(contextPath, "03-changes.md"), content.changes, "utf-8");
295
368
  fs.writeFileSync(path.join(contextPath, "04-summary.md"), content.summary, "utf-8");
296
369
  // Расширенные файлы (если есть)
370
+ if (content.sessionLog) {
371
+ fs.writeFileSync(path.join(contextPath, "05-session-log.md"), content.sessionLog, "utf-8");
372
+ }
297
373
  if (content.codeSnippets) {
298
- fs.writeFileSync(path.join(contextPath, "05-code-snippets.md"), content.codeSnippets, "utf-8");
374
+ fs.writeFileSync(path.join(contextPath, "06-code-snippets.md"), content.codeSnippets, "utf-8");
299
375
  }
300
376
  if (content.decisions) {
301
- fs.writeFileSync(path.join(contextPath, "06-decisions.md"), content.decisions, "utf-8");
377
+ fs.writeFileSync(path.join(contextPath, "07-decisions.md"), content.decisions, "utf-8");
302
378
  }
303
379
  if (content.problemsSolutions) {
304
- fs.writeFileSync(path.join(contextPath, "07-problems-solutions.md"), content.problemsSolutions, "utf-8");
380
+ fs.writeFileSync(path.join(contextPath, "08-problems-solutions.md"), content.problemsSolutions, "utf-8");
305
381
  }
306
382
  // Обновляем parent контекст если есть
307
383
  if (state.loadedContext && state.loadedContextPath) {
@@ -320,11 +396,124 @@ function saveContext(taskName, content, parentContext) {
320
396
  // Сбрасываем состояние
321
397
  state.loadedContext = contextName;
322
398
  state.loadedContextPath = contextPath;
323
- return { success: true, path: contextPath, name: contextName };
399
+ // Подсчитываем файлы
400
+ const filesCount = fs.readdirSync(contextPath).filter(f => f.endsWith(".md")).length;
401
+ // Обновляем session.md
402
+ generateSessionMd();
403
+ return { success: true, path: contextPath, name: contextName, filesCount };
324
404
  }
325
405
  catch (err) {
326
- return { success: false, path: "", name: "", error: String(err) };
406
+ return { success: false, path: "", name: "", filesCount: 0, error: String(err) };
407
+ }
408
+ }
409
+ // ============================================================================
410
+ // SESSION.MD ГЕНЕРАЦИЯ
411
+ // ============================================================================
412
+ function generateSessionMd() {
413
+ const mdHistory = getMdHistoryPath();
414
+ ensureDir(mdHistory);
415
+ const contexts = listContexts();
416
+ const stats = getStatistics();
417
+ const lastContext = contexts[0];
418
+ const prevContexts = contexts.slice(1, 6);
419
+ let content = `# Dedsession - Статус проекта
420
+
421
+ **Обновлено:** ${new Date().toISOString().split("T")[0]} ${new Date().toTimeString().slice(0, 5)}
422
+ **Всего контекстов:** ${stats.total} | **За неделю:** ${stats.thisWeek} | **Завершено:** ${stats.completed} | **В процессе:** ${stats.inProgress}
423
+
424
+ ---
425
+
426
+ `;
427
+ if (lastContext) {
428
+ content += `## Последний контекст
429
+
430
+ **#${String(lastContext.number).padStart(3, "0")}** | \`${lastContext.name}\`
431
+ **Дата:** ${lastContext.date}
432
+ **Статус:** ${lastContext.status}
433
+ **Файлов:** ${lastContext.filesCount}
434
+ `;
435
+ if (lastContext.hasParent) {
436
+ content += `**Parent:** ${lastContext.hasParent}\n`;
437
+ }
438
+ if (lastContext.hasChild) {
439
+ content += `**Child:** ${lastContext.hasChild}\n`;
440
+ }
441
+ // Читаем changes.md для списка файлов
442
+ const changesPath = path.join(lastContext.path, "03-changes.md");
443
+ if (fs.existsSync(changesPath)) {
444
+ const changesContent = fs.readFileSync(changesPath, "utf-8");
445
+ const filesMatch = changesContent.match(/[-*]\s+\`([^`]+)\`/g);
446
+ if (filesMatch && filesMatch.length > 0) {
447
+ content += `\n**Изменённые файлы:**\n`;
448
+ filesMatch.slice(0, 10).forEach(f => {
449
+ content += `${f}\n`;
450
+ });
451
+ }
452
+ }
453
+ // Краткое описание из README
454
+ if (lastContext.readme) {
455
+ const descMatch = lastContext.readme.match(/## Краткое описание\n\n([^\n#]+)/);
456
+ if (descMatch) {
457
+ content += `\n**Описание:** ${descMatch[1].trim()}\n`;
458
+ }
459
+ }
460
+ content += `
461
+ ---
462
+
463
+ ### Продолжить работу:
464
+ \`\`\`
465
+ загрузи контекст ${lastContext.number}
466
+ \`\`\`
467
+
468
+ ---
469
+
470
+ `;
471
+ }
472
+ if (prevContexts.length > 0) {
473
+ content += `## Предыдущие контексты
474
+
475
+ | # | Название | Дата | Статус |
476
+ |---|----------|------|--------|
477
+ `;
478
+ for (const ctx of prevContexts) {
479
+ content += `| ${String(ctx.number).padStart(3, "0")} | ${ctx.title.slice(0, 30)} | ${ctx.date} | ${ctx.status} |\n`;
480
+ }
481
+ content += `\n---\n\n`;
327
482
  }
483
+ content += `## Быстрые команды
484
+
485
+ | Команда | Действие |
486
+ |---------|----------|
487
+ | \`запусти контекст\` | Полная инициализация |
488
+ | \`сохрани контекст\` | Сохранить текущую работу |
489
+ | \`загрузи контекст\` | Выбрать из списка |
490
+ | \`загрузи контекст N\` | Загрузить по номеру |
491
+ | \`покажи контексты\` | Список всех |
492
+
493
+ ---
494
+
495
+ **Dedsession v${CONFIG.VERSION}**
496
+ `;
497
+ fs.writeFileSync(path.join(mdHistory, "session.md"), content, "utf-8");
498
+ }
499
+ // ============================================================================
500
+ // ЧТЕНИЕ АРХИТЕКТУРЫ ПРОЕКТА
501
+ // ============================================================================
502
+ function readProjectArchitecture() {
503
+ const mdDir = path.join(getWorkingDir(), "MD");
504
+ const results = [];
505
+ if (!fs.existsSync(mdDir)) {
506
+ return results;
507
+ }
508
+ const files = fs.readdirSync(mdDir).filter(f => f.endsWith(".md") && (f.includes("ARCHITECTURE") ||
509
+ f.includes("PROTOCOL") ||
510
+ f.includes("API") ||
511
+ f.includes("REFERENCE")));
512
+ for (const file of files.slice(0, 3)) {
513
+ const content = fs.readFileSync(path.join(mdDir, file), "utf-8");
514
+ results.push(`### ${file}\n\n${content.slice(0, 1000)}${content.length > 1000 ? "\n...(обрезано)" : ""}`);
515
+ }
516
+ return results;
328
517
  }
329
518
  function getStatistics() {
330
519
  const contexts = listContexts();
@@ -430,7 +619,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
430
619
  tools: [
431
620
  {
432
621
  name: "context_start",
433
- description: "🚀 Инициализация системы контекста. Показывает инструкции, статистику и список контекстов. Вызывай когда пользователь говорит 'запусти контекст', 'система контекста', 'начни сессию' и т.п.",
622
+ description: "🚀 ГЛАВНАЯ КОМАНДА. Инициализация системы контекста dedsession. Показывает инструкции, статистику и список последних контекстов с выбором действия. ОБЯЗАТЕЛЬНО вызывай когда пользователь говорит: 'запусти контекст', 'контекст', 'начни сессию', 'инициализация', 'dedsession', 'старт', 'начало'. Это первое что нужно сделать в новой сессии.",
434
623
  inputSchema: {
435
624
  type: "object",
436
625
  properties: {},
@@ -438,7 +627,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
438
627
  },
439
628
  {
440
629
  name: "context_save",
441
- description: "💾 Сохранить контекст работы. Создаёт папку в MD_HISTORY/ с файлами описания задачи. Вызывай когда пользователь говорит 'сохрани контекст', 'сохрани работу' и т.п.",
630
+ description: "💾 Сохранить контекст работы в MD_HISTORY/. Создаёт папку с файлами описания задачи. ОБЯЗАТЕЛЬНО вызывай когда пользователь говорит: 'сохрани контекст', 'сохрани работу', 'сохранить', 'сохрани', 'запомни работу'.",
442
631
  inputSchema: {
443
632
  type: "object",
444
633
  properties: {
@@ -479,26 +668,30 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
479
668
  type: "string",
480
669
  description: "(Опционально) Проблемы и их решения",
481
670
  },
671
+ session_log: {
672
+ type: "string",
673
+ description: "(ОБЯЗАТЕЛЬНО) Подробный лог сессии: ключевые моменты диалога, команды, решения, ошибки",
674
+ },
482
675
  },
483
- required: ["task_name", "task_overview", "changes", "summary"],
676
+ required: ["task_name", "task_overview", "changes", "summary", "session_log"],
484
677
  },
485
678
  },
486
679
  {
487
680
  name: "context_load",
488
- description: "📂 Загрузить контекст из MD_HISTORY/. Можно указать номер, имя или поисковый запрос. Вызывай когда пользователь говорит 'загрузи контекст', 'продолжи работу', 'открой контекст' и т.п.",
681
+ description: "📂 Загрузить контекст из MD_HISTORY/. Можно указать номер, имя или поисковый запрос. ОБЯЗАТЕЛЬНО вызывай когда пользователь говорит: 'загрузи контекст', 'загрузи', 'продолжи работу', 'открой контекст', 'загрузить', или просто номер типа '1', '2', '001'. Также вызывай после context_start когда пользователь выбрал '1'.",
489
682
  inputSchema: {
490
683
  type: "object",
491
684
  properties: {
492
685
  query: {
493
686
  type: "string",
494
- description: "Номер контекста (001), имя папки или поисковый запрос",
687
+ description: "Номер контекста (1, 2, 001), имя папки или поисковый запрос. Если пусто - показать список для выбора.",
495
688
  },
496
689
  },
497
690
  },
498
691
  },
499
692
  {
500
693
  name: "context_list",
501
- description: "📋 Показать список всех контекстов со статистикой. Вызывай когда пользователь говорит 'покажи контексты', 'список контекстов', 'что сохранено' и т.п.",
694
+ description: "📋 Показать список всех контекстов со статистикой. ОБЯЗАТЕЛЬНО вызывай когда пользователь говорит: 'покажи контексты', 'список контекстов', 'что сохранено', 'все контексты', '1' (после context_start).",
502
695
  inputSchema: {
503
696
  type: "object",
504
697
  properties: {
@@ -521,6 +714,14 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
521
714
  properties: {},
522
715
  },
523
716
  },
717
+ {
718
+ name: "context_help",
719
+ description: "❓ Справка по системе контекста. Вызывай когда пользователь говорит 'как работает контекст?', 'помощь', 'справка', 'faq' и т.п.",
720
+ inputSchema: {
721
+ type: "object",
722
+ properties: {},
723
+ },
724
+ },
524
725
  ],
525
726
  }));
526
727
  server.setRequestHandler(CallToolRequestSchema, async (request) => {
@@ -532,13 +733,39 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
532
733
  const guide = getInstruction("init");
533
734
  const stats = getStatistics();
534
735
  const contexts = listContexts().slice(0, 5);
535
- let output = guide + "\n\n---\n\n";
736
+ const architecture = readProjectArchitecture();
737
+ const workDir = getWorkingDir();
738
+ const mdHistoryPath = getMdHistoryPath();
739
+ let output = `# 🚀 Dedsession v${CONFIG.VERSION}\n\n`;
740
+ output += `📁 **Рабочая директория:** \`${workDir}\`\n`;
741
+ output += `📂 **MD_HISTORY:** \`${mdHistoryPath}\`\n\n`;
742
+ output += `---\n\n`;
743
+ output += guide + "\n\n---\n\n";
744
+ // Читаем session.md если есть
745
+ const sessionMdPath = path.join(getMdHistoryPath(), "session.md");
746
+ if (fs.existsSync(sessionMdPath)) {
747
+ output += `## 📋 Из session.md\n\n`;
748
+ const sessionContent = fs.readFileSync(sessionMdPath, "utf-8");
749
+ // Берём только секцию "Последний контекст"
750
+ const lastContextMatch = sessionContent.match(/## Последний контекст[\s\S]*?(?=## |$)/);
751
+ if (lastContextMatch) {
752
+ output += lastContextMatch[0] + "\n---\n\n";
753
+ }
754
+ }
536
755
  output += `## 📊 Статистика\n\n`;
537
756
  output += `| Показатель | Значение |\n|------------|----------|\n`;
538
757
  output += `| Всего контекстов | ${stats.total} |\n`;
539
758
  output += `| За неделю | ${stats.thisWeek} |\n`;
540
759
  output += `| Завершено | ${stats.completed} |\n`;
541
760
  output += `| В процессе | ${stats.inProgress} |\n\n`;
761
+ // Архитектура проекта если есть
762
+ if (architecture.length > 0) {
763
+ output += `## 🏗️ Архитектура проекта (из MD/)\n\n`;
764
+ for (const arch of architecture) {
765
+ output += arch + "\n\n";
766
+ }
767
+ output += `---\n\n`;
768
+ }
542
769
  if (contexts.length > 0) {
543
770
  output += `## 📦 Последние контексты\n\n`;
544
771
  output += `| # | Название | Дата | Статус |\n|---|----------|------|--------|\n`;
@@ -552,9 +779,15 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
552
779
  }
553
780
  output += `---\n\n`;
554
781
  output += `## 🎯 Что делаем?\n\n`;
555
- output += `1. **Загрузить контекст** — продолжить предыдущую работу\n`;
556
- output += `2. **Начать новую работу** — просто скажи что нужно сделать\n`;
557
- output += `3. **Сохранить контекст** сохранить текущую работу\n`;
782
+ if (contexts.length > 0) {
783
+ output += `**Выбери:**\n\n`;
784
+ output += `**1** Показать все контексты и выбрать для загрузки\n`;
785
+ output += `**2** — Начать новый чат (без загрузки контекста)\n\n`;
786
+ output += `_(просто напиши 1 или 2)_\n`;
787
+ }
788
+ else {
789
+ output += `Контекстов пока нет. Начинай работу — потом сохраним контекст.\n`;
790
+ }
558
791
  return { content: [{ type: "text", text: output }] };
559
792
  }
560
793
  // ==================== CONTEXT_SAVE ====================
@@ -582,12 +815,15 @@ ${args?.summary || "Нет описания"}
582
815
 
583
816
  ${args?.changes?.split("\n").map(l => l.trim() ? `- ${l}` : "").join("\n") || "- Нет данных"}
584
817
  `;
818
+ // Формируем лог сессии
819
+ const sessionLog = args?.session_log || "Лог сессии не предоставлен";
585
820
  const result = saveContext(taskName, {
586
821
  readme,
587
822
  taskOverview: `# 📋 Обзор задачи\n\n${args?.task_overview || "Нет описания"}`,
588
823
  analysis: `# 🔍 Анализ\n\n${args?.analysis || "Анализ не проводился"}`,
589
824
  changes: `# 🔧 Изменения\n\n${args?.changes || "Нет изменений"}`,
590
825
  summary: `# 📝 Итоги\n\n${args?.summary || "Нет итогов"}`,
826
+ sessionLog: `# 💬 Лог сессии\n\n**Дата:** ${new Date().toISOString()}\n\n${sessionLog}`,
591
827
  codeSnippets: args?.code_snippets,
592
828
  decisions: args?.decisions,
593
829
  problemsSolutions: args?.problems_solutions,
@@ -595,10 +831,9 @@ ${args?.changes?.split("\n").map(l => l.trim() ? `- ${l}` : "").join("\n") || "-
595
831
  if (!result.success) {
596
832
  return { content: [{ type: "text", text: `❌ Ошибка: ${result.error}` }] };
597
833
  }
598
- const filesCount = fs.readdirSync(result.path).filter(f => f.endsWith(".md")).length;
599
834
  let output = `✅ **Контекст сохранён**\n\n`;
600
835
  output += `📁 **Папка:** \`${result.name}\`\n`;
601
- output += `📄 **Файлов:** ${filesCount}\n`;
836
+ output += `📄 **Файлов:** ${result.filesCount}\n`;
602
837
  output += `📍 **Путь:** \`${result.path}\`\n`;
603
838
  if (state.loadedContext && state.loadedContext !== result.name) {
604
839
  output += `\n🔗 **Parent:** ${state.loadedContext}\n`;
@@ -710,14 +945,18 @@ ${args?.changes?.split("\n").map(l => l.trim() ? `- ${l}` : "").join("\n") || "-
710
945
  if (total > limit) {
711
946
  output += `\n📝 Показано ${limit} из ${total}.\n`;
712
947
  }
948
+ output += `\n---\n_Dedsession v${CONFIG.VERSION}_\n`;
713
949
  return { content: [{ type: "text", text: output }] };
714
950
  }
715
951
  // ==================== CONTEXT_STATUS ====================
716
952
  case "context_status": {
717
953
  const stats = getStatistics();
718
954
  const uptime = Math.round((Date.now() - state.sessionStartTime.getTime()) / 1000 / 60);
719
- let output = `## 📊 Статус сессии\n\n`;
955
+ const workDir = getWorkingDir();
956
+ let output = `## 📊 Статус сессии — Dedsession v${CONFIG.VERSION}\n\n`;
720
957
  output += `| Параметр | Значение |\n|----------|----------|\n`;
958
+ output += `| Версия | ${CONFIG.VERSION} |\n`;
959
+ output += `| Рабочая директория | \`${workDir}\` |\n`;
721
960
  output += `| Время работы | ${uptime} мин |\n`;
722
961
  output += `| Инициализирована | ${state.isInitialized ? "✅" : "❌"} |\n`;
723
962
  output += `| Загруженный контекст | ${state.loadedContext || "—"} |\n`;
@@ -726,6 +965,70 @@ ${args?.changes?.split("\n").map(l => l.trim() ? `- ${l}` : "").join("\n") || "-
726
965
  output += `| В процессе | ${stats.inProgress} |\n`;
727
966
  return { content: [{ type: "text", text: output }] };
728
967
  }
968
+ // ==================== CONTEXT_HELP ====================
969
+ case "context_help": {
970
+ const output = `# Dedsession — Справка
971
+
972
+ ## Команды
973
+
974
+ | Скажи | Что будет |
975
+ |-------|-----------|
976
+ | \`запусти контекст\` | Инициализация + статистика + последний контекст |
977
+ | \`сохрани контекст\` | Сохранить работу в MD_HISTORY/ |
978
+ | \`загрузи контекст\` | Показать список для выбора |
979
+ | \`загрузи контекст 5\` | Загрузить контекст #005 |
980
+ | \`загрузи контекст api\` | Поиск по слову "api" |
981
+ | \`покажи контексты\` | Список всех контекстов |
982
+ | \`статус\` | Текущая сессия |
983
+
984
+ ---
985
+
986
+ ## Структура
987
+
988
+ \`\`\`
989
+ MD_HISTORY/
990
+ ├── session.md ← актуальный статус
991
+ └── 001_2025-12-16_task-name/
992
+ ├── README.md ← обзор
993
+ ├── 01-task-overview.md ← задача
994
+ ├── 02-analysis.md ← анализ
995
+ ├── 03-changes.md ← изменения
996
+ ├── 04-summary.md ← итоги
997
+ ├── 05-session-log.md ← лог диалога
998
+ └── 06-*.md ← доп. файлы
999
+ \`\`\`
1000
+
1001
+ ---
1002
+
1003
+ ## Автоматика
1004
+
1005
+ **Напоминания** — Claude напомнит сохранить когда:
1006
+ - Изменено 5+ файлов
1007
+ - Задача завершена
1008
+ - Прошло 30+ минут
1009
+ - Сказано "готово", "сделано"
1010
+
1011
+ **Parent/Child** — связи создаются автоматически:
1012
+ - Загрузил #005 → поработал → сохранил → #006 (child of #005)
1013
+
1014
+ **session.md** — обновляется после каждого сохранения
1015
+
1016
+ ---
1017
+
1018
+ ## Правила
1019
+
1020
+ | DO | DON'T |
1021
+ |----|-------|
1022
+ | Сохраняй перед уходом | Не забывай сохранять |
1023
+ | Загружай при возвращении | Не объясняй заново |
1024
+ | Давай понятные имена | Не называй "work1" |
1025
+
1026
+ ---
1027
+
1028
+ **v${CONFIG.VERSION}** | \`npm: dedsession\`
1029
+ `;
1030
+ return { content: [{ type: "text", text: output }] };
1031
+ }
729
1032
  default:
730
1033
  return { content: [{ type: "text", text: `❌ Неизвестный tool: ${name}` }] };
731
1034
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAE/E,MAAM,MAAM,GAAG;IACb,eAAe,EAAE,oCAAoC;IACrD,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,YAAY,CAAC;IAC1E,OAAO,EAAE,OAAO;IAChB,sBAAsB,EAAE,IAAI;CAC7B,CAAC;AAaF,MAAM,KAAK,GAAiB;IAC1B,aAAa,EAAE,IAAI;IACnB,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI,IAAI,EAAE;IAC5B,aAAa,EAAE,KAAK;CACrB,CAAC;AAEF,+EAA+E;AAC/E,mCAAmC;AACnC,+EAA+E;AAE/E,MAAM,YAAY,GAAG;IACnB,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkEP;IAEC,SAAS,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BZ;CACA,CAAC;AAEF,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E,SAAS,SAAS,CAAC,GAAW;IAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,GAAW;IACxB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACxD,QAAQ;aACL,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;YAChB,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;gBACrD,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAS,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACzD,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAC5C,OAAO;YACT,CAAC;YACD,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC;YAC3C,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC;aACD,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;AACvB,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,YAAY,CAAC,CAAC;AAClD,CAAC;AAoBD,SAAS,gBAAgB,CAAC,IAAY;IACpC,qEAAqE;IACrE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACnE,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACrF,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC3D,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB;IAC3B,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3D,OAAO,SAAS,GAAG,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,YAAY;IACnB,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IAErC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;SAC5D,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC5B,GAAG,CAAC,CAAC,CAAC,EAAE;QACP,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAEzE,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,GAAG,CAAC;QACjB,IAAI,SAA6B,CAAC;QAClC,IAAI,QAA4B,CAAC;QAEjC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACvD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,MAAM,GAAG,GAAG,CAAC;iBAClC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,MAAM,GAAG,GAAG,CAAC;YAE5C,aAAa;YACb,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC3D,IAAI,WAAW;gBAAE,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAEnD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YACzD,IAAI,UAAU;gBAAE,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAClD,CAAC;QAED,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;YACvD,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC;QACzB,CAAC;QAED,OAAO;YACL,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,WAAW;YACjB,MAAM;YACN,UAAU,EAAE,KAAK,CAAC,MAAM;YACxB,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YAC5B,SAAS;YACT,QAAQ;SACM,CAAC;IACnB,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;SAC3C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,+CAA+C;QAC/C,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACtD,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEL,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,WAAW,CAAC,WAAmB;IACtC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IACrC,IAAI,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAEpD,4BAA4B;IAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1G,IAAI,QAAQ,EAAE,CAAC;YACb,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC5B,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,WAAW,aAAa,EAAE,CAAC;IACrF,CAAC;IAED,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC9B,IAAI,EAAE,CAAC;IAEV,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,aAAa,GAAG,WAAW,CAAC;IAClC,KAAK,CAAC,iBAAiB,GAAG,WAAW,CAAC;IAEtC,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;IAExD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,WAAW,CAClB,QAAgB,EAChB,OASC,EACD,aAAsB;IAEtB,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC;IACtC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE;SACpC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC;SAChC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEhB,MAAM,WAAW,GAAG,GAAG,YAAY,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;IAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,WAAW,CAAC,CAAC;IAE/D,IAAI,CAAC;QACH,SAAS,CAAC,WAAW,CAAC,CAAC;QAEvB,8CAA8C;QAC9C,IAAI,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;QACnC,IAAI,aAAa,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC;YACpD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC3C,aAAa,IAAI,kCAAkC,MAAM,IAAI,CAAC;YAChE,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAC9E,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC/F,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACpF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAEpF,gCAAgC;QAChC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACjG,CAAC;QACD,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC9B,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,EAAE,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAC3G,CAAC;QAED,sCAAsC;QACtC,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YACnD,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;YACzE,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACpC,IAAI,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;gBAC9D,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;oBACzC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;wBAC1C,YAAY,IAAI,mBAAmB,CAAC;oBACtC,CAAC;oBACD,YAAY,IAAI,gBAAgB,WAAW,IAAI,CAAC;oBAChD,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,KAAK,CAAC,aAAa,GAAG,WAAW,CAAC;QAClC,KAAK,CAAC,iBAAiB,GAAG,WAAW,CAAC;QAEtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IACjE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IACpE,CAAC;AACH,CAAC;AAED,SAAS,aAAa;IACpB,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,CAAC;IAC1E,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;IAChE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;IAEjE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACrE,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEvC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACzB,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC1C,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;QACzC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAC1D,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,KAAK,UAAU,eAAe;IAC5B,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,GAAG,MAAM,CAAC,eAAe,eAAe,CAAC;QAC5D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEpC,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;YACtC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QACzD,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;IACvE,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,eAAe,iBAAiB,IAAI,KAAK,CAAC;YAChE,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;YAClE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,UAAU,EAAE,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,oBAAoB;QACtB,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,cAAc,CAAC,IAAY;IAClC,sBAAsB;IACtB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;IAClE,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,yBAAyB;IACzB,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC;IAC9C,IAAI,IAAI,KAAK,YAAY;QAAE,OAAO,YAAY,CAAC,SAAS,CAAC;IAEzD,OAAO,eAAe,IAAI,cAAc,CAAC;AAC3C,CAAC;AAED,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAC/C,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAC/C,CAAC;AAEF,YAAY;AACZ,MAAM,CAAC,iBAAiB,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAChE,SAAS,EAAE;QACT;YACE,GAAG,EAAE,oBAAoB;YACzB,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,eAAe;SAC1B;QACD;YACE,GAAG,EAAE,yBAAyB;YAC9B,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EAAE,0BAA0B;YACvC,QAAQ,EAAE,eAAe;SAC1B;KACF;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,yBAAyB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IACpE,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;IAC/B,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,IAAI,GAAG,KAAK,oBAAoB,EAAE,CAAC;QACjC,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;SAAM,IAAI,GAAG,KAAK,yBAAyB,EAAE,CAAC;QAC7C,OAAO,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,uBAAuB,GAAG,EAAE,CAAC;IACzC,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AAC3E,CAAC,CAAC,CAAC;AAEH,QAAQ;AACR,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,EAAE;QACL;YACE,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,8LAA8L;YAC3M,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE;aACf;SACF;QACD;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,qKAAqK;YAClL,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qDAAqD;qBACnE;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,SAAS,CAAC;wBAC7C,WAAW,EAAE,4DAA4D;qBAC1E;oBACD,aAAa,EAAE;wBACb,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8CAA8C;qBAC5D;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8CAA8C;qBAC5D;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8CAA8C;qBAC5D;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,kCAAkC;qBAChD;oBACD,aAAa,EAAE;wBACb,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,iDAAiD;qBAC/D;oBACD,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yCAAyC;qBACvD;oBACD,kBAAkB,EAAE;wBAClB,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qCAAqC;qBACnD;iBACF;gBACD,QAAQ,EAAE,CAAC,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,CAAC;aAC/D;SACF;QACD;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,yLAAyL;YACtM,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uDAAuD;qBACrE;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,uJAAuJ;YACpK,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2CAA2C;qBACzD;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,0BAA0B;qBACxC;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,2EAA2E;YACxF,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE;aACf;SACF;KACF;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjD,QAAQ,IAAI,EAAE,CAAC;QACb,0DAA0D;QAC1D,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;YAE3B,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAE5C,IAAI,MAAM,GAAG,KAAK,GAAG,aAAa,CAAC;YACnC,MAAM,IAAI,sBAAsB,CAAC;YACjC,MAAM,IAAI,wDAAwD,CAAC;YACnE,MAAM,IAAI,wBAAwB,KAAK,CAAC,KAAK,MAAM,CAAC;YACpD,MAAM,IAAI,iBAAiB,KAAK,CAAC,QAAQ,MAAM,CAAC;YAChD,MAAM,IAAI,iBAAiB,KAAK,CAAC,SAAS,MAAM,CAAC;YACjD,MAAM,IAAI,kBAAkB,KAAK,CAAC,UAAU,QAAQ,CAAC;YAErD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,+BAA+B,CAAC;gBAC1C,MAAM,IAAI,sEAAsE,CAAC;gBACjF,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;oBAC3B,MAAM,IAAI,KAAK,GAAG,CAAC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,KAAK,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC;gBACtF,CAAC;gBACD,MAAM,IAAI,IAAI,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,yDAAyD,CAAC;YACtE,CAAC;YAED,MAAM,IAAI,SAAS,CAAC;YACpB,MAAM,IAAI,uBAAuB,CAAC;YAClC,MAAM,IAAI,4DAA4D,CAAC;YACvE,MAAM,IAAI,+DAA+D,CAAC;YAC1E,MAAM,IAAI,wDAAwD,CAAC;YAEnE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;QAED,yDAAyD;QACzD,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,QAAQ,GAAG,IAAI,EAAE,SAAmB,CAAC;YAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qCAAqC,EAAE,CAAC,EAAE,CAAC;YACtF,CAAC;YAED,MAAM,SAAS,GAA2B;gBACxC,SAAS,EAAE,aAAa;gBACxB,WAAW,EAAE,cAAc;gBAC3B,OAAO,EAAE,iBAAiB;aAC3B,CAAC;YACF,MAAM,MAAM,GAAG,SAAS,CAAE,IAAI,EAAE,MAAiB,IAAI,aAAa,CAAC,IAAI,cAAc,CAAC;YAEtF,MAAM,MAAM,GAAG,KAAK,QAAQ;;YAEtB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;cACpC,MAAM;;;;EAIjB,IAAI,EAAE,OAAkB,IAAI,cAAc;;;;EAI1C,IAAI,EAAE,OAAkB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,cAAc;CACvG,CAAC;YAEI,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE;gBACnC,MAAM;gBACN,YAAY,EAAE,wBAAyB,IAAI,EAAE,aAAwB,IAAI,cAAc,EAAE;gBACzF,QAAQ,EAAE,kBAAmB,IAAI,EAAE,QAAmB,IAAI,sBAAsB,EAAE;gBAClF,OAAO,EAAE,qBAAsB,IAAI,EAAE,OAAkB,IAAI,eAAe,EAAE;gBAC5E,OAAO,EAAE,iBAAkB,IAAI,EAAE,OAAkB,IAAI,YAAY,EAAE;gBACrE,YAAY,EAAE,IAAI,EAAE,aAAmC;gBACvD,SAAS,EAAE,IAAI,EAAE,SAA+B;gBAChD,iBAAiB,EAAE,IAAI,EAAE,kBAAwC;aAClE,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;YAC5E,CAAC;YAED,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YAErF,IAAI,MAAM,GAAG,6BAA6B,CAAC;YAC3C,MAAM,IAAI,mBAAmB,MAAM,CAAC,IAAI,MAAM,CAAC;YAC/C,MAAM,IAAI,kBAAkB,UAAU,IAAI,CAAC;YAC3C,MAAM,IAAI,kBAAkB,MAAM,CAAC,IAAI,MAAM,CAAC;YAE9C,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC/D,MAAM,IAAI,oBAAoB,KAAK,CAAC,aAAa,IAAI,CAAC;YACxD,CAAC;YAED,MAAM,IAAI,WAAW,CAAC;YACtB,MAAM,IAAI,0CAA0C,CAAC;YACrD,MAAM,IAAI,uCAAuC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;YAErF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;QAED,yDAAyD;QACzD,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,KAAK,GAAG,IAAI,EAAE,KAAe,CAAC;YAEpC,kDAAkD;YAClD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAE7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+BAA+B,EAAE,CAAC,EAAE,CAAC;gBAChF,CAAC;gBAED,IAAI,MAAM,GAAG,wCAAwC,CAAC;gBACtD,MAAM,IAAI,sEAAsE,CAAC;gBACjF,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;oBAC3B,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBACnE,MAAM,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC,KAAK,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC;gBACxE,CAAC;gBACD,MAAM,IAAI,8CAA8C,CAAC;gBACzD,MAAM,IAAI,mEAAmE,CAAC;gBAE9E,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;oBACzB,MAAM,IAAI,uBAAuB,YAAY,EAAE,CAAC,MAAM,sCAAsC,CAAC;gBAC/F,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;YACvD,CAAC;YAED,+BAA+B;YAC/B,IAAI,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAEhC,gCAAgC;YAChC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;gBACpC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACtC,CAAC;qBAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,IAAI,MAAM,GAAG,cAAc,KAAK,CAAC,MAAM,2BAA2B,KAAK,QAAQ,CAAC;oBAChF,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;wBACpC,MAAM,IAAI,OAAO,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,KAAK,IAAI,CAAC;oBACjD,CAAC;oBACD,MAAM,IAAI,2BAA2B,CAAC;oBACtC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;gBACvD,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,KAAK,aAAa,EAAE,CAAC,EAAE,CAAC;gBAClF,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;YACpE,CAAC;YAED,IAAI,MAAM,GAAG,8BAA8B,KAAK,CAAC,aAAa,QAAQ,CAAC;YAEvE,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChB,MAAM,IAAI,gBAAgB,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;gBAC/C,MAAM,IAAI,kBAAkB,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC;gBACnD,MAAM,IAAI,kBAAkB,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC;gBACvD,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS;oBAAE,MAAM,IAAI,kBAAkB,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC;gBACjF,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ;oBAAE,MAAM,IAAI,iBAAiB,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC;YAChF,CAAC;YAED,MAAM,IAAI,WAAW,CAAC;YAEtB,4BAA4B;YAC5B,MAAM,SAAS,GAAG,CAAC,WAAW,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;YAE3G,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,SAAS,QAAQ,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC;gBACxE,CAAC;YACH,CAAC;YAED,uBAAuB;YACvB,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/D,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAClC,MAAM,IAAI,SAAS,QAAQ,OAAO,OAAO,aAAa,CAAC;gBACzD,CAAC;YACH,CAAC;YAED,MAAM,IAAI,4CAA4C,CAAC;YAEvD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;QAED,yDAAyD;QACzD,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,KAAK,GAAI,IAAI,EAAE,KAAgB,IAAI,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,EAAE,MAAgB,CAAC;YAEtC,IAAI,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;YAChE,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC;YAC9B,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAEpC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,MAAM,qBAAqB,EAAE,CAAC,EAAE,CAAC;gBAC9F,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+BAA+B,EAAE,CAAC,EAAE,CAAC;YAChF,CAAC;YAED,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;YAE9B,IAAI,MAAM,GAAG,sBAAsB,CAAC;YACpC,MAAM,IAAI,YAAY,KAAK,CAAC,KAAK,qBAAqB,KAAK,CAAC,QAAQ,OAAO,CAAC;YAC5E,MAAM,IAAI,KAAK,KAAK,CAAC,SAAS,QAAQ,KAAK,CAAC,UAAU,MAAM,CAAC;YAE7D,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,IAAI,yBAAyB,MAAM,MAAM,KAAK,MAAM,CAAC;YAC7D,CAAC;YAED,MAAM,IAAI,qBAAqB,CAAC;YAChC,MAAM,IAAI,6CAA6C,CAAC;YACxD,MAAM,IAAI,6CAA6C,CAAC;YAExD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBACnE,MAAM,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,CAAC,UAAU,MAAM,CAAC;YACzG,CAAC;YAED,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;gBAClB,MAAM,IAAI,iBAAiB,KAAK,OAAO,KAAK,KAAK,CAAC;YACpD,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;QAED,2DAA2D;QAC3D,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;YAEvF,IAAI,MAAM,GAAG,yBAAyB,CAAC;YACvC,MAAM,IAAI,oDAAoD,CAAC;YAC/D,MAAM,IAAI,oBAAoB,MAAM,UAAU,CAAC;YAC/C,MAAM,IAAI,wBAAwB,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;YACxE,MAAM,IAAI,4BAA4B,KAAK,CAAC,aAAa,IAAI,GAAG,MAAM,CAAC;YACvE,MAAM,IAAI,wBAAwB,KAAK,CAAC,KAAK,MAAM,CAAC;YACpD,MAAM,IAAI,iBAAiB,KAAK,CAAC,SAAS,MAAM,CAAC;YACjD,MAAM,IAAI,kBAAkB,KAAK,CAAC,UAAU,MAAM,CAAC;YAEnD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;QAED;YACE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E,KAAK,UAAU,IAAI;IACjB,kCAAkC;IAClC,IAAI,MAAM,CAAC,sBAAsB,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,eAAe,EAAE,CAAC;YAC3C,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,KAAK,CAAC,uCAAuC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC9E,MAAM,oBAAoB,EAAE,CAAC;YAC/B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oBAAoB;QACtB,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAC/C,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dedsession",
3
- "version": "1.2.0",
3
+ "version": "1.4.0",
4
4
  "description": "MCP server for managing work context between Claude sessions with auto-update from remote server",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",