smithery/shin0205go

aegis-architect

アーキタイプベースのスキャフォールドツール - プロジェクトの重さに応じた型を選択

Installation

$ npx skills add smithery/shin0205go --skill aegis-architect

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery/shin0205go.

npx skills add smithery/shin0205go

Browse all from smithery/shin0205go

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Skill metadata

Parsed from SKILL.md frontmatter.

Allowed toolsaegis-skills__run_script

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 5,513 B
  • docs SUMMARY.md 140 B

History

  1. First recorded snapshot · 0 installs

SKILL.md

Aegis Architect

AIをコーダーからオペレーターへ変える

このスキルは「たい焼きの型」です。どんなAIが使っても、選んだアーキタイプに従った正しい構造が生成されます。

コンセプト

Before (プロンプト依存):
  AI: 「ファイル作ります...あれ、どこに置こう?まあここでいいか」
  → 結果: 構造が崩れる

After (Aegis Architect):
  AI: 「aegis-architect scaffold --name stock_price」を実行
  Aegis: (ガシャン!) 3ファイルを強制生成
  → 結果: 誰がやっても100%正しい構造

アーキタイプ(型の選択)

プロジェクトの「重さ」に応じて適切な型を選択します。

アーキタイプ 用途 生成ファイル
rust_hexagonal 堅牢なコアシステム Domain/Port/Adapter (3ファイル)
rustclisimple 小さなCLIツール main.rs + Cargo.toml

選び方

「長期運用?外部依存の差し替え?チーム開発?」
  → YES: rust_hexagonal

「単機能のCLIツール?学習目的?PoC?」
  → YES: rust_cli_simple

使い方

ビルド

cd aegis-architect-rs
cargo build --release

アーキタイプ一覧を確認

aegis-architect list

Hexagonal構造で生成(デフォルト)

aegis-architect scaffold \
  --name market_analysis \
  --description "株価を分析する機能" \
  --target ./aegis-core

シンプルなCLIツールとして生成

aegis-architect scaffold \
  --name my_tool \
  --description "便利ツール" \
  --archetype rust_cli_simple

アーキタイプディレクトリを指定

aegis-architect --archetypes-dir /path/to/archetypes scaffold ...

生成されるファイル構造(rust_hexagonal)

target/
├── src/domain/market_analysis.rs      # 聖域:純粋なドメインモデル
├── src/ports/market_analysis_port.rs  # インターフェース定義
└── src/adapters/market_analysis_adapter.rs  # 実装の雛形

設計原則(rust_hexagonal)

┌─────────────────────────────────────────┐
│              Domain (Core)              │
│  - 外部依存ゼロ                         │
│  - 純粋な構造体とビジネスロジック       │
│  - ここが「聖域」                       │
└─────────────────────────────────────────┘
                    ▲
                    │ 依存の方向
                    │
┌─────────────────────────────────────────┐
│              Ports (Traits)             │
│  - Domainの型を使うインターフェース     │
│  - 外部との境界を定義                   │
└─────────────────────────────────────────┘
                    ▲
                    │
┌─────────────────────────────────────────┐
│           Adapters (実装)               │
│  - Portを実装                           │
│  - 外部API/DB/ファイルシステムへ接続    │
│  - ここだけが「汚れてよい」             │
└─────────────────────────────────────────┘

なぜツールで強制するのか

アプローチ 問題点
設計書を書く 読まれない、守られない
プロンプトで指示 AIは忘れる、解釈がブレる
コードレビュー 事後対応、手戻りが発生
ツールで強制 物理的に正しい構造しか作れない

使用例

ユーザー: 「株価取得機能を追加して」

AI(Aegis Architect使用):
1. プロジェクトの規模を判断 → AEGIS本体なのでrust_hexagonalを選択
2. aegis-architect scaffold --name stock_price を実行
3. 生成された domain/stock_price.rs にドメインモデルを定義
4. ports/stock_price_port.rs にトレイトメソッドを追加
5. adapters/stock_price_adapter.rs に実装を書く

→ 手順を飛ばしたり、構造を無視することが不可能

アーキタイプの追加方法

新しいアーキタイプを追加するには:

  1. archetypes/<name>/ ディレクトリを作成
  2. manifest.json でメタデータと生成ファイルを定義
  3. テンプレートファイル (.tmpl) を配置

テンプレートでは {{ name }}, {{ pascal_name }}, {{ description }} が使用可能。

今後の拡張

  • validate_arch - 既存コードのアーキテクチャ違反検出
  • migratetohex - レガシーコードの移行支援
  • テスト雛形の自動生成
  • CI連携(PRでvalidate_archを自動実行)