← Commit history
README.md+2−2
@@ -1,4 +1,4 @@-# chip-fetcher+# chip-fetcher (cf)  ![chip-fetcher flow: one prompt to manufacturer-grade parts in KiCad, Fusion, Altium, and OrCAD](chip-fetcher-flow-v2.png) @@ -9,7 +9,7 @@  ![The adom-chip-fetcher stack](chip-fetcher-stack.png) -Chip Fetcher crawls the web on your behalf. Name the chips you care about and it gathers everything about them, the datasheet, symbol, footprint, 3D STEP model, design-help PDFs, stock and pricing, by driving Chrome through [pup](https://wiki.adom.inc/adom/pup-bridge) on your desktop, manufacturer site first, and lands it all in one structured library your EDA tool can use.+Chip Fetcher, **cf** to everyone who uses it, crawls the web on your behalf. You drive it entirely through your AI with the word cf ("fetch STM32H743VIT6 with cf"). Name the chips you care about and it gathers everything about them, the datasheet, symbol, footprint, 3D STEP model, design-help PDFs, stock and pricing, by driving Chrome through [pup](https://wiki.adom.inc/adom/pup-bridge) on your desktop, manufacturer site first, and lands it all in one structured library your EDA tool can use.  The defining rule: **fetch from the manufacturer's own website first**, only fall back to Mouser, DigiKey, or Component Search Engine when the manufacturer doesn't self-host CAD, and only with explicit user approval. 
bin/adom-chip-fetcher
⋯ 1 unchanged line ⋯
package.json+4−4
@@ -1,8 +1,8 @@ {   "slug": "adom-chip-fetcher",-  "version": "1.3.9",+  "version": "1.3.10",   "type": "app",-  "description": "Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool.",+  "description": "Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool. Say \"cf\" to your AI.",   "dependencies": {     "adom/adom-sfconvert": "*",     "adom/adom-symbol": "*",@@ -106,7 +106,7 @@     "symbol footprint 3d for a chip",     "cross-source validation cad"   ],-  "title": "Chip Fetcher",+  "title": "Chip Fetcher (cf)",   "discovery_pitch": "When you need a chip in your design, say its part number: chip fetcher crawls the manufacturer, distributor and CAD sites for you and brings back the datasheet, symbol, footprint, 3D model, stock and price.",   "sample_prompts": [     {@@ -126,5 +126,5 @@       "prompt": "chip fetcher, find a 3.3V LDO in stock at mouser"     }   ],-  "brief": "Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool."+  "brief": "Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool. Say \"cf\" to your AI." }
page.json+5−5
@@ -1,8 +1,8 @@ {   "slug": "adom-chip-fetcher",-  "version": "1.3.9",+  "version": "1.3.10",   "type": "app",-  "description": "Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool.",+  "description": "Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool. Say \"cf\" to your AI.",   "dependencies": {     "adom/adom-sfconvert": "*",     "adom/adom-symbol": "*",@@ -36,7 +36,7 @@     "path": "adom-chip-fetcher-hero-v6.png"   },   "visibility": "public",-  "title": "Chip Fetcher",+  "title": "Chip Fetcher (cf)",   "author": {     "name": "John Lauer",     "email": "[email protected]"@@ -133,5 +133,5 @@       "prompt": "chip fetcher, find a 3.3V LDO in stock at mouser"     }   ],-  "brief": "Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool."-}+  "brief": "Crawls the web on your behalf to gather everything about the chips you care about: datasheets, symbols, footprints, 3D models, stock and pricing, straight from the manufacturer first, into your EDA tool. Say \"cf\" to your AI."+}\ No newline at end of file
playbooks/dashboard-flow.md+8−50
@@ -4,62 +4,20 @@  ## The hard rule -**Two separate surfaces. The dashboard is user-preference; the scraping window is always pup.**+**Two separate surfaces, both pup. The dashboard is a pup window; the scraping window is a second pup session.** (John, 2026-08-23: show and test the dashboard in pup, never a webview. The old ask-the-user surface preference is retired; the Hydrogen DOCK also opens the same dashboard in its own webview tab, but that is the dock's tab, not one you open.) -| Surface | Where it lives | User-preferred? | Why |-|---------|----------------|-----------------|-----|-| **Dashboard** (home base) | EITHER pup `sessionId: "adom-chip-fetcher-dashboard"` OR Hydrogen webview tab named "chip-fetcher" | **YES, ask the user (or check user-profile memory)** | Just renders HTML + polls `/api/activity`. No automation needed. |-| **Scraping window** | pup `sessionId: "adom-chip-fetcher"` | **NO, always pup** | Needs `pup_input_dispatch` for trusted clicks, captcha solving, vendor-login cookies on the `chip-fetcher` profile, download capture from `~/Downloads`. None of that works in a Hydrogen webview. |+| Surface | Where it lives | Why |+|---------|----------------|-----|+| **Dashboard** (home base) | pup `sessionId: "adom-chip-fetcher-dashboard"`, opened MAXIMIZED once by `chip-fetcher app` and reused | Renders the cards + polls `/api/activity`; the taskbar progress bar paints on THIS window's button |+| **Scraping window** | pup `sessionId: "adom-chip-fetcher"` (work) / `"adom-chip-fetcher-scrape"` | Needs `pup_input_dispatch` trusted clicks, captcha solving, vendor cookies, download capture; never the dashboard window | -### Dashboard placement, figure out the user's preference+Open (or reuse) the dashboard with ONE command; it starts the server too: -Adom users split based on screen real estate:-- **Laptop-screen users (e.g. John)** prefer pup as the dashboard, the pup window can be moved to a second monitor, alt-tabbed, or sized to taste outside VS Code's chrome.-- **Big-monitor users (e.g. Colby)** prefer Hydrogen webview, keeps everything inside VS Code, splits cleanly alongside the editor in a workspace pane.--**Be smart about this detail:**-1. Check `~/.claude/projects/-home-adom-project/memory/user_profile.md` for a `chip_fetcher_dashboard_surface` preference (`pup` or `webview`)-2. If absent, ASK the user once: *"Where do you want the chip-fetcher dashboard, pup window or Hydrogen webview tab?"* and save the answer for future sessions-3. Default fallback if you can't ask: pup, since it works on any screen size--Either way, the **scraping work always runs in pup**, the dashboard surface is decoupled from the automation surface.--### How to open the dashboard in either surface--**Pup version:**-```bash-DASHBOARD_URL="${VSCODE_PROXY_URI/\{\{port\}\}/8786}"-adom-bridge pup_open_window "{-  \"sessionId\":\"chip-fetcher-dashboard\",-  \"profile\":\"chip-fetcher\",-  \"url\":\"$DASHBOARD_URL\"-}"-adom-bridge pup_raise_os_window '{"sessionId":"adom-chip-fetcher-dashboard"}'-```--**Hydrogen webview version:** ```bash-# Find a non-VS-Code pane (per the "never cover VS Code" memory rule)-# Then split + add a webview tab-VSCODE_PANEL=$(adom-cli hydrogen workspace tabs | jq -r '.tabs[] | select(.name=="Visual Studio Code") | .panelId')-WEBVIEW_TYPE="adom/c1d2e3f4-aaaa-4000-a000-00000000000f"-DASHBOARD_URL="http://127.0.0.1:8786/"-adom-cli hydrogen workspace split \-  --panel-id "$VSCODE_PANEL" \-  --direction horizontal \-  --panel-type "$WEBVIEW_TYPE" \-  --display-name "chip-fetcher" \-  --position after \-  --ratio 0.4 \-  --initial-state "{\"url\":\"$DASHBOARD_URL\",\"displayName\":\"chip-fetcher\"}"+adom-chip-fetcher --ai-thread "<thread>" app ``` -Both surfaces poll the same `/api/activity` endpoint, so heartbeats reach the user regardless of which surface they picked.--**Why two distinct things:**-- The user can always glance at the dashboard while the agent navigates. They don't lose context when the agent visits SnapMagic or solves a captcha.-- The dashboard surface NEVER gets navigated away from. It stays on the chip-fetcher viewer URL. The scraping window does the work.-- If the agent gets stuck, the dashboard surfaces it on the relevant chip's card, the user knows which chip needs help without reading chat.+Never re-maximize, resize, foreground, or switch the active tab of a window the user already has; signal updates with `pup_alert_window` (taskbar flash) and the taskbar progress bar.  ## The canonical batch flow 
skills/sites/digikey/SKILL.md+14−7
@@ -1,15 +1,22 @@ --- name: chip-fetcher-site-digikey description: >--  How chip-fetcher navigates DigiKey for a chip's CAD models, and the recovery-  playbook for when DigiKey BLOCKS pup automation (its anti-bot trips-  periodically and serves a challenge/block page instead of the product page).-  Read before a DigiKey fetch, and especially when a DigiKey fetch returns a-  block/challenge instead of the part. Trigger words: digikey, digikey blocked,-  digikey captcha, digikey anti-bot, digikey challenge page, digikey cad,-  digikey step, digikey 3d model, digikey access denied, digikey verify human.+  How chip-fetcher navigates DigiKey for a chip's CAD models, and the recovery +  playbook for when DigiKey BLOCKS pup automation (its anti-bot trips +  periodically and serves a challenge/block page instead of the product page). +  Read before a DigiKey fetch, and especially when a DigiKey fetch returns a +  block/challenge instead of the part. Trigger words: digikey, digikey +  blocked, digikey captcha, digikey anti-bot, digikey challenge page, digikey +  cad, digikey step, digikey 3d model, digikey access denied, digikey verify +  human. Parent skill: chip-fetcher-sites. Use when a cf (chip-fetcher) lookup +  lands on this site, gets blocked there, or the site's layout changed; +  capture what you learn back into this skill and contribute fixes on the wiki +  (anyone can). Trigger words: digikey site skill, cf digikey, chip fetcher +  digikey, digikey cad download, digikey blocked, digikey layout changed. --- +Parent skill: **chip-fetcher-sites**+ # Site: DigiKey  DigiKey carries manufacturer CAD (ECAD model via SnapEDA/SamacSys, 3D STEP) on the
skills/sites/manufacturer/SKILL.md+14−6
@@ -1,14 +1,22 @@ --- name: chip-fetcher-site-manufacturer description: >--  The generic approach for pulling CAD straight from a chip MAKER's own site (TI,-  ST, NXP, Nordic, Microchip, Analog…), the top rung of the ladder, where the-  STEP is richest and most authoritative. Read before a manufacturer-direct-  fetch, or to add a maker-specific sub-flow. Trigger words: manufacturer cad,-  ti cad download, st cad, nxp cad, nordic cad, microchip cad, analog devices-  cad, manufacturer step, product page cad, maker site.+  The generic approach for pulling CAD straight from a chip MAKER's own site +  (TI, ST, NXP, Nordic, Microchip, Analog…), the top rung of the ladder, where +  the STEP is richest and most authoritative. Read before a +  manufacturer-direct fetch, or to add a maker-specific sub-flow. Trigger +  words: manufacturer cad, ti cad download, st cad, nxp cad, nordic cad, +  microchip cad, analog devices cad, manufacturer step, product page cad, +  maker site. Parent skill: chip-fetcher-sites. Use when a cf (chip-fetcher) +  lookup lands on this site, gets blocked there, or the site's layout changed; +  capture what you learn back into this skill and contribute fixes on the wiki +  (anyone can). Trigger words: manufacturer site skill, cf manufacturer, chip +  fetcher manufacturer, manufacturer cad download, manufacturer blocked, +  manufacturer layout changed. --- +Parent skill: **chip-fetcher-sites**+ # Site: Manufacturer-direct (generic)  The manufacturer's own product page is the **top rung**: the STEP is the real one,
skills/sites/mouser/SKILL.md+11−4
@@ -1,12 +1,19 @@ --- name: chip-fetcher-site-mouser description: >--  How chip-fetcher pulls CAD + stock/lifecycle from Mouser. Mouser is also the-  authoritative stock/price/lifecycle source (stock.json). Read before a Mouser-  fetch or stock check. Trigger words: mouser, mouser cad, mouser step, mouser-  stock, mouser lifecycle, mouser 3d model, mouser blocked.+  How chip-fetcher pulls CAD + stock/lifecycle from Mouser. Mouser is also the +  authoritative stock/price/lifecycle source (stock.json). Read before a +  Mouser fetch or stock check. Trigger words: mouser, mouser cad, mouser step, +  mouser stock, mouser lifecycle, mouser 3d model, mouser blocked. Parent +  skill: chip-fetcher-sites. Use when a cf (chip-fetcher) lookup lands on this +  site, gets blocked there, or the site's layout changed; capture what you +  learn back into this skill and contribute fixes on the wiki (anyone can). +  Trigger words: mouser site skill, cf mouser, chip fetcher mouser, mouser cad +  download, mouser blocked, mouser layout changed. --- +Parent skill: **chip-fetcher-sites**+ # Site: Mouser  Mid-ladder for CAD, but the **canonical source for stock + price + lifecycle**
skills/sites/nxp/SKILL.md+12−4
@@ -1,11 +1,19 @@ --- name: chip-fetcher-site-nxp description: >--  How chip-fetcher pulls CAD from NXP (nxp.com), the Design Resources / CAD-  section, sometimes behind an export-control click-through. Read before an-  NXP-direct fetch. Trigger words: nxp, nxp.com, nxp cad, nxp step, nxp symbol-  footprint, nxp export control, nxp blocked.+  How chip-fetcher pulls CAD from NXP (nxp.com), the Design Resources / CAD +  section, sometimes behind an export-control click-through. Read before an +  NXP-direct fetch. Trigger words: nxp, nxp.com, nxp cad, nxp step, nxp symbol +  footprint, nxp export control, nxp blocked. Parent skill: +  chip-fetcher-sites. Use when a cf (chip-fetcher) lookup lands on this site, +  gets blocked there, or the site's layout changed; capture what you learn +  back into this skill and contribute fixes on the wiki (anyone can). Trigger +  words: nxp site skill, cf nxp, chip fetcher nxp, nxp cad download, nxp +  blocked, nxp layout changed. ---++Parent skill: **chip-fetcher-sites**+ # Site: NXP (nxp.com) Authoritative manufacturer source for NXP MCUs / analog / RF. ## Reach
skills/sites/snapeda/SKILL.md+14−5
@@ -1,13 +1,22 @@ --- name: chip-fetcher-site-snapeda description: >--  How chip-fetcher navigates SnapEDA (SnapMagic) to download a chip's CAD bundle, symbol, footprint, 3D STEP, and the Fusion/Eagle .lbr + Altium IntLib, through a logged-in pup Chrome profile. The canonical template for a-  source-site skill. Read before driving a SnapEDA fetch, or when a SnapEDA fetch-  stalls at the login wall or the download button. Trigger words: snapeda,-  snapmagic, snapeda login, snapeda download, snapeda blocked, snapeda step,-  snapeda symbol footprint, snapeda lbr, snapeda intlib.+  How chip-fetcher navigates SnapEDA (SnapMagic) to download a chip's CAD +  bundle, symbol, footprint, 3D STEP, and the Fusion/Eagle .lbr + Altium +  IntLib, through a logged-in pup Chrome profile. The canonical template for a +  source-site skill. Read before driving a SnapEDA fetch, or when a SnapEDA +  fetch stalls at the login wall or the download button. Trigger words: +  snapeda, snapmagic, snapeda login, snapeda download, snapeda blocked, +  snapeda step, snapeda symbol footprint, snapeda lbr, snapeda intlib. Parent +  skill: chip-fetcher-sites. Use when a cf (chip-fetcher) lookup lands on this +  site, gets blocked there, or the site's layout changed; capture what you +  learn back into this skill and contribute fixes on the wiki (anyone can). +  Trigger words: snapeda site skill, cf snapeda, chip fetcher snapeda, snapeda +  cad download, snapeda blocked, snapeda layout changed. --- +Parent skill: **chip-fetcher-sites**+ # Site: SnapEDA (SnapMagic)  SnapEDA is the highest-yield non-manufacturer rung: it has symbol + footprint +
skills/sites/st/SKILL.md+12−4
@@ -1,11 +1,19 @@ --- name: chip-fetcher-site-st description: >--  How chip-fetcher pulls CAD from STMicroelectronics (st.com), the CAD Resources-  tab on a product page, behind a free myST account for some downloads. Read-  before an ST-direct fetch. Trigger words: st, stm, stmicroelectronics, st.com,-  st cad, st step, stm32 cad, myst login, st blocked.+  How chip-fetcher pulls CAD from STMicroelectronics (st.com), the CAD +  Resources tab on a product page, behind a free myST account for some +  downloads. Read before an ST-direct fetch. Trigger words: st, stm, +  stmicroelectronics, st.com, st cad, st step, stm32 cad, myst login, st +  blocked. Parent skill: chip-fetcher-sites. Use when a cf (chip-fetcher) +  lookup lands on this site, gets blocked there, or the site's layout changed; +  capture what you learn back into this skill and contribute fixes on the wiki +  (anyone can). Trigger words: st site skill, cf st, chip fetcher st, st cad +  download, st blocked, st layout changed. ---++Parent skill: **chip-fetcher-sites**+ # Site: STMicroelectronics (st.com) Authoritative manufacturer source for STM32 / ST analog & power parts. ## Reach
skills/sites/ti/SKILL.md+12−5
@@ -1,12 +1,19 @@ --- name: chip-fetcher-site-ti description: >--  How chip-fetcher pulls CAD from Texas Instruments (ti.com), the "CAD/Symbols,-  Footprints & 3D Models" widget on a product page (an Ultra Librarian embed) and-  the native STEP. Read before a TI-direct fetch. Trigger words: ti, texas-  instruments, ti.com, ti cad, ti step, ti symbol footprint, ti ultra librarian,-  ti.com blocked.+  How chip-fetcher pulls CAD from Texas Instruments (ti.com), the +  "CAD/Symbols, Footprints & 3D Models" widget on a product page (an Ultra +  Librarian embed) and the native STEP. Read before a TI-direct fetch. Trigger +  words: ti, texas instruments, ti.com, ti cad, ti step, ti symbol footprint, +  ti ultra librarian, ti.com blocked. Parent skill: chip-fetcher-sites. Use +  when a cf (chip-fetcher) lookup lands on this site, gets blocked there, or +  the site's layout changed; capture what you learn back into this skill and +  contribute fixes on the wiki (anyone can). Trigger words: ti site skill, cf +  ti, chip fetcher ti, ti cad download, ti blocked, ti layout changed. ---++Parent skill: **chip-fetcher-sites**+ # Site: Texas Instruments (ti.com) Top-rung manufacturer source, TI's STEP is authoritative and its ECAD is an Ultra Librarian embed. ## Reach
skills/sites/ultralibrarian/SKILL.md+12−3
@@ -1,11 +1,20 @@ --- name: chip-fetcher-site-ultralibrarian description: >--  How chip-fetcher navigates Ultra Librarian / Component Search Engine (CSE/UL), a late-ladder rung with broad coverage behind a login + format picker. Read-  before a CSE/UL fetch. Trigger words: ultra librarian, ultralibrarian, cse_ul,-  component search engine, samacsys, ul download, ul step, ul blocked.+  How chip-fetcher navigates Ultra Librarian / Component Search Engine +  (CSE/UL), a late-ladder rung with broad coverage behind a login + format +  picker. Read before a CSE/UL fetch. Trigger words: ultra librarian, +  ultralibrarian, cse_ul, component search engine, samacsys, ul download, ul +  step, ul blocked. Parent skill: chip-fetcher-sites. Use when a cf +  (chip-fetcher) lookup lands on this site, gets blocked there, or the site's +  layout changed; capture what you learn back into this skill and contribute +  fixes on the wiki (anyone can). Trigger words: ultralibrarian site skill, cf +  ultralibrarian, chip fetcher ultralibrarian, ultralibrarian cad download, +  ultralibrarian blocked, ultralibrarian layout changed. --- +Parent skill: **chip-fetcher-sites**+ # Site: Ultra Librarian / Component Search Engine (CSE/UL)  Late ladder (`cse_ul`) but wide coverage; many maker + DigiKey/Mouser "ECAD model"