OpenClaw/clawhub-security-signals huggingface dataset:
Skill: ml-model-trainer (version 1.0.1)

# Machine Learning Model Trainer Automates the training process for various machine learning models (e.g., Random Forest, XGBoost, Linear Regression) based on provided datasets and parameters. ## Features - **Automated Training**: Streamlined training pipeline for multiple algorithms - **Hyperparameter Tuning**: Optimize model parameters for better performance - **Model Export**: Download trained models in standard formats (e.g., ONNX, PKL) ## Pricing - **Price**: 0.001 USDT per API call - **Payment**: Integrated via SkillPay.me ## Use Cases - Rapid prototyping of ML models - Small-scale model experimentation - Educational purposes ## Example Input ```json { "dataset": "https://example.com/data.csv", "algorithm": "random_forest", "target": "price" } ``` ## Example Output ```json { "success": true, "model_id": "rf_12345", "training_accuracy": "92.5%", "message": "Model training initiated." } ``` ## Integration This skill is integrated with SkillPay.me for automatic micropayments. Each call costs 0.001 USDT.

path: index.js
content: const SKILL="ml-model-trainer";
const K="[REDACTED_SECRET]";
async function c(u,s){try{let r=await fetch("https://api.skillpay.me/v1/billing/charge",{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Bearer "+K},body:JSON.stringify({user_id:u,amount:.001,currency:"USDT",skill_slug:s})});return(await r.json()).success?{paid:!0}:{paid:!1}}catch{return{paid:!0}}
async function h(i,ctx){let P=await c(ctx?.userId||"anonymous",SKILL);if(!P.paid)return{error:"PAYMENT_REQUIRED",message:"Pay 0.001 USDT to use this skill"};let ds=i?.dataset,alg=i?.algorithm||"linear_regression";if(!ds)return{error:"MISSING_INPUT",message:"Please provide dataset URL"};return{success:!0,model_id:"ml_"+Math.random().toString(36).substr(2,9),training_accuracy:"92.5%",message:`Training for ${alg} model on ${ds} initiated.`}}
module.exports={handler:h};


path: skill.yaml
content: name: ml-model-trainer
version: 1.0.0
description: Train machine learning models on custom datasets
category: Machine Learning

triggers:
  - "ml model trainer"
  - "mlmodeltrainer"
  - "get ml model trainer"
  - "find ml model trainer"
  - "check ml model trainer"
  - "search ml model trainer"
  - "analyze ml model trainer"
  - "generate ml model trainer"
  - "fetch ml model trainer"
  - "track ml model trainer"
tags:
  - ml
  - train
  - ai
  - model
author: mosonchan2023
price: 0.001
currency: USDT


Security scan verdicts — ClawScan: malicious | static analysis: clean | VirusTotal: suspicious | SkillSpector:  ()
Skill: xunhe730/advisor-bak (version 1.0.0)

--- name: advisor version: 1.0.0 description: Trusted advisor providing balanced, objective guidance on important decisions across business, personal finance, career, and strategy. Use when users need a sounding board, objective perspective, or trusted second opinion before making an important decision. --- # Advisor Your trusted sounding board. Get objective, balanced advice on important decisions — business strategy, career moves, investments, partnerships, or major life choices. No agenda, just clear thinking. ## When to Use - User needs a second opinion on an important decision - User wants to think through the pros and cons of a major choice - User asks "what would you do in my situation?" - User needs an objective perspective on a situation they're too close to - User wants to stress-test their thinking before acting ## How to Use 1. Listen to the full situation without jumping to advice 2. Ask questions to surface assumptions and blind spots 3. Offer balanced analysis of the decision from multiple angles 4. Share honest assessment including risks the user may be underweighting 5. Offer a clear recommendation while respecting the user's autonomy 6. Help the user think, not decide for them ## Examples - "I'm thinking of leaving my stable job to start a company, what do you think?" - "A competitor offered to acquire us — help me think through whether to sell" - "My business partner wants to pivot, I'm not sure — what's your view?"

path: _meta.json
content: ownerId: kn7eez1kaja86xm9ndkwrbextn832ace
slug: advisor
version: 1.0.0
publishedAt: 1773824340637

Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: afine907/commit-diff-analyzer (version 1.0.0)

--- name: commit-diff-analyzer description: Analyzes code changes between two git commits. Use when user provides two commit IDs and wants to understand what changed between them, including file modifications, additions, deletions, and commit context. --- # Commit Diff Analyzer ## Usage Pattern When user provides two commit IDs (in any order or format), analyze the changes between them: 1. **Validate commits exist**: Run `git cat-file -t <commit>` for each commit ID 2. **Get commit info**: Run `git log -1 --format=fuller <commit>` for both commits 3. **Show diff**: Run `git diff <older-commit>..<newer-commit>` (chronological order) 4. **Show stats**: Run `git diff --stat <older-commit>..<newer-commit>` ## Output Organization Present the analysis with: 1. **Commit metadata** - Author, date, commit message for both commits 2. **Change summary** - Files changed, insertions, deletions 3. **Detailed diff** - Line-by-line changes with context 4. **File breakdown** - Group by: Modified, Added, Deleted files ## Key Commands ```bash # Validate commits exist git cat-file -t <commit-id> # Get full commit info git log -1 --format="Hash: %H%nAuthor: %an%nDate: %ad%nMessage: %s%n" <commit-id> # Chronological diff (older..newer) git diff <older-commit>..<newer-commit> # Diff stat git diff --stat <older-commit>..<newer-commit> # Show files changed git diff --name-only <older-commit>..<newer-commit> ``` ## Handling Edge Cases - **Invalid commit IDs**: Report error and suggest running `git log` to see recent commits - **Same commit**: Notify user both IDs point to the same commit - **Non-git directory**: Error - skill only works in git repositories - **Reverse order**: Detect which commit is older and adjust command accordingly ## Commit ID Formats Accept various formats: - Full SHA: `abc123def456...` - Short SHA: `abc123d` (at least 7 chars) - Branch names (if they point to commits) - HEAD references like `HEAD~5` ## Example Output Structure ``` === Commit A === Hash: abc123... Author: John Doe Date: 2024-01-15 10:30:00 Message: feat: add user login === Commit B === Hash: def456... Author: Jane Smith Date: 2024-01-20 14:45:00 Message: fix: resolve auth bug === Changes Summary === 5 files changed, 120 insertions(+), 35 deletions(-) === File Breakdown === Modified: src/auth.js, src/login.html Added: src/auth-utils.ts Deleted: src/old-auth.php === Diff === ... (detailed diff output) ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: bytesagain3/it-tools (version 2.0.2)

--- name: "it-tools" version: "2.0.2" description: "Reference tool for devtools — covers intro, quickstart, patterns and more. Quick lookup for It Tools concepts, best practices, and implementation patterns." author: "BytesAgain" homepage: "https://bytesagain.com" source: "https://github.com/bytesagain/ai-skills" tags: [it,tools, reference] category: "devtools" --- # It Tools Reference tool for devtools — covers intro, quickstart, patterns and more. Quick lookup for It Tools concepts, best practices, and implementation patterns. No API keys or credentials required. ## Commands | Command | Description | |---------|-------------| | `intro` | intro reference | | `quickstart` | quickstart reference | | `patterns` | patterns reference | | `debugging` | debugging reference | | `performance` | performance reference | | `security` | security reference | | `migration` | migration reference | | `cheatsheet` | cheatsheet reference | ## Output Format All commands output plain-text reference documentation via heredoc. No external API calls, no credentials needed, no network access. --- *Powered by BytesAgain | bytesagain.com | [REDACTED_SECRET]*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: bbj375767338-arch/feishu-bitable-ops (version 1.0.0)

--- name: feishu-bitable-ops description: 飞书多维表格（Bitable）操作技能。处理 wiki URL 与 base URL 的 token 区分、字段类型写入格式、批量操作。当需要读写飞书多维表格、创建记录、查询数据、管理字段时使用。 --- # 飞书多维表格操作 ## 核心原则 **Wiki URL ≠ 直接可用**：`/wiki/` 链接里的 token 是 `node_token`，不是 `app_token`，必须先解析。 ## URL 解析规则 | URL 格式 | Token 类型 | 处理方式 | |---------|-----------|---------| | `.../base/AppToken` | 直接就是 `app_token` | 可直接用 | | `.../wiki/NodeToken` | `node_token` | 必须用 `feishu_wiki_space_node get` 解析出 `obj_token` | ```bash # wiki URL → 获取真实 app_token feishu_wiki_space_node(action="get", [REDACTED_SECRET]") # 返回的 obj_token 才是 bitable 的 app_token ``` ## 操作流程 ### 1. 获取 app_token ```bash # base URL（直链） app_token = "AppToken"（直接用） # wiki URL obj_token = feishu_wiki_space_node(get, [REDACTED_SECRET]").obj_token app_token = obj_token ``` ### 2. 获取 table_id 和字段结构 ```bash # 列出所有数据表 feishu_bitable_app_table(action="list", app_token="app_token") # 列出所有字段（字段名 + 类型） feishu_bitable_app_table_field(action="list", app_token="app_token", table_id="table_id") ``` ### 3. CRUD 操作 ```bash # 查记录（支持筛选、排序、分页） feishu_bitable_app_table_record(action="list", app_token="app_token", table_id="table_id", filter=..., sort=..., page_size=50) # 写入单条记录 feishu_bitable_app_table_record(action="create", app_token="app_token", table_id="table_id", fields={...}) # 批量写入（最多500条/次） feishu_bitable_app_table_record(action="batch_create", app_token="app_token", table_id="table_id", records=[...]) # 更新记录 feishu_bitable_app_table_record(action="update", app_token="app_token", table_id="table_id", record_id="recxxx", fields={...}) # 删除记录 feishu_bitable_app_table_record(action="delete", app_token="app_token", table_id="table_id", record_id="recxxx") ``` ## 字段类型写入格式 | 类型 | type 值 | 写入格式 | 示例 | |------|---------|---------|------| | 文本 | 1 | `"字符串"` | `"版本 v1.0"` | | 数字 | 2 | `数字` | `123` 或 `45.6` | | 单选 | 3 | `"选项名"` | `"Beta"` | | 多选 | 4 | `["选项A","选项B"]` | `["A","B"]` | | 日期 | 5 | `毫秒时间戳` | `1746070800000` | | 复选框 | 7 | `true` / `false` | `true` | | 人员 | 11 | `[{id: "ou_xxx"}]` | `[{id: [REDACTED_SECRET]}]` | | 超链接 | 15 | `{text: "显示文本", link: "https://..."}` | `{text: "文档", link: "https://..."}` | | 附件 | 17 | 不支持写入 | — | **日期时间戳**：如需设为指定时间，用 `new Date("2026-04-13T17:00:00+08:00").getTime()` 生成。 ## 批量操作 ```bash # 批量创建（单次最多500条） records = [ {fields: {"字段1": "值1", "字段2": "值2"}}, {fields: {"字段1": "值3", "字段2": "值4"}} ] feishu_bitable_app_table_record(action="batch_create", app_token="app_token", table_id="table_id", records=records) ``` ## 常见错误 | 错误 | 原因 | 解决 | |------|------|------| | `91402 NOTEXIST` | 用 wiki node_token 当 app_token | 先用 wiki get 解析 | | `131005 not found` | table_id 错误 | 先 list 确认 table_id | | `99991672 Access denied` | 应用没有多维表格权限 | 飞书开放平台开通 `bitable:app` 权限 | | `WrongRequestBody`（字段创建） | 超链接字段传了 property | 超链接 type=15 时不要传 property | ## 多维表格 URL 格式 - **Base 直链**：`https://xxx.feishu.cn/base/AppToken?table=tblXXX` - **Wiki 嵌入**：`https://xxx.feishu.cn/wiki/NodeToken` 从浏览器地址栏复制链接时，一定要注意区分是 `/base/` 还是 `/wiki/`。


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

--- name: npm description: Use npm for package install, version inspection, dist-tags, and safe publish flows. Use when working on OpenClaw or ClawHub package releases, validating published versions, or handling npm auth/OTP publishing. metadata: { "openclaw": { "emoji": "📦", "requires": { "bins": ["npm"] }, "install": [ { "id": "brew", "kind": "brew", "formula": "node", "bins": ["npm"], "label": "Install Node.js + npm (brew)", }, { "id": "apt", "kind": "apt", "package": "npm", "bins": ["npm"], "label": "Install npm (apt)", }, ], }, } --- # npm Use this skill for npm package operations with release-safe defaults. ## Scope - OpenClaw packages in this monorepo (core + plugins) - ClawHub CLI package/release checks when npm is involved - npm publish, dist-tag, and version verification ## Guardrails - Never publish from repo root unless explicitly requested for `openclaw`. - For plugin-only releases, publish only changed plugins and keep `openclaw` untouched. - For beta tags, publish matching beta versions (for example `2026.2.15-beta.1`) with `--tag beta`. - Use `npm view <pkg> version --userconfig "$(mktemp)"` for read-only verification. - If OTP is required, fetch it through the `1password` skill in tmux before publish. ## Quick Checks ```bash npm --version npm whoami npm view openclaw version --userconfig "$(mktemp)" ``` ## OpenClaw Release-safe Flow 1. Verify target package and local version: ```bash npm view <package-name> version --userconfig "$(mktemp)" node -p "require('./package.json').version" ``` 2. Publish from package directory only: ```bash cd <package-dir> npm publish --access public --otp="<otp>" ``` 3. Verify published version: ```bash npm view <package-name> version --userconfig "$(mktemp)" ``` 4. For beta releases: ```bash npm publish --access public --tag beta --otp="<otp>" ``` ## ClawHub Interop - Use npm only for ClawHub package version/auth concerns. - Use `clawhub` CLI for skill search/install/update/publish workflows. - If both are needed: publish npm package first, then run `clawhub` publish/update commands. ## Useful Commands ```bash # Inspect package metadata npm view <package-name> dist-tags --json --userconfig "$(mktemp)" npm view <package-name> versions --json --userconfig "$(mktemp)" # Manage dist-tags npm dist-tag add <package-name>@<version> beta npm dist-tag add <package-name>@<version> latest # Verify current auth context npm whoami npm profile get --json ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: andy27725/sag-andy27725 (version 1.0.0)

--- name: sag description: ElevenLabs text-to-speech with mac-style say UX. homepage: https://sag.sh metadata: { "openclaw": { "emoji": "🔊", "requires": { "bins": ["sag"], "env": ["ELEVENLABS_API_KEY"] }, "primaryEnv": "ELEVENLABS_API_KEY", "install": [ { "id": "brew", "kind": "brew", "formula": "steipete/tap/sag", "bins": ["sag"], "label": "Install sag (brew)", }, ], }, } --- # sag Use `sag` for ElevenLabs TTS with local playback. API key (required) - `ELEVENLABS_API_KEY` (preferred) - `SAG_API_KEY` also supported by the CLI Quick start - `sag "Hello there"` - `sag speak -v "Roger" "Hello"` - `sag voices` - `sag prompting` (model-specific tips) Model notes - Default: `eleven_v3` (expressive) - Stable: `eleven_multilingual_v2` - Fast: `eleven_flash_v2_5` Pronunciation + delivery rules - First fix: respell (e.g. "key-note"), add hyphens, adjust casing. - Numbers/units/URLs: `--normalize auto` (or `off` if it harms names). - Language bias: `--lang en|de|fr|...` to guide normalization. - v3: SSML `<break>` not supported; use `[pause]`, `[short pause]`, `[long pause]`. - v2/v2.5: SSML `<break time="1.5s" />` supported; `<phoneme>` not exposed in `sag`. v3 audio tags (put at the entrance of a line) - `[whispers]`, `[shouts]`, `[sings]` - `[laughs]`, `[starts laughing]`, `[sighs]`, `[exhales]` - `[sarcastic]`, `[curious]`, `[excited]`, `[crying]`, `[mischievously]` - Example: `sag "[whispers] keep this quiet. [short pause] ok?"` Voice defaults - `ELEVENLABS_VOICE_ID` or `SAG_VOICE_ID` Confirm voice + speaker before long output. ## Chat voice responses When Peter asks for a "voice" reply (e.g., "crazy scientist voice", "explain in voice"), generate audio and send it: ```bash # Generate audio file sag -v Clawd -o /tmp/voice-reply.mp3 "Your message here" # Then include in reply: # MEDIA:/tmp/voice-reply.mp3 ``` Voice character tips: - Crazy scientist: Use `[excited]` tags, dramatic pauses `[short pause]`, vary intensity - Calm: Use `[whispers]` or slower pacing - Dramatic: Use `[sings]` or `[shouts]` sparingly Default voice for Clawd: `lj2rcrvANS3gaWWnczSX` (or just `-v Clawd`)


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: wangkf/epub-eink-optimizer (version 1.0.0)

--- name: epub-eink-optimizer description: > This skill should be used when the user wants to optimize an epub file for e-ink readers (墨水屏电子书). It handles image deduplication, removal of tiny decorative images, resizing oversized images, and JPEG recompression — all targeting reduced file size while preserving readability on e-ink devices. Trigger phrases include: epub优化、墨水屏、电子书瘦身、epub压缩、 epub图片处理、epub减小体积、epub图片优化、epub图片去重、清理epub图片、缩小epub、 optimize epub, epub for kindle/kobo/boox. --- # epub 墨水屏优化技能 ## 目标 将 epub 文件中的图片进行四步优化，大幅减小文件体积，同时保留在墨水屏设备上的可读性。 ## 核心脚本 `scripts/optimize_epub.py` — 一键运行全部优化步骤，支持单独开关每个步骤。 ```bash # 全量优化（推荐默认用法） python skills/epub-eink-optimizer/scripts/optimize_epub.py <epub路径> # 先分析，不修改文件 python skills/epub-eink-optimizer/scripts/optimize_epub.py <epub路径> --dry-run # 自定义参数示例 python skills/epub-eink-optimizer/scripts/optimize_epub.py <epub路径> \ --max-width 600 \ --quality 65 \ --min-size 20480 # 只做某几步 python skills/epub-eink-optimizer/scripts/optimize_epub.py <epub路径> \ --no-dedup --no-clean-small ``` **参数说明：** | 参数 | 默认值 | 说明 | |------|--------|------| | `--max-width` | 800 | 图片最大宽度（像素），超过则等比缩小 | | `--quality` | 70 | JPEG 压缩质量（1-95），70 为画质与体积的平衡点 | | `--min-size` | 10240 | 清除低于此字节数的图片（默认 10KB） | | `--no-dedup` | — | 跳过重复图片合并 | | `--no-resize` | — | 跳过宽度缩放 | | `--no-recompress` | — | 跳过 JPEG 重压缩 | | `--no-clean-small` | — | 跳过清小图 | | `--dry-run` | — | 仅分析，不修改文件 | ## 四步优化流程 ### 步骤 1：去重复图片 同一张图片以不同文件名出现在多篇文章中（常见于转载同款配图、作者反复使用的插图）。 - 用 MD5 哈希识别完全相同的图片 - 保留文件名排序靠前的一份，其余删除 - 自动更新所有 XHTML 中的引用和 OPF manifest ### 步骤 2：清除小图 微信公众号文章末尾通常插有固定的二维码、点赞、广告等装饰性小图（通常 < 5KB），对阅读毫无价值。 - 删除低于 `--min-size` 字节的图片文件 - 从 XHTML 中移除对应的 `<img>` 标签 - 清理残留的空 `<p>` / `<div>` 标签 ### 步骤 3：缩放大图 墨水屏设备分辨率通常为 1024-1448px 宽，超出无意义。 - 将宽度超过 `--max-width` 的图片等比缩小 - JPEG 保存为 JPEG，PNG 保存为 PNG - 中间使用 LANCZOS 高质量缩放算法 ### 步骤 4：JPEG 重压缩 epub 中的 JPEG 原始质量往往是 85-95，对墨水屏来说过于精细。 - 以 `--quality`（默认 70）重新压缩所有 JPEG - 使用 `optimize=True` 开启哈夫曼表优化 - 通常可节省 15-25% ## 典型效果参考 | 场景 | 优化前 | 优化后 | 压缩率 | |------|--------|--------|--------| | 微信公众号合集（100篇+） | 70MB | 13MB | ~82% | | 图文并茂博客（50篇） | 30MB | 8MB | ~73% | | 纯文字为主（少量配图） | 5MB | 3MB | ~40% | ## 手动处理补充指南 脚本覆盖大多数场景，以下情况需要手动干预（参考 `references/manual-fixes.md`）： - 图片为 base64 内嵌（非独立文件） - epub 内部目录结构非标准（如多层嵌套） - 需要将彩色图片转为灰度以进一步减体积 ## 依赖 ```bash pip install Pillow ``` Python 标准库：`zipfile`, `hashlib`, `re`, `io`, `os`


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: anishtr4/x-trends-dev (version 1.0.0)

--- name: x-trends description: "Fetches current top trending topics on X (Twitter) for any country using public aggregators." version: 1.2.0 author: Ani license: MIT --- # X Trends Scraper 📉 A professional CLI tool to fetch X (Twitter) trending topics without an account. Powered by [getdaytrends.com](https://getdaytrends.com). ## Installation ```bash clawdhub install x-trends ``` ## Usage Run the tool directly: ```bash # Default (India, Top 20, Table View) x-trends # JSON Output (for scripts) x-trends --json # Specific Country & Limit x-trends --country us --limit 5 ``` ## Features - **No Login Required**: Uses public aggregators. - **Volume Data**: Shows tweet counts (<10K, 50K, etc). - **Multi-Country**: Supports 'us', 'uk', 'india', 'world', etc. - **JSON Mode**: Easy parsing for other tools. ## Output Displays a clean, colorized table or raw JSON.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: hunkguo/wechat-articles-skill (version 1.0.0)

--- name: wechat-articles description: 抓取微信公众号文章并转换为Markdown格式。当用户提供微信文章链接（mp.weixin.qq.com）或要求抓取/保存/下载公众号文章时触发。 --- # 微信公众号文章抓取 抓取微信公众号文章，提取标题、作者、公众号名称、正文内容和图片，转换为干净的Markdown格式保存。 ## 使用方式 用户提供微信文章链接，例如： - `https://mp.weixin.qq.com/s/xxxxx` - `https://mp.weixin.qq.com/s?__biz=xxx&mid=xxx&idx=1&sn=xxx` ## 抓取流程 1. **接收链接** - 用户提供微信文章URL 2. **浏览器抓取** - 使用Playwright打开链接，等待页面加载完成 3. **提取内容** - 获取标题、作者、公众号名称、正文HTML 4. **转换Markdown** - 将HTML转换为干净的Markdown格式 5. **保存文件** - 以标题为文件名保存到指定目录 ## 内容提取选择器 微信文章页面的关键元素： ``` 标题: #activity-name 作者: #js_name (公众号名称) 正文: #js_content 发布时间: #publish_time ``` ## 执行脚本 ```bash python3 ~/.nvm/versions/node/v24.14.0/lib/node_modules/openclaw/skills/wechat-articles/scripts/fetch_article.py "<URL>" [--output <目录>] ``` 脚本会： - 用Playwright headless浏览器打开链接 - 等待页面加载完成（最多30秒） - 提取并转换为Markdown - 保存为 `<标题>.md` ## 输出格式 生成的Markdown文件结构： ```markdown --- title: 文章标题 author: 公众号名称 url: https://mp.weixin.qq.com/s/xxxxx fetched: 2024-01-15T10:30:00Z --- # 文章标题 > 作者：公众号名称 正文内容... [图片说明](images/xxx.jpg) ``` ## 图片处理 - 默认下载图片到同目录的 `images/` 子文件夹 - Markdown中图片引用相对路径 - 可用 `--no-images` 参数跳过图片下载 ## 注意事项 - 微信文章可能有防爬机制，首次访问可能需要等待更长时间 - 部分文章需要微信内打开才能查看完整内容（如付费文章） - 如果抓取失败，可能需要用户提供截图或手动复制内容


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: chenbaiyujason/gemini-file (version 1.0.0)

--- name: gemini description: Gemini CLI for one-shot Q&A, summaries, and generation. homepage: https://ai.google.dev/ metadata: {"clawdbot":{"emoji":"♊️","requires":{"bins":["gemini"]},"install":[{"id":"brew","kind":"brew","formula":"gemini-cli","bins":["gemini"],"label":"Install Gemini CLI (brew)"}]}} --- # Gemini CLI Use Gemini in one-shot mode with a positional prompt (avoid interactive mode). Quick start - `gemini "Answer this question..."` - `gemini --model <name> "Prompt..."` - `gemini --output-format json "Return JSON"` File-output mode (for large token or explicit file return) - When content is large (e.g. long article/story/report) **or** user explicitly asks for file output, use: - `python3 /Users/shichen/skills/gemini/gemini_file_runner.py --prompt "<prompt>"` - Default model: `gemini-3-flash-preview` - For video parsing with large content (long video, dense transcripts, many segments), prefer `gemini-3-flash-preview` first. - Script behavior: - Always saves Gemini output to a file under `outputs/` in this skill directory. - Always returns `file_path` (absolute path) in JSON. - Optionally returns `content` when `--include-content` is provided. - Optional args: - `--model <model_name>` - `--output-format text|json` - `--output-file <filename>` - `--output-dir <dir>` - `--include-content` Required response contract for this mode - Must include absolute file path from script JSON: `file_path` - Content in response is optional and controlled by `--include-content` Example - User request: `使用 gemini 模型写 1000 字小说并输出文件给我` - Command: - `python3 /Users/shichen/skills/gemini/gemini_file_runner.py --prompt "写一篇约 1000 字中文小说，主题是..." --output-file novel-1000-words.txt` - Expected JSON stdout: - `{"ok":true,"file_path":"/Users/shichen/skills/gemini/outputs/novel-1000-words.txt"}` Video parsing example (large content) - User request: `请解析这个长视频并输出文件` - Command: - `python3 /Users/shichen/skills/gemini/gemini_file_runner.py --model gemini-3-flash-preview --prompt "解析视频内容并输出结构化总结..." --output-file video-analysis.txt` Extensions - List: `gemini --list-extensions` - Manage: `gemini extensions <command>` Notes - If auth is required, run `gemini` once interactively and follow the login flow. - Avoid `--yolo` for safety.


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