pacsomatic について
pacsomaticスキルは、nf-core/pacsomaticの再現可能な実行手順を提供します。補助スクリプトで入力検証、サンプルシートと起動用ファイルの生成を行い、ローカル実行またはスケジューラーへの投入に対応します。BAMファイルを使う腫瘍・正常ペア解析向けです。
主な機能
- 01識別情報・ファイル・実行環境の検証
- 02互換形式のサンプルシート生成
- 03params YAMLと起動スクリプトの生成
- 04ドライラン検証
- 05ローカル実行またはスケジューラー投入
活用シーン
- 01腫瘍・正常のBAM入力を検証
- 02pacsomatic用サンプルシートと起動ファイルを生成
- 03スケジューラー投入前にドライランで確認
- 04実行または投入の失敗を調査
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ crazymsn/ academic-skills --skill pacsomaticインストール後、Claude Code で/pacsomaticを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
config.yamlLICENSEreferences/agent-playbook.mdconfig-and-output.mdpacsomatic_guide.mdscripts/run_pacsomatic.pytests/test_run_pacsomatic.py詳細
pacsomatic
概要
このスキルは、検証、成果物の生成、任意の実行を処理する単一のヘルパーエントリーポイントを中心とした、nf-core/pacsomatic の再現可能な実行ワークフローを提供します。
主なエントリーポイント:
scripts/run_pacsomatic.py
ヘルパースクリプトは、次の処理を行います。
- 必須の識別子、ファイル、リファレンスモード、実行時の前提条件を検証します
- pacsomatic 互換のサンプルシート(
patient,sample,status,bam,pbi)を書き込みます - 再現可能な再実行のために params YAML と起動スクリプトを生成します
- ドライラン検証と、実行/送信の両方の方法に対応します
pacsomatic の操作では、このスキルを既定の方法として使用してください。ユーザーから手動でのコマンド作成を明示的に求められない限り、手作業で組み立てた nextflow run nf-core/pacsomatic コマンドを使用して、この方法を迂回しないでください。
このスキルを使用する場面
ユーザーが次のことを依頼した場合に、このスキルを呼び出してください。
- BAM ファイルから対応する腫瘍・正常サンプルの解析を実行する
- pacsomatic のサンプルシートや起動用成果物を生成または修正する
- ローカルで実行するか、スケジューラー(LSF/Slurm/PBS/SGE)に送信する
- 実行前にドライラン検証を行う
- 起動失敗のトラブルシューティングや実行出力の要約を行う
次の目的には、このスキルを使用しないでください。
- 実行レベルの妥当性確認を超える、生物学的な詳細解釈
- 明示的に依頼されていないパイプライン内部の編集
典型的なトリガーフレーズ:
- 「この腫瘍・正常ペアに対して nf-core/pacsomatic を実行して」
- 「pacsomatic のサンプルシートと起動スクリプトを準備して」
- 「まずドライランを行い、不足しているものを教えて」
- 「pacsomatic を slurm/lsf に送信して、ジョブ ID を返して」
- 「pacsomatic の送信に失敗したのはなぜ?」
ルーティングと実行のルール
- 必ず最初に、実行に必要な入力をすべて収集します。
- 検証と成果物の生成には、必ず
scripts/run_pacsomatic.pyを使用します。 - ユーザーが確認や検証のみを求めた場合は、既定で
--dry-runを使用します。 --runは、ユーザーが実行または送信を依頼した場合にのみ使用します。- スケジューラーモードでは、エグゼキューター固有のリソース引数を含め、取得できた場合は検出したジョブ ID を返します。
- 実行に失敗した場合は、最初の失敗箇所と次のトリアージ対象(
.nextflow.log、pipeline_info、失敗したタスクのログ)を報告します。
必須入力
必須:
- 腫瘍 BAM のパス
- 正常 BAM のパス
- 患者 ID
- 腫瘍サンプル ID
- 正常サンプル ID
- 出力ディレクトリ
- リファレンスモードを必ず 1 つ指定:
--fastaまたは--genome
任意:
- プロファイル、リソース、スケジューラーのアカウント/キュー
- パイプラインのバージョン(
-r) - params ファイル、resume/report/dag フラグ
--dry-runおよび/または--run
ワークフロー
- ID と入力の制約を検証します。
- 必須のローカルパス(BAM、任意の PBI、任意の FASTA)を検証します。
- 実行環境と依存関係を確認します。
- サンプルシートと生成する params YAML を作成します。
- 選択したエグゼキューター用の起動スクリプトを生成します。
--dry-runが指定され、--runが指定されていない場合は、成果物の生成後に終了します。--runが指定されている場合は、ローカルで実行するか、スケジューラーに送信します。- コマンド/スクリプトのパス、検証ステータス、ジョブ ID(検出できた場合)を返します。
エージェントの応答要件
呼び出し後のすべての応答に、次の内容を含めてください。
- 実際に使用したコマンド、または生成したスクリプトのパス
- 検証チェックを実行したことの確認
- 実行タイプ(
dry-runまたはrun) - 取得できた場合はスケジューラーのジョブ ID
- 検証またはトリアージの具体的な次の手順を 1 つ
クイックスタート
ドライラン:
python scripts/run_pacsomatic.py \
--tumor-bam /path/to/tumor.bam \
--normal-bam /path/to/normal.bam \
--patient-id P001 \
--tumor-sample-id P001_T \
--normal-sample-id P001_N \
--outdir /path/to/output \
--genome GRCh38 \
--profile singularity,sanger \
--dry-run
スケジューラーでの実行例(Slurm):
python scripts/run_pacsomatic.py \
--tumor-bam /path/to/tumor.bam \
--normal-bam /path/to/normal.bam \
--patient-id P001 \
--tumor-sample-id P001_T \
--normal-sample-id P001_N \
--outdir /path/to/output \
--genome GRCh38 \
--profile singularity,sanger \
--executor slurm \
--queue compute \
--project my_account \
--cpus 16 \
--memory-gb 64 \
--walltime 48:00 \
--run
設定
プロファイル/エグゼキューター/実行時の既定値の基準として config.yaml を使用します。ユーザーの要件が異なる場合は、呼び出し時に上書きしてください。
テスト
スキルのルートディレクトリからユニットテストを実行します。
python -m unittest discover -s tests -v
参考資料
references/agent-playbook.mdreferences/config-and-output.mdreferences/pacsomatic_guide.mdscripts/run_pacsomatic.py
コメント
Markdown 対応