Files
LazyBearWorks/memory-bank/activeContext.md

5.4 KiB
Raw Permalink Blame History

Active Context — Текущее состояние работы

📍 Где мы находимся

Состояние проекта

LazyBear MCP Server находится на этапе Development. Сервер предоставляет MCP инструменты для работы с:

  • Jira — Issues, JQL, комментарии
  • Confluence — Страницы, пространства
  • Kubernetes — Deployments, Pods, Services, Ingress
  • TUI — Интерактивная консольная панель

Последнее обновление кода

Commit: d12e9873f0964f2c275a634cda80b161c83f9bbb

Текущий фокус

Активная разработка: Инициализация Memory Bank для поддержания документации между сессиями.

Следующие шаги:

  1. Создать Memory Bank структуру
  2. 🔄 Продолжить документирование архитектуры и паттернов
  3. Обновлять Memory Bank после значимых изменений
  4. Добавить Qdrant в Memory Bank

🔍 Важные решения

Архитектурные паттерны

Паттерн Описание Где используется
Single HTTP Server Один транспорт MCP Program.cs — один AddMcpServer
Tool Registry Регистрация модулей ToolRegistryService.RegisterModule
Client Provider Factory для клиентов K8sClientProvider, JiraClientProvider
TUI First TUI как основной UI RazorConsole в Program.cs

Технические решения

  • MCP Protocol 1.2.0 — HTTP transport
  • .NET 10 SDK — Пин в global.json
  • ASP.NET Core 9 — HTTP server
  • RazorConsole — TUI framework
  • Kubernetes Client — Через kubeconfig

Конфигурация

appsettings.json:

{
  "Kubernetes": {
    "KubeconfigPath": "",           // Fallback к defaults
    "DefaultNamespace": "default"
  },
  "Jira": {
    "Url": "",                      // Требуется для Jira tools
    "Token": "",
    "Project": ""
  },
  "Confluence": {
    "Url": "",
    "Token": "",
    "Username": "",
    "SpaceKey": ""
  },
  "Qdrant": {
    "Url": "",                      // URL Qdrant сервера
    "ApiKey": "",                   // Опционально для авторизации
    "DefaultCollection": "knowledge" // Default коллекция для векторного поиска
  }
}

🚧 Текущая работа

Что работает

  • MCP HTTP transport активен
  • TUI запуск через RazorConsole
  • Инструменты Jira/Confluence/Kubernetes зарегистрированы
  • Локализация RU/EN (клавиша L)

Что в разработке/тестировании

  • 🔄 Memory Bank инициализация
  • Тестирование через MCP Inspector
  • Интеграция с IDE (Codex, VS Code)

Известные проблемы

  • Jira требует настройки Jira:Url
  • Kubernetes: пустой KubeconfigPath использует fallback
  • Razor Pages в Pages/ не активирован (не используется)

📋 Следующие действия

Приоритет 1: Конфигурация

# Настроить Jira
Jira:Url=https://your-jira.url
Jira:Token=your-token
Jira:Project=LAZYBEAR

# Настроить K8s
Kubernetes:KubeconfigPath=~/.kube/config

Приоритет 2: Тестирование

# Запустить сервер
dotnet run --project LazyBear.MCP

# Открыть MCP Inspector
npx @modelcontextprotocol/inspector dotnet run --project LazyBear.MCP

Приоритет 3: Документация

  • 📝 Обновлять activeContext.md после значимых изменений
  • 📝 Добавлять секции в systemPatterns.md при введении новых паттернов

💡 Выводы и наблюдения

Изученное о проекте

  1. Проект уже полностью функционален — все модули готовы
  2. TUI First подход — основной UI консольный, HTTP в фоне
  3. Minimal API Style — чистый код, DI через сервисы
  4. Локализация встроена — RU/EN переключение через клавишу

Предпочтения проекта

  • Комментарии и сообщения: Русский язык
  • Код и переменные: Английский язык
  • Style: Clean code, minimal abstractions
  • Documentation: Markdown в memory-bank/

Важные уроки

  • MCP tools авт. регистрируются из assembly через WithToolsFromAssembly()
  • IToolModule интерфейсы — способ добавлять новые инструменты
  • RazorConsole управляет консолью, HTTP host работает в фоне

Файл автоматически обновляется при значимых изменениях проекта. Читать при начале новой сессии.