agentee

Компоненты

Датаситы

Датаситы agentee: загрузка датасита каждого компонента один раз в общий кэш, чтение его как текста и запись того, что использовал проект.

agentee datasheet (MCP datasheet_fetch, datasheet_text, datasheet_add) загружает даташиты деталей один раз в кэш, общий для всех проектов и агентов, ~/.cache/agentee/datasheets/ ($AGENTEE_DATASHEETS или $XDG_CACHE_HOME перемещают его), и читает их обратно как текст.

agentee datasheet fetch lna                    # every part of a layout or schematic
agentee datasheet fetch U3                     # one part, by reference, symbol or part number
agentee datasheet fetch TMC2209-LA
agentee datasheet fetch U3 --url https://example.com/u3.pdf
agentee datasheet text TMC2209-LA --find VS    # passages holding VS, with page and line
agentee datasheet text U3 --pages 4-6
agentee datasheet add XYZ123 ~/Downloads/xyz123.pdf --manufacturer Acme
agentee datasheet list
agentee datasheet purge                        # drop every copy no library part pins

Даташит детали ищется в следующем порядке: его поле datasheet в схеме, URL datasheet его УГО, затем даташит, который каждый дистрибьютор с ключом указывает для его mpn (поле Maker MPN разбивается, и номер детали, который является началом указанного, например TMC2209-LA для TMC2209-LA-T, берет его даташит). Загрузки используют пользовательский агент браузера, повторяются при HTTP 429 и 5xx, следуют за HTML-страницей к PDF, на который она ссылается, и отказываются от хоста, который один раз превысил время ожидания, на остальное время выполнения. Сохраняется только PDF.

Копии хранятся в MAKER/MPN/HASH.pdf с meta.json, содержащим URL, источник, SHA-256, дату загрузки и строку ревизии, прочитанную с первой или последней страницы каждой копии, так что деталь загружается один раз, а новая ревизия лежит рядом со старой. text читает копию с pdftotext -layout и сохраняет текст рядом с PDF; он никогда не обращается к сети, если деталь в кэше, и загружает ее сначала, если ее нет (--offline отказывается вместо этого). --find совпадает целыми словами, с учетом регистра, если слово содержит заглавные буквы, с --context строками вокруг каждого совпадения.

Загрузка дизайна или детали в нем записывает, что было использовано, в datasheets.toml в корне проекта:

[[parts]]
key = "TPS7A9101DSKR"
manufacturer = "TI"
refs = ["U9", "U24"]
url = "https://www.ti.com/lit/ds/symlink/tps7a91.pdf"
source = "symbol TPS7A91"
sha256 = "1ab38416..."
revision = "SBVS282A – DECEMBER 2016 – REVISED SEPTEMBER 2026"
fetched = "2026-10-09"

[[parts]]
key = "SPF5189Z"
refs = ["U1"]
missing = "https://www.qorvo.com/products/d/da001910: HTTP 429"

check предупреждает (правило datasheet) для детали с mpn, у которой нет URL даташита в ее УГО или детали и нет записи здесь, и для детали, у которой последняя загрузка не нашла даташита. Исправление это PDF пользователя через datasheet add, или работающий URL.

docs/format.md · Markdown для агентов