| name | code-similarity-ts |
| description | TypeScriptコード重複検出・共通化スキル。similarity-tsを使用してコードの意味的類似を検出し、リファクタリング計画を立てる。「重複コードを見つけて」「共通化したい」「類似コード検出」などのリクエスト時に使用。 |
TypeScriptコード重複検出・共通化
similarity-tsを使用してTypeScriptコードの重複を検出し、リファクタリング計画を立てるスキル。
ワークフロー
1. similarity-tsで類似コード検出
↓
2. 検出結果を分析
↓
3. 共通化の優先度判断
↓
4. リファクタリング計画を提示
検出コマンド
基本
similarity-ts . --threshold 0.8 --min-lines 10
オプション
# ヘルプ確認
similarity-ts -h
# 閾値調整(類似度80%以上)
--threshold 0.8
# 最小行数(10行以上のブロック)
--min-lines 10
# 特定ディレクトリのみ
similarity-ts src/
分析観点
優先度判断
| 優先度 |
条件 |
| High |
類似度90%以上、頻出パターン |
| Medium |
類似度80-90%、複数ファイルに分散 |
| Low |
類似度80%未満、局所的 |
共通化パターン
- ユーティリティ関数化: 同一ロジックの抽出
- 基底クラス/インターフェース: 構造的類似
- ジェネリクス/高階関数: パラメータ違いのみの場合
- 設定ファイル化: 定数・設定値の重複
出力形式
## 重複検出結果
### 🔴 High Priority
1. **{ファイル1}:{行} ↔ {ファイル2}:{行}**
- 類似度: 95%
- 推奨: ユーティリティ関数に抽出
- 共通化案: `utils/parseConfig.ts`
### 🟡 Medium Priority
...
## リファクタリング計画
1. {共通化対象1} → {対応方針}
2. {共通化対象2} → {対応方針}