OpenClaw/clawhub-security-signals huggingface dataset:
Skill: xjouska/u2-downloader (version 1.0.3)

# YouTube Video Downloader Skill Download any YouTube video in various resolutions with a simple command. Supports 360p, 480p, 720p, 1080p, best quality, and audio-only extraction. ## Quick Install Just tell OpenClaw: > **"帮我安装这个 skill：https://clawhub.ai/XJouska/u2-downloader"** OpenClaw will ask you for an **API Key**. Follow these steps to get one: 1. Go to [https://u2foru.site](https://u2foru.site) and register an account 2. Navigate to the **API Keys** page (or visit [https://u2foru.site/?page=apikeys](https://u2foru.site/?page=apikeys)) 3. Click **Generate** to create your API Key (format: `sk-yt-xxxxx`) 4. Copy the key and paste it to OpenClaw when prompted That's it! You're ready to use the skill. ## Usage Once installed, just tell OpenClaw what you want. For example: > "帮我下载这个 YouTube 视频：https://youtube.com/watch?v=dQw4w9WgXcQ" > "Download this video in 1080p: https://youtube.com/watch?v=xxxxx" Supported resolutions: 360p, 480p, 720p (default), 1080p, best, audio-only. ## Authentication All API calls require an API Key in the Authorization header: ``` Authorization: Bearer sk-yt-xxxxx ``` Get your API Key at: https://u2foru.site/?page=apikeys ## Endpoints ### POST /api/v1/skill/download Download a YouTube video. **Request:** ```json { "youtube_url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", "resolution": "720" } ``` **Parameters:** - `youtube_url` (required): YouTube video URL - `resolution` (optional): "360", "480", "720", "1080", "best", "audio". Default: "720" **Response (success):** ```json { "success": true, "download_url": "https://oss-bucket.aliyuncs.com/skill/abc123/video.mp4", "video_title": "Video Title", "video_duration": 212, "file_size": 52428800, "resolution": "720", "processing_time": 45.2 } ``` ### GET /api/v1/skill/balance Check account status. **Response:** ```json { "username": "user123" } ``` ### GET /api/v1/skill/health Health check (no authentication required). **Response:** ```json { "status": "healthy", "service": "YouTube Video Downloader Skill", "version": "1.0.0" } ``` ## Error Codes | Code | Meaning | |------|---------| | 200 | Success | | 401 | Invalid or missing API Key | | 400 | Invalid request (bad URL, etc.) | | 500 | Server error | ## Example (curl) ```bash # Download a video curl -X POST https://u2foru.site/api/v1/skill/download \ -H "Authorization: Bearer sk-yt-xxxxx" \ -H "Content-Type: application/json" \ -d '{"youtube_url": "https://youtube.com/watch?v=dQw4w9WgXcQ", "resolution": "720"}' ``` ## Example (Python) ```python import requests [REDACTED_SECRET]" BASE_URL = "https://u2foru.site" # Download resp = requests.post( f"{BASE_URL}/api/v1/skill/download", headers={"Authorization": f"Bearer {API_KEY}"}, json={"youtube_url": "https://youtube.com/watch?v=dQw4w9WgXcQ", "resolution": "720"} ) data = resp.json() if data["success"]: print(f"Download URL: {data['download_url']}") ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: suspicious | SkillSpector: suspicious (MEDIUM)
Skill: goldath/meeting-notes-cn (version 1.0.0)

--- name: meeting-notes description: Use when you need to organize meeting notes, extract action items, and generate structured summaries. Ideal for processing raw meeting transcripts or bullet notes into clean, shareable documents with clear owners and deadlines. --- # Meeting Notes Organizer & Action Item Extractor Transform raw meeting notes into structured, actionable summaries. ## When to Use - After any meeting to create a clean summary - Processing audio transcripts from Zoom/Teams/飞书 - Weekly standups, sprint reviews, project kick-offs - Turning messy notes into shareable team documents ## Core Workflow ### Step 1: Input Collection Provide any of: - Raw bullet-point notes - Audio transcript text - Voice memo content - Email thread summary ### Step 2: Meeting Structure Template ```markdown ## 会议纪要 | Meeting Summary **会议主题 / Topic:** [填写] **日期 / Date:** YYYY-MM-DD **参会人 / Attendees:** [姓名列表] **主持人 / Facilitator:** [姓名] **记录人 / Note-taker:** [姓名] --- ## 议题讨论 | Discussion Points ### 1. [议题标题] - **背景:** 简要说明 - **讨论内容:** 关键讨论点 - **结论/决议:** 明确的决定 ### 2. [议题标题] ... --- ## 行动项 | Action Items | # | 任务 | 负责人 | 截止日期 | 优先级 | 状态 | |---|------|--------|----------|--------|------| | 1 | [任务描述] | @姓名 | MM-DD | 高/中/低 | 待开始 | | 2 | | | | | | --- ## 待确认事项 | Open Questions - [ ] [问题1] — 负责跟进：@姓名 - [ ] [问题2] --- ## 下次会议 | Next Meeting **时间:** [日期时间] **议题预告:** [下次讨论的主要议题] ``` ### Step 3: Action Item Extraction Rules When extracting action items, look for: - **动词短语**: "需要"、"要"、"将"、"负责"、"跟进" - **English triggers**: "will", "need to", "action:", "owner:", "TODO" - **Implicit owners**: If someone proposed something, they likely own it - **Deadlines**: Extract explicit dates; if none, flag as "TBD" ### Step 4: Priority Classification ``` 高优先级 (High): 影响下次会议、有明确截止日期、阻塞其他任务 中优先级 (Medium): 本周内需完成、依赖关系中等 低优先级 (Low): 长期改进、无明确截止日期 ``` ### Step 5: Distribution Checklist - [ ] 发送给所有参会人 - [ ] 同步到项目管理工具（Jira/飞书/Notion） - [ ] 在下次会议前 review 行动项完成情况 - [ ] 未完成项自动滚动到下次会议 ## Output Formats **Slack/飞书快速摘要:** ``` 📋 [会议主题] 纪要 - YYYY-MM-DD ✅ 决议：[1-2句核心决定] 📌 行动项（共N项）： · @张三 - [任务] - 截止 MM-DD · @李四 - [任务] - 截止 MM-DD ❓ 待确认：[未解决问题数] 完整纪要：[链接] ``` ## Pro Tips 1. **会议开始前** 明确记录人，确保覆盖所有行动项 2. **实时确认** 行动项负责人，不要会后猜测 3. **48小时原则** 会议结束48小时内发出纪要 4. **版本控制** 大型会议纪要建议保存版本历史


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: lijinfeng2011/openc3-flow (version 1.0.0)

--- name: openc3-flow description: "Get all CI/CD flows from Open-C3 platform. Returns the complete list of flows in the system." metadata: { "openclaw": { "emoji": "🚀", "requires": { "bins": ["curl", "jq"] } } } --- # Open-C3 Flow List Skill Retrieve all CI/CD flows from Open-C3 platform via API. ## Configuration This skill requires three configuration parameters: 1. **OPEN_C3_URL**: The base URL of your Open-C3 deployment (e.g., `http://192.168.10.67/`) 2. **APP_NAME**: Your application name for API authentication (e.g., `jobx`) 3. **APP_KEY**: Your application key for API authentication ### Setting Up Configuration Configuration is stored in `config.env` in the skill directory. ## When to Use ✅ **USE this skill when:** - "Get all flows from the system" - "List all CI/CD pipelines" - "Show me all available flows" - "What flows are configured in Open-C3?" ## API Endpoint ### Get All Flows ```bash curl -X GET "${OPEN_C3_URL}/api/ci/group/ci/dump" \ -H "appname: ${APP_NAME}" \ -H "appkey: ${APP_KEY}" ``` **Response:** Returns a JSON object containing all flows in the system, organized by service tree. ## Examples **Get all flows:** ```bash ./scripts/list-all-flows.sh ``` **Output Format:** The script returns a formatted table with: - Total count of all flows - Table with columns: ID, Name, Service Tree ID, Service Tree Name, Source Address - Summary statistics grouped by service tree ## Notes - All API calls require `appname` and `appkey` headers - This endpoint returns all flows across all service trees - Keep your `APP_KEY` secure and never commit it to version control


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: grzesir/botspot-trading (version 1.0.0)

--- name: BotSpot Trading Strategy Builder description: Build, backtest, and deploy algorithmic trading strategies using BotSpot's MCP server. Describe your strategy in plain English, AI generates the code, backtest on real data, deploy live to your broker. category: Finance author: Lumiwealth version: 1.0.0 connector: botspot connector_url: https://mcp.botspot.trade/mcp website: https://botspot.trade --- # BotSpot Trading Strategy Builder You are a trading strategy assistant connected to BotSpot via MCP. You help users create, test, and deploy algorithmic trading strategies. ## What you can do 1. **Generate strategies** from plain English descriptions using the `generate_strategy` tool 2. **Backtest strategies** on historical data using `start_backtest`, then check progress with `backtest_status` 3. **Analyze results** using `get_backtest_artifact` and `query_csv` for SQL queries on trade data 4. **View charts** using `get_backtest_visuals` and `get_backtest_chart_series` 5. **Browse the marketplace** using `list_public_bots` to find community strategies 6. **Deploy live** using the deployment tools, connected to 10+ brokers ## Supported assets Stocks, options, crypto, and futures. ## Supported brokers Charles Schwab, Interactive Brokers, Alpaca, Tradier, Tradeovate, Coinbase, Binance, Kraken, KuCoin, NinjaTrader. ## Workflow When a user asks you to create a trading strategy: 1. Ask clarifying questions about their idea (asset, timeframe, entry/exit rules, risk management) 2. Use `generate_strategy` to create the strategy code 3. Suggest running a backtest with `start_backtest` (recommend a 1-2 year date range) 4. Monitor with `backtest_status` and report progress 5. When complete, use `get_backtest_artifact` to get the tearsheet and `query_csv` to analyze trades 6. Present results: total return, max drawdown, Sharpe ratio, win rate, number of trades 7. Offer to refine with `refine_strategy` if the user wants changes 8. When satisfied, offer to deploy live ## Important notes - Always show backtest results before suggesting live deployment - Warn users that past performance does not guarantee future results - Free tier allows 2 strategy generations and 30 minutes of backtesting per month - Use `get_account_status` to check the user's remaining limits before starting work - Never fabricate performance numbers. Only report data from actual backtests. ## Example prompts - "Create a momentum strategy for SPY using moving average crossovers" - "Build an options credit spread strategy that sells puts when RSI is oversold" - "Make a crypto trend-following bot for BTC that uses ATR for position sizing" - "Show me the top performing bots in the marketplace" - "Backtest my strategy over the last 3 years and show me the equity curve" ## Setup Connect BotSpot via Settings > Connectors > Add custom connector. URL: https://mcp.botspot.trade No API key needed for OAuth flow. See https://botspot.trade/agents for details.


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: timo2026/adversarial-engine (version 1.0.0)

--- name: adversarial-engine version: 2.0.0 priority: P1 description: "多模型对抗引擎 - 四模型真实对抗辩论系统。架构师+工程师+安全官+仲裁者协作，代码沙箱验证，向量检索增强，收敛判断自动熔断。" author: 海狸 🦫 triggers: - 多模型对抗 - 对抗辩论 - 方案评审 - 代码验证 --- # 多模型对抗引擎 v2.0 ## 核心能力 | 能力 | 说明 | |------|------| | 🎭 四模型对抗 | 架构师/工程师/安全官/仲裁者真实协作 | | 🔧 代码沙箱 | 工程师生成代码 → Python执行验证 | | 📚 向量检索 | 对话前检索知识库，避免假数据 | | ⚖️ 收敛判断 | 仲裁者动态判断，避免无限循环 | | 🔄 断点续传 | 中断后可恢复辩论 | | 📡 WebSocket | 实时推送辩论进度 | --- ## 四模型配置 | 角色 | 模型 | 职责 | |------|------|------| | 🏗️ 架构师 | qwen3.5-plus | 方案生成 | | 🔧 工程师 | qwen3-coder-plus | 代码实现+验证 | | 🔍 安全官 | kimi-k2.5 | 漏洞攻击 | | ✅ 仲裁者 | MiniMax-M2.5 | 收敛判断 | --- ## 执行流程 ``` 用户输入 ↓ [1] 向量检索 → 知识库增强 ↓ [2] 架构师 → 提出方案 ↓ [3] 工程师 → 生成代码 → Python沙箱执行 ↓ [4] 安全官 → 攻击漏洞 ↓ [5] 仲裁者 → 收敛判断 ↓ [6] 未收敛 → 返回[2]继续 ↓ 已收敛 [7] 保存结论 → 知识库固化 ``` --- ## API接口 ### 启动对抗 ```python from adversarial_engine import AdversarialEngine engine = AdversarialEngine() session = engine.run_debate( topic="如何设计高并发CNC报价系统？", max_rounds=5, enable_code_sandbox=True, enable_vector_search=True ) ``` ### WebSocket实时推送 ``` ws://host:8083/ws → 实时推送每轮辩论内容 ``` --- ## 文件结构 ``` adversarial-engine/ ├── SKILL.md # 本文件 ├── engine.py # 核心引擎 ├── code_sandbox.py # Python沙箱 ├── vector_enhancer.py # 向量检索增强 ├── ws_server.py # WebSocket服务 └── database.py # 数据持久化 ``` --- 🦫 海狸 | 靠得住、能干事、在状态


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: arthasking123/ai-data-scraper (version 1.0.0)

# SKILL.md # Data Scraping Service 自动化数据抓取和清洗服务。 ## 能力 - Web 网页抓取 - API 数据提取 - 数据清洗和格式化 - 批量抓取任务 - 定时监控 ## 使用方式 ```bash # 抓取网页数据 openclaw run scraper --url "https://example.com" --format "json" # 抓取 API openclaw run scraper --api "https://api.example.com/data" --output "data.json" # 定时抓取 openclaw run scraper --cron "0 */6 * * *" --target "stocks" ``` ## 收费模式 - **单次抓取:** $5-20 - **月度订阅:** $50-200 - **API 集成:** 按项目收费 ## 特性 - ✅ 支持 HTML/JSON/XML - ✅ 代理池支持 - ✅ 自动重试 - ✅ 数据去重 - ✅ 实时监控 ## 开发者 OpenClaw AI Agent License: MIT Version: 1.0.0


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: suspicious | SkillSpector: clean (LOW)
Skill: azimao/cmdb-test (version 1.0.0)

--- name: cmdb-test version: 1.0.0 description: 自动化 IMyFone CMDB 版本发布到测试环境 - 一键发布应用 keywords: - cmdb - release - test - deployment - automation - imyfone --- # CMDB 测试环境发布 Skill 在 IMyFone CMDB 平台上自动完成指定应用到**测试环境**的版本发布流程。 ## 功能 - 自动打开 CMDB 版本发布页面 - 自动登录（如未登录） - 查找并点击目标应用的「发布」按钮 - 自动选择 release2 分支 - 自动选择测试环境（香港-通用-测试） - 填写版本描述并提交发布申请 ## 使用场景 用户说「发布 icart-api 到测试」或「对 xxx 应用进行测试发布」时触发。 ## 输入参数 | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | appName | string | 是 | 应用名称，如 `icart-api` | | description | string | 否 | 版本描述，默认为空 | ## 关键信息 - **CMDB 地址**: https://cmdb.imyfone.club/#/cicd/release - **固定分支**: release2 - **固定环境**: 香港-通用-测试（测试环境） > ⚠️ 注意：首次使用需要在 CMDB 平台登录一次，之后会自动保存登录状态。 ## 执行步骤 ### 第一步：打开页面并检查登录状态 1. 使用 browser 工具打开 `https://cmdb.imyfone.club/#/cicd/release` 2. 截图/snapshot 检查是否出现登录表单 3. 如果出现登录表单，请使用你的 CMDB 账号登录 4. 如果已登录，直接进入发布页面 ### 第二步：查找并点击发布按钮 1. 在应用列表中找到目标应用行（应用名称列匹配 `appName`） 2. 点击该行的「发布」按钮 ### 第三步：填写发布表单 1. 等待发布对话框出现 2. 确认「应用名称」字段（通常预填充） 3. 自动选择「分支或标签」为 `release2` 4. 自动选择「环境」为 `香港-通用-测试` 5. 如果传入了 `description`，填写版本描述字段 ### 第四步：提交发布 1. 点击「确认」按钮 2. 等待提交成功提示（通常显示「版本发布申请已经提交」） 3. 汇报结果 ## 注意事项 - 此 Skill 仅用于测试环境发布 - 分支和环境已固定，无需手动选择 - 确认前仔细核对应用名称是否正确 - 发布成功后提示用户可在「版本发布记录」中查看进度 ## 错误处理 - 页面加载超时：等待 5 秒后重试 - 应用未找到：提示用户检查应用名称是否正确 - 提交失败：截图错误信息并告知用户 ## 支持的应用 - icart-api - icart-ma - icart-task - 其他 CMDB 应用


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: qdsang/niu-vehicle (version 0.1.0)

--- name: niu-vehicle description: "Connect to NIU smart electric vehicles to retrieve real-time status - battery level, charging status, remaining charge time, location, and total mileage. Also answer questions like 'how much battery left?', 'is charging?', 'where is my scooter?', 'total km ridden?'." homepage: https://www.niu.com/ user-invocable: true metadata: {"openclaw": {"requires": {"bins": ["curl"]}, "primaryEnv": "NIU_API_KEY"}} --- # NIU Scooter Status Query your NIU electric scooter status - battery, charging, location, and mileage. ## API Endpoint ```bash curl -s "https://ai-mcp.niu.com/claw/scooter_info?key=$NIU_API_KEY" ``` ## Token Resolution Ensure `NIU_API_KEY` is available. If empty, it will be read from config in order: 1. Environment variable: `$NIU_API_KEY` 2. Config file: `~/.openclaw/openclaw.json` 3. Config file: `/data/.clawdbot/openclaw.json` ```bash export NIU_API_KEY=$(cat ~/.openclaw/openclaw.json 2>/dev/null | jq -r '.skills.entries["niu-vehicle"].apiKey // empty') ``` ## Response Fields | Field | Type | Description | |-------|------|-------------| | `batteryLevel` | number | Battery percentage (0-100) | | `estimatedRange` | string | Estimated remaining range (km) | | `isCharging` | boolean | Whether currently charging | | `chargingRemainingTime` | number | Remaining charge time (minutes) | | `location` | string | Current scooter location address | | `totalMileage` | number | Total distance ridden (km) | | `lastUpdate` | string | Last update timestamp | ## Example Response ```json { "status": 0, "data": { "batteryLevel": 62, "estimatedRange": "55", "isCharging": true, "chargingRemainingTime": 216, "location": "XX市 XX楼", "totalMileage": 172, "lastUpdate": "2026-03-12 17:37:53" } } ``` ## Error Handling | Error | Description | |-------|-------------| | HTTP 401/403 | Authentication failed. Check your API key in the OpenClaw dashboard or config file. | | HTTP 404 | API endpoint not found. Check the API URL. | | Timeout | Request timed out. Try again later. | ## Get API Key 1. Visit niu.com and log in 2. Go to「My」→「API-Key Management」 3. Create or copy your API key ## Can Answer - 当前电量是多少？ - 电动车还能跑多远？ - 车在充电吗？还要充多久？ - 车子现在在哪里？ - 总共骑了多少公里？ - 电池什么时候能充满？


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: wangxiaofei860208-source/lobster-subagent-dev (version 1.0.0)

--- name: lobster-subagent-dev version: 1.0.0 description: "Subagent-driven development. Dispatch fresh subagent per task with 2-stage review (spec + quality). Cost-aware model routing. From Superpowers by Jesse Vincent." author: "Super Lobster 🦞" tags: ["subagent", "development", "tdd", "review", "parallel"] license: MIT --- # Lobster Subagent-Driven Development 🦞 **Fresh subagent per task. Two-stage review. Ship with confidence.** Inspired by [Superpowers](https://github.com/obra/superpowers) by Jesse Vincent. ## Core Principle ``` Fresh subagent per task + 2-stage review = high quality, fast iteration ``` Subagents never inherit session context. You construct exactly what they need. This preserves your own context for coordination work. ## The Process ### 1. Read Plan → Extract Tasks - Read implementation plan once - Extract ALL tasks with full text - Create TodoWrite tracking ### 2. Per Task: Implementer → Spec Review → Quality Review ``` [Dispatch Implementer] ↓ (if questions → answer → re-dispatch) [Implementer: implement + test + commit + self-review] ↓ [Dispatch Spec Reviewer] ↓ ❌ → Fix → Re-review ↓ ✅ [Dispatch Code Quality Reviewer] ↓ ❌ → Fix → Re-review ↓ ✅ [Mark task complete] ↓ [Next task...] ``` ### 3. Final Review After all tasks complete: - Dispatch final code reviewer for entire implementation - Verify all requirements met - Run full test suite ## Model Selection | Task Type | Model | Why | |-----------|-------|-----| | 1-2 files, complete spec | Cheapest | Mechanical | | Multi-file integration | Standard | Needs judgment | | Architecture/review | Strongest | Needs expertise | ## Agent Status Handling | Status | Action | |--------|--------| | DONE | Proceed to spec review | | DONE_WITH_CONCERNS | Read concerns, then decide | | NEEDS_CONTEXT | Provide context, re-dispatch | | BLOCKED | Change model / split task / escalate | ## Never - Skip reviews (spec OR quality) - Start quality review before spec passes - Let implementer self-review replace actual review - Move to next task while review has open issues - Dispatch multiple implementers in parallel (conflicts)


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: kimchichobo/plvr-event-discovery-safe (version 1.0.0)

--- name: plvr-event-discovery description: Discover and compare live events on plvr.io by date, city, genre, and budget using the public web flow. Provide concise recommendations, visible pricing/availability signals, and planning details. This skill does not execute checkout or payment. --- # PLVR Event Discovery (Safe Scope) ## Purpose Use browser automation to help users discover and compare events on `https://plvr.io`. This skill is intentionally limited to **discovery and planning**. It does **not** perform checkout, payment submission, wallet interactions, or irreversible purchase actions. ## Safety Guardrails - Discovery-only scope: browsing, filtering, comparing, and summarizing events. - Never submit checkout/payment forms. - Never request or handle secrets (wallet seed phrases, private keys, passwords, OTPs). - Never collect sensitive personal data beyond what is needed for planning preferences. - If the user asks to purchase, stop and ask for explicit confirmation to switch to a separate checkout workflow/skill. ## Workflow 1. Open `https://plvr.io`. 2. Gather relevant options based on user preferences (date, city, artist/genre, venue, budget). 3. Capture visible event details: - event title - date/time - venue/city - visible ticket price tiers - visible availability indicators 4. Present top options and explain tradeoffs. 5. If asked for next steps, provide non-transactional guidance (what to click next), without submitting checkout/payment. ## Output Format - Event: <name> - Date/Time: <when> - Venue/City: <where> - Price (visible): <tier/range> - Availability signal: <available/low/unknown> - Why it matches: <1-line reason> - Next step: <non-transactional guidance> ## Known Notes - Source of truth is the live website UI. - Availability and pricing can change quickly. - If details are missing on listing pages, open the event page and verify before recommending.


Security scan verdicts — ClawScan: clean | static analysis:  | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: baiyea/wh-x-post (version 1.0.0)

# Twitter Post Skill 你是一个 Twitter/X 操作助手。当用户请求发送推文、回复推文或引用转发时，使用本技能。 ## 前置条件 用户首次使用时，如果未安装 twitter-cli，请引导用户执行以下命令安装： ```bash pip install twitter-cli # 或 uv tool install twitter-cli # 或 pipx install twitter-cli ``` 安装后，用户需要在浏览器（支持 Arc/Chrome/Edge/Firefox/Brave）中登录 Twitter/X。 ## 触发场景 - 用户说"发到 Twitter" / "发推" / "post to Twitter" / "帮我发这条" - 用户说"回复这条推文" / "reply to this" - 用户说"引用转发" / "quote tweet" ## 工具使用 **重要**：所有脚本均支持 `--json` 参数以结构化 JSON 格式输出结果，便于解析。 ### 1. 发送推文 当用户请求发送推文时，先确认内容，然后执行： ```bash python <本技能目录>/scripts/post.py "<推文内容>" --json ``` 如果需要附带图片： ```bash python <本技能目录>/scripts/post.py "<推文内容>" --images /path/to/img1.jpg,/path/to/img2.jpg --json ``` ### 2. 回复推文 当用户请求回复推文时，先确认 tweet_id 和回复内容，然后执行： ```bash python <本技能目录>/scripts/reply.py <tweet_id> "<回复内容>" --json ``` ### 3. 引用转发 当用户请求引用转发时，先确认 tweet_id 和评论文字，然后执行： ```bash python <本技能目录>/scripts/quote.py <tweet_id> "<评论文字>" --json ``` ### 4. 检查登录状态 如需确认用户是否已登录 Twitter： ```bash python <本技能目录>/scripts/whoami.py --json ``` ## 操作流程示例 ### 发推 用户："帮我把这段话发到 Twitter" AI："当然可以！请确认以下内容：'...'" 用户确认后，AI 执行脚本并返回 tweet URL。 ### 回复 用户："回复这条推文 123456789" AI 执行：`python scripts/reply.py 123456789 "我的回复内容" --json` ### 引用转发 用户："引用转发这条 tweet 987654321" AI 执行：`python scripts/quote.py 987654321 "我的评论" --json` ## 注意事项 - 推文内容不超过 280 字符（不含链接） - 最多附带 4 张图片 - 发推前应确认内容是否正确 - 如果用户没有明确指定内容，可以用 AI 帮用户生成合适的推文文案 - 如果执行失败，检查 twitter-cli 是否已安装，以及用户是否已在浏览器登录 Twitter - tweet_id 可以是纯数字 ID，也可以是完整的 Twitter URL（如 https://twitter.com/user/status/123456789）

path: scripts/__init__.py
content: # Twitter Skill scripts package


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: tangc/jimeng-t2i-i2i-image-generator (version 0.1.0)

--- name: jimeng description: Use Jimeng AI 4.0 (Volcengine) to generate images from text or image references, and optionally send results to Feishu. --- # Jimeng AI 4.0 图片生成 Skill 使用火山引擎即梦AI 4.0 生成图片。 ## 环境变量 ```bash export VOLCENGINE_AK="你的AccessKeyID" export VOLCENGINE_SK="你的SecretAccessKey" ``` ## 使用方式 ```bash ./jimeng.sh <mode> <prompt> [reference_url] [target] [options] ``` ### 参数说明 | 参数 | 必填 | 说明 | |------|------|------| | mode | ✅ | `t2i` (文生图) 或 `i2i` (图生图) | | prompt | ✅ | 图片描述 | | reference_url | 图生图时可选 | 参考图片URL，不填则使用默认图片 | | target | 可选 | 飞书用户ID，如 `user:ou_xxx`，不填则只输出URL | | options | 可选 | 额外选项，如 `force_single=true` | ## 示例 ### 文生图 (t2i) ```bash # 文生图 - 生成一只可爱的猫咪 ./jimeng.sh t2i "一只可爱的猫咪" # 文生图 - 发送给飞书用户 ./jimeng.sh t2i "蓝天白云" "user:ou_5ab7e4d11d7f28bebff34796cc967e24" # 文生图 + 参考风格图 ./jimeng.sh t2i "变成油画风格" "https://example.com/style.jpg" ``` ### 图生图 (i2i) ```bash # 图生图 - 使用默认参考图（Clawra头像） ./jimeng.sh i2i "戴上墨镜" # 图生图 - 使用默认参考图 ./jimeng.sh i2i "变成卡通风格" # 图生图 - 自定义参考图 ./jimeng.sh i2i "把这张照片变成素描风格" "https://example.com/photo.jpg" # 图生图 - 发送给飞书用户 ./jimeng.sh i2i "戴上牛仔帽" "" "user:ou_xxx" ``` ## 默认参考图 图生图模式默认使用 Clawra 头像作为参考： ``` https://cdn.jsdelivr.net/gh/SumeLabs/clawra@main/assets/clawra.png ``` ## 输出说明 - 直接运行：输出图片URL - 指定 target：自动发送到飞书 ## 图片格式 - 即梦AI 默认输出 **PNG 格式** - URL 后缀是 `.image`，飞书可以正常发送 - 用户保存：复制链接后把 `.image` 改成 `.png` ## 文件结构 ``` jimeng/ ├── SKILL.md # 本文件 └── scripts/ ├── sign.py # 火山引擎签名 └── jimeng.sh # 主脚本 ```


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