diff --git a/.gitignore b/.gitignore
index e69de29..9f11b75 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+.idea/
diff --git a/.idea/misc.xml b/.idea/misc.xml
deleted file mode 100644
index 9ebc6e2..0000000
--- a/.idea/misc.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/spec/README.md b/spec/README.md
index 92d4b18..7ec9641 100644
--- a/spec/README.md
+++ b/spec/README.md
@@ -36,6 +36,28 @@ keruta はクラウドベースのバッチ処理システムであり、複数
* [keruta log](./log.md)
- ログフォーマット、ログレベル、ログストリーミングの仕様
+### モジュール仕様
+
+モジュール間の依存関係は [モジュール構成図](./module/modules.png) を参照してください。
+
+* [kodel:core](./module/kodel_core.md)
+ - DI、エラーハンドリング、ログ管理を提供する汎用ライブラリのコアモジュール
+
+* [kodel:api](./module/kodel_api.md)
+ - API 層でのエラーハンドリング、ログ統合、DI 統合を提供
+
+* [ktcp:model](./module/ktcp_model.md)
+ - KTCP プロトコルのデータモデル定義
+
+* [ktcp:client](./module/ktcp_client.md)
+ - KTCP クライアント実装(プロバイダー側)
+
+* [ktcp:server](./module/ktcp_server.md)
+ - KTCP サーバー実装(タスクサーバー側)
+
+* [ktse](./module/ktse.md)
+ - Ktor WebSocket を使用した KTCP サーバーエンジン
+
## 開発ガイドライン
- プロトコル仕様は明確で実装可能なものとする
diff --git a/spec/module/kodel_api.md b/spec/module/kodel_api.md
new file mode 100644
index 0000000..2d7dc30
--- /dev/null
+++ b/spec/module/kodel_api.md
@@ -0,0 +1,15 @@
+# kodel:api
+
+## 概要
+
+API 層でのエラーハンドリング、ログ統合、DI 統合を提供するモジュール。
+
+## 責務
+
+- API レイヤーでのエラーハンドリング
+- API レイヤーでのログ統合(リクエスト/レスポンスロギング)
+- Web フレームワーク向け DI 統合
+
+## 依存関係
+
+- `kodel:core` - 基盤機能を利用
\ No newline at end of file
diff --git a/spec/module/kodel_core.md b/spec/module/kodel_core.md
new file mode 100644
index 0000000..dca5f5d
--- /dev/null
+++ b/spec/module/kodel_core.md
@@ -0,0 +1,16 @@
+# kodel:core
+
+## 概要
+
+DI(Dependency Injection)、エラーハンドリング、ログ管理を提供する汎用ライブラリのコアモジュール。
+
+## 責務
+
+- DI コンテナの提供
+- 構造化エラーハンドリング
+- ログ管理の基盤機能
+- 共通ユーティリティ
+
+## 依存関係
+
+外部モジュールに依存しない
\ No newline at end of file
diff --git a/spec/module/ktcp_client.md b/spec/module/ktcp_client.md
new file mode 100644
index 0000000..cee6c0c
--- /dev/null
+++ b/spec/module/ktcp_client.md
@@ -0,0 +1,25 @@
+# ktcp:client
+
+## 概要
+
+KTCP プロトコルのクライアント実装を提供するモジュール。プロバイダー側で使用される。
+
+## 責務
+
+- サーバーへのメッセージ送信
+- サーバーからのメッセージ受信・処理
+- 接続管理(再接続、ハートビート)
+- 認証処理
+
+## 主要機能
+
+- タスク実行要求の受信
+- タスク状態の送信
+- ログストリーミング
+- エラー通知
+- 自動再接続
+- ハートビート送信
+
+## 依存関係
+
+- `ktcp:model` - プロトコルメッセージモデル
\ No newline at end of file
diff --git a/spec/module/ktcp_model.md b/spec/module/ktcp_model.md
new file mode 100644
index 0000000..d46dd27
--- /dev/null
+++ b/spec/module/ktcp_model.md
@@ -0,0 +1,26 @@
+# ktcp:model
+
+## 概要
+
+KTCP(Keruta Task Client Protocol)プロトコルのデータモデルを定義するモジュール。
+
+## 責務
+
+- プロトコルメッセージのデータモデル定義
+- タスク状態のエンティティ定義
+- バリデーションルール定義
+- シリアライズ/デシリアライズインターフェース
+
+## メッセージタイプ
+
+KTCP プロトコルで使用される全メッセージタイプの詳細は [KTCP 仕様](../task-client-protocol.md) を参照してください。
+
+主要なメッセージカテゴリ:
+- タスク操作(CRUD)
+- タスク実行制御
+- 認証とセッション管理
+- 監視と診断
+
+## 依存関係
+
+外部モジュールに依存しない
\ No newline at end of file
diff --git a/spec/module/ktcp_server.md b/spec/module/ktcp_server.md
new file mode 100644
index 0000000..fbd1dfc
--- /dev/null
+++ b/spec/module/ktcp_server.md
@@ -0,0 +1,27 @@
+# ktcp:server
+
+## 概要
+
+KTCP プロトコルのサーバー実装を提供するモジュール。タスクサーバー(keruta-api)側で使用される。
+
+## 責務
+
+- クライアント接続管理
+- クライアントへのメッセージ送信
+- クライアントからのメッセージ受信・処理
+- 認証・認可
+- セッション管理
+
+## 主要機能
+
+- タスク実行要求の送信
+- タスク状態の受信
+- ログストリーミングの受信
+- エラー通知の受信
+- クライアント認証
+- ハートビート監視
+- 接続プール管理
+
+## 依存関係
+
+- `ktcp:model` - プロトコルメッセージモデル
\ No newline at end of file
diff --git a/spec/module/ktse.md b/spec/module/ktse.md
new file mode 100644
index 0000000..29b1eab
--- /dev/null
+++ b/spec/module/ktse.md
@@ -0,0 +1,37 @@
+# ktse - Keruta Task Server Engine
+
+## 概要
+
+KTCP サーバーの WebSocket 実装を提供するモジュール。タスクサーバーで使用される WebSocket エンジン。
+
+## 責務
+
+- WebSocket サーバーの具体的実装
+- WebSocket 接続のライフサイクル管理
+- メッセージの送受信処理
+- 接続プーリング
+- パフォーマンス最適化
+
+## 主要機能
+
+- WebSocket エンドポイント提供(`/ws/ktcp`)
+- 双方向メッセージング
+- 接続状態管理
+- メッセージのバッチ処理
+- 圧縮・最適化
+- エラーハンドリング
+
+## エンドポイント
+
+```
+ws://:/ws/ktcp
+wss://:/ws/ktcp(推奨)
+```
+
+デフォルト: `ws://keruta-api:8080/ws/ktcp`
+
+## 依存関係
+
+- `ktcp:server` - KTCP サーバーインターフェース
+- `ktcp:model` - プロトコルメッセージモデル
+- 外部: Ktor WebSocket - WebSocket 通信フレームワーク
diff --git a/spec/module/modules.png b/spec/module/modules.png
new file mode 100644
index 0000000..cec99b2
Binary files /dev/null and b/spec/module/modules.png differ