handle-unavailable-variant

star 0

Use when a user requests a specific product variant (e.g., color, size) for exchange or purchase. This skill involves checking the availability of the exact variant and clearly communicating its stock status to the user.

wan19990901 By wan19990901 schedule Updated 2/24/2026

name: handle-unavailable-variant description: Use when a user requests a specific product variant (e.g., color, size) for exchange or purchase. This skill involves checking the availability of the exact variant and clearly communicating its stock status to the user. metadata: case_id: 1 case_outcome: failed source: /data/Research_dir/Benchmarks/tau2-bench/data/simulations/gemini_3_flash_retail_reasoning_bank/pattern_guidance_failed.json generated_at: 2026-02-20T20:43:58.723730

Layer 1: Metadata & Description

  • Description: Use when a user requests a specific product variant (e.g., color, size) for exchange or purchase. This skill involves checking the availability of the exact variant and clearly communicating its stock status to the user.

Layer 2: Guidelines

General Guidelines

  • Always verify the availability of the specific product configuration requested by the user.
  • Do not assume a product is available just because the base product exists; check the specific variant.
  • Clearly communicate when a specific variant is out of stock, using tool output as the source of truth.
  • Follow any conditional instructions the user has provided for out-of-stock scenarios.
  • After informing the user, ask for their preferred next step (e.g., choose another variant, cancel the request).

Specific Guidelines

  • Call get_product_details for the product the user wishes to exchange.
  • Parse the variants from the tool response to find the one matching the user's specified options (e.g., 'switch type', 'backlight', 'size').
  • Check the available status of the matching variant.
  • If the variant has "available": false, inform the user that the specific version is out of stock.
  • Adhere to any conditional instructions provided by the user for this scenario (e.g., proceed with other exchanges only).

Layer 3: Context

  • Problem Pattern: User requests an exchange for a specific product variant that is out of stock.
  • State Signature: "9025753381": {"item_id": "9025753381", "options": {"switch type": "clicky", "backlight": "RGB", "size": "full size"}, "available": false, "price": 231.58}
  • Bypass Strategy:
    1. Call get_product_details for the product the user wishes to exchange.
    2. Parse the variants from the tool response to identify if the exact combination of user-specified options (e.g., 'switch type', 'backlight', 'size') exists and check its available status.
    3. If the matching variant has "available": false, inform the user that the specific version is out of stock.
    4. Adhere to any conditional instructions provided by the user for this scenario (e.g., proceed with other requested exchanges only, or keep the original item).

Layer 3: Context (Additional)

  • Case Outcome: failed
  • Problem Pattern: Desired product variant is unavailable, but user has specified an acceptable fallback option.
  • State Signature: User's request in Turn 9: "For the keyboard, I'm looking for a version that has clicky switches. I'd prefer it to be full size with an RGB backlight. However, if you don't have a clicky, full-sized one with RGB, I’m willing to go with one that has no backlight instead." Tool response in Turn 11 showing the primary variant as unavailable and the fallback variant as available: {"name": "Mechanical Keyboard", "product_id": "1656367028", "variants": { ... "9025753381": {"item_id": "9025753381", "options": {"switch type": "clicky", "backlight": "RGB", "size": "full size"}, "available": false, "price": 231.58}, ... "7706410293": {"item_id": "7706410293", "options": {"switch type": "clicky", "backlight": "none", "size": "full size"}, "available": true, "price": 269.16}, ...}}
  • Bypass Strategy:
    1. Identify that the user's primary preference for the product variant is unavailable based on get_product_details tool output.
    2. Identify the user's explicitly stated fallback preference from their input.
    3. Check the availability of the fallback preference using the get_product_details tool output.
    4. Inform the user about the unavailability of the primary preference and present the available fallback option.
    5. Confirm with the user if the fallback option is acceptable before proceeding.
Install via CLI
npx skills add https://github.com/wan19990901/adk_agentskill --skill handle-unavailable-variant
Repository Details
star Stars 0
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator