Skills DirectoryGitHub から厳選したオープンソースの Skills

hexagonal-architecturecommit d29cf65SKILL.md · アーキテクチャ設計

ヘキサゴナル設計

ポートとアダプターの構成でシステムを設計・リファクタリングし、ビジネスロジックをフレームワークや永続化から切り離します。

npx skills add affaan-m/ECC --skill hexagonal-architecture
権限
  • read-repo
  • write-files
  • shell
  • network
対応ツール
Claude Code, Codex, Cursor, Copilot, OpenCode
GitHub
294.3k
提供元
コミュニティ · Affaan Mustafa
状態
スキャン済み
ライセンス
MIT

基本ルール

依存の向きは常に内側で、ドメインは外部に依存せず、アダプターが外縁でポートを実装します。

実行フェーズ

  1. フェーズ 01ユースケース境界

    一つのユースケースに明確な入出力 DTO を定め、req や GraphQL の context などの通信の詳細を境界の外に置きます。

  2. フェーズ 02出力ポートを先に

    永続化、外部呼び出し、ログ、時計などすべての副作用をポートとして定義し、技術ではなく能力を表します。

  3. フェーズ 03ユースケース実装

    ユースケースはコンストラクタや引数でポートを受け取り、不変条件の検証、ドメインルールの調整、単純なデータの返却だけを行います。

  4. フェーズ 04アダプターと配線

    外縁に入力・出力アダプターを実装して変換はそこに閉じ込め、依存の組み立ては一か所のコンポジションルートにまとめます。

  5. フェーズ 05境界ごとにテスト

    ユースケースは偽のポートで単体テストし、アダプターは実インフラで結合テストします。既存システムは一気に書き換えず、スライスごとに移行します。

権限の説明(SKILL.md より)

機能必要か説明
ファイル書き込み必要ドメイン、ユースケース、ポート、アダプター、コンポジションルート、テストのコードを作成・リファクタリングします。
コマンド実行不要コマンドの実行は求めていません。
外部通信不要ネットワークにはアクセスしません。

SKILL.md のフロントマター(YAML)

SKILL.md のフロントマター(YAML)commit d29cf65
---
name: hexagonal-architecture
description: Design, implement, and refactor Ports & Adapters systems with clear domain boundaries, dependency inversion, and testable use-case orchestration across TypeScript, Java, Kotlin, and Go services. Use when introducing or refactoring toward Ports and Adapters, or when domain logic has become entangled with I/O.
metadata:
  origin: ECC
---

関連スキル

ルールスキャンですべてのリスクを検出できるわけではありません。インストール前にこのスキルの SKILL.md を読み、権限を確認してください。