本文へ移動
cccskills
無料GitHub で公開日本語紹介

complexa-target

タンパク質や低分子への結合体設計に使うProteina-Complexaの標的定義を追加・編集し、残基指定や設定内容、構造ファイルの参照先を確認するスキル。

原文原文の説明を見る

Add, edit, inspect, or validate Proteina-Complexa target definitions for protein binders, ligand binders, and AME motif scaffolding. Use for target registries, chain/residue selectors, hotspots, ligand fields, and incomplete motif inputs. Covers direct YAML edits and complexa target/validate target commands; running a campaign with an already registered target belongs to complexa-design.

インストール方法を見る

こんなときに便利

  • 接触残基を指定したタンパク質標的登録
  • リガンドコードとSMILESの設定
  • 既存定義と構造ファイル参照先の確認
  • AMEのひな形と不足入力の整理

日本語での紹介

できること

Proteina-Complexaで結合体を設計するための標的定義を追加・編集・確認します。タンパク質、リガンド(結合相手となる低分子)、AMEの酵素設計で使う定義を扱い、用途に合うYAMLファイルへ保存します。鎖と残基の範囲、接触点となる残基、結合体の長さ、リガンド情報などを整理し、既存の項目を保ちながら設定を確認します。

こんなときに便利

新しい標的を登録するときや、残基番号・構造ファイルの参照先を見直すときに向いています。構造データが手元にない段階でも、設定の作成を進められます。AMEの入力が足りない場合は、不足項目と未完成のひな形を整理します。

使い方の例

  • 「この鎖・残基範囲と接触残基でタンパク質標的を追加して」
  • 「リガンドの定義を作り、保存内容と参照先を確認して」

注意点

YAMLの編集自体にGPUやComplexaの実行環境は不要です。構造ファイルの参照確認には、準備済みの環境と対象構造が必要です。この確認は残基の同一性やリガンドの化学的妥当性を保証しません。AMEの原子選択は入力が必要で、登録はファイルの直接編集で行います。設計の実行は別スキルの範囲です。

この紹介文は、公開されている SKILL.md をもとに AI(OpenAI Codex)が作成しました。正確な仕様は下の原文を確認してください。

含まれるファイル(19)

  • SKILL.md14.6 KB
  • BENCHMARK.md7.5 KB
  • evals/evals.json9.0 KB
  • evals/files/campaign_context/configs/pipeline/binder/binder_generate.yaml9.0 KB
  • evals/files/campaign_context/configs/search_binder_local_pipeline.yaml1.5 KB
  • evals/files/campaign_context/README-excerpts.md3.8 KB
  • evals/files/campaign_context/SNAPSHOT.md622 B
  • evals/files/campaign_context/source_manifest.json809 B
  • evals/files/project/configs/design_tasks/ame_dict_v2.yaml237 B
  • evals/files/project/configs/pipeline/ligand_binder/ligand_binder_generate.yaml5.6 KB
  • evals/files/project/configs/search_ligand_binder_local_pipeline.yaml1.9 KB
  • evals/files/project/configs/targets/ligand_targets_dict.yaml222 B
  • evals/files/project/configs/targets/targets_dict.yaml176 B
  • evals/files/project/SNAPSHOT.md570 B
  • evals/files/project/source_manifest.json716 B
  • references/hardware.md4.8 KB
  • references/target_schema.md12.0 KB
  • skill-card.md5.0 KB
  • skill.oms.sig8.2 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

complexa-target

Add or edit a design target in Proteina-Complexa. Targets live in three YAML files, one per complexa design pipeline:

  • configs/targets/targets_dict.yaml — protein binder (default pipeline)
  • configs/targets/ligand_targets_dict.yaml — ligand binder
  • configs/design_tasks/ame_dict_v2.yaml — AME / enzyme scaffolding

The complexa target CLI only manages the first two. AME tasks use an extended schema (the same core fields as ligand targets plus contig_atoms for hand-curated per-residue motif atom selections) and are file-edit-only.

Instructions

complexa target add is a thin wrapper around "load YAML → build dict → append a block" (see src/proteinfoundation/cli/target_manager.py:add_target_cli and append_target_to_dict). For agentic use, just edit the targets dict directly — the schema is short, the existing entries are great copy templates, and you skip 14 CLI flags / SMILES shell-escaping. Use the CLI only if you explicitly want its YAML auto-quoter or its overwrite-prompt safety.

For an offline edit, work on the supplied registry or requested output copy. When a copy is requested, create its parent directory and copy into an absent destination. If the destination already exists, inspect and preserve it: reuse it when it is the intended working copy, otherwise report the path conflict. Do not delete the output tree to restart a configuration edit. An installed Complexa runtime, GPU, or target structure is not required to write the configuration. Use the field schema below, preserve unrelated entries, and read back the saved block. Coordinate validation remains pending when the structure is absent; finish the configuration task without installing a runtime. With Read/Edit tools, read the destination copy before editing it; reading the original input path does not satisfy Edit's requirement for the output path.

Use the schema below and the selected registry; the CLI reference is needed only for CLI use. Finish with the saved entry, its consumer pipeline, the downstream generation.task_name, and the validation status.

StepDirect file edit (preferred)CLI
Look at existing targetsRead configs/targets/{,ligand_}targets_dict.yaml (or configs/design_tasks/ame_dict_v2.yaml for AME)complexa target list (protein/ligand only)
Look at one targetRead the dict and grep for the keycomplexa target show NAME
Add a new targetAppend a YAML block (Step 3a)complexa target add ... (Step 3b)
Verify configurationParse the saved YAML and compare the changed entry and untouched keyscomplexa target show NAME --dict PATH
Check runtime PDB-path resolutionRequires the full pipeline and environmentcomplexa validate target CONFIG --target NAME

Step 1: Decide the target type

Targets live in three different files, one per complexa design pipeline. Pick the file by working out which pipeline the user will run, then add the entry to that file. Each file is consumed by exactly one pipeline.

User intentPipelineTargets dict fileThis skill?
Bind a protein surface (PD-L1, IFNAR2, TNF-α, …) — defaultconfigs/search_binder_local_pipeline.yamlconfigs/targets/targets_dict.yamlYes — Step 2 (protein)
Bind a small-molecule pocket (FAD, SAM, OQO, …)configs/search_ligand_binder_local_pipeline.yamlconfigs/targets/ligand_targets_dict.yamlYes — Step 2 (ligand)
AME / enzyme scaffolding (motif + ligand, M####_<pdb> names)configs/search_ame_local_pipeline.yamlconfigs/design_tasks/ame_dict_v2.yamlPartial — see "AME tasks" below

AME tasks (enzyme pipeline)

AME tasks live under motif_target_dict_cfg: with source, target_filename, ligand, contig_atoms, binder_length, and use_bonds_from_file. The contig_atoms string contains curated chain/residue/atom selections. Existing entries illustrate the field structure, not the selections for a new motif. If motif atoms, ligand selection, or structure location are missing, list the missing inputs and write a separate, explicitly incomplete template if useful. Leave the registry unchanged until those scientific inputs are supplied. A task name or PDB ID alone does not determine them. In the missing-input handoff, explain that registration will be a direct edit under motif_target_dict_cfg once the curated selections are supplied; complexa target add cannot register AME tasks. Completed entries are selected with ++generation.task_name=<NAME> and configs/search_ame_local_pipeline.yaml.

Step 2: Gather required info

Use the supplied values and ask only for missing required information. Required fields differ for protein, ligand, and AME definitions.

Protein target

FieldQuestionExampleRequired
name"Target name (used as the dict key and task_name)?"02_PDL1, MyTarget_v1yes
source"Source directory under $DATA_PATH/target_data/?"bindcraft_targets, custom_targetsyes (or target_path)
target_filename"PDB filename (no .pdb extension)?"PD-L1, IFNAR2yes (or target_path)
target_input"Chain + residue range — see reference for grammar."A1-115, A1-50,B1-50yes
hotspot_residues"Hotspot residues (interface contact residues)?"["A33", "A95", "A102"]optional, recommended
binder_length"Binder length range [min, max] or single [length]?"[80, 150], [100]optional (default [60, 120])
pdb_id"Reference PDB ID (optional, metadata only)?""2lag"optional

Hotspot selectors encode chain + residue number, not amino-acid identity. For example, Tyr42 (Y42) on explicitly specified chain B becomes B42; already supplied chain/residue selectors stay unchanged. Preserve the user's residue numbering. Without coordinates, report that residue identities and membership in the structure are unverified.

Ligand target — protein fields above (minus target_input), plus:

FieldQuestionExampleRequired
ligand"3-letter PDB ligand residue code?"FAD, OQO, SAMyes (presence marks target as ligand)
SMILES"SMILES string for the ligand?""O=C2C3=Nc1cc(c(...)..."recommended; uppercase YAML key
ligand_only"Generate pocket around ligand only (no protein-protein interface)?"true / falseoptional (default true)
use_bonds_from_file"Use bond info from the input PDB/CIF?"true / falseoptional (default true)
target_inputnot required for ligand targets—no

Check whether the proposed key already exists in the selected YAML mapping. Preserve an existing entry unless the user requested that entry's update.

Copy a supplied SMILES exactly. Chain-specific ligand selection belongs to preparation of the input structure; do not invent a chain field or protein target_input to represent it in the ligand entry.

Examples

Step 3a: Append the YAML block directly (preferred)

Open configs/targets/targets_dict.yaml (or ligand_targets_dict.yaml for ligand targets), find a similar existing entry as a style template, and append the new block under target_dict_cfg:. Two-space indent, single blank line between entries.

Protein template

  02_PDL1:
    source: bindcraft_targets
    target_filename: PD-L1
    target_input: "A1-115"
    hotspot_residues: ["A37", "A39", "A49", "A98"]
    binder_length: [64, 155]
    pdb_id: "4z18"

Rules to match the existing file style (mirrors what complexa target add would emit):

  • Quote chain/residue ranges ("A1-115", "A33") and any SMILES — flow-style strings get tripped up by : and brackets otherwise.
  • Use flow-style lists (["A33", "A95"], [64, 155]) — that's what the on-disk dump produces.
  • target_input, source, target_filename are required for protein. target_path (absolute path) can replace source + target_filename if the PDB lives outside $DATA_PATH/target_data/.

Ligand template

  41_7BKC_LIGAND:
    source: ligand_targets
    target_filename: 7BKC_ligand_centered
    hotspot_residues: [null]
    binder_length: [100]
    pdb_id: 7BKC
    ligand: 'FAD'
    ligand_only: True
    SMILES: "O=C2C3=Nc1cc(c(cc1N(C3=NC(=O)N2)CC(O)C(O)C(O)COP(=O)(O)OP(=O)(O)OCC6OC(n5cnc4c(ncnc45)N)C(O)C6O)C)C"
    use_bonds_from_file: True

The presence of the ligand: key flips the target into ligand mode — there is no separate is_ligand flag. target_input is not required for ligands.

After saving, skip to Step 4 to verify.

Step 3b: CLI alternative (complexa target add)

Use the CLI when you want its automatic chain/residue quoting, the overwrite-confirm prompt, or to wire target creation into a non-Python script. Prefer non-interactive mode for agentic use (-i / --editor opens an editor and blocks).

Confirmed flags (from src/proteinfoundation/cli/target_cli.py)

Read target_schema.md for the flag table and worked CLI examples when this path is needed. Select the intended dictionary with --dict; --source and --target-filename should be explicit when they differ from the CLI defaults. AME registration remains a direct edit.

Step 4: Verify

First parse the saved YAML with an available YAML parser and check the selected mapping, field types, requested values, and preservation of other entries. Read back the resulting block. This verifies configuration editing only.

With a prepared Complexa installation, pipeline configs, environment, and target structure, additionally check runtime path resolution from that checkout:

# 1. Select the dictionary that was actually edited.
complexa target show 02_PDL1 --dict configs/targets/targets_dict.yaml

# 2. Resolve the PDB path and validate it exists on disk.
#    This traverses Hydra defaults to find the target dict.
complexa validate target configs/search_binder_local_pipeline.yaml --target 02_PDL1

complexa validate target (from src/proteinfoundation/cli/validate.py::validate_target) checks:

  • DATA_PATH is set and target_data/ exists.
  • The target name resolves in target_dict_cfg.
  • Either target_path exists, or $DATA_PATH/target_data/<source>/<target_filename>.pdb exists.
  • target_input, hotspot_residues, binder_length are reported back so a human can sanity-check them.

For ligand targets, use configs/targets/ligand_targets_dict.yaml for show and configs/search_ligand_binder_local_pipeline.yaml for validation; --target is the target key, not a config path. This validator does not check residue identities, ligand chemistry, or AME contig_atoms; do not describe a path check as coordinate or scientific validation.

Step 5: Emit artifact

Save the edited entry and validation status at the user's requested output location (otherwise ./target_<name>/). For an offline edit, the saved YAML block is sufficient; no CLI-generated artifact is required. On a prepared installation, a target-show record can also be saved:

mkdir -p target_02_PDL1
complexa target show 02_PDL1 > target_02_PDL1/target_show.txt

If a standalone definition is requested, save the actual entry under its registry key in target_definition.yaml. The handoff should include the saved path, target key, consumer pipeline from Step 1, and ++generation.task_name=<NAME>, together with what validation actually ran. For an incomplete AME request, report the separate template, missing inputs, and the direct registry edit needed after those inputs arrive.

Hardware requirements

None for target definition — this is a YAML edit, not a training/inference step. Disk impact is a few KB appended to the targets dict (plus an automatic .yaml.bak backup written by save_targets_dict).

For the downstream design / evaluate runs that consume the target, defer to complexa-design and references/hardware.md.

Troubleshooting

SymptomCauseFix
Target PDB file: File not found from validate target<source>/<target_filename>.pdb does not exist under $DATA_PATH/target_data/Confirm the PDB stem and source dir. Use --target-path /full/path.pdb if the file lives outside target_data/.
"Target 'X' already exists! Overwrite? (y/N)"Name collision in dictEither pick a new name, or pass -f / --force to overwrite.
Hotspot residue not in PDBWrong chain or residue numberOpen the PDB, re-check chain letters (case-sensitive) and residue indices. Hotspots use the format <CHAIN><RESNUM> — see reference.
Chain not foundtarget_input references a chain that does not exist in the PDBInspect the PDB with grep "^ATOM" target.pdb | awk '{print $5}' | sort -u.
Ligand code missing from PDBThe 3-letter ligand code does not appear as a HETATM residue name in the fileOpen the PDB and check HETATM lines; you may need a _ligand_centered variant of the PDB.
SMILES parse failure downstreamBad SMILES stringValidate with rdkit.Chem.MolFromSmiles(smiles) before adding. Quote SMILES in shell to escape brackets and parens.
Target name with leading digit breaks Hydra interpolationYAML treats 02_PDL1 as a string fine; some override syntaxes need quotingUse ++generation.task_name=02_PDL1; quote if the shell strips characters.
target_input appears ignored for a ligand targetBy design — ligand targets do not use target_input; pocket is defined by the ligandLeave it unset for ligand targets.

Reference

  • references/target_schema.md — every field, chain-spec grammar, AME task-name grammar, three worked examples.
  • configs/targets/targets_dict.yaml — live protein entries (copy a known-good one as a template).
  • configs/targets/ligand_targets_dict.yaml — live ligand entries.
  • configs/design_tasks/ame_dict_v2.yaml — AME task definitions (file-edit only, not exposed via complexa target CLI).
  • src/proteinfoundation/cli/target_cli.py — argparse source of truth.
  • src/proteinfoundation/cli/target_manager.py — add_target_cli, list_targets, show_target, schema in TARGET_FIELDS.
  • src/proteinfoundation/cli/validate.py — validate_target implementation.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

accelerated-computing-cudf

無料概要あり

pandasで扱う表データ処理をcuDFでGPUへ移す作業を支援します。結合・集計・CSVやParquet入出力から、結果の照合、メモリ対策、複数GPU利用まで扱います。

  • 既存pandas処理を少ない変更で加速
  • 結合や集計をGPUへ移したいとき
  • 欠損値や並び順をpandasと照合
NVIDIA/skills3,6952026年10月22日 更新

NVIDIA Nemotron Voice Agentのサンプルを変更し、別のバックエンドを設けずに予約受付や患者情報の聞き取りを行う音声エージェントを作るスキル。

  • 予約受付の音声エージェント作成
  • 患者情報5項目の会話による収集
  • 独自の医療受付とツール呼び出し設計
NVIDIA/skills3,6952026年10月22日 更新

amc-run-rtsp-calibration

無料概要あり

ライブカメラのRTSP映像をVIOSで録画し、AutoMagicCalibでカメラ校正を進めます。設定や位置合わせ資料の取り込み、進捗確認、結果取得まで扱います。

  • ライブ映像でカメラ校正をしたいとき
  • 現場用の設定と位置合わせ資料を登録
  • 正解データを使った校正結果の評価
NVIDIA/skills3,6952026年10月22日 更新

amc-run-sample-calibration

無料概要あり

同梱の倉庫カメラ映像でAMCのカメラ校正を一通り実行し、正解データとの誤差を確認します。導入後の動作検証や、実データ投入前の確認に使えます。

  • 導入直後のAMCを動作確認したいとき
  • サンプルの校正誤差を確認したいとき
  • Swagger UIで手順を確認したいとき
NVIDIA/skills3,6952026年10月22日 更新

amc-run-video-calibration

無料概要あり

録画済みの複数カメラ映像をAutoMagicCalibに送り、カメラの位置や向きを調整する処理を、プロジェクト作成から進捗確認・結果評価まで進めます。

  • 同期済みMP4からカメラを調整したいとき
  • ローカル設定や対応点ファイルの登録
  • 正解データで調整結果を評価したいとき
NVIDIA/skills3,6952026年10月22日 更新

amc-setup-calibration-stack

無料概要あり

AutoMagicCalibの自動キャリブレーション環境をDocker Composeで構築し、NGC認証からポート設定、サービスとWeb UIの起動確認まで進めます。

  • AutoMagicCalibとWeb UIの起動
  • サービスポートと接続先の設定
  • 任意のVGGTモデルの導入
NVIDIA/skills3,6952026年10月22日 更新

NVIDIA のスキルをすべて見る

このスキルの問題を報告する