mcpField
A
altium-schematic-reader

altium-schematic-reader

github.com/tansuo2021その他19141 回インストール21 週間前に更新
リポジトリ

altium-schematic-reader について

altium-schematic-reader は、解析した回路データを使って Altium の回路図プロジェクトを調べるスキルです。コンポーネント、ネット、接続、BOMを個別に確認でき、確定した事実と推測を区別する指針も備えています。

主な機能

  1. 01プロジェクトとシートの概要
  2. 02コンポーネント、ネット、ピンの照会
  3. 03BOM とバリアントの確認
  4. 04対象を絞った JSON 出力
  5. 05根拠に基づく回路回答の指針

活用シーン

  1. 01コンポーネントの接続ピンの追跡
  2. 02設計内の電源ネットの確認
  3. 03コンポーネントと BOM バリアントの確認
  4. 04根拠を示した回路に関する回答

インストール

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

$npx skills add https://github.com/tansuo2021/adtokeil --skill altium-schematic-reader

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

同梱ファイル

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

agents/
openai.yaml
references/
software_design.md
scripts/
read_schematic.py

詳細

Altium 回路図リーダー

ファイル名やスクリーンショットから推測するのではなく、根拠のある回路情報に基づいて Altium の回路図に関する質問に答えるには、このスキルを使用してください。

同梱のスクリプトは altium-monkey を通じて Altium ファイルを読み込み、AI の推論に使える簡潔な JSON スライスを返します。

前提条件

Python 環境から altium-monkey をインポートできる必要があります。

推奨されるインストール方法:

pip install altium-monkey

altium_monkey のソースチェックアウト内で作業する場合は、スクリプトを実行する前に PYTHONPATH をその src/py ディレクトリに設定してください。

$env:PYTHONPATH="path\to\altium_monkey\src\py"

設計の場所を特定する

ユーザーがプロジェクトを指定していない場合は、候補となる Altium プロジェクトを探します。

Get-ChildItem -Recurse -Filter *.PrjPcb

妥当な候補となるプロジェクトが複数ある場合は、どれを調べるか確認してください。単一の .SchDoc を扱う場合は、sheet コマンドを使用してください。

コマンドの形式

任意の作業ディレクトリから実行します。

python <skill_dir>\scripts\read_schematic.py <command> [args]

すべてのコマンドは JSON を stdout に出力します。エラーは JSON を stderr に出力します。

ワークフロー

このセッションでまだ調べていないプロジェクトでは、必ず最初に summary を実行してください。

python <skill_dir>\scripts\read_schematic.py summary path\to\Project.PrjPcb

次に、対象を絞ったクエリを選択します。

  • シート上に何があるかを把握するには、components --brief を使用します。
  • 名前付きネットの一覧表示や、電源レール/信号名の検索には nets を使用します。
  • ネット上のすべての端子を調べるには、nets --name NET_NAME を使用します。
  • コンポーネントの接続ピンをすべて調べるには、connections --designator U1 を使用します。
  • 1 つのピンだけを調べるには、connections --designator U1 --pin 5 を使用します。
  • 部品表やバリアントに関する質問には bom を使用します。
  • .PrjPcb がない場合に限り、sheet を使用します。
  • raw design または raw netlist は、出力が大きくなる可能性があるため、最後の手段としてのみ使用します。

MCU、プロセッサ、コネクタ、ヘッダーのテーブルでは、ネットリストの接続情報だけに頼らないでください。ネットリストには未接続ピンが含まれません。コンポーネントのシンボルピン(altium-monkey の component.pins、または altium-circuit-investigator の port_inventory.py)を調べ、そのピンをネットリストの端点と統合して、NC/未接続 ピンを含むすべてのピンを一覧にしてください。

コマンド

プロジェクトの概要:

python <skill_dir>\scripts\read_schematic.py summary path\to\Project.PrjPcb

コンポーネント:

python <skill_dir>\scripts\read_schematic.py components path\to\Project.PrjPcb --brief
python <skill_dir>\scripts\read_schematic.py components path\to\Project.PrjPcb --sheet Power.SchDoc --brief
python <skill_dir>\scripts\read_schematic.py components path\to\Project.PrjPcb --designator U7

ネット:

python <skill_dir>\scripts\read_schematic.py nets path\to\Project.PrjPcb
python <skill_dir>\scripts\read_schematic.py nets path\to\Project.PrjPcb --contains P3V3
python <skill_dir>\scripts\read_schematic.py nets path\to\Project.PrjPcb --name GND

ピン単位の接続:

python <skill_dir>\scripts\read_schematic.py connections path\to\Project.PrjPcb --designator U7
python <skill_dir>\scripts\read_schematic.py connections path\to\Project.PrjPcb --designator U7 --pin C9

部品表(BOM):

python <skill_dir>\scripts\read_schematic.py bom path\to\Project.PrjPcb
python <skill_dir>\scripts\read_schematic.py bom path\to\Project.PrjPcb --variant PCBA_Build

単一シート:

python <skill_dir>\scripts\read_schematic.py sheet path\to\Sheet.SchDoc

raw のエスケープハッチ:

python <skill_dir>\scripts\read_schematic.py raw path\to\Project.PrjPcb design
python <skill_dir>\scripts\read_schematic.py raw path\to\Project.PrjPcb netlist

推論ルール

  • 回答では、デジグネータ、ピン番号、ネット名、シートのファイル名を明記してください。
  • デジグネータと階層がプロジェクトレベルで解決されるため、単一シートの調査よりプロジェクトレベルのコマンドを優先してください。
  • ネットリストのクエリが利用できる場合、シンボルの図形やコンポーネント名から接続を推測しないでください。
  • 「ネットリストに存在しない」ことと「シンボルに存在しない」ことを区別してください。ピンの網羅性が重要な場合、未接続のシンボルピンも NC として報告する必要があります。
  • CTRL、OUT、IN、FB、AD、QD、AUX など、不明瞭な信号名については、機能を特定する前に回路図上の近くのラベルを調べるか、altium-circuit-investigator を使用してください。
  • 「この回路は何をするのか」という質問には、summary を調べ、次にシート単位のコンポーネント概要を確認してから、主要 IC の接続を調べてください。
  • 電源に関する質問には、summary.power_and_ground_nets、電源レールのようなネット名、対象 IC の POWER ピンを調べてください。
  • レビューに関する質問には、まず根拠を探し、確認済みの問題と仮説を分けてください。

既知の制約

  • 複雑な階層チャネルや .Annotation によるマッピングは、手作業での検証が必要になる場合があります。
  • バリアントのサポートは altium-monkey に依存し、特殊なバリアント設定では制限される可能性があります。
  • 解析に失敗した場合は、失敗したファイルパスと正確な JSON エラーを報告してください。
  • altium-monkey は AGPL-3.0-or-later です。配布サービスまたはネットワークサービスに組み込む前に、ライセンス上の義務を確認してください。

参考資料

このスキルを中心にバックエンド、API、キャッシュ、UI、AI ワークフローを設計する場合は、references/software_design.md を読んでください。

コメント