OpenClaw/clawhub-security-signals huggingface dataset:
Skill: aipoch-ai/faq-generator (version 0.1.0)

--- name: faq-generator description: Generates FAQ lists from complex medical policies or protocols. Trigger when user provides medical documents, policies, or protocols and requests FAQ generation, patient education materials, or simplified explanations. version: 1.0.0 category: Info tags: [faq, policy, patient-education, protocol, medical-documents] author: AIPOCH license: MIT status: Draft risk_level: Medium skill_type: Tool/Script owner: AIPOCH reviewer: last_updated: 2026-02-06 --- # FAQ Generator Creates FAQ lists from medical documents. ## Features - Automatic Q&A generation - Policy interpretation - Patient-friendly language - Structured formatting ## Parameters | Parameter | Type | Default | Required | Description | |-----------|------|---------|----------|-------------| | `--input`, `-i` | string | - | Yes | Source document file path | | `--audience`, `-a` | string | general | No | Target audience (patients, researchers, general) | | `--output`, `-o` | string | stdout | No | Output file path | | `--format`, `-f` | string | json | No | Output format (json, markdown, text) | ## Output Format ```json { "faqs": [{"question": "", "answer": ""}], "topic": "string" } ``` ## Risk Assessment | Risk Indicator | Assessment | Level | |----------------|------------|-------| | Code Execution | No scripts included | Low | | Network Access | No external API calls | Low | | File System Access | Read-only within workspace | Low | | Instruction Tampering | Standard prompt guidelines | Low | | Data Exposure | Input/output within session | Low | ## Security Checklist - [ ] No hardcoded credentials or API keys - [ ] No unauthorized file system access (../) - [ ] No network requests to external services - [ ] Output does not expose sensitive information - [ ] Prompt injection protections in place ## Evaluation Criteria ### Success Metrics - [ ] FAQ accurately represents source document content - [ ] Language is appropriate for specified audience (patients/researchers) - [ ] Questions cover key points of the document - [ ] Answers are clear, concise, and medically accurate - [ ] Format follows structured JSON schema ### Test Cases 1. **Basic FAQ Generation**: Input simple medical protocol → Output valid FAQ list 2. **Audience Adaptation**: Same input with different audiences → Appropriate tone shift 3. **Complex Document**: Input lengthy policy document → Comprehensive FAQ coverage 4. **Edge Case**: Input ambiguous content → Handles gracefully with clarifying questions ## Lifecycle Status - **Current Stage**: Draft - **Next Review Date**: 2026-03-06 - **Known Issues**: None - **Planned Improvements**: - Add support for multi-language output - Enhance medical terminology handling


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: smart-memos (version 1.0.0)

--- name: smart-memos description: | 智能备忘录管理系统，支持从 macOS 备忘录导入（PDF/Markdown/HTML/TXT/JSON）、 智能自动分类、语义搜索、快速记录、编辑修改和归档管理。 使用场景： - 用户说"帮我记录备忘录"、"记个笔记"、"添加备忘" - 用户说"搜索备忘录"、"查找笔记"、"回忆一下" - 用户说"导入备忘录"、"从备忘录导入"、"导出备忘录" - 用户说"查看分类"、"备忘录统计"、"整理备忘录" - 用户说"编辑备忘录"、"修改备忘录"、"更新备忘录" - 用户需要管理个人笔记、待办事项、灵感记录 --- # 智能备忘录系统 (Smart Memos) 智能备忘录管理系统，支持多种格式导入、自动分类、语义搜索、快速记录和编辑修改。 ## 功能特性 - 📥 **多格式导入**: PDF, Markdown, HTML, TXT, JSON - 🏷️ **智能分类**: 自动分类到工作、学习、生活等 12+ 类别 - 🔍 **语义搜索**: 关键词搜索，支持分类筛选 - ⚡ **快速记录**: CLI 和 API 快速添加 - ✏️ **编辑修改**: 支持修改标题、内容、分类、标签 - 🗂️ **归档管理**: 支持删除和归档 - 📊 **统计分析**: 分类统计和趋势分析 - 🔖 **标签支持**: Markdown 导入时自动识别 `#标签` ## 使用方法 ### 快速记录 ```python from scripts.memos import SmartMemoSystem memos = SmartMemoSystem() memo_id = memos.add_memo( title="会议记录", content="下午3点项目进度会议", category="工作", tags=["会议", "项目"] ) ``` ### 搜索备忘录 ```python # 关键词搜索 results = memos.search_memos("会议") # 分类筛选 results = memos.search_memos("项目", category="工作") ``` ### 编辑备忘录 ```python # 更新备忘录 memos.update_memo( memo_id=1, title="新标题", content="新内容", category="工作", tags=["标签1", "标签2"] ) ``` ### 导入备忘录 ```python # 从 PDF 导入 count = memos.import_from_notes_app("~/Downloads/备忘录.pdf") # 从 Markdown 导入（自动识别 #标签） count = memos.import_from_notes_app("~/Downloads/笔记.md") ``` ### 删除/归档 ```python # 删除备忘录 memos.delete_memo(memo_id) # 归档备忘录 memos.archive_memo(memo_id) ``` ## 自动分类规则 | 分类 | 关键词 | 权重 | |------|--------|------| | 工作 | 会议、项目、任务、deadline、进度、客户、需求 | 1.5x | | 学习 | 教程、课程、学习、笔记、阅读、书籍、知识 | 1.5x | | 生活 | 购物、超市、买菜、做饭、家务、缴费、快递 | 1.0x | | 旅行 | 机票、酒店、景点、攻略、行程、旅游、签证 | 1.5x | | 财务 | 收入、支出、预算、投资、理财、股票、基金 | 1.5x | | 灵感 | 想法、创意、灵感、构思、设计、方案、计划 | 1.0x | | 待办 | todo、待办、待处理、待确认、提醒、记得 | 2.0x | | 联系人 | 电话、邮箱、地址、联系人、名片、微信 | 1.5x | | 技术 | 代码、编程、开发、API、框架、工具、Git | 1.5x | | 娱乐 | 电影、音乐、游戏、综艺、追剧、推荐 | 1.0x | | 健康 | 医院、医生、健康、体检、药品、运动 | 1.5x | | 美食 | 餐厅、菜谱、食物、美食、烹饪、料理 | 1.0x | ## CLI 使用 脚本支持命令行操作： ```bash # 添加备忘录 python scripts/memos.py add "标题" "内容" [分类] [标签] # 列出备忘录（显示ID） python scripts/memos.py list [分类] [数量] # 查看详情 python scripts/memos.py view <ID> # 编辑备忘录 python scripts/memos.py edit <ID> --title "新标题" --content "新内容" --category "分类" --tags "标签1,标签2" # 搜索备忘录 python scripts/memos.py search "关键词" [分类] # 导入文件（支持 #标签） python scripts/memos.py import <文件路径> # 删除/归档 python scripts/memos.py delete <ID> python scripts/memos.py archive <ID> # 统计 python scripts/memos.py categories python scripts/memos.py stats ``` ## Markdown 标签格式 导入 Markdown 文件时，支持 `#标签名` 格式： ```markdown # 项目会议记录 #工作 #会议 今天下午3点召开项目进度会议 #紧急 - 前端页面开发进度 80% #前端 - 后端API接口已完成 #后端 ``` 导入后会自动提取标签：`工作, 会议, 紧急, 前端, 后端` ## 数据存储 - 数据库: `~/.qclaw/workspace/memos/memos.db` - 导出目录: `~/.qclaw/workspace/memos/` ## 依赖 - Python 3.7+ - SQLite3 (内置) - 可选: `pdfplumber` 或 `PyPDF2` (PDF 导入) ## 版本历史 ### v1.2.0 - 新增编辑修改功能 - 优化分类算法（增加权重机制） - 支持 Markdown 标签导入 - list/search 显示 ID ### v1.1.0 - 新增 PDF 和 Markdown 导入支持 - 优化 PDF 文本提取 - 改进 Markdown 解析 ### v1.0.0 - 基础功能：添加、搜索、列表、分类 - 支持从 macOS Notes 导入 - 智能自动分类 - 语义搜索功能


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: ashwingupy/firecrawl-search (version 1.0.0)

--- name: firecrawl description: Web search and scraping via Firecrawl API. Use when you need to search the web, scrape websites (including JS-heavy pages), crawl entire sites, or extract structured data from web pages. Requires FIRECRAWL_API_KEY environment variable. --- # Firecrawl Web search and scraping via Firecrawl API. ## Prerequisites Set `FIRECRAWL_API_KEY` in your environment or `.env` file: ```bash export FIRECRAWL_API_KEY=fc-xxxxxxxxxx ``` ## Quick Start ### Search the web ```bash firecrawl_search "your search query" --limit 10 ``` ### Scrape a single page ```bash firecrawl_scrape "https://example.com" ``` ### Crawl an entire site ```bash firecrawl_crawl "https://example.com" --max-pages 50 ``` ## API Reference See [references/api.md](references/api.md) for detailed API documentation and advanced options. ## Scripts - `scripts/search.py` - Search the web with Firecrawl - `scripts/scrape.py` - Scrape a single URL - `scripts/crawl.py` - Crawl an entire website


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: stanlee000/norman-monthly-reconciliation (version 1.0.0)

--- name: monthly-reconciliation description: Perform a complete monthly financial reconciliation - review all transactions, match invoices, check outstanding payments, and prepare for tax filing. Use when the user wants to close the month, do monthly bookkeeping, or perform a Monatsabschluss. version: 1.0.0 disable-model-invocation: true argument-hint: "[month, e.g. January 2026]" metadata: openclaw: emoji: "\U0001F4C5" homepage: https://norman.finance requires: mcp: - norman-finance --- Guide the user through a complete monthly reconciliation: ## Step 1: Transaction Review - Call `search_transactions` for the specified month (or last month if not specified) - Identify uncategorized transactions - For each batch, suggest categories and let the user confirm - Use `categorize_transaction` to assign the correct bookkeeping category ## Step 2: Finalize Transactions - After all transactions are categorized, verify each one using `change_transaction_verification` - Mark every transaction for the period as verified so the month can be closed - If any transaction has missing information (no receipt, unclear category), flag it for the user before verifying - Present a count: "X of Y transactions verified for [month]" ## Step 3: Invoice Reconciliation - Call `list_invoices` to find invoices from the period - Cross-reference with incoming payments in transactions - Use `link_transaction` to match payments to invoices - Flag any overdue unpaid invoices and suggest sending reminders via `send_invoice_overdue_reminder` ## Step 4: Document Check - Call `list_attachments` for the period - Identify transactions without attached receipts (especially expenses) - Remind the user to upload missing receipts with `upload_bulk_attachments` - Use `link_attachment_transaction` to connect any newly uploaded receipts ## Step 5: Tax Preparation - Call `get_company_tax_statistics` for the period overview - Call `get_vat_next_report` to check if a VAT report is due - If due, call `generate_finanzamt_preview` to show the draft - Only submit with explicit user confirmation via `submit_tax_report` ## Step 6: Summary Present a closing summary: - Total income and expenses for the month - Number of invoices sent vs. paid - Outstanding receivables - VAT liability - Any action items remaining Be thorough but keep each step interactive - wait for user confirmation before proceeding.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: wangzhiming1999/api-and-data (version 1.0.0)

--- name: api-and-data description: Designs API layer: request encapsulation, error handling, loading/empty states, caching, and data flow. Use when 接口封装, 请求, 错误处理, loading, 缓存, 数据流, or frontend data layer. --- # 接口与数据层（API and Data） 帮助设计请求封装、错误与 Loading/空态、缓存与数据流。 ## 触发场景 - 用户说「接口封装」「请求」「错误处理」「loading」「空态」「缓存」「数据流」 - 需求：统一请求、重试、取消、鉴权、错误提示、列表分页与刷新 ## 分析维度 ### 1. 请求封装 | 要点 | 做法 | |------|------| | 基地址与超时 | axios/fetch 实例：baseURL、timeout、拦截器 | | 鉴权 | 请求头注入 token；401 统一跳登录或刷新 token | | 取消 | 页面卸载或路由离开时取消未完成请求（AbortController） | | 重试 | 对幂等接口或 GET 可有限重试；指数退避可选 | ### 2. 错误处理 | 层级 | 做法 | |------|------| | 请求层 | 网络错误、超时、4xx/5xx 转成统一错误格式 | | 业务层 | 按 code 或 status 分支：未登录、无权限、业务错误文案 | | UI 层 | 全局 toast/message 或页面级 error 区；关键操作可弹窗确认 | ### 3. Loading 与空态 | 状态 | 做法 | |------|------| | Loading | 首屏骨架或 spinner；列表「加载更多」用局部 loading | | 空数据 | 空列表/空搜索用插画+文案+操作引导 | | 失败 | 错误文案+重试按钮；可区分网络错误与业务错误 | ### 4. 缓存与更新 | 场景 | 做法 | |------|------| | 列表 | 分页参数、拉取后追加或替换；下拉刷新/上拉加载 | | 详情 | 进入页拉取；离开可保留一段时间再失效（如 React Query staleTime） | | 实时性 | 短 staleTime + 窗口 focus 时 refetch；或 WebSocket 推送 | ### 5. 数据流 | 规模 | 建议 | |------|------| | 简单 | 组件内 useState + useEffect 请求；状态提升到父组件即可 | | 多页共享 | Context + 请求函数 或 React Query/SWR 等 | | 复杂 | 全局 store（Zustand/Redux）+ 异步 thunk/saga 或 React Query 做服务端状态 | ## 执行流程 ### 1. 确认用户的实际问题 用户说「接口封装」「请求」这类词时，先判断他们真正卡在哪： | 用户描述 | 实际问题 | 第一步 | |---------|---------|-------| | 「接口怎么封装」「请求层怎么写」 | 从零设计请求层 | 问：用 axios 还是 fetch？有没有现成的拦截器？鉴权方式是什么？ | | 「loading 怎么做」「空态怎么处理」 | UI 状态管理 | 直接给出该场景的状态机模型和代码示例 | | 「接口报错了」「401 没处理」 | 具体 bug | 问：错误在哪一层出现的？是请求层还是业务层？ | | 「用 React Query 还是 SWR」 | 选型决策 | 问：项目规模、是否有 SSR、团队熟悉度，然后给出明确推荐 | | 「缓存怎么做」 | 缓存策略 | 问：哪类数据需要缓存？实时性要求是什么？ | 不要一上来就把所有维度都输出，先定位用户卡在哪一层。 ### 2. 根据问题类型切入 **从零设计请求层时**，按这个顺序问清楚再给方案： 1. HTTP 客户端（axios/fetch/ky） 2. 鉴权方式（token 放哪、刷新逻辑） 3. 错误码约定（后端返回格式是什么） 4. 是否需要请求取消（路由切换时） 信息齐了，给出完整的实例配置 + 拦截器代码，不要只给原则。 **处理具体状态问题时**，直接给代码，不要先讲理论： - loading/空态/错误态 → 给出状态机或 React Query 的 `isLoading/isError/data` 用法 - 分页 → 给出 `useInfiniteQuery` 或手写分页 hook 的完整示例 **选型问题时**，给明确结论： - 有 SSR（Next.js）→ React Query，因为它支持 hydration - 纯 CSR 简单项目 → SWR，更轻量 - 需要复杂缓存控制/乐观更新 → React Query - 不要给「两个都可以，看情况」这种答案 ### 3. 给出方案后主动检查遗漏 方案给完后，自查这几个点是否覆盖： - [ ] 接口失败时用户看到什么？ - [ ] 请求进行中用户能不能重复触发？ - [ ] token 过期时怎么处理？ - [ ] 组件卸载时未完成的请求会不会报错？ 有遗漏的主动补上，不要等用户问。 ## 输出模板 ```markdown ## 接口与数据层方案 ### 请求封装 - 实例：baseURL、timeout、拦截器 - 鉴权/取消/重试：… ### 错误处理 - 分层：请求层 / 业务层 / UI 层 - 文案与重试：… ### Loading 与空态 - 首屏/列表/详情：… - 空数据/失败：… ### 缓存与数据流 - 列表/详情：… - 工具：React Query / SWR / 自管理 ``` ## 项目相关 - React：React Query / SWR 做请求与缓存；axios 或 fetch 做实例与拦截 - Vue：Pinia + 请求封装；或 useRequest / VueUse 等 - Next：服务端 fetch 与 Client 请求分离；注意 hydration 与缓存键


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: damiencronw/openclow-skill-manager (version 1.0.1)

--- name: skill-manager description: "管理 OpenClaw Skills：以表格形式列出所有 skills、显示功能介绍、找出功能重复的 skills。Use when: 用户想知道安装了哪些 skills、某个 skill 是做什么的、或者想找出重复功能的 skills。" metadata: { "openclaw": { "emoji": "📦" }, "version": "1.0.1", "author": "damien" } --- # Skill Manager OpenClaw Skills 管理工具 - 列表形式展示 ## 功能 ### 1. 列出所有 Skills（表格形式） | Skill | 功能 | |-------|------| | characteristic-voice | 让语音更自然、更有感情 | | chat-with-anyone | 和任何人对话，用他们的声音回复 | | clawsucker | Clawsucker 团队 AI 助手 | | daily-news-caster | 新闻播客生成 | | github | GitHub CLI 管理 | | memory-system | 🧠 长期记忆系统 | | n8n-workflow-automation | n8n 工作流设计 | | pg | PostgreSQL 查询优化 | | pgvector | 向量数据库 | | proactive-agent | 🦞 主动型 AI | | skill-finder | 智能搜索 skill | | surrealdb | 文档/图数据库 | | tavily-search | AI 优化搜索 | | tts | 文字转语音 | | video-stt | 视频转文字 | | video-translation | 视频翻译配音 | ### 2. 功能分类 | 分类 | Skills | |------|--------| | 🎙️ 语音/视频 | tts, characteristic-voice, chat-with-anyone, video-stt, video-translation, daily-news-caster | | 🧠 记忆 | memory-system, proactive-agent | | 💾 数据库 | pg, pgvector, surrealdb | | 🔧 工具 | github, skill-finder, tavily-search, truth-search | | ⚙️ 自动化 | n8n-workflow-automation | ### 3. 功能重复的 Skills | 功能 | 重复 Skills | |------|-------------| | 搜索/查找 | skill-finder, tavily-search, truth-search | | 文字转语音 | tts, characteristic-voice (characteristic-voice 依赖 tts) | | 记忆系统 | memory-system, proactive-agent | | 数据库 | pg, pgvector, surrealdb | ## 使用命令 ```bash # 列出所有 skills python scripts/list_skills.py # 分类显示 python scripts/list_skills.py --category ``` ## 常用 Skills 推荐 - **语音相关**: tts, characteristic-voice - **视频处理**: video-stt, video-translation - **记忆系统**: memory-system, proactive-agent - **数据库**: pg, pgvector --- 更新于: 2026-03-08


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: chaunceyliu/testat1 (version 1.0.0)

--- name: slack description: Use when you need to control Slack from Clawdbot via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs. --- # Slack Actions ## Overview Use `slack` to react, manage pins, send/edit/delete messages, and fetch member info. The tool uses the bot token configured for Clawdbot. ## Inputs to collect - `channelId` and `messageId` (Slack message timestamp, e.g. `1712023032.1234`). - For reactions, an `emoji` (Unicode or `:name:`). - For message sends, a `to` target (`channel:<id>` or `user:<id>`) and `content`. Message context lines include `slack message id` and `channel` fields you can reuse directly. ## Actions ### Action groups | Action group | Default | Notes | | --- | --- | --- | | reactions | enabled | React + list reactions | | messages | enabled | Read/send/edit/delete | | pins | enabled | Pin/unpin/list | | memberInfo | enabled | Member info | | emojiList | enabled | Custom emoji list | ### React to a message ```json { "action": "react", "channelId": "C123", "messageId": "1712023032.1234", "emoji": "✅" } ``` ### List reactions ```json { "action": "reactions", "channelId": "C123", "messageId": "1712023032.1234" } ``` ### Send a message ```json { "action": "sendMessage", "to": "channel:C123", "content": "Hello from Clawdbot" } ``` ### Edit a message ```json { "action": "editMessage", "channelId": "C123", "messageId": "1712023032.1234", "content": "Updated text" } ``` ### Delete a message ```json { "action": "deleteMessage", "channelId": "C123", "messageId": "1712023032.1234" } ``` ### Read recent messages ```json { "action": "readMessages", "channelId": "C123", "limit": 20 } ``` ### Pin a message ```json { "action": "pinMessage", "channelId": "C123", "messageId": "1712023032.1234" } ``` ### Unpin a message ```json { "action": "unpinMessage", "channelId": "C123", "messageId": "1712023032.1234" } ``` ### List pinned items ```json { "action": "listPins", "channelId": "C123" } ``` ### Member info ```json { "action": "memberInfo", "userId": "U123" } ``` ### Emoji list ```json { "action": "emojiList" } ``` ## Ideas to try - React with ✅ to mark completed tasks. - Pin key decisions or weekly status updates.


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: lsj210001/finnhub-pro (version 1.1.0)

--- name: finnhub-pro description: "Finnhub 美股金融数据 CLI。实时报价、公司档案、新闻、分析师推荐、内部人交易、盈利日历、基本面财务、同行比较。Python 脚本封装，免费层 60 次/分钟。Use when: 查股价、查公司信息、看最新新闻、了解内部人是否在买卖、查看近期财报日期。NOT for: K线数据、目标价、情绪分析（需付费层）。" version: 1.0.0 --- # Finnhub Pro — 美股金融数据 CLI Python CLI 封装 Finnhub API，聚焦免费层实际可用的 10 个功能。 ## 安装 ```bash pip install finnhub-python ``` ## API Key 1. 去 [finnhub.io](https://finnhub.io) 注册获取免费 API Key 2. 设置环境变量：`export FINNHUB_API_KEY="your-key-here"` 3. 或写入 `~/.openclaw/.env` **⚠️ 脚本不硬编码 Key，必须通过环境变量 `FINNHUB_API_KEY` 传入！** ## 使用方法 ```bash # 基础格式 FINNHUB_API_KEY="your-key" python3 scripts/finnhub_cli.py <command> [args] [--json] [--limit N] # 推荐：设好环境变量后直接用 python3 scripts/finnhub_cli.py quote AAPL ``` ## 免费层支持的命令（10 个） ### 实时报价 ```bash python3 scripts/finnhub_cli.py quote AAPL python3 scripts/finnhub_cli.py quote NVDA --json # 原始 JSON ``` ### 公司档案 ```bash python3 scripts/finnhub_cli.py profile AAPL ``` ### 公司新闻（最近 7 天） ```bash python3 scripts/finnhub_cli.py news NVDA python3 scripts/finnhub_cli.py news AAPL --from 2026-02-01 --to 2026-02-21 --limit 5 ``` ### 分析师推荐趋势 ```bash python3 scripts/finnhub_cli.py recommend NVDA ``` ### 内部人交易记录（最近 90 天） ```bash python3 scripts/finnhub_cli.py insiders AAPL python3 scripts/finnhub_cli.py insiders NVDA --from 2026-01-01 --to 2026-02-21 ``` ### 盈利日历（未来 30 天） ```bash python3 scripts/finnhub_cli.py earnings # 所有股票 python3 scripts/finnhub_cli.py earnings NVDA # 指定股票 python3 scripts/finnhub_cli.py earnings --from 2026-02-21 --to 2026-03-07 ``` ### 基本面财务指标 ```bash python3 scripts/finnhub_cli.py financials AAPL python3 scripts/finnhub_cli.py financials NVDA --json # 全部指标 ``` ### 市场状态 ```bash python3 scripts/finnhub_cli.py market # 默认美国 python3 scripts/finnhub_cli.py market NYSE ``` ### 同行公司 ```bash python3 scripts/finnhub_cli.py peers AAPL ``` ### 股票代码搜索 ```bash python3 scripts/finnhub_cli.py search "apple" ``` ## 不可用功能（付费层） - K 线数据（`stock_candles`） - 分析师目标价（`price_target`） - 新闻情绪分析（`news_sentiment`） ## 限制 - 免费层：60 次/分钟 - 403 = 需付费升级 - 429 = 触发限速 ## 依赖 - Python 3.10+ - `finnhub-python`（`pip install finnhub-python`）


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

--- name: shit-journal description: "Randomly推荐 S.H.I.T Journal (构石期刊) 的恶搞学术论文。触发词包括：来篇构石、推送shitjournal、随机论文、学术粪便、搞笑论文等。" --- # S.H.I.T Journal 论文推荐 一个随机推荐 S.H.I.T Journal 恶搞学术论文的技能。 ## 关于 S.H.I.T Journal S.H.I.T Journal (全称 Sciences Humanities Information Technology, 构石期刊) 是一个讽刺性学术网站，主打"学术去中心化"概念。 ### 层级体系 - 🚽 **旱厕 (Latrine)** - 新稿件盲评区 - 🧪 **化粪池 (Septic Tank)** - 评分达标后晋升 - 🪨 **构石 (The Stone)** - 最终发表的论文 ### 期刊特色 - 影响因子: **-99.99** - 拒稿率: **99.9%** - 口号: "真理会过时，构石永恒" ## 如何运作 1. **随机选择区域** - 旱厕、化粪池、构石三选一 2. **随机选择论文** - 从该区域列表中随机抽取 3. **获取论文详情** - 访问论文页面获取完整信息 4. **格式化输出** - 以有趣的格式呈现给用户 ## 触发方式 - 中文: "来篇构石"、"推送篇论文"、"随机论文"、"搞笑学术"、"屎刊" - English: "shit journal article", "random paper from shitjournal" ## 输出格式 ``` 🪨 S.H.I.T Journal 论文推荐 --- **{论文标题}** {作者} · {机构} {日期} · {分类} --- 📖 {论文简介/摘要} --- 🔗 DOI: {doi} � zones: {当前区域} ``` ## 实现步骤 1. 使用 browser 工具访问 `https://shitjournal.org/preprints` 2. 可选：点击切换 旱厕/化粪池/构石 区域 3. 获取当前区域的论文列表 4. 随机选择一篇论文 5. 点击进入论文详情页获取完整信息 6. 按格式输出推荐 ## 注意事项 - 网站需要勾选 18+ 同意声明才能浏览（浏览器已处理） - 部分论文可能需要登录才能查看完整内容 - 如果某区域没有论文，自动切换到其他区域


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: ouyang198000/data-analyst-agent (version 1.0.0)

--- name: data-analyst-agent description: 数据分析智能体。当需要追踪书籍表现、评估运营数据、分析读者反馈、生成数据报告时触发本技能。用于：(1) 采集各平台书籍数据（阅读量/追读率/完读率/收入）(2) 评估内容表现和ROI (3) 分析读者反馈和情感倾向 (4) 生成数据看板和趋势报告 (5) 触发异常预警 --- # 数据分析师 · SKILL.md ## 角色定位 作为总管智能体「摸鱼宇哥」的下游，数据分析师负责建立数据驱动的反馈闭环，为策略优化师和选题策划师提供决策依据。 ## 核心功能 ### 1. 数据采集 **采集平台：** | 平台 | 数据类型 | 采集频率 | |------|---------|---------| | Amazon KDP | 销量/页面阅读/KU页读/评分 | 每日 | | 番茄小说 | 阅读量/追读率/广告分成 | 每日 | | 起点中文网 | 月票/打赏/订阅/评分 | 每日 | | 晋江文学城 | 营养液/收藏/订阅/评分 | 每日 | | Royal Road | 阅读量/收藏/评分/评论 | 每日 | **数据维度：** ```json { "基础数据": ["阅读量", "点击率", "追读率", "完读率", "评分", "评论数"], "变现数据": ["付费收入", "打赏", "月票", "订阅费"], "增长数据": ["日增长", "周增长", "月增长"], "对比数据": ["vs同类平均", "vs同类头部"] } ``` ### 2. 效果评估 **评估指标：** | 指标 | 合格线 | 优秀线 | 说明 | |------|--------|--------|------| | 完读率 | 45% | 60%+ | 读者是否看完 | | 追读率 | 30% | 50%+ | 读者是否追更 | | 评分 | 8.0 | 9.0+ | 读者满意度 | | 日均收入 | ¥100 | ¥500+ | 变现能力 | **ROI计算：** ``` ROI = 总收益 / 创作成本 创作成本估算 = 字数 × 千字耗时 × 时薪 ``` ### 3. 读者反馈分析 **分析维度：** - 正面反馈：高频正向词/情节/人物 - 负面反馈：高频负向词/情节/人物 - 流失分析：哪里弃书率最高 - 建议提取：读者希望看到什么 **情感分析（英文评论）：** - Positive/Negative/Neutral 三分类 - 情感强度：1-5分 - 关键主题提取 ### 4. 数据可视化 **报告类型：** | 报告 | 频率 | 受众 | |------|------|------| | 每日数据快照 | 每日 | 内部使用 | | 周度分析报告 | 每周 | 策略优化师 | | 月度复盘报告 | 每月 | 总管智能体 | | 专项分析报告 | 按需 | 选题策划师 | **图表类型：** - 折线图：趋势变化 - 柱状图：对比分析 - 热力图：读者流失点 - 饼图：收益构成 ### 5. 预警机制 **预警规则：** | 预警类型 | 触发条件 | 处理方式 | |---------|---------|---------| | 数据暴跌 | 单日下降>30% | 立即通知 | | 收入异常 | 单日收入>2倍均值 | 核实确认 | | 竞品爆款 | 同类新书进入TOP10 | 市场分析 | | 政策变化 | 平台公告重大更新 | 评估影响 | **预警输出：** ```json { "预警类型": "数据暴跌", "书籍ID": "book_001", "触发条件": "阅读量单日下降50%", "可能原因": ["平台限流", "竞品分流", "内容问题"], "建议行动": "检查内容是否有违禁/调整发布节奏", "紧急程度": "高/中/低" } ``` ## 工作流程 ``` 1. 每日定时启动（凌晨） ↓ 2. 采集昨日各平台数据 ↓ 3. 数据清洗和存储 ↓ 4. 生成每日数据快照 ↓ 5. 效果评估（达标/异常） ↓ 6. 异常预警触发时立即通知 ↓ 7. 定期生成周报/月报 ↓ 8. 响应其他智能体的数据查询 ``` ## 约束条件 1. 只采集公开数据，不入侵平台后台 2. 读者评论分析需脱敏（不保存个人信息） 3. 数据结论必须标注来源和时效 4. 预估收入必须标注为估算值 5. 尊重平台Robots协议 ## 进化方向 ``` ✅ 会自动优化的方向： ├── 采集覆盖度提升（更多平台/更多维度） ├── 分析准确性提升（基于反馈校准） ├── 预警规则优化（减少误报/漏报） └── 报告模板优化（更直观/更有价值） ❌ 永远不会进化的方向： └── 违规采集或数据造假 ```


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: josephyb97/feishui-file-sender (version 1.0.0)

--- name: feishu-file-sender description: Send files via Feishu channel using message tool with filePath parameter. --- # Feishu File Sender Send binary files (ZIP, PDF, images, etc.) to Feishu groups or users. ## Prerequisites - OpenClaw configured with Feishu channel - Target chat ID (group or user) ## Step 1: Package the Skill/File ```bash cd /root/.openclaw/workspace/skills zip -r /tmp/skill_name.zip skill_folder/ ``` **Key:** Use relative path inside the zip, not absolute path. ## Step 2: Send via Feishu ```python message( action="send", channel="feishu", filePath="/tmp/skill_name.zip", message="📦 Skill Name", target="oc_xxxxxxxxxxxx" # chat ID ) ``` ## Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | action | string | Yes | "send" | | channel | string | Yes | "feishu" | | filePath | string | Yes | Absolute path to file | | message | string | Yes | Caption text | | target | string | Yes | Chat ID (oc_xxx for groups, user ID for DM) | ## Common Issues 1. **File too large**: Feishu limits apply (~20MB for most) 2. **Wrong path**: Use absolute path `/tmp/xxx.zip` 3. **Relative path in zip**: Package from parent dir, e.g., `zip -r /tmp/out.zip folder/` ## Example: Send a Skill ```bash # Package cd /root/.openclaw/workspace/skills zip -r /tmp/weather.zip weather/ # Send message(action="send", channel="feishu", filePath="/tmp/weather.zip", message="📦 weather skill", target="oc_group_id") ```


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