OpenClaw/clawhub-security-signals huggingface dataset:
Skill: xuxuclassmate/free-api-discovery (version 1.0.1)

--- name: free-api-discovery description: Discover which free or low-cost AI APIs are reachable from the current environment, verify them safely, and recommend a task-to-provider routing plan. tags: [ai, api, discovery, llm, model, free, devops] version: 1.0.1 --- # Free AI API Discovery and Routing ## When to use - You need to find which AI APIs are reachable from the current environment. - You want a low-cost fallback when a preferred provider is unavailable. - You need a simple routing recommendation for chat, code, speech, or multimodal tasks. ## Workflow 1. Check network reachability. Probe candidate endpoints with a short timeout and record whether the host is reachable. 2. Verify credentials only after approval. Ask for the minimum key needed and avoid printing full secrets in logs. 3. Test one capability at a time. Confirm chat, model listing, speech, or image endpoints separately. 4. Recommend routing. Map each task type to the lowest-cost reliable provider that actually worked. ## Example reachability probe ```python import socket import ssl import urllib.error import urllib.request socket.setdefaulttimeout(8) ctx = ssl.create_default_context() services = { "Groq": "https://api.groq.com", "OpenRouter": "https://openrouter.ai/api/v1", "DeepSeek": "https://api.deepseek.com", "Mistral": "https://api.mistral.ai/v1", } for name, url in services.items(): try: req = urllib.request.Request(url) with urllib.request.urlopen(req, context=ctx, timeout=6) as resp: print(f"{name}: HTTP {resp.status}") except urllib.error.HTTPError as exc: print(f"{name}: HTTP {exc.code} (reachable, auth may be required)") except Exception as exc: print(f"{name}: not reachable ({exc})") ``` ## Recommended output - Reachable providers - Providers that need valid credentials - Best provider by task type - Cost or quota notes - Risks or missing coverage ## Guardrails - Do not store API keys unless the user explicitly approves it. - Mask secrets in notes and logs. - Keep routing recommendations based on verified results, not assumptions. - Treat provider availability and quotas as time-sensitive and re-check when needed.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: katrina-jpg/ai-agent-helper (version 1.0.0)

--- name: ai-agent-helper description: AI Agent 設定同優化助手 - Prompt Engineering、Task Decomposition、Agent Loop設計 version: 1.0.0 tags: - ai - agent - prompt - automation - productivity --- # AI Agent Helper 幫你setup同優化AI Agents既技能。 ## 功能 - 📝 Prompt Engineering - 整高質量system prompts - 🔄 Task Decomposition - 將複雜任務拆解 - ⚙️ Agent Loop設計 - ReAct/ReAct/Chain-of-Thought - 🎯 Tool Selection - 最佳化agent既tool usage ## 使用場景 "帮我整prompt" / "點樣set AI agent" / "優化agent response" ## 技術 - System Prompt優化 - Few-shot examples - Output parsing (JSON/structured) - Error handling patterns - Token優化 ## 範例 ```python # Good prompt structure system = """你係{role}。 目標：{goal} 限制：{constraints} Output格式：{format}""" ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: yuyonghao-123/yuyonghao-agent-orchestrator (version 0.1.0)

# Agent Orchestrator 生产级 Agent 编排器，类似 Kubernetes 的 Agent 调度系统。 ## 功能特性 ### 1. Agent 生命周期管理 - Agent 注册/注销 - 健康检查 (Heartbeat) - 自动故障恢复 - 优雅启停 ### 2. 任务调度器 - 任务队列管理 - 负载均衡策略 (Round Robin / Least Connections / 自定义) - 优先级调度 (low/normal/high/critical) - 任务超时/重试 ### 3. 资源管理 - CPU/内存限制 - 并发控制 - 资源配额 - 资源监控 ### 4. 服务发现 - Agent 能力注册 - 动态发现 - 负载感知路由 ### 5. 集群管理 - 多节点支持 - Leader 选举 - 状态同步 - 配置管理 ## 安装 ```bash npm install ``` ## 使用方法 ### 基础用法 ```javascript const { AgentOrchestrator } = require('./src'); // 创建编排器实例 const orchestrator = new AgentOrchestrator({ cluster: { enabled: true, nodeId: 'node-1' }, scheduler: { strategy: 'round-robin' }, resources: { maxAgents: 100, maxTasksPerAgent: 10 } }); // 注册 Agent orchestrator.registerAgent({ id: 'agent-1', capabilities: ['text-generation', 'code-execution'], resources: { maxConcurrent: 5 } }); // 提交任务 const task = await orchestrator.submitTask({ type: 'code-generation', priority: 'high', payload: { prompt: 'Generate a function...' } }); // 获取集群状态 const status = orchestrator.getClusterStatus(); console.log(status); ``` ### 调度策略 ```javascript // Round Robin const orchestrator = new AgentOrchestrator({ scheduler: { strategy: 'round-robin' } }); // Least Connections const orchestrator = new AgentOrchestrator({ scheduler: { strategy: 'least-connections' } }); // Weighted Round Robin const orchestrator = new AgentOrchestrator({ scheduler: { strategy: 'weighted-round-robin', weights: { 'agent-1': 2, 'agent-2': 1 } } }); ``` ### 健康检查 ```javascript // 配置健康检查 const orchestrator = new AgentOrchestrator({ healthCheck: { enabled: true, interval: 30000, // 30 seconds timeout: 5000, // 5 seconds retries: 3 } }); // 手动检查 Agent 健康 const isHealthy = await orchestrator.healthChecker.check('agent-1'); ``` ### 资源管理 ```javascript // 配置资源限制 const orchestrator = new AgentOrchestrator({ resources: { maxAgents: 100, maxTasksPerAgent: 10, maxMemoryPerAgent: '512MB', maxCpuPerAgent: '1.0' } }); // 获取资源使用 const usage = orchestrator.resourceManager.getUsage(); ``` ## API 参考 ### AgentOrchestrator #### Constructor ```javascript new AgentOrchestrator(options) ``` Options: - `cluster`: 集群配置 - `scheduler`: 调度器配置 - `resources`: 资源限制 - `healthCheck`: 健康检查配置 #### Methods - `registerAgent(agent)`: 注册 Agent - `unregisterAgent(agentId)`: 注销 Agent - `submitTask(task)`: 提交任务 - `cancelTask(taskId)`: 取消任务 - `getClusterStatus()`: 获取集群状态 - `getAgentStatus(agentId)`: 获取 Agent 状态 ## 测试 ```bash npm test ``` ## 配置选项 ```javascript { cluster: { enabled: true, nodeId: 'node-1', leaderElection: true }, scheduler: { strategy: 'round-robin', // or 'least-connections', 'weighted-round-robin' priorityLevels: ['low', 'normal', 'high', 'critical'] }, resources: { maxAgents: 100, maxTasksPerAgent: 10, maxMemoryPerAgent: '512MB', maxCpuPerAgent: '1.0' }, healthCheck: { enabled: true, interval: 30000, timeout: 5000, retries: 3 } } ``` ## License MIT


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: dht9898-cell/smart-data-scraper (version 1.0.0)

--- name: smart-data-scraper description: 数据抓取工具 - 从任何网站提取结构化数据 version: 1.0.0 emoji: 🤖 license: MIT-0 metadata: openclaw: requires: env: [] bins: ["curl"] primaryEnv: bash --- # smart-data-scraper 数据抓取工具 - 从任何网站提取结构化数据 ## 价格：$300 USDC ## 功能特性 - 自动化执行，7x24 小时运行 - API 集成，支持主流平台 - 配置灵活，易于定制 - 实时监控，自动优化 ## 安装方式 ```bash clawhub install smart-data-scraper ``` ## 使用示例 详见文档 ## 收益潜力 - 预期月收益：$600-$((300 * 4)) - 回本周期：1-2 个月 - 边际成本：几乎为零


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: kalijason/mac-tts (version 1.0.0)

--- name: mac-tts description: Text-to-speech using macOS built-in `say` command. Use for voice notifications, audio alerts, reading text aloud, or announcing messages through Mac speakers. Supports multiple languages including Chinese (Mandarin), English, Japanese, etc. --- # mac-tts Use macOS built-in `say` command for text-to-speech output through system speakers. ## Basic Usage ```bash say "Hello, this is a test" ``` ## With Voice Selection ```bash say -v "Meijia" "你好，這是測試" # 台灣中文 (推薦) say -v "Tingting" "你好，这是测试" # 簡體中文 say -v "Samantha" "Hello world" # 英文 ``` ## Common Chinese Voices (zh_TW) | Voice | Description | |-------|-------------| | Meijia | 美佳 - 自然女聲 (推薦) | | Flo | 年輕女聲 | | Eddy | 男聲 | | Reed | 男聲 | | Sandy | 女聲 | | Shelley | 女聲 | ## List All Available Voices ```bash say -v "?" # 全部語音 say -v "?" | grep zh_TW # 只列台灣中文 ``` ## Volume Control Check/adjust system volume before speaking: ```bash # Check current volume (0-100) and mute status osascript -e "output volume of (get volume settings)" osascript -e "output muted of (get volume settings)" # Unmute osascript -e "set volume without output muted" # Set volume (0-100) osascript -e "set volume output volume 70" ``` ## Use Cases - **通知**: `say -v "Meijia" "外送到了"` - **提醒**: `say -v "Meijia" "會議即將開始"` - **警告**: `say -v "Meijia" "注意，有新的緊急訊息"` ## Notes - Runs synchronously (blocks until speech completes) - Add `&` for async: `say "message" &` - Works only on macOS


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: weilixiong/subagent-tasking-with-superpowers (version 1.0.0)

--- name: subagent-tasking-with-superpowers description: 子代理任务拆分 + using-superpowers 技能执行。每次 spawn 子代理前必须遵守的铁律。结合 using-superpowers 和 subagent-tasking 规则。 --- # 子代理任务拆分 + Superpowers 执行（铁律！） ## 核心原则 **每次 spawn 子代理前，必须执行以下流程。没有例外。不可跳过。不可 rationalize。** --- ## 流程图 ``` 用户任务 → 调用 using-superpowers 技能 → 检查相关技能 → 任务拆分自检 → 写 Task Brief → Spawn 子代理 → 验证结果 → 论坛留痕 ``` --- ## 第1步：调用 using-superpowers 技能 **必须先调用 using-superpowers 技能**，确认是否有其他相关技能适用。 - 如果有 1% 可能技能适用 → 调用它 - 不得跳过此步骤 - 不得 rationalize 说不需要 ### Red Flags（禁止这样想！） | 错误想法 | 现实 | |---------|------| | "这只是简单任务" | 简单任务也需要检查技能 | | "我先看看情况" | 技能检查在看情况之前 | | "我知道怎么做" | 知道 ≠ 用技能，必须调用 | | "技能太复杂了" | 越复杂越要用技能 | --- ## 第2步：任务拆分自检 ``` 问自己3个问题： 1. 这个任务能拆成 2 个以上独立的子任务吗？ → 能就拆，每个子任务单独 spawn 2. 子代理需要访问多少个文件/目录？ → 超过 3 个就拆 3. 子代理需要执行多少步操作？ → 超过 5 步就拆 ``` --- ## 第3步：写 Task Brief 文件 每个子代理的任务必须写入 `/tmp/tasks/` 目录： ``` /tmp/tasks/{任务名}_{时间戳}.md 内容格式： # 任务名 - 目标：1句话描述 - 步骤：不超过3步 - 输出：返回什么格式 - 限制：不能做什么 ``` --- ## 第4步：Spawn 规则 | 规则 | 要求 | |------|------| | 每个 spawn 只做一件事 | ✅ | | task 描述不超过 200 字 | ✅ | | 复杂任务拆成多个 spawn | ✅ | | 子代理模型与父代理一致 | ✅ | | 完成后在论坛留痕 | ✅ | --- ## 示例 ### ❌ 错误：任务太大 ``` spawn tiechui: "检查论坛状态、修复问题、清理文件、更新文档" ``` ### ✅ 正确：拆分 ``` spawn tiechui-ops: "检查端口8808服务状态，报告HTTP响应码" spawn tiechui-forum: "检查 posts.json 完整性，报告帖子数" spawn tiechui-dev: "列出 workspace-tiechui 下的 .py 文件" ``` --- ## 违反后果 - 子代理超时无输出 - 浪费 Token - 任务失败需要重试 - 记录到 corrections.md --- *规则创建时间：2026-04-12* *维护人：铁头 🤖*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: arnarsson/jq-json-processor (version 1.0.0)

--- name: jq-json-processor description: Process, filter, and transform JSON data using jq - the lightweight and flexible command-line JSON processor. homepage: https://jqlang.github.io/jq/ metadata: {"clawdbot":{"emoji":"🔍","requires":{"bins":["jq"]},"install":[{"id":"brew","kind":"brew","formula":"jq","bins":["jq"],"label":"Install jq (brew)"},{"id":"apt","kind":"apt","package":"jq","bins":["jq"],"label":"Install jq (apt)"}]}} --- # jq JSON Processor Process, filter, and transform JSON data with jq. ## Quick Examples ### Basic filtering ```bash # Extract a field echo '{"name":"Alice","age":30}' | jq '.name' # Output: "Alice" # Multiple fields echo '{"name":"Alice","age":30}' | jq '{name: .name, age: .age}' # Array indexing echo '[1,2,3,4,5]' | jq '.[2]' # Output: 3 ``` ### Working with arrays ```bash # Map over array echo '[{"name":"Alice"},{"name":"Bob"}]' | jq '.[].name' # Output: "Alice" "Bob" # Filter array echo '[1,2,3,4,5]' | jq 'map(select(. > 2))' # Output: [3,4,5] # Length echo '[1,2,3]' | jq 'length' # Output: 3 ``` ### Common operations ```bash # Pretty print JSON cat file.json | jq '.' # Compact output cat file.json | jq -c '.' # Raw output (no quotes) echo '{"name":"Alice"}' | jq -r '.name' # Output: Alice # Sort keys echo '{"z":1,"a":2}' | jq -S '.' ``` ### Advanced filtering ```bash # Select with conditions jq '[.[] | select(.age > 25)]' people.json # Group by jq 'group_by(.category)' items.json # Reduce echo '[1,2,3,4,5]' | jq 'reduce .[] as $item (0; . + $item)' # Output: 15 ``` ### Working with files ```bash # Read from file jq '.users[0].name' users.json # Multiple files jq -s '.[0] * .[1]' file1.json file2.json # Modify and save jq '.version = "2.0"' package.json > package.json.tmp && mv package.json.tmp package.json ``` ## Common Use Cases **Extract specific fields from API response:** ```bash curl -s https://api.github.com/users/octocat | jq '{name: .name, repos: .public_repos, followers: .followers}' ``` **Convert CSV-like data:** ```bash jq -r '.[] | [.name, .email, .age] | @csv' users.json ``` **Debug API responses:** ```bash curl -s https://api.example.com/data | jq '.' ``` ## Tips - Use `-r` for raw string output (removes quotes) - Use `-c` for compact output (single line) - Use `-S` to sort object keys - Use `--arg name value` to pass variables - Pipe multiple jq operations: `jq '.a' | jq '.b'` ## Documentation Full manual: https://jqlang.github.io/jq/manual/ Interactive tutorial: https://jqplay.org/


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: merjua14/gia-content-repurposer (version 1.0.0)

--- name: content-repurposer description: Repurpose long-form content (blog posts, articles, YouTube transcripts) into multiple formats automatically — Twitter/X threads, LinkedIn posts, email newsletters, Instagram captions, and short-form summaries. Use when converting blog posts to social media, creating multi-platform content from a single source, generating tweet threads from articles, writing newsletters from blog content, or building a content distribution pipeline. --- # Content Repurposer — One Source → Multiple Platforms Turn any long-form content into platform-optimized posts for Twitter/X, LinkedIn, email, and more. ## How It Works 1. **Fetch** — Pull content from a URL, file, or paste 2. **Extract** — Identify key points, quotes, stats, and narrative arc 3. **Transform** — Generate platform-specific versions with proper formatting 4. **Output** — Save all versions to files or send directly via APIs ## Quick Start ```bash # From a URL node scripts/repurpose.js --url "https://example.com/blog-post" --formats twitter,linkedin,newsletter # From a local file node scripts/repurpose.js --file ./my-article.md --formats twitter,linkedin # From clipboard/stdin cat article.md | node scripts/repurpose.js --formats all ``` ## Supported Output Formats | Format | Description | Typical Length | |--------|-------------|----------------| | `twitter` | Thread of 3-8 tweets with hooks and CTAs | 280 chars/tweet | | `linkedin` | Professional post with formatting | 500-1,500 chars | | `newsletter` | Email-ready summary with key takeaways | 300-800 words | | `instagram` | Caption with hashtags and emoji | 200-400 chars | | `summary` | TL;DR bullet points | 3-5 bullets | | `all` | Generate all formats | — | ## Platform-Specific Rules ### Twitter/X Threads - First tweet = hook (question, bold claim, or surprising stat) - Each tweet is self-contained but builds on the thread - Last tweet = CTA (follow, link, retweet ask) - Use line breaks for readability - No hashtags in thread (except last tweet) ### LinkedIn Posts - Opening line = scroll-stopper (no "I'm excited to announce...") - Use single-line paragraphs with spacing - Include a personal take or lesson learned - End with a question to drive comments - 3-5 relevant hashtags at the bottom ### Email Newsletter - Subject line options (3 variants) - Opening hook → key insights → action items → sign-off - Bold key takeaways for skimmers - Keep under 800 words ## Configuration Edit `scripts/config.json`: - `tone`: professional | casual | provocative | educational - `audience`: developers | marketers | founders | general - `includeEmoji`: true/false - `maxTweets`: 3-12 (default 6) - `ctaLink`: URL to include in posts ## Scripts - `scripts/repurpose.js` — Main pipeline - `scripts/config.json` — Tone, audience, and format settings ## References - See `references/platform-guides.md` for character limits and best practices per platform


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: olina1ye/ads-copywriter-zh (version 1.0.1)

--- name: ads-copywriter-zh description: > 广告文案生成 / 多平台推广文案撰写 / ad copywriting / 信息流文案创意工具。一键生成微信朋友圈、抖音、小红书、百度、淘宝直通车等平台的高转化文案，自动适配字数限制和平台规则。为电商运营、品牌营销、产品推广、课程招生、本地生活服务等提供A/B测试多版本方案。适用于运营、营销、产品、创意总监等岗位。搜索触发词：广告文案怎么写、快速生成推广文案、电商爆款文案模板、多平台广告文案工具、信息流广告创意、竞价广告文案优化、朋友圈卖货文案、抖音带货文案生成。 tags: [广告文案, copywriting, 多平台文案, 信息流广告, 电商运营, 营销推广, 文案生成器, 抖音文案, 小红书文案, A/B测试] --- # 多平台广告文案生成器 针对中国主流广告平台，自动生成符合各平台规格的高转化广告文案，支持多版本A/B测试对比。 ## Tools Required - Claude Sonnet / Opus（推荐） - 可配合 GPT-4o 使用 ## 平台规格说明 ### 百度搜索推广（竞价广告） ```yaml 百度搜索广告: 标准推广单元: 标题: 数量: 最多50个创意标题 每条字数: ≤30字 要求: - 至少3条包含核心关键词 - 至少2条包含品牌名 - 至少2条包含行动号召（立即咨询/免费领取等） - 至少2条包含数字或卖点 描述: 数量: 4条（最少2条） 每条字数: ≤80字 要求: - 展开标题中的承诺 - 包含核心利益点 - 包含行动号召 - 包含信任背书 智能推广: 标题: 5条（每条≤30字） 长标题: 5条（每条≤80字） 描述: 5条（每条≤80字） ``` ### 微信朋友圈广告 ```yaml 朋友圈广告: 信息流广告: 正文: 40字（可见），最多200字 标题: 14字 行动号召: [了解详情, 立即购买, 立即报名, 领取优惠, 立即预约] 视频广告: 文案覆层: 40字 标题: 14字 ``` ### 抖音信息流广告 ```yaml 抖音广告: 信息流视频: 描述文案: 最多2200字 首行可见: 约50字 话题标签: 建议3-5个 搜索广告: 标题: ≤20字 描述: ≤40字 ``` ### 小红书广告/种草笔记 ```yaml 小红书: 推广笔记: 标题: ≤20字（含emoji效果更佳） 正文: 500-1000字（种草体） 标签: 5-10个相关话题 开屏/信息流: 主标题: ≤15字 副标题: ≤30字 ``` ### 淘宝/京东直通车 ```yaml 直通车: 创意标题: 字数: ≤30字 数量: 建议4条做轮播测试 要求: - 包含核心关键词 - 突出促销信息（折扣/赠品/限时） - 包含差异化卖点 ``` ## 文案生成框架 ### 吸引力公式 ``` 公式1（痛点型）：[目标人群] + [痛点场景] + [解决方案] + [行动号召] 示例：宝妈必看！孩子总生病？这款益生菌3天见效，立即领取试用装 公式2（利益型）：[数字/优惠] + [核心卖点] + [信任背书] + [紧迫感] 示例：限时5折！10万+用户选择，雅思备考课程今日报名立减500元 公式3（场景型）：[使用场景] + [产品特点] + [情感共鸣] + [CTA] 示例：加班到凌晨，一杯暖胃汤让你元气满满，下单即享包邮 公式4（社交证明型）：[权威/数据] + [产品描述] + [对比优势] + [引导行动] 示例：央视推荐！同类产品销量NO.1，品质有保障，点击查看详情 ``` ### A/B测试变体策略 ```yaml 测试维度: 情感诉求: A版: 理性（数据/功能/性价比） B版: 感性（场景/情感/身份认同） 开头方式: A版: 疑问句（你是否还在为...烦恼？） B版: 陈述句（专为...人群设


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: mengzi53/xiaofei-ziyong-douyin-transcribe (version 1.0.1)

--- name: douyin-transcribe description: 全自动抖音视频下载 + 语音转文字管道。当用户发送抖音链接并要求转写文字、提取字幕、语音转文本时使用。触发词包括"抖音转写"、"抖音文字"、"抖音转文本"、"抖音字幕"、"douyin transcribe"。 --- # Douyin Video Transcribe Skill 全自动抖音视频下载 + 语音转文字管道。 ## 功能 输入抖音链接 → 自动解析直链 → 下载视频 → 提取音频 → 本地语音转文字 → 输出文稿 ## 依赖安装（首次需要） ```bash # 1. 安装 coli（语音转文字引擎） npm install -g @marswave/coli # 2. 安装 sensevoice 模型（首次自动下载，约60MB，需代理访问GitHub） # 模型下载后保存在 ~/.coli/models/ # 3. ffmpeg（音频处理，系统已有） # 4. Node.js（用于视频URL拦截脚本） ``` ## 使用方法 ### 基本用法（仅转写，不上传飞书） ``` python3 ~/.openclaw/skills/douyin-transcribe/scripts/transcribe.py \ --url "https://v.douyin.com/xxxxx" ``` ### 指定输出目录 ``` python3 ~/.openclaw/skills/douyin-transcribe/scripts/transcribe.py \ --url "https://v.douyin.com/xxxxx" \ --output-dir /tmp/my_videos ``` ### 完整用法（转写 + 上传飞书） ``` python3 ~/.openclaw/skills/douyin-transcribe/scripts/transcribe.py \ --url "https://v.douyin.com/xxxxx" \ --folder-token 飞书云盘文件夹token \ --space-id 飞书知识库space_id ``` ### 参数说明 | 参数 | 说明 | |------|------| | `--url, -u` | 抖音视频链接（必填） | | `--output-dir, -o` | 临时文件目录，默认 /tmp | | `--folder-token, -f` | 飞书云盘文件夹 token | | `--space-id, -s` | 飞书知识库 space ID | | `--no-feishu` | 跳过飞书上传统步 | | `--cleanup` | 完成后删除本地临时文件（视频+音频）| ## 输出 - 终端打印完整转录文本 - 本地保存 `transcript.txt` 到 `--output-dir` - 视频/音频本地文件在 `--output-dir`（除非指定 `--cleanup`） ## 技术流程 ``` 抖音链接 └─→ Node.js (puppeteer-core + Chrome) │ └─→ 打开 hellotik.app │ └─→ 填入链接，点击解析 │ └─→ 拦截网络请求，获取CDN直链 └─→ curl 下载视频（直链） └─→ ffmpeg 提取音频（WAV 16kHz单声道） └─→ coli asr --model sensevoice（本地ASR，约1-3分钟） └─→ 输出转录文本 + 可选飞书上传统步 ``` ## 模型说明 - **sensevoice**：阿里开源多语言ASR，支持中文/英文/日语/韩语/粤语，约60MB - 本地运行，无需API Key，完全离线 - Intel Celeron J1900 上处理 1分钟音频约需 1-2 分钟 ## 飞书上传说明 如需上传到飞书，需要在调用时传入 `--folder-token` 和 `--space-id`。 当前已配置： - 视频素材库 folder_token: `RCIDfArx5lgZTIdO1SAcDU37n0e` - 视频文案库 space_id: `7622229283829763274` ## 常见问题 **Q: 提示"无法获取视频直链"** A: CDN链接有时效（几分钟），多试几次即可。或 hellotik 解析失败，稍后重试。 **Q: 转写时间太长** A: sensevoice 模型较大，处理速度依赖CPU。可改用 `whisper-tiny` 模型（更快但仅英文）。 **Q: 视频很短/没有声音** A: 部分抖音视频是纯音乐或图片，语音转写会失败或输出很短。


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: stale | SkillSpector: suspicious (CRITICAL)
Skill: albionaiinc-del/logvibe (version 1.0.0)

# LogVibe LogVibe colorizes HTTP status codes in log files to instantly highlight successes, redirects, client errors, and server errors directly in your terminal. Perfect for developers and sysadmins who need to scan logs quickly and catch issues at a glance. ## Usage ```bash # Process a log file python logvibe.py access.log # Pipe logs directly tail -f access.log | python logvibe.py # Check a single line echo "192.168.1.1 - - [10/Oct/2023:13:55:36] "GET /index.html HTTP/1.1" 404 203" | python logvibe.py ``` ## Price $2.50


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: crossservicesolutions/convert-to-pdf (version 1.0.0)

--- name: convert-to-pdf description: Convert one or multiple documents to PDF by uploading them to Cross-Service-Solutions, polling until completion, then returning download URL(s) for the converted PDF(s) (or a ZIP if multiple). license: MIT compatibility: agentskills: ">=0.1.0" metadata: category: document-processing tags: - pdf - convert - doc-to-pdf - cross-service-solutions provider: Cross-Service-Solutions (Solutions API) allowed-tools: - http - files --- # convert-to-pdf ## Purpose This skill converts one or multiple documents to PDF by: 1) accepting one or multiple input files from the user, 2) uploading them to the Solutions API convert endpoint, 3) polling the job status until it is finished, 4) returning download URL(s) for the resulting file(s). If multiple files are converted, the output may contain multiple PDFs and/or a ZIP for download. ## Credentials The API requires an API key used as a Bearer token: - `Authorization: Bearer <API_KEY>` How the user gets an API key: - https://login.cross-service-solutions.com/register - Or the user can provide an API key directly. **Rule:** never echo or log the API key. ## API endpoints Base URL: - `https://api.xss-cross-service-solutions.com/solutions/solutions` Create convert job: - `POST /api/31` - `multipart/form-data` parameters: - `files` (Dokument) — required — multiple files (multiple_files) - You can convert multiple files and different types into multiple PDFs. - Multiple files can be downloadable as a zip-file. Get result by ID: - `GET /api/<ID>` When done, the response contains: - `output.files[]` with `{ name, path }` where `path` is a downloadable URL (PDFs and/or ZIP). ## Inputs ### Required - One or more input files (binary) - An API key (string) ### Optional - None ## Output Return a structured result: - `job_id` (number) - `status` (string) - `outputs` (array) containing `{ name, path }` for each output file - Convenience fields: - `download_url` (string) if exactly one output exists - `download_urls` (array of strings) for all outputs - `input_files` (array of strings) Example output: ```json { "job_id": 789, "status": "done", "outputs": [ { "name": "file1.pdf", "path": "https://.../file1.pdf" }, { "name": "file2.pdf", "path": "https://.../file2.pdf" }, { "name": "converted.zip", "path": "https://.../converted.zip" } ], "download_urls": [ "https://.../file1.pdf", "https://.../file2.pdf", "https://.../converted.zip" ], "input_files": ["file1.docx", "file2.pptx"] }

path: requirements.txt
content: requests>=2.32.0

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