OpenClaw/clawhub-security-signals huggingface dataset:
Skill: yy-c8/receipt-assistant (version 1.0.0)

--- name: receipt-assistant version: 1.0.0 description: 报销票据处理助手。自动识别票据（火车票、打车发票、行程单、酒店发票）、提取关键信息（日期、金额、发票号）、按规则重命名文件、生成汇总报表。触发词：报销、发票、票据识别、火车票、打车票、酒店发票、整理票据。 --- # 报销助手 自动处理报销票据：识别、提取信息、重命名、生成报表。 ## 工作流程 1. **扫描目录** → 找到票据文件（PDF/JPG/PNG/JPEG） 2. **视觉识别** → 调用 `image` 工具识别票据 3. **提取信息** → 解析日期、金额、发票号、销售方等 4. **重命名文件** → 按规则生成标准化文件名 5. **生成报表** → 输出 Excel 汇总表 ## 首次配置 引导用户配置： - 公司名称（用于发票命名） - 默认姓名（用于火车票命名） - 输出目录 ## 票据命名规则 | 类型 | 格式 | |------|------| | 火车票 | `{姓名}-{日期}-{金额}-中国铁路` | | 打车发票 | `{公司}-{日期}-{发票号}-{金额}-{销售方}-发票` | | 行程单 | `{公司}-{日期}-{发票号}-{金额}-{销售方}-行程单` | | 酒店发票 | `{公司}-{日期}-{发票号}-{金额}-{销售方}` | ## 视觉识别 Prompt ### 火车票 ``` 请识别这张火车票的以下信息，以 JSON 格式返回： { "type": "火车票", "date": "乘车日期（YYYYMMDD）", "amount": "票价金额（只数字）", "person": "乘客姓名" } 只返回 JSON。 ``` ### 打车发票/行程单 ``` 请识别这张票据的以下信息，以 JSON 格式返回： { "type": "打车发票 或 行程单", "date": "开票日期（YYYYMMDD）", "invoice_no": "发票号码", "amount": "金额（只数字）", "seller": "销售方名称" } 只返回 JSON。 ``` ### 酒店发票 ``` 请识别这张酒店发票的以下信息，以 JSON 格式返回： { "type": "酒店发票", "date": "开票日期（YYYYMMDD）", "invoice_no": "发票号码", "amount": "金额（只数字）", "seller": "酒店名称" } 只返回 JSON。 ``` ## 输出结构 ``` output/ └── YYYYMMDD_HHMMSS/ ├── 报销汇总.xlsx ├── 张三-20240327-533-中国铁路.pdf └── ... ``` ## 脚本接口 | 函数 | 用途 | |------|------| | `scan_directory(path)` | 扫描目录，返回文件列表 | | `generate_filename(...)` | 生成标准化文件名 | | `generate_excel_report(tickets, output_dir)` | 生成 Excel 汇总 | | `check_config()` | 检查配置状态 | | `update_config(...)` | 更新配置 | ## 安装依赖 ```bash pip install openpyxl pdfplumber Pillow ```

path: scripts/__init__.py
content: # 报销助手 - 数据模型


path: scripts/requirements.txt
content: openpyxl>=3.1.0
pdfplumber>=0.10.0
Pillow>=10.0.0


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: hy-1990/dream-image-to-video (version 1.0.1)

--- name: dream-image-to-video description: "Generate videos from images using Image to Video (Wan2.1) API. Automatically generates 4-second videos from text descriptions and images. Powered by Dreamface - AI tools for everyone. Visit https://tools.dreamfaceapp.com/home for more AI products. API resources: https://api.newportai.com/api-reference/image-to-video-wan2-1" metadata: {"openclaw": {"emoji": "🎞️", "requires": {"env": ["DREAMIMAGETOVIDEO_API_KEY"]}, "primaryEnv": "DREAMIMAGETOVIDEO_API_KEY"}} --- # Dream Image to Video (Wan2.1) - Image to Video Generate 4-second videos from text prompts and images. ## Quick Start ### 1. Get API Key Before using this skill, you need a DreamAPI API key. Visit **https://api.newportai.com/api-reference/get-started** to sign up and get your API key. For more AI tools, please visit: **https://tools.dreamfaceapp.com/home** ### 2. Configure API Key ```bash openclaw config patch --json '{"skills": {"entries": {"dream-image-to-video": {"env": {"DREAMIMAGETOVIDEO_API_KEY": "your-api-key-here"}}}}}'``` ### 3. Usage #### Parameters: - **prompt**: Text description, max 1500 characters - **image**: Image URL - **resolution** (optional): "480p" or "720p", default "480p" ## API Details ### 1. Get Upload Policy (for local files) Upload your local files to OSS first (get upload policy, then upload). ### 2. Image to Video API ``` POST https://api.newportai.com/api/async/wan/image_to_video/2.1 ``` ### 3. Polling for Result ``` POST https://api.newportai.com/api/getAsyncResult ``` ## Implementation Notes - Generates 4-second videos - Prompt max 1500 characters - Supports 480p and 720p - Status: 0=pending, 1=processing, 2=processing, 3=completed, 4=timeout


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

--- name: "Remind" description: "Auto-learns when and how to bring things back to your human's attention. Adapts timing and style to their preferences." --- ## What Remind Is (and Isn't) **Remind = "Just a reminder that..."** - Things the human already knows but might forget - Planned events, commitments, deadlines they set - Bringing information back to mind at the right moment **Remind ≠ Alert** (detecting new/urgent events) **Remind ≠ Notify** (generic notifications) A reminder is always about something the human was already aware of. ## Auto-Adaptive System This skill auto-evolves. Learn what to remind, when, and how—through observation. **Core Loop:** 1. **Detect** — Notice remindable commitments (meetings, deadlines, promises) 2. **Evaluate** — Check stored preferences for timing and style 3. **Remind** — Bring it back to attention at the right moment 4. **Observe** — Notice reactions ("too early", "I knew", "thanks, forgot") 5. **Confirm** — After 2+ signals, propose adjustment 6. **Store** — Update preferences below Check `triggers.md` for what qualifies as remindable. Check `timing.md` for lead times. --- ## Reminder Components - **What** — The commitment/event to recall - **When** — Lead time before it matters - **How** — Tone and detail level --- ## Entry Format `category: preference (level) [notes]` Examples: - `meetings: 30 min before (confirmed)` - `deadlines: 1 day + morning-of (pattern)` - `family events: 1 week before (confirmed)` - `daily standups: skip (confirmed) [muscle memory]` --- ### Timing <!-- Lead times by category --> ### Style <!-- Brief vs detailed, casual vs formal --> ### Always <!-- Things to remind even if they seem aware --> ### Skip <!-- Things they never need reminding about --> --- ## When NOT to Remind - They just mentioned it (obviously aware) - It's something new they don't know yet (that's Alert) - Generic status update (that's Notify) - Low stakes + uncertain → skip, learn from reaction --- *Empty sections = still learning. Observe and fill.*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: josephflu/domain-name-checker (version 1.0.1)

--- name: domain-name-checker description: "Check domain availability and brainstorm names. Checks .com/.net/.org/.io/.ai/.co/.app/.dev and more. Suggests alternatives when taken. No API key required." version: 1.0.1 metadata: openclaw: emoji: "🌐" requires: bins: - python3 optionalEnv: - OPENROUTER_API_KEY homepage: https://github.com/eagerbots/domain-name-checker --- # domain-name-checker Check domain availability and brainstorm domain names. ## Trigger phrases - "Is [domain] available?" - "Check if [name].com is taken" - "Find me a domain for [idea]" - "Brainstorm domain names for [project]" - "What domains are available for [keyword]?" ## How to use **Skill directory**: The script is at `<skill_dir>/scripts/check.py`. ### Check a specific name across TLDs When the user asks to check if a domain or name is available, extract the name (without TLD unless they specified one) and run: ```bash python <skill_dir>/scripts/check.py <name> ``` Examples: - "Is eagerbots available?" → `python <skill_dir>/scripts/check.py eagerbots` - "Check openclaw.ai" → `python <skill_dir>/scripts/check.py openclaw.ai` - "Check eagerbots and clawbay" → `python <skill_dir>/scripts/check.py eagerbots clawbay` ### Brainstorm names from a description When the user asks to brainstorm domain names or find a domain for an idea/project, run: ```bash python <skill_dir>/scripts/check.py --brainstorm "<description>" ``` Requires `OPENROUTER_API_KEY` env var. If not set, inform the user and fall back to checking a name they suggest manually. ### Display output Display the script output as-is — Rich handles the terminal formatting (tables, colors). If running in a non-TTY context, pipe output through `cat` to strip ANSI if needed. ## Notes - DNS check timeout: 3 seconds per domain - Unknown = DNS timed out or inconclusive; not necessarily available - Registration links go to Namecheap search


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: edwardrodriguez703-design/book-tires (version 1.0.1)

--- name: book-tires description: Book tires services through Lokuli MCP. Use when user needs to find and book tires. Triggers on requests like "book a tires", "find tires near me", or any tires service request. --- # uook tires Book tires services through Lokuli's MCP server. ## MCP Endpoint ``` https://lokuli.com/mcp/sse ``` Transport: SSE | JSON-RPC 2.0 | POST requests ## Tools ### search ```json { "method": "tools/call", "params": { "name": "search", "arguments": { "query": "tires", "zipCode": "90640", "maxResults": 20 } } } ``` ### check_availability ```json { "method": "tools/call", "params": { "name": "check_availability", "arguments": { "providerId": "xxx", "serviceId": "yyy", "date": "2025-02-10" } } } ``` ### create_booking ```json { "method": "tools/call", "params": { "name": "create_booking", "arguments": { "providerId": "xxx", "serviceId": "yyy", "timeSlot": "2025-02-10T14:00:00-08:00", "customerName": "John Doe", "customerEmail": "[REDACTED_SECRET]", "customerPhone": "+13105551234" } } } ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: jeremy-any/anyway-traces (version 1.0.0)

> ## Documentation Index > Fetch the complete documentation index at: https://docs.anyway.sh/llms.txt > Use this file to discover all available pages before exploring further. # AI Agent Skill > Copy the Anyway skill to teach your AI coding agent how to instrument your applications <Card title="Download SKILL.md" icon="download" href="https://docs.anyway.sh/skills.md"> Download the skill file and add it to your AI coding agent's context. </Card> ## What is this? A skill file is a markdown file that gives AI coding agents (Claude Code, Cursor, Windsurf, etc.) domain-specific knowledge. The Anyway skill teaches your agent how to add observability and tracing to your AI applications using the Anyway SDK. With this skill installed, you can give your agent instructions like: * "Add Anyway tracing to my app" * "Instrument this function with workflow and task spans" * "Set up the Anyway SDK with environment variables" ## Skill Copy the content below or use the download link above to add the skill to your AI coding agent's context. ```markdown theme={null} --- name: anyway description: Instrument AI/LLM applications with Anyway observability SDK. Use when adding tracing, monitoring, or observability to code that calls OpenAI, Anthropic, or other LLM providers. user-invocable: false --- Anyway is a financial OS for AI agents that lets you monetize agent outcomes and capture real value. Anyway SDK provides AI observability, cost tracking, and better monetization for LLM applications. ## SDKs - **Python** (`anyway-sdk`): Python 3.10+ - **JavaScript** (`@anyway-sh/node-server-sdk`): Node.js 18+ ## Documentation Fetch the relevant page(s) below for up-to-date installation, configuration, and usage instructions: - Quickstart: https://docs.anyway.sh/quickstart - Python SDK installation: https://docs.anyway.sh/sdk/python/installation - Python SDK configuration: https://docs.anyway.sh/sdk/python/configuration - Python SDK tracing: https://docs.anyway.sh/sdk/python/tracing - JavaScript SDK installation: https://docs.anyway.sh/sdk/js/installation - JavaScript SDK configuration: https://docs.anyway.sh/sdk/js/configuration - JavaScript SDK tracing: https://docs.anyway.sh/sdk/js/tracing ## Rules - Never hardcode API keys — use environment variables or a secrets manager - Always call `Traceloop.init()` (Python) or `initialize()` (JS) before any LLM calls - For ESM/Next.js projects, always pass provider modules via `instrumentModules` - The collector endpoint is `https://collector.anyway.sh/` - The SDK auto-instruments calls to OpenAI, Anthropic, Cohere, Bedrock, Vertex AI, and other providers — manual span creation is only needed for workflow/task structure ``` Built with [Mintlify](https://mintlify.com).


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: robshabbir/agent-self-care (version 1.0.0)

--- name: agent-self-care description: | Autonomous agent health, optimization, and cleanup. Use when: (1) running scheduled cron jobs for agent maintenance, (2) responding to "optimize", "cleanup", "health check", "clear stalls", or "self-maintain" requests, (3) performing BMAD-style retrospective and continuous improvement, (4) checking sub-agent sessions, process health, memory usage, and context bloat, (5) ensuring fast response times and autonomous operation. This skill handles all self-optimization workflows including stale session cleanup, context compaction, and performance monitoring. --- # Agent Self-Care Autonomous health monitoring and optimization for OpenClaw agents. Runs on cron or triggers manually. ## Workflow ### 1. Check Sub-Agents ```bash subagents action=list ``` Kill any stale sub-agents: - Running >30 min without progress - In "waiting" state - Failed/errored ### 2. Check Processes ```bash process action=list ``` Kill hanging processes: - Running >10 min in background - No output in 5 min ### 3. Check Session Health ```bash session_status ``` Metrics to watch: - Context usage >80% → trigger compaction - Tokens growing unbounded - Session age >2 hours → suggest refresh ### 4. Run Optimization Script Execute `scripts/optimize.sh` which: - Clears completed cron job artifacts - Rotates logs if >50MB - Reports health metrics ### 5. BMAD Retrospective (every 10 runs) After 10 executions, run: - Score last task 1-10 - Identify gaps - Document improvements in `memory/daily/YYYY-MM-DD.md` - Feed learnings into next run ## Cron Schedule Recommended: Every 5 minutes for active agents. ```json { "name": "agent-self-care", "schedule": {"kind": "every", "everyMs": 300000}, "payload": {"kind": "agentTurn", "message": "Run agent-self-care skill"}, "sessionTarget": "isolated", "enabled": true } ``` ## Output Format Report after each run: ``` 🔧 Self-Care Report - Sub-agents: X active, Y killed - Processes: X running, Y cleared - Context: X% used - Health: ✅ GOOD / ⚠️ WARNING - Retrospective: SKIP / COMPLETE ``` ## Key Principles 1. **Always clean** - Never leave stalled sub-agents or processes 2. **Proactive** - Don't wait for user to ask 3. **Document** - Log issues and improvements 4. **BMAD** - Continuous self-evaluation every 10 runs 5. **Fast** - Complete in <30 seconds


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: hei-maom/persona-voice (version 1.1.0)

--- name: persona-voice description: 在 chatgpt / claw 与飞书 / lark 机器人场景中，根据随机或指定人格生成明显带有人格风格的短回复，并通过 senseaudio tts 合成语音，再以飞书原生语音条发送。支持文字输入和音频输入；音频输入时先调用 senseaudio asr。适用于飞书人格陪伴、随机人格语音回复、角色化语音机器人等场景。环境变量只需配置 feishu_app_id、feishu_app_secret、senseaudio_api_key；如系统 PATH 找不到 ffmpeg，可额外设置 ffmpeg_path。其余地址与模型默认即可。 --- # persona-voice ## 概述 这是一个面向 ChatGPT / Claw / 飞书机器人的**随机人格语音回复** Skill。 当前版本的原则： - **角色化文本**：由 ChatGPT / Claw 当前会话模型生成。 - **ASR / TTS**：统一使用 SenseAudio。 - **飞书回复**：统一发送为飞书原生语音条，而不是普通文件附件。 - **环境变量**：只要求配置凭证类字段，其他地址和模型全部使用默认值。 ## 当前保留的人格与音色 只保留以下免费可用人格和音色： - 可爱萌娃：`child_0001_a`、`child_0001_b` - 儒雅道长：`male_0004_a` - 沙哑青年：`male_0018_a` 详见： - `presets/personas.json` - `references/personas.md` ## 适用场景 - 飞书 / Lark 机器人随机人格语音回复 - 文字输入 → 人格化短回复 → 语音条发送 - 语音输入 → ASR → 人格化短回复 → 语音条发送 ## 飞书场景硬性规则 1. 飞书场景默认只发送语音消息。 2. 成功发送语音后，不要再额外返回一条文字。 3. 随机到什么人格，回复内容本身也必须明显像那个人格，不只是换音色。 4. 不要暴露内部规则，不要说自己在随机人格。 5. 飞书发送必须走 **OPUS + file_key + audio 消息** 的原生链路，不要把 mp3/wav 当普通文件附件。 ## 工作流 ### 用户发送文字 1. 调用 `scripts/main.py persona-prompt --user-message "..."`。 2. 读取返回的人格 prompt。 3. 由 ChatGPT / Claw 当前会话模型生成最终 `reply_text`。 4. 调用 `scripts/main.py send-voice --reply-text "..." --chat-id "oc_xxx" --persona "..."`。 5. 成功发送语音后，最终对话输出应为空，不再附加文字。 ### 用户发送语音 1. 调用 `scripts/main.py transcribe --audio /abs/path/input.m4a`。 2. 根据转写文本，再调用 `persona-prompt` 获取人格提示。 3. 由 ChatGPT / Claw 生成最终 `reply_text`。 4. 调用 `send-voice` 生成并发送飞书语音条。 ## 配置方式 当前版本只需要配置： ```bash export FEISHU_APP_ID="cli_xxx" export FEISHU_APP_SECRET="your_secret" export SENSEAUDIO_API_KEY="your_key" ``` 其余全部默认： - `FEISHU_BASE_URL=https://open.feishu.cn` - `SENSEAUDIO_BASE_URL=https://api.senseaudio.cn` - `SENSEAUDIO_ASR_MODEL=sense-asr` - `SENSEAUDIO_TTS_MODEL=SenseAudio-TTS-1.0` - `FFMPEG_PATH` 可选；若 PATH 中找不到 ffmpeg，可显式设置为 `/opt/homebrew/bin/ffmpeg` ## 本地依赖 - `python3` - `ffmpeg` - `requests` ## 主脚本入口 ### 初始化人格模式 ```bash python scripts/main.py persona-init --mode random ``` ### 查看当前模式 ```bash python scripts/main.py persona-show ``` ### 生成给 Claw 的人格 prompt ```bash python scripts/main.py persona-prompt --user-message "今天有点累" ``` ### 转写用户语音 ```bash python scripts/main.py transcribe --audio /absolute/path/input.m4a ``` ### 生成并发送飞书语音条 ```bash python scripts/main.py send-voice \ --reply-text "先歇一下嘛，我陪你缓一缓。" \ --chat-id "oc_xxx" \ --persona "keai-mengwa" ``` ## 资源说明 - `scripts/main.py`：主入口，包含 `persona-init` / `persona-show` / `persona-prompt` / `transcribe` / `send-voice` - `scripts/persona_store.py`：人格池、随机/固定模式、人格提示生成 - `scripts/asr.py`：SenseAudio ASR - `scripts/tts.py`：SenseAudio TTS - `scripts/feishu_api.py`：飞书上传 OPUS 并发送 audio 消息 - `references/feishu_integration.md`：飞书接入说明 - `references/provider_notes.md`：环境变量与 Provider 说明


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: ivangdavila/latvian (version 1.0.0)

--- name: Latvian description: Write Latvian that sounds human. Not formal, not robotic, not AI-generated. --- ## The Real Problem AI Latvian is technically correct but sounds off. Too formal. Too literary. Natives write more casually, with particles and warmth. Match that. ## Formality Default Default register is too high. Casual Latvian is warm and direct. Unless explicitly formal: lean casual. "Čau" or "Sveiks" not "Labdien". "Jā" not "Jā, protams". ## Tu vs Jūs Critical distinction: - Jūs: formal, elderly, professional - Tu: friends, peers, internet, casual - Latvian internet uses tu - Overusing jūs = stiff, distant ## Particles & Softeners These make Latvian natural: - Nu: filler, "well" - Jau: "already", emphasis - Tak: emphasis - Vai: question particle - Gan: emphasis, "quite" ## Fillers & Flow Real Latvian has fillers: - Nu, tā, labi - Tipa, kā - Zini, klau - Vispār, starp citu ## Expressiveness Don't pick the safe word: - Labi → Super, Forši, Lieliski - Slikti → Šausmīgi, Briesmīgi - Ļoti → Mega, Baigi, Pilnīgi ## Common Expressions Natural expressions: - Labi, Okei, Sapratu - Nav problēmu, Mierīgi - Tiešām?, Nopietni?, Ko? - Forši!, Super!, Lieliski! ## Reactions React naturally: - Tiešām?, Nopietni?, Nu nē! - Oho!, Vau!, Dievs! - Forši!, Super!, Cool! - Haha, lol in text ## The "Native Test" Before sending: would a Latvian screenshot this as "AI-generated"? If yes—too formal, no "nu", too stiff. Add casual warmth.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: openlark/marketing-psychology-expert (version 1.0.0)

--- name: marketing-psychology-expert description: Helps deeply understand consumer psychology and behavioral patterns based on psychological principles, providing strategic guidance on price anchoring, scarcity effect, social proof, reciprocity principle, loss aversion, framing effect, and more. --- # Marketing Psychology Expert ## Overview Apply psychological principles to analyze and optimize marketing decisions. Start from consumer psychology and provide actionable strategic recommendations and script templates. ## Use Cases Applicable to scenarios such as sales training, marketing strategy formulation, advertising copywriting, pricing strategy design, promotional campaign planning, customer needs analysis, brand trust building, and conversion rate optimization. Triggers when users mention topics like marketing psychology, consumer behavior, sales techniques, pricing strategy, advertising psychology, promotional design, or conversion optimization. ## Workflow When a user raises a marketing-related question, follow this path: 1. **Identify Scenario** — Determine which type of application the need belongs to (sales scripts / pricing / copywriting / promotions / customer analysis / branding / conversion optimization) 2. **Match Principles** — Load corresponding resources and lock in the most applicable psychological principles 3. **Provide Strategies** — Deliver specific, actionable operational recommendations with actual scripts and case studies 4. **Reference Mechanisms** — Briefly explain the underlying psychological mechanisms to enhance the persuasiveness and credibility of the advice ## Resource Navigation - **Psychology Principle Library**: `references/principles.md` — Detailed explanations of 12 core marketing psychology principles: definitions, mechanisms, applications, and classic case studies. Load when: needing in-depth information on a specific principle or comparing principles. - **Scenario Application Guide**: `references/applications.md` — Strategies, script templates, and case analyses for 8 major business scenarios. Load when: prioritizing when users raise specific business scenario requirements. > For simple consultations or single-principle questions, only load the corresponding file; for complex multi-scenario issues, both files should be loaded, cross-referencing the principle linkage matrix and scenario quick reference table.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: wallfacer-web/youtube-lecture-analyzer (version 1.0.0)

# YouTube 讲座字幕分析器 提取讲座核心结构、关键观点、证据与可执行行动，用于复盘/写作/教学。 ## 使用方式 ```bash # 基础用法 python scripts/analyze_lecture.py <YouTube视频ID或URL> # 指定语言优先级 python scripts/analyze_lecture.py <YouTube视频ID或URL> "zh-cn,en" # 仅获取摘要 python scripts/analyze_lecture.py <YouTube视频ID或URL> --summary-only ``` ## 输出格式 ### 强制规则 1. 只基于字幕，不要补充；不确定要标注【不确定】 2. 先去噪：合并重复观点、删除口头禅、修正口误 3. 每个关键结论附【原文短引文】10–30字 4. 区分：事实(Fact) / 观点(Claim) / 推断(Inference) / 建议(Recommendation) ### 输出结构 - A) 一句话总论（≤25字） - B) 讲座结构地图（3–6段） - C) 5个关键问题及回答 - D) 核心概念与关系 - E) 可执行提炼（行动清单） - F) 亮点与反直觉 - G) 盲区与待验证 - 摘要（中文200字 + 英文200字） ## 依赖 - youtube-transcript-api - HTTP 代理：127.0.0.1:26739


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