mcpField
S
shinka-inspect

shinka-inspect

github.com/sakanaai開発1.5k232 回インストール3 週間前に更新
リポジトリ

shinka-inspect について

Shinkaの実行結果から高スコアのプログラムを抽出し、Markdownのコンテキストファイルにまとめるスキルです。コーディングエージェントによる結果確認や次の変異計画に使えます。

主な機能

  1. 01実行データからプログラム記録を読み込み
  2. 02combined_scoreで順位付け
  3. 03正解プログラムを優先し、なければ高得点を選択
  4. 04メタデータ、フィードバック、コードを集約
  5. 05選択条件と出力オプションに対応

活用シーン

  1. 01Shinka実行後の上位プログラムの確認
  2. 02コーディングエージェント向けの簡潔な資料作成
  3. 03既存結果に基づく次の変異計画

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/sakanaai/shinkaevolve --skill shinka-inspect

インストール後、Claude Code で/shinka-inspectを入力して読み込まれたか確認します。

同梱ファイルscripts/inspect_best_programs.py

詳細

Shinka Inspect Skill

Shinka の実行結果から最も優れたプログラムを抽出し、コーディングエージェントが直接読み込めるコンテキストファイルにまとめます。

使用するタイミング

次の場合にこのスキルを使用します。

  • 実行結果ディレクトリと SQLite データベースがすでに生成されている
  • 次のバッチを開始する前に、成績上位のプログラムを確認したい
  • データベースを手動で参照する代わりに、簡潔なコンテキスト用ファイルを作成したい

次の場合はこのスキルを使用しないでください。

  • まだタスクのひな形を作成する必要がある(shinka-setup)
  • 進化のバッチを実行する必要がある(shinka-run)

このスキルの動作

  • shinka.utils.load_programs_to_df を使用してプログラムのレコードを読み込みます
  • combined_score でプログラムを順位付けします
  • 正解したプログラムから上位 k 件を選択します(正解したレコードがない場合は、全体から上位 k 件を選択します)
  • メタデータ、ランキング表、フィードバック、コードスニペットを含む Markdown バンドルを 1 つ作成します

ワークフロー

  1. 実行結果のファイルが存在することを確認します
ls -la <results_dir>
  1. コンテキストバンドルを生成します
python skills/shinka-inspect/scripts/inspect_best_programs.py \
  --results-dir <results_dir> \
  --k 5
  1. 必要に応じて調整項目を指定します
python skills/shinka-inspect/scripts/inspect_best_programs.py \
  --results-dir <results_dir> \
  --k 8 \
  --max-code-chars 5000 \
  --min-generation 10 \
  --out <results_dir>/inspect/top_programs.md
  1. 出力をエージェントのコンテキストに読み込みます
  • デフォルトの出力先:<results_dir>/shinka_inspect_context.md
  • 次のステップで変更計画を立てる際のコンテキスト用ファイルとして使用します

CLI 引数

  • --results-dir:実行結果ディレクトリへのパス(またはデータベースファイルへの直接パス)
  • --k:含めるプログラム数(デフォルトは 5)
  • --out:出力する Markdown ファイルのパス(デフォルトは結果ディレクトリ内)
  • --max-code-chars:プログラムごとのコードの最大文字数(デフォルトは 4000)
  • --min-generation:世代の下限(任意)
  • --include-feedback / --no-include-feedback:text_feedback ブロックを含めるかどうか

注意事項

  • ランキング指標は combined_score です。
  • 正解したレコードがない場合、スクリプトはスコア上位のレコードに切り替え、その旨を出力に記載します。
  • スクリプトは実行結果のファイルを読み取り専用で扱います(書き込むのは Markdown バンドルのみです)。

コメント