From israel-shopping
Use when the user wants to search AliExpress and **hide products that carry the `Max Combo` badge** — i.e. exclude bundle/combo deals from the result set so only standalone listings remain. AliExpress provides no server-side filter for this on the listing page (validated — see `research/ui-selectors/listing-page-filters.md` §3); the skill therefore runs the standard search via `search-aliexpress`, then post-filters the visible product cards by reading the `Max Combo` badge text in the card DOM and dropping any card that has it. Trigger phrases — "search aliexpress without combo", "exclude max combo", "no bundle deals aliexpress", "aliexpress single items only", "hide combo deals".
How this skill is triggered — by the user, by Claude, or both
Slash command
/israel-shopping:exclude-combo-dealsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Wrapper around `search-aliexpress` that drops `Max Combo` bundle listings from the results.
Wrapper around search-aliexpress that drops Max Combo bundle listings from the results.
Max Combo is a per-product badge, not a server-side filter — there is no filterCode:* toggle for it on the listing page. The only way to "exclude combo" is to fetch the full result set and drop badged cards client-side. This skill encapsulates that pattern so callers don't have to know about the badge mechanics.
Same as search-aliexpress, plus:
query (required)filters (optional) — same shape: { choice, freeshipping, rating4plus, premium, ship_from }max_results (optional, default 20) — applied after combo filtering, so to surface 20 non-combo cards the skill will scrape more than 20 raw cards.over_fetch_factor (optional, default 2) — multiplier for how much to over-fetch. With max_results=20 and factor 2, scrape up to 40 raw cards then drop combos and trim to 20.search-aliexpress (locale handshake → URL → filter toggles).max_results, see over_fetch_factor).Max Combo badge.max_results and return.Max Combo badgeValidated in research/ui-selectors/listing-page-filters.md §3:
<span class="lw_an">Max Combo</span>
The class lw_an is hashed and will rotate between deploys — anchor on the text instead, scoped to product card containers.
// On the listing page, after results render:
const badged = new Set(
[...document.querySelectorAll('span')]
.filter(el => /^max combo$/i.test(el.textContent.trim()))
.map(el => el.closest('a[href*="/item/"]'))
.filter(Boolean)
);
Then when extracting product cards, drop any whose anchor element is in badged.
When b_locale=iw_IL, AliExpress may render the badge in Hebrew. Capture both:
/^(max combo|מקס קומבו|קומבו)$/i.test(el.textContent.trim())
If the Hebrew rendering is ever observed and differs from the regex above, update the research notes and this skill.
Same shape as search-aliexpress, with one extra line in the header:
Combo cards dropped: <N> (raw scraped: <R>, returned: <max_results or fewer>)
If R - N < max_results, return what's available and note that the over-fetch wasn't enough — the user can re-run with a higher over_fetch_factor.
max_results × over_fetch_factor: just process what's there; report the actual counts.max_results cards normally; report Combo cards dropped: 0."Max Combo deal"): the regex above is anchored, so it won't match; this is intentional. If observed in the wild, relax to /\bmax combo\b/i and document the change.Pack of 3, Set of 5) with no Max Combo badge — these are not filtered. Add a separate skill if needed.search-aliexpress passes.max_results.npx claudepluginhub danielrosehill/claude-code-plugins --plugin israel-shoppingGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.