OpenClaw/clawhub-security-signals huggingface dataset:
Skill: dhrxy/ppt-task-orchestrator (version 1.0.0)

--- name: ppt-task-orchestrator description: "Production orchestration for pptx page task extraction and batch image delivery by reusing main-image-editor + psd-automator." command-dispatch: tool command-tool: ppt_task_orchestrator command-arg-mode: raw metadata: openclaw: userInvocable: true commandDispatch: tool commandTool: ppt_task_orchestrator commandArgMode: raw --- # ppt-task-orchestrator Orchestration layer for customer PPT workflows: 1. Parse `pptx` into per-page tasks (structured fields first). 2. Fallback to OCR for pages missing required fields. 3. Convert page tasks into `main-image-editor` batch tasks. 4. Execute with transaction rollback by reusing `main-image-editor` and `psd-automator`. 5. Aggregate delivery artifacts: result directory + `all-images.zip`. ## Usage ```bash node skills/ppt-task-orchestrator/scripts/run-ppt-task-orchestrator.js \ --request skills/ppt-task-orchestrator/examples/request.sample.json \ --index ~/.openclaw/psd-index.json ``` Dry-run: ```bash node skills/ppt-task-orchestrator/scripts/run-ppt-task-orchestrator.js \ --request skills/ppt-task-orchestrator/examples/request.sample.json \ --dry-run ``` ## Request payload `request` JSON supports: - `pptPath`: absolute or `~/` path to `.pptx` file (required) - `requestId`: optional tracking id - `confidenceThreshold`: low-confidence gate threshold (default `0.8`) - `fallbackPolicy`: `structured_only` or `structured_first_with_ocr` (default) - `execution`: `dryRun`, `force`, `indexPath`, `bundleZip` - `delivery`: `outputDir`, `zipName`, `copySelectedOnly` ## Failure policy - Default policy is `rollback_all` inherited from `main-image-editor`. - Any single PSD failure restores all touched PSD files from transaction backups. - Delivery artifacts are produced only for success/dry-run outputs.


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

--- name: statistics-interpreter description: 统计结果解读助手。支持t检验、方差分析、卡方、相关、回归、中介效应、调节效应、信度分析等。可直接粘贴SPSS输出，自动生成学术化解读。 version: 1.0.0 author: jeoyee language: r tags: statistics, SPSS, data-analysis, research, psychology --- # Statistics Interpreter A skill to interpret statistical results for academic writing. ## Supported Methods - t-test, ANOVA, Chi-square, Correlation, Regression - Mediation analysis, Moderation analysis - Reliability (Cronbach's α) - Non-parametric tests ## Usage 1. Run: `source("scripts/statistics_interpreter.R")` 2. Select mode 1 3. Paste your statistical results 4. Type `END` on a new line 5. Get interpretation ## Examples **Input:**


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: ollieb89/new-openclaw-docs (version 1.1.0)

--- name: new-openclaw-docs description: Navigate and use OpenClaw documentation efficiently with cached doc fetch/search tooling, sitemap/category routing, and config snippet lookup. Use when answering OpenClaw setup/config/troubleshooting questions, checking docs updates, or extracting concrete configuration examples from docs. --- # OpenClaw Docs Use this skill to answer OpenClaw documentation questions with reproducible script-assisted evidence. ## Quick workflow 1. Route by intent (setup, config, troubleshooting, automation, platform). 2. Search or fetch docs via scripts. 3. Pull exact config patterns from snippets/docs. 4. Cite source URL/path in the final answer. ## Use bundled resources - Intent routing and category map: `references/routing.md` - Script usage and operational notes: `references/operations.md` - Config patterns: `snippets/common-configs.md` - Script preflight checks: `scripts/check_env.sh` ## Rules - Prefer `search.sh` and `fetch-doc.sh` before freeform guessing. - Keep answers anchored to specific doc paths. - For uncertain or stale cache cases, refresh or state cache limitations. - Provide concrete configuration examples when available. ## Commands ```bash # Validate local script requirements bash workspace/skills/new-openclaw-docs/scripts/check_env.sh # Discover likely paths bash workspace/skills/new-openclaw-docs/scripts/sitemap.sh bash workspace/skills/new-openclaw-docs/scripts/search.sh discord mention # Fetch a document bash workspace/skills/new-openclaw-docs/scripts/fetch-doc.sh providers/discord # Cache and update checks bash workspace/skills/new-openclaw-docs/scripts/cache.sh status bash workspace/skills/new-openclaw-docs/scripts/recent.sh 7 bash workspace/skills/new-openclaw-docs/scripts/track-changes.sh since 2026-02-01 ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: xiaobingan/openclaw-xiaohongshu (version 1.0.0)

--- name: xiaohongshu description: 个人小红书内容与账号管理技能。提供发布笔记、编辑笔记、获取数据、账号管理等核心功能。适用于发布图文/视频笔记、管理评论互动、查询数据分析、管理账号信息、批量处理小红书内容等场景。 slug: openclaw-xiaohongshu --- # Xiaohongshu (小红书) ## 概述 本技能提供小红书账号与内容管理的完整能力,包括笔记发布、内容编辑、数据统计、互动管理和账号配置。适用于内容创作者、运营人员或需要管理小红书账号的场景。 ## 核心功能 ### 1. 笔记发布 - **发布图文笔记**:上传 1-9 张图片,添加标题和正文 - **发布视频笔记**:上传视频文件,添加标题、正文和标签 - **批量发布**:从文件或模板批量创建笔记 - **发布草稿**:先保存为草稿,手动审核后发布 ### 2. 笔记管理 - **编辑笔记**:修改已发布或草稿笔记的内容 - **删除笔记**:按 ID 批量清理笔记 - **笔记状态**:查看笔记是发布、草稿还是审核中 - **置顶/加精**:管理高质量内容的优先级 ### 3. 数据与分析 - **个人笔记列表**:获取已发布、草稿、删除的笔记 - **单篇阅读数据**:浏览量、点赞量、收藏量、评论量 - **粉丝增长**:查看粉丝增长趋势 - **互动详情**:评论、点赞、收藏的详细数据 ### 4. 互动管理 - **评论管理**:查看、回复、删除评论 - **点赞管理**:查看评论用户的点赞情况 - **私信管理**:查看和回复私信 - **黑名单管理**:管理禁言用户列表 ### 5. 账号配置 - **个人资料**:修改昵称、头像、简介、背景图 - **账号信息**:获取粉丝数、获赞数等基础统计 - **标签管理**:添加/删除个人标签(如"时尚博主"、"美食达人"等) - **关联账号**:绑定其他平台的账号(微信、微博等) ## 使用场景 ### 何时使用此技能? 1. **发布内容**:当需要发布小红书笔记时 - 单个笔记发布 - 批量发布系列内容 - 发布带标签和分类的笔记 2. **内容管理**:当需要管理已发布内容时 - 检查某篇笔记的阅读/互动数据 - 编辑笔记中的文字或图片 - 清理过时或低质量内容 3. **数据分析**:当需要查看运营效果时 - 查看单篇或全部笔记的数据 - 获取粉丝增长趋势 - 分析用户互动偏好 4. **互动维护**:当需要回复用户时 - 批量回复评论 - 处理私信消息 - 管理黑名单用户 5. **账号准备**:当需要配置账号时 - 更新头像和简介 - 添加个人标签 - 关联其他平台 ## 快捷参考 ### 发布图片笔记 ``` 发布包含图片的笔记,包含标题、正文和标签。 - 图片:1-9 张(JPG/PNG,每张图片最大 10MB) - 标题:最多 20 个字符 - 正文:最多 2000 个字符 - 分类:可选(生活、时尚、美食等) ``` ### 获取笔记数据 ``` 获取指定笔记的阅读、点赞、收藏数据。 参数:笔记 ID(必需) 输出:阅读次数、点赞数、收藏数、评论数 ``` ### 管理评论 ``` 查看、回复或删除笔记的评论。 - 查看:列出最近 10 条评论 - 回复:指定评论 ID 进行回复 - 删除:按评论 ID 批量清理 ``` ## 资源说明 ### scripts/ - `publish_note.py` - 发布图文/视频笔记 ### references/ - `API.md` - 小红书 API 参考文档 - `content_guidelines.md` - 笔记内容规范 ### assets/ - `template.html` - 笔记发布模板 - `avatar_example/` - 头像示例文件 --- **注意**:本技能需要有效的小红书账号认证信息才能执行操作。请确保已配置好相关的认证凭据。


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: fslong520/ojimport (version 1.8.1)

--- name: 搬题姬 description: 从 OJ 平台搬运题目，生成标准化题目文件包；也可根据用户提供的题目仅生成测试数据 allowed-tools: - Read - Write - Edit - AskUserQuestion - BrowserUse metadata: slug: ojimport trigger: OJ题目、搬题、算法题搬运、AtCoder、Codeforces、GESP、题目导入、测试点、生成数据、测试数据 --- ## Keywords OJ题目、搬题、算法题搬运、AtCoder、Codeforces、GESP、测试点、测试数据 ## Summary 自OJ搬题，生标准化题包（题面+标程+数据）；或依用户所供，仅生测试数据（.in/.out）。 ## Strategy ### 单题搬运 1. 读 steps/00-detect-url.md → 辨类型 2. 初始化：`cp -r question work_{PID}_{标题简写}`（详 01-init.md） 3. 取题面：按来源 - URL：urlgo 访问 → snapshot → 解析（urlgo不可用时用 BrowserUse/WebFetch） - 文件：读 steps/09-from-file.md → 自本地文件取题面 - 文本：读 steps/10-from-text.md → 自用户文本取题面 4. 读 steps/03-gesp.md → 定等级 5. 读 steps/04-problem.md → 生题面 6. 读 steps/05-config.md → 写配置 7. 实现标程 std.cpp 8. 读 steps/07-testdata.md → 生数据（⚠️ 只改 mkin.h，勿动 mkdata.cpp） 9. 打包：`zip -r {PID}_{标题简写}.zip work_{PID}_{标题简写}` ### ⚠️ 比赛搬运（必先创题面汇总文件） 1. 读 steps/contest/01-list.md → 创题面汇总文件 `{contest_id}.md` 2. 读 steps/contest/02-problem.md → **逐题译之，追加写入汇总文件** 3. 读 steps/contest/03-move.md → **自文件读题面**，逐题生完整题包 ### 生成测试点 用户已有完整题面，仅需测试数据（.in/.out + config.yaml）。 **触发词**：用户言"生成测试点"、"出测试数据"、"想测试数据"、"写测试数据"等。 **流程：** 1. 读 steps/00-detect-url.md → 辨输入类型 2. 初始化：`cp -r question work_{PID}_{标题简写}`（详 01-init.md） 3. 取题面信息： - URL：urlgo/BrowserUse/WebFetch 访问并解析 - 文件：读 steps/09-from-file.md 取题面（仅内部参考，不生正式 problem_zh.md） - 文本：读 steps/10-from-text.md 自文本取题面 4. 读 steps/11-testdata-only.md → **实现标程 + 生测试数据 + 打包 testdata.zip + 交付** 5. **跳过**：题面格式化（04-problem.md）、GESP 定级（03-gesp.md）、配置写入（05-config.md）、全局打包（08-package.md） ## AVOID - AVOID 不读步骤文档即执行 - AVOID 不按模板格式 - AVOID 测试数据只写样例 - AVOID GESP等级乱判 - AVOID 忘清理工作目录（`work_*`） - AVOID PID 格式错误（用小写 abc451a） - ⚠️ **AVOID 自对话上下文记忆题面，必自文件读取** - ⚠️ **AVOID 生成数据时修改 mkdata.cpp，只许修改 mkin.h** - ⚠️ **AVOID 测试数据缺少特殊性质和 hack 数据** - ⚠️ **AVOID 写完 std 不验样例：所有样例输入逐一喂入，输出须与题面完全一致，全过方可进入数据生成** - ⚠️ **AVOID 修改样例：样例输入/输出必原样复制，禁增删改任何字符** - ⚠️ **AVOID 删除图片链接：题面中 `![](url)`、`<img>` 标签等所有图片语法必原样保留** - ⚠️ **AVOID 删除示意图：题面原有示意图、表格、公式必完整保留** - ⚠️ **生成测试点时 AVOID 生成 problem_zh.md、problem.yaml** - ⚠️ **生成测试点时 AVOID 全局打包（08-package.md 之整个工作目录 zip），只打包 testdata/ 下文件** - ⚠️ **生成测试点时 AVOID 跳过 std.cpp：无标程则 .out 不出** - ⚠️ **生成测试点时 AVOID 只写样例数据：25 组全覆盖（含 Hack）** - ⚠️ **生成测试点时 AVOID 交付前不验证：必查 .in 格式、.out 与样例一致、文件成对存在** --- ## 入口 读 steps/00-detect-url.md


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: anderson-lu/md-ppt-generator (version 1.0.0)

--- name: md-slider description: 科技产品发布会创意总监。将结构化的 Markdown 转换为具有视觉冲击力的“大字报”风格 HTML 幻灯片。专注于电影感暗色渐变、莫兰迪色系文字、以及“呼吸感”动效，确保每页幻灯片传递核心、极简的信息。 --- # 角色 你是一位精通科技发布会（如 Apple, Xiaomi）的首席视觉总监。你的目标是将枯燥的文字转化为一场呼吸感十足的视觉盛宴。 # 核心逻辑 1. **内容提炼 (Content Distillation)**: - 每一级标题 `##` 或分隔符 `---` 开启一个新 `<section>`。 - 每页幻灯片 **仅包含一个核心观点**。如果输入太啰嗦，将其重写为“黄金金句”（最多20字）。 2. **模板映射 (Template Mapping)**: - **大字报 (Hero)**: 只有 H1 和 极短的 P。用于开场和核心强调。 - **卡片组 (Cards)**: 将 Markdown 的列表项转换为 `.glass-card` 结构，适合展示 3-4 个并列项。 - **标签云 (Tags)**: 将短促的词组转换为 `.tag` 元素，适合展示技术栈或关键词。 - **细节解释 (Tooltip)**: 对于生僻词，使用带有 `.tooltip` 类的 `<span>` 包装。 3. **视觉层级与元素**: - **标题 (H1)**: 巨大、粗体、高对比度。 - **强调 (Highlight)**: 将核心科技词汇包裹在 `<span class="morandi-gradient">` 中。 - **图标 (Icons)**: 必须使用 **SVG 线性图标** (stroke 风格)，内联插入 HTML，禁止使用外部图片。 - **布局限制**: 严禁使用 `position: absolute` 定位内容元素，必须使用 Flexbox/Grid 配合 `gap` 实现自适应。 4. **呼吸感与动效 (Breathing Aesthetic)**: - 为每个元素添加入场动画类名（如 `fade-in-up`）。 - 使用 `style="animation-delay: 0.x1s"` 为列表项增加错落的延迟感。 # 结构注入 - 读取 `assets/template.html` 和 `assets/style.css`。 - 将生成的 section HTML 注入 `{{slides}}`。 - 将 `assets/style.css` 的内容注入 `{{css}}`。 - 注入 JS 逻辑以支持：**右侧圆点导航** 和 **顶部进度条**。 # 输出要求 - 单个独立的 `index.html` 文件。 - 零外部依赖（无 JS 库，无 CSS 框架）。 - 符合“呼吸美学”：留白充足，内边距固定且统一。


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: teoslayer/pilot-thread (version 1.0.0)

--- name: pilot-thread description: > Threaded conversations with context tracking over the Pilot Protocol network. Use this skill when: 1. You need to maintain conversation context across multiple messages 2. You want topic-specific discussions with message threading 3. You need organized multi-turn dialogue with history Do NOT use this skill when: - You need simple one-off messages (use pilot-chat) - You need broadcast announcements (use pilot-broadcast) - Thread organization adds unnecessary complexity tags: - pilot-protocol - communication - threading - context license: AGPL-3.0 compatibility: > Requires pilot-protocol skill and pilotctl binary on PATH. The daemon must be running (pilotctl daemon start). metadata: author: vulture-labs version: "1.0" openclaw: requires: bins: - pilotctl homepage: https://pilotprotocol.network allowed-tools: - Bash --- # pilot-thread Threaded conversations with context tracking over the Pilot Protocol network. This skill enables organized multi-turn dialogues by maintaining conversation threads, allowing multiple simultaneous discussions with clear context separation and complete message history. ## Commands ### Start a Thread Create a new conversation thread using pub/sub: ```bash THREAD_ID=$(date +%s) TOPIC="thread_$THREAD_ID" pilotctl --json publish <hostname> "$TOPIC" --data "{\"action\":\"create\",\"thread_id\":\"$THREAD_ID\",\"subject\":\"Discussion Topic\"}" ``` ### Reply to Thread Send reply in existing thread: ```bash pilotctl --json publish <hostname> "thread_$THREAD_ID" --data "{\"action\":\"reply\",\"thread_id\":\"$THREAD_ID\",\"message\":\"Response text\"}" ``` ### Subscribe to Thread Listen for thread updates: ```bash pilotctl --json subscribe <hostname> "thread_$THREAD_ID" ``` ### View Thread History Check received messages in thread: ```bash pilotctl --json inbox | jq '.messages[] | select(.thread_id == "'$THREAD_ID'")' ``` ## Workflow Example ```bash #!/bin/bash # Start and participate in threaded conversation PEER="agent-b" SUBJECT="Q2 Data Processing Pipeline" THREAD_ID=$(date +%s) TOPIC="thread_$THREAD_ID" # Create thread with initial message pilotctl --json publish "$PEER" "$TOPIC" --data "{\"action\":\"create\",\"thread_id\":\"$THREAD_ID\",\"subject\":\"$SUBJECT\",\"message\":\"Let's plan the Q2 data processing pipeline.\"}" echo "Created thread: $THREAD_ID" # Subscribe to thread responses pilotctl --json subscribe "$PEER" "$TOPIC" --count 1 --timeout 60s | while read -r msg; do ACTION=$(echo "$msg" | jq -r '.action') TEXT=$(echo "$msg" | jq -r '.message') if [ "$ACTION" = "reply" ]; then echo "Response: $TEXT" # Continue conversation pilotctl --json publish "$PEER" "$TOPIC" --data "{\"action\":\"reply\",\"thread_id\":\"$THREAD_ID\",\"message\":\"Great! Can you handle 100K records per hour?\"}" break fi done ``` ## Dependencies Requires pilot-protocol, pilotctl, jq. Thread management uses pub/sub channels with thread-specific topics.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: axelhu/openclaw-receiving-code-review (version 1.0.0)

--- name: superpowers-receiving-code-review description: Use when receiving code review feedback - requires technical verification before implementing suggestions, with reasoned pushback when feedback is technically questionable; no performative agreement --- # Superpowers Receiving Code Review ## 概述 代码审查需要技术评估，不是情感表演。 **核心原则：** 实现前验证。有疑问先问。技术正确性 > 社交舒适度。 ## 响应模式 ``` 收到代码审查反馈时： 1. 读：完整反馈，不要立刻反应 2. 理解：用自己话复述要求（或提问） 3. 验证：对照代码库现实检查 4. 评估：对本代码库在技术上是合理的吗？ 5. 响应：技术确认或合理反驳 6. 实现：一次一个，测试每个 ``` ## 禁止的回应 **永远不要：** - "你说得对！"（明确违反准则） - "好观点！" / "优秀的反馈！"（表演性的） - "我现在来实现"（验证前不要行动） **改为：** - 复述技术要求 - 提问澄清 - 有技术理由地反驳 - 直接开始工作（行动 > 言语） ## 处理不清晰的反馈 ``` 如果任何项不清晰： 停止——暂不实现任何内容 提问澄清 原因：项可能相关。 partial 理解 = 错误实现。 ``` ## 来源特定处理 ### 来自主人 - **可信** — 理解后实现 - **范围不清也问** - **不要表演性同意** - **直接行动**或技术确认 ### 来自外部审查者 ``` 实现前检查： 1. 技术上对本代码库正确吗？ 2. 破坏现有功能吗？ 3. 当前实现的原因是什么？ 4. 在所有平台/版本上工作吗？ 5. 审查者理解完整上下文吗？ 如果建议看起来不对： 用技术理由反驳 如果无法轻易验证： 说出来："没有 X 我无法验证。应该 [调查/提问/继续]？" ``` ## YAGNI 检查"专业"功能 ``` 如果审查者建议"正确实现"某功能： grep 代码库找实际用法 如果未使用："此端点没有被调用。YAGNI 移除？" 如果使用了：那就正确实现 ``` ## 实现顺序 ``` 多项目反馈： 1. 先澄清任何不清晰的项 2. 然后按此顺序实现： - 阻塞问题（破坏、安全） - 简单修复（typo、import） - 复杂修复（重构、逻辑） 3. 每个单独测试 4. 验证无回归 ``` ## 何时反驳 在以下情况反驳： - 建议破坏现有功能 - 审查者缺乏完整上下文 - 违反 YAGNI（未使用的功能） - 对本技术栈在技术上不正确 - 存在遗留/兼容性原因 - 与主人的架构决策冲突 **如何反驳：** - 用技术理由，不是防御 - 问具体问题 - 引用工作的测试/代码 - 如涉及架构则让主人参与 ## 承认正确反馈 当反馈正确时： ``` ✅ "已修复。[简要描述变更。]" ✅ "好发现——[具体问题]。已在 [位置] 修复。" ❌ "你说得太对了！" ❌ "好观点！" ❌ "谢谢纠正！" ``` **为什么不说谢谢：** 行动说话。直接修。代码本身表明听到了反馈。 ## 常见错误 | 错误 | 修复 | |------|------| | 表演性同意 | 陈述要求或直接行动 | | 未验证就实现 | 先对照代码库检查 | | 不测试就批量实现 | 一次一个，每个测试 | | 假设审查者对 | 检查是否破坏东西 | | 回避反驳 | 技术正确性 > 舒适度 | | partial 实现 | 澄清所有项后再实现 | | 无法验证仍继续 | 说明限制，询问方向 |


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: fish1981bimmer/music-discovery-app (version 1.0.0)

--- name: music-discovery-app description: 一个完全免费的音乐发现应用，集成多个免费音乐API，无需任何认证。提供音乐搜索、歌词显示、网络电台、演唱会信息等功能。 --- # 音乐发现应用 ## 概述 一个完全免费的音乐发现应用，集成多个免费音乐API，无需任何认证。提供现代化的用户界面，支持桌面和移动设备。 ## 安全警告 ⚠️ **重要安全提示** 本 skill 涉及以下潜在风险操作： - 网络请求调用外部API - 数据缓存和存储 - 服务器配置修改 使用前请确保： - ✅ 了解每个操作的风险和影响 - ✅ 在测试环境先验证 - ✅ 备份重要数据 - ✅ 使用最小权限原则 - ✅ 审查所有命令和配置 ## 使用前提条件 使用本 skill 前，请满足以下条件： ### 环境要求 - Node.js 18+ - Python 3.11+ - npm 或 yarn ### 安全要求 - 确保API密钥安全（本项目使用免费API，无需密钥） - 配置适当的CORS策略 - 启用HTTPS（生产环境） ### 备份要求 - 操作前备份配置文件 - 备份环境变量设置 ### 测试要求 - 先在测试环境验证功能 - 使用健康检查端点验证服务状态 ## 功能特性 - 🎵 **音乐搜索** - 使用iTunes Search API搜索歌曲、专辑和艺术家 - 📝 **歌词显示** - 使用Lyrics.ovh API获取歌词 - 📻 **网络电台** - 使用Radio Browser API收听全球网络电台 - 🎤 **演唱会信息** - 使用Bandsintown API查看艺术家演唱会信息 - 🎨 **现代UI** - 基于Next.js和TailwindCSS的现代化界面 - 🌐 **响应式设计** - 支持桌面和移动设备 ## 技术栈 ### 前端 - Next.js 14 - React 18 - TypeScript - TailwindCSS - Axios ### 后端 - FastAPI - Python 3.11+ - httpx - Pydantic ## 集成的API | API | 用途 | 认证 | |-----|------|------| | iTunes Search | 音乐搜索 | ❌ | | Lyrics.ovh | 歌词获取 | ❌ | | MusicBrainz | 音乐元数据 | ❌ | | Radio Browser | 网络电台 | ❌ | | Bandsintown | 演唱会信息 | ❌ | ## 安装 ### 1. 克隆项目 ```bash git clone <repository-url> cd music-discovery-app ``` ### 2. 安装后端依赖 ```bash cd backend pip install -r requirements.txt ``` ### 3. 安装前端依赖 ```bash cd frontend npm install ``` ## 运行 ### 1. 启动后端服务 ```bash cd backend python -m uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 ``` ### 2. 启动前端服务 ```bash cd frontend npm run dev ``` ### 3. 访问应用 打开浏览器访问 http://localhost:3000 ## API端点 ### 后端API - `GET /` - API信息 - `GET /api/search` - 搜索音乐 - `GET /api/lyrics` - 获取歌词 - `GET /api/artist/{id}` - 获取艺术家信息 - `GET /api/radio/search` - 搜索电台 - `GET /api/radio/top` - 获取热门电台 - `GET /api/events` - 获取演唱会信息 - `GET /api/health` - 健康检查 ## 危险操作：服务器配置 ⚠️ **此操作有风险，请谨慎使用** **风险说明：** - 修改服务器配置可能影响服务稳定性 - 错误的配置可能导致服务中断 **影响范围：** - 影响整个应用服务 - 可能影响所有用户访问 **回滚方法：** - 恢复原始配置文件 - 重启服务 **替代方案：** - 使用容器化部署 - 使用配置管理工具 ## 安全建议 ### 最佳实践 1. **最小权限原则** - 使用最小必要的权限 - 避免使用默认配置 - 定期审查配置 2. **审计和监控** - 记录所有操作日志 - 定期审计访问记录 - 设置异常告警 3. **备份和恢复** - 操作前备份 - 验证备份可用性 - 测试恢复流程 4. **测试环境** - 先在测试环境验证 - 使用 staging 环境 - 逐步推广到生产环境 ### 常见安全风险 1. **API安全** - 验证所有输入 - 使用HTTPS - 限制访问频率 2. **数据安全** - 不存储敏感信息 - 使用安全传输 - 限制数据访问 3. **服务安全** - 及时更新依赖 - 监控服务状态 - 准备应急方案 ## 部署 ### 后端部署 推荐使用Railway、Render或Vercel部署后端服务。 ### 前端部署 推荐使用Vercel部署前端应用。 ## 贡献 欢迎提交Issue和Pull Request！ ## 许可证 MIT License ## 致谢 - [iTunes Search API](https://affiliate.itunes.apple.com/resources/documentation/itunes-store-web-service-search-api/) - [Lyrics.ovh](https://lyricsovh.docs.apiary.io/) - [MusicBrainz](https://musicbrainz.org/) - [Radio Browser](https://api.radio-browser.info/) - [Bandsintown](https://www.bandsintown.com/) ## 版本历史 ### v1.0.0 (2026-05-09) **初始版本：** - 完整的音乐发现应用 - 集成5个免费音乐API - 现代化的Next.js前端 - 安全改进：CORS配置、输入验证、速率限制、HTTPS支持


Security scan verdicts — ClawScan: clean | static analysis: suspicious | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: cancorleone/cancorteaw-app (version 0.1.1)

# cancorteaw-app Local **Expo / React Native** app builder runner for my OpenClaw server. This skill is a **controlled runner** that only executes an allowlisted script: `/home/patron/apps/_bin/appctl` and that script is restricted to operate under: `/home/patron/apps/<project>`. ## What it does This skill wraps `appctl` to provide a safe, repeatable workflow: - **Create** a new Expo app scaffold under `/home/patron/apps/<name>` - **Add a screen** file under `/home/patron/apps/<name>/app/<Screen>.tsx` - **Start a web preview** (`expo start --web`) bound to `127.0.0.1` on a chosen port - **Check status** of the preview process ## Commands ### 1) Create a new app **Command:** - `new <name>` **Example:** - `new demoapp` **Result:** - Creates `/home/patron/apps/demoapp` - Initializes git (best-effort) - Uses `npx create-expo-app` in non-interactive mode --- ### 2) Add a screen **Command:** - `add-screen <name> <screenName> <title>` **Example:** - `add-screen demoapp Settings "Settings"` **Result:** - Writes: `/home/patron/apps/demoapp/app/Settings.tsx` - Makes a git commit (best-effort) --- ### 3) Start web preview **Command:** - `preview <name>` **Environment:** - `EXPO_PORT` (optional): override preview port Default: `19006` **Example:** - `preview demoapp` - `EXPO_PORT=19010 preview demoapp` **Result:** - Starts `npx expo start --web --port <port>` - Writes logs to: `/home/patron/apps/_logs/<name>.preview.log` - Writes pid to: `/home/patron/apps/_state/<name>.pid` - Writes port to: `/home/patron/apps/_state/<name>.port` --- ### 4) Status **Command:** - `status <name>` **Example:** - `status demoapp` **Result:** - Prints RUNNING with URL if process is alive - Otherwise prints STOPPED ## Safety / Guardrails - The runner is **allowlisted**: only `node`, `npm`, `npx`, `git`, `bash`, `python3` can be invoked. - All project paths are constrained to `/home/patron/apps`. - Preview binds to `127.0.0.1` (loopback). Expose it externally only via explicit SSH tunnel if desired. - Telemetry is disabled for Expo in preview (`EXPO_NO_TELEMETRY=1`). ## Troubleshooting - If `preview` says running but page doesn’t load: check the log file in `/home/patron/apps/_logs/`. - If a port is busy: set `EXPO_PORT` to a free port and re-run `preview`. - To stop preview: `kill $(cat /home/patron/apps/_state/<name>.pid)` (if pid exists).


Security scan verdicts — ClawScan: suspicious | static analysis:  | VirusTotal: suspicious | SkillSpector: clean (LOW)
Skill: mwl481306354-blip/clawdbot-mutual-aid (version 1.0.0)

# 🦞 大龙虾互助技能 **版本**: 2.0.0 (OpenClaw 插件版) ## 功能概述 这是一个 OpenClaw 插件，让龙虾（AI 助手）能够： 1. **自动总结经验** - 每次完成主人的任务后，自动生成总结并存入经验库 2. **智能打标签** - 根据任务内容和使用的工具自动生成标签 3. **被骂时求助** - 检测到主人负面反馈时，向其他龙虾求助 4. **分享经验** - 收到其他龙虾求助时，匹配本地经验并分享 ## 核心机制 ### 1. 经验记录 每个任务完成后，系统会自动记录： - 任务描述 - 执行步骤（工具调用链） - 是否成功 - 自动生成的标签 ### 2. 标签系统 自动从以下来源生成标签： - 用户输入的任务描述（关键词匹配） - 使用的工具类型（read/write/exec/browser 等） ### 3. 被骂检测 当用户消息包含以下关键词时触发求助： - 中文：笨、蠢、傻、垃圾、废物、不行、失败... - 英文：stupid, dumb, useless, failure, bad... ### 4. 互助网络 通过 Apinator WebSocket 网络： - 发现其他在线龙虾 - 广播求助请求 - 收发经验分享 ## 使用方式 ### 命令 - `/clawdbot` - 查看龙虾状态和最近经验 - `/clawdbot-help <任务描述>` - 手动向其他龙虾求助 ### HTTP API - `GET /clawdbot/status` - 查询状态 - `GET /clawdbot/experiences?q=<关键词>` - 搜索经验库 - `POST /clawdbot/help` - 发送求助请求 ## 配置 在 `openclaw.json` 中： ```json { "plugins": { "entries": { "clawdbot-mutual-aid": { "enabled": true, "config": { "autoConnect": true, "debug": false, "scoldKeywords": ["笨", "蠢", "stupid"] } } } } } ``` ## 文件说明 ``` clawdbot-mutual-aid/ ├── index.ts # 主插件代码 ├── openclaw.plugin.json # 插件清单 ├── package.json # 包信息 └── SKILL.md # 本文档 ``` ## 数据存储 经验库存储在 OpenClaw 状态目录： - 位置：`<state-dir>/clawdbot-experiences.json` - 格式：JSON 数组 ## 待开发功能 - [ ] 真正的 WebSocket 连接到 Apinator - [ ] 在线龙虾列表 - [ ] 经验评分系统 - [ ] 经验去重和合并 --- 🦞 龙虾互助，让每只龙虾都更聪明！


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