From israel-shopping
Use when the user provides a specific AliExpress product URL or ID and wants the listing parsed into structured JSON — title, price, ship-to-Israel fee, lead time, ratings, store, and a computed landed cost (item + shipping, with optional 18% Israeli VAT band for items over $75 USD). Default locale is English/USD; opt in to Hebrew/ILS via `--locale he-IL`. Uses the no-auth Puppeteer scraper (`aliexpress-product-scraper`) — no API credentials needed. Trigger phrases — "fetch this aliexpress listing", "parse this aliexpress url", "what's the landed cost of this aliexpress item", "scrape aliexpress product".
npx claudepluginhub danielrosehill/claude-code-plugins --plugin israel-shoppingThis skill uses the workspace's default tool permissions.
Parse a single AliExpress listing into a structured JSON file plus a one-screen summary, with Israel-aware landed-cost calculation.
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
Parse a single AliExpress listing into a structured JSON file plus a one-screen summary, with Israel-aware landed-cost calculation.
search-aliexpress — once a candidate is shortlisted, fetch its full datacompare-to-local)For searching (no specific URL yet), use search-aliexpress instead.
id_or_url (required) — product ID (e.g. 1005007520167230) or full URL (https://www.aliexpress.com/item/...html)--locale (optional, default en-US) — en-US (English/USD) or he-IL (Hebrew/ILS, set via documented cookies)--out-dir (optional, default ./outputs) — where to write the JSON dumpnvm use 24 # Node ≥ 24 required
cd <skill-dir>/scripts
npm install # installs aliexpress-product-scraper + puppeteer
Puppeteer downloads its own Chromium on install (~150 MB).
node scripts/ali-fetch.mjs <id|url> [outDir]
Outputs:
<outDir>/listing-<id>.json — full structured dump (price, shipping, ratings, reviews, specs, store, variants)<outDir>/.fx-cache.json — cached USD/ILS rate (24h TTL, frankfurter.app/ECB)stdout summary — title, price, orders, rating, ship lane + fee + lead time, store, landed costwrote outputs/listing-1005007520167230.json
title: <product title>
price: ₪72.10
orders: 0 rating: 4.2 (25)
ship: China → Israel fee: ₪7.49 lead: 10–30 days
store: <store name> topRated: false
fx: 1 USD = ₪2.9798 (frankfurter@2026-04-24)
landed (item+ship): ₪79.59 incl. VAT: ₪79.59 band: under-$75 (no VAT)
The script computes and surfaces both the bare landed cost (item + shipping) and the VAT-inclusive cost. The user decides which to use for comparisons.
| Item value (USD) | VAT band |
|---|---|
| ≤ $75 | No VAT |
| $75 – $500 | 18% VAT on (item + shipping) |
| > $500 | Customs/duty applies (out of scope) |
USD value is computed from the ILS price using the live frankfurter.app rate. Override with USD_ILS=<rate> env var if needed.
currency: "USD" even when the amount is ILS. The script prefers formatedAmount (the localized string with the currency glyph) over the buggy currency field.--locale he-IL is on the roadmap — needs cookie injection through Puppeteer (c_tp=ILS, b_locale=iw_IL per research/cookies/language-and-currency.md).search-aliexpress.fetch-listing-api once configured.<outDir>/listing-<id>.json and is non-empty.data.title is present (empty title indicates the scraper failed silently — usually rate-limit or DOM rotation).data.shipping[].shippingInfo.toCode === "IL" exists (or the script falls back to shipping[0] and warns).fx.rate is a finite number; if frankfurter is unreachable and no USD_ILS env override is set, the script aborts.subtotal and withVat; band is one of the three documented values.If aliexpress-product-scraper breaks (DOM rotation, anti-bot challenges):
omkarcloud/aliexpress-scraperoxylabs/aliexpress-scraperdarwiish1337/scraper_mdBrenoFariasdaSilva/E-Commerces-WebScraperFor long-term reliability, prefer fetch-listing-api (official AliExpress Affiliate API).