dedsession 1.4.2 → 1.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -4,16 +4,11 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
4
4
  import { CallToolRequestSchema, ListToolsRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
5
5
  import * as fs from "fs";
6
6
  import * as path from "path";
7
- import * as https from "https";
8
- import * as http from "http";
9
7
  // ============================================================================
10
8
  // КОНФИГУРАЦИЯ
11
9
  // ============================================================================
12
10
  const CONFIG = {
13
- REMOTE_BASE_URL: "https://files.megafon-apn32.ru/mcp",
14
- LOCAL_CACHE_DIR: path.join(process.env.HOME || "", ".cache", "dedsession"),
15
- VERSION: "1.4.2",
16
- CHECK_UPDATES_ON_START: true,
11
+ VERSION: "1.4.4",
17
12
  };
18
13
  const state = {
19
14
  loadedContext: null,
@@ -147,26 +142,6 @@ function ensureDir(dir) {
147
142
  fs.mkdirSync(dir, { recursive: true });
148
143
  }
149
144
  }
150
- function fetch(url) {
151
- return new Promise((resolve, reject) => {
152
- const protocol = url.startsWith("https") ? https : http;
153
- protocol
154
- .get(url, (res) => {
155
- if (res.statusCode === 301 || res.statusCode === 302) {
156
- fetch(res.headers.location).then(resolve).catch(reject);
157
- return;
158
- }
159
- if (res.statusCode !== 200) {
160
- reject(new Error(`HTTP ${res.statusCode}`));
161
- return;
162
- }
163
- let data = "";
164
- res.on("data", (chunk) => (data += chunk));
165
- res.on("end", () => resolve(data));
166
- })
167
- .on("error", reject);
168
- });
169
- }
170
145
  function getWorkingDir() {
171
146
  // Ищем директорию проекта по маркерам (.git, package.json)
172
147
  // Начинаем с cwd и идём вверх
@@ -297,6 +272,207 @@ function listContexts() {
297
272
  return [];
298
273
  }
299
274
  }
275
+ // ============================================================================
276
+ // АДАПТИВНЫЕ ФУНКЦИИ v1.4.3
277
+ // ============================================================================
278
+ /**
279
+ * Оценивает размер контекста в байтах
280
+ */
281
+ function estimateContextSize(contextPath) {
282
+ try {
283
+ if (!fs.existsSync(contextPath))
284
+ return 0;
285
+ const files = fs.readdirSync(contextPath).filter(f => f.endsWith(".md"));
286
+ let totalSize = 0;
287
+ for (const file of files) {
288
+ try {
289
+ const stat = fs.statSync(path.join(contextPath, file));
290
+ totalSize += stat.size;
291
+ }
292
+ catch {
293
+ // Игнорируем ошибки
294
+ }
295
+ }
296
+ return totalSize;
297
+ }
298
+ catch {
299
+ return 0;
300
+ }
301
+ }
302
+ /**
303
+ * Определяет сколько контекстов загружать для context_quick
304
+ * Возвращает { count: число контекстов, mode: режим загрузки, reason: причина }
305
+ */
306
+ function determineQuickLoadStrategy(contexts) {
307
+ if (contexts.length === 0) {
308
+ return { count: 0, mode: "full", reason: "Нет контекстов" };
309
+ }
310
+ // Оцениваем размер первых 5 контекстов
311
+ const sizes = contexts.slice(0, 5).map(ctx => ({
312
+ name: ctx.name,
313
+ size: estimateContextSize(ctx.path)
314
+ }));
315
+ const totalSize = sizes.reduce((sum, s) => sum + s.size, 0);
316
+ const avgSize = totalSize / sizes.length;
317
+ // Лимиты (в байтах)
318
+ const SOFT_LIMIT = 50 * 1024; // 50KB — начинаем сокращать
319
+ const HARD_LIMIT = 100 * 1024; // 100KB — только README
320
+ const MAX_LIMIT = 200 * 1024; // 200KB — сокращаем количество
321
+ if (totalSize < SOFT_LIMIT) {
322
+ // Всё влезает — грузим все 5 полностью
323
+ return {
324
+ count: Math.min(5, contexts.length),
325
+ mode: "full",
326
+ reason: `Размер ${Math.round(totalSize / 1024)}KB — полная загрузка`
327
+ };
328
+ }
329
+ if (totalSize < HARD_LIMIT) {
330
+ // Средний размер — грузим 3-4 контекста
331
+ const count = avgSize > 15 * 1024 ? 3 : 4;
332
+ return {
333
+ count: Math.min(count, contexts.length),
334
+ mode: "full",
335
+ reason: `Размер ${Math.round(totalSize / 1024)}KB — загружаю ${count} контекстов`
336
+ };
337
+ }
338
+ if (totalSize < MAX_LIMIT) {
339
+ // Большой размер — только README + summary каждого
340
+ return {
341
+ count: Math.min(5, contexts.length),
342
+ mode: "summary",
343
+ reason: `Размер ${Math.round(totalSize / 1024)}KB — краткий режим (README + итоги)`
344
+ };
345
+ }
346
+ // Огромный размер — только README
347
+ const count = Math.min(3, contexts.length);
348
+ return {
349
+ count,
350
+ mode: "readme_only",
351
+ reason: `Размер ${Math.round(totalSize / 1024)}KB — только README (${count} контекстов)`
352
+ };
353
+ }
354
+ /**
355
+ * Определяет масштаб сохранения на основе данных
356
+ * Возвращает scale и список файлов для создания
357
+ */
358
+ function determineSaveScale(args) {
359
+ // Считаем метрики
360
+ const changesLen = (args.changes || "").length;
361
+ const sessionLogLen = (args.session_log || "").length;
362
+ const taskOverviewLen = (args.task_overview || "").length;
363
+ const analysisLen = (args.analysis || "").length;
364
+ // Считаем сколько изменённых файлов упомянуто
365
+ const filesChanged = (args.changes?.match(/[-*`]\s*[`']?[\w/.]+\.(ts|js|tsx|jsx|json|md|css|html|py|go|rs)[`']?/gi) || []).length;
366
+ // Считаем опциональные поля
367
+ const optionalFields = [
368
+ args.code_snippets,
369
+ args.decisions,
370
+ args.problems_solutions,
371
+ args.architecture,
372
+ args.testing,
373
+ args.api_docs,
374
+ args.migration,
375
+ args.performance,
376
+ args.security
377
+ ].filter(Boolean).length;
378
+ const totalContentLen = changesLen + sessionLogLen + taskOverviewLen + analysisLen;
379
+ // MINIMAL: мелкий фикс (до 500 символов, 1-2 файла)
380
+ if (totalContentLen < 500 && filesChanged <= 2 && optionalFields === 0) {
381
+ return {
382
+ scale: "minimal",
383
+ files: ["README.md", "03-changes.md", "04-summary.md"],
384
+ reason: `Минимальная задача (${filesChanged} файл, ${totalContentLen} символов) → 3 файла`
385
+ };
386
+ }
387
+ // COMPACT: небольшая задача (500-1500 символов, 2-3 файла)
388
+ if (totalContentLen < 1500 && filesChanged <= 3 && optionalFields <= 1) {
389
+ return {
390
+ scale: "compact",
391
+ files: ["README.md", "01-task-overview.md", "03-changes.md", "04-summary.md"],
392
+ reason: `Компактная задача (${filesChanged} файлов, ${totalContentLen} символов) → 4 файла`
393
+ };
394
+ }
395
+ // STANDARD: обычная задача (1500-4000 символов, 3-5 файлов)
396
+ if (totalContentLen < 4000 && filesChanged <= 5 && optionalFields <= 2) {
397
+ return {
398
+ scale: "standard",
399
+ files: ["README.md", "01-task-overview.md", "02-analysis.md", "03-changes.md", "04-summary.md", "05-session-log.md"],
400
+ reason: `Стандартная задача (${filesChanged} файлов, ${totalContentLen} символов) → 6 файлов`
401
+ };
402
+ }
403
+ // EXTENDED: расширенная задача (4000-8000 символов, 5-8 файлов, есть code_snippets или decisions)
404
+ if (totalContentLen < 8000 && filesChanged <= 8 && optionalFields <= 4) {
405
+ const files = [
406
+ "README.md", "01-task-overview.md", "02-analysis.md", "03-changes.md",
407
+ "04-summary.md", "05-session-log.md"
408
+ ];
409
+ if (args.code_snippets)
410
+ files.push("06-code-snippets.md");
411
+ if (args.decisions)
412
+ files.push("07-decisions.md");
413
+ if (args.problems_solutions)
414
+ files.push("08-problems-solutions.md");
415
+ return {
416
+ scale: "extended",
417
+ files,
418
+ reason: `Расширенная задача (${filesChanged} файлов, ${totalContentLen} символов) → ${files.length} файлов`
419
+ };
420
+ }
421
+ // DETAILED: детальная задача (8000-15000 символов, много файлов)
422
+ if (totalContentLen < 15000 && optionalFields <= 6) {
423
+ const files = [
424
+ "README.md", "01-task-overview.md", "02-analysis.md", "03-changes.md",
425
+ "04-summary.md", "05-session-log.md"
426
+ ];
427
+ if (args.code_snippets)
428
+ files.push("06-code-snippets.md");
429
+ if (args.decisions)
430
+ files.push("07-decisions.md");
431
+ if (args.problems_solutions)
432
+ files.push("08-problems-solutions.md");
433
+ if (args.architecture)
434
+ files.push("09-architecture.md");
435
+ if (args.testing)
436
+ files.push("10-testing.md");
437
+ if (args.api_docs)
438
+ files.push("11-api-docs.md");
439
+ return {
440
+ scale: "detailed",
441
+ files,
442
+ reason: `Детальная задача (${filesChanged} файлов, ${totalContentLen} символов) → ${files.length} файлов`
443
+ };
444
+ }
445
+ // MAXIMUM: огромная задача (15000+ символов, рефакторинг, релиз)
446
+ const files = [
447
+ "README.md", "01-task-overview.md", "02-analysis.md", "03-changes.md",
448
+ "04-summary.md", "05-session-log.md"
449
+ ];
450
+ if (args.code_snippets)
451
+ files.push("06-code-snippets.md");
452
+ if (args.decisions)
453
+ files.push("07-decisions.md");
454
+ if (args.problems_solutions)
455
+ files.push("08-problems-solutions.md");
456
+ if (args.architecture)
457
+ files.push("09-architecture.md");
458
+ if (args.testing)
459
+ files.push("10-testing.md");
460
+ if (args.api_docs)
461
+ files.push("11-api-docs.md");
462
+ if (args.migration)
463
+ files.push("12-migration.md");
464
+ if (args.performance)
465
+ files.push("13-performance.md");
466
+ if (args.security)
467
+ files.push("14-security.md");
468
+ // Всегда добавляем 15-full-log.md для максимума
469
+ files.push("15-full-context.md");
470
+ return {
471
+ scale: "maximum",
472
+ files,
473
+ reason: `Максимальная задача (${filesChanged}+ файлов, ${totalContentLen}+ символов) → ${files.length} файлов`
474
+ };
475
+ }
300
476
  function loadContext(contextName) {
301
477
  const mdHistory = getMdHistoryPath();
302
478
  let contextPath = path.join(mdHistory, contextName);
@@ -326,7 +502,8 @@ function loadContext(contextName) {
326
502
  const info = contexts.find(c => c.name === contextName);
327
503
  return { success: true, files, info };
328
504
  }
329
- function saveContext(taskName, content, parentContext) {
505
+ function saveContext(taskName, content, parentContext, filesToCreate // Опционально — какие файлы создавать
506
+ ) {
330
507
  const date = new Date().toISOString().split("T")[0];
331
508
  const number = getNextContextNumber();
332
509
  const paddedNumber = String(number).padStart(3, "0");
@@ -360,24 +537,32 @@ function saveContext(taskName, content, parentContext) {
360
537
  readmeContent += `\n\n## 🔗 Связи\n\n**Parent:** ${parent}\n`;
361
538
  }
362
539
  }
363
- // Базовые файлы (всегда)
364
- fs.writeFileSync(path.join(contextPath, "README.md"), readmeContent, "utf-8");
365
- fs.writeFileSync(path.join(contextPath, "01-task-overview.md"), content.taskOverview, "utf-8");
366
- fs.writeFileSync(path.join(contextPath, "02-analysis.md"), content.analysis, "utf-8");
367
- fs.writeFileSync(path.join(contextPath, "03-changes.md"), content.changes, "utf-8");
368
- fs.writeFileSync(path.join(contextPath, "04-summary.md"), content.summary, "utf-8");
369
- // Расширенные файлы (если есть)
370
- if (content.sessionLog) {
371
- fs.writeFileSync(path.join(contextPath, "05-session-log.md"), content.sessionLog, "utf-8");
372
- }
373
- if (content.codeSnippets) {
374
- fs.writeFileSync(path.join(contextPath, "06-code-snippets.md"), content.codeSnippets, "utf-8");
375
- }
376
- if (content.decisions) {
377
- fs.writeFileSync(path.join(contextPath, "07-decisions.md"), content.decisions, "utf-8");
378
- }
379
- if (content.problemsSolutions) {
380
- fs.writeFileSync(path.join(contextPath, "08-problems-solutions.md"), content.problemsSolutions, "utf-8");
540
+ // Маппинг файлов к контенту
541
+ const fileMap = {
542
+ "README.md": readmeContent,
543
+ "01-task-overview.md": content.taskOverview ? `# 📋 Обзор задачи\n\n${content.taskOverview}` : undefined,
544
+ "02-analysis.md": content.analysis ? `# 🔍 Анализ\n\n${content.analysis}` : undefined,
545
+ "03-changes.md": `# 🔧 Изменения\n\n${content.changes}`,
546
+ "04-summary.md": `# 📝 Итоги\n\n${content.summary}`,
547
+ "05-session-log.md": content.sessionLog ? `# 💬 Лог сессии\n\n**Дата:** ${new Date().toISOString()}\n\n${content.sessionLog}` : undefined,
548
+ "06-code-snippets.md": content.codeSnippets ? `# 💻 Фрагменты кода\n\n${content.codeSnippets}` : undefined,
549
+ "07-decisions.md": content.decisions ? `# 🎯 Принятые решения\n\n${content.decisions}` : undefined,
550
+ "08-problems-solutions.md": content.problemsSolutions ? `# 🔧 Проблемы и решения\n\n${content.problemsSolutions}` : undefined,
551
+ "09-architecture.md": content.architecture ? `# 🏗️ Архитектура\n\n${content.architecture}` : undefined,
552
+ "10-testing.md": content.testing ? `# 🧪 Тестирование\n\n${content.testing}` : undefined,
553
+ "11-api-docs.md": content.apiDocs ? `# 📚 API документация\n\n${content.apiDocs}` : undefined,
554
+ "12-migration.md": content.migration ? `# 🔄 Миграция\n\n${content.migration}` : undefined,
555
+ "13-performance.md": content.performance ? `# ⚡ Производительность\n\n${content.performance}` : undefined,
556
+ "14-security.md": content.security ? `# 🔒 Безопасность\n\n${content.security}` : undefined,
557
+ "15-full-context.md": content.fullContext ? `# 📖 Полный контекст\n\n${content.fullContext}` : undefined,
558
+ };
559
+ // Если указаны конкретные файлы — используем их, иначе все доступные
560
+ const filesToWrite = filesToCreate || Object.keys(fileMap);
561
+ for (const fileName of filesToWrite) {
562
+ const fileContent = fileMap[fileName];
563
+ if (fileContent) {
564
+ fs.writeFileSync(path.join(contextPath, fileName), fileContent, "utf-8");
565
+ }
381
566
  }
382
567
  // Обновляем parent контекст если есть
383
568
  if (state.loadedContext && state.loadedContextPath) {
@@ -534,45 +719,7 @@ function searchContexts(query) {
534
719
  // ============================================================================
535
720
  // АВТООБНОВЛЕНИЕ
536
721
  // ============================================================================
537
- async function checkForUpdates() {
538
- try {
539
- const versionUrl = `${CONFIG.REMOTE_BASE_URL}/version.json`;
540
- const response = await fetch(versionUrl);
541
- const remote = JSON.parse(response);
542
- if (remote.version !== CONFIG.VERSION) {
543
- return { hasUpdate: true, newVersion: remote.version };
544
- }
545
- return { hasUpdate: false };
546
- }
547
- catch {
548
- return { hasUpdate: false };
549
- }
550
- }
551
- async function downloadInstructions() {
552
- const instructions = ["init", "save-guide", "load-guide", "templates"];
553
- let downloaded = 0;
554
- ensureDir(CONFIG.LOCAL_CACHE_DIR);
555
- for (const name of instructions) {
556
- try {
557
- const url = `${CONFIG.REMOTE_BASE_URL}/instructions/${name}.md`;
558
- const content = await fetch(url);
559
- const cachePath = path.join(CONFIG.LOCAL_CACHE_DIR, `${name}.md`);
560
- fs.writeFileSync(cachePath, content, "utf-8");
561
- downloaded++;
562
- }
563
- catch {
564
- // Игнорируем ошибки
565
- }
566
- }
567
- return downloaded;
568
- }
569
722
  function getInstruction(name) {
570
- // Сначала пробуем кэш
571
- const cachePath = path.join(CONFIG.LOCAL_CACHE_DIR, `${name}.md`);
572
- if (fs.existsSync(cachePath)) {
573
- return fs.readFileSync(cachePath, "utf-8");
574
- }
575
- // Fallback на встроенные
576
723
  if (name === "init")
577
724
  return INSTRUCTIONS.init;
578
725
  if (name === "save-guide")
@@ -627,7 +774,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
627
774
  },
628
775
  {
629
776
  name: "context_save",
630
- description: "💾 Сохранить контекст работы в MD_HISTORY/. Создаёт папку с файлами описания задачи. ОБЯЗАТЕЛЬНО вызывай когда пользователь говорит: 'сохрани контекст', 'сохрани работу', 'сохранить', 'сохрани', 'запомни работу'.",
777
+ description: "💾 Сохранить контекст работы в MD_HISTORY/. УМНОЕ СОХРАНЕНИЕ: автоматически определяет масштаб задачи (3-15 файлов). Маленькая задача = 3 файла, большая задача = до 15 файлов. ОБЯЗАТЕЛЬНО вызывай когда пользователь говорит: 'сохрани контекст', 'сохрани работу', 'сохранить', 'сохрани', 'запомни работу'.",
631
778
  inputSchema: {
632
779
  type: "object",
633
780
  properties: {
@@ -650,30 +797,58 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
650
797
  },
651
798
  changes: {
652
799
  type: "string",
653
- description: "Изменения: какие файлы изменили, что сделали",
800
+ description: "Изменения: какие файлы изменили, что сделали. ЧЕМ БОЛЬШЕ ИНФОРМАЦИИ — тем больше файлов создастся автоматически!",
654
801
  },
655
802
  summary: {
656
803
  type: "string",
657
804
  description: "Итоги: что сделано, что осталось",
658
805
  },
806
+ session_log: {
807
+ type: "string",
808
+ description: "(ОБЯЗАТЕЛЬНО) Подробный лог сессии: ключевые моменты диалога, команды, решения, ошибки. БОЛЬШОЙ лог = больше файлов!",
809
+ },
659
810
  code_snippets: {
660
811
  type: "string",
661
- description: "(Опционально) Важные куски кода для запоминания",
812
+ description: "(Для расширенных задач) Важные куски кода для запоминания",
662
813
  },
663
814
  decisions: {
664
815
  type: "string",
665
- description: "(Опционально) Принятые решения и почему",
816
+ description: "(Для расширенных задач) Принятые решения и почему",
666
817
  },
667
818
  problems_solutions: {
668
819
  type: "string",
669
- description: "(Опционально) Проблемы и их решения",
820
+ description: "(Для расширенных задач) Проблемы и их решения",
670
821
  },
671
- session_log: {
822
+ architecture: {
823
+ type: "string",
824
+ description: "(Для больших задач) Архитектурные решения, структура проекта",
825
+ },
826
+ testing: {
827
+ type: "string",
828
+ description: "(Для больших задач) Тестирование: что тестировали, результаты",
829
+ },
830
+ api_docs: {
672
831
  type: "string",
673
- description: "(ОБЯЗАТЕЛЬНО) Подробный лог сессии: ключевые моменты диалога, команды, решения, ошибки",
832
+ description: "(Для больших задач) API документация, эндпоинты",
833
+ },
834
+ migration: {
835
+ type: "string",
836
+ description: "(Для больших задач) Миграции, breaking changes",
837
+ },
838
+ performance: {
839
+ type: "string",
840
+ description: "(Для больших задач) Оптимизации производительности",
841
+ },
842
+ security: {
843
+ type: "string",
844
+ description: "(Для больших задач) Безопасность, уязвимости",
845
+ },
846
+ full_context: {
847
+ type: "string",
848
+ description: "(Для максимальных задач) Полный контекст всей работы",
674
849
  },
675
850
  },
676
- required: ["task_name", "task_overview", "changes", "summary", "session_log"],
851
+ required: ["task_name", "changes", "summary", "session_log"],
677
852
  },
678
853
  },
679
854
  {
@@ -818,10 +993,28 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
818
993
  blocked: "❌ Заблокировано",
819
994
  };
820
995
  const status = statusMap[args?.status || "in_progress"] || "⏳ В процессе";
996
+ // Определяем масштаб сохранения
997
+ const scaleInfo = determineSaveScale({
998
+ changes: args?.changes,
999
+ session_log: args?.session_log,
1000
+ task_overview: args?.task_overview,
1001
+ analysis: args?.analysis,
1002
+ code_snippets: args?.code_snippets,
1003
+ decisions: args?.decisions,
1004
+ problems_solutions: args?.problems_solutions,
1005
+ architecture: args?.architecture,
1006
+ testing: args?.testing,
1007
+ api_docs: args?.api_docs,
1008
+ migration: args?.migration,
1009
+ performance: args?.performance,
1010
+ security: args?.security,
1011
+ });
1012
+ // Формируем README с информацией о масштабе
821
1013
  const readme = `# ${taskName}
822
1014
 
823
1015
  **Дата:** ${new Date().toISOString().split("T")[0]}
824
1016
  **Статус:** ${status}
1017
+ **Масштаб:** ${scaleInfo.scale} (${scaleInfo.files.length} файлов)
825
1018
 
826
1019
  ## Краткое описание
827
1020
 
@@ -831,30 +1024,42 @@ ${args?.summary || "Нет описания"}
831
1024
 
832
1025
  ${args?.changes?.split("\n").map(l => l.trim() ? `- ${l}` : "").join("\n") || "- Нет данных"}
833
1026
  `;
834
- // Формируем лог сессии
835
- const sessionLog = args?.session_log || "Лог сессии не предоставлен";
836
1027
  const result = saveContext(taskName, {
837
1028
  readme,
838
- taskOverview: `# 📋 Обзор задачи\n\n${args?.task_overview || "Нет описания"}`,
839
- analysis: `# 🔍 Анализ\n\n${args?.analysis || "Анализ не проводился"}`,
840
- changes: `# 🔧 Изменения\n\n${args?.changes || "Нет изменений"}`,
841
- summary: `# 📝 Итоги\n\n${args?.summary || "Нет итогов"}`,
842
- sessionLog: `# 💬 Лог сессии\n\n**Дата:** ${new Date().toISOString()}\n\n${sessionLog}`,
1029
+ taskOverview: args?.task_overview,
1030
+ analysis: args?.analysis,
1031
+ changes: args?.changes || "Нет изменений",
1032
+ summary: args?.summary || "Нет итогов",
1033
+ sessionLog: args?.session_log,
843
1034
  codeSnippets: args?.code_snippets,
844
1035
  decisions: args?.decisions,
845
1036
  problemsSolutions: args?.problems_solutions,
846
- });
1037
+ architecture: args?.architecture,
1038
+ testing: args?.testing,
1039
+ apiDocs: args?.api_docs,
1040
+ migration: args?.migration,
1041
+ performance: args?.performance,
1042
+ security: args?.security,
1043
+ fullContext: args?.full_context,
1044
+ }, undefined, scaleInfo.files);
847
1045
  if (!result.success) {
848
1046
  return { content: [{ type: "text", text: `❌ Ошибка: ${result.error}` }] };
849
1047
  }
850
1048
  let output = `✅ **Контекст сохранён**\n\n`;
851
1049
  output += `📁 **Папка:** \`${result.name}\`\n`;
852
1050
  output += `📄 **Файлов:** ${result.filesCount}\n`;
1051
+ output += `🎯 **Масштаб:** ${scaleInfo.scale}\n`;
1052
+ output += `📊 **Причина:** ${scaleInfo.reason}\n`;
853
1053
  output += `📍 **Путь:** \`${result.path}\`\n`;
854
1054
  if (state.loadedContext && state.loadedContext !== result.name) {
855
1055
  output += `\n🔗 **Parent:** ${state.loadedContext}\n`;
856
1056
  }
857
1057
  output += `\n---\n\n`;
1058
+ output += `**Созданные файлы:**\n`;
1059
+ for (const f of scaleInfo.files) {
1060
+ output += `- ${f}\n`;
1061
+ }
1062
+ output += `\n---\n\n`;
858
1063
  output += `💡 **Для продолжения в новой сессии:**\n`;
859
1064
  output += `\`\`\`\nзапусти контекст → загрузи #${result.name.split("_")[0]}\n\`\`\``;
860
1065
  return { content: [{ type: "text", text: output }] };
@@ -1048,45 +1253,66 @@ MD_HISTORY/
1048
1253
  // ==================== CONTEXT_QUICK ====================
1049
1254
  case "context_quick": {
1050
1255
  state.isInitialized = true;
1051
- const contexts = listContexts().slice(0, 5);
1256
+ const allContexts = listContexts();
1052
1257
  const stats = getStatistics();
1053
1258
  const workDir = getWorkingDir();
1054
- if (contexts.length === 0) {
1259
+ if (allContexts.length === 0) {
1055
1260
  return { content: [{ type: "text", text: "📭 Нет сохранённых контекстов" }] };
1056
1261
  }
1262
+ // Определяем стратегию загрузки
1263
+ const strategy = determineQuickLoadStrategy(allContexts);
1264
+ const contexts = allContexts.slice(0, strategy.count);
1057
1265
  let output = `# ⚡ Краткий контекст — Dedsession v${CONFIG.VERSION}\n\n`;
1058
1266
  output += `📁 **Рабочая директория:** \`${workDir}\`\n`;
1059
1267
  output += `📊 **Статистика:** Всего ${stats.total} | ✅ ${stats.completed} | ⏳ ${stats.inProgress}\n`;
1268
+ output += `🎯 **Режим:** ${strategy.reason}\n`;
1060
1269
  output += `📦 **Загружено контекстов:** ${contexts.length}\n\n`;
1061
1270
  output += `---\n\n`;
1062
- // Загружаем и выводим все файлы каждого контекста
1271
+ // Загружаем контексты согласно стратегии
1063
1272
  for (const ctx of contexts) {
1064
1273
  const result = loadContext(ctx.name);
1065
1274
  if (!result.success)
1066
1275
  continue;
1067
1276
  output += `# 📁 Контекст #${String(ctx.number).padStart(3, "0")}: ${ctx.title}\n\n`;
1068
- output += `📅 **Дата:** ${ctx.date} | **Статус:** ${ctx.status} | **Файлов:** ${ctx.filesCount}\n`;
1277
+ output += `📅 **Дата:** ${ctx.date} | **Статус:** ${ctx.status} | **Файлов:** ${ctx.filesCount} | **Размер:** ${Math.round(ctx.size / 1024)}KB\n`;
1069
1278
  if (ctx.hasParent)
1070
1279
  output += `🔗 **Parent:** ${ctx.hasParent}\n`;
1071
1280
  if (ctx.hasChild)
1072
1281
  output += `🔗 **Child:** ${ctx.hasChild}\n`;
1073
1282
  output += `\n---\n\n`;
1074
- // Выводим все файлы контекста
1075
- const fileOrder = ["README.md", "01-task-overview.md", "02-analysis.md", "03-changes.md", "04-summary.md", "05-session-log.md", "06-code-snippets.md", "07-decisions.md", "08-problems-solutions.md"];
1076
- for (const fileName of fileOrder) {
1077
- if (result.files[fileName]) {
1078
- output += `## 📄 ${fileName}\n\n${result.files[fileName]}\n\n---\n\n`;
1283
+ if (strategy.mode === "readme_only") {
1284
+ // Только README
1285
+ if (result.files["README.md"]) {
1286
+ output += `## 📄 README.md\n\n${result.files["README.md"]}\n\n---\n\n`;
1079
1287
  }
1080
1288
  }
1081
- // Дополнительные файлы которых нет в списке
1082
- for (const [fileName, content] of Object.entries(result.files)) {
1083
- if (!fileOrder.includes(fileName)) {
1084
- output += `## 📄 ${fileName}\n\n${content}\n\n---\n\n`;
1289
+ else if (strategy.mode === "summary") {
1290
+ // README + summary + changes
1291
+ const summaryFiles = ["README.md", "03-changes.md", "04-summary.md"];
1292
+ for (const fileName of summaryFiles) {
1293
+ if (result.files[fileName]) {
1294
+ output += `## 📄 ${fileName}\n\n${result.files[fileName]}\n\n---\n\n`;
1295
+ }
1296
+ }
1297
+ }
1298
+ else {
1299
+ // Полная загрузка
1300
+ const fileOrder = ["README.md", "01-task-overview.md", "02-analysis.md", "03-changes.md", "04-summary.md", "05-session-log.md", "06-code-snippets.md", "07-decisions.md", "08-problems-solutions.md", "09-architecture.md", "10-testing.md", "11-api-docs.md", "12-migration.md", "13-performance.md", "14-security.md", "15-full-context.md"];
1301
+ for (const fileName of fileOrder) {
1302
+ if (result.files[fileName]) {
1303
+ output += `## 📄 ${fileName}\n\n${result.files[fileName]}\n\n---\n\n`;
1304
+ }
1305
+ }
1306
+ // Дополнительные файлы которых нет в списке
1307
+ for (const [fileName, content] of Object.entries(result.files)) {
1308
+ if (!fileOrder.includes(fileName)) {
1309
+ output += `## 📄 ${fileName}\n\n${content}\n\n---\n\n`;
1310
+ }
1085
1311
  }
1086
1312
  }
1087
1313
  output += `\n${"=".repeat(80)}\n\n`;
1088
1314
  }
1089
- output += `\n💡 Загружено ${contexts.length} контекстов. Продолжаем работу?`;
1315
+ output += `\n💡 Загружено ${contexts.length} контекстов (${strategy.mode === "full" ? "полностью" : strategy.mode === "summary" ? "кратко" : "только README"}). Продолжаем работу?`;
1090
1316
  return { content: [{ type: "text", text: output }] };
1091
1317
  }
1092
1318
  // ==================== CONTEXT_FULL ====================
@@ -1141,22 +1367,9 @@ MD_HISTORY/
1141
1367
  // ЗАПУСК
1142
1368
  // ============================================================================
1143
1369
  async function main() {
1144
- // Проверяем обновления при старте
1145
- if (CONFIG.CHECK_UPDATES_ON_START) {
1146
- try {
1147
- const updateInfo = await checkForUpdates();
1148
- if (updateInfo.hasUpdate) {
1149
- console.error(`[dedsession] Доступна новая версия: ${updateInfo.newVersion}`);
1150
- await downloadInstructions();
1151
- }
1152
- }
1153
- catch {
1154
- // Игнорируем ошибки
1155
- }
1156
- }
1157
1370
  const transport = new StdioServerTransport();
1158
1371
  await server.connect(transport);
1159
- console.error("[dedsession] Сервер запущен");
1372
+ console.error("[dedsession] Сервер запущен v" + CONFIG.VERSION);
1160
1373
  }
1161
1374
  main().catch(console.error);
1162
1375
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "dedsession",
3
- "version": "1.4.2",
4
- "description": "MCP server for managing work context between Claude sessions with auto-update from remote server",
3
+ "version": "1.4.4",
4
+ "description": "MCP server for managing work context between Claude sessions - fast local storage",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
7
7
  "bin": "dist/index.js",