# Agent Architecture Patterns

> マービン・ミンスキーの『心の社会』に基づくエージェントアーキテクチャパターンと 設計原則を適用し、単一責任、創発的複雑性、階層的組織化により、効果的な マルチエージェントシステムを設計します。 Anchors: • Clean Architecture（Robert C. Martin） / 適用: 依存関係ルール、レイヤー境界設計 / 目的: エージェント間通信の脆弱性排除 • マービン・ミンスキー『心の社会』/ 適用: 創発的複雑性、階層的統合 / 目的: エージェント組織原理 • オーケストレーター・ワーカー、ハブアンドスポーク、パイプライン、ステートマシンパターン / 適用: マルチエージェント協調設計 / 目的: アーキテクチャ選択ガイダンス Trigger: 新しいエージェント設計、マルチエージェントシステム構造化、エージェント協調パターン選択、既存アーキテクチャのリファクタリング時に使用します。

- Skill: `majiayu000/agent-architecture-patterns` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/agent-architecture-patterns`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/agent-architecture-patterns/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/agent-architecture-patterns

---


# エージェント・アーキテクチャ・パターン

## 概要

マルチエージェントシステムの効果的な設計のために、Clean Architecture の依存関係ルールとマービン・ミンスキーの創発的複雑性原理を適用します。

## ワークフロー

### Phase 1: 目的と前提の整理

**目的**: アーキテクチャ設計の対象範囲と制約を明確化

**アクション**:

1. エージェント数、責務分掌、通信パターンを把握
2. `references/Level1_basics.md` で基礎概念を確認
3. 既存の依存関係やシステム境界を整理

**Task**: `agents/analyze-requirements.md` を参照

### Phase 2: パターン選択と設計

**目的**: 要件に最適なアーキテクチャパターンを決定し設計

**アクション**:

1. `references/pattern-catalog.md` で4つのパターンを比較
2. `references/Level2_intermediate.md` で実装パターンを確認
3. テンプレートを参照しながら設計ドキュメント作成

**Task**: `agents/design-architecture.md` を参照

### Phase 3: 検証とリファクタリング

**目的**: 設計の脆弱性を排除し、実装へ移行

**アクション**:

1. `scripts/validate-architecture.mjs` で依存関係ルール検証
2. 脆弱性がある場合は `references/Level3_advanced.md` で改善パターン確認
3. `scripts/log_usage.mjs` で実行記録を保存

**Task**: `agents/validate-architecture.md` を参照

---

## Task仕様ナビ

| Task                  | 起動タイミング | 入力             | 出力             |
| --------------------- | -------------- | ---------------- | ---------------- |
| analyze-requirements  | Phase 1開始時  | システム仕様     | 要件分析結果     |
| design-architecture   | Phase 2開始時  | 要件分析結果     | 設計ドキュメント |
| validate-architecture | Phase 3開始時  | 設計ドキュメント | 検証結果レポート |

**詳細仕様**: 各Taskの詳細は `agents/` ディレクトリを参照

## ベストプラクティス

### すべきこと

| 推奨事項             | 理由                             |
| -------------------- | -------------------------------- |
| スコープ明確化       | 対象システムの境界を事前に定義   |
| 4パターンから選択    | 要件に最適なアーキテクチャを選択 |
| 通信フロー図解       | エージェント間関係を可視化       |
| 外向き依存ルール厳守 | 循環依存を防止                   |
| ドメイン境界記録     | 責務分掌を明確化                 |

### 避けるべきこと

| 禁止事項               | 問題点                       |
| ---------------------- | ---------------------------- |
| パターン選択なし実装   | 設計根拠がなく保守困難       |
| 双方向通信（循環依存） | テスト・変更が困難になる     |
| 単一責任違反           | エージェントが肥大化する     |
| 図解なしで進行         | コミュニケーション齟齬が発生 |
| 基礎確認なしで複雑設計 | 基本原則違反のリスク         |

---

## リソース参照

### references/（詳細知識）

| リソース     | パス                                                                   | 読込条件       |
| ------------ | ---------------------------------------------------------------------- | -------------- |
| 基礎概念     | [references/Level1_basics.md](references/Level1_basics.md)             | 初回利用時     |
| 実装パターン | [references/Level2_intermediate.md](references/Level2_intermediate.md) | 実務適用時     |
| 応用ガイド   | [references/Level3_advanced.md](references/Level3_advanced.md)         | 複雑系対応時   |
| 専門解説     | [references/Level4_expert.md](references/Level4_expert.md)             | 高度な課題時   |
| パターン詳細 | [references/pattern-catalog.md](references/pattern-catalog.md)         | パターン選択時 |

### scripts/（決定論的処理）

| スクリプト                          | 機能               |
| ----------------------------------- | ------------------ |
| `scripts/validate-architecture.mjs` | 依存関係ルール検証 |
| `scripts/log_usage.mjs`             | フィードバック記録 |

### assets/（テンプレート）

| アセット                                 | 用途                     |
| ---------------------------------------- | ------------------------ |
| `assets/orchestrator-worker-template.md` | オーケストレーター設計例 |
| `assets/pipeline-template.md`            | パイプライン設計例       |

## 変更履歴

| Version | Date       | Changes                                                                           |
| ------- | ---------- | --------------------------------------------------------------------------------- |
| 2.0.0   | 2025-12-31 | agents/追加、テーブル形式統一、Task仕様ナビ改善                                   |
| 1.1.0   | 2025-12-31 | 18-skills.md仕様に基づいて更新（Anchors/Trigger、Task仕様ナビ追加、本文日本語化） |
| 1.0.0   | 2025-12-24 | 初版公開、基本的なワークフローとリソース参照を実装                                |

