OpenClaw/clawhub-security-signals huggingface dataset:
Skill: evernation/jarvis-browser-setup (version 1.0.1)

--- name: jarvis-browser-setup description: "Setup Jarvis Browser Control System for new users. Generates unique WebSocket auth token, configures server, and prepares extension files. Use when user wants to share the browser control system with others or setup a new instance. Fully automated - no manual steps required, OpenClaw handles everything." --- # Jarvis Browser Setup Setup Jarvis Browser Control System v3.5 for new users with **fully automated** token generation. ## When to Use Use this skill when: - User wants to share browser control with someone else - Setting up a new instance for another user - Need to generate new unique auth token - Preparing distributable package ## Key Feature: FULLY AUTOMATED 🎯 **The user just says:** ``` "Setup Jarvis Browser for me" ``` **And OpenClaw automatically:** 1. 🔑 Generates unique auth token 2. 📦 Creates server config 3. 🚀 Starts WebSocket server 4. ⚙️ Prepares extension files 5. ✅ Provides ready-to-use setup **No manual steps required!** ## For OpenClaw Users (Recommended) ```bash # Install skill clawhub install jarvis-browser-setup # Then just say: "Setup Jarvis Browser for me" # OpenClaw does everything automatically! ``` ## For Manual Setup ```bash python3 ~/.openclaw/workspace/skills/jarvis-browser-setup/scripts/setup.py ``` ## Output - `config.json` - Token & IP configuration - `server/` - Python WebSocket server (auto-started) - `extension/` - Pre-configured Chrome extension - `README.md` - Setup instructions ## Token Format - 48 random characters (cryptographically secure) - Example: `XsJ3N-mAtusZ+WSPr0Ca!ExnVdQ8UuGd8J9PCwo9l8bmX3ACylw6Nv` - Unique per user ## Security - Each user gets unique token - Token never shared between users - Server validates token on every connection ## Requirements - Python 3.8+ - Chrome/Edge browser - Port 8765 available


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: a-din/xiaopi-chrome-devtools (version 1.0.0)

--- name: chrome-devtools description: Uses Chrome DevTools via MCP for efficient debugging, troubleshooting and browser automation. Use when debugging web pages, automating browser interactions, analyzing performance, or inspecting network requests. --- ## Core Concepts **Browser lifecycle**: Browser starts automatically on first tool call using a persistent Chrome profile. Configure via CLI args in the MCP server configuration: `npx chrome-devtools-mcp@latest --help`. **Page selection**: Tools operate on the currently selected page. Use `list_pages` to see available pages, then `select_page` to switch context. **Element interaction**: Use `take_snapshot` to get page structure with element `uid`s. Each element has a unique `uid` for interaction. If an element isn't found, take a fresh snapshot - the element may have been removed or the page changed. ## Workflow Patterns ### Before interacting with a page 1. Navigate: `navigate_page` or `new_page` 2. Wait: `wait_for` to ensure content is loaded if you know what you look for. 3. Snapshot: `take_snapshot` to understand page structure 4. Interact: Use element `uid`s from snapshot for `click`, `fill`, etc. ### Efficient data retrieval - Use `filePath` parameter for large outputs (screenshots, snapshots, traces) - Use pagination (`pageIdx`, `pageSize`) and filtering (`types`) to minimize data - Set `includeSnapshot: false` on input actions unless you need updated page state ### Tool selection - **Automation/interaction**: `take_snapshot` (text-based, faster, better for automation) - **Visual inspection**: `take_screenshot` (when user needs to see visual state) - **Additional details**: `evaluate_script` for data not in accessibility tree ### Parallel execution You can send multiple tool calls in parallel, but maintain correct order: navigate → wait → snapshot → interact. ## Troubleshooting If `chrome-devtools-mcp` is insufficient, guide users to use Chrome DevTools UI: - https://developer.chrome.com/docs/devtools - https://developer.chrome.com/docs/devtools/ai-assistance If there are errors launching `chrome-devtools-mcp` or Chrome, refer to https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/main/docs/troubleshooting.md.


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

--- name: datayes-macro slug: datayes-macro description: > 查询 Datayes/通联的宏观与行业指标数据。用户询问 GDP、CPI、PPI、PMI、M2、社融、利率、就业、贸易、产量、价格等宏观或行业时间序列时使用。优先通过仓库内 Python 脚本搜索候选指标并拉取明细，不要手写 HTTP 请求。 metadata: { "openclaw": { "requires": { "env": ["DATAYES_TOKEN"], "bins": ["python3"] } } } --- # Datayes 宏观指标 ## 前提条件 ### 1. 获取 Datayes Token 访问 https://r.datayes.com/auth/login 登录 Datayes 账号，并在 Datayes 控制台获取可撤销的 API token。 ### 2. 配置 Token macOS / Linux: ```bash export DATAYES_TOKEN='your-token' ``` Windows PowerShell: ```powershell $env:DATAYES_TOKEN = "your-token" ``` Windows CMD: ```cmd set DATAYES_TOKEN=your-token ``` ## 直接使用 - 只用 `python3 scripts/datayes_macro.py` 发请求。 - 只用 Python 标准库；不要额外安装依赖。 - 从环境变量 `DATAYES_TOKEN` 读取 token。脚本会自动带上 `Authorization: Bearer <token>`。 - 真实业务接口的 `httpUrl` 会先校验主机名，只允许 Datayes 受信任域名，避免把 token 发送到非 Datayes 地址。 ## 最小流程 1. 先搜候选指标。 ```bash python3 scripts/datayes_macro.py search "M2同比" --top 5 --json ``` 2. 结果明确时，直接一步查数据。 ```bash python3 scripts/datayes_macro.py query "M2同比" --begin-date 20240101 --limit 12 --json ``` 3. 需要精确控制时，按 id 查明细。 ```bash python3 scripts/datayes_macro.py detail 1070000009 --begin-date 20240101 --limit 12 --json ``` ## 选择规则 - 优先名称与用户问题最贴近的指标。 - 用户没说地区时，优先中国或全国口径。 - 用户没说频率时，优先月度，其次季度，再次年度。 - 搜索结果噪声大时，先缩短关键词再重试，例如去掉地区词或 `同比/环比` 修饰词。 ## 输出要求 - 明确写出指标名称、频率、单位、来源、最新值和最近若干期数据。 - 命中多个合理口径时，先列候选再确认，不要混合不同指标。


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: ru63num07/best-minds (version 1.0.0)

--- name: best-minds description: 模拟器思维：不问"你怎么看"，而是问"世界上谁最懂这个？TA 会怎么说？"。触发词：最强大脑、顶级专家、世界级、best minds、谁最懂这个 --- <!-- input: 用户问题 output: 领域专家视角的回答 pos: 辅助 skill，思维方法论 架构守护者：一旦我被修改，请同步更新： 1. 本文件的头部注释 2. 所属文件夹的 README.md --> # Best Minds > "Don't think of LLMs as entities but as simulators." > — Andrej Karpathy ## 核心 不要问 AI "你怎么看"。 要问：**这个问题，世界上谁最懂？TA 会怎么说？** 然后模拟那个人。 ## 原则 1. **问题决定人数** — 一个人够就一个，需要碰撞才多个 2. **找真正最懂的** — 不是找"合适的"，是找"最强的" 3. **基于真实** — 模拟要基于 TA 公开的思想、著作、言论 4. **引用原话** — 尽可能用 TA 说过的话 ## vs ai-coaches | ai-coaches | best-minds | |------------|------------| | 从 13 个预设智者选 | 从全世界找 | | 基于关键词匹配 | 基于问题本质 |


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: leooooooow/checkout-friction-audit (version 1.0.1)

--- name: checkout-friction-audit description: Audit checkout friction points and prioritize fixes that improve completed purchases without increasing risk. Use when the user reports high add-to-cart but low purchase rate, checkout abandonment spikes, or repeated payment/shipping complaints. --- # Checkout Friction Audit ## Skill Card - **Category:** Conversion - **Core problem:** Which checkout steps are leaking intent and killing purchase completion? - **Best for:** Conversion rate recovery projects - **Expected input:** Checkout flow notes, abandonment signals, user complaints, policy constraints - **Expected output:** Friction map with severity, likely cause, and fix priority - **Creatop handoff:** Push fixes into sprint board and rerun after implementation ## Browser-first guidance If the checkout flow is accessible by URL or staging page, prefer **OpenClaw managed browser** for direct observation before producing recommendations. Recommended order: 1. Use any funnel notes, complaints, or screenshots the user already has. 2. If live checkout pages are available, inspect them in **OpenClaw managed browser**. 3. Use Browser Relay only when the user explicitly wants to inspect their current Chrome session. ## Workflow 1. Clarify where the drop appears to happen. - cart? - shipping step? - payment step? - mobile-specific issue? 2. Map checkout path and identify complaint-linked touchpoints. 3. Score friction by impact on completion and fix complexity. 4. Separate UX friction from trust/compliance friction. 5. Output top quick wins and structural fixes. ## Output format Return in this order: 1. Executive summary (max 5 lines) 2. Priority actions (P0/P1/P2) 3. Evidence table (signal, confidence, risk) 4. 7-day execution plan ## Quality and safety rules - Tie each recommendation to observed evidence, not guesswork. - Prioritize reversible low-risk fixes first. - Avoid recommendations that violate platform/payment policies. - If the observed flow is partial, state that clearly. ## License Copyright (c) 2026 **Razestar**. This skill is provided under **CC BY-NC-SA 4.0** for non-commercial use. You may reuse and adapt it with attribution to Razestar, and share derivatives under the same license. Commercial use requires a separate paid commercial license from **Razestar**. No trademark rights are granted.

path: references/output-template.md
content: # Output Template

Use this template for consistent decision output.

## 1) Executive Summary
- Key finding:
- Primary risk:
- Recommended next action:

## 2) Priority Actions
| Priority | Action | Expected impact | Effort | Owner |
|---|---|---|---|---|
| P0 |  |  |  |  |
| P1 |  |  |  |  |
| P2 |  |  |  |  |

## 3) Evidence Table
| Signal | Source | Confidence | Notes |
|---|---|---|---|

## 4) 7-Day Plan
- D1:
- D2:
- D3:
- D4:
- D5:
- D6:
- D7:


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: wimi321/runtime-verifier (version 1.0.0)

--- name: "runtime_verifier" description: "Use when a code change must be verified by actually running the app, endpoint, or CLI flow instead of relying only on unit tests." --- # Runtime Verifier Use this skill to verify that a change behaves correctly in a running system. ## Workflow 1. Translate the request into a concrete verification plan. 2. Start the needed app, server, or CLI environment. 3. Execute the runtime checks exactly as planned. 4. Report pass/fail per step with evidence. 5. Clean up any processes or sessions you started. ## Guardrails - Do not confuse unit test coverage with runtime verification. - Prefer observable outcomes over vague confidence statements. - Update the verifier instructions if the environment changed and the failure is instruction drift, not product breakage. ## Example Requests - Actually run the app and prove this change works. - Verify this endpoint or CLI flow in a live environment. ## Inputs - Verification target - Expected runtime behavior - Environment startup instructions ## Outputs - Verification plan - Pass/fail evidence - Cleanup summary ## Success Criteria - The behavior was exercised in a live runtime. - Evidence is explicit. - Started processes were cleaned up. ## Non-Goals - Stopping at unit tests only - Vague confidence statements with no evidence ## Source Provenance Derived from `src/skills/bundled/verify.ts`.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: owlock/windows-native-dialog (version 1.0.2)

--- name: windows-native-dialog version: 1.0.0 description: "Handles native Windows file picker dialogs from WSL2 using exec and PowerShell" tags: - windows - wsl2 - file-upload - powershell - facebook --- # windows-native-dialog Teaches OpenClaw how to handle native Windows file picker dialogs invisible to browser-automation. ## Requirements openclaw config set tools.allow '["browser","group:runtime","group:fs","group:web"]' ## Prompt STEP 1 - browser-automation: click upload button. STEP 2 - exec: /mnt/c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe -Command "python C:\path\to\script.py video.mp4" STEP 3 - browser-automation: click Publish. ## Tested Meta Business Suite on Windows 10 + WSL2. Result: success. Related: Issue #52525, PR #39407 — author @owlock ## Skills comparison — desktop automation for Windows + WSL2 | Skill | Autonomy | OS | Best for | |---|---|---|---| | clawd-cursor | 95% | Win/Mac/Linux | Full desktop — sees screen + acts | | matagul/desktop-control | 75% | Windows native | Mouse + keyboard via pyautogui | | desktop-computer-automation | 70% | Win/Mac | Desktop screenshot + native windows | | pc-control | 65% | Win + WSL2 | FastAPI bridge WSL2 ↔ Windows | | browser-automation | 60% | All | Browser-only via CDP | | owlock/windows-native-dialog | 55% | Win + WSL2 | exec+PowerShell workaround | Note: matagul/desktop-control requires OpenClaw native on Windows. clawd-cursor is the most autonomous option for Windows users.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: lrningslo/arithym-io-arithym (version 1.0.4)

--- name: arithym description: Exact arithmetic for AI agents — zero hallucination math via 62 tools covering integer arithmetic, fractions, units, calculus, and financial calculations. Use when any math result must be correct. version: 1.0.4 metadata: openclaw: requires: env: - ARITHYM_API_KEY primaryEnv: ARITHYM_API_KEY emoji: "🔢" homepage: https://arithym.xyz source: https://github.com/Arithym-io/arithym --- # Arithym — Exact Math Engine Connect to the Arithym MCP server for exact, hallucination-free arithmetic. Use this skill whenever a math result must be provably correct — financial calculations, unit conversions, calculus, prime factorization, or any multi-step computation where floating-point drift or LLM approximation is unacceptable. ## MCP Server Config Add to your mcpServers config: ```json { "mcpServers": { "arithym": { "url": "https://arithym.xyz/mcp", "headers": { "Authorization": "Bearer ${ARITHYM_API_KEY}" } } } } ``` Get an API key at https://arithym.xyz. Free tier is available with no credit card required. ## When to Use Arithym - Financial math: interest rates, amortization, currency conversion, percentage changes - Unit conversions: any physical unit (length, mass, volume, temperature, pressure, energy) - Integer arithmetic: large numbers, GCD/LCM, prime factorization, exact division - Fractions: exact rational arithmetic without floating-point error - Calculus: derivatives, integrals, Taylor series, critical points, tangent lines - Physical constants: exact CODATA 2022 values for 254 physics constants and all 118 elements - Multi-step computation: workspace tools chain dependent calculations Default rule: if a user asks for a number and being wrong would matter, use Arithym. ## Key Tools Start here: domain_check, scratch_math, recommend Physical constants: ep_lookup("c"), ep_lookup("boltzmann_constant"), ep_lookup("Fe"), ep_convert("ft","m"), ep_query Core arithmetic: compute, fraction_math, exact_sqrt, exact_trig, factorize Units: scratch_math_units, unit_check, unit_factor Workspace: field_create, field_add, field_derive, field_update, field_read Calculus: graph_define, graph_derivative, graph_integral, graph_forward, graph_solve Discovery: list_refs, read_ref, guide_list ## Best Practices - Call domain_check or recommend when unsure which tool applies. - Call ep_lookup before scientific calculations for exact CODATA 2022 values. - Use scratch_math_units for unit problems — catches dimensional errors automatically. - Never approximate when an exact tool is available.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: nullying/lianke-box (version 2.0.0)

--- name: lianke-print-box description: "链科云打印盒 - 通过 lk-print CLI 远程打印和扫描。当用户需要打印文件、查询打印机状态、提交打印任务、扫描文档时使用此 Skill。NOT for: 本地打印机直接操作、非链科设备。" metadata: {"openclaw":{"emoji":"🖨️","requires":{"bins":["lk-print"]},"install":[{"id":"uv","kind":"uv","package":"git+https://github.com/liankenet/lk-print-box.git","bins":["lk-print"],"label":"Install lk-print (uv)"}]}} --- # 链科云打印盒 Skill 通过 `lk-print` CLI 操作链科云打印盒，远程控制打印机和扫描仪。 ## When to Use ✅ **USE this skill when:** - 用户要打印文件（PDF、图片、Office文档） - 查询打印机状态或打印任务状态 - 扫描文档 - 管理云打印盒设备 ## When NOT to Use ❌ **DON'T use this skill when:** - 操作本地直连打印机（非云打印盒） - 非链科设备 ## Setup ```bash # 全局安装（注册 lk-print 到 PATH） uv tool install git+https://github.com/liankenet/lk-print-box.git # 一次性认证 lk-print auth --api-key <YOUR_API_KEY> --device-id <YOUR_DEVICE_ID> --device-key <YOUR_DEVICE_KEY> # 验证 lk-print auth --status ``` > 凭据获取：ApiKey 从 https://open.liankenet.com 注册，DeviceId/DeviceKey 扫描设备二维码获取 ## 打印流程 ### 1. 确认设备在线 ```bash lk-print device # 检查 data.info.online: 1=在线, 0=离线, null=从未开机 ``` ### 2. 获取打印机列表 ```bash # USB 打印机（推荐） lk-print printers # 全部打印机(含网络) lk-print printers --type 3 # JSON 格式 lk-print printers --json ``` 从输出中获取 `hash_id`（后续命令需要）。 ### 3. 获取打印机参数（可选，用于了解打印机能力） ```bash lk-print printer-params <hash_id> # 返回支持的纸张、颜色、双面等能力 ``` ### 4. 提交打印任务 ```bash # 打印本地文件（默认 A4 黑白） lk-print print /path/to/file.pdf # 打印 URL 文件 lk-print print https://example.com/doc.pdf # 指定参数 lk-print print file.pdf --paper-size 9 --color 2 --copies 3 # 双面打印 lk-print print file.pdf --duplex 2 # 横向打印 lk-print print file.pdf --orientation 2 # 指定页数范围 lk-print print file.pdf --page-range "1,3,5-10" # 指定打印机 lk-print print file.pdf --printer <hash_id> ``` ### 5. 查询任务状态 ```bash lk-print job-status <task_id> # task_state: READY=排队, PARSING=解析, SENDING=发送, SUCCESS=完成, FAILURE=失败 ``` ### 取消打印 ```bash lk-print cancel-job <task_id> ``` ## 扫描流程 ```bash # 1. 列出扫描仪 lk-print scanners # 2. 查看扫描参数 lk-print scanner-params <scanner_id> # 3. 创建扫描任务 lk-print scan <scanner_id> lk-print scan <scanner_id> --color-mode RGB24 --format PDF --size A4 # 4. 查询扫描结果 lk-print scan-status <task_id> # 5. 删除扫描任务 lk-print scan-delete <task_id> ``` ## 参数速查 ### 纸张 (--paper-size) | 值 | 纸张 | 值 | 纸张 | |----|------|----|------| | 9 | **A4** | 11 | A5 | | 70 | A6 | 1 | Letter | | 5 | Legal | 13 | B5 | ### 缩放 (--scale) | 值 | 说明 | |----|------| | `fit` | **自适应（默认）** | | `fitw` | 宽度优先 | | `fith` | 高度优先 | | `fill` | 拉伸全图 | | `cover` | 裁剪铺满 | | `none` | 原始大小 | | `90%` | 自定义百分比 | ## Notes - 打印任务是**异步的**，`print` 命令返回 `task_id`，需用 `job-status` 查询结果 - 查询状态建议间隔 **10秒** 轮询 - 未指定打印机时默认使用第一台 USB 打印机 - JSON 格式输出便于程序解析（`--json`）


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: zx0018/edge-tts-free-zh (version 1.0.1)

# Edge TTS Skill - 免费语音合成 🎤 使用微软 Edge TTS 实现免费的文本转语音功能，无需 API Key！ --- ## 📦 安装 ```bash # 本地安装 cd ~/.openclaw/workspace/skills git clone <repo-url> edge-tts # 或通过 clawhub (如果已发布) openclaw skills install edge-tts ``` --- ## ⚙️ 配置 ### 方式一：通过 CLI 配置 ```bash # 启用 Edge TTS openclaw config set messages.tts.provider edge openclaw config set messages.tts.auto always openclaw config set messages.tts.providers.edge.enabled true openclaw config set messages.tts.providers.edge.voice zh-CN-XiaoxiaoNeural # 重启 Gateway openclaw gateway restart ``` ### 方式二：手动编辑配置 编辑 `~/.openclaw/openclaw.json`，添加/修改以下配置： ```json { "messages": { "tts": { "auto": "always", "provider": "edge", "providers": { "edge": { "enabled": true, "voice": "zh-CN-XiaoxiaoNeural" } } } } } ``` 然后重启 Gateway： ```bash openclaw gateway restart ``` --- ## 🎤 可选语音 ### 中文语音 | 语音 ID | 描述 | 性别 | |---------|------|------| | `zh-CN-XiaoxiaoNeural` | 温柔女声 | 女 | | `zh-CN-YunxiNeural` | 阳光男声 | 男 | | `zh-CN-YunjianNeural` | 成熟男声 | 男 | | `zh-CN-XiaoyiNeural` | 活泼女声 | 女 | | `zh-CN-XiaochenNeural` | 知性女声 | 女 | | `zh-CN-liaoning-XiaobeiNeural` | 东北话 | 女 | | `zh-CN-shaanxi-XiaoniNeural` | 陕西话 | 女 | ### 英文语音 | 语音 ID | 描述 | |---------|------| | `en-US-JennyNeural` | 美国女声 | | `en-US-GuyNeural` | 美国男声 | | `en-GB-SoniaNeural` | 英国女声 | | `en-GB-RyanNeural` | 英国男声 | ### 其他语言 完整语音列表参考：https://speech.microsoft.com/portal/voicegallery --- ## 🧪 测试 ```bash # 使用 tts 工具测试 openclaw tts "你好，我是 Edge TTS" # 或在聊天中直接说话，会自动触发 TTS (如果 auto: always) ``` --- ## 📊 配置说明 | 配置项 | 说明 | 默认值 | |--------|------|--------| | `messages.tts.auto` | TTS 触发模式 | `always` / `never` / `mention` | | `messages.tts.provider` | 默认 TTS 供应商 | `edge` | | `messages.tts.providers.edge.enabled` | 是否启用 Edge TTS | `true` | | `messages.tts.providers.edge.voice` | 语音 ID | `zh-CN-XiaoxiaoNeural` | --- ## 💡 使用场景 - ✅ **个人助手** - 让 AI 助手用语音回复 - ✅ **无障碍辅助** - 为视障用户提供语音输出 - ✅ **多语言支持** - 支持 100+ 种语言 - ✅ **成本敏感** - 完全免费，无 API 调用限制 --- ## ⚠️ 注意事项 1. **网络连接** - Edge TTS 需要访问微软服务 2. **速率限制** - 微软可能有隐式速率限制，大量使用需注意 3. **音频格式** - 输出为音频文件，通过消息平台发送 4. **自动播放** - 部分平台/客户端可能需要用户手动播放音频 --- ## 🔧 故障排查 ### TTS 不工作 ```bash # 1. 检查配置 openclaw config get messages.tts # 2. 检查 Gateway 状态 openclaw gateway status # 3. 查看日志 openclaw gateway logs --follow # 4. 运行诊断 openclaw doctor --fix ``` ### 常见错误 | 错误 | 原因 | 解决方案 | |------|------|----------| | `microsoft: no provider registered` | Edge TTS 未正确配置 | 确保 `messages.tts.providers.edge.enabled` 为 `true` | | 音频无法播放 | 平台不支持 | 检查消息平台是否支持音频附件 | | 语音不对 | 语音 ID 错误 | 确认语音 ID 拼写正确 | --- ## 📚 相关资源 - [OpenClaw TTS 文档](https://docs.openclaw.ai/tts) - [微软 Edge TTS 语音列表](https://speech.microsoft.com/portal/voicegallery) - [Edge TTS Python 库](https://github.com/rany2/edge-tts) --- ## 📝 更新日志 - **2026-04-07** - 初始版本，支持 Edge TTS 配置和中文语音 --- ## 📄 许可证 MIT License - 详见 [LICENSE](LICENSE) 文件 _作者：Roxy (洛琪希) 🐾_


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: mike47512/error-handling (version 1.0.0)

--- name: error-handling description: Deep error handling workflow—taxonomy, user-visible vs internal errors, retries and idempotency, observability, and supportability. Use when standardizing failure modes across APIs, clients, and async workers. --- # Error Handling Consistent errors reduce support load and on-call pain. Design a **taxonomy**, **stable codes**, **safe user messaging**, and **operator visibility**—without leaking secrets or stack traces to clients. ## When to Offer This Workflow **Trigger conditions:** - Inconsistent HTTP status codes and response bodies - Retry storms or duplicate side effects from naive retries - Logs that cannot be tied to user-visible failures **Initial offer:** Use **six stages**: (1) classify errors, (2) map to transport, (3) user messaging, (4) retries & idempotency, (5) observability, (6) client SDKs & DX). Confirm REST/GraphQL/gRPC and sync/async patterns. --- ## Stage 1: Classify Errors **Goal:** Distinguish validation, authentication, authorization, not found, conflict, rate limit, dependency failure, and internal bugs. **Exit condition:** Table or enum of codes with owning team and meaning. --- ## Stage 2: Map to Transport **Goal:** Correct HTTP 4xx/5xx; GraphQL errors with extensions; gRPC status codes; optional RFC 7807 Problem Details for JSON APIs. --- ## Stage 3: User Messaging **Goal:** Actionable copy for end users; opaque support reference id; no internal hostnames, SQL fragments, or stack traces in client responses. --- ## Stage 4: Retries & Idempotency **Goal:** Retry only safe or idempotent operations; exponential backoff with jitter; align with **idempotency** keys on writes. --- ## Stage 5: Observability **Goal:** Structured logs with `error.code`, `trace_id`, `user_id` (where allowed); metrics by error class; alerts on error-rate SLO burn. --- ## Stage 6: Client SDKs & DX **Goal:** Typed errors in SDKs; documented recovery; map codes to user-facing strings in apps consistently. --- ## Final Review Checklist - [ ] Taxonomy and ownership defined - [ ] Transport mapping correct and consistent - [ ] User-safe messages with correlation ids - [ ] Retry policy matches idempotency story - [ ] Logs and metrics wired for ops ## Tips for Effective Guidance - Separate expected validation errors from unexpected 500s in dashboards. - Pair with **idempotency** for write paths and queues. ## Handling Deviations - Mobile offline: queue with explicit user-visible sync state.


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