webshop-product-detail-check
$
npx mdskill add zjunlp/SkillNet/webshop-product-detail-checkVerify product details against user constraints before purchase.
- Confirms price, features, and reviews match specified requirements.
- Depends on scraping product pages for title, price, and availability.
- Compares extracted data against stored user constraints to decide.
- Outputs a clear proceed or reject recommendation for the agent.
SKILL.md
.github/skills/webshop-product-detail-checkView on GitHub ↗
---
name: webshop-product-detail-check
description: >-
Examines a specific product's detailed page to verify it matches the user's requirements,
checking price, description, features, and reviews. Use when you have navigated to a
product detail page from search results and need to confirm the product meets all
user-specified constraints before purchasing. It provides a final suitability assessment
with a clear proceed-or-reject recommendation.
---
# Skill: Product Detail Verification
## Trigger
Activate this skill when the agent has navigated to a specific product's detailed page from a search results list. The agent should have a user query containing specific requirements (e.g., product type, attributes, price constraints).
## Core Objective
Analyze the product detail page to confirm if the product meets all user-specified constraints. Provide a clear "Proceed" or "Reject" recommendation.
## Execution Workflow
1. **Parse User Requirements:** Extract key constraints from the user's instruction. Primary constraints are typically **Price** and **Key Attributes** (e.g., "long", "clip-in", "natural looking"). Store these in a structured format.
2. **Scrape Product Page Data:** Systematically extract the following information from the current page observation:
* **Product Title**
* **Price**
* **Key Description Snippets** (from Description/Features sections)
* **Rating** (if available)
* **Availability of "Buy Now"** action.
3. **Constraint Verification:** Compare the scraped data against the user's requirements.
* **Price Check:** Is the product price strictly less than the user's maximum? (e.g., < $40.00).
* **Attribute Check:** Do the title and description contain terms matching the user's key attributes? (e.g., confirm "clip-in" and "natural looking" are present).
* **Suitability Flag:** Product is suitable only if **ALL** hard constraints (price, mandatory attributes) are satisfied.
4. **Decision & Action:**
* **If SUITABLE:** Conclude the product matches requirements. The recommended action is `click[buy now]`.
* **If NOT SUITABLE:** Conclude the product fails one or more constraints. The recommended action is to return to search (`click[back to search]`) to find another candidate.
## Output Format
Your response must use the following format:
**Thought:** [Your reasoning, summarizing the user's constraints, the product details found, and the result of the verification check.]
**Action:** [The single, valid action to take: `click[buy now]` or `click[back to search]`]
## Example
**Instruction:** "i need a long clip-in hair extension which is natural looking, and price lower than 40.00 dollars"
**Observation:** Product page for "22 Inch Long Natural Looking Clip-In Hair Extension" — Price: $34.99, Description mentions "clip-in", "natural looking", "synthetic fiber".
**Thought:** The user needs a long, natural-looking, clip-in hair extension under $40. This product is priced at $34.99 (< $40.00), the title confirms "long" and "natural looking", and the description confirms "clip-in". All constraints are satisfied.
**Action:** `click[buy now]`
---
**Observation:** Product page for "Premium Human Hair Extension" — Price: $45.99, Description mentions "clip-in", "natural".
**Thought:** The user's budget is under $40. This product is priced at $45.99, which exceeds the $40 limit. Price constraint fails.
**Action:** `click[back to search]`
## Notes
* Prioritize information explicitly on the product page. Assume missing information (like a Rating of "N.A.") does not disqualify a product unless specified by the user.
* The "Buy Now" button must be present in the available actions list for the purchase action to be valid.
More from zjunlp/SkillNet
- alfworld-appliance-navigatorNavigates the agent to a target appliance (microwave, stove, fridge, or sinkbasin) needed for object processing. Use when you are holding an object that needs heating, cooling, or cleaning and must move to the correct appliance station. Identifies the required appliance from the task context and executes the movement action.
- alfworld-appliance-preparerPrepares a household appliance (microwave, oven, toaster, fridge) for use by ensuring it is in the correct open/closed state. Use when the agent needs to heat, cool, or cook an item and must first open or close the appliance before placing an object inside. Takes an appliance identifier as input and outputs a confirmation that the appliance is ready for the next action.
- alfworld-clean-objectCleans a specified object using an appropriate cleaning receptacle (e.g., sinkbasin). Use when a task requires an object to be in a clean state (e.g., "clean potato", "wash apple") before proceeding. Navigates to the cleaning location, performs the clean action, and confirms the object is now clean.
- alfworld-device-operatorOperates a device or appliance (like a desklamp, microwave, or fridge) to interact with another object. Use when the task requires using a tool on a target item (e.g., "look at laptop under the desklamp", "heat potato with microwave"). Locates both the device and target object, co-locates them, and executes the appropriate use action (toggle, heat, cool, or clean).
- alfworld-environment-scannerPerforms an initial scan of the ALFWorld environment to identify all visible objects and receptacles. Use when you first enter an environment and need to build a mental map for task planning. Processes raw observation text into a structured list of entities, categorizing them as objects or receptacles.
- alfworld-goal-interpreterParses the natural language task goal to extract actionable sub-objectives and required objects. Trigger this skill whenever a new task is assigned to break down complex instructions into clear, sequential targets. It interprets phrases like 'look at X under Y' to identify target objects (pillow), reference objects (desklamp), and spatial relationships (under).
- alfworld-heat-object-with-applianceUses a heating appliance (microwave, stoveburner, oven) to apply heat to a specified object. Use when the task requires warming or cooking an item (e.g., "heat some egg", "warm the mug") and a heating appliance is available. Takes the object name and appliance name as input and outputs the object in a heated state, ready for placement at the task's target location.
- alfworld-inventory-managementUse when the agent must collect and track multiple instances of the same object type in ALFWorld (e.g., "put two cellphone in bed"). This skill maintains a count of collected versus needed objects, guides systematic searching through receptacles, and ensures each found object is placed at the target before searching for the next.
- alfworld-locate-target-objectNavigates to a suspected location and identifies a target object. Use when your goal requires finding a specific object (e.g., "potato", "plate") and its location is not immediately known. Moves to a relevant receptacle (like a fridge or cabinet), checks its contents, and outputs the object's location or confirms its absence.
- alfworld-location-navigatorMoves the agent to a specified receptacle or object location within the Alfworld environment. Use this skill when the agent needs to physically approach a target to inspect or interact with it, such as when checking an object's state or preparing for pickup. The skill takes a target location name as input and executes the 'go to' action, resulting in the agent being positioned at the destination for subsequent operations.