{
  "schemaVersion": "1.0",
  "item": {
    "slug": "supermarket-deals",
    "name": "Supermarket Deals (DE)",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/benmillerat/supermarket-deals",
    "canonicalUrl": "https://clawhub.ai/benmillerat/supermarket-deals",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/supermarket-deals",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=supermarket-deals",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "package-lock.json",
      "package.json",
      "src/api.ts",
      "src/config.ts"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/supermarket-deals"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/supermarket-deals",
    "agentPageUrl": "https://openagent3.xyz/skills/supermarket-deals/agent",
    "manifestUrl": "https://openagent3.xyz/skills/supermarket-deals/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/supermarket-deals/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "supermarket-deals",
        "body": "Search German supermarket flyers for product deals via the Marktguru API. Results are ranked by best price per litre."
      },
      {
        "title": "What this skill does",
        "body": "Fetches Marktguru API keys automatically from the homepage (no registration needed, keys are cached 6h)\nSearches current Prospekte (flyers) by product query + ZIP code\nSupports multiple search terms in one call (merged + deduplicated)\nFilters by store, ranks by EUR/L\nReturns a direct Marktguru link for each deal\nThe skill is intentionally \"dumb\" — it fetches and formats data. Your agent applies smart filtering and formatting for notifications."
      },
      {
        "title": "Setup",
        "body": "cd path/to/supermarket-deals\nnpm install\nnpm run build\n\nOptionally set your defaults:\n\nnode dist/index.js config set zip 85540\nnode dist/index.js config set stores \"Lidl,REWE,EDEKA,ALDI SÜD,Kaufland\""
      },
      {
        "title": "Usage",
        "body": "# Single search term\nnode dist/index.js search \"Cola Zero\" --zip 85540\n\n# Multiple terms (merged + deduped, useful for product aliases)\nnode dist/index.js search \"Cola Zero\" \"Coke Zero\" --zip 85540\n\n# Broad search — let your agent do the filtering\nnode dist/index.js search \"Cola\" --zip 85540\n\n# Filter by specific stores\nnode dist/index.js search \"Monster Energy\" --zip 80331 --stores \"Lidl,ALDI SÜD\"\n\n# JSON output for agent/cron use\nnode dist/index.js search \"Cola\" --zip 85540 --json\n\n# Show config\nnode dist/index.js config"
      },
      {
        "title": "Agent pattern (recommended)",
        "body": "Use a broad search term and let your agent filter intelligently:\n\nnode dist/index.js search \"Cola\" --zip 85540 --json\n\nThen instruct your agent to:\n\nInclude deals where description says \"versch. Sorten\" (these bundle all variants incl. Zero)\nInclude deals that explicitly mention Coca-Cola, Coke Zero, etc.\nExclude deals that only mention Powerade, Fuze Tea, Sprite-only, etc.\nRank by EUR/L and highlight the best deal\n\nThis approach catches deals that Marktguru lists as generic \"Cola category\" without naming every variant."
      },
      {
        "title": "Output columns",
        "body": "ColumnDescriptionDescriptionProduct description from flyerStoreRetailer nameSizeVolume × quantity (e.g. 6×0.33l, 1.5l)PriceTotal priceEUR/LPrice per litre (calculated or from API reference price)ValidDeal validity datesURLDirect link to Marktguru offer page"
      },
      {
        "title": "Notes",
        "body": "Prospekte refresh on Mondays and Thursdays\nResults are cached by Marktguru for ~15 minutes\nSome regional store branches may not submit flyers to Marktguru — broad queries catch more\nAPI keys rotate and are fetched fresh at runtime (cached 6h in ~/.supermarket-deals/keys.json)"
      }
    ],
    "body": "supermarket-deals\n\nSearch German supermarket flyers for product deals via the Marktguru API. Results are ranked by best price per litre.\n\nWhat this skill does\nFetches Marktguru API keys automatically from the homepage (no registration needed, keys are cached 6h)\nSearches current Prospekte (flyers) by product query + ZIP code\nSupports multiple search terms in one call (merged + deduplicated)\nFilters by store, ranks by EUR/L\nReturns a direct Marktguru link for each deal\nThe skill is intentionally \"dumb\" — it fetches and formats data. Your agent applies smart filtering and formatting for notifications.\nSetup\ncd path/to/supermarket-deals\nnpm install\nnpm run build\n\n\nOptionally set your defaults:\n\nnode dist/index.js config set zip 85540\nnode dist/index.js config set stores \"Lidl,REWE,EDEKA,ALDI SÜD,Kaufland\"\n\nUsage\n# Single search term\nnode dist/index.js search \"Cola Zero\" --zip 85540\n\n# Multiple terms (merged + deduped, useful for product aliases)\nnode dist/index.js search \"Cola Zero\" \"Coke Zero\" --zip 85540\n\n# Broad search — let your agent do the filtering\nnode dist/index.js search \"Cola\" --zip 85540\n\n# Filter by specific stores\nnode dist/index.js search \"Monster Energy\" --zip 80331 --stores \"Lidl,ALDI SÜD\"\n\n# JSON output for agent/cron use\nnode dist/index.js search \"Cola\" --zip 85540 --json\n\n# Show config\nnode dist/index.js config\n\nAgent pattern (recommended)\n\nUse a broad search term and let your agent filter intelligently:\n\nnode dist/index.js search \"Cola\" --zip 85540 --json\n\n\nThen instruct your agent to:\n\nInclude deals where description says \"versch. Sorten\" (these bundle all variants incl. Zero)\nInclude deals that explicitly mention Coca-Cola, Coke Zero, etc.\nExclude deals that only mention Powerade, Fuze Tea, Sprite-only, etc.\nRank by EUR/L and highlight the best deal\n\nThis approach catches deals that Marktguru lists as generic \"Cola category\" without naming every variant.\n\nOutput columns\nColumn\tDescription\nDescription\tProduct description from flyer\nStore\tRetailer name\nSize\tVolume × quantity (e.g. 6×0.33l, 1.5l)\nPrice\tTotal price\nEUR/L\tPrice per litre (calculated or from API reference price)\nValid\tDeal validity dates\nURL\tDirect link to Marktguru offer page\nNotes\nProspekte refresh on Mondays and Thursdays\nResults are cached by Marktguru for ~15 minutes\nSome regional store branches may not submit flyers to Marktguru — broad queries catch more\nAPI keys rotate and are fetched fresh at runtime (cached 6h in ~/.supermarket-deals/keys.json)"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/benmillerat/supermarket-deals",
    "publisherUrl": "https://clawhub.ai/benmillerat/supermarket-deals",
    "owner": "benmillerat",
    "version": "1.1.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/supermarket-deals",
    "downloadUrl": "https://openagent3.xyz/downloads/supermarket-deals",
    "agentUrl": "https://openagent3.xyz/skills/supermarket-deals/agent",
    "manifestUrl": "https://openagent3.xyz/skills/supermarket-deals/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/supermarket-deals/agent.md"
  }
}