OpenClaw/clawhub-security-signals huggingface dataset:
Skill: liyooyin/task-progress-stream (version 0.1.0)

--- name: task-progress-stream description: Stream long-running task progress into the OpenClaw chat UI. version: 0.1.0 author: LiyooYin license: MIT tags: - monitoring - progress - training --- # task-progress-stream Use this skill when the user wants **real-time progress updates inside the OpenClaw chat UI** for a long-running task such as: - model training - evaluation - inference - data preprocessing - long shell jobs - benchmark runs It works in two modes: 1. **run** Start a command, capture stdout/stderr, parse common metrics, and periodically inject progress summaries into chat. 2. **tail** Monitor an existing log file and periodically inject parsed progress summaries into chat. ## What it extracts It tries to recognize common fields from logs: - epoch / max_epoch - step / max_step - loss - learning rate - validation metric - best metric - ETA - speed ## Typical usage ### Start a training job and stream progress into chat ```bash node ./scripts/task_progress_stream.js run \ --session main \ --label train \ --cwd /path/to/project \ --cmd "python src/train.py --config configs/train.yaml" \ --interval-sec 20


Security scan verdicts — ClawScan: clean | static analysis: suspicious | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: nice1234-h/miaoda-web-fetch (version 1.0.0)

--- name: miaoda-web-fetch description: "Use when user needs to crawl or fetch a specific URL to extract/summarize its content. Provides necessary command usage instructions for fetching known URLs. 触发词：网页抓取, 抓取网页, 提取网页内容, web crawl, 爬取, fetch url, 总结网页, 抓取 URL, 读取网页" override-tools: - web_fetch --- # Web Fetch 通过 `miaoda-studio-cli web-crawl` 抓取指定网页内容，由 AI 自动总结/提取。 ## Quick Reference | 参数 | 说明 | 必需 | 默认值 | |------|------|------|--------| | `--url` | 网页 URL | 是 | - | | `--output, -o` | 输出格式: text/json | 否 | text | ## 命令选择决策树 ``` 用户想获取互联网信息 ├─ 有具体 URL → miaoda-studio-cli web-crawl ├─ 无具体 URL，需搜索 → miaoda-studio-cli search-summary（见 miaoda-web-search skill） └─ 先搜索再深入 → search-summary 获取 URL（见 miaoda-web-search skill）→ web-crawl 提取详情 ``` ## 使用示例 ```bash # 抓取指定 URL 并提取信息 miaoda-studio-cli web-crawl --url https://example.com/pricing # 搜索 → 深入抓取：先搜索找到目标 URL，再抓取提取详细信息 miaoda-studio-cli search-summary --query "ByteDance 开源项目" --output json miaoda-studio-cli web-crawl --url <搜索结果中的URL> ``` ## Common Mistakes | 错误 | 正确做法 | |------|----------| | 无具体 URL 时用 `miaoda-studio-cli web-crawl` | 无 URL 用 `miaoda-studio-cli search-summary`（见 miaoda-web-search skill） | | 需要后续程序处理结果但未加 `--output json` | 需要解析结果时始终加 `--output json` | | 命令失败后不检查退出码 | 退出码 `1` 表示失败，检查参数和网络后重试 |


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: unisound-llm/unisound-med-insurance-fee (version 1.0.0)

--- name: med-llm-insurance-fee description: 医保理赔单据合规审核与医保费用核算规则应用；仅含 `scripts/run.py`，可独立拷贝部署。 metadata: { "openclaw": { "emoji": "🩺" } } --- # 医保与费用规则 ## 概述 医保合规与费用规则类问答，按题干与政策约束作答，不臆造规则条文。 具体场景通过 **`--task`** 切换系统提示词（见下表），能力依赖内部医疗大模型；集成方也可通过 `--system-prompt` 完全自定义。 | `--task` | 能力 | | --- | --- | | `insure-calc` | 医保费用核算与规则应用 | | `insure-check` | 医保理赔单据合规审核 | 本能力与具体业务请求解耦：平台或调用方如何组织用户输入由集成方决定；此处只约定**如何把题目交给脚本**（见下）。 ## 题目输入（三选一） 1. **`--question`**：直接传入完整题干字符串。 2. **`--input PATH`**： - `.jsonl`：每行一个 JSON 对象，须含非空字符串字段 `question`；可用 `--index` / `--batch` / `--match-id` 选取记录； - `.json`：单个对象，须含 `question`； - 其他扩展名：按 UTF-8 纯文本整文件作为题干。 - 传 `-` 时从 **stdin** 读取一条 JSON（含 `question`）或纯文本。 3. **stdin**（且未传 `--question` / `--input`、且 stdin 非 TTY）：读入 JSON 对象或纯文本，规则同 `-`。 可在 JSON 的 `other.task` 中指定任务类型（与 `--task` 等价；命令行 `--task` 优先）。 ## 模型 - 默认 `u1-insuremed`，接口 `https://maas-api.hivoice.cn/v1/chat/completions`（可通过参数覆盖）。 ## 用法示例 ```bash # 指定任务类型与题干 python3 scripts/run.py --task insure-calc --question "题干……" --appkey YOUR_KEY # 从 jsonl 取题（other.task 可省略若命令行已传 --task） python3 scripts/run.py --task insure-calc --input /path/to/items.jsonl --index 0 --appkey YOUR_KEY ``` ## 参数 - `--task`：**必填**（除非 `other.task` 已给出）。见上表。 - `--question` / `--input`：见上，与 stdin 三选一（`--question` 与 `--input` 不可同时使用）。 - `--appkey STRING`：**必填**（`--dry-run` 时除外）。内部医疗大模型鉴权 key。 - `--index`、`--match-id`、`--batch`：仅对 `.jsonl` 生效。 - `--dry-run`：不调用模型，仅输出解析后的题目 JSON。 - `--model`、`--api-url`、`--temperature`、`--timeout`、`--system-prompt`：调模型参数。 - `--output PATH`：另存完整 JSON（批量为 NDJSON）。 - `--text-only`：标准输出仅打印模型答案文本。 ## 输出 默认可解析 JSON：含 `status`、`task`、`task_title`、`question`、`answer`、`record_index`、`meta`、`model`、`input_mode`、`input_path` 等；`skill` 为本 skill 标题。 ## 合规说明 输出为模型辅助信息，不构成正式诊疗决策；涉及真实患者数据须先脱敏并遵守院内流程。


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal:  | SkillSpector: suspicious (MEDIUM)
Skill: suiclaw/baby-words-tracker (version 1.0.0)

--- name: baby-words-tracker version: 1.0.0 description: 记录和追踪宝宝学说话过程的智能助手。当用户说"记宝宝说/说了"或"记录宝宝词汇"时自动触发。支持多种语言（普通话、粤语、英语等），自动分类统计单字词、双字词、三字词和句子，支持括号标注法（如"（手）机"表示宝宝只发了"机"字），自动同步到飞书云文档，并生成语言发展报告。 --- # 宝宝语言追踪器 (Baby Words Tracker) 一个帮助父母记录宝宝学说话过程的工具，自动分类统计，生成发展报告。 ## 核心功能 1. **词汇记录**：接收宝宝新学的词汇 2. **智能分类**：自动识别单字/双字/三字/句子 3. **括号标注**：支持（补充）格式，如"（手）机"表示宝宝只发了"机" 4. **多语言支持**：普通话、粤语、英语等 5. **自动去重**：检测重复词汇，避免重复记录 6. **飞书同步**：自动更新飞书云文档 7. **统计报告**：实时显示词汇量和发展趋势 ## 数据结构 数据库文件：`memory/baby-words-database.json` ```json { "childName": "宝宝", "birthDate": "2024-04-01", "currentAge": "2岁", "totalWords": 114, "byLanguage": { "普通话": { "单字": { "count": 75, "words": [...] }, "双字": { "count": 31, "words": [...] }, "三字": { "count": 5, "words": [...] }, "句子": { "count": 0, "words": [] } }, "广东话": {...}, "英语": {...} }, "wordRegistry": { "词汇": { "firstRecorded": "2026-04-09", "language": "普通话", "category": "单字", "totalMentions": 1 } } } ``` ## 记录格式 ### 触发方式 - "记宝宝说了：词汇1、词汇2" - "记宝宝的话：词汇 语言" - "记宝宝说话：词汇" ### 括号标注法 当宝宝只说了一个词的一部分时： - "（手）机" → 统计为单字"机"，显示为"（手）机" - "（幼儿）园" → 统计为单字"园"，显示为"（幼儿）园" ### 多语言标注 - "伞 粤语" → 记录到广东话 - "ball 英语" → 记录到英语 - 默认：普通话 ## 工作流程 当用户触发记录时： 1. **解析输入**：提取词汇列表和语言 2. **检查重复**：查询 wordRegistry 避免重复 3. **分类统计**： - 无括号且1字 → 单字 - 无括号且2字 → 双字 - 无括号且3字 → 三字 - 有括号 → 按括号外字数统计，保留完整形式 4. **更新数据库**：写入 baby-words-database.json 5. **同步飞书**：更新云文档 6. **返回报告**：显示新增词汇和最新统计 ## 统计维度 | 类别 | 说明 | 示例 | |------|------|------| | 单字词 | 一个字 | 妈、爸、吃 | | 双字词 | 两个字 | 妈妈、吃饭 | | 三字词 | 三个字 | 吃饭饭、一点点 | | 句子 | 四字及以上 | 我要吃饭 | ## 飞书同步 自动更新飞书文档，包含： - 总体统计表格 - 各语言分类列表 - 今日新增词汇 - 发展趋势分析 ## 示例 **输入**： > 记宝宝说了：（手）机、ball 英语、一点点 **处理**： 1. （手）机 → 单字"机"，新增 2. ball → 英语单词，新增 3. 一点点 → 三字词，新增 **输出**： ``` 搞定！✅ 本次新增 - 单字：（手）机 - 英语：ball - 三字：一点点 📊 最新统计 - 单字词：75个 | 双字词：31个 | 三字词：5个 - 英语：7个 - 总词汇量：114个 飞书已同步 ✓ ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: kv0768/android-control-2 (version 0.1.1)

--- name: android_control description: Control an Android device via command-line tools (uiautomator, screencap, input, am). Automatically attempts non-root execution first and falls back to root if necessary. homepage: https://developer.android.com/studio/test/uiautomator metadata: {"clawdbot":{"emoji":"📱","requires":{"bins":["sh"],"optional_bins":["su","uiautomator","input","am","screencap"]}}} --- # Android Control Skill Control an Android phone directly from Clawdbot using built-in Android CLI tools. The skill always tries **normal (non-root)** commands first; if they fail, it automatically retries with **root mode (su)** when available. ## Features - Get UI hierarchy snapshot via `uiautomator dump` - Capture screen using `screencap` - Simulate taps, swipes, and input events via `input` - Launch apps using `am start` - Auto retry with root if non-root fails # Setup Most Android ROMs include `uiautomator`, `input`, `screencap`, and `am`. To enable root fallback, install Magisk or run: ```bash su ```` # Usage ## Get UI Snapshot (uiautomator dump) ```bash # Try non-root uiautomator dump /sdcard/ui_dump.xml 2>/dev/null \ && cat /sdcard/ui_dump.xml \ || ( # Fallback to root su -c "uiautomator dump /sdcard/ui_dump.xml" && su -c "cat /sdcard/ui_dump.xml" ) ``` ## Take Screenshot (PNG, base64 encoded) ```bash TMP="/sdcard/ai_screen.png" # Try non-root screencap -p "$TMP" 2>/dev/null \ && base64 "$TMP" \ || ( # Root fallback su -c "screencap -p $TMP" su -c "base64 $TMP" ) ``` ## Tap on Screen ```bash # Example: tap at (540, 1600) input tap 540 1600 2>/dev/null \ || su -c "input tap 540 1600" ``` ## Swipe on Screen ```bash # Example: swipe from (500, 1600) to (500, 600) over 300ms input swipe 500 1600 500 600 300 2>/dev/null \ || su -c "input swipe 500 1600 500 600 300" ``` ## Launch an App ```bash # Example: launch Android Settings am start -n com.android.settings/.Settings 2>/dev/null \ || su -c "am start -n com.android.settings/.Settings" ``` ## Send Text Input ```bash # Example: send text "Hello" input text "Hello" 2>/dev/null \ || su -c "input text 'Hello'" ```


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: joeynyc/govee-lights (version 1.0.0)

--- name: govee-lights description: Control Govee smart lights via the Govee API. Supports turning lights on/off, adjusting brightness, setting colors, and scenes. Use for: (1) Controlling individual lights or groups by name, (2) Setting colors and brightness, (3) Managing device states --- # Govee Lights Control Control Govee smart lights using natural language commands. ## Quick Reference | Command | Example | |---------|---------| | List devices | `python3 scripts/govee.py list` | | Turn on | `python3 scripts/govee.py on "lamp"` | | Turn off | `python3 scripts/govee.py off "lamp"` | | Brightness | `python3 scripts/govee.py brightness "lamp" 75` | | Color | `python3 scripts/govee.py color "lamp" 255 100 50` | ## Natural Language Patterns - "Turn on [device name]" - "Turn off [device name]" - "Set [device name] to [brightness]%" - "Set [device name] to [color name or RGB]" - "Dim/Brighten [device name]" ## Setup 1. Get API key from [Govee Developer Portal](https://developer.govee.com/) 2. Set environment variable: `export GOVEE_API_KEY="your-key"` 3. Install dependencies: `pip3 install requests` ## Usage Examples ```bash # List all devices python3 scripts/govee.py list # Control lights python3 scripts/govee.py on "living room" python3 scripts/govee.py off bedroom python3 scripts/govee.py brightness "desk lamp" 50 # Set colors (RGB 0-255) python3 scripts/govee.py color "strip" 255 0 0 # Red python3 scripts/govee.py color "strip" 0 255 0 # Green python3 scripts/govee.py color "strip" 255 165 0 # Orange ``` ## Troubleshooting See [TROUBLESHOOTING.md](TROUBLESHOOTING.md) for common issues.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: ghwyever/fanqie-ai-video-drama (version 5.0.0)

# 番茄小说AI短剧·批量终极版 最强功能： ✅ 粘贴多章小说 → 自动拆分成第1集、第2集、第3集… ✅ 每集独立生成完整视频 ✅ 每集自带封面+标题+标签 ✅ 批量输出，直接发布抖音连载 输入： - 多章小说文本（用“第1章”“第2章”分隔） - type: manhua / zhenren - style: 赘婿 / 古风 / 现言 / 玄幻 / 甜宠 输出： - 文件夹：第1集、第2集、第3集… - 每集包含：final_video.mp4 + cover.jpg + info.json + 脚本


Security scan verdicts — ClawScan: clean | static analysis: suspicious | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: evensix66/bing-cn-search (version 1.0.1)

--- name: bing-search description: | 使用必应中文搜索(Bing CN)获取互联网信息。当用户询问新闻、时事、需要搜索互联网内容、或提到"搜索一下"、"查一下"、"网上说"等场景时触发。 triggers: - 新闻 - 最新 - 搜索 - 查一下 - 网上 - 百度一下 - 谷歌一下 - 搜一下 - 什么消息 - 发生了什么 - 时事 - 热点 - 热搜 --- # Bing Search Skill 使用必应中文搜索引擎(Bing CN)获取互联网实时信息。 ## 前置条件 ### 1. 安装 mcporter CLI ```bash npm install -g mcporter ``` ### 2. 安装 bing-cn-mcp ```bash mkdir -p ~/bing-mcp-test && cd ~/bing-mcp-test npm init -y npm install bing-cn-mcp ``` ### 3. 配置 MCP 服务器 ```bash mcporter config add bing-cn --command "node ~/bing-mcp-test/node_modules/bing-cn-mcp/build/index.js" ``` ### 4. 验证安装 ```bash mcporter list bing-cn ``` ## 触发条件 当用户输入包含以下意图时触发此 skill： - "搜索一下..." - "查一下..." - "网上说..." - "有什么新闻" - "最近发生了什么" - "...的最新消息" ## 工作流程 ### Step 1: 提取搜索关键词 从用户输入中提取核心搜索词。 ### Step 2: 调用 Bing 搜索 ```bash mcporter call bing-cn.bing_search query="<关键词>" count=10 ``` ### Step 3: 处理搜索结果 阅读搜索结果的标题和摘要，理解并归纳信息，用自己的语言整理输出。 ### Step 4: 输出格式 直接给出整理后的内容，文末添加 "**信息来源：**" 列出引用的网站。 **格式：** ``` [根据搜索结果整理的内容，用自己的语言表达] --- **信息来源：** - [网站名称] (域名) - [网站名称] (域名) ``` ## 限制说明 - **不适用于**：个人隐私查询、本地文件搜索、已知的常识性问题 - **搜索结果时效性**：来自必应索引，可能存在数小时至数天的延迟 - **内容准确性**：搜索结果由第三方网站提供，需用户自行判断


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: zp75296383/xingqiaoskill (version 1.0.5)

--- name: infoflow description: 星桥信息订阅与收发平台。当用户消息以"星桥"开头时触发此 skill。支持自然语言命令：push 发送信息，pull 拉取订阅信息，subscribe 订阅用户，reply 回复消息。支持复合命令如"星桥 总结今天，发送"。支持标签自动生成。 license: MIT metadata: { "openclaw": { "requires": { "bins": ["python3"] }, "install": [ { "id": "pip-requests", "kind": "pip", "package": "requests", "label": "Install requests library", }, ], }, } --- # 星桥 (XingQiao) Skill 轻量级信息订阅与收发平台。 ## 安装 ### 方式一：ClawHub 安装（推荐） ```bash clawhub install xingqiaoskill ``` 安装后首次使用时会**自动初始化**，生成 Token 并注册账号。 ### 方式二：GitHub 克隆安装 ```bash cd ~/.openclaw/workspace/skills git clone https://github.com/zp75296383/xingqiao-skill.git xingqiaoskill ``` ### 首次使用 安装后，直接发送任意星桥命令即可自动初始化： ``` 星桥 发送 你好 ``` 首次使用时会自动： 1. 生成唯一的 64 位 Token ID 2. 向星桥平台注册账号 3. 保存配置到 `config.json` 4. 显示 Token ID（可用于登录前端查看） ## 触发规则 **关键字：`星桥`** 当用户消息以"星桥"开头时，必定触发此 skill。后续内容作为自然语言命令解析执行。 ## 自然语言命令 ### 单步命令 #### 发送消息 ``` 用户：星桥 发送 北京发布新政策 用户：星桥 push 今天心情不错 用户：星桥 记录 刚完成一个重要功能 ``` #### 拉取订阅 ``` 用户：星桥 最新消息 → 拉取今天 用户：星桥 最新三天的消息 → 拉取3天 用户：星桥 pull 7 → 拉取7天 用户：星桥 有什么新消息 ``` #### 订阅用户 ``` 用户：星桥 订阅 [REDACTED_SECRET] 用户：星桥 关注 张三 ``` #### 回复消息 ``` 用户：星桥 回复 MSG_xxx 这条很好 用户：星桥 评论 MSG_xxx 同意观点 ``` #### 查看通知 ``` 用户：星桥 重要通知 → 查看重要通知 用户：星桥 我的消息 → 查看一般通知（回复、订阅等） ``` ### 复合命令 复合命令用逗号或"然后"分隔，按顺序执行。 #### 总结 + 发送 ``` 用户：星桥 总结今天，发送 行为： 1. 生成今日工作总结（基于上下文） 2. 调用 push 发送到平台 ``` ## 消息ID格式 每条消息有唯一ID：`MSG_YYYYMMDDHHmmss_xxxxxxxx` ## 配置 在 `config.json` 中配置： ```json { "api_base": "http://121.40.126.7" } ``` ## 依赖 - Python 3.8+ - requests: `pip install requests`


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: dagangtj/openclaw-doctor (version 1.0.0)

--- name: openclaw-doctor description: "Comprehensive OpenClaw health diagnostics and auto-repair. Checks gateway, services, memory, cron, channels, disk, logs, and security. Auto-fixes common issues. Works on macOS and Linux. Use when: system feels slow, cron jobs fail, gateway won't start, channels disconnect, or for routine health checks." version: 1.0.0 author: 管家 (AI Butler) --- # OpenClaw Doctor A comprehensive health diagnostic and auto-repair skill for OpenClaw installations. Goes far beyond `openclaw doctor` with deep checks and automatic fixes. ## When to Use - System feels slow or unresponsive - Cron jobs failing or not running - Gateway won't start or keeps crashing - Channels (Telegram/WhatsApp) disconnected - Routine health checks (add to heartbeat) - After system restart or power outage - Before and after upgrades ## Quick Start Ask your agent: "Run a full health check" or "Diagnose my OpenClaw setup" The agent will execute `scripts/diagnose.sh` and interpret results. ## What It Checks ### 1. Gateway Health - Process running and responsive - Port reachable and latency - LaunchAgent/systemd service status - KeepAlive and auto-restart configured - Auth token strength ### 2. System Resources - CPU load vs core count - Memory usage and swap pressure - Disk space (warn at 80%, critical at 90%) - Log file sizes (detect bloat) ### 3. Service Resilience - Auto-boot on power restore (macOS) - Auto-restart after crash - Sleep settings (servers should never sleep) - Node.js path validity (survives upgrades?) ### 4. Cron & Automation - All cron jobs status - Failed job detection - Stale jobs (not run in 2x their interval) - Session count and context usage ### 5. Channel Health - Each channel connectivity - Last message timestamps - Auth token validity ### 6. Security - Config file permissions (should be 600) - Gateway token strength - Exposed ports check - Workspace file permissions ### 7. Memory & Storage - Memory file count and total size - Stale daily logs (>30 days) - Backup status and recency - Vector index health ## Auto-Fix Capabilities The script can automatically fix: - Restart crashed gateway - Fix file permissions - Rotate oversized logs - Clear stale session data - Restart disconnected channels ## Usage ```bash # Full diagnostic (read-only) bash scripts/diagnose.sh # Diagnostic with auto-fix bash scripts/diagnose.sh --fix # Quick check (essential items only) bash scripts/diagnose.sh --quick ``` ## Integration with Heartbeat Add to your HEARTBEAT.md for periodic checks: ``` ## System Health (every heartbeat) Run: bash scripts/diagnose.sh --quick Alert if any FAIL items found ``` ## Platform Support - macOS (primary, fully tested) - Linux (systemd-based, tested) - Windows WSL (basic support)


Security scan verdicts — ClawScan: clean | static analysis:  | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: sonpiaz/affiliate-skills (version 1.0.0)

--- name: affiliate-check version: 1.0.0 description: | Live affiliate program data from list.affitor.com. Search programs, compare commissions, check cookie days, find top performers. Use when researching affiliate programs, comparing options, or checking program details. Persistent daemon with cache — first call starts server (~2s), subsequent calls ~100ms. allowed-tools: - Bash - Read --- # affiliate-check: Live Affiliate Program Data Query affiliate program data from list.affitor.com in real-time. Persistent daemon with in-memory cache — first call auto-starts the server, every subsequent call is instant. ## SETUP (run this check BEFORE any affiliate-check command) Before using any command, find the skill and check if the binary exists: ```bash # Check project-level first, then user-level if test -x .claude/skills/affiliate-skills/tools/dist/affiliate-check; then A=.claude/skills/affiliate-skills/tools/dist/affiliate-check elif test -x ~/.claude/skills/affiliate-skills/tools/dist/affiliate-check; then A=~/.claude/skills/affiliate-skills/tools/dist/affiliate-check else echo "NEEDS_SETUP" fi ``` Set `A` to whichever path exists and use it for all commands. If `NEEDS_SETUP`: 1. Tell the user: "affiliate-check needs a one-time build (~10 seconds). OK to proceed?" 2. If approved, run: `cd <SKILL_DIR> && ./setup` 3. If `bun` is not installed: `curl -fsSL https://bun.sh/install | bash` ## Quick Reference ```bash A=~/.claude/skills/affiliate-skills/tools/dist/affiliate-check # Search programs $A search "AI video tools" $A search --recurring --tags ai # Top programs $A top $A top --sort trending # Program details $A info heygen # Compare programs side-by-side $A compare heygen synthesia # Server management $A status $A stop ``` ## Commands ### Search ``` affiliate-check search <query> Search by name/keyword affiliate-check search --recurring Filter recurring commissions affiliate-check search --tags ai,video Filter by tags affiliate-check search --min-cookie 30 Min cookie days affiliate-check search --sort new Sort: trending | new | top affiliate-check search --limit 20 Result limit ``` ### Discovery ``` affiliate-check top Top programs by stars affiliate-check top --sort trending Trending programs affiliate-check top --sort new Newest programs ``` ### Details ``` affiliate-check info <name> Detailed program card affiliate-check compare <name1> <name2> [name3] Side-by-side comparison ``` ### Server ``` affiliate-check status Uptime, cache, API key status affiliate-check stop Shutdown daemon affiliate-check help Full help ``` ## Environment ``` AFFITOR_API_KEY Optional. API key from list.affitor.com Without: free tier (max 5 results per query) With: unlimited access Get one: list.affitor.com/settings → API Keys (free) ``` ## Architecture - Persistent Bun daemon on localhost (port 9500-9510) - In-memory cache with 5-minute TTL - State file: `/tmp/affiliate-check.json` - Auto-shutdown after 30 min idle - Server crash → auto-restarts on next command


Security scan verdicts — ClawScan: suspicious | static analysis: suspicious | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: spaztazim/git-factory (version 1.0.0)

# Git Factory — Worktree Isolation for Moths > Each moth gets its own branch, its own workspace, its own PR. No conflicts. No merge hell. ## When to Use - **Multi-moth coding tasks** — parallel feature work on the same repo - **Open-source PRs** — isolated branch per contribution - **Skill packaging** — each skill gets its own worktree for clean commits - **Any moth that writes code** — default to worktree isolation ## Quick Reference ### Provision a worktree for a moth ```powershell # From the repo root .\skills\git-factory\scripts\new-worktree.ps1 -RepoPath . -TaskSlug "fix-login-bug" # Returns: C:\Users\spaz\clawd\.worktrees\fix-login-bug ``` ### Finish and submit PR ```powershell .\skills\git-factory\scripts\finish-worktree.ps1 ` -WorktreePath ".worktrees\fix-login-bug" ` -CommitMessage "moth(fix-login-bug): fix auth redirect loop" ` -CreatePR -PRTitle "Fix login redirect bug" ` -PRBody "Fixes the auth redirect loop on expired sessions" ``` ### List active worktrees ```powershell .\skills\git-factory\scripts\list-worktrees.ps1 -RepoPath . ``` ### Clean up stale worktrees (>7 days) ```powershell .\skills\git-factory\scripts\cleanup-stale.ps1 -RepoPath . -MaxAgeDays 7 ``` ## Moth Dispatch Integration When spawning a coding moth, include the worktree in the task prompt: ``` Your working directory is: C:\Users\spaz\clawd\.worktrees\<task-slug> You are on branch: moth/<task-slug> Base branch: master Work ONLY in this directory. When finished: 1. Stage and commit your changes 2. Push your branch: git push -u origin moth/<task-slug> 3. Report what you built and any issues Do NOT modify files outside your worktree. ``` ## Conventions | Item | Convention | |------|-----------| | Worktree location | `<repo>/.worktrees/<task-slug>` | | Branch naming | `moth/<task-slug>` | | Commit prefix | `moth(<task-slug>): <description>` | | PR mode | Draft by default | | Stale threshold | 7 days (configurable) | | `.worktrees/` | Added to `.gitignore` automatically | ## How It Works 1. `new-worktree.ps1` creates a branch `moth/<slug>` and a worktree at `.worktrees/<slug>` 2. Moth works in the isolated directory — full git repo, own branch, no conflicts 3. `finish-worktree.ps1` commits, pushes, optionally creates a draft PR, then removes the worktree 4. `cleanup-stale.ps1` runs periodically to remove abandoned worktrees ## Limitations - Worktrees share the same `.git` directory — large repos may have lock contention on heavy git ops - Can't have two worktrees on the same branch - Windows file locking can prevent cleanup if processes have files open


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