Agent skill
refactor-system
統合リファクタリングエージェント - 既存システムをマイクロサービスアーキテクチャにリファクタリングするための統合分析・設計を実行。/refactor-system [対象パス] で呼び出し。
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/refactor-system
SKILL.md
System Refactoring Orchestrator
既存システムをマイクロサービスアーキテクチャにリファクタリングするための統合エージェントです。
概要
このスキルは、既存の設計書やコードを分析し、以下のプロセスを通じてマイクロサービスアーキテクチャへの変換計画を策定します:
- システム分析 - 既存コードと設計書の解析
- MMI評価 - Modularity Maturity Indexによる成熟度評価
- ドメインマッピング - ビジネスドメインとコードの紐付け
- マイクロサービス設計 - ターゲットアーキテクチャの策定
- ScalarDB設計 - 分散トランザクション・データアーキテクチャの策定
- ドメインストーリー - 各ドメインのユースケース整理
使用方法
/refactor-system [対象パス] [オプション]
オプション
--analyze-only- 分析のみ実行(設計書生成なし)--skip-mmi- MMI評価をスキップ--domain=[ドメイン名]- 特定ドメインのみ対象--output=[出力パス]- 出力先ディレクトリ指定(デフォルト:reports/)
出力ファイル構造
reports/
├── 00_summary/
│ └── executive_summary.md # エグゼクティブサマリー
├── 01_analysis/
│ ├── ubiquitous_language.md # ユビキタス言語集
│ ├── actors_roles_permissions.md # アクター・ロール・権限
│ ├── domain_code_mapping.md # ドメイン-コード対応表
│ └── current_system_overview.md # 現行システム概要
├── 02_evaluation/
│ ├── mmi_overview.md # MMI全体サマリー
│ ├── mmi_by_module.md # モジュール別MMI
│ └── mmi_improvement_plan.md # MMI改善計画
├── 03_design/
│ ├── domain_analysis.md # ドメイン分析
│ ├── system_mapping.md # システムマッピング
│ ├── target_architecture.md # ターゲットアーキテクチャ
│ ├── transformation_plan.md # 変換計画
│ ├── operations_feedback.md # 運用・フィードバック計画
│ ├── scalardb_architecture.md # ScalarDBアーキテクチャ設計
│ ├── scalardb_schema.md # ScalarDBスキーマ設計
│ ├── scalardb_transaction.md # ScalarDBトランザクション設計
│ └── scalardb_migration.md # ScalarDBマイグレーション計画
├── 04_stories/
│ └── [domain]_story.md # ドメイン別ストーリー
└── 05_estimate/
├── cost-summary.md # コストサマリー
├── infrastructure-detail.md # インフラ詳細見積もり
├── license-requirements.md # ライセンス要件・問い合わせ情報
└── cost-assumptions.md # 見積もり前提条件
実行フロー
graph TD
A[開始] --> B[入力確認]
B --> C{設計書あり?}
C -->|Yes| D[設計書解析]
C -->|No| E[コード解析のみ]
D --> F[システム分析エージェント]
E --> F
F --> G[MMI評価エージェント]
G --> H[ドメインマッピングエージェント]
H --> I[マイクロサービス設計エージェント]
I --> J[ScalarDB設計エージェント]
J --> K[ドメインストーリーエージェント]
K --> CE[コスト見積もりエージェント]
CE --> MV[Mermaid図検証・修正]
MV --> L[最終レポート生成]
L --> M[終了]
処理詳細
重要: 各Phaseは完了時に即座に対応するファイルを reports/ ディレクトリに出力します。
最後にまとめて出力するのではなく、解析中にリアルタイムでファイルを生成してください。
Phase 1: 入力収集と初期分析
- 出力ディレクトリの作成:
mkdir -p reports/{00_summary,01_analysis,02_evaluation,03_design,04_stories,graph/data,99_appendix} - 対象ディレクトリのスキャン
- 設計書ファイルの特定(
.md,.docx,.xlsx,.pdfなど) - ソースコードの構造解析
- 使用技術スタックの特定
Phase 1完了時に出力: reports/00_summary/project_metadata.json
Phase 2: システム分析
Taskツールで system-analyzer エージェントを起動し、以下を実行:
- ユビキタス言語の抽出
- アクター・ロール・権限の整理
- ドメイン境界の初期推定
Phase 2完了時に出力:
reports/01_analysis/system-overview.mdreports/01_analysis/ubiquitous-language.mdreports/01_analysis/actors-roles-permissions.mdreports/01_analysis/domain-code-mapping.md
Phase 3: MMI評価
Taskツールで mmi-evaluator エージェントを起動し、以下を評価:
- Cohesion(凝集度) - 30%
- Coupling(結合度) - 30%
- Independence(独立性) - 20%
- Reusability(再利用性) - 20%
Phase 3完了時に出力:
reports/02_evaluation/mmi-overview.mdreports/02_evaluation/mmi-by-module.mdreports/02_evaluation/mmi-improvement-plan.md
Phase 4: ドメインマッピング
Taskツールで domain-mapper エージェントを起動し、以下を実行:
- 設計書の概念とコードの対応付け
- ドメインタイプの分類(Pipeline/Blackboard/Dialogue)
- マイクロサービス境界の分類(Process/Master/Integration/Supporting)
Phase 4完了時に出力:
reports/03_design/domain-analysis.mdreports/03_design/context-map.mdreports/03_design/system-mapping.md
Phase 5: マイクロサービス設計
Taskツールで microservice-architect エージェントを起動し、以下を策定:
- コンテキストマップ
- マクロアーキテクチャ
- データストレージ設計
- 移行計画
Phase 5完了時に出力:
reports/03_design/target-architecture.mdreports/03_design/transformation-plan.mdreports/03_design/operations-feedback.md
Phase 6: ScalarDB設計
Taskツールで scalardb-architect エージェントを起動し、以下を策定:
- デプロイモード選定 - ScalarDB Core(ライブラリ)vs Cluster(サーバー)
- ストレージバックエンド設計 - 各サービスに適したDB選定(PostgreSQL, DynamoDB, Cassandra等)
- スキーマ設計 - Namespace、テーブル定義、パーティションキー、クラスタリングキー
- トランザクション設計 - Consensus Commit、Two-Phase Commit、Sagaパターン
- マイグレーション計画 - 既存DBからの移行戦略
Phase 6完了時に出力:
reports/03_design/scalardb-architecture.mdreports/03_design/scalardb-schema.mdreports/03_design/scalardb-transaction.mdreports/03_design/scalardb-migration.md
Phase 7: ドメインストーリー
Taskツールで domain-storyteller エージェントを起動し、各ドメインについて:
- アクター特定
- ワークアイテム整理
- アクティビティフロー記述
- 例外シナリオ検討
Phase 7完了時に出力: reports/04_stories/[domain]-story.md
Phase 8: コスト見積もり
Taskツールで cost-estimator エージェントを起動し、以下を策定:
- クラウドインフラ費用 - Kubernetes、データベース、ネットワーク、ストレージ
- ライセンス費用 - ScalarDB、その他商用ソフトウェア
- 運用費用 - 監視、バックアップ、サポート
- 初期構築費用 - 移行、開発、トレーニング
Phase 8完了時に出力:
reports/05_estimate/cost-summary.mdreports/05_estimate/infrastructure-detail.mdreports/05_estimate/license-requirements.mdreports/05_estimate/cost-assumptions.md
Phase 9: Mermaid図の検証・修正
全レポートのMermaid図を検証し、シンタックスエラーがあれば修正:
- Mermaid図を含むMarkdownファイルを検索
- 各図の構文を検証
- エラーを発見した場合は自動修正
- 修正結果をログ出力
# /fix-mermaid スキルを使用
/fix-mermaid ./reports
検証項目:
- サブグラフ名の引用符
- 日本語ラベルの引用符
<br/>を含むノードの引用符- エッジラベルの特殊文字
- sequenceDiagramの予約語(BOX等)
Phase 9完了時に出力: 修正ログ(コンソール出力)
Phase 10: エグゼクティブサマリー
全Phaseの結果を統合し、エグゼクティブサマリーを作成。
Phase 10完了時に出力: reports/00_summary/executive-summary.md
依存スキル
このスキルは以下のサブスキルを使用します:
/analyze-system- システム分析/evaluate-mmi- MMI評価/map-domains- ドメインマッピング/design-microservices- マイクロサービス設計/design-scalardb- ScalarDB設計(分散トランザクション・データアーキテクチャ)/create-domain-story- ドメインストーリー作成/estimate-cost- コスト見積もり(クラウドインフラ・ライセンス)/fix-mermaid- Mermaid図の検証・修正
使用例
基本的な使用
/refactor-system ./src
特定ドメインのみ分析
/refactor-system ./src --domain=Order
分析のみ実行
/refactor-system ./src --analyze-only
注意事項
- 大規模なコードベースの場合、処理に時間がかかる場合があります
- 中間ファイルは
reports/に保存されます - 既存の出力ファイルは上書きされます(バックアップ推奨)
- 設計書がない場合でもコードから推論可能ですが、精度が低下する可能性があります
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?