agentee

部品

部品ライブラリ

agentee library: シンボル、フットプリント、モデル、データシート、在庫を持つユーザー独自の部品。すべての設計で検索、追加、使用されます。

部品ライブラリは、ユーザー自身の部品セットです。コネクタ、レギュレータ、受動部品など、すべての設計で再利用したい部品を保持し、ケーブルや在庫がプロジェクト間で引き継がれます。各部品には、シンボル、フットプリント、3Dモデル、データシート、最後に確認した在庫が含まれます。エージェントは、新しい部品を探す前に、まずライブラリから選択します(MCP library_find、library_list、library_show、library_use、library_add)。設計に必要な各部品について、ワークフローは「検索、追加、使用」です。findは一致するライブラリの部品を表示し、一致しない場合は、ディストリビューターで在庫がある現在の部品を表示します。選択した部品はaddでライブラリに追加され、useで基板に配置されます。

ライブラリは~/.config/agentee/library/に保存されます($AGENTEE_LIBRARYで移動可能)。プロジェクトは、ルートディレクトリの.agentee/library/で部品を追加または上書きできます。各部品はディレクトリです:

JST-PH-2/
  part.toml
  JST-PH-2.sym.toml            # the symbol, renamed to the part
  JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal.fp.toml
  3dmodels/JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal.step
role = "connector"
mpn = "S2B-PH-K-S"
manufacturer = "JST"
lcsc = "C131337"               # the JLCPCB/LCSC part number, looked up by `add` and `refresh`
value = "PH 2-pin"
rating = "2 A, 100 V"
preferred = true               # the first choice for its role
# generic = true               # any value on this footprint is this part (a resistor series)
# pins = 2                     # default the symbol's pin count
tags = ["power", "battery"]
notes = "power input, 2 A max, use XH for motors"
symbol = "JST-PH-2.sym.toml"
footprint = "JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal.fp.toml"
model = "3dmodels/JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal.step"
added = "2026-10-09"

[datasheet]                    # pinned in the datasheet cache
url = "http://www.farnell.com/datasheets/4648554.pdf"
sha256 = "dd60971f..."

[[files]]                      # where each file came from and its hash when added
path = "JST-PH-2.sym.toml"
source = "kicad Connector_Generic:Conn_01x02, KiCad 9.0"
sha256 = "42b88f96..."

[[stock]]                      # one per distributor listing, from add or refresh
distributor = "Farnell"
sku = "9491902"
stock = 338281
currency = "EUR"
breaks = [[100.0, 0.0841], [1000.0, 0.0655]]
min = 100
url = "https://ie.farnell.com/search?st=9491902"
checked = "2026-10-09"
agentee library add S2B-PH-K-S --name JST-PH-2 --role connector \
    --symbol Connector_Generic:Conn_01x02 \
    --footprint Connector_JST:JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal \
    --manufacturer JST --rating "2 A, 100 V" --notes "power input" --preferred
agentee library find 3.3V buck --role regulator   # library matches, else stocked parts to add
agentee library find USB-C receptacle --need 100 --search
agentee library list                           # every part, by role, with stock and price
agentee library list --role connector 2-pin power
agentee library show JST-PH-2
agentee library use JST-PH-2 -p board/         # copy its files in, print the edit that places it
agentee library refresh                        # stock and price of every part, one lookup each
agentee library verify

find WORDSは、名前、役割、タグ、部品番号、値、定格、フットプリント、メモのいずれかがすべての単語に一致するライブラリの部品をリストします。一致する部品がない場合(または--searchを指定した場合)のみ、キーを持つ各ディストリビューターで同じ単語をキーワード検索として実行し、アクティブ(廃止、生産終了、販売終了のステータスがない)で、かつ--need以上の在庫(デフォルト1)がある部品を、部品番号でマージしてリストします。リストには、総在庫、在庫があるディストリビューター、その数量での最安単価、データシートのリンクが表示されます。複数のディストリビューターで在庫がある部品が優先され、次に在庫量で並べ替えられます。--limitでリストの上限を設定できます(デフォルト15)。ライブラリに既に存在する部品がリストされた場合は、その旨が表示されます。

addは、.sym.tomlまたは.fp.tomlファイル、プロジェクトのシンボルまたはフットプリント(-p)、またはKiCadのLibrary:Nameからシンボルとフットプリントを取得します。フットプリントはデフォルトでシンボルのものになります。フットプリントの3Dモデルをコピーして取り込みます(KiCadのモデルディレクトリ、モデルキャッシュ、またはダウンロードから)。フットプリントはそのコピーを指し、モデルに高さがない場合はheightを設定します。これにより、部品はオフラインでも動作し、KiCadのインストールやベンダーのダウンロードが変わっても動作し続けます。KiCadにその名前のモデルがない場合、同じ.3dshapesフォルダ内で最も近いボディ、同じパッケージで最も近い露出パッドを持つもの(または_ThermalViasフットプリントの場合はプレーンボディ)を採用し、その旨を通知します。3Dビューとmodelsも同じ動作をします。--modelは、ベンダーのダウンロード、.kicad_modとそのSTEPまたはVRMLモデルを含むZIPまたはフォルダ(SamacSys、SnapMagic、Ultra Librarianはこれらを配布しています)も受け入れます。ベンダーのフットプリントのパッドを番号で照合し、0.1 mm以上ずれている場合は拒否し、ベンダーのモデルを自分のフットプリント上に配置するためのmodel_offsetとmodel_rotateを書き出します。KiCadや--modelからモデルがない場合、addはJLCPCB/LCSCの部品リストで部品番号を検索し、EasyEDAのモデルを採用します。EasyEDAのフットプリントのパッドで同じ方法で配置し、そのフットプリントの外形に対してモデルを検証します。部品のfilesにはEasyEDA C258169 (easyeda.com)として記録されます。addとrefreshはLCSC番号をlcscとして保存し、useはそれを部品のlcscフィールドとして引き継ぎ、bom-jlcpcb.csvが読み取ります。--no-distributorsは両方の検索をスキップします。データシートを取得します(--datasheetのURLまたはPDF、なければシンボルのURL、なければディストリビューターのもの)。データシートキャッシュにピン留めし、datasheet purgeで削除されないようにします。各リストの在庫と価格ブレークを記録します。メモには、どのディストリビューターにもアクティブな部品として在庫がない場合の日付が記載されます。--localは、プロジェクトのライブラリに追加します。

useは、シンボルをsymbols/に、フットプリントをfootprints/に、モデルをプロジェクトの3dmodels/にコピーします。既に存在し、内容が異なるファイルは、--forceがない限り拒否されます。agentee edit schコマンドを返し、部品をmpn、mfr、libraryフィールド付きで追加します。datasheet text JST-PH-2は、ネットワーク呼び出しなしでピン留めされたコピーを読み取ります。

refreshは、キーを持つすべてのディストリビューターに一度だけ、ライブラリのすべての部品番号を問い合わせ、各部品の[[stock]]を置き換えます。失敗したディストリビューターは、最後のリストを保持します。listは、確認日付付きで在庫がある最安のリストを表示します。これにより、API呼び出しなしで、その日付時点の在庫と価格がわかります。

verifyは、各部品をチェックします。すべてのシンボルのピンにパッドがあること、ピン留めされたデータシートに部品番号とパッケージ(またはピン数)が記載されていること、シンボルのピン名がデータシートに登場すること、モデルの外形がコートヤードに収まること、フットプリントの穴、スロット、リングがJLCPCBの最小値を満たすこと、各ファイルが追加時のハッシュを保持していること。1つでも失敗すると、終了コード1を返します。

checkは、ライブラリが保持する役割に対して、ライブラリ外の部品が設計で使用されている場合に警告します(ルールlibrary)。使用するライブラリの部品を名指しします:ピン数が同じもの、優先されるものを最初に。部品の役割は、そのroleフィールド、または参照記号から導かれます:J/Pはコネクタ(同軸、SMA、U.FLはrf connector、usb connector、modular connector、card socket)、Rは抵抗、Cはコンデンサ、Lはインダクタ、FBはフェライト、Dはダイオードまたはled、Qはトランジスタ、Yは水晶振動子、Fはヒューズ、SWはスイッチ、BTは電池、Kはリレー。部品がライブラリにあるのは、そのmpnまたはlibraryフィールドがライブラリの部品を指している場合、またはgeneric部品のフットプリント上に配置されている場合です。部品を除外するには、そのlibrary = "no"フィールドを設定します。ライブラリルートのlibrary.tomlは、強制の強さを設定します:

check = "warning"              # warning | info | off
# roles = ["connector"]        # only these roles

docs/format.md · エージェント向けMarkdown