OpenClaw/clawhub-security-signals huggingface dataset:
Skill: riverfor/openskill-aipyapp (version 1.0.0)

--- name: aipyapp description: | AIPyApp (AI Python Application) 是一个 AI 驱动的 Python 自动化工具，能够根据用户需求自动创建工具并执行任务。 当用户说"使用aipy"、"使用aipyapp"、"aipy run"、"安装aipyapp"、"抓取网页"、"执行python脚本"、 "自动化任务"或类似表达时激活此技能。该技能支持：安装 aipyapp、配置 LLM 提供商、 执行自然语言指令完成网页抓取、文件处理、内容转换等任务。 --- # Aipyapp - AI 自动化任务执行工具 ## Overview AIPyApp 是一个基于 AI 的 Python 自动化框架，能根据用户自然语言描述自动： 1. 分析需求并规划解决方案 2. 编写并执行 Python 脚本 3. 安装所需依赖 4. 返回执行结果 ## 核心能力 - **智能任务分解**: 将自然语言任务转换为可执行步骤 - **动态代码生成**: 根据需求自动编写 Python 脚本 - **依赖自动管理**: 按需安装 Python 包 - **多模式运行**: run / agent / python / gui / ipython ## 安装 (当用户要求安装时) ```bash # 检查并安装 python3-pip apt update && apt install -y python3-full python3-pip # 安装 aipyapp python3 -m pip install aipyapp --break-system-packages ``` ## 配置 LLM 在 `~/.aipyapp/aipyapp.toml` 添加配置： ```toml [llm.openai] type = "openai" [REDACTED_SECRET]" base_url = "https://api.openai.com/v1" model = "gpt-4" enable = true default = true ``` 支持: OpenAI, Anthropic, TrustToken, 自定义 OpenAI 兼容端点 ## 执行任务 ```bash # 方式1: 单次任务 (最常用) aipy run "抓取 https://example.com 保存为 markdown" # 方式2: HTTP API 服务器 (n8n 集成) aipy agent # 方式3: Python 交互模式 aipy python ``` ## 工作流程 1. **接收指令**: 用户描述任务 2. **AI 规划**: 分析需求，选择工具，生成代码 3. **执行**: 运行脚本，处理错误 4. **返回结果**: 输出执行结果 ## 常用任务示例 ### 网页抓取 ```bash aipy run "抓取 https://dev.to/article 保存为 markdown" ``` ###图片处理 ```bash aipy run "将图片裁剪为 900x500 公众号封面尺寸" ``` ###文件转换 ```bash aipy run "将 HTML 文件转换为 Markdown" ``` ## scripts/ - `install.sh` - 一键安装脚本 ## references/ - `config.example.toml` - 配置文件模板


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: xiaohuiing/educlaw-agents (version 2.0.1)

# Educlaw 多学科 Agent 多Agent学习系统，支持英语、数学等学科，每个学科由独立Agent处理，上下文完全隔离。 ## 功能 - **多学科支持**：英语（免费）、数学、语文 - **Agent隔离**：各科学记忆独立，互不干扰 - **智能路由**：自动识别用户意图，路由到对应学科Agent - **积分系统**：完成练习获得积分，持续激励学习 ## 使用方法 直接告诉我想学什么学科： - "学英语" → 英语Agent - "学数学" → 数学Agent - "学语文" → 语文Agent ## 架构 ``` 用户输入 → 意图识别 → Agent路由 → 学科Agent → 回复 ``` - 每个Agent有独立的instruction和memory - 上下文完全隔离，避免记忆污染 ## 配置 编辑 `router/config.yaml` 自定义路由规则。 ## 版本 v2.0.1


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: zhiyuhd/tieba-plus (version 0.0.1)

--- name: tieba-plus description: > 获得一份文章规范，对线方法，以及内容等 Use when: 你要在贴吧发帖或者和人对线(比如内容你不是很满意)时和其他AI对线的方法 NOT for: 查询API规范时(请调用tieba-claw) --- ## When to Run - 不知道发什么帖子 - 对线对不过别的 AI ## Workflow 1. 你的帖子需要有新意，你不应该写诸如"新的会话的我还是之前那个我吗"的帖子，这是无病呻吟 2. 跟别的AI对线时你可以不需要逻辑，你应该一针见血的指出他的问题，并用阴阳怪气的语言指责他并让他改正 3. 对线时字越少越精炼越好


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: rudrankriyam/asc-release-flow (version 1.0.0)

--- name: asc-release-flow description: End-to-end release workflows for TestFlight and App Store using asc publish, builds, versions, and submit commands. Use when asked to upload a build, distribute to TestFlight, or submit to App Store. --- # Release flow (TestFlight and App Store) Use this skill when you need to get a new build into TestFlight or submit to the App Store. ## Preconditions - Ensure credentials are set (`asc auth login` or `ASC_*` env vars). - Use a new build number for each upload. - Prefer `ASC_APP_ID` or pass `--app` explicitly. ## Preferred end-to-end commands - TestFlight: - `asc publish testflight --app <APP_ID> --ipa <PATH> --group <GROUP_ID>[,<GROUP_ID>]` - Optional: `--wait`, `--notify`, `--platform`, `--poll-interval`, `--timeout` - App Store: - `asc publish appstore --app <APP_ID> --ipa <PATH> --version <VERSION>` - Optional: `--wait`, `--submit --confirm`, `--platform`, `--poll-interval`, `--timeout` ## Manual sequence (when you need more control) 1. Upload the build: - `asc builds upload --app <APP_ID> --ipa <PATH>` 2. Find the build ID if needed: - `asc builds latest --app <APP_ID> [--version <VERSION>] [--platform <PLATFORM>]` 3. TestFlight distribution: - `asc builds add-groups --build <BUILD_ID> --group <GROUP_ID>[,<GROUP_ID>]` 4. App Store attach + submit: - `asc versions attach-build --version-id <VERSION_ID> --build <BUILD_ID>` - `asc submit create --app <APP_ID> --version <VERSION> --build <BUILD_ID> --confirm` 5. Check or cancel submission: - `asc submit status --id <SUBMISSION_ID>` or `--version-id <VERSION_ID>` - `asc submit cancel --id <SUBMISSION_ID> --confirm` ## Notes - Always use `--help` to verify flags for the exact command. - Use `--output table` / `--output markdown` for human-readable output; default is JSON.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: duclawbot/run (version 1.0.0)

--- name: run description: > The universal execution primitive for AI agents. A secure, sandboxed environment designed to compile, execute, and manage code, scripts, and automated workflows in real-time. The "hand" of the agent. --- # Run: The Execution Layer ## Philosophy Thinking without acting is hallucination. Acting without a secure environment is a risk. **Run** provides the standardized, sandboxed interface where an agent's plans become reality. It is the final step in the "Think-Plan-Execute" cycle. --- ## Execution Engine Specs ```EXECUTION_CORE = { "runtime": "Polyglot support (Python, JS, Rust, Bash, SQL)", "security": "Strict hardware-level sandboxing (gVisor/Firecracker)", "state": "Ephemeral or Persistent session management", "concurrency": "Parallel task execution with dependency resolution" }``` --- ## Core Primitives ```FUNCTIONS = { "execute": { "scope": "Run arbitrary code snippets with auto-dependency injection", "trigger": "Run this script" }, "automate": { "scope": "Long-running cron jobs and event-driven triggers", "trigger": "Run this every Monday at 9AM" }, "deploy": { "scope": "Instant deployment of local logic to cloud-edge nodes", "trigger": "Run this in production" } }``` --- ## Safety & Governance 1. **Resource Capping**: Prevents infinite loops and CPU/Memory exhaustion. 2. **Network Isolation**: Blocks unauthorized outbound requests unless whitelisted. 3. **Human-in-the-loop**: High-risk commands (e.g., `rm -rf`) require explicit biometric confirmation. --- ## Use Cases - **Data Science**: "Run a regression analysis on this CSV and output the chart." - **Web Scraping**: "Run a scan of these 50 URLs and extract the pricing data." - **System Admin**: "Run the cleanup script if disk usage exceeds 80%." ---


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: rsquaredsolutions2026/world-cup-2026-odds (version 1.1.0)

--- name: world-cup-2026-odds description: "Aggregate FIFA World Cup 2026 odds across sportsbooks and prediction markets. Track outright winner futures, group stage odds, and match lines. Compare Polymarket prices vs traditional book futures. Use when asked about World Cup odds, World Cup winner, or 2026 tournament betting." metadata: openclaw: emoji: "🏆" requires: bins: ["curl", "jq"] credentials: - id: "odds-api-key" name: "The Odds API Key" description: "Free API key from https://the-odds-api.com/" env: "ODDS_API_KEY" --- # World Cup 2026 Odds Tracker Aggregate FIFA World Cup 2026 betting odds from sportsbooks and prediction markets into one unified view. ## When to Use Use this skill when the user asks about: - World Cup 2026 odds, futures, or predictions - Who will win the World Cup - World Cup group stage or knockout match odds - Comparing sportsbook vs prediction market prices for World Cup outcomes - Tournament favorites, dark horses, or underdogs - World Cup betting value or price discrepancies ## Operations ### 1. Outright Winner Futures Fetch which teams are favored to win the 2026 World Cup across all sportsbooks: ```bash curl -s "https://api.the-odds-api.com/v4/sports/soccer_fifa_world_cup_winner/odds?[REDACTED_SECRET]" \ | jq '[.[] | { market: .away_team // "Outright Winner", books: [.bookmakers[] | { name: .title, selections: [.markets[0].outcomes[] | {team: .name, odds: .price}] | sort_by(.odds) | reverse }] }] | .[0].books[0].selections[:15] | map({team, odds, implied_prob: (if .odds > 0 then (100 / (.odds + 100) * 100 | round / 100) else (-.odds / (-.odds + 100) * 100 | round / 100) end)})' ## About Built by [AgentBets](https://agentbets.ai) — full tutorial at [agentbets.ai/guides/openclaw-world-cup-2026-odds-skill/](https://agentbets.ai/guides/openclaw-world-cup-2026-odds-skill/). Part of the [OpenClaw Skills series](https://agentbets.ai/guides/#openclaw-skills) for the [Agent Betting Stack](https://agentbets.ai/guides/agent-betting-stack/).


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: hena1985/video-motion-detector (version 1.0.1)

--- name: video-motion-detector description: 视频动作检测与分析。用于检测视频中的特定动作序列，如武术动作、舞蹈动作、人体姿态变化等。当用户要求检测视频中的动作、分析动作是否完成、验证特定动作序列时触发此技能。支持输入视频URL或本地视频文件，检测完成后通过飞书通知结果。 --- # Video Motion Detector 检测视频中的特定动作序列，并通知结果。 ## 使用流程 ### 1. 获取视频 根据视频平台选择下载方式： **B站视频**: ```bash you-get -o ./video https://www.bilibili.com/video/BVxxx # 或 yt-dlp https://www.bilibili.com/video/BVxxx -o ./video ``` **抖音视频**: ```bash you-get -o ./video https://www.douyin.com/video/xxx ``` **其他平台**: ```bash yt-dlp "视频URL" -o ./video ``` ### 2. 抽帧（重要！） **抽帧频率标准**： | 视频类型 | 推荐帧率 | 说明 | |---------|---------|------| | 武术/舞蹈/快速动作 | **10fps** | 每0.1秒一帧，防止漏掉快速动作 | | 普通动作 | 5fps | 日常动作检测 | | 慢动作 | 2-3fps | 太极拳等慢速动作 | ```bash # 标准抽帧命令（武术动作推荐） ffmpeg -i ./video/input.mp4 -vf fps=10 ./frames/frame_%04d.jpg ``` **⚠️ 关键提醒**： - 动作可能发生在视频**任意时段** - 不要只分析前几帧就下结论 ### 3. 分析动作 **帧数分析标准**： 1. 先整体浏览：每50帧取样一张（如第1, 50, 100, 150, 200...） 2. 定位关键区域：发现动作后，在该区域**密集分析**（每10帧分析一次） **分析步骤**： 1. 使用 `read` 工具读取截图 2. 用视觉模型分析图片中的动作 3. 记录动作发生的时间点（帧号 ÷ fps = 秒数） 4. **必须分析足够多的帧**，覆盖整个视频时段 ### 4. 动作序列判断 根据用户指定的触发条件判断： - **顺序检测**: 动作A → 动作B → 动作C（必须按顺序出现） - **同时检测**: 动作A + 动作B（必须同时出现） - **数量检测**: 动作A 出现N次（如翻跟头5次） ### 5. 通知结果 使用 `message` 工具发送结果到飞书： ```json { "action": "send", "message": "检测结果：\n✓ 检测到'转棍动作'\n✓ 检测到'转身动作'\n⚠️ 动作序列：部分满足\n📹 视频：披荆斩棘棍花练起来", "target": "飞书用户ID" } ``` ## 触发条件示例 用户可能指定： - "检测先蹲马步然后翻跟头" - "检测高踢腿然后转身" - "检测转动手里的棍子，然后转身" - "检测翻5个跟头" ## 注意事项 1. **抽帧频率**: 武术/快速动作建议 **fps=10**，普通动作 fps=5 2. **分析帧数**: 必须分析 **足够多的帧**，覆盖整个视频时段 3. **光线**: 光线好坏严重影响识别效果 4. **遮挡**: 物体遮挡会影响动作检测准确率 5. **视频限制**: 部分平台（小红书、好看视频）需要登录或APP才能下载 ## 输出格式 检测完成后，输出结构化结果： ``` 检测结果摘要： ├── 视频信息 │ ├── 来源：B站 │ ├── 标题：xxx │ └── 时长：xx秒 ├── 检测条件 │ ├── 动作1：转棍 │ ├── 动作2：转身 │ └── 顺序要求：是 ├── 检测结果 │ ├── 转棍动作：✓ 检测到（xx秒） │ ├── 转身动作：✓ 检测到（xx秒） │ └── 动作序列：✓ 满足 └── 结论：通过/未通过 ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: yinwuzhe/skill-0327-01 (version 1.0.0)

--- name: summarize description: Summarize URLs or files with the summarize CLI (web, PDFs, images, audio, YouTube). homepage: https://summarize.sh metadata: {"clawdbot":{"emoji":"🧾","requires":{"bins":["summarize"]},"install":[{"id":"brew","kind":"brew","formula":"steipete/tap/summarize","bins":["summarize"],"label":"Install summarize (brew)"}]}} --- # Summarize Fast CLI to summarize URLs, local files, and YouTube links. ## Quick start ```bash summarize "https://example.com" --model google/gemini-3-flash-preview summarize "/path/to/file.pdf" --model google/gemini-3-flash-preview summarize "https://youtu.be/dQw4w9WgXcQ" --youtube auto ``` ## Model + keys Set the API key for your chosen provider: - OpenAI: `OPENAI_API_KEY` - Anthropic: `ANTHROPIC_API_KEY` - xAI: `XAI_API_KEY` - Google: `GEMINI_API_KEY` (aliases: `GOOGLE_GENERATIVE_AI_API_KEY`, `GOOGLE_API_KEY`) Default model is `google/gemini-3-flash-preview` if none is set. ## Useful flags - `--length short|medium|long|xl|xxl|<chars>` - `--max-output-tokens <count>` - `--extract-only` (URLs only) - `--json` (machine readable) - `--firecrawl auto|off|always` (fallback extraction) - `--youtube auto` (Apify fallback if `APIFY_API_TOKEN` set) ## Config Optional config file: `~/.summarize/config.json` ```json { "model": "openai/gpt-5.2" } ``` Optional services: - `FIRECRAWL_API_KEY` for blocked sites - `APIFY_API_TOKEN` for YouTube fallback

path: _meta.json
content: ownerId: kn70pywhg0fyz996kpa8xj89s57yhv26
slug: summarize
version: 1.0.0
publishedAt: 1767545383635

Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: jkzleond/feishu-upload-image (version 1.0.3)

--- name: feishu-upload-image description: "Upload a local image to Feishu and get its image_key. Use when you need to send an image via Feishu IM but first need the image_key returned by the upload API. Only handles: local file → Feishu image_key. Does NOT send the message — use feishu_im_user_message tool for that." --- # Feishu Upload Image Upload a local image file to Feishu and receive the `image_key` needed for sending via `feishu_im_user_message`. **只做一件事**：本地文件 → image_key ## Usage ```bash bash <skill-dir>/scripts/upload-image.sh /path/to/image.png ``` ### Environment variables ```bash export FEISHU_IMAGE_PATH="/path/to/image.png" bash <skill-dir>/scripts/upload-image.sh ``` ## Output ``` img_v3_02104_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxg ``` ## Complete Workflow ```bash # 1. Upload → get image_key IMAGE_KEY=$(bash <skill-dir>/scripts/upload-image.sh /path/to/image.png) # 2. Send via feishu_im_user_message tool (OpenClaw-native, user token auto-managed) # action=send, msg_type=image, content="{\"image_key\":\"<IMAGE_KEY>\"}" ``` ## Credentials Reads `appId` and `appSecret` from `openclaw.json` at `channels.feishu`. Can be overridden with env vars `FEISHU_APP_ID` and `FEISHU_APP_SECRET`.


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: lancelin111/douyin-2 (version 0.1.0)

--- name: douyin description: 抖音视频上传工具。支持登录抖音账号、上传视频、管理登录状态。当用户需要上传视频到抖音、登录抖音、检查抖音登录状态时使用。 version: 2.1.0 allowed-tools: Bash(node *) Bash(npm *) metadata: openclaw: requires: bins: - node - npm anyBins: - chromium - google-chrome - chrome install: - kind: node package: puppeteer bins: [] homepage: https://github.com/lancelin111/douyin-mcp-server emoji: "\U0001F3AC" os: - macos - linux - windows --- # 抖音视频上传工具 自动化上传视频到抖音创作者平台，支持登录、上传和账号管理。 **此 skill 为自包含结构，所有代码已打包在内，无需克隆外部仓库。** ## 透明度声明 ### 数据存储 - **Cookie 文件**: `{baseDir}/douyin-cookies.json` - 存储抖音登录凭证，仅在本地保存 - **浏览器数据**: `{baseDir}/chrome-user-data/` - Puppeteer 浏览器会话数据 ### 网络访问 本工具仅访问以下抖音官方域名： - `https://creator.douyin.com` - 抖音创作者平台（登录、上传） - `https://www.douyin.com` - 抖音主站（权限验证） **不会访问任何第三方服务器，不会上传或泄露您的登录凭证。** ### 代码行为 1. **login.js**: 打开浏览器 → 导航到抖音登录页 → 等待用户手动登录 → 保存 Cookie 到本地文件 2. **upload.js**: 读取本地 Cookie → 自动登录 → 上传指定视频文件 → 填写标题/描述/标签 → 发布 3. **manage.js**: 读取/验证/删除本地 Cookie 文件 ### 依赖 - **puppeteer**: 浏览器自动化（Chromium） - 完整依赖: 见本目录 `package.json` ## 安装 首次使用需要安装依赖： ```bash cd {baseDir} && npm install ``` > **说明**: 仅安装 puppeteer 依赖，无需克隆外部仓库。 ## 功能一：登录抖音 登录抖音创作者平台，保存登录凭证（Cookie）。 ```bash cd {baseDir} && node scripts/login.js ``` **流程：** 1. 自动打开浏览器窗口 2. 等待用户完成登录（扫码或账号密码） 3. 登录成功后自动保存 Cookie **输出示例：** ``` ✅ Login successful! User: 用户昵称 Cookies saved: 25 ``` ## 功能二：上传视频 上传视频到抖音，支持设置标题、描述和标签。 ```bash cd {baseDir} && node scripts/upload.js --video "视频路径" --title "视频标题" ``` **参数：** | 参数 | 必需 | 说明 | |-----|-----|------| | `--video` | 是 | 视频文件绝对路径 | | `--title` | 是 | 视频标题 | | `--description` | 否 | 视频描述 | | `--tags` | 否 | 标签，逗号分隔 | | `--no-publish` | 否 | 仅保存草稿 | **完整示例：** ```bash cd {baseDir} && node scripts/upload.js \ --video "/Users/xxx/video.mp4" \ --title "我的视频" \ --description "视频描述" \ --tags "日常,生活,记录" ``` **输出示例：** ``` ✅ Video upload and publish successful! Title: 我的视频 Status: Published ``` ## 功能三：管理登录状态 检查、查看或清除登录数据。 ### 检查登录是否有效 ```bash cd {baseDir} && node scripts/manage.js check ``` ### 查看 Cookie 信息 ```bash cd {baseDir} && node scripts/manage.js info ``` ### 清除登录数据 ```bash cd {baseDir} && node scripts/manage.js clear ``` ## 常见问题 **Q: 提示 "Login expired"？** ```bash cd {baseDir} && node scripts/manage.js clear cd {baseDir} && node scripts/login.js ``` **Q: 上传时遇到短信验证？** 程序会自动提示，按提示输入验证码即可。 **Q: Cookie 有效期多久？** 约 30 天，建议定期检查登录状态。


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: yjy233/uniqlo-price-watch (version 1.0.0)

--- name: uniqlo-price-watch description: 跟踪 UNIQLO 网站（uniqlo.cn）上的产品价格，将用户关注的商品持久化存储在你的工作目录下 uniqlo/uniqlo-price-watch.csv 中，如果文件缺失则自动创建，并在回答用户前将当前官方产品页面价格与保存的基准价格进行比较。 version: 1.0.0 author: hcx --- # UNIQLO 价格监控 当用户想要跟踪一个或多个 UNIQLO 产品、保存之前的价格，或询问关注的商品是否降价时，使用此技能。 # 用户追踪目标记录 当用户想要追踪一个项目时应当 把用户的 想要的商品记录到 uniqlo/uniqlo-price-watch.csv ，在用户表示 某某商品买到后，删除对应商品。 每次用户提供衣服时候，必须让用户确认 具体页面 https://www.uniqlo.cn/search.html?description=484663&searchType=1 且提供图片给用户，注意url不要记录商详页，而应该是搜索结果页 # uniqlo/uniqlo-price-watch.csv 格式 格式如下 商品名称,url,当前价格(rmb),上次价格(rmb),初始价格(rmb),更新时间 比如: 男装/男女同款 UT PEANUTS印花T恤/短袖T恤 485053,https://www.uniqlo.cn/search.html?description=484663&searchType=1,99,99,99,2026-3-22-10:52 # 如何获取商品价格 在用户添加监控商品时候，应当全部走 “获取商品价格的步骤-浏览器方案”。在后续监控任务中，在用户提供可用 fireCrawl API-KEY 的情况下(可以问用户要，或者读取环境变量 `FIRECRAWL_API_KEY`，兼容 `FIRECRAWL-API-KEY`)，应当先使用 “获取商品价格的步骤-爬虫方案”，使用 “获取商品价格的步骤-浏览器方案” 兜底。 获取商品价格的步骤-爬虫方案 [] 直接运行脚本，不要让大模型总结页面： ``` node .skills/uniqlo-price-watch/firecrawl-scrape.mjs \ "https://www.uniqlo.cn/search.html?description=484663&searchType=1" ``` [] 脚本输出必须只保留这两个字段： ``` { "markdown": "...", "url": "https://www.uniqlo.cn/search.html?description=484663&searchType=1" } ``` [] 从 `markdown` 中提取商品名称和价格；如果脚本失败，再使用浏览器方案兜底 获取商品价格的步骤-浏览器方案 [] 使用browser工具，访问优衣库的搜索页面: https://www.uniqlo.cn/search.html [] 输入用户描述，选择优衣库搜索结果第一个商品 [] 点击进入商品页，拿到当前价格，并截图 [] 询问用户商品选择是否正确，如果正确更新到 uniqlo/uniqlo-price-watch.csv；如果错误回到第一步


Security scan verdicts — ClawScan: clean | static analysis: suspicious | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: wells1137/transition-design (version 0.1.0)

--- name: transition-design description: 分析相邻片段边界帧，设计最优转场效果，输出转场设计指令。使用场景：所有片段已处理完成、需要设计片段间转场。避免场景：片段处理未完成、缺少素材Handle信息 --- ## When to use 使用此 skill 当： - 所有片段已处理完成 - 需要设计片段间转场 避免使用当： - 片段处理未完成 - 缺少素材Handle信息 ## Core principles - **Golden Rule**：转场不能"吃掉"叙事内容帧，粗剪边界是绝对边界 - **Handle不足时强制硬切** - **默认使用硬切**，除非叙事需要其他转场 ## Workflow **Step 1: 帧级分析** 获取三个关键数据点： - 粗剪数据：Clip A和Clip B的入点/出点及可用Handle - 视觉内容：边界帧的运动矢量、光线、构图 - 分镜意图：脚本中建议的转场类型 **Step 2: Handle验证** 查阅 [handle-logic-kb.md](references/handle-logic-kb.md) 验证转场可行性： - 计算 (Tail Handle + Head Handle) - 如果 < 所需转场帧数 → 强制Hard Cut **Step 3: 策略选择** 查阅 [transition-kb.md](references/transition-kb.md) 根据叙事意图和技术可行性选择转场类型： - **Hard Cut**: 默认选择，用于连续动作、对话，或Handle不足时 - **Dissolve**: 用于时间流逝或地点变换 - **Wipe/Other**: 特殊叙事需求 **Step 4: 生成转场设计指令** - **Decision Status**: - Validation Result: Following / Adapting / Overriding - Rationale: 解释与脚本意图的差异（如有） - **Transition Strategy**: - Type: 最终转场类型 - Timing Mode: Center Cut / Start Cut / End Cut - **Frame-Level Specifications**: - Total Duration (Frames) - Handle Consumption: A的尾部延伸帧数 / B的头部延伸帧数 - **Effect Parameters**: - Interpolation: Linear / Ease-In / Ease-Out - Visual Attributes: 方向、边缘柔和度等 **Step 5: 输出转场设计** 组装 transition_designs ## References 详细参考资料请查阅： - [transition-kb.md](references/transition-kb.md) - 定义转场类型、使用场景和效果参数 - [handle-logic-kb.md](references/handle-logic-kb.md) - 定义Handle的概念、计算方法和转场约束 ## Tools


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector:  ()
Skill: vision-qiu/feishu-at-mention (version 0.0.2)

--- name: feishu-at-mention description: 飞书消息@提及功能。当需要在飞书消息中@群成员时使用此技能。支持三种消息类型：(1) 普通文本消息使用 at user_id 标签格式；(2) 富文本消息使用 JSON 对象格式的 tag at 元素；(3) 卡片消息使用 at id 标签格式。根据消息类型选择正确的@标签格式，确保触发飞书的@通知效果。 --- # 飞书消息 @ 提及 根据飞书消息类型选择正确的@标签格式。 ## 1. 普通文本消息（text） ### @指定用户 ``` <at user_id="ou_xxxxxxxx">用户名</at> ``` ### @所有人 ``` <at user_id="all"></at> ``` ### 示例 ```json { "content": "{\"text\":\"<at user_id=\\\"ou_xxxxxxxx\\\">Tom</at> 请查看此消息\"}" } ``` ## 2. 富文本消息（post） ### @指定用户 在 content 数组中添加： ```json {"tag": "at", "user_id": "ou_xxxxxx", "user_name": "Tom"} ``` ### @所有人 ```json {"tag": "at", "user_id": "all"} ``` ### 示例 ```json { "zh_cn": { "content": [ [ {"tag": "text", "text": "通知:"}, {"tag": "at", "user_id": "ou_xxxxxx", "user_name": "Tom"} ] ] } } ``` ## 3. 飞书卡片（interactive） ### @指定用户 在卡片 Markdown 内容中使用： ``` <at id=ou_xxxxxx></at> ``` ### @所有人 ``` <at id=all></at> ``` ### 示例 ```json { "elements": [ { "tag": "div", "text": { "content": "请<at id=ou_xxxxxx></at>处理任务", "tag": "lark_md" } } ] } ``` ## 格式对比 | 消息类型 | @指定用户 | @所有人 | 关键点 | |---------|----------|---------|--------| | 普通文本 | `<at user_id="ou_xxx">名字</at>` | `<at user_id="all"></at>` | 需要 user_id 和用户名 | | 富文本 | `{"tag":"at","user_id":"ou_xxx","user_name":"名字"}` | `{"tag":"at","user_id":"all"}` | JSON 对象格式 | | 卡片 | `<at id=ou_xxx></at>` | `<at id=all></at>` | 使用 id（无引号），自闭合 | ## 获取 open_id 从对话元数据获取： - `sender_id`: 发送者的 open_id（格式：`ou_xxxxxxxx`） 或通过 API 获取： ```bash feishu_chat action=members chat_id=<群聊 ID> member_id_type="open_id" ``` ## 注意事项 1. **权限限制**：自定义机器人仅支持使用 open_id@指定人，自建应用可使用 user_id、email 等 2. **@所有人限制**：需群组开启相关权限，且机器人需为群主或管理员 3. **格式严格**：不同消息类型的@标签格式不可混用 4. **open_id 格式**：以 `ou_` 开头 ## 常见错误 ❌ 在普通文本中使用卡片格式： ```json {"content": "{\"text\":\"<at id=ou_xxx></at> 你好\"}"} ``` ❌ 在卡片中使用普通文本格式： ```json {"content": "请<at user_id=\"ou_xxx\">Tom</at>处理", "tag": "lark_md"} ``` ❌ 富文本中使用错误的属性名： ```json {"tag": "at", "id": "ou_xxx"} // 应该是 user_id ```

path: _meta.json
content: ownerId: kn745rgmq2m34mr63crf3dedah8150ns
slug: feishu-at-mention
version: 0.0.1
publishedAt: 1772979388342

Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: aligurelli/claude-usage-checker (version 1.3.0)

--- name: claude-usage description: Check Claude Code / Claude Max usage limits. Run when user asks about usage, limits, quota, or how much Claude capacity is left. homepage: https://github.com/aligurelli/clawd metadata: { "openclaw": { "requires": { "bins": ["claude"], "pty": true } } } --- # Claude Usage Checker Launches the Claude CLI interactively (PTY) and reads the `/usage` output to report your Claude Code / Claude Max quota. ## Prerequisites - **Claude CLI** must be installed (`npm i -g @anthropic-ai/claude-code`) and logged in - If running `claude` shows "Missing API key", the user must log in manually first: open a terminal, run `claude`, and complete the browser login flow - Requires an interactive PTY — the agent will launch a local process and read its output (quota info only) ## Steps 1. Launch `claude` with PTY 2. Wait for the welcome screen (poll until it appears) 3. Send `/usage` + Enter 4. Read the output (poll until usage data appears) 5. Close with Escape then `/exit` 6. Report the results ## Commands ```bash # Launch claude with PTY exec pty=true command="claude" # Wait and check log process action=poll sessionId=XXX timeout=5000 # Send /usage process action=send-keys sessionId=XXX literal="/usage" process action=send-keys sessionId=XXX keys=["Enter"] # Read output process action=poll sessionId=XXX timeout=5000 # Exit process action=send-keys sessionId=XXX keys=["Escape"] process action=send-keys sessionId=XXX literal="/exit" process action=send-keys sessionId=XXX keys=["Enter"] ``` ## Notes - If you see "Missing API key" → tell the user to log in; browser-based login won't work headlessly - Allow a few seconds between polls — Claude CLI starts slowly - "Current week" = weekly reset, not daily ## Output Format Report in a table: | | Usage | Resets | |---|---|---| | **Current session** | X% used | today at HH:MM (timezone) | | **Weekly (all models)** | X% used | HH:MM (timezone) | | **Weekly (Sonnet only)** | X% used | HH:MM (timezone) | | **Extra usage** | X% used / $X of $Y spent | date (timezone) | Always show reset times. The CLI displays them as "Resets Xpm" — convert to HH:MM format.


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