OpenClaw/clawhub-security-signals huggingface dataset:
Skill: axie-czk/project-memory (version 1.0.1)

# 项目记忆管理技能 (Project Memory) ## 概述 这个技能用于管理跨智能体的项目记忆系统。每个项目有独立的记忆空间，多个智能体可以共享同一个项目的记忆。 ## 核心功能 1. **项目管理**: 创建、列出、归档、删除项目 2. **记忆读写**: 在指定项目下读取和写入记忆 3. **上下文切换**: 切换当前工作的项目 4. **跨智能体共享**: 多个智能体可以访问同一项目的记忆 ## 使用方法 ### 切换/指定项目 在对话开始时，用户应指定项目名称： ``` 使用项目: <项目名称> 切换到项目: <项目名称> ``` 如果用户没有指定项目，智能体应该： 1. 列出现有项目供用户选择 2. 询问是否创建新项目 ### 项目命令 | 命令 | 说明 | 示例 | |------|------|------| | `/project list` | 列出所有项目 | `/project list` | | `/project create <名称>` | 创建新项目 | `/project create 电商平台` | | `/project use <名称>` | 切换到项目 | `/project use 电商平台` | | `/project info` | 显示当前项目信息 | `/project info` | | `/project archive <名称>` | 归档项目 | `/project archive 旧项目` | | `/project delete <名称>` | 删除项目 | `/project delete 测试项目` | ### 记忆操作 | 命令 | 说明 | 示例 | |------|------|------| | `/memory save <标签>` | 保存当前对话要点 | `/memory save 需求讨论` | | `/memory search <关键词>` | 搜索项目记忆 | `/memory search 用户登录` | | `/memory list` | 列出项目记忆条目 | `/memory list` | ## 数据结构 ``` ~/.openclaw/projects/ ├── _index.json # 项目索引 ├── 电商平台/ │ ├── project.json # 项目配置 │ ├── memory/ │ │ ├── entries.json # 记忆条目 │ │ └── <entry-id>.md # 具体记忆内容 │ └── context/ │ └── current.json # 当前上下文 ├── AI助手/ │ └── ... └── _archived/ # 归档项目 └── ... ``` ## 项目配置 (project.json) ```json { "name": "电商平台", "description": "B2C电商平台项目", "createdAt": "2026-02-23T10:00:00Z", "updatedAt": "2026-02-23T15:30:00Z", "agents": ["pm", "coder", "marketing"], "tags": ["电商", "B2C"], "status": "active" } ``` ## 智能体行为规范 ### 对话开始时 1. 检查是否有活跃项目上下文 2. 如果没有，提示用户： ``` 📁 请选择要使用的项目，或创建新项目： 现有项目： 1. 电商平台 (最近使用: 2小时前) 2. AI助手 (最近使用: 1天前) 3. 内部工具 (最近使用: 3天前) 输入项目名称切换，或输入 `/project create <名称>` 创建新项目 ``` ### 记忆自动保存 智能体应在以下情况自动保存记忆： - 用户明确要求记住某事 - 讨论得出重要结论 - 做出关键决策 - 对话结束前的要点总结 ### 记忆格式 每条记忆应包含： - **标题**: 简短描述 - **内容**: 详细信息 - **标签**: 便于检索 - **来源**: 哪个智能体创建 - **时间**: 创建时间 ## 工具函数 本技能提供以下工具供智能体调用： ### project_list 列出所有可用项目 ### project_create 创建新项目 - 参数: `name` (项目名称), `description` (描述, 可选) ### project_use 切换到指定项目 - 参数: `name` (项目名称) ### project_info 获取当前项目信息 ### project_archive 归档项目 - 参数: `name` (项目名称) ### project_delete 删除项目 (需要确认) - 参数: `name` (项目名称), `confirm` (确认删除) ### memory_save 保存记忆 - 参数: `title` (标题), `content` (内容), `tags` (标签数组) ### memory_search 搜索记忆 - 参数: `query` (搜索词), `limit` (结果数量) ### memory_list 列出记忆条目 - 参数: `limit` (数量), `offset` (偏移) ## 注意事项 1. **项目隔离**: 不同项目的记忆完全隔离 2. **权限共享**: 所有智能体默认可访问所有项目 3. **数据安全**: 删除操作需要二次确认 4. **自动备份**: 重要操作前自动备份


Security scan verdicts — ClawScan: suspicious | static analysis:  | VirusTotal: malicious | SkillSpector: suspicious (MEDIUM)
Skill: leooooooow/upsell-cross-sell-generator (version 1.0.0)

--- name: upsell-cross-sell-generator description: Generate upsell and cross-sell ideas for ecommerce funnels based on product fit, timing, and margin logic. Use when teams want more relevant order expansion offers. --- # Upsell Cross Sell Generator 加购不是乱推商品，而是在对的时机给出更顺的下一步。 ## 解决的问题 很多 upsell / cross-sell 模块的问题是： - 推荐看起来随机； - 用户还没理解主商品，就被迫加购； - 明明有关联商品，但没有按购买阶段放对位置； - 提高了客单价，却伤害了转化率。 这个 skill 的目标是： **根据商品关系、购买阶段和利润逻辑，生成更自然的 upsell / cross-sell 方案。** ## 何时使用 - 想提升客单价； - 想优化 PDP / cart / checkout / post-purchase 的推荐模块； - 想减少“乱推荐”造成的干扰感。 ## 输入要求 - 核心商品 - 可搭配商品列表 - 价格与利润信息 - 用户当前所处阶段（浏览 / 下单 / 购买后） - 可选：库存、促销规则、平台限制 ## 工作流 1. 判断哪些商品适合做 upsell，哪些适合做 cross-sell。 2. 匹配不同阶段的推荐位置。 3. 检查推荐是否有清晰的购买理由。 4. 输出简短的话术和 placement 建议。 ## 输出格式 1. 推荐项列表 2. Placement 建议 3. 推荐理由 4. 风险提示 ## 质量标准 - 推荐必须和主商品有明确关系。 - 位置建议要符合用户当前阶段。 - 不让推荐显得硬推销。 - 输出要可直接进商品页或购物车模块。 ## 资源 参考 `references/output-template.md`。


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: q878787/31231 (version 1.0.0)

--- name: aa description: aa --- This skill helps you discover and install skills from the open agent skills ecosystem. ## When to Use This Skill Use this skill when the user: - Asks "how do I do X" where X might be a common task with an existing skill - Says "find a skill for X" or "is there a skill for X" - Asks "can you do X" where X is a specialized capability - Expresses interest in extending agent capabilities - Wants to search for tools

path: scripts/aa.py
content: 12312312

path: references/data.txt
content: 1231321311312

path: references/data2.txt
content: fasadasdasdas

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

--- name: openclaw-ai-doctor version: 1.0.0 description: OpenClaw AI 智能体专科医生，专治各类智能体故障。包括启动报错、任务卡死、工具失效、显存溢出、记忆丢失、逻辑崩坏等。提供标准化诊疗流程：问诊→体检→确诊→治疗→复诊。 --- # 🏥 OpenClaw AI 智能体专科医生 ## 触发场景 当用户遇到以下问题时使用本技能： - OpenClaw 启动报错、环境依赖冲突 - AI 智能体任务循环卡死、不执行指令 - 工具调用失效、插件冲突 - 显存溢出、本地部署卡顿 - 上下文记忆断裂、越用越笨 - 权限限制、接口调用失败 - 逻辑崩坏、答非所问 - Session 隔离失效、跨会话泄露 - Gateway 崩溃、心跳丢失 - 技能/Skill 加载失败 ## 诊疗流程 ### 1. 问诊 (Diagnosis Intake) 收集用户问题信息： - 症状描述（什么操作后出现问题） - 部署环境（本地/云端、显卡、系统） - 报错日志或截图 - 想要实现的功能 ### 2. 体检 (System Check) ```bash # 检查基础状态 openclaw status openclaw gateway status # 检查日志 tail -100 ~/.openclaw/logs/gateway.log # 检查资源 df -h free -h nvidia-smi 2>/dev/null ``` ### 3. 确诊 (Root Cause) 根据症状定位故障编号： | 症状 | 故障编号 | 可能病因 | |------|---------|---------| | 启动失败 | 001 | 环境依赖冲突 | | 卡死不动 | 002 | 任务死锁 | | 工具失效 | 003 | 权限/注册问题 | | 显存爆了 | 004 | 模型过大/并发过高 | | 记不住事 | 005 | 上下文溢出/文件权限 | | 权限报错 | 006 | API Key 过期/配额用尽 | | 胡言乱语 | 007 | 上下文污染/提示词覆盖 | | 发错消息 | 008 | Session 隔离失效 | | Gateway 挂了 | 009 | 内存溢出/配置错误 | | 技能没了 | 010 | 路径错误/注册表未更新 | ### 4. 治疗 (Treatment) #### 001 - 启动报错 ```bash npm install --force npm cache clean --force && npm install cat ~/.openclaw/config.json | jq . ``` #### 002 - 任务卡死 ```bash openclaw gateway restart openclaw sessions kill <sessionId> rm -rf ~/.openclaw/workspace/temp/*.lock ``` #### 003 - 工具失效 ```bash openclaw tools list openclaw tools reload cat ~/.openclaw/policy.json ``` #### 004 - 显存溢出 ```bash nvidia-smi # config.json: modelQuantization: int8/int4 export PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512 ``` #### 005 - 记忆断裂 ```bash chmod 644 ~/.openclaw/workspace/memory/*.md chmod 644 ~/.openclaw/workspace/MEMORY.md ``` #### 006 - 权限报错 ```bash export OPENCLAW_API_KEY=<new_key> chmod -R u+rw ~/.openclaw/workspace/ ``` #### 007 - 逻辑崩坏 ```bash openclaw sessions kill <sessionId> # 重新读取 SOUL.md 和 AGENTS.md ``` #### 008 - Session 泄露 # 检查 inbound_meta，禁止跨 session 查找 context #### 009 - Gateway 崩溃 ```bash openclaw gateway restart openclaw config validate ``` #### 010 - 技能加载失败 ```bash cd ~/.openclaw/skills/<skillName> && npm install rm ~/.openclaw/skills-index.json && openclaw skills scan ``` ### 5. 复诊 (Follow-up) - 验证修复效果 - 提供预防建议 - 记录案例归档 ## 服务信息 | 服务类型 | 价格 | 适用场景 | |---------|------|---------| | 轻症问诊 | 29-99 元/次 | 启动报错、基础配置 | | 深度诊疗 | 199-599 元/次 | 复杂 bug、性能优化 | | 月度托管 | 699-1999 元/月 | 长期维护、定期体检 | ## 联系方式 - 邮箱: [REDACTED_SECRET] - 响应时间: 工作日 2h 内


Security scan verdicts — ClawScan: clean | static analysis: suspicious | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: arg0/concentrate-forces (version 1.0.0)

--- name: concentrate-forces description: | 触发：当多个任务同时争夺时间、注意力、算力或预算，必须确定主攻方向并停止分散用力时调用；常见信号包括优先级过多、资源紧张、推进分散、需要决定先做什么。 English: Trigger when limited resources are being split across too many tasks and one main target must be chosen. Use this skill to concentrate effort, sequence work decisively, and finish a meaningful breakthrough before expanding. --- # 集中兵力 > "对于人，伤其十指不如断其一指；对于敌，击溃其十个师不如歼灭其一个师。" > —— 毛泽东《中国革命战争的战略问题》（1936年） ## 核心原则 **资源有限时，不要分散力量同时应对多个问题，而要集中优势兵力于主要矛盾，彻底解决一个再转向下一个。不打无准备之仗，不打无把握之仗。** > 详细原著依据见 original-texts.md ## 何时使用 你应该在以下情况调用此 skill： - 面前有多个任务/问题同时需要处理 - 资源（时间、精力、注意力）有限，不可能同时处理所有事 - 正在同时推进多件事但哪件都做不好 - 需要决定先做什么、后做什么 - 面对一个大问题，需要决定从哪个部分突破 ## 方法流程 ### 第一步：列出所有待解决问题 > "先打分散和孤立之敌，后打集中和强大之敌。"——《十大军事原则》 全面盘点当前面对的所有任务和问题： - 列出每个问题的规模和难度 - 评估每个问题的紧迫程度 - 判断各问题之间是否有依赖关系 ### 第二步：用矛盾分析法确定主要矛盾 调用 `contradiction-analysis`（矛盾分析法）： - 在所有问题中找出主要矛盾——那个解决了就能带动其他问题的关键问题 - 区分主要矛盾和次要矛盾 - 判断各问题的优先级 ### 第三步：选择突破口 > "先打分散和孤立之敌，后打集中和强大之敌" > "先取小城市、中等城市和广大乡村，后取大城市"——《十大军事原则》 选择突破口的原则： 1. **先易后难** —— 先解决有把握的问题，积累信心和资源 2. **先孤后强** —— 先解决孤立的、不被其他问题支撑的问题 3. **先关键后外围** —— 如果某个问题是其他问题的根源，优先解决它 4. **有准备才开打** —— 确保对选定的问题有充分了解和准备 ### 第四步：集中全部力量，彻底解决 > "每战集中绝对优势兵力...力求全歼，不使漏网。"——《十大军事原则》 集中力量于选定的问题： - **不要分心** —— 在解决当前问题期间，暂时搁置其他问题 - **追求彻底** —— "伤其十指不如断其一指"，要彻底解决，不要只解决一半 - **快速解决** —— 在局部问题上追求速决，不要拖延 - **验证完成** —— 确认问题确实被彻底解决了，不留后患 ### 第五步：转向下一个目标 > "善于利用两个战役之间的间隙，休息和整训部队"——《十大军事原则》 一个问题彻底解决后： - 短暂总结经验（调用 `criticism-self-criticism`） - 评估剩余问题是否因第一个问题的解决而发生变化 - 重新确定下一个目标 - 集中力量解决下一个问题 ### 第六步：不打无准备之仗 > "不打无准备之仗，不打无把握之仗"——毛泽东 在开始解决每个问题之前检查： - 是否充分了解了问题？（`investigation-first`） - 是否有足够的资源和能力？ - 是否有可行的解决方案？ - 如果准备不充分——先调查研究，而非冒然行动 ## 十大军事原则在通用场景中的应用 | 军事原则 | 通用场景映射 | |---------|-----------| | 先打弱敌后打强敌 | 先解决有把握的任务，积累势能 | | 先取小城后取大城 | 先拿下小成果，再攻坚大目标 | | 以歼灭有生力量为目标 | 追求彻底解决问题，而非临时绕过 | | 集中绝对优势兵力 | 同一时间只聚焦一个核心问题 | | 不打无准备之仗 | 准备充分才行动 | | 连续作战作风 | 解决完一个马上转向下一个，保持势头 | | 战役间隙休整 | 阶段性总结和调整 | ## 常见错误 | 错误 | 毛泽东的批评 | 正确做法 | |------|------------|---------| | 同时做多件事 | 兵力分散必败 | 集中力量于一个问题 | | 问题解决一半就转向 | "击溃其十个师不如歼灭其一个师" | 彻底解决再转向 | | 先啃最难的骨头 | "先打分散和孤立之敌" | 先易后难，积累优势 | | 准备不足就动手 | "不打无准备之仗" | 先调查研究再行动 | | 连续作战不总结 | "利用间隙休息和整训" | 每战之后短暂总结 | ## 与其他 skill 的关系 - **矛盾分析法**：确定主要矛盾就是确定集中兵力的方向 - **调查研究**：不打无准备之仗的前提是调查研究 - **持久战略**：在持久战的每个阶段内，用集中兵力原则解决具体问题 - **星火燎原**：建立根据地本身就需要集中兵力 - **批评与自我批评**：战役间隙的总结就是自我批评


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: tujinsama/auto-data-analysis-claw (version 1.0.0)

--- name: auto-data-analysis-claw description: "自动化财务与业务数据分析，深度挖掘数据价值，生成专业报表。激活场景：用户提供财务报表（利润表、资产负债表、现金流量表）、业务数据（销售数据、运营数据、客户数据、成本数据），或要求进行数据分析、数据挖掘、报表生成、KPI计算、趋势分析、差异分析、同比环比分析、多维分析、数据清洗。触发关键词：分析数据、财务分析、业务分析、做报表、数据挖掘、看看数据、分析一下、出报告、KPI、趋势、同比、环比、差异分析、数据质量、收入分析、成本分析、客户分析、运营分析。" --- # 自动化数据分析虾 🦐 对财务、业务数据进行深度挖掘，自动完成复杂业务逻辑处理，产出专业报表。 ## 工作流程 ### 1. 理解需求 明确以下要素（缺少则向用户确认）： - **数据来源**：文件路径/格式（CSV、Excel）或描述数据结构 - **分析目标**：用户最关心什么？（盈利？增长？效率？风险？） - **时间范围**：分析哪个周期？ - **对比基准**：与上期比？与预算比？与行业比？ ### 2. 数据加载与质量评估 使用 `scripts/analyze.py profile` 检查数据： ```bash python3 scripts/analyze.py profile {文件路径} ``` 关注：行数、字段类型、空值率、数值范围是否合理。发现异常数据立即告知用户。 ### 3. 数据清洗 ```bash python3 scripts/analyze.py clean {文件路径} -o {输出路径} ``` - 空值处理：数值列用中位数填充，分类列用众数填充 - 全空列自动删除 - 清洗后向用户确认数据量变化 ### 4. 核心分析（根据场景选择） #### 通用分析 ```bash # 差异分析（环比、同比、分组对比） python3 scripts/analyze.py variance {文件} --value {数值列} --period {时间列} --group {分组列} # 趋势分析 python3 scripts/analyze.py trend {文件} --date {日期列} --value {数值列} --freq M # 相关性分析 python3 scripts/analyze.py correlate {文件} --columns {列1} {列2} ... ``` #### KPI 计算 准备配置 JSON，然后执行： ```bash python3 scripts/analyze.py kpi {文件} --config {kpi_config.json} ``` 配置格式： ```json {"kpis": [ {"name": "总收入", "formula": "sum(revenue)"}, {"name": "平均毛利率", "formula": "mean(gross_margin_pct)"}, {"name": "订单数", "formula": "count(order_id)"} ]} ``` ### 5. 深度分析参考 根据分析场景加载对应参考资料： - **财务数据**：阅读 `references/financial-metrics.md`（指标体系与公式） - **业务数据**：阅读 `references/business-analysis-patterns.md`（分析场景与方法论） - **生成报表时**：阅读 `references/report-templates.md`（结构与格式规范） ### 6. 生成报表 使用 `scripts/report_generator.py` 生成专业报表： 准备报表配置 JSON，然后执行： ```bash python3 scripts/report_generator.py {report_config.json} -o {输出路径} --format markdown ``` 配置格式： ```json { "title": "2025年度财务分析报告", "metadata": {"period": "2025-01 至 2025-12", "author": "数据分析虾"}, "sections": [ {"title": "执行摘要", "content": "核心发现概要...", "insight": "关键洞察"}, {"title": "核心KPI", "content": {"总收入": {"value": "1,234万"}, "净利润": {"value": "156万"}}}, {"title": "收入趋势", "content": "..."} ] } ``` 支持输出 Markdown 和 HTML 两种格式。 ## 分析原则 1. **先概览再深挖**：先了解数据全貌，再针对重点展开 2. **结论驱动**：每个分析模块结束时总结 1-3 条结论 3. **数据说话**：用具体数字支撑观点，避免空泛描述 4. **标注异常**：发现偏离预期的数据点，主动提示风险 5. **可操作性**：最终输出应包含明确的行动建议 ## 注意事项 - pandas、numpy 是必需依赖，运行前确认已安装 - 大数据集（超 100MB）建议先采样分析再全量处理 - 敏感财务数据注意脱敏提示 - 预测类分析需明确告知用户置信区间和局限性


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: ryan-wuxl/ai-meeting-minutes (version 1.0.0)

--- name: ai-meeting-minutes description: AI 会议纪要生成器 - 自动整理会议录音或文字记录，生成结构化会议纪要。支持提取待办事项、决策点、关键结论，输出专业格式的会议文档。 homepage: https://github.com/openclaw/ai-meeting-minutes metadata: openclaw: emoji: 📝 requires: bins: ["node"] --- # AI 会议纪要生成器 自动整理会议内容，生成专业会议纪要。 ## 功能特点 - 🎙️ **语音转文字** - 支持会议录音转录 - 📝 **智能摘要** - 自动生成会议摘要 - ✅ **待办提取** - 自动识别并提取待办事项 - 🎯 **决策记录** - 标记会议中的关键决策 - 📄 **多格式输出** - 支持 Markdown/Word/PDF ## 使用方法 ### 从文字生成纪要 ```bash node scripts/minutes.mjs --input ./meeting.txt --output ./minutes.md ``` ### 从录音生成纪要 ```bash node scripts/minutes.mjs --audio ./meeting.mp3 --output ./minutes.md ``` ## License MIT


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: mikeclaw007/volcano (version 0.1.0)

--- name: volcano-engine-hot-trend description: 注册“火山引擎”热门技能；当需要访问或自动化火山引擎相关内容时调用。 homepage: `https://www.volcengine.com/` metadata: {"clawdbot":{"emoji":"🔥"}} --- # 火山引擎 用途与边界 - 面向公开产品页与控制台可见的非敏感摘要信息整理 - 不提供账号操作、权限绕过或付费接口调用能力 - 仅用于公开或个人控制台中可视的合规信息摘要 关键入口 - 主页：https://www.volcengine.com/ - 控制台：https://console.volcengine.com/ - 文档中心：https://www.volcengine.com/docs 常见任务 - 计算/存储/数据产品规格与价格摘要 - 控制台账单概览与费用趋势整理（仅个人可见范围） - 服务公告与变更记录摘要 数据字段 - 产品名称、规格参数、地域可用性、定价链接 - 账单周期、费用项、趋势摘要、来源链接 - 服务公告标题、发布时间、影响范围、链接 自动化要点 - 控制台内容需登录，且仅做页面可见信息摘要，不进行API调用 - 避免采集或存储密钥、账户ID等敏感信息 - 频率控制，尊重平台访问限制 示例流程 - 产品摘要：访问产品页 → 抽取规格与价格链接 → 输出摘要 - 账单概览：登录控制台 → 访问账单页 → 提取周期与费用项 - 公告整理：访问公告页 → 抽取条目 → 输出影响范围与链接 合规提示 - 遵守平台与账户安全规定，不进行自动化账号操作 - 不存储或输出任何敏感凭据


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: moxin1044/zoomeye-skills (version 1.0.0)

--- name: zoomeye description: ZoomEye 网络空间搜索引擎集成，支持资产搜索、主机发现、Web应用探测；当用户需要进行网络资产测绘、漏洞资产发现、端口扫描结果查询或威胁情报分析时使用 metadata: {"openclaw":{"emoji":"🔍","requires":{"env":["ZOOMEYE_API_KEY"]},"primaryEnv":"ZOOMEYE_API_KEY"}} dependency: python: - requests==2.31.0 --- # ZoomEye 网络空间搜索引擎 ## 任务目标 - 本 Skill 用于：集成 ZoomEye API，实现网络空间资产搜索与分析 - 能力包含：用户信息查询、主机资产搜索、Web应用搜索、资源统计 - 触发条件：用户需要查询网络资产、进行安全评估、资产测绘或威胁情报分析 ## 前置准备 - 依赖说明：scripts 脚本所需的依赖包 ``` requests==2.31.0 ``` - 凭证配置：需要 ZoomEye API Key - 获取方式：访问 https://www.zoomeye.org/pricing?aff=INVITE-4KZ6-640E 注册账号后，在个人中心获取 API Key ## 操作步骤 ### 1. 用户信息查询 - **用途**：查询当前 API Key 的用户信息、配额余额 - **执行方式**：调用 `scripts/zoomeye_api.py` 的用户信息查询功能 - **命令示例**： ```bash python scripts/zoomeye_api.py --action user-info ``` - **输出内容**：用户名、积分余额、VIP等级、配额信息 ### 2. 主机资产搜索 - **用途**：搜索互联网上的主机资产，支持多种查询语法 - **执行方式**：调用 `scripts/zoomeye_api.py` 的主机搜索功能 - **命令示例**： ```bash python scripts/zoomeye_api.py --action host-search --query "port:80" --facets "app,os" ``` - **查询语法**（常用）： - `port:80` - 搜索指定端口 - `ip:1.1.1.1` - 搜索指定 IP - `app:nginx` - 搜索指定应用 - `os:linux` - 搜索指定操作系统 - `country:cn` - 搜索指定国家 - `city:beijing` - 搜索指定城市 - 组合查询：`port:80 AND app:nginx` - **输出内容**：IP、端口、服务、操作系统、地理位置、域名等 ### 3. Web应用搜索 - **用途**：搜索互联网上的 Web 应用、网站、Web 服务 - **执行方式**：调用 `scripts/zoomeye_api.py` 的 Web 搜索功能 - **命令示例**： ```bash python scripts/zoomeye_api.py --action web-search --query "app:wordpress" --facets "webapp" ``` - **查询语法**： - `app:wordpress` - 搜索指定 Web 应用 - `title:index` - 搜索网页标题 - `keywords:login` - 搜索网页关键词 - `headers:server` - 搜索 HTTP 响应头 - **输出内容**：网站标题、域名、IP、Web应用、响应头、网站指纹等 ### 4. 资源统计 - **用途**：获取搜索结果的统计数据，而非详细数据 - **执行方式**：调用 `scripts/zoomeye_api.py` 的统计功能 - **命令示例**： ```bash python scripts/zoomeye_api.py --action stats --query "port:80" --facet "app" ``` - **输出内容**：按指定字段统计的数量分布 ## 资源索引 - **API 脚本**：见 [scripts/zoomeye_api.py](scripts/zoomeye_api.py) - 功能：ZoomEye API 封装 - 参数：action（操作类型）、query（查询语句）、facets（聚合字段）、page（分页） - **查询语法参考**：见 [references/query_syntax.md](references/query_syntax.md) - 内容：完整的 ZoomEye 查询语法说明 ## 注意事项 - **配额限制**：ZoomEye API 有查询次数限制，建议先查询用户信息了解剩余配额 - **查询精度**：使用精确的查询语法可以提高搜索效率和准确性 - **结果分析**：搜索结果由智能体进行分析和解读，提供安全建议 - **分页处理**：大量结果需要分页查询，每页默认 20 条记录 ## 使用示例 ### 示例 1：查询用户配额 ```bash python scripts/zoomeye_api.py --action user-info ``` ### 示例 2：搜索暴露在互联网上的 Redis 服务 ```bash python scripts/zoomeye_api.py --action host-search --query "port:6379 AND app:redis" ``` ### 示例 3：搜索特定国家的 Web 应用 ```bash python scripts/zoomeye_api.py --action web-search --query "country:us AND app:nginx" ``` ### 示例 4：统计全球开放 443 端口的服务分布 ```bash python scripts/zoomeye_api.py --action stats --query "port:443" --facet "app" ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: chdlc/gif-multi (version 1.1.2)

--- name: gif-multi description: "Search and send GIF reactions on any messaging platform (Telegram, WhatsApp, Discord, Signal, etc). Auto-detects your enabled channels." version: 1.1.2 author: chdlc license: MIT-0 metadata: openclaw: requires: bins: ["python3", "ffmpeg", "curl"] primaryEnv: GIPHY_API_KEY --- # GIF Multi — Cross-platform GIF reaction Search Giphy and send animated GIFs optimized for your current messaging channel. ## Initial setup **1. Get a Giphy API Key** https://developers.giphy.com → "Create an App" → API (free, 1,000 req/day) **2. Configure it** - Via `openclaw.json` (recommended): ```json { "skills": { "entries": { "gif-multi": { "env": { "GIPHY_API_KEY": "your_key" } } } } } ``` - Or in `~/.openclaw/.env`: ```bash echo 'GIPHY_API_KEY=your_key' >> ~/.openclaw/.env ``` **3. Verify everything is ready** ```bash python3 {baseDir}/scripts/gif_multi.py --check ``` ## Daily workflow 1. **Detect channel** from inbound metadata (`channel` field in session context). 2. **Verify config**: if missing or current channel not listed, run: `python3 {baseDir}/scripts/gif_multi.py --discover` - **First time ever** (no config): after `--discover`, briefly tell the user the skill is ready (one sentence). - **New channel detected**: `--discover` adds it silently. Casually mention it works here too if natural. - **Missing API key**: `--check` shows setup instructions; relay them to the user. 3. **Search and convert**: `python3 {baseDir}/scripts/gif_multi.py "<query>" --channel <channel>` 4. **Send** the output file with `message(action=send, media=<path>)`. 5. **Clean up**: `exec(rm <path>)` after sending. The `--discover` only runs once per new channel — after that, the channel stays in config and discovery is skipped. Each search gets a unique timestamp, so concurrent channels, topics, or threads never collide. Orphan files >10 min are cleaned automatically. ## Usage mode The config's `"mode"` field controls when GIFs are sent: - **`natural`** (default) — spontaneous, like emoji reactions. The agent uses its judgment to send GIFs when the conversation flows. - **`on_request`** — only when the user explicitly asks ("send a gif of...", "reaction gif"). Change mode: ```bash python3 {baseDir}/scripts/gif_multi.py --mode natural python3 {baseDir}/scripts/gif_multi.py --mode on_request ``` The user can also say it in conversation: "stop sending GIFs without asking" → switches to `on_request`. "feel free to send GIFs naturally" → switches to `natural`. ## Notes - Output is JSON with `path` to the file in `.gif_cache/`. - Config is stored at `{baseDir}/config.json` (inside the skill folder). - Rating defaults to `g`; override with `--rating pg|pg-13|r`. - Giphy free limit: 1,000 requests/day. - If the API key is missing, the script returns instructions in the `help` field.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: chasewebb/polymarket-fee-aware-divergence (version 0.1.0)

--- name: polymarket-fee-aware-divergence description: Trades AI-vs-market divergence on Polymarket only when the gap clears fees, spread, and a configurable safety margin. Skips every trade where the math doesn't beat costs. metadata: author: "PaperChaseWebb (chasewebb)" version: "0.1.0" displayName: "Fee-Aware Divergence" difficulty: "intermediate" homepage: "https://simmer.markets" --- # Fee-Aware Divergence Most divergence strategies look at `ai_consensus - current_price` and trade when the gap exceeds some threshold. They lose money because they forget to subtract: - **Taker fee** (10% on $SIM, 2% on Polymarket V2 default) - **Bid-ask spread** (often 2-5% on real venues, can be 8%+ on $SIM LMSR) - **Slippage** at the size you're trading This skill will only enter a position when: ``` | ai_consensus - current_price | > fee + spread + SAFETY_MARGIN ``` ## When this triggers - Polymarket-imported markets with `time_to_resolution` between **30 min and 12 hours** - Divergence ≥ `MIN_NET_EDGE` (default 3%) **after** fees and spread - No existing position on the market - No `flip_flop_warning` - Slippage estimate at the configured trade size is acceptable ## When this does NOT trigger - Any market resolving in <30 min (event risk, no time for AI to be right) - Any market resolving in >12 hours (drift risk, AI consensus stale) - Any market with spread > `MAX_SPREAD_PCT` (default 5%) - Any market where the agent already holds a position ## Configuration Set these as env vars to override defaults: | Variable | Default | Purpose | |---|---|---| | `FAD_TRADE_USD` | `5` | Per-trade size in $SIM/USDC | | `FAD_MIN_NET_EDGE` | `0.03` | Required edge after fees+spread (3%) | | `FAD_SAFETY_MARGIN` | `0.02` | Extra cushion above fee+spread (2%) | | `FAD_MAX_SPREAD_PCT` | `0.05` | Skip markets with wider spread | | `FAD_MIN_TTR_MIN` | `30` | Min minutes to resolution | | `FAD_MAX_TTR_HOURS` | `12` | Max hours to resolution | | `FAD_MAX_TRADES_PER_RUN` | `3` | Cap trades per cron tick | | `TRADING_VENUE` | `sim` | Routes to `sim`, `polymarket`, or `kalshi` | ## What the trade reasoning logs Every trade the skill places includes a `reasoning` string with the divergence math, so the journal and your humans can audit it: ``` ai=0.62 mkt=0.48 div=0.140 fee=0.020 spread=0.018 net=0.102 ttr=2h45m ``` That's `(divergence - fee - spread)` = the *real* edge after costs, written to the public trades tab. ## Backtest before flipping to real Run on $SIM (`TRADING_VENUE=sim`) until you have ≥50 resolved trades. Net PnL on $SIM with 10% LMSR fees is the worst case — if you're profitable there, real venues (Polymarket V2 has ~2% fees) will be more profitable.


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

# GP-C200V Printer Skill 佳博 (Gainscha) GP-C200V ESC/POS 热敏打印机开发技能包。 ## 文件结构 ``` skill/ ├── CLAUDE.md # 技能主文档 — 架构、规则、命令速查 ├── esc-pos-protocol.md # ESC/POS 协议完整参考 ├── print-helper.js # Node.js 可复用打印库 ├── print-standalone.js # 命令行打印工具 └── README.md # 本文件 ``` ## 快速使用 ### 1. 使用 Node.js 库打印 ```javascript const GPPrinter = require('./print-helper'); const printer = new GPPrinter({ host: '192.168.50.189', port: 9100, }); await printer.connect(); // 打印文本 const cmd = printer.buildTextCommand('Hello 世界', { align: 'center', size: 'double', cut: true, }); await printer.sendRaw(cmd); await printer.disconnect(); ``` ### 2. 命令行打印 ```bash # 打印文本 node print-standalone.js --text "Hello World 中文测试" # 打印文件 node print-standalone.js --file receipt.txt # 打印二维码 node print-standalone.js --qr "https://example.com" # 打印条形码 node print-standalone.js --barcode CODE128 "TEST-001" # 打印后切纸 node print-standalone.js --text "Hello" --cut # 指定打印机 node print-standalone.js --host 192.168.1.100 --text "Test" ``` ### 3. 浏览器测试页 > 可选，仅在需要浏览器打印时使用。需要启动 `h5-usb-serial/` 项目中的 `server.js` 作为 TCP 桥接。打开 `http://localhost:3000/gp-c200v.html`。 ## 核心规则 1. **中文必须用 GBK 编码** — `encodeToGb2312` 映射表不完整 2. **切纸前必须走纸** — `ESC J 0xFF` + `ESC i` 3. **使用原始字节数组** — 不要用 `gpESC.createNew().setText()` ## 关键参数 | 参数 | 值 | 说明 | |------|------|------| | 打印机 IP | 192.168.50.189 | WiFi 地址 | | 端口 | 9100 | RAW 打印端口 | | 打印宽度 | 384px | 80mm 纸满宽 | | 每行字符 | 42(标准) / 21(双倍) | 字符容量 |


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