mcpField
B
bears-machines

bears-machines

github.com/pudapその他168 回インストール3 週間前に更新
リポジトリ

bears-machines について

bears-machinesは、PUDAワークフロー向けの機器選択・機能案内スキルです。実験内容に合う機器と参照手順を示し、選択が不明確な場合は確認を求めます。

主な機能

  1. 01タスクに応じた機器選択
  2. 02液体処理と電気化学測定
  3. 03天秤とOpentronsの案内
  4. 04Elephantアーム操作に対応
  5. 05確認と実行順序を重視

活用シーン

  1. 01ピペッティング用機器の選択
  2. 02電池評価用機器の選定
  3. 03Opentronsプロトコル前の条件確認
  4. 04機器選択が曖昧な場合の確認

インストール

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

$npx skills add https://github.com/pudap/bears-skills --skill bears-machines

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
balance-machine.md
elephant.md
first-machine.md
labware.md
opentrons-machine.md

詳細

BEARS マシン

目的

PUDA ワークフロー向けに、マシンの選択と機能に関するガイダンスを提供し、コマンドを生成する前に正しいマシンのリファレンスを読み込みます。

重要なルール

コマンドにどのマシンを使用すべきか不明な場合は、先に進む前にユーザーに確認してください。 推測しないでください。

マシンの機能と使用場面

First マシン(machine_id: "first")

液体の取り扱いとデッキ操作に使用します。

機能:

  • ピペッティングのワークフロー:吸引、分注、チップの装着、チップの廃棄
  • デッキとラボウェアのワークフロー:デッキのロード、位置に依存する操作
  • ウェットラボプロトコルにおける、順序を伴うロボット操作の手順

次の場合にこのマシンを使用します:

  • ウェル間またはラボウェア間で液体を移動するタスク
  • ユーザーがチップの使用、吸引/分注、デッキスロット/ラボウェアのセットアップについて言及している場合

コマンド生成の前に:

  • 参照先:first-machine
  • puda machine commands first を実行して、使用可能なコマンドを確認します
  • references/first-machine.md に記載された制約と手順の順序に従います
Biologic マシン(machine_id: "biologic")

電気化学試験と特性評価に使用します。

機能:

  • OCV(開回路電圧)
  • CA(クロノアンペロメトリー)
  • PEIS / GEIS(インピーダンス分光法)
  • CV(サイクリックボルタンメトリー)
  • MPP の各種測定(MPP、MPP_Cycles、MPP_Tracking)

次の場合にこのマシンを使用します:

  • タスクが電気化学測定またはバッテリー/セルの特性評価である場合
  • ユーザーが OCV、CA、EIS、CV、または MPP の試験を求めている場合

コマンド生成の前に:

  • 参照先:biologic-machine
  • puda machine commands biologic を実行して、使用可能なコマンドを確認します
  • references/biologic-machine.md に記載された制約に従います
Balance マシン

Linux 上で Arduino ベースの USB ロードセル天秤を使用した重量測定に使用します。

機能:

  • USB シリアル(/dev/ttyUSB* または /dev/ttyACM*)経由でロードセルから校正済みの質量値を連続取得
  • 約 4 Hz で測定値をストリーミングするバックグラウンドリーダースレッド。ポーリングは不要
  • 分注ステップの前に天秤をゼロにする風袋引きコマンド
  • 古い測定値や切断状態を検出する鮮度チェック(fresh フラグ)
  • エッジサービス経由での NATS テレメトリーのパブリッシュ
  • カスタム校正 CSV のサポート

次の場合にこのマシンを使用します:

  • ワークフローで、液体移送の前または後に容器を計量する必要がある場合
  • ユーザーが重量測定による校正、移送誤差の計算、または天秤からのフィードバックを求めている場合
  • 質量データが必要な粘度実験または移送精度実験を行う場合

使用前に:

  • 参照先:balance-machine
  • Linux のシリアルポート(/dev/ttyUSB1 など)をユーザーに確認します。推測しないでください
  • エッジサービスが実行中であることを確認します(uv run --package balance-edge python edge/balance.py)
Opentrons マシン(machine_id: "opentrons")

Opentrons OT-2 ロボットでの自動液体ハンドリングとプロトコル全体の生成に使用します。

機能:

  • Protocol.to_python_code() によるプロトコルコード全体の生成。有効で実行可能な OT-2 用 Python コードを生成します
  • 分注ワークフロー:aspirate、dispense、transfer(大容量の場合は自動で分割します)
  • チップ管理:pick_up_tip、drop_tip
  • デッキとラボウェアのセットアップ:load_labware、load_instrument
  • フロー制御:flow_rate、air_gap、blow_out、touch_tip、move_to
  • プロトコルユーティリティ:delay、comment、home
  • CSV 駆動ループ:read_csv_file と loop によるデータ駆動型プロトコル
  • カスタムラボウェアのサポート:Opentrons ドライバーのラボウェアカタログから検出され、通常の load_labware コマンドで読み込まれる AMDM 質量天びん用バイアル(30 mL、50 mL)
  • すべての gen2 ピペットタイプ:p10、p20、p300、p1000(シングルチャネルとマルチチャネル)
  • 外部カメラによる画像キャプチャ:camera_capture — デッキ上部に取り付けられた外部カメラを起動し、ウェルプレートの静止画像を撮影して保存します

次の場合にこのマシンを使用します:

  • ユーザーが Opentrons OT-2 ロボットについて言及している
  • タスクに OT-2 プロトコル全体または個別の液体ハンドリングコマンドの生成が含まれる
  • ユーザーが Opentrons のラボウェア(チップラック、ウェルプレート、リザーバー、NEST、Corning、質量天びん用バイアル)について言及している
  • ワークフローで CSV ファイルからのデータ駆動型分注が必要である
  • ワークフローで分注後のウェルプレートのカメラ画像の撮影が必要である

コマンドを生成する前に:

  • 参照先:opentrons-machine
  • Opentrons を物理的に実行する前に、puda-opentrons-vision-validation を読み込み、手順に従ってください。新しいデッキ画像を撮影し、プロトコルの各スロットに想定されたラボウェアまたはアイテムが配置されていることを確認してください。ラボウェアが不確か、または一致しない場合は、実行前にユーザーに確認してください。
  • puda machine commands opentrons を実行して、使用可能なコマンドを確認します
  • references/opentrons-machine.md に記載されたすべてのコマンドタイプ、パラメーター、順序規則、ラボウェアの制約に従ってください
Elephant マシン(machine_id: "elephant")

6 軸ロボットアームの操作、直交座標/関節の動作、電動グリッパーの操作、スキャン/リセットのワークフロー、カメラ誘導によるビジョン処理に使用します。

機能:

  • 直交座標系でのポーズ移動と相対移動
  • 関節角度と単一軸の動作制御
  • スキャン位置への移動とリセットを中心とした復旧ワークフロー
  • 電動グリッパーの操作:init_gripper、open_gripper、close_gripper
  • ビジョン誘導タスク向けの Pi カメラとライブストリーム画像のキャプチャ
  • カメラをキャリブレーションしたワークフローでの、ピクセル座標からロボット座標へのオフセット変換

次の場合にこのマシンを使用します:

  • タスクでロボットアームを座標まで移動させる、またはピックアンドプレース形式の手順を実行する必要がある
  • ユーザーが Elephant アームの動作、スキャン/リセットの挙動、または停止/電源喪失後のアーム復旧について尋ねている
  • ワークフローにグリッパー制御、Pi カメラ撮影、または Elephant のセットアップからのライブストリームスナップショットの撮影が含まれる

コマンドを生成する前に:

  • 参照先:elephant-machine
  • puda machine commands elephant を実行して、使用可能なコマンドを確認します
  • references/elephant.md に記載された動作、グリッパー、カメラ、順序に関する制約に従ってください

選択ワークフロー

  1. ユーザーの意図を解析し、タスクを特定します。
  2. 意図を上記のマシン機能に照らし合わせます。
  3. マシンの選択が不明確または曖昧な場合は、ユーザーに尋ねて確認を待ちます。
  4. 対応するリファレンスファイルと CLI ヘルプを読み込みます。
  5. マシンの選択が確認されてから、コマンドを生成します。

出力ガイダンス

マシンの選択に関する質問に答える場合:

  • 推奨するマシンと、その機能に基づく理由を一文で述べます。
  • 判断に迷う場合は、推測せず、明確な確認の質問をします。

重要な実行順序のルール

  • opentrons のプロトコルは、必ずすべてのピペットにチップが装着されていない状態で終了してください。
  • すべての load_labware コマンドの opentrons デッキスロット(location)は、必ずユーザーに明示的に確認してください。スロットを決して推測しないでください。
  • opentrons を物理的に実行する前に、デッキスロットの占有状況とラボウェアをビジョンで検証してください。必要なスロットが空、内容が不一致、遮られている、または視認できない場合は、ユーザーが明示的に承認しない限り実行しないでください。
  • opentrons の capture_image は、単独のプロトコルにしてください。ピペッティングコマンドと同じプロトコルに決して含めないでください。
  • balance — 読み取り前に必ず startup() を呼び出し、読み取り後に shutdown() を呼び出してください。分注ステップの前には必ず風袋引きをしてください。読み取りを使用する前に、必ず fresh == True であることを確認してください。
  • elephant — 動作前にアームが接続され、電源が入っていることを確認してください。電動グリッパーのワークフローでは、電源サイクル後に open_gripper() または close_gripper() を呼び出す前に、init_gripper() を呼び出してください。カメラを使った作業の前には、scan() を実行することを推奨します。

コメント