code-simplifier について
Code Simplifierは、動作を維持しながら変更箇所や指定コードを整理する開発者向けスキルです。複雑さの軽減と可読性の向上に加え、フォーマット、Lint、テストによる確認を行います。
主な機能
- 01複雑な関数や条件分岐の分割
- 02命名とコード可読性の改善
- 03未使用・冗長なコードの削除
- 04Pythonらしい書き方の適用
- 05フォーマット、Lint、テストの実行
活用シーン
- 01機能追加や修正後のコード整理
- 02指定したファイルやディレクトリの簡素化
- 03リファクタリング後の動作維持を確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ meleantonio/ awesome-econ-ai-stuff --skill code-simplifierインストール後、Claude Code で/code-simplifierを入力して読み込まれたか確認します。
同梱ファイルindex.md
詳細
コードの簡素化
変更を加えた後に、コードを整理して簡素化します。
使用するタイミング
機能や修正を完了した後にこのスキルを実行し、コードが整理され、読みやすく、保守しやすい状態であることを確認します。
簡素化の目標
複雑さを軽減する
- 長い関数を、より小さく目的を絞った関数に分割します
- ネストの深さを減らします(最大3階層)
- 複雑な条件式を簡素化します
- マジックナンバーを名前付き定数に置き換えます
可読性を向上させる
- 説明的な変数名と関数名を使用します
- 自明でないロジックには、理解を助けるコメントを追加します
- 一貫したフォーマットを保ちます
- 不要なコメントを削除します
Python らしいパターンを適用する
- 適切な場合は、リスト/辞書/セット内包表記を使用します
- リソース管理には
with文を使用します - 手動のインデックス指定の代わりに
enumerate()を使用します - 並行して反復処理する場合は
zip()を使用します - 文字列の書式設定には f-string を使用します
- ファイルパスには
pathlibを使用します
整理する
- 使用されていないインポートを削除します
- 使用されていない変数を削除します
- コメントアウトされたコードを削除します
- 冗長なコードパスを削除します
- 重複するロジックをまとめます
ワークフロー
-
変更されたファイルを特定する
- 現在のセッションで変更されたファイルを対象にします
- または、引数としてファイル/ディレクトリを指定します
-
各ファイルを分析する
- 簡素化できる箇所を確認します
- 効果の大きい改善を優先します
-
簡素化を適用する
- 段階的に変更します
- 元の動作を維持します
- 変更ごとにテストを実行します
-
フォーマットとリント
ruff format .を実行しますruff check --fix .を実行します
-
検証する
- テストを実行します:
pytest - 動作が変わっていないことを確認します
- テストを実行します:
引数
簡素化するファイルまたはディレクトリを任意で指定できます。
使用方法:
/code-simplifier- 最近変更されたファイルを簡素化します/code-simplifier src/module.py- 特定のファイルを簡素化します/code-simplifier src/- ディレクトリ全体を簡素化します
変換例
変換前:
result = []
for i in range(len(items)):
if items[i].is_valid == True:
result.append(items[i].value)
変換後:
result = [item.value for item in items if item.is_valid]
変換前:
if x != None:
if y != None:
if z != None:
process(x, y, z)
変換後:
if all(v is not None for v in (x, y, z)):
process(x, y, z)
コメント
Markdown 対応