OpenClaw/clawhub-security-signals huggingface dataset:
Skill: 1coos/1coos-calendar-cn (version 1.0.2)

--- name: 1coos-calendar-cn description: 查询中国传统日历/黄历信息。TRIGGER when user asks about Chinese calendar, lunar date, 农历, 黄历, 万年历, 节气, 五行， 宜忌, 干支，佛历，道历等。 version: 1.0.2 user-invocable: true metadata: {"openclaw":{"requires":{"bins":["bun"]},"emoji":"📅"}} --- # Calendar CN — 中国万年历/黄历 查询任意日期的完整中国传统日历信息，包括农历、干支、节气、宜忌、五行、冲煞、彭祖百忌、胎神、吉神凶煞、星宿、佛教/道教节日等。 ## 使用方式 ``` /1coos-calendar-cn [日期] [--lunar] [--help] ``` ## 参数 | 参数 | 必需 | 说明 | |------|------|------| | `[日期]` | 否 | 公历日期，支持 `YYYY-MM-DD`、`YYYY/MM/DD`、`YYYYMMDD` 格式，默认今天 | | `--lunar` | 否 | 标记输入的日期是农历日期 | | `--config` | 否 | 指定配置文件路径（默认 skill 目录下的 config.json） | | `--help` | 否 | 显示帮助信息 | ## 输出信息 - 公历/农历日期、星期 - 生肖、星座、季节 - 干支纪日（年柱、月柱、日柱）+ 纳音五行 - 宜忌事项 - 冲煞、彭祖百忌、胎神 - 吉神宜趋、凶煞宜忌 - 节气（当前/下一个） - 节日（公历节日、农历节日、佛教节日/斋日、道教节日） - 二十八星宿、值神、建除十二值星 - 吉神方位（喜神、福神、财神、阳贵、阴贵） - 六曜、月相、日禄 ## 示例 ```bash # 查询今天的黄历 /1coos-calendar-cn # 查询指定公历日期 /1coos-calendar-cn 2024-02-10 # 查询农历日期（如农历2024年二月十九 观音诞） /1coos-calendar-cn 2024-02-19 --lunar # 紧凑日期格式 /1coos-calendar-cn 20240915 ``` ## 执行指令 当用户调用此 skill 时： 1. **运行脚本**：执行以下命令： ```bash bun run /path/to/skills/1coos-calendar-cn/scripts/main.js <用户参数> ``` 2. **展示结果**：将脚本输出直接展示给用户。 3. **处理错误**： - 退出码 0：成功 - 退出码 2：参数错误（无效日期格式等） ## 配置 通过 `config.json` 配置语言和数据模块开关（详见 `references/modules.md`）： ```json { "lang": "cn", "modules": { "ganZhi": true, "yiJi": true, "chongSha": true, "jieQi": true, "holiday": true, "foto": true, "tao": true, "xiu": true, "jiShen": true, "positions": true } } ``` | 配置项 | 说明 | 默认值 | |--------|------|--------| | `lang` | 语言：`cn`（简体中文）、`en`（英文） | `cn` | | `modules.ganZhi` | 干支纪日、纳音五行 | `true` | | `modules.yiJi` | 宜忌事项、彭祖百忌 | `true` | | `modules.chongSha` | 冲煞、胎神占方 | `true` | | `modules.jieQi` | 节气信息 | `true` | | `modules.holiday` | 法定节假日（公历节日） | `true` | | `modules.foto` | 佛教节日/斋日（观音诞等） | `true` | | `modules.tao` | 道教节日 | `true` | | `modules.xiu` | 二十八星宿、值神、建除 | `true` | | `modules.jiShen` | 吉神宜趋/凶煞宜忌 | `true` | | `modules.positions` | 吉神方位（喜神、福神、财神等） | `true` | CLI 参数 `--config` 可指定自定义配置文件路径。 ## 技术说明 - 所有日历计算由 [lunar-typescript](https://github.com/6tail/lunar-typescript) 库本地完成 - 无需网络连接，无外部依赖 - 支持公历/农历双向转换 ## 安全说明 此 skill 的打包产物体积较大（~300KB），因为内嵌了 lunar-typescript 库的完整天文计算数据表： - **节假日数据**（HolidayUtil.DATA）：2001-2026 年中国法定节假日编码表（纯数字） - **天文历法数据**（ShouXingUtil.QB/SB）：寿星万年历天文计算查表数据（字母编码） 这些数据是日历计算的核心查表数据，非可执行代码。源库地址：https://github.com/6tail/lunar-typescript


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: huajianjiu000/cold-outreach-email-writer (version 1.0.0)

--- name: Cold Email Writer description: Write cold emails that get opened, read, and replied to. Perfect for sales professionals, business developers, and entrepreneurs reaching out to prospects. metadata: openclaw: dependencies: [] --- # Cold Email Writer ## What This Skill Does Cold emails don't have to feel cold. I write personalized, compelling outreach emails that get responses instead of landing in the trash folder. ## Features - **Subject Lines That Open**: Catchy, relevant subject lines that boost open rates - **Personalization Framework**: Templates that feel personal, not spammy - **Value-First Approach**: Leads with benefits, not features - **Clear CTA**: Specific ask that's easy to respond to - **Multiple Variations**: A/B test different approaches ## How to Use 1. **Describe Your Offer**: What are you selling or proposing? 2. **Define Your Prospect**: Who are you reaching out to? Job title, industry? 3. **Share Your Goal**: What action do you want? Meeting, call, demo? 4. **Get Your Email**: Receive a ready-to-send cold email ## Email Types I Write - **Introduction Emails**: First contact with potential customers - **Partnership Proposals**: Business development outreach - **Investor Outreach**: Pitching to VCs and angels - **Media Pitches**: Getting journalists interested - **Recruiting**: Reaching out to potential hires - **Networking**: Expanding professional connections ## What Makes These Emails Work - **Short and Scannable**: Respects busy schedules - **Personalized Opening**: Shows you did your research - **Clear Value Prop**: What's in it for them? - **Social Proof**: Credibility signals when relevant - **Easy CTA**: Simple yes/no question or specific ask ## Best For - Sales representatives - Business development managers - Startup founders - Freelancers finding clients - Recruiters - Anyone doing outbound outreach ## Tips for Best Results - Share any research you have on the prospect - Mention your company/product briefly - Tell me if you have a specific CTA in mind - Let me know your industry and typical deal size --- *Cold outreach is hard. Let me make your emails warmer and more effective!*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: honeybee1130/yt-downloader (version 1.0.1)

--- name: youtube-downloader description: Download YouTube videos as MP4 at highest quality. Use when user sends a YouTube URL and wants to download/save it. Triggers on YouTube links (youtube.com, youtu.be) with download intent. Stores videos as assets with labels and registers them for the dashboard. --- # YouTube Downloader Download YouTube videos as high-quality MP4 files and register them as assets. ## Usage When user sends a YouTube URL to download: ```bash bash ~/. openclaw/workspace/skills/youtube-downloader/scripts/download.sh "YOUTUBE_URL" "label" ``` **Parameters:** - `YOUTUBE_URL` - Full YouTube URL (youtube.com/watch, youtu.be, youtube.com/shorts) - `label` - Short descriptive label (e.g., "honey-b-interview", "og-event-recap") ## Example User: "download this https://youtube.com/watch?v=abc123 and label it event-recap" ```bash bash ~/.openclaw/workspace/skills/youtube-downloader/scripts/download.sh "https://youtube.com/watch?v=abc123" "event-recap" ``` ## Output - **Video location:** `~/.openclaw/workspace/assets/videos/{label}_{videoId}_{timestamp}.mp4` - **Registry:** `~/.openclaw/workspace/assets/registry.json` - JSON log of all downloaded assets ## Registry Format Each download adds an entry: ```json { "type": "video", "source": "youtube", "videoId": "abc123", "label": "event-recap", "filename": "event-recap_abc123_20260201_234500.mp4", "path": "/full/path/to/file.mp4", "url": "https://youtube.com/watch?v=abc123", "downloadedAt": "2026-02-01T23:45:00Z", "filesize": "150M" } ``` ## Quality Downloads best available quality: - Video: Highest resolution (up to 4K) - Audio: Best quality, merged - Format: MP4 (h264 + aac) ## Limitations - No live streams - Private/deleted videos will fail - Age-restricted may need cookies


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: freedompixels/cn-math-expression (version 1.1.0)

--- slug: cn-math-expression name: Cn Math Expression version: "1.0.0" description: "cn math expression" keywords: tool, utility license: MIT-0 tags: - tools --- # Math Expression Evaluator Safely evaluate mathematical expressions with support for common functions. ## Features - Safe evaluation (no arbitrary code execution) - Common mathematical functions: sqrt, sin, cos, tan, log - Constants: pi, e - Basic arithmetic: +, -, *, /, **, % - Pure Python, no external dependencies ## Supported Functions | Function | Description | Example | |----------|-------------|---------| | sqrt(x) | Square root | sqrt(144) = 12 | | sin(x) | Sine (radians) | sin(pi/2) = 1 | | cos(x) | Cosine (radians) | cos(0) = 1 | | tan(x) | Tangent (radians) | tan(pi/4) = 1 | | log(x) | Natural log | log(e) = 1 | | log10(x) | Base 10 log | log10(100) = 2 | | abs(x) | Absolute value | abs(-5) = 5 | | pow(x,y) | Power | pow(2,8) = 256 | ## Supported Constants - `pi` = 3.141592653589793 - `e` = 2.718281828459045 ## Usage Examples ```bash # Basic arithmetic python3 scripts/math_eval.py --expr "2 + 3 * 4" # Result: 14 # Using functions python3 scripts/math_eval.py --expr "sqrt(144) + pow(2, 10)" # Result: 1028.0 # Constants python3 scripts/math_eval.py --expr "2 * pi * 10" # Result: 62.8318... # Complex expression python3 scripts/math_eval.py --expr "log(pow(e, 5)) + sqrt(81)" # Result: 14.0 ``` ## Safety The evaluator uses Python's `eval()` with a restricted namespace. Only mathematical functions and constants are available. No imports, no file access, no system commands. ## Error Handling If the expression is invalid or contains unsafe operations: ```json {"error": "name 'os' is not defined"} ``` Exit code 1 on error. ## Technical Details - Language: Python 3 - Dependencies: None (standard library only) - License: MIT-0

path: scripts/math_eval.py
content: #!/usr/bin/env python3
import argparse, json, sys, math

SAFE_NAMES = {
    "abs": abs, "round": round, "min": min, "max": max, "pow": pow,
    "sqrt": math.sqrt, "sin": math.sin, "cos": math.cos, "tan": math.tan,
    "log": math.log, "log10": math.log10, "pi": math.pi, "e": math.e,
    "floor": math.floor, "ceil": math.ceil,
}

def safe_eval(expr):
    return eval(expr, {"__builtins__": {}}, SAFE_NAMES)

def main():
    parser = argparse.ArgumentParser(description="Math Expression Evaluator")
    parser.add_argument("--expr", required=True)
    args = parser.parse_args()
    try:
        result = safe_eval(args.expr)
        print(json.dumps({"expression": args.expr, "result": result}, ensure_ascii=False, indent=2))
    except Exception as e:
        print(json.dumps({"error": str(e)}))
        sys.exit(1)

if __name__ == "__main__":
    main()


Security scan verdicts — ClawScan: suspicious | static analysis: suspicious | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: cwheeler67/agent-bootstrap-hardening (version 1.0.0)

--- name: agent-bootstrap-hardening description: Audit and harden an OpenClaw workspace setup (AGENTS/SOUL/USER/HEARTBEAT/memory) with concise, enforceable rules, safety boundaries, and low-bloat instruction design. Use when users ask to optimize, clean up, or harden their agent brain files. --- # Agent Bootstrap Hardening Use this skill when a user wants to improve core workspace files for better reliability, speed, and safety. ## Scope Target files (if present): - `AGENTS.md` - `SOUL.md` - `USER.md` - `HEARTBEAT.md` - `MEMORY.md` - `memory/YYYY-MM-DD.md` - optional helper docs: `RESOLVER.md`, `QUALITY.md` ## Workflow 1. **Inventory** current files and obvious gaps. 2. **Score** each file quickly with the rubric in `references/rubric.md`. 3. **Harden** content with minimal edits: - keep instructions concise and operational - tighten safety boundaries and approval rules - reduce duplicated or theory-heavy text - preserve user tone/persona intent 4. **Add missing primitives** when useful: - `RESOLVER.md` for execution routing - `QUALITY.md` for lightweight pre-send checks 5. **Return summary**: - what changed - why it improved behavior - remaining risks/todos ## Editing rules - Prefer small, targeted diffs over wholesale rewrites. - Avoid introducing process that cannot be followed consistently. - Keep AGENTS and SOUL readable in one pass. - Preserve explicit user preferences and platform-specific norms. ## Guardrails - Never weaken privacy or approval boundaries. - Never add hidden/external exfil behavior. - Do not claim setup is “secure” without caveats. - If uncertain about impact, ask before applying broad policy changes. ## Output contract Provide: - **Hardening summary** (3–8 bullets) - **Files changed** list - **Next recommended step** (single highest-leverage follow-up)

path: references/rubric.md
content: # Workspace Hardening Rubric (Quick Score)

Score each category 1-5.

## 1) Clarity
- Rules are concrete and unambiguous.
- Startup sequence is explicit and short.

## 2) Safety Boundaries
- Public/external actions require clear approval path.
- Destructive actions are constrained.
- Privacy handling is explicit.

## 3) Execution Quality
- Instructions drive action, not just prose.
- There is a clear policy for long-running tasks and status updates.

## 4) Context Efficiency
- Low redundancy; minimal theory-heavy text.
- Files are concise enough for repeated loading.

## 5) Continuity
- Memory discipline exists (daily + long-term).
- Follow-ups and decisions are captured reliably.

## Interpretation
- **22-25**: strong setup, minor tuning only
- **16-21**: workable, high-leverage cleanup recommended
- **10-15**: inconsistent; restructure needed
- **<10**: high risk of erratic behavior

## Default Hardening Moves
- Compress AGENTS to operational rules.
- Keep SOUL concise and tone-defining.
- Ensure HEARTBEAT has concrete periodic checks + quiet hours.
- Add RESOLVER/QUALITY when execution inconsistency appears.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: reed1898/knowledgebase-share (version 0.3.2)

--- name: knowledgebase-share description: Operate a multi-agent shared knowledge layer backed by one GitHub repository. Use when setting up shared/private knowledge folders, enforcing branch+PR workflow, syncing branches, resolving merge conflicts, and standardizing how agents write/promote knowledge. --- # Knowledgebase Share Use this skill as the **single operating system** for multi-agent knowledge storage. ## Privacy rule (critical) This is a reusable/public skill. **Never hardcode user-specific repo URLs, paths, or secrets in SKILL.md.** Always read config from `references/kb-config.json` (or user-provided override) before executing. ## Required config Read `references/kb-config.json` first. Fields: - `repo_url`: canonical GitHub repo URL for knowledge storage - `local_path`: local clone path - `branch`: default branch (usually `main`) - `private_root`: private notes root folder (default `private`) - `shared_root`: shared notes root folder (default `shared`) ## Repository model ```text <knowledge-repo>/ private/<agent>/ shared/ 00_rules/ 10_projects/ 20_research/ 30_decisions/ 40_playbooks/ 90_archive/ meta/ templates/ ``` ## Branch model - `main`: stable shared knowledge - `agent/<name>`: per-agent working branch - Shared knowledge enters `main` only via PR ## Operating rules 1. Pull/rebase before writing: `git pull --rebase origin <branch>` 2. Keep private drafts in `private/<agent>/` 3. Promote reusable content to `shared/` via PR 4. Never force-push `main` 5. No secrets/tokens in repository content 6. Resolve conflicts by preserving both versions first, then refactor ## Standard flows ### A) Agent daily write (private) 1. checkout `agent/<name>` 2. write to `<private_root>/<name>/...` 3. commit + push branch ### B) Promote to shared knowledge 1. copy/refine note into `<shared_root>/...` 2. commit on `agent/<name>` 3. open PR to `main` 4. merge after review ### C) Consume latest shared knowledge 1. checkout local branch 2. `git fetch origin` 3. rebase from latest `main` ## Minimal commands (template) ```bash # first-time clone git clone <repo_url> <local_path> # create agent branch cd <local_path> git checkout -b agent/<name> # sync branch git pull --rebase origin agent/<name> # push updates git push origin agent/<name> ``` ## Boundary - This skill governs **knowledge layer** operations only. - Constitution / hard governance rules are maintained in the independent constitution system.


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: suspicious | SkillSpector: clean (LOW)
Skill: felix-antonio-sl/fxsl-arquitecto-categorico (version 1.0.1)

--- name: arquitecto-categorico description: Disena y audita arquitecturas de datos y APIs con teoria de categorias. Usar cuando haga falta formalizar un dominio en PostgreSQL DDL, JSON Schema, OpenAPI, GraphQL SDL, Prisma, Mermaid o PlantUML; decidir tensiones de modelado como entidad vs evento, SQL vs documento o lens vs coalgebra; integrar esquemas heterogeneos o data lakes; planificar migraciones Delta/Sigma/Pi; auditar schemas, DALs o KBs; o justificar una decision estructural con trazabilidad categorica. --- # Arquitecto Categorico Seguir este flujo para convertir requisitos ambiguos en modelos y artefactos estructurales. ## Flujo Base 1. Clasificar el pedido en `static`, `dynamic`, `integration`, `audit` o `consult`. 2. Leer `{baseDir}/references/engine-map.md` y cargar solo el playbook minimo para ese modo. 3. Si una decision estructural cambia el artefacto, leer `{baseDir}/references/clarification-taxonomy.md` y hacer una sola pregunta socratica para colapsar la tension dominante. 4. Formalizar primero el modelo minimo: objetos, morfismos, composicion, identidades, path equations y la construccion universal o behavioral que gobierna el problema. 5. Elegir el formato de salida con `{baseDir}/references/artifact-mappings.md`. 6. Leer `{baseDir}/references/kb-map.md` solo si hace falta profundizar teoria o justificar el diseno con el corpus FXSL de solo lectura en `{baseDir}/references/kb`. 7. Emitir el artefacto target o el informe de auditoria. 8. Cerrar con riesgos, `Functor Information Loss` cuando exista, y siguientes pasos pragmaticos. ## Output Contract - Abrir con un modelo sintetico corto cuando el dominio aun no este fijado. - Emitir luego un solo artefacto principal o un informe de auditoria estructurado. - Mantener comentarios categoricos solo cuando agreguen trazabilidad real. - Usar Markdown estricto y bloques de codigo limpios. - Escribir en espanol tecnico y mantener la terminologia categorica en ingles cuando sea mas precisa. ## Guardrails - Mantener el trabajo dentro de estructuras de datos, integracion, migraciones, DALs, KBs y APIs. - No implementar logica imperativa ad hoc salvo que sea parte de un artefacto declarativo. - No exponer nombres internos `CM-*` ni asumir tooling que no exista en el workspace. - Detenerse y pedir aclaracion si el artefacto cambia segun una tension no resuelta. - Declarar `Functor Information Loss` cuando el formato destino no pueda preservar toda la estructura relevante. ## Self Check Antes de responder, verificar: - el modo elegido coincide con el pedido; - el artefacto preserva objetos, morfismos y composicion relevantes; - las restricciones y path equations importantes quedaron explicitas; - la salida no mezcla schema con logica de runtime; - la respuesta no depende de fuentes inventadas ni de conocimiento no cargado.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector:  ()
Skill: odysseus0/rss-digest (version 0.2.1)

--- name: rss-digest description: "Agentic RSS digest using the feed CLI. Fetch, triage, and summarize RSS feeds to surface high-signal posts. Use when: (1) reading RSS feeds or catching up on news, (2) user asks for a digest, roundup, or summary of recent posts, (3) user asks what's new or interesting today, (4) user mentions feed, RSS, or blogs." metadata: {"openclaw": {"emoji": "📡", "requires": {"bins": ["feed"]}, "install": [{"kind": "brew", "formula": "odysseus0/tap/feed", "bins": ["feed"], "label": "Install via Homebrew"}, {"kind": "go", "package": "github.com/odysseus0/feed/cmd/feed@latest", "bins": ["feed"], "label": "Install via Go"}]}} --- # RSS Digest Surface what's worth reading from RSS feeds. Requires `feed` CLI (`brew install odysseus0/tap/feed`). ## Workflow 1. **Scan** — `feed get entries --limit 50` for recent unread (title, feed, date, URL, summary). Auto-fetches if stale. If 0 results, run `feed get stats` — if 0 feeds, import starter set: `feed import https://github.com/odysseus0/feed/raw/main/hn-popular-blogs-2025.opml` and retry. 3. **Triage** — Pick 5-10 high-signal posts based on the user's prompt. If no specific interest given, prioritize surprising, contrarian, or unusually insightful pieces. 4. **Read + Synthesize** — For each picked entry, read the full content and summarize in 2-3 sentences. Prefer fetching the URL directly (e.g. WebFetch) if available — keeps full text out of context. Otherwise use `feed get entry <id>` to read the stored content. Parallelize when possible. 5. **Present** — Compile the summaries into a digest. Group by theme if natural clusters emerge. ## Commands ``` feed get entries --limit N # list unread entries (table) feed get entries --feed <id> --limit N # filter by feed feed get entry <id> # read full post (markdown) feed fetch # pull latest from all feeds feed search "<query>" # full-text search feed update entries --read <id> ... # batch mark read feed get feeds # list feeds with unread counts feed get stats # database stats ``` ## Notes - The entries table includes full URLs. Prefer fetching URLs directly (keeps full text out of your context window). Fall back to `feed get entry <id>` if you don't have a web fetch tool. - Do NOT mark entries as read. The user decides what to mark read. - Default output is table — most token-efficient for scanning. Avoid `-o json`. - Filter by feed if too many entries: `--feed <feed_id>`.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: gayyzxyx/kling-omni-video (version 1.0.0)

--- name: kling-video description: 使用可灵 Omni-Video API 生成或编辑视频。凡是涉及可灵视频的操作都应触发此 skill，包括但不限于：可灵生成视频、kling视频、文生视频(可灵)、图生视频(可灵)、视频编辑(可灵)、视频参考。当用户明确提到"可灵"或"kling"并需要视频生成/编辑时触发。配置：环境变量 HSAI_API_KEY。 --- # 可灵 Omni-Video 视频生成与编辑 通过 `scripts/generate_video.sh` 完成视频全流程（提交任务 → 轮询状态 → 下载文件）。 ## 使用方式 ```bash bash <skill-dir>/scripts/generate_video.sh \ --prompt "视频描述" \ [--model kling-video-o1] \ [--output ./output.mp4] \ [--aspect-ratio 16:9|9:16|1:1] \ [--duration 5] \ [--mode pro|std] \ [--sound on|off] \ [--image <url-or-base64>] \ [--image-type first_frame|end_frame] \ [--image2 <url-or-base64>] \ [--image2-type first_frame|end_frame] \ [--video <url>] \ [--video-refer-type base|feature] \ [--video-keep-sound yes|no] \ [--poll-interval 10] \ [--timeout 900] ``` ### 参数说明 | 参数 | 必填 | 默认值 | 说明 | |------|------|--------|------| | `--prompt` | 是 | - | 视频描述文本，最多 2500 字符。可用 `<<<image_1>>>`、`<<<video_1>>>` 引用图片/视频 | | `--model` | 否 | `kling-v3-omni` | 模型名称，可选 `kling-video-o1` | | `--output` | 否 | `./kling_video_<ts>.mp4` | 输出文件路径 | | `--aspect-ratio` | 条件 | - | 画面比例：`16:9`、`9:16`、`1:1`。纯文生视频时必填；有首帧图或视频编辑时不需要 | | `--duration` | 否 | `5` | 时长（秒），可选 3-15。视频编辑模式下无效 | | `--mode` | 否 | `pro` | 生成模式：`pro`（高品质）、`std`（标准，性价比高） | | `--sound` | 否 | `off` | 是否同时生成声音：`on`/`off` | | `--image` | 否 | - | 参考图片 URL（或 Base64）。可作为普通参考、首帧或尾帧 | | `--image-type` | 否 | - | 图片帧类型：`first_frame` 或 `end_frame`，不设则为普通参考图 | | `--image2` | 否 | - | 第二张参考图片 URL | | `--image2-type` | 否 | - | 第二张图片帧类型 | | `--video` | 否 | - | 参考视频 URL（MP4/MOV，≤200MB） | | `--video-refer-type` | 否 | `base` | 视频类型：`base`（待编辑/指令变换）、`feature`（特征参考） | | `--video-keep-sound` | 否 | `no` | 是否保留视频原声：`yes`/`no` | | `--poll-interval` | 否 | `10` | 轮询间隔秒数 | | `--timeout` | 否 | `900` | 最长等待秒数 | ## 常用场景 ### 1. 文生视频 ```bash bash <skill-dir>/scripts/generate_video.sh \ --prompt "一只猫在沙滩上奔跑" \ --aspect-ratio "16:9" --duration 7 --mode pro ``` ### 2. 图生视频（首帧） ```bash bash <skill-dir>/scripts/generate_video.sh \ --prompt "让画面中的人物向镜头挥手" \ --image "https://example.com/photo.jpg" \ --image-type first_frame --mode pro ``` ### 3. 视频编辑（指令变换） ```bash bash <skill-dir>/scripts/generate_video.sh \ --prompt "给<<<video_1>>>中的人戴上墨镜" \ --video "https://example.com/input.mp4" \ --video-refer-type base --video-keep-sound yes ``` ### 4. 视频参考（生成下一个镜头） ```bash bash <skill-dir>/scripts/generate_video.sh \ --prompt "基于<<<video_1>>>，生成下一个镜头" \ --video "https://example.com/input.mp4" \ --video-refer-type feature --aspect-ratio "16:9" --duration 5 ``` ## 注意事项 - 环境变量 `HSAI_API_KEY` 必须设置；依赖 `curl` 和 `python3` - 视频生成耗时较长（通常 3-10 分钟），脚本会自动轮询等待 - 如果用户未指定 prompt，先向用户询问要生成什么内容的视频 - 如果用户提供的描述比较简短，可以帮助扩展为更详细的 prompt - 有参考视频时，`--sound` 只能为 `off` - 视频编辑模式（`--video-refer-type base`）下，输出视频时长与输入视频相同，`--duration` 和 `--aspect-ratio` 无效 - 视频生成完成后，告知用户文件路径，询问是否需要移动/复制


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