コンテンツにスキップ
  • 初心者向け

初めてのアーキテクチャ定義

katachi が必要かどうか迷う場合は、先に モチベーション を読むことをおすすめします。

katachi をプロジェクトに導入する

Section titled “katachi をプロジェクトに導入する”
  1. お使いの AI Agent を起動し、次のように プロンプトを入力 してください。

    このプロジェクトに katachi を導入してください。
    - https://tbsten.github.io/katachi/install/ja/index.md に従って導入してください。
    • 事前にプロジェクトを git で管理しておくことをおすすめします。
    • AI Agent が参照するページには、プロジェクトへの katachi の導入を あなたと一緒に 進めるよう指示が書いてあります。
    追加のオプション
    • アーキテクチャに関するドキュメントがコードベースの外にある場合 (例: Notion で管理しているなど)、プロンプトにそのリンクを含めてください。
    • AI Agent は、デフォルトでは architecture-test モジュールを作り、そこにアーキテクチャ定義を書こうとします。
      • 別のモジュールに作成したい場合 は テストは <module> に作成してください のようなプロンプトを追加してください。
    • context 管理の一環として、katachi 導入専用のセッションを新規に開始する ことをおすすめします。
      • Claude Code, Codex CLI の場合: /clear コマンドでセッションをクリアしてからプロンプトを入力します。
  2. AI Agent がプロジェクトにセットアップした差分を レビュー し、必要に応じて内容を修正してください。

    注目すべき点:

    • architecture-test/src/test/kotlin/<パッケージ>/ProjectArchitecture.kt がエントリーポイントです。
    • AI Agent は architecture の定義を group・Role ごとのファイルに分け、ProjectArchitecture.kt の下のパッケージに置きます。そのファイルもレビュー対象です。
    • チームで開発している場合は、チームメンバー(特にチームのリード)にも重点的にレビューしてもらいましょう。
  3. アーキテクチャテストを実行 し、All green になることを確認してください。

    ターミナルウィンドウ
    ./gradlew :architecture-test:test

    これでセットアップは完了です。

AI Agent に実際にタスクを渡し、アーキテクチャルールに違反するファイルを生成しないことを確かめてみましょう。

今後発生しうる実装タスクがある場合

今後実際に発生するタスクがあるなら、それを試しに実行させて、katachi が機能するかを確かめるのが効果的です。 タスクの内容を AI Agent に渡して実行させてください。

JIRA や Notion などで管理しているタスクチケットがあれば、それをそのまま渡すのも手です。

特にない場合

架空のタスクを AI Agent に考えさせて、katachi がガードレールとして機能するか検証させましょう。

このプロジェクトで将来発生しそうな架空のタスクをいくつか考えてください。

オプション
CI に組み込む

Section titled “ CI に組み込む”

品質を維持するには、katachi のアーキテクチャテストを CI に組み込み、定期的に実行させることが大切です。

以下のようなワークフローファイルを追加してください。

.github/workflows/architecture.yml
name: Architecture
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
jobs:
architecture:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: actions/setup-java@v6
with:
distribution: temurin
java-version: '17'
- uses: gradle/actions/setup-gradle@v6
- run: ./gradlew :architecture-test:test