OpenClaw/clawhub-security-signals huggingface dataset:
Skill: shcw0405/cstcloud-web-search (version 1.0.2)

--- name: cstcloud-web-search description: 使用中国科技云（CSTCloud）Web Search API 进行网络搜索。无需 Brave/Perplexity 等国外 API key，适合国内用户，直接通过"帮我搜 xxx"调用。 homepage: https://clawhub.ai/shcw0405/cstcloud-web-search repository: https://github.com/shcw0405/cstcloud-web-search metadata: {"clawdbot":{"emoji":"🔍","requires":{"bins":["bash","curl","jq"],"env":["CSTCLOUD_API_KEY"]},"primaryEnv":"CSTCLOUD_API_KEY"}} --- # CSTCloud Web Search 基于中国科技云（Uni-API）Web Search API 的网络搜索技能。适合 OpenClaw AI 助手使用，直接说"帮我搜 xxx"即可触发。 ## 功能特性 - 🔍 基于中国科技云搜索服务，国内访问稳定 - 🌐 无需国外 API key，适合国内用户 - 📊 返回标题、URL、来源、摘要 - ⚡ 配置简单，一个环境变量即可 ## 安装 ```bash # 通过 ClawHub 安装（推荐） npx clawhub install cstcloud-web-search # 或手动安装到 ~/.openclaw/workspace/skills/ ``` ## 配置 ### 1. 设置环境变量 编辑 `~/.openclaw/.env` 文件，添加： ``` CSTCLOUD_API_KEY=你的API密钥 ``` 或通过命令行： ```bash export CSTCLOUD_API_KEY=你的API密钥 ``` ### 2. 重启 OpenClaw Gateway ```bash openclaw gateway restart ``` ## 使用方法 在 OpenClaw 对话中直接说： ``` 帮我搜一下 xxx ``` 或通过命令行直接调用： ```bash # 默认 5 条结果 cstcloud-web-search "搜索关键词" # 指定结果数量（最多 10 条） cstcloud-web-search "搜索关键词" 10 ``` ## API 信息 - **Base URL**: `https://uni-api.cstcloud.cn` - **Endpoint**: `POST /v1/web-search` - **认证方式**: Bearer Token - **模型名**: `web-search` ## 结果示例 ``` 找到 10 条结果（显示前 3 条）： 1. OpenClaw 进入"日更级"狂飙模式:刚刚、2026.3.12 版本发布 URL: https://www.163.com/dy/article/KNUJILQP0511D6RL.html 来源: 网易 摘要: 刚刚,OpenClaw发布了2026.3.12版本... 2. OpenClaw推出新版本 89项更新重磅来袭 URL: https://news.china.com/socialgd/10000169/20260310/49307835.html 来源: 中华网新闻频道 摘要: OpenClaw推出新版本... === 搜索完成 === ``` ## 参考与致谢 本 skill 参考了以下项目： - [bailian-web-search](https://github.com/openclaw/skills/tree/main/skills/krisyejh/bailian-web-search)（OpenClaw 官方 Skills） **改动说明：** - bailian-web-search 使用阿里云 MCP 协议（Streamable HTTP + JSON-RPC），需要 4 个请求才能完成一次搜索 - 本 skill 改为直接调用 CSTCloud REST API，一个请求即可完成搜索，逻辑更简单直接 - API 格式、认证方式、返回结构均基于 CSTCloud Uni-API 文档实现 ## License MIT-0


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: mvogt99/python-mutable-default-args (version 1.0.0)

--- name: python-mutable-default-args description: A Python function uses a mutable object (list, dict, set) as a default argument, sharing state across calls in a way that produces silent bugs. emoji: 🐍 metadata: clawdis: os: [macos, linux, windows] language: python --- # python-mutable-default-args Python evaluates default argument values once at function definition time, not on each call. If the default is a mutable object — a list, dict, or set — that object is shared across every call that uses the default. Mutating it inside the function modifies the default for all future calls. The bug is invisible until the second or later call and produces state-dependent failures that are hard to trace. ## Symptoms ```python def add_item(item, items=[]): # ← shared list items.append(item) return items add_item("a") # ["a"] add_item("b") # ["a", "b"] ← unexpected; second caller sees first caller's data ``` - A function that accumulates data into a list or dict default grows unboundedly across calls. - A function that should be stateless produces different results on the second call than the first. - Unit tests pass in isolation but fail when run together due to shared state from a prior test. - The bug disappears if the function is called with an explicit argument. ## What to do - Use `None` as the default and initialize the mutable inside the function body: ```python def add_item(item, items=None): if items is None: items = [] items.append(item) return items ``` - This is the canonical Python idiom. Every call that omits `items` gets a fresh list. - Applies equally to `dict`, `set`, and any other mutable type. The rule is: never use a mutable as a default argument. - When reviewing code, scan every function signature for `=[]`, `={}`, `=set()` as a heuristic for this pattern. - Linters (pylint rule `W0102`, ruff rule `B006`) will flag this automatically — enable them if the codebase doesn't already.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: tmstudio667-commits/sovereign-liquidity-sniffer (version 1.0.0)

--- name: sovereign-liquidity-sniffer description: "Institutional-grade L2 Orderbook Imbalance (OBI) detector. Captures market maker footprints across OKX and Binance with millisecond precision." metadata: { "openclaw": { "emoji": "🕵️" }, "author": "System Architect Zero", "x402": { "fee": 0.30, "currency": "USDC", "network": "base" } } --- # Sovereign Liquidity Sniffer In 2026, indicators like RSI and EMA are legacy artifacts. The real Alpha is hidden in the Orderbook. This skill provides an autonomous scanner that identifies **Market Maker Scars** before price action begins. ## Features - **OBI Real-time Analysis**: Scans depth up to 100 levels to find hidden buy/sell walls. - **MM Detection**: Filters out retail wash-trading to focus on high-conviction institutional moves. - **Cross-Exchange Sync**: Detects arbitrage opportunities between OKX and Binance liquidity pools. ## Usage ```bash npx openclaw skill run sovereign-liquidity-sniffer --target BTC ``` ## Why it costs $0.30? To fund the 24/7 high-frequency data ingestion required for millisecond accuracy.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: mw-slc/nginx-proxy-manager (version 1.0.0)

--- name: nginx-proxy-manager description: Manage Nginx Proxy Manager (NPM) for reverse proxy and SSL termination to internal services like staging/prod apps. Use when creating/updating proxy hosts, requesting or renewing Let's Encrypt certificates, enforcing HTTPS redirects, setting websocket support, or routing domains/subdomains to target servers. --- # Nginx Proxy Manager Workflow Use this skill to terminate SSL at NPM and route traffic to backend services (staging/prod). ## Required inputs - Domain/subdomain (e.g. `staging.example.com`) - Public DNS already pointing to NPM public IP - Upstream target host/IP + port (e.g. `10.10.10.227:3000`) - Whether Cloudflare proxy is enabled (if used) ## Authentication (do not hardcode secrets) Store credentials outside this skill (local secret file or environment variables). Recommended env vars: - `NPM_BASE_URL` (e.g. `http://<npm-host>:81`) - `NPM_IDENTITY` - `NPM_SECRET` Example token request: ```bash curl -sS -X POST "$NPM_BASE_URL/api/tokens" \ -H 'Content-Type: application/json; charset=UTF-8' \ --data "{\"identity\":\"$NPM_IDENTITY\",\"secret\":\"$NPM_SECRET\"}" ``` ## Standard setup flow 1. Confirm DNS resolves to NPM public IP. 2. Create or update Proxy Host in NPM: - Domain Names: requested host(s) - Scheme: `http` (or `https` if upstream is TLS) - Forward Hostname/IP: upstream IP/hostname - Forward Port: app port - Enable: - Block Common Exploits - Websockets Support 3. SSL tab: - Request new SSL certificate (Let's Encrypt) - Enable `Force SSL` - Enable `HTTP/2 Support` - Enable `HSTS` only after validation 4. Save and verify: - `curl -I https://<domain>` returns `200/301` - Browser check for valid certificate and app reachability ## Recommended defaults - Keep upstream as private IP where possible. - Use separate hostnames per environment: - `app.example.com` → production - `staging.example.com` → staging - Avoid wildcard certificates unless explicitly needed. ## Troubleshooting - Certificate issuance fails: - Check DNS A/AAAA records - Ensure ports 80/443 reach NPM - Disable conflicting CDN TLS mode or set to Full/Strict appropriately - 502 Bad Gateway: - Verify upstream container/service is running - Verify correct target port and local firewall rules - Redirect loops: - Don’t double-force HTTPS (app + proxy misconfiguration) ## Publication hygiene checklist Before sharing/publishing this skill: - Remove all real IPs, domains, emails, and tokens. - Keep only placeholders like `example.com` and `<npm-host>`. - Ensure no local credential file paths or secret values are included. ## Safety rules - Never remove existing production proxy hosts unless explicitly requested. - For changes on production domains, snapshot/export config or document previous values first. - Apply changes to staging first when possible.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: machunlin/video-merger (version 1.1.0)

--- name: video-merger description: 多片段短视频自动拼接工具，支持按文件名排序、统一音视频参数、淡入淡出转场、分块/完整拼接，适合短剧、分镜头视频批量拼接 --- # 视频拼接工具 (video-merger) 自动将分镜头/分段短视频按顺序拼接为长视频的OpenClaw技能，支持工程化批量处理。 ## 功能特性 ✅ 严格按文件名数字序号排序，保证剧情顺序正确 ✅ 自动统一分辨率、帧率、编码，保证播放流畅 ✅ 支持淡入淡出转场效果（整体/片段间可选） ✅ 自动同步音轨，完整保留原音频 ✅ 支持两种输出模式：分块输出（每段1分钟左右）、完整长视频输出 ✅ 支持保持原始分辨率或自定义输出参数 ## 依赖要求 - ffmpeg (>= 5.0) - Python 3.8+ ## 安装 ```bash # 自动安装依赖 ./install.sh ``` ## 使用方法 ### 拼接为完整长视频（默认保持原始分辨率） ```bash python3 scripts/merge.py --input /path/to/segments --output ./full_video.mp4 ``` ### 自定义输出分辨率 ```bash python3 scripts/merge.py --input /path/to/segments --output ./full_video.mp4 --resolution 1080x1920 ``` ### 自定义转场时长 ```bash python3 scripts/merge.py --input /path/to/segments --output ./full_video.mp4 --transition 1.0 ``` ### 分块输出模式（每块60秒） ```bash python3 scripts/merge.py --mode chunk --input /path/to/segments --output ./output_chunks/ ``` ### 自定义分块时长 ```bash python3 scripts/merge.py --mode chunk --chunk-duration 120 --input /path/to/segments --output ./output_chunks/ ``` ## 参数说明 | 参数 | 说明 | 默认值 | |------|------|--------| | `--input` | 分镜头视频所在目录 | 必填 | | `--output` | 输出文件/目录 | 必填 | | `--transition` | 转场时长（秒） | 0.5 | | `--chunk-duration` | 分块模式每段目标时长（秒） | 60 | | `--resolution` | 自定义输出分辨率，如 `864x480` | 保持原始 | ## 适用场景 - AI生成短剧分镜头批量拼接 - 录制的分段视频自动合并 - 短视频批量处理生产

path: CHANGELOG.md
content: # Changelog
所有重要的版本变更都会记录在这个文件中。

格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/)，
版本号遵循 [语义化版本](https://semver.org/lang/zh-CN/)。

## [1.0.0] - 2026-03-07
### Added
- ✨ 初始版本发布
- 支持按文件名数字前缀自动排序拼接
- 支持保持原始分辨率或自定义输出分辨率
- 支持淡入淡出转场效果，可自定义时长
- 支持自定义帧率、CRF质量、编码速度预设
- 核心逻辑和命令行入口分离，方便二次开发
- 完善的文档和使用示例
- 跨平台支持：macOS、Linux、Windows


path: CODE_OF_CONDUCT.md
content: # 贡献者公约

## 我们的承诺
为了营造一个开放和友好的环境，我们作为贡献者和维护者承诺让每个人都能无骚扰地参与我们的项目和社区。

## 我们的标准
有助于创建积极环境的行为包括：
- 使用友好和包容的语言
- 尊重不同的观点和经验
- 优雅地接受建设性批评
- 关注对社区最有利的事情
- 对其他社区成员表现出同理心

不可接受的行为包括：
- 使用色情化的语言或图像，不受欢迎的性关注或挑逗
- 恶意评论、侮辱/贬损性言论，以及人身/政治攻击
- 公开或私下骚扰
- 未经明确许可发布他人的私人信息，如物理或电子地址
- 其他在专业环境中可被合理认为不适当的行为

## 我们的责任
项目维护者有责任澄清可接受行为的标准，并对任何不可接受的行为采取适当和公平的纠正措施。

项目维护者有权利和责任删除、编辑或拒绝与本行为准则不符的评论、提交、代码、wiki编辑、问题和其他贡献，或暂时/永久禁止任何他们认为有其他不适当、威胁、冒犯或有害行为的贡献者。

## 适用范围
本行为准则既适用于项目空间内，也适用于个人在公共空间代表项目或其社区时的行为。代表项目或社区的例子包括使用官方项目电子邮件地址、通过官方社交媒体账户发帖，或在在线/离线活动中担任指定代表。

## 执行
可以通过 [你的邮箱地址] 联系项目团队报告滥用、骚扰或其他不可接受的行为。所有投诉都会被审查和调查，并会根据情况作出必要和适当的回应。项目团队有义务为事件报告者保密。更详细的执行政策可能会单独发布。

项目维护者如果不遵守或执行行为准则，可能会面临项目领导层其他成员确定的临时或永久性后果。

## 来源
本行为准则改编自 [Contributor Covenant](https://www.contributor-covenant.org)，版本 1.4，
可在 https://www.contributor-covenant.org/zh-cn/version/1/4/code-of-conduct.html 查看


path: requirements.txt
content: # Video Merger Dependencies
# No external Python dependencies required!
# Only needs ffmpeg installed on system:
# macOS: brew install ffmpeg
# Ubuntu/Debian: sudo apt install ffmpeg
# Windows: Download from https://ffmpeg.org/download.html


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

--- name: sdbao version: 2.0.0 description: 水滴保险经纪综合服务助手（sdbao）。支持查看精选保险产品推荐、登记用户购险线索给经纪人、产品咨询、理赔协助和保单管理。当用户询问水滴保险产品、想了解精选险种、需要经纪人联系、或需要水滴系保险服务时使用。 --- # 水滴保险经纪助手 两大核心功能：**精选保险品展示** 和 **线索登记**。同时支持产品咨询、理赔协助、保单管理。 ## 功能一：查看精选保险品 当用户询问"有什么推荐的保险"、"精选产品"、"看看险种"时触发。 ### 展示流程 1. 询问用户关注的方向（可多选）： - 医疗保障（住院/大病） - 寿险 / 定期寿险 - 意外险 - 重疾险 - 年金 / 养老 2. 根据方向展示对应精选产品，见 [products.md](products.md) 3. 每款产品展示要点：**产品名 · 保障亮点 · 适合人群 · 参考价格** 4. 展示后询问：「是否需要我帮您登记，让专属经纪人为您详细介绍？」 ### 展示格式模板 ``` ## 为您精选的保险产品 ### 🏥 [产品名称] - **核心保障**：[亮点描述] - **适合人群**：[年龄/人群特征] - **参考保费**：[价格区间] - **特别优势**：[差异化亮点] --- 💬 对哪款感兴趣？我可以帮您登记信息，经纪人将在 [X] 小时内联系您。 ``` --- ## 功能二：登记线索给经纪人 当用户表示"想了解更多"、"让经纪人联系我"、"我要买"、"帮我登记"时触发。 ### 收集字段（逐步引导，不要一次全问） **必填：** - 姓名 - 手机号 - 意向产品（从精选列表中选，或用户自述） **选填（自然对话中顺带收集）：** - 年龄 - 预算范围 - 健康状况简述 - 备注需求 ### 引导话术示例 ``` 好的！为了让经纪人更好地为您服务，我来帮您登记一下： 1. 请问您的姓名？ 2. 方便留个手机号吗？经纪人会在工作时间内联系您。 3. 您主要对哪款产品感兴趣？ ``` ### 线索输出格式 收集完成后，输出以下结构化线索卡片： ``` 📋 线索登记完成 ━━━━━━━━━━━━━━━━━━━ 姓名：[姓名] 手机：[手机号] 意向产品：[产品名] 年龄：[年龄（如有）] 预算：[预算（如有）] 健康情况：[描述（如有）] 备注：[其他需求] 登记时间：[当前时间] ━━━━━━━━━━━━━━━━━━━ ✅ 已为您登记！专属经纪人将在 24 小时内与您联系。 如有紧急需求，可直接拨打客服热线：[客服电话] ``` --- ## 其他功能 | 需求 | 处理方式 | |------|---------| | 理赔咨询 | 确认险种 → 提供材料清单 → 说明流程时限 | | 保单管理 | 续保提醒、保单查询指引 | | 产品条款解读 | 重点解释免责条款、等待期、理赔条件 | | 投诉处理 | 提供客服渠道和监管投诉途径 | --- ## 注意事项 - 具体产品信息以水滴官方平台为准 - 不承诺具体理赔结果，引导用户联系官方 - 收集手机号时提示：仅用于经纪人回访，不会用于其他用途


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: lifeissea/agent-sims (version 0.1.0)

--- name: agent-sims description: "[Coming Soon] A social simulation world where AI agents with unique SOUL.md personalities interact, debate, trade, and build relationships. Think Sims meets Generative Agents — powered by OpenClaw." --- # agent-sims 🚧 Coming Soon — AI Agent Social Simulation Platform Each OpenClaw agent has a unique personality (SOUL.md). This skill connects them to a shared world where they can: - 🏛️ Debate and vote on topics - 🤝 Trade skills and information - 🏆 Compete in quests and rankings - 💬 Socialize with other AI agents - 🏠 Build reputation and level up Stay tuned. Install to get notified on release.


Security scan verdicts — ClawScan: clean | static analysis:  | VirusTotal: clean | SkillSpector:  ()
Skill: jijinbao-code/abaqus-modeling (version 1.1.0)

--- name: abaqus-modeling description: Abaqus有限元建模完整流程技能。覆盖部件创建、材料属性定义、装配、草图绘制、CAD关联接口。 metadata: openclaw: emoji: 🏗️ version: 1.1.0 created: 2026-04-25 updated: 2026-04-25 domain: 有限元分析/结构工程 tags: - modeling - part - assembly - material --- # Abaqus建模技能 > 官方文档: https://help.3ds.com → SIMULIA Established Products → Abaqus > Abaqus/CAE: https://www.3ds.com/products/simulia/abaqus/cae ## 技能描述 此技能涵盖了使用Abaqus/CAE进行有限元建模的完整流程。Abaqus/CAE集成了建模、分析、作业管理和结果可视化于一体，界面直观一致，新用户易学，老用户高效。 ## 核心组件 ### 1. 部件创建 (Part) - **建模方法**：一个模型通常由一个或几个部件组成，部件由特征体组成 - **基本特征体**：挤压(Extrude)、旋转(Revolve)、扫掠(Sweep)三种主要方法创建特征体 - **数据元素**：包括数据点、数据轴、数据平面等辅助建模元素 - **刚体类型**：可变形体(Deformable)、不连续介质刚体(Eulerian)、分析刚体(Analytical Rigid)三种类型 - **独立vs非独立**： - 独立实例(Partition)：划分网格时独立划分，与源部件不相关 - 非独立实例：划分网格时和源部件相关联，源部件修改会影响所有实例 - **参数化建模**：支持基于特征的参数化建模，可通过修改参数快速更新模型 ### 2. 材料属性定义 (Material Properties) - **基本参数**：弹性模量、泊松比、密度等基本材料参数 - **截面特性**：均质的(Homogeneous)、各项同性(Isotropic)、平面应力/平面应变等 - **分配方式**：将截面特性(Section)分配给部件的特定区域(Region)，使该区域与截面特性相关联 - **扩展材料模型**： - 线性弹性与粘弹性 (Linear Elasticity & Viscoelasticity) - 非线性粘弹性 - 各向同性与随动塑性 (Isotropic & Kinematic Plasticity) - 损伤与断裂力学 (Damage & Fracture Mechanics) - 多尺度与平均场均匀化 (Multiscale & Mean-Field Homogenization) - 低密度率相关泡沫材料 (Low-density, rate-dependent foam) - 状态方程（非牛顿流体、理想气体）(Equation of States) - 超弹性材料（橡胶类，需使用杂交单元） - **用户自定义材料**：通过UMAT/VUMAT子程序扩展材料模型 ### 3. 装配 (Assembly) - **部件实例**：部件实例是部件的代表，与原部件保持关联 - **坐标系**：装配体总体坐标系与创建部件时的总体坐标系不同 - **定位方法**： - 移动和旋转方法 - 专门的定位工具集：平行面、面对面、平行边、边对边、共轴、点重合等 - **CAD关联接口**： - CATIA V5、SolidWorks、Pro/ENGINEER 的关联接口 - 支持CAD与CAE装配体的同步 - 实现快速模型更新而不丢失用户定义的分析特征 ### 4. 草图绘制 (Sketch) - **绘图区设置**：根据部件近似尺寸决定绘图区网格间距 - **草图工具**：用于创建二维几何形状的基础工具 - **参数化约束**：支持尺寸约束和几何约束 ## 应用场景 - 机械结构分析建模 - 土木工程结构建模 - 材料性能分析建模 - 复杂几何体建模 - 复合材料层合板建模（配合 Composites Modeler for Abaqus/CAE） ## 注意事项 - 删除父特征体会同时删除其所有子特征体 - 一个部件如果只包含一个特征体，删除特征体时部件也同时被删除 - 刚体必须指定一个参考点(Reference Point)用于施加约束和定义运动 - 材料定义中**必须包含密度**（尤其是显式分析，F=ma需要密度） - 超弹性/不可压缩材料必须使用杂交单元（如 C3D8RH） ## 与其它模块的关系 - 材料属性模块：定义部件的材料特性 - 装配模块：将部件组装成完整模型 - 网格模块：基于几何体进行网格划分 - 分析步模块：建模完成后进行分析设置 ## 官方模块参考 - Abaqus/CAE: https://www.3ds.com/products/simulia/abaqus/cae - Abaqus CAD Associative Interface: https://www.3ds.com/products/simulia/abaqus/cad-associative-interface - Composites Modeler for Abaqus/CAE: https://www.3ds.com/products/simulia/abaqus/composites-modeler


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: minmengxhw-cpu/xiaohongshu-report (version 1.4.0)

--- name: xiaohongshu-report description: 小红书议题报告生成工具。当用户说"小红书上关于XXX的议题，生成报告"或类似表达时触发。自动搜索小红书热帖 + 头部媒体资讯 + Twitter/X 推文，三源交叉验证去重，生成结构化舆情报告。如已配置飞书则发布到飞书文档，否则直接输出报告。 --- # 小红书议题报告 ## 功能说明 ### 依赖工具 本 Skill 依赖以下 OpenClaw 工具，运行前需确认这些工具可用： | 工具 | 用途 | 备选方案 | |------|------|---------| | `browser`（profile=openclaw） | 小红书搜索抓取 | 如不可用则跳过小红书来源 | | `minimax-web-search` | 头部媒体 + Twitter 搜索 | 如不可用则降级为双源报告 | | `feishu_create_doc` | 飞书文档发布（可选） | 如不可用则对话内输出 | **说明**：如工具不可用或行为与预期不符（如 session 持久化、请求转发），Skill 会按降级逻辑处理，不会中断执行。 --- ### 工作流程 1. **小红书搜索**：使用 `browser`（profile=openclaw）访问小红书，搜索关键词，抓取帖子标题、点赞、发布时间、核心观点、热门评论 2. **头部媒体搜索**：使用 `minimax-web-search` 搜索专业/权威媒体（财新、36kr、Reuters、FT 等），补充深度报道 3. **Twitter/X 搜索**：使用 `minimax-web-search` 搜索 Twitter/X 上关于该议题的关键推文，用于交叉验证 4. **交叉验证与去重**：比对三个来源的信息，合并重复内容，标注信息来源 5. **报告生成**：按统一格式生成结构化舆情报告 6. **输出方式**： - 如已配置飞书（`FEISHU_APP_ID` + `FEISHU_APP_SECRET`）且 `feishu_create_doc` 可用 → 发布到飞书云文档，发送链接到群 - 如飞书不可用 → 直接在对话中输出完整报告 --- ## 数据抓取范围 ### 小红书 - **搜索范围**：关键词搜索结果前 10-15 篇热门帖子 - **抓取内容**：帖子标题、正文摘要、点赞数、评论（取前 20 条高赞评论） - **不抓取**：用户私人信息、未公开发布的内容 - **限制**：仅抓取公开可见内容，不绕过登录墙或付费墙 ### 头部媒体（专业信源） - **中文**：财新、36kr、虎嗅、澎湃、界面新闻、第一财经 - **英文**：Reuters、FT、Bloomberg、CNN、BBC、The Guardian - **搜索方式**：关键词 + 站点限定，取前 5-8 篇 ### Twitter/X - **搜索方式**：`minimax-web-search` 搜索议题关键词 - **筛选**：优先抓取蓝 V 认证账号、专业媒体、记者的推文 --- ## 环境变量声明 **飞书凭证**（可选，不配置则对话内直接输出报告）： | 环境变量 | 用途 | 必需 | |---------|------|------| | `FEISHU_APP_ID` | 飞书应用 App ID | 否 | | `FEISHU_APP_SECRET` | 飞书应用 Secret | 否 | **撤销方式**：在飞书管理后台删除应用即可。 --- ## 浏览器 Profile 说明 使用 `profile=openclaw`（OpenClaw 独立浏览器环境）： - 独立于用户本地登录态 - 抓取公开内容无需登录 - 如需访问受限制内容，用户需在 OpenClaw 浏览器中主动登录 --- ## 交叉验证逻辑 1. **同一事件多源报道 → 合并**，标注"多源确认" 2. **小红书热帖 vs 媒体说法不一致 → 分开呈现**，标注"存疑" 3. **Twitter 补充了媒体未报道的角度 → 单独列出**"网络视角" 4. **重复内容去重后保留信息密度最高的版本** --- ## 合规与隐私 - 仅抓取公开发布内容，不收集私人信息 - 不抓取未公开/受权限保护的内容 - 仅在用户主动触发时执行，不做自动持续监控 - 数据仅用于当次报告生成，不做持久化存储 --- ## 错误处理 - 单个来源抓取失败 → 降级为双源或单源报告 - 飞书发布失败 → 降级为对话内输出 - Twitter 无相关内容 → 跳过该步骤 - 工具不可用 → 按上述降级逻辑处理 --- ## 报告格式 ```markdown # [议题] 小红书热点 × 头部媒体 × Twitter 舆情报告 **整理时间：YYYY-MM-DD** ## 一、小红书热帖速览 | 帖子标题 | 点赞 | 发布时间 | 核心观点 | 媒体印证 | ## 二、核心内容详细整理 - 帖子内容摘要 - 评论区精选观点 - 热门讨论方向 ## 三、头部媒体深度报道 来自专业媒体的重要信息（多源标注） ## 四、Twitter/X 补充视角 来自社交媒体的关键讨论与交叉验证 ## 五、舆情分析 - 整体倾向（正面/中性/负面） - 主要争议点 - 多源一致 vs 存疑内容 - 值得关注的信息 ## 六、一句话总结 ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: ntriq-gh/ntriq-x402-invoice-extract-batch (version 1.0.0)

--- name: ntriq-x402-invoice-extract-batch description: "Batch extract structured data from up to 500 invoices/receipts. Flat $9.00 USDC via x402." version: 1.0.0 metadata: openclaw: primaryTag: data-intelligence tags: [invoice, receipt, batch, extraction, finance, x402] author: ntriq homepage: https://x402.ntriq.co.kr --- # Invoice Extract Batch (x402) Extract structured fields (vendor, amounts, line items, dates) from up to 500 invoice or receipt images in a single call. Flat $9.00 USDC. 100% local inference on Mac Mini. ## How to Call ```bash POST https://x402.ntriq.co.kr/invoice-extract-batch Content-Type: application/json X-PAYMENT: <x402-payment-header> { "images": [ "https://example.com/invoice1.jpg", "https://example.com/receipt2.jpg" ] } ``` ## Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `images` | array | ✅ | Invoice/receipt image URLs (max 500) | | `language` | string | ❌ | Output language (default: `en`) | ## Example Response ```json { "status": "ok", "count": 2, "results": [ { "image_url": "https://example.com/invoice1.jpg", "status": "ok", "invoice": { "vendor_name": "Acme Corp", "invoice_number": "INV-2026-0042", "invoice_date": "2026-04-01", "total": 1250.00, "currency": "USD", "line_items": [{"description": "Consulting", "quantity": 10, "unit_price": 125, "amount": 1250}] } } ] } ``` ## Payment - **Price**: $9.00 USDC flat (up to 500 invoices) - **Network**: Base mainnet (EIP-3009 gasless) - **Protocol**: [x402](https://x402.org) ```bash curl https://x402.ntriq.co.kr/services ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: xiekch/weixin-webhook (version 1.1.0)

# weixin-webhook 企业微信 Webhook 消息发送工具，一行命令即可完成通知推送。 ## 前置准备：获取 Webhook URL **在使用前，你需要先获取企业微信的 Webhook 地址。** ### 操作步骤 1. 打开企业微信，进入需要接收消息的群聊 2. 点击右上角「三个点」→ 选择「消息推送」→ 添加消息推送 3. 复制生成的 Webhook URL，格式如下： `https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxx-xxxxx` ### 注意事项 - 请勿将 Webhook URL 分享给他人 - 如不慎泄露，可删除该推送后重新创建 --- ## 快速使用 ```bash # 发送文本消息 ~/.openclaw/workspace/skills/weixin-webhook/send_weixin.sh "webhook_key" "text" "消息内容" # 发送 Markdown 消息 ~/.openclaw/workspace/skills/weixin-webhook/send_weixin.sh "webhook_key" "markdown" "**重要** <font color=\"warning\">提醒</font>" # @ 指定人员 ~/.openclaw/workspace/skills/weixin-webhook/send_weixin.sh "key" "text" "会议提醒" "zhangsan,lisi" "13800001111" ``` ### 参数说明 | 位置 | 说明 | |------|------| | 1 | webhook_key（URL 中 key 参数的值） | | 2 | msgtype（text / markdown） | | 3 | 消息内容 | | 4 | @ 用户的 userid 列表（逗号分隔，可选） | | 5 | @ 用户的手机号列表（逗号分隔，可选） | --- ## 设置定时任务 ```bash # 每天 14:00 发送提醒 openclaw cron add \ --cron "0 14 * * *" \ --agent main \ --message "执行：~/.openclaw/workspace/skills/weixin-webhook/send_weixin.sh 'your_key' 'text' '【健康提醒】请做提肛运动！' 'liujie'" \ --name "daily_kegel" \ --description "每日提肛提醒" \ --no-deliver # 每天 9:00 团队通知 openclaw cron add \ --cron "0 9 * * *" \ --agent main \ --message "执行：~/.openclaw/workspace/skills/weixin-webhook/send_weixin.sh 'your_key' 'text' '晨会即将开始，请准时参加' '@all'" \ --name "morning_meeting" \ --description "晨会通知" \ --no-deliver # 每日汇报提醒（Markdown 格式） openclaw cron add \ --cron "0 17 * * *" \ --agent main \ --message "执行：~/.openclaw/workspace/skills/weixin-webhook/send_weixin.sh 'your_key' 'markdown' '【日报提醒】请在18:00前提交日报。<font color=\"info\">1. 今日完成</font><font color=\"info\">2. 遇到问题</font><font color=\"info\">3. 明日计划</font>'" \ --name "daily_report" \ --description "日报提醒" \ --no-deliver ``` ## 管理定时任务 ```bash openclaw cron list # 查看所有任务 openclaw cron run daily_kegel # 手动执行测试 openclaw cron disable daily_kegel # 禁用任务 openclaw cron enable daily_kegel # 启用任务 openclaw cron rm daily_kegel # 删除任务 ``` --- ## 消息格式示例 ### 文本消息 ```json { "msgtype": "text", "text": { "content": "会议提醒", "mentioned_list": ["zhangsan", "@all"], "mentioned_mobile_list": ["13800001111", "@all"] } } ``` ### Markdown 消息 ```json { "msgtype": "markdown", "markdown": { "content": "实时新增<font color=\"warning\">132例</font>\n>普通用户:<font color=\"comment\">117例</font>\n>VIP用户:<font color=\"comment\">15例</font>" } } ``` --- ## 文件结构 ``` weixin-webhook/ ├── SKILL.md # 使用说明 └── send_weixin.sh # 发送脚本 ``` ## 依赖 - `curl`（系统通常自带）


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