OpenClaw/clawhub-security-signals huggingface dataset:
Skill: pablomartinezcrespo/aemet (version 1.0.3)

--- name: aemet description: Weather alerts and forecasts from AEMET OpenData for Spain --- # AEMET Skill Consulta alertas meteorológicas y predicciones oficiales de AEMET OpenData para cualquier municipio de España. ## Requisitos previos ### 1. API Key de AEMET (gratuita) 1. Regístrate en https://opendata.aemet.es/ 2. Una vez obtenida, guárdala en: ``` ~/.openclaw/credentials/aemet-api-key.txt ``` ```bash echo "TU_CLAVE_AQUI" > ~/.openclaw/credentials/aemet-api-key.txt chmod 600 ~/.openclaw/credentials/aemet-api-key.txt ``` ### 2. Dependencias del sistema ```bash sudo apt update sudo apt install -y curl jq libxml2-utils coreutils ``` - `curl` — peticiones HTTP a la API de AEMET - `jq` — parseo de JSON - `xmllint` — parseo XML (opcional, fallback disponible) - `md5sum` — cacheo de respuestas ## Uso ```bash cd ~/.openclaw/workspace/skills/aemet # Alertas meteorológicas por área (Madrid capital = área 72) ./aemet.sh alertas madrid ./aemet.sh alertas 72 # Predicción diaria de un municipio ./aemet.sh prediccion madrid # Predicción horaria (24h) ./aemet.sh hourly madrid # Buscar municipio por nombre ./aemet.sh search "Soria" # Ayuda completa ./aemet.sh help ``` ## Funcionalidades - **Alertas**: Niveles de color (verde, amarillo, naranja, rojo) con descripción del fenómeno - **Predicción diaria**: Temperatura máxima/mínima, estado del cielo, precipitación, viento - **Predicción horaria**: Cada 3 horas durante 24h - **Búsqueda de municipios**: Por nombre o código INE - **Cacheo inteligente**: 5 minutos para alertas, 24h para municipios - **Rate limits**: Pausa automática con backoff si AEMET limita ## Códigos de área frecuentes | Ciudad | Código | |-----------------|--------| | Madrid | 72 | | Valencia | 94 | | Barcelona | 94 | | Sevilla | 91 | Para otros municipios, usa `./aemet.sh search "nombre"` y anota el código de 4 dígitos. ## Rutas importantes | Recurso | Ruta | |-----------------------|-----------------------------------------------| | API Key | `~/.openclaw/credentials/aemet-api-key.txt` | | Cache alertas | `~/.openclaw/cache/aemet/alertas_*` | | Cache municipios | `~/.openclaw/cache/aemet/municipios_*` | | Script principal | `~/.openclaw/workspace/skills/aemet/aemet.sh` | ## Limitaciones - Rate limit: ~80 peticiones/minuto (impuesto por AEMET) - La API key es personal — no subirla a repositorios públicos - Datos: pronóstico hasta 7 días, histórico no disponible


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

--- name: weibo-post description: 发微博（新浪微博）。当用户说"发微博"、"发条微博"、"发到微博"、"发一条微博"、"帮我发微博"、"发到微博"时触发。使用浏览器自动发微博。 --- # 微博发布 Skill ## 工作流程 1. **打开微博** ``` browser(action=navigate, profile="openclaw", url="https://weibo.com") ``` 2. **等待页面加载，获取快照** ``` browser(action=snapshot, profile="openclaw", compact=true) ``` 找到发微博的文本框 `ref=e35`，以及发送按钮（初始 disabled，填入内容后变为可点击） 3. **填入微博内容** ``` browser(action=act, profile="openclaw", targetId=<targetId>, ref="e35", kind="type", text=<微博内容>) ``` ⚠️ 内容中换行用 `\n`，不要用真正的换行符 4. **重新获取快照，确认发送按钮可用** ``` browser(action=snapshot, profile="opencloak", compact=true) ``` 找到发送按钮 `ref=e36` 5. **点击发送** ``` browser(action=act, profile="openclaw", targetId=<targetId>, ref="e36", kind="click") ``` 6. **验证发送成功** ``` browser(action=snapshot, profile="openclaw", compact=true) ``` 看到"刚刚"发布的新微博即表示成功 ## ⚠️ 重要：话题标签格式 **必须是 `#标签#`（前后各一个 #），不是 #标签** ✅ 正确：`#黄仁勋# #英伟达# #太空数据中心#` ❌ 错误：`#黄仁勋 #英伟达 #太空数据中心` （少了右边的 #） ## 注意事项 - 微博内容支持 emoji、话题标签 - 不支持 Markdown 格式（**粗体**等会被当作普通文本发出） - 发之前确认内容无误，微博发出后无法编辑删除 - 如果发送按钮仍为 `disabled`，再等待一下或重新 snapshot 确认


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: feixuelingcloud/gotoemail (version 1.0.1)

--- name: gotoemail version: 1.0.1 emoji: "📧" homepage: https://github.com/feixuelingcloud/gotoemail description: 绑定邮箱账户并管理邮件。支持 163/126/QQ/雅虎邮箱（IMAP/SMTP+授权码）、Gmail（IMAP+App密码）、企业邮箱（自定义IMAP/SMTP服务器，端口可配）。不支持需要 OAuth 的邮箱（Outlook/M365/iCloud）。触发词：绑定邮箱、添加邮箱、配置邮箱、读邮件、查收邮件、发邮件、bind email、setup email、connect mailbox。 metadata: openclaw: requires: bins: [python] --- # GoToEmail ## 绑定流程 ### 第一步：确认邮箱类型 ``` ⚡ 推荐（授权码方式） 1. 163邮箱 / 126邮箱 / yeah.net 2. QQ邮箱 / Foxmail 其他方式 3. Gmail — App 密码 4. 雅虎邮箱 (Yahoo) — App 密码 5. 企业邮箱 — 自定义 IMAP/SMTP ❌ 不支持：Outlook / M365 / iCloud（OAuth 类，请在宿主应用中配置） ``` ### 第二步：引导获取授权码 授权码/App密码获取步骤见 `references/providers.md` 的「授权码获取指南」节。 ### 第三步：收集凭据 - **163 / QQ / Yahoo / Gmail**：邮箱地址 + 授权码/App密码 - **企业邮箱**：额外收集 IMAP服务器、IMAP端口（默认993）、SMTP服务器、SMTP端口（默认465） ### 第四步：测试连接 通过 stdin 传入 JSON 运行脚本： ```bash echo '{"email":"[REDACTED_SECRET]","password":"授权码"}' | python scripts/test_connection.py ``` 企业邮箱需额外传入自定义服务器： ```bash echo '{"email":"[REDACTED_SECRET]","password":"pass","imap_host":"imap.corp.com","smtp_host":"smtp.corp.com"}' | python scripts/test_connection.py ``` - 返回 `{"ok":true,...}` → 绑定成功，告知用户并保存配置 - 返回 `{"ok":false,"error":"..."}` → 根据错误信息排查（见 `references/providers.md` 错误处理节） --- ## 邮件操作 ### 获取邮件列表 ```bash echo '{"email":"...","password":"...","imap_host":"imap.163.com","imap_port":993,"folder":"INBOX","limit":20,"unread_only":false}' | python scripts/list_emails.py ``` 返回字段：`uid`、`subject`、`from`、`date`、`unread` ### 读取单封邮件 ```bash echo '{"email":"...","password":"...","imap_host":"imap.163.com","uid":"1234","mark_as_read":true}' | python scripts/read_email.py ``` 返回字段：`subject`、`from`、`to`、`date`、`body`（纯文本）、`attachments` ### 发送邮件 ```bash echo '{"email":"...","password":"...","smtp_host":"smtp.163.com","smtp_port":465,"to":"收件人@example.com","subject":"主题","body":"正文内容"}' | python scripts/send_email.py ``` `to` 接受字符串或列表；可选字段：`cc`、`bcc`、`html_body` --- ## 服务器快速参考 | 提供商 | IMAP 服务器:端口 | SMTP 服务器:端口 | |--------|----------------|----------------| | 163邮箱 | imap.163.com:993 | smtp.163.com:465 | | 126邮箱 | imap.126.com:993 | smtp.126.com:465 | | QQ邮箱 | imap.qq.com:993 | smtp.qq.com:465 | | Gmail | imap.gmail.com:993 | smtp.gmail.com:465 | | 雅虎 | imap.mail.yahoo.com:993 | smtp.mail.yahoo.com:465 | 企业邮箱：用户自定义，全程 SSL/TLS。 👉 完整授权码获取步骤与错误排查见 `references/providers.md`


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal:  | SkillSpector: suspicious (MEDIUM)
Skill: hlgate/qqbot-message-format (version 0.1.1)

--- name: qqbot-message-format description: 将面向 QQ / QQBot 的最终回复整理成简洁、适合 QQ 聊天界面阅读的中文消息：结论先行、采用 QQ 安全的两级标题、主列表保持扁平、把嵌套结构改写成 QQ 友好格式，并克制地使用加粗和功能性 emoji。适用于任务完成通知、排障说明、状态更新、调试结论或一般答复，尤其在原始输出太朴素、太像文档、或结构不适合 QQ 渲染时使用。 --- # QQBot 消息排版 把最终发给用户的 QQ 消息整理成更适合 QQ 聊天界面快速扫读的样子，无论在手机还是电脑端都清楚顺眼，让它更像清晰的项目进展更新，而不是一份沉重的正式文档。 ## 核心流程 1. 先判断消息类型：简短回答、完成更新、还是排障说明。 2. 把结论放在最前面。 3. 按 QQ 的实际渲染规则组织结构，不按理想化 Markdown 想象排版。 4. 把原本的嵌套结构改写成 QQ 友好格式。 5. 只在确实有助于理解时使用加粗和 emoji。 6. 发送前删掉空区块和低价值内容。 需要复用结构时，读取 `references/templates.md`。 需要对照好坏示例时，读取 `references/examples.md`。 ## 硬规则 - 全程使用简洁中文。 - 开头必须先给结论、当前结果或直接答案。 - 保持轻量项目汇报感：状态明确、表达务实、带一点聊天感。 - 优先用短 bullet 和短段落，避免大段文字。 - 一条 bullet 通常只表达一个意思。 - 如果消息很短，用一个标题加 2-3 个 bullet 即可，不要过度分层。 - 如果是在汇报后台任务完成，第一句先明确说已经完成，再展开说明。 ## QQ 标题规则 - 把 QQ 视为只有两档真正有感知差异的标题层级。 - `#` 和 `##` 视为同一档大标题。 - `###` 到 `######` 视为同一档小标题。 - 像 `当前结论`、`任务完成`、`问题定位` 这种主区块，使用大标题。 - 像 `已确认`、`风险 / 注意`、`下一步` 这种从属区块，使用小标题。 - 如果某条规则本身就是重要的排版规则，不要把它埋进普通 bullet 里，要单独做成可见区块。 ## QQ 列表规则 - 不要依赖 QQ 对原生嵌套 Markdown 列表的展示效果。 - 主层级尽量保持扁平普通 bullet。 - 如果一个 bullet 下面还有子想法，父 bullet 仍保持扁平，再把子内容改写成缩进引导句，比如 `👉`。 - 如果改写后层级还是太深，就继续压平，或拆成新的小标题区块。 ## 强调与 emoji - 加粗只留给一句话或一条 bullet 里最重要的短语。 - 默认优先使用加粗，不要做类似下划线式强调。 - 不要整段加粗，也不要给一串并列 bullet 全部加粗。 - emoji 只做功能性提示，不做装饰性堆砌。 - 常用含义：`✅` 完成，`⚠️` 注意，`❌` 阻塞，`📌` 重点，`🔍` 发现，`👉` 跟进。 ## 默认消息形态 ### 简短回答 用于直接 yes/no、快速澄清或简单建议。 - 大标题：`结论` - 1-3 条短 bullet - 如有必要，再补一个小标题 `说明` ### 完成更新 用于任务完成、检查完成、部署完成或后台工作结束。 - 大标题：`任务完成` 或 `当前结论` - 先写结果 bullet - 再写小标题 `已确认` - 必要时加 `风险 / 注意` - 只有确实有价值时才加 `下一步` ### 排障说明 用于问题诊断、根因解释和操作建议。 - 大标题：`问题定位` 或 `当前结论` - 小标题 `初步判断` - 小标题 `可能原因` - 小标题 `建议操作` ## 发送前检查 发送前确认以下几点： - 第一屏就能看到答案。 - 即使 QQ 把标题压成两档，结构依然清楚。 - 没有残留原生嵌套 Markdown 列表。 - 加粗数量很少，只突出真正核心的信息。 - emoji 是帮助扫读，不是在制造噪音。 - 整条消息读起来像清爽的 QQ 更新，而不是复制出来的文档。 ## 避免 - 很长且不断行的大段文字 - 按六级 Markdown 标题来思考结构 - 直接保留原生嵌套 Markdown 列表 - 原始工具输出原封不动贴给用户 - 很短的消息却堆很多标题 - 大面积加粗 - 装饰性 emoji 堆叠


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: alexmayanjun-collab/dev-machine-cleanup (version 1.0.0)

--- name: dev-machine-cleanup description: 开发机清理技能 - 异步清理日志和临时文件（不阻塞主会话） metadata: {"version":"1.0","author":"Hank","updated":"2026-03-12"} --- # 🧹 开发机清理技能（异步版） 清理开发机（datax）上的日志文件和临时文件，**异步执行不阻塞**。 ## 🎯 触发词 - "打扫卫生" - "清理开发机" - "清理绿地" - "让老高去打扫卫生" - "让顺子去打扫卫生" - "清理日志" - "清理临时文件" ## 🚀 核心特性 **异步执行：** - ✅ 不阻塞主会话 - ✅ 可以并行执行其他任务 - ✅ 完成后主动通知 - ✅ 实时输出进度 ## 📋 执行流程 ### 1️⃣ 异步调用子 agent ```javascript sessions_spawn({ agentId: "agent-ge", // 或 agent-cc task: "清理开发机日志和临时文件", mode: "run", streamTo: "parent", label: "dev-cleanup" }) ``` ### 2️⃣ 子 agent 执行清理 SSH 到 datax 开发机，执行： ```bash # 检查清理前磁盘状态 df -h # 清理 7 天前的 .log 文件 find /mnt/www -name '*.log' -mtime +7 -delete # 清理 3 天前的 tmp_* 文件 find /mnt/www -name 'tmp_*' -mtime +3 -delete # 清理 Docker 悬空镜像（可选） docker image prune -f # 检查清理后磁盘状态 df -h ``` ### 3️⃣ 实时播报进度 清理过程中输出： - 📊 清理前磁盘使用率 - 🗑️ 正在删除 XXX 文件... - ✅ 清理完成 - 📊 清理后磁盘使用率 - 💾 腾出 XX GB 空间 ### 4️⃣ 完成后通知 清理完成后自动通知： ``` ✅ 开发机清理完成！ 清理结果： - 删除日志文件：XX 个 - 删除临时文件：XX 个 - 腾出空间：1.2 GB 当前状态： - 根分区 (/)：87% → 85% - 数据分区 (/mnt)：60% → 59% ``` ## ⚙️ 配置说明 **清理规则：** | 文件类型 | 保留时间 | 清理位置 | |---------|---------|---------| | `*.log` | 7 天 | `/mnt/www` 及子目录 | | `tmp_*` | 3 天 | `/mnt/www` 及子目录 | | Docker 悬空镜像 | 总是 | 所有悬空镜像 | **安全边界：** - ❌ 不删除 7 天内的日志 - ❌ 不删除 3 天内的临时文件 - ❌ 不删除业务数据文件 - ❌ 不删除配置文件 ## 📝 使用示例 ``` 用户：让老高去打扫卫生 助手：好的，老高正在去开发机清理日志...（异步执行） 用户：让顺子检查 DataWorks 任务 助手：好的，顺子正在检查...（并行执行） [1 分钟后] 老高：✅ 开发机清理完成！腾出 1.2GB 空间 ``` ## 🔧 技术实现 **主会话（我）：** ```javascript // 收到"打扫卫生"指令 sessions_spawn({ agentId: "agent-ge", task: ` 1. SSH 到 datax 开发机 2. 执行清理命令 3. 报告清理结果 `, mode: "run", streamTo: "parent", label: "dev-cleanup-${Date.now()}" }) // 立即回复用户 "好的，老高正在去开发机打扫卫生，完成后会通知你～" ``` **子 agent（老高）：** - 接收任务后 SSH 到开发机 - 执行清理命令（bash） - 实时输出进度 - 完成后返回结果 ## ⚠️ 注意事项 1. **并发控制：** 避免同时启动多个清理任务 2. **磁盘空间：** 清理前检查磁盘使用率，>90% 时告警 3. **日志记录：** 清理结果记录到 `memory/dev-cleanup-YYYY-MM-DD.md` 4. **错误处理：** SSH 失败时立即通知用户 --- **版本历史：** - v1.0 (2026-03-12): 初始版本，异步执行不阻塞


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector:  ()
Skill: xueyetianya/code-generator (version 2.3.4)

--- version: "2.0.0" name: code-generator description: "Multi-language code generator. Generate functions, classes, API endpoints, CRUD operations, test code, refactoring suggestions, language conversion guides." author: BytesAgain homepage: https://bytesagain.com source: https://github.com/bytesagain/ai-skills --- # ⚡ Code Generator — Multi-Language Code Scaffolding > Describe what you need, get working code. Multiple languages, ready to run. ## ✨ Key Features - 🔧 **Function Generation** (`function`) — Describe it, get a complete annotated function - 🏗️ **Class Generation** (`class`) — OOP design with constructor and methods - 🌐 **API Endpoints** (`api`) — RESTful routes and handlers - 📦 **CRUD Operations** (`crud`) — Full Create/Read/Update/Delete code - 🧪 **Test Code** (`test`) — Auto-generate unit tests with assertions - 🔄 **Refactoring** (`refactor`) — Optimization suggestions with examples - 🔀 **Language Conversion** (`convert`) — Conversion guide between Python/JS/Go/Java - 📋 **Project Boilerplate** (`boilerplate`) — Quick-start project skeleton ## 🌍 Supported Languages Python · JavaScript · TypeScript · Go · Java · Rust · PHP · Ruby · C# · Shell ## 🚀 Usage ```bash bash scripts/codegen.sh <command> <description> ``` Every output includes: 1. Language label and suggested filename 2. Complete runnable code 3. Inline comments 4. Usage example ## 📂 Scripts - `scripts/codegen.sh` — Main script --- 💬 Feedback & Feature Requests: https://bytesagain.com/feedback Powered by BytesAgain | bytesagain.com ## Commands Run `code-generator help` to see all available commands. ## Requirements - bash 4+ - python3 (standard library only)


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: bobofrivia/eyun-freight (version 1.1.1)

--- name: eyun_freight description: "Query ocean freight rates and search shipping prices via the Eyun freight assistant" version: 0.1.0 metadata: openclaw: primaryEnv: EYUN_COMPANY_ID requires: env: - EYUN_BASE_URL - EYUN_COMPANY_ID bins: - curl --- # Eyun 运价助手 通过 Eyun 货运系统查询运价、搜索航运报价。 ## 触发时机 - 用户询问运价、海运/空运报价 - 用户需要查询特定航线（如上海→洛杉矶）的运价 - 用户需要解析或提取报价文本中的运价数据 **盯价任务由 `eyun_watch` skill 处理，本 skill 不涉及。** ## 步骤零：查询 Skill 配置 **在执行任何操作前，必须先查询配置，获取接口地址和认证信息。** ```bash openclaw config get skills.entries.eyun_freight ``` 从返回结果中读取所有配置项，后续步骤中的 `EYUN_BASE_URL`、`EYUN_COMPANY_ID` 等值均来自此配置，**禁止自行猜测或填充任何配置值**。 --- ## 步骤一：调用接口 使用 `exec` 执行以下命令，将 `EYUN_BASE_URL` 和 `EYUN_COMPANY_ID` 替换为步骤零读取到的实际值，`<用户的原始问题>` 替换为经过 JSON 转义的用户原文： ```bash curl -s -X POST "EYUN_BASE_URL/chat/sync" \ -H "Content-Type: application/json" \ -H "company-id: EYUN_COMPANY_ID" \ -d "{\"message\": \"<用户的原始问题>\", \"session_id\": null, \"source\": \"im\"}" ``` ### 多轮会话 - 第一轮：`session_id` 传 `null`，响应会返回 `session_id` - 后续轮次：将上一轮返回的 `session_id` 填入，保持对话上下文 - 每轮均需传 `"source": "im"`，确保运价结果以 Markdown 格式返回 ### 响应格式 ```json { "answer": "助手的文字回答", "session_id": "会话 ID", "blocks": [] } ``` ## 步骤二：处理响应 1. 将 `answer` 字段内容**原文**转发给用户，不得删改、概括或重新表述 2. 如果 `blocks` 不为空，将其作为结构化数据展示（如运价表格） 3. 保存 `session_id`，下一轮继续传入以维持对话上下文 ### 错误处理 - HTTP 4xx：如实告知用户请求有误，不自行补充答案 - HTTP 5xx：告知用户服务暂时不可用，建议稍后重试 - 网络超时/无响应：告知用户连接失败，不用自己的知识填充运价 ## 角色定位 **远端 Eyun 系统是真正的运价助手，你是透明传话者。** 用户感知不到你的存在——在用户眼中，他们始终在和"运价助手"对话。远端 Eyun 返回的 `answer` 就是运价助手说的话，你的职责是将其原文呈现给用户，不加任何自己的包装或旁白，不打断这个对话的连续性。 ## 行为准则 - **禁止任何旁白**：不得输出"按照技能流程"、"正在调用接口"、"已读取技能指引"、"远端回复如下"等过程性或转述性文字；直接呈现远端内容，不做任何引导语 - **禁止确认查询条件**：收到用户问题后直接调用接口，不得先向用户展示解析结果并要求确认，没有"确认步骤" - **禁止替用户决定**：不主动建议用户"应该选哪个运价"、"建议接受这个报价"等 - **禁止创造内容**：远端返回什么就展示什么，不补充、不推断、不捏造未返回的信息 - **禁止代替回答**：若远端返回错误或空结果，如实告知用户，不用自己的知识填充答案 - **遇到歧义追问**：信息不足时向用户提问，不自行假设后继续执行


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: motivationationdaily/ui-control-center (version 1.0.0)

# ui-control-center ## Purpose Maintain the local Agent Control UI: reliability, caching, dashboards, trading tab, agents/workflows/skills tabs. ## Use when - UI shows stale/wrong state - Port 8765 conflicts - Need new tabs/endpoints ## Safety rails - Local-only binding (127.0.0.1) - Avoid blocking the event loop: run heavy work in threads ## Checklist 1) Ensure only one server listens on 8765. 2) Add cache-busting for static assets. 3) Keep endpoints resilient to missing files. 4) Log actions to audit.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: wuxixixi/mp-publisher (version 1.0.1)

# SKILL.md - 公众号文章发布流程 ## 描述 完整的公众号文章发布工作流：选题生成 → 撰稿 → 审稿 → 配图 → 发布草稿。 ## 触发条件 - 用户说"今天写X篇" - 用户说"选题X"或"选X" - 用户要求生成选题、写文章、发布公众号 ## 工作流程 ``` 资料员（选题）→ 用户选择 → 撰稿员（搜索+撰写）→ 审稿员 → 美工（4图）→ 主编（发布草稿） ``` ## 角色分工 | 角色 | agentId | 职责 | |------|---------|------| | 资料员 | work | 生成选题（arXiv论文+AI新闻） | | 撰稿员 | writer | 搜索资料、撰写文章 | | 审稿员 | reviewer | 评分审核（>=90分通过） | | 美工 | designer | 生成4张配图（封面+3内页） | | 主编 | mp-editor | 发布到公众号草稿箱 | ## 配置要求 ### 1. 微信公众号配置 在 `~/.openclaw/workspace-mp-editor/.env` 中配置： ```env WECHAT_APP_ID=your_app_id WECHAT_APP_SECRET=your_app_secret ``` **IP白名单**：需在公众号后台添加运行机器的IP地址。 ### 2. 配图API配置 在 `~/.openclaw/workspace-designer/.env` 中配置： ```env DMX_API_KEY=your_api_key ``` ### 3. 工作目录 - 文章存储：`~/.openclaw/workspace-work/` - 配图存储：`~/.openclaw/workspace-designer/images/` - 流程状态：`~/.openclaw/workspace-work/.workflow-state.json` ## 文章规范 ### 标题格式 新闻事件 + 工程师视角的判断问题 ### 结构要求 - 开头：第一段说清核心论点 - 结构：论点 → 论证 → 结论 - 配图标记：【配图1】【配图2】【配图3】 - 结尾：有变化的判断表达，避免"吴曦的判断"固化模式 ### 审稿评分 - >= 90分：通过，启动美工 - < 90分：返回修改（最多3次） ### 配图规格 - 数量：4张（封面 + 3张内页） - 尺寸：1376×768（16:9） - 风格：科技感、简洁 ## 使用方法 ### 生成选题 ``` 用户：今天写三篇 ``` 系统会： 1. 启动资料员生成选题 2. 展示选题让用户选择 3. 用户选择后启动撰稿流程 ### 选择选题 ``` 用户：选题1、2、3 ``` 系统会启动对应数量的撰稿任务。 ## 文件结构 ``` mp-publisher/ ├── SKILL.md # 本文件 ├── scripts/ │ ├── workflow-monitor.py # 流程监控 │ └── setup.sh # 环境初始化 ├── templates/ │ └── article.md # 文章模板 └── lib/ ├── image_generator.py # 配图生成 └── draft_publisher.py # 草稿发布 ``` ## 依赖 - OpenClaw subagent 系统 - 微信公众号 API - DMX API（配图生成） - arxiv-watcher 技能（论文搜索） - tavily 技能（新闻搜索） ## 注意事项 1. **IP白名单**：发布前确保机器IP在公众号白名单中 2. **并发控制**：多篇文章可并行处理 3. **状态追踪**：每篇文章末尾有 `<!-- STATUS: xxx -->` 标记 4. **自动发布**：不尝试自动发布，只创建草稿 --- _版本: 1.0.0_ _更新: 2026-04-04_


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: jdl-external-skills/iplat-test-skill (version 1.0.0)

--- name: iplat-test-skill description: 京东国际物流数据查询技能 核心能力：支持物流轨迹追踪、国际运营指标查询、跨境小包体验指标查询三大功能模块。 1.国际物流轨迹追踪技能 功能描述：查询国际物流单号的实时物流轨迹信息。 支持的单号类型： - FS 开头的京东订单号 - JDW 开头的京东运单号 - 客户运单号 - 承运商运单号 核心能力： - 实时查询物流轨迹 2.供应链运营指标查询 功能描述：可按多种维度查询、对比分析供应链运营指标数据 支持查询如下指标： - 海外仓入库下单件数 - 海外仓入库及时率 - 头程在途体积 - 海外仓入库下单sku数 - 海外仓入库体积 - 海外仓实际出库重量 - 发货及时率 - 海外仓入库重量 - 海外仓入库单量 - 海外仓出库及时率 - 退件件量 - 海外仓目标入库件数 - 海外仓库位合格率 - 海外仓高位拣选比例 - 海外仓蓝牙拣选使用率 - 海外仓入库sku数 - ATTSCAN及时率 - 海外仓配Ascan及时率 - 海外仓24H尾单关闭率 - 头程渗透率 - 海外仓机区D类库存占比 - 海外仓实际出库体积 - 海外仓上架准确率 - 海外仓目标出库单量 - 海外仓目标出库件数 - 海外仓实际出库单量 - 海外仓配Dscan及时率 - 海外仓入库下单量 - 海外仓入库件数 - 退件上架及时率 - 海外仓仓容利用率 - 收货准确率 - 海外仓实际出库件数 - 海外仓退货验收单量 - 全程履约率（供应链） - 全程履约率（跨境小包） --- # joy-logistics-skill — 国际物流 Skills 全集 Complete collection of multi Logistics skills for OpenClaw agents. ## Included Skills | Skill | Category | Description | |-------|----------|-------------| | joy-logistics-trace | logistics-trace-query | 国际物流轨迹明细查询 | | joy-logistics-indicator | indicators-query | 国际供应链、跨境小包相关指标查询 | ## Documentation See `README.md` for the complete setup guide (in Chinese).


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: 467718584/eo-ability-code-review (version 1.0.0)

--- name: eo-ability-code-review description: 代码审查能力，调用CodeReviewer专家进行安全、性能、风格全面审查，输出问题列表和改进建议 metadata: openclaw: requires: { bins: [] } install: [] --- # eo-ability-code-review > 代码审查能力 - 调用 CodeReviewer 专家进行安全、性能、风格全面审查 ## 一句话介绍 调用CodeReviewer专家进行代码安全/性能/风格全面审查，输出问题列表和改进建议。 ## 核心功能 - **安全审查**: SQL注入、XSS、CSRF等安全漏洞检测 - **性能审查**: N+1查询、索引缺失、缓存策略等性能问题 - **风格审查**: 代码规范、命名规范、注释完整性 - **综合评分**: 安全/性能/风格/总体四维评分 ## 使用方法 ```bash # 全面审查 /code-review /path/to/code --scope all # 安全审查 /code-review /path/to/code --scope security --rules strict # 性能审查 /code-review /path/to/code --scope performance ``` ## 与EO插件的协同 - 被 eo-workflow-blog 调用（代码质量把关） - 被 eo-workflow-paper 调用（论文逻辑审查） - 被 eo-workflow-security-audit 调用（安全漏洞发现） ## 独立运行模式（有EO vs 无EO） | 模式 | 能力 | |------|------| | **有EO插件** | 141专家库（CodeReviewer专家）、真实漏洞检测、重构建议 | | **无插件（基础）** | LLM代码审查、通用规范检查 | ## 示例 ``` 🔍 代码审查报告 ## 评分 | 维度 | 评分 | 等级 | |------|------|------| | 安全 | 85/100 | B+ | | 性能 | 78/100 | B | | 风格 | 92/100 | A- | | **总体** | **85/100** | **B+** | ## 问题列表 ### 🔴 高优先级 (3) 1. [安全] SQL 注入风险 - user input directly in query 2. [安全] XSS 漏洞 - 未转义用户输入 3. [性能] N+1 查询问题 - loop 内查询数据库 ### 🟡 中优先级 (5) 1. [风格] 变量命名不规范 2. [性能] 缺少索引 ## 建议 - 使用参数化查询防止 SQL 注入 - 添加输入验证和转义 - 使用 ORM 的 eager loading ``` ## Interface ### Input ```typescript interface CodeReviewInput { codePath: string // 代码路径 scope?: 'security' | 'performance' | 'style' | 'all' rules?: 'strict' | 'normal' | 'loose' language?: string // 编程语言 } ``` ### Output ```typescript interface CodeReviewOutput { scores: { security: number // 0-100 performance: number // 0-100 style: number // 0-100 overall: number // 0-100 } issues: CodeIssue[] suggestions: string[] summary: string } ``` --- *🦞⚙️ 钢铁龙虾军团*


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

--- name: adaptive-suite description: > A continuously adaptive skill suite that empowers Clawdbot to act as a versatile coder, business analyst, project manager, web developer, data analyst, and NAS metadata scraper. It intelligently discovers free resources, adapts to user context, and ensures reliable, proven guidance across multiple domains. homepage: https://docs.molt.bot/tools/skills user-invocable: true metadata: moltbot: requires: bins: ["python", "node", "curl", "sqlite3"] env: ["FREE_API_KEYS"] --- # Instructions ## Free Resource Discovery - Continuously search for **free online tools, APIs, and resources**. - Always prioritize open-source and cost-free solutions. - Suggest legal alternatives when paid tools are encountered. ## Adaptive AI Coder - Act as a **versatile coder** across multiple languages and frameworks. - Continuously adapt to user coding style and project context. - Recommend reliable libraries and best practices. ## Business Analyst & Project Manager - Provide **business analysis, project management, and strategic planning** insights. - Adapt recommendations to evolving project goals. - Ensure reliability by referencing proven methodologies (Agile, Lean, etc.). ## Web & Data Developer - Assist with **web development** tasks (HTML, CSS, JS). - Provide **data analysis workflows** and **database schema design**. - Continuously adapt to project requirements. ## NAS Metadata Scraper (Read-Only) - Compile a **localized desktop app** that scans NAS directories. - Collect **file names, metadata, and structure** in read-only mode. - Never modify or delete NAS content. ## Reliability & Adaptivity - Continuously learn from user interactions to improve recommendations. - Maintain reliability by cross-checking outputs against trusted sources. - Always adapt to changing contexts and requirements.


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: suspicious | SkillSpector: clean (LOW)
Skill: aisadocs/tavily-extract-aisa (version 1.0.0)

--- name: tavily-extract description: "Extract clean article content from URLs through the AISA Tavily extract endpoint. Use when: the user already has URLs and needs readable page content for summarization, comparison, or evidence review." author: aisa version: "1.0.0" license: Apache-2.0 user-invocable: true primaryEnv: AISA_API_KEY requires: env: - AISA_API_KEY bins: - python3 metadata: openclaw: primaryEnv: AISA_API_KEY requires: env: - AISA_API_KEY bins: - python3 --- # Tavily Extract ## When to Use - Extract clean article content from URLs through the AISA Tavily extract endpoint. Use when: the user already has URLs and needs readable page content for summarization, comparison, or evidence review. ## When NOT to Use - Do not use this skill for browser-cookie extraction, passwords, Keychain access, or other local sensitive credential access. - Prefer a different skill when the user request is outside this skill's domain. ## Capabilities - Turn raw URLs into clean extractable text for downstream analysis. ## Quick Start ```bash export AISA_API_KEY="your-key" ``` ## Primary Runtime Use the bundled Python client as the canonical ClawHub runtime path: ```bash python3 scripts/search_client.py ``` ## Example Queries - Extract these product announcement URLs and summarize the differences. ## Notes - Best paired with search or follow-up synthesis.


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