mcpField
A
architecture-aware-init

architecture-aware-init

github.com/athola開発34399 回インストール1 日前に更新
リポジトリ

architecture-aware-init について

アーキテクチャが未決定の新規プロジェクト向け初期化スキルです。調査、パラダイム選択、テンプレートのカスタマイズ、アーキテクチャ決定記録を一連のワークフローにまとめます。

主な機能

  1. 01プロジェクト背景の調査フロー
  2. 02アーキテクチャパラダイムの選択
  3. 03パラダイム別テンプレートのカスタマイズ
  4. 04アーキテクチャ決定記録の作成
  5. 05ワークフロー自動化用Pythonヘルパー

活用シーン

  1. 01新規プロジェクトのアーキテクチャ選定
  2. 02アーキテクチャ選定理由の記録
  3. 03選択したパラダイムに沿った構成の準備
  4. 04調査に基づく候補アーキテクチャの比較

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/athola/claude-night-market --skill architecture-aware-init

インストール後、Claude Code で/architecture-aware-initを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

modules/
paradigm-selection.md
research-flow.md
scaffold-generation.md
script-integration.md

詳細

アーキテクチャを考慮したプロジェクト初期化

概要

オンライン調査、アーキタイプの選択、テンプレートのカスタマイズ、意思決定の記録を1つのワークフローにまとめたプロジェクト初期化です。アーキテクチャが未決定で、その選択の根拠を示す必要がある場合にこのスキルを使用してください。

このスキルを使う場合

  • 新しいプロジェクトを開始するにあたり、どのアーキテクチャが最適か判断できない場合
  • 最新の業界標準に沿ったアーキテクチャを選びたい場合
  • アーキテクチャ上の意思決定の根拠が必要な場合
  • 選択したパラダイムに合わせてテンプレートをカスタマイズしたい場合

アーキテクチャが未決定の場合は、project-initの代わりに使用してください。 アーキテクチャの基盤を確立するため、project-specificationの前に使用してください。

必須の進捗項目

  1. arch-init:research-completed:オンライン調査の完了
  2. arch-init:paradigm-selected:アーキテクチャのパラダイムの選択
  3. arch-init:templates-customized:パラダイムに合わせたテンプレートの調整
  4. arch-init:decision-recorded:ADR の作成

5 ステップのワークフロー

ステップ 1~2:コンテキストの収集、ベストプラクティスの調査

完全なプロジェクトコンテキストの質問票と3段階の検索戦略については、modules/research-flow.mdを読み込んでください。出力:ステップ 3 に引き継ぐ統合ブリーフ。

ステップ 3:アーキテクチャのパラダイムを選択する

チーム規模とドメインの複雑さを基にした意思決定マトリックスと、特別なケース向けの上書き(ストリーミング、サーバーレス、マイクロカーネルなど)については、modules/paradigm-selection.mdを読み込んでください。次の2つの方法があります。

  • ガイドに沿って検討するには、archetypes:architecture-paradigmsスキルを使用します。
  • 迅速に推奨案を得るには、マトリックスを直接使用します。
ステップ 4~5:テンプレートをカスタマイズし、意思決定を記録する

パラダイム固有のディレクトリ構成(Functional Core/Hexagonal/Microservices を掲載し、その他は対応するarchetypes:architecture-paradigm-{name}スキルに委任)と ADR テンプレートについては、modules/scaffold-generation.mdを読み込んでください。

出力:初期化パッケージ

ワークフローの完了後、プロジェクトには次のものが用意されます。

  1. 選択したアーキテクチャに合ったディレクトリ構成
  2. パラダイムを反映した設定(テスト構成、ツール、依存関係のヒント)
  3. このパラダイムを選択した理由を説明する ADR
  4. 継続的な実装ガイダンスに役立つ、関連するパラダイムスキルへのリンク
  5. ステップ 2 で調査した、類似する実在プロジェクトへの参照

スクリプトとの連携

上記の対話型ワークフローがデフォルトです。自動化する場合は、plugins/attune/scripts/にある3つの Python ヘルパー(アーキテクチャリサーチャー、テンプレートカスタマイザー、完全な対話型フロー)とライブラリー形式のインポート例について、modules/script-integration.mdを読み込んでください。

既存のコマンドとの連携

このスキルは、スキャフォールディングの前にアーキテクチャ選択フェーズを追加することで、/attune:project-initを拡張します。

# Standard initialization (no architecture decision)
/attune:project-init --lang python --name my-project

# Architecture-aware initialization
/attune:brainstorm                  # Explore project needs
Skill(architecture-aware-init)      # Select architecture
/attune:project-init --arch <paradigm> --name my-project

セッションの例

ユーザー:「フィンテックアプリケーション向けの Python Web API を作成しています。開発者は8人で、ビジネスルールは複雑です。高いセキュリティと監査証跡が必要です。」

  • ステップ 1 のコンテキスト:Web API、非常に複雑なドメイン、エンジニア5~15人、セキュリティと監査可能性の要件。
  • ステップ 2 の調査:フィンテック API のパターン、監査証跡のアーキテクチャ、CQRS+ES の Python の例を検索。
  • ステップ 3 の選択:調査結果と意思決定マトリックスにより、CQRS+イベントソーシングを選択。
  • ステップ 4 のテンプレート:コマンドハンドラーモジュール、クエリハンドラーモジュール、イベントストア、アグリゲートパターン、プロジェクションハンドラー。
  • ステップ 5 の ADR:CQRS/ES が適している理由(監査可能性、複雑なルール、規制への準拠)を記録。

結果:パラダイムに適した構成と、明確な意思決定の根拠を備えたプロジェクトが初期化されます。

関連スキル

  • Skill(archetypes:architecture-paradigms):パラダイムのカタログ
  • Skill(archetypes:architecture-paradigm-*):各パラダイムの実装ガイダンス
  • Skill(attune:project-brainstorming):アーキテクチャ選定前のアイデア創出
  • Skill(attune:project-specification):パラダイム選択後の要件定義

関連項目

  • /attune:project-init:基本的なプロジェクトの初期化
  • /attune:blueprint:パラダイム選択後のアーキテクチャ計画
  • plugins/archetypes/README.md:パラダイムの完全なリファレンス

完了条件

  • 4 つすべての進捗項目にチェックが付いています: arch-init:research-completed、arch-init:paradigm-selected、 arch-init:templates-customized、arch-init:decision-recorded。
  • 初期化されたプロジェクトに ADR ファイルがあり、Step 2 の調査結果の統合から得られた根拠を参照しながら、選択したパラダイムを選んだ理由を説明しています。
  • プロジェクトのディレクトリ構成が、選択した archetypes:architecture-paradigm-* スキルで規定されている構成と一致しています(作成されたディレクトリの一覧表示で確認します)。
  • 調査後もパラダイムが決まらない場合、スキルは上位 2 つの候補とそれぞれのトレードオフを提示し、暗黙のうちに既定の選択をするのではなく、ユーザーが明示的に選択するまで待ちます。
  • 調査を実施した場合、research.json に preferred と avoid のリストが含まれ、--research-file とともに渡されており、推奨の根拠には「research」を名指しするルールが含まれています。

コメント