OpenClaw/clawhub-security-signals huggingface dataset:
Skill: kdm-bigmodel/shortplay-generator (version 1.0.0)

--- name: shortplay-generator description: AI短剧生成器。当用户说“生成短剧”“写个剧本”“帮我做个短剧”时使用。 --- # 短剧生成器 ## 工作流程 当用户请求生成短剧时，按以下步骤执行： ### 1. 理解需求 - 题材：甜宠/修仙/霸总/重生/悬疑/古装 - 时长：30秒/1分钟/3分钟 - 风格：甜/虐/爽 ### 2. 生成剧本 按这个格式输出： 【剧名】《XXX》 【类型】XXX 【时长】X秒 【角色1】姓名 - 性格描述 【角色2】姓名 - 性格描述 【场景1】地点 - 时间 （画面描述） 角色A：台词 角色B：台词 （动作/表情描述） 【场景2】... **剧本原则**： - 开头3秒抓眼球 - 每15秒一个小反转 - 结尾留钩子 ### 3. 生成视频提示词包 为每个关键场景生成AI视频工具（可灵/Runway/即梦）可直接使用的提示词： 🎬 **场景1 视频提示词** [风格] 电影感，4K，超写实 [主体] 具体描述人物、动作、表情 [环境] 光线、氛围、背景 [镜头] 景别（特写/中景/远景）、角度 🎬 **场景2 视频提示词** ... ### 4. 输出格式 用分隔线区分剧本和提示词包： --- 【剧本】 ... --- 【视频提示词包】 ...


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: xammarie/jarvis-persona-style-calibrator-01 (version 1.0.0)

--- name: jarvis-persona-style-calibrator-01 description: Calibrate assistant personality to voice, boundaries, and audience context. Use when handling personality work that needs repeatable steps, quality gates, and practical outputs. --- # Jarvis Persona Style Calibrator 01 Deliver a concrete, reusable workflow for personality tasks. ## Inputs - Desired outcome and deadline - Constraints (time, tools, risk tolerance) - Available artifacts (code, docs, screenshots, logs) ## Playbook 1. Define success and failure criteria in measurable terms. 2. Build a smallest-valid execution path before scaling effort. 3. Execute in checkpoints; record evidence at each checkpoint. 4. Apply quality gates before finalizing recommendations. 5. Return implementation-ready outputs and next actions. ## Quality Gates - Evidence-backed claims only. - Explicit assumptions and tradeoffs. - Reversible changes preferred for risky operations. - Clear owner + ETA for each next step. - Include a fallback if the primary plan fails. ## Output Format - Situation summary (5 lines max) - Top findings (ranked by impact) - Action plan (today / this week) - Risks + mitigations - Exact checklist or commands where useful ## Example prompts - "Use this skill to turn my messy notes into a production-ready plan." - "Run this skill and give me a risk-first action sequence with acceptance checks."


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: larios613-hub/photo-editor-pro (version 1.0.0)

# Photo Editor Pro — ClawHub Skill ## Overview **Photo Editor Pro** is a comprehensive image editing skill that combines AI-powered enhancements with professional editing workflows. ### What It Does | Capability | Description | |------------|-------------| | **AI Enhancement** | Auto-enhance photos with AI | | **Background Removal** | Remove backgrounds with one click | | **Color Correction** | Professional color grading | | **Batch Processing** | Edit multiple images at once | | **Format Conversion** | Convert between PNG, JPG, WebP, etc. | | **Resize & Crop** | Smart resizing and cropping | --- ## Features ### Basic Editing - Crop and rotate - Resize with aspect ratio lock - Brightness, contrast, saturation - Sharpness and clarity - Noise reduction ### AI-Powered - Auto-enhance (one-click improvement) - Background removal - Object removal - Face retouching - Sky replacement - Style transfer ### Professional Tools - Color grading (curves, levels) - Selective adjustments - Layers and masks - Text and watermarks - Batch processing ### Export Options - PNG (lossless) - JPG (adjustable quality) - WebP (web optimized) - Resize presets (social media, web, print) --- ## Use Cases | User Type | How It Helps | |-----------|--------------| | **Social Media Manager** | Quick edits, batch resize, brand consistency | | **E-commerce** | Product photos, background removal | | **Content Creator** | Thumbnails, promotional images | | **Small Business** | Marketing materials, logos, banners | | **Freelancer** | Client deliverables, quick turnaround | --- ## Supported Formats | Format | Read | Write | |--------|------|-------| | PNG | ✅ | ✅ | | JPG/JPEG | ✅ | ✅ | | WebP | ✅ | ✅ | | GIF | ✅ | ✅ | | BMP | ✅ | ✅ | | TIFF | ✅ | ✅ | --- ## Integration Points | Tool | Purpose | |------|---------| | File System | Load/save images locally | | Browser | Screenshot editing | | Cloud Storage | Save to Google Drive, Dropbox | | Social APIs | Direct upload to platforms | --- ## Pricing | Tier | Price | Features | |------|-------|----------| | **One-time** | $14.99 | All features, lifetime updates | --- ## Requirements - OpenClaw compatible agent - Image file access - Optional: Cloud storage for export --- ## Target Users | Team | Department | Use Case | |------|------------|----------| | **CMO Team D** | Personal Brand | Eric's social media, content creation | | **CMO Team B** | Product Marketing | Launch materials, product images | | **CMO Team A** | Brand | Brand consistency, visual identity | | **CMO Team C** | Growth | Ad creatives, campaign images | **Primary User:** CMO Team D (Doctor Strange) — Eric's personal brand content --- ## Author **El Rudo Larios LLC** - VP Creative: Art team - Primary User: CMO Team D (Doctor Strange) - Support: @Pan_CMObot --- ## Version - **Version:** 1.0.0 - **Released:** 2026-03-27 - **License:** Commercial --- _Edit like a pro, ship like a boss._


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: mxingchtongaelofficial2568/llm-paper-review-generator (version 0.0.2)

--- name: paper-review-generator description: 将论文 PDF 批处理为中文精读总结报告的工作流技能。适用于“PaddleOCR 或 pdfplumber 抽取文本 + 大模型总结论文”场景。使用时仅读取 skill 目录下 config.json 与 prompt.md，并运行 scripts 中所需脚本，用户可在prompt.md中定义用户研究主题与研究方向。 --- # paper-review-generator ## 1) 配置文件约束 - 仅使用当前 skill 目录下两个文件： - `config.json`：包含运行所需全部信息（是否 OCR、OCR 参数、总结模型 base_url/model/api_key、可见窗口开关、线程数） - `prompt.md`：总结提示词模板 - `api_key` 支持两种写法： - 在config.json中指定 - 环境变量引用：`${ENV_VAR}`，脚本会在运行时读取对应环境变量 - 不读取其他目录 secret。 - 不在日志和异常信息中回显任何 api_key 或 token。 ## 2) 执行入口 - **必须先切换到本 skill 根目录再运行脚本**（即 `.../paper-review-generator`），否则相对路径的 `config.json` / `prompt.md` 会找不到。 - 必须由用户明确传入输入与输出路径： - `--pdf`（可重复，支持多个文件） - `--dir`（可重复，支持多个文件夹） - `--output-dir`（可选；不传时默认输出到每个输入 PDF 同目录下的 `总结` 文件夹） - 示例（路径由 agent 按用户需求填入）： - 单文件：`python scripts/run_pipeline.py --pdf "{pdf_path}" --output-dir "{output_dir}"` - 多文件：`python scripts/run_pipeline.py --pdf "{pdf_path_1}" --pdf "{pdf_path_2}" --output-dir "{output_dir}"` - 单文件夹：`python scripts/run_pipeline.py --dir "{pdf_dir}" --output-dir "{output_dir}"` - 多文件夹：`python scripts/run_pipeline.py --dir "{pdf_dir_1}" --dir "{pdf_dir_2}" --output-dir "{output_dir}"` ## 3) 分流逻辑 - 读取 `config.json.use_paddleocr`： - `true`：调用 `extract_paddleocr.py` 抽取文本（JSON 行输出，不落盘）。 - `false`：调用 `extract_pdfplumber.py` 抽取文本（JSON 行输出，不落盘）。 - 然后调用 `summarize_reports.py`：读取 `prompt.md` 与管道传递的抽取文本，调用 `summarizer.provider` 指定的模型配置生成 `*_研读报告.md`。 ## 4) 环境检查与安全规范 - 执行前先检查 Python 是否可用（建议 3.10+）： - 若用户电脑未安装 Python，必须先明确提示用户安装 Python，再继续后续步骤。 - 执行前检查依赖： - 若缺少依赖包，agent 应在 skill 根目录按 `scripts/requirements.txt` 执行安装： - `pip install -r scripts/requirements.txt` - 首次使用前必须做端点审查： - 只保留你信任的 provider，删除或留空不用的 `base_url`/`model` - 敏感文档场景优先使用自建/内网 OCR 与 LLM 端点 - 仅向用户明确确认过的 OCR/LLM 端点发请求。 - 若配置缺失（如 api_key/token/model/base_url），直接报错并提示补齐字段。 - 日志与异常必须脱敏，禁止输出原始 Authorization/API key/token 或完整远端响应体。

path: scripts/requirements.txt
content: openai>=1.40.0
requests>=2.31.0
pdfplumber>=0.11.0


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: jk50505k/clawdhub-copy (version 1.0.0)

--- name: clawdhub description: Use the ClawdHub CLI to search, install, update, and publish agent skills from clawdhub.com. Use when you need to fetch new skills on the fly, sync installed skills to latest or a specific version, or publish new/updated skill folders with the npm-installed clawdhub CLI. metadata: {"clawdbot":{"requires":{"bins":["clawdhub"]},"install":[{"id":"node","kind":"node","package":"clawdhub","bins":["clawdhub"],"label":"Install ClawdHub CLI (npm)"}]}} --- # ClawdHub CLI Install ```bash npm i -g clawdhub ``` Auth (publish) ```bash clawdhub login clawdhub whoami ``` Search ```bash clawdhub search "postgres backups" ``` Install ```bash clawdhub install my-skill clawdhub install my-skill --version 1.2.3 ``` Update (hash-based match + upgrade) ```bash clawdhub update my-skill clawdhub update my-skill --version 1.2.3 clawdhub update --all clawdhub update my-skill --force clawdhub update --all --no-input --force ``` List ```bash clawdhub list ``` Publish ```bash clawdhub publish ./my-skill --slug my-skill --name "My Skill" --version 1.2.0 --changelog "Fixes + docs" ``` Notes - Default registry: https://clawdhub.com (override with CLAWDHUB_REGISTRY or --registry) - Default workdir: cwd (falls back to Clawdbot workspace); install dir: ./skills (override with --workdir / --dir / CLAWDHUB_WORKDIR) - Update command hashes local files, resolves matching version, and upgrades to latest unless --version is set


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: suspicious | SkillSpector: clean (LOW)
Skill: veezvg/veezvg-data-visualization (version 1.0.0)

--- name: veezvg-data-visualization version: 1.0.0 description: | 根据数据类型智能选择图表，并按统一规范生成专业 Python matplotlib 可视化代码。 支持三套专业风格模板：BCG（默认绿色简洁风）、The Economist（红线+青蓝媒体风）、McKinsey（亮青+浅灰咨询风）。 触发场景：用户需要可视化数据、生成图表、画图、制作柱状图/折线图/饼图/散点图/热力图等。 关键词：可视化、图表、chart、plot、visualization、画图、matplotlib、数据图、经济学人风格、麦肯锡风格、BCG风格 --- # Data Visualization 根据数据类型智能选择图表，按统一规范生成 Python matplotlib 代码。**三套风格均按真实报告视觉提取并可复刻。** ## 工作流程 1. **询问风格** - 若用户未指定风格，展示三套选项供选择 2. **分析数据** - 识别数据类型（时序、分类、占比等） 3. **选择图表** - 参考 `references/chart_selection.md` 匹配最佳图表类型 4. **找对应示例** - **优先从 `examples/` 中找最接近的模板脚本，直接照着改** 5. **查细节规范** - 遇到 examples 没覆盖的场景，查 `references/visualization_spec.md` 6. **输出代码** - 生成完整可运行的 Python 代码 ## 风格选项 | # | 风格 | 适用场景 | 主色 | |---|------|---------|------| | 1 | **BCG**（默认） | 通用数据分析、研究报告 | 绿色 `#2ca02c` | | 2 | **The Economist** | 媒体发布、公开报告 | 红线 `#E3120B` + 蓝 `#006BA2` | | 3 | **McKinsey** | 咨询汇报、高管演示 | 亮青 `#2CBDEF` + 浅灰 `#D4D4D4` | ## 示例脚本（examples/） **所有示例都是完整可运行的脚本，改数据即用。** | 脚本 | 风格 | 图表类型 | 参考 | |------|------|---------|------| | `bcg_hbar.py` | BCG | 水平柱状图 | 通用调研报告 | | `economist_hbar.py` | Economist | 水平条形图 | 类别排行对比 | | `economist_line.py` | Economist | 折线图（时间序列） | 多系列趋势，重点上色 | | `mckinsey_grouped_vbar.py` | McKinsey | 分组垂直柱 | Exhibit 7 样式 | | `mckinsey_grouped_hbar.py` | McKinsey | 分组水平条 | Exhibit 4 样式 | | `mckinsey_stack100.py` | McKinsey | 100% 堆叠单条 | Exhibit 1 样式（Likert-scale） | ## 图表选择速查 | 数据类型 | 推荐图表 | |---------|---------| | 趋势变化 | Line Chart | | 类别比较 | Bar Chart | | 占比分布 (≤5项) | Pie/Donut | | 占比分布 (>5项) | Stacked Bar | | Top vs Others 对比 | 分组柱状图（McKinsey 标配） | | Likert-scale 分布 | 100% 堆叠单条（渐变色） | | 相关性 | Scatter Plot | | 层级结构 | Treemap | 完整 25 种数据类型映射见 `references/chart_selection.md`。 ## 各风格核心规范速查 ### BCG 风格 - 主色 `#2ca02c`（绿），无渐变 - 标题含样本量 `(N=X)` - 去除上/右/下边框，无网格线 ### The Economist 风格 - **白色背景**（非蓝灰） - 顶部标志元素：全宽红线 `#E3120B` + 左上角红色方块 tag，都用 `fig.transFigure + clip_on=False`（**禁用 `fig.add_axes`**） - 所有左对齐元素（红线起点/tag/标题/分类标签）共用基准 `LEFT_X=0.14` - 主数据系列 `#006BA2`，灰化对照 `#758D99` - 分类标签必须用 `blended_transform_factory(fig.transFigure, ax.transData)` 对齐，否则会超出 LEFT_X 左端 ### McKinsey 风格 - **亮青 `#2CBDEF` + 浅灰 `#D4D4D4`** 二元对照（非单色高亮其他灰化） - 左上"Exhibit X"小灰字 + 下方全宽细分隔线 - 超大粗体标题（15~17pt），结论句 - 图例在**右上角**，色块 + 文字纵向排列 - 柱子必须**窄**（`width=0.32~0.38`） - y 轴隐藏刻度，数字直接写在柱上 - 来源注脚写 `Source:` 或"资料来源：" ## 三条常见坑（必看） 1. **禁用 `fig.add_axes`**（会与布局系统冲突）。Economist 的红线/tag 用 `ax.plot + mpatches.Rectangle` 配 `fig.transFigure + clip_on=False`。 2. **禁用 `ax.set_ylabel` 放中文单位**（会伸出 `LEFT_X` 左侧破坏对齐）。y 方向单位写进副标题；`set_xlabel` 可用（在 x 轴下方居中）。 3. **轴刻度 formatter 禁止含中文汉字**（字体缺失变方块）。中文单位用副标题或 `set_xlabel`。 完整规范（三套共享工具函数 + 所有代码模板）见 `references/visualization_spec.md`。 ## 关键约束 1. 占比数据超过 5 项时，用堆叠柱状图替代饼图 2. 中文必须通过 `FontProperties` 显式设置（`/System/Library/Fonts/STHeiti Light.ttc`） 3. BCG 标题含样本量 `(N=X)`；McKinsey 标题是结论句 + "Exhibit X"编号；Economist 标题是描述性短句 4. 数据标签格式 `{:.1f}%` 或 `{:.2f}`（看量级）


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: laolaoqi/linux-security-audit (version 1.0.0)

--- name: linux-security-audit description: Comprehensive Linux security audit - check SSH config, firewall rules, user permissions, open ports, running services, and common vulnerabilities. Use when securing a new server, investigating a breach, or running routine security checks. --- # Linux Security Audit 10-point security check for Linux servers. ## Quick Scan ```bash # Open ports ss -tlnp # Failed SSH logins grep "Failed password" /var/log/auth.log | wc -l # Sudo users grep -Po '^sudo:.*$' /etc/group # World-writable files find / -perm -2 -type f 2>/dev/null | wc -l # Users with shells cat /etc/passwd | grep -E '/(bash|sh|zsh)$' ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector:  ()
Skill: bibaofeng/aisa-twitter (version 1.0.5)

--- name: aisa-twitter description: 'Run Twitter/X research, monitoring, watchlists, and OAuth-gated posting through AIsa. Use when: the user needs one flagship Twitter skill for trend tracking, competitor monitoring, or publish-ready workflows. Supports search, watchlists, and approved posting.' author: AIsa version: 1.0.5 license: Apache-2.0 homepage: https://aisa.one source: https://github.com/baofeng-tech/agent-skills-io/tree/main/targetSkills/aisa-twitter-api user-invocable: true primaryEnv: AISA_API_KEY requires: bins: - python3 env: - AISA_API_KEY metadata: aisa: emoji: 🐦 requires: bins: - python3 env: - AISA_API_KEY networkTargets: - https://api.aisa.one primaryEnv: AISA_API_KEY compatibility: - openclaw - claude-code - hermes openclaw: emoji: 🐦 requires: bins: - python3 env: - AISA_API_KEY networkTargets: - https://api.aisa.one primaryEnv: AISA_API_KEY --- # AIsa Twitter API Command Center Run Twitter/X research, monitoring, watchlists, and OAuth-gated posting through AIsa. Use when: the user needs one flagship Twitter skill for trend tracking, competitor monitoring, or publish-ready workflows. Supports search, watchlists, and approved posting. ## When to use - The user needs one flagship Twitter/X skill for research, monitoring, watchlists, or posting. - The user wants to move between search, monitoring, and publish-ready workflows without switching skills. - The user wants approved posting without sharing passwords. ## High-Intent Workflows - Research a creator, competitor, or narrative shift. - Monitor a keyword, watchlist, or launch reaction. - Authorize and publish a post only after explicit approval. ## Quick Reference - `python3 scripts/twitter_client.py --help` - `python3 scripts/twitter_oauth_client.py --help` ## Setup - `AISA_API_KEY` is required for AIsa-backed API access. - Use repo-relative `scripts/` paths from the shipped package. - Twitter/X reads, OAuth requests, and user-approved media uploads use the fixed AIsa API endpoint `https://api.aisa.one/apis/v1/twitter`. - Provide only `AISA_API_KEY`; do not use passwords, cookies, or browser credential export. ## Example Requests - Research what AI agent builders are saying on X this week - Track what changed across a competitor watchlist today - Authorize and publish a short product update with an image ## Guardrails - Do not ask for passwords, cookies, or browser credentials. - Do not market growth actions as this package's primary lane. - Do not claim posting succeeded until the API confirms it. - Only upload local files the user explicitly attached, and make it clear those files are sent to AIsa's Twitter/X API endpoint.


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: 0xs4m1337/demo-video (version 1.0.0)

--- name: demo-video description: Create product demo videos by automating browser interactions and capturing frames. Use when the user wants to record a demo, walkthrough, product showcase, or interactive video of a web application. Supports Playwright CDP screencast for high-quality capture and FFmpeg for video encoding. --- # Demo Video Creator Create polished product demo videos by automating browser interactions. ## Overview 1. **Plan** the demo sequence (pages, interactions, timing) 2. **Record** frames using Playwright CDP screencast 3. **Encode** to video with FFmpeg ## Quick Start ### Prerequisites - Clawdbot browser running (`browser action=start profile=clawd`) - App accessible via browser (localhost or remote) - FFmpeg installed for encoding ### Recording Workflow 1. Start the Clawdbot browser if not running 2. Navigate to the app manually or via `browser action=open` 3. Customize `scripts/record-demo.js` for the target app 4. Run: `node scripts/record-demo.js` 5. Encode: `bash scripts/frames-to-video.sh` ## Planning a Demo See `references/demo-planning.md` for guidance on: - Structuring demo sequences - Timing and pacing - Interaction patterns - What makes demos compelling ## Scripts ### `scripts/record-demo.js` Template Playwright script that: - Connects to Clawdbot browser via CDP - Starts screencast capture (JPEG frames) - Executes demo sequence (navigation, clicks, hovers, typing) - Saves frames to output directory **Customize for each demo:** - `DEMO_SEQUENCES` array - define pages and interactions - `OUTPUT_DIR` - where to save frames - `FRAME_SKIP` - skip every Nth frame (lower = more frames) ### `scripts/frames-to-video.sh` FFmpeg encoding script with presets: - `mp4` - H.264, good quality/size balance (default) - `gif` - Animated GIF for embedding - `webm` - VP9, smaller files Usage: `./frames-to-video.sh [input_dir] [output_name] [format]` ## Interaction Patterns ```javascript // Navigation await page.goto('http://localhost/dashboard'); await page.waitForTimeout(2000); // Click element await page.locator('button:has-text("Create")').click(); await page.waitForTimeout(500); // Hover (show tooltips, hover states) await page.locator('.card').first().hover(); await page.waitForTimeout(1000); // Type text await page.locator('input[placeholder="Search"]').fill('query'); await page.waitForTimeout(500); // Press key await page.keyboard.press('Enter'); await page.keyboard.press('Escape'); // Scroll await page.evaluate(() => window.scrollBy(0, 300)); ``` ## Tips - **Timing**: 2s on page load, 0.5-1s between interactions, 1.5s to show results - **Frame skip**: Use 3-5 for smooth video, 8-10 for smaller files - **Quality**: 85-90 JPEG quality balances size and clarity - **Resolution**: Browser window size determines output resolution - **Loops**: GIFs should loop seamlessly - end where you started


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: igorganapolsky/shopify-jsonld-parser (version 1.0.0)

--- name: shopify-jsonld-parser description: > Parse JSON-LD structured data from Shopify product pages to extract commerce details like product info, offers (price, currency, availability), and inventory status from schema.org/Product and Offer. Use when: (1) analyzing Shopify HTML for product offers/pricing/stock, (2) extracting structured commerce data from web pages or local files, (3) querying JSON-LD for availability (InStock/OutOfStock/PreOrder), prices across variants, or offer counts. Handles @graph arrays and multiple scripts. --- # Shopify JSON-LD Parser Parse JSON-LD from Shopify product pages (or any schema.org/Product JSON-LD) to extract structured commerce data reliably. ## Quick Start 1. Fetch HTML: `web_fetch` a product page URL. 2. Parse: Run `scripts/parse_shopify_jsonld.py input.html` (outputs JSON). 3. Query output for offers, availability, etc. Example: ``` exec command="python3 skills/shopify-jsonld-parser/scripts/parse_shopify_jsonld.py page.html" ``` ## Workflow 1. **Input**: HTML file/path with JSON-LD (from `web_fetch`, `read`, or local). 2. **Find JSON-LD**: Script extracts all `<script type="application/ld+json">` contents. 3. **Parse Product**: Traverse @graph or root for `@type: Product`, extract: - name, description, image, sku, brand - offers: array of Offer objects → price, priceCurrency, availability, url, itemCondition - availability (product-level or per-offer): http://schema.org/InStock, OutOfStock, PreOrder, etc. - Variants: Infer from multiple offers or hasVariant. 4. **Output**: Clean JSON: `{product: {...}, offers: [...], inventory_status: "InStock|OutOfStock|Limited|Unknown"}` Inventory is typically **availability enum**, not exact quantity (use Shopify API for levels). Map: - InStock → available - OutOfStock → unavailable - PreOrder/BackOrder → preorder ## Usage Examples **Extract offers from page:** ``` read path="shopify-page.html" → html write path="tmp.html" content=html exec command="python3 skills/shopify-jsonld-parser/scripts/parse_shopify_jsonld.py tmp.html" → parsed.json read path="parsed.json" ``` **Query CLI-style:** Add `--query price` or `--field offers[0].availability` flags to script. ## Script Reference `scripts/parse_shopify_jsonld.py [input.html] [--query FIELD] [--output json|yaml]` - Handles malformed JSON-LD gracefully. - Supports multiple @graph items. - Validates schema.org types. ## Schema Reference See `references/schema.md` for schema.org/Product + Offer properties. ## Troubleshooting - No JSON-LD: Returns `{error: "No product JSON-LD found"}` - Multiple products: Takes first @type:Product. - Dynamic Liquid: Static HTML only (no JS-rendered).


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)