Skip to main content
Glama

Memory Bank MCP Server

by t3ta
systemPatterns.json6.21 kB
{ "schema": "memory_document_v2", "metadata": { "id": "9b50dd9f-7b80-4955-9711-3e1ac5e8e8fa", "title": "システムパターン", "documentType": "generic", "path": "systemPatterns.md", "tags": [], "lastModified": "2025-03-21T01:08:29.300Z", "createdAt": "2025-03-17T02:13:31.704Z", "version": 1 }, "content": { "技術的判断": "### マイグレーションアーキテクチャの選択\n\n**コンテキスト**: Markdownファイルから新しいJSON形式へのマイグレーションを行うため、効率的で信頼性の高いアーキテクチャが必要です。\n\n**判断**: ストラテジーパターンを採用し、各ドキュメントタイプに特化した変換ロジックを実装します。また、コマンドパターンを使用してマイグレーションプロセスをカプセル化します。\n\n**理由**:\n- ドキュメントタイプごとに異なる変換ロジックが必要\n- 将来的に新しいドキュメントタイプが追加される可能性がある\n- マイグレーションプロセスの一貫性と再利用性を確保するため\n\n### バックアップとロールバック戦略\n\n**コンテキスト**: マイグレーション中に問題が発生した場合、データ損失を防ぐためのバックアップとロールバック機能が必要です。\n\n**判断**: トランザクション的なアプローチを採用し、以下のプロセスを実装します:\n1. マイグレーション開始前に全ドキュメントのバックアップを作成\n2. マイグレーション中のエラーを検出し、記録\n3. エラー発生時または明示的な要求に応じてバックアップからロールバック\n\n**理由**:\n- データ安全性の確保\n- 失敗したマイグレーションの容易な復旧\n- 部分的成功の状況でも一貫性を維持\n\n### JSON形式の検証方法\n\n**コンテキスト**: 生成されたJSONファイルが正しいスキーマに準拠していることを確認する必要があります。\n\n**判断**: Zodを使用して型安全な検証を実装します。既存のスキーマ定義を活用し、マイグレーション前後で検証を行います。\n\n**理由**:\n- TypeScriptとの統合が容易\n- スキーマとの一貫性を確保\n- エラーメッセージの詳細さ", "関連するファイルやディレクトリ構造": "### コアコンポーネント\n\n```\nsrc/\n migration/ # マイグレーション関連のコンポーネント\n MarkdownToJsonMigrator.ts # メインのマイグレーターロジック\n MigrationValidator.ts # JSONスキーマ検証ロジック\n MigrationBackup.ts # バックアップと復元機能\n converters/ # ドキュメントタイプ別の変換ロジック\n BaseConverter.ts # 基本変換インターフェース\n BranchContextConverter.ts # branchContext用コンバーター\n ActiveContextConverter.ts # activeContext用コンバーター\n SystemPatternsConverter.ts # systemPatterns用コンバーター\n ProgressConverter.ts # progress用コンバーター\n GenericConverter.ts # 一般的なドキュメント用コンバーター\n utils/ # ユーティリティ関数\n MarkdownParser.ts # Markdownパースユーティリティ\n TypeDetector.ts # ドキュメントタイプ検出\n cli/\n commands/\n migration/\n MigrateCommand.ts # マイグレーションのCLIコマンド\n schemas/ # 既存のJSONスキーマ定義\n v2/\n json-document.ts # JSONドキュメントスキーマ\n```\n\n### テスト構造\n\n```\ntest/\n unit/\n migration/\n MarkdownToJsonMigrator.test.ts\n MigrationValidator.test.ts\n MigrationBackup.test.ts\n converters/\n BranchContextConverter.test.ts\n ActiveContextConverter.test.ts\n SystemPatternsConverter.test.ts\n ProgressConverter.test.ts\n GenericConverter.test.ts\n integration/\n migration/\n migration-flow.test.ts\n```", "クラス設計": "### MarkdownToJsonMigrator\n\nメイン機能を提供するクラスで、マイグレーションプロセス全体を制御します。\n\n```typescript\nexport class MarkdownToJsonMigrator {\n constructor(\n private readonly backupService: MigrationBackup,\n private readonly validator: MigrationValidator,\n private readonly converterFactory: ConverterFactory,\n private readonly logger: Logger\n ) {}\n\n async migrateDirectory(directory: string, options: MigrationOptions): Promise<MigrationResult>;\n async migrateFile(filePath: string, options: MigrationOptions): Promise<MigrationResult>;\n private async detectDocumentType(content: string, path: string): Promise<DocumentType>;\n // ..その他の内部メソッド\n}\n```\n\n### ConverterFactory\n\nドキュメントタイプに応じた適切なコンバーターを提供するファクトリークラス。\n\n```typescript\nexport class ConverterFactory {\n getConverter(documentType: DocumentType): BaseConverter;\n}\n```\n\n### BaseConverter\n\nすべてのコンバーターが実装する基本インターフェース。\n\n```typescript\nexport interface BaseConverter {\n convert(markdownContent: string, path: string): JsonDocument;\n}\n```\n\n### MigrationBackup\n\nバックアップと復元機能を提供するクラス。\n\n```typescript\nexport class MigrationBackup {\n async createBackup(directory: string): Promise<string>; // バックアップディレクトリのパスを返す\n async restoreFromBackup(backupPath: string, targetDir: string): Promise<boolean>;\n}\n```\n\n### MigrationValidator\n\n生成されたJSONの検証を行うクラス。\n\n```typescript\nexport class MigrationValidator {\n validateJson(jsonContent: unknown, documentType: DocumentType): ValidationResult;\n}\n```" } }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/t3ta/memory-bank-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server