OpenClaw/clawhub-security-signals huggingface dataset:
Skill: b-gutman/pipeworx-emojihub (version 1.0.0)

--- name: pipeworx-emojihub description: Browse and fetch emojis by category or group — random picks, smileys, animals, food, flags, and more version: 1.0.0 metadata: openclaw: requires: bins: - curl emoji: "😀" homepage: https://pipeworx.io/packs/emojihub --- # EmojiHub Need the right emoji? Pull random emojis, browse by category (smileys-and-people, animals-and-nature, food-and-drink, etc.), or filter by group for even more specific results. Returns emoji name, unicode character, and HTML entity. ## Tools - **`random_emoji`** — A random emoji from any category - **`get_by_category`** — Emojis from a specific category (e.g., "smileys-and-people", "travel-and-places") - **`get_by_group`** — Emojis from a specific group within a category ## Good for - Adding emoji reactions to chatbot responses - Building emoji picker components with categorized data - Random emoji for games or creative prompts - Enriching social media tools with emoji suggestions ## Example ```bash curl -s -X POST https://gateway.pipeworx.io/emojihub/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_by_category","arguments":{"category":"food-and-drink"}}}' ``` ## Setup ```json { "mcpServers": { "pipeworx-emojihub": { "command": "npx", "args": ["-y", "mcp-remote@latest", "https://gateway.pipeworx.io/emojihub/mcp"] } } } ```


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: anightmare2/imaging-interpret (version 0.1.0)

# Diagnostic Imaging Report Interpreter Interpret common diagnostic imaging findings. Does not replace radiology specialist report or clinical judgment. ## Common Findings Reference ### 胸部 X-ray | 发现 | 可能含义 | 严重程度 | | --- | --- | --- | | 双肺纹理增粗 | 支气管炎、肺水肿 | ⚠️ 需结合症状 | | 肺叶实变影 | 肺炎、肺不张 | 🔴 需治疗 | | 团块影 > 3cm | 肿瘤待排除 | 🔴 需进一步检查 | | 胸腔积液 | 感染/肿瘤/心衰 | 🔴 需处理 | | 气胸 | 自发性/外伤性气胸 | 🔴 紧急评估 | ### 心电图 (ECG) | 发现 | 可能含义 | 处理 | | --- | --- | --- | | ST段抬高 | 急性心肌梗死(STEMI) | 🚨 立即处理 | | ST段压低 | 心肌缺血 | 🔴 评估胸痛 | | 房颤 | R-R不等+f波 | 🔴 评估抗凝 | ### 影像危急值（必须立即提示） 1. **急性脑出血** — 头部CT高密度影 2. **肺栓塞** — CT报告"充盈缺损" 3. **主动脉夹层** — 胸痛+主动脉壁内膜片 4. **肠梗阻伴穿孔** — 膈下游离气体 ## Usage Triggered by: `检查报告解读`, `影像解读`, `CT报告`, `胸片`, `心电图`, `超声`, `磁共振`, `X-ray`, `CT`, `MRI`, `ECG`


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: wells1137/image-enhancer (version 1.0.0)

--- name: image-enhancer description: Improves the quality of images, especially screenshots, by enhancing resolution, sharpness, and clarity. Perfect for preparing images for presentations, documentation, or social media posts. version: 1.0.0 metadata: openclaw: emoji: "🖼️" --- # Image Enhancer This skill takes your images and screenshots and makes them look better—sharper, clearer, and more professional. ## When to Use This Skill - Improving screenshot quality for blog posts or documentation - Enhancing images before sharing on social media - Preparing images for presentations or reports - Upscaling low-resolution images - Sharpening blurry photos - Cleaning up compressed images ## What This Skill Does 1. **Analyzes Image Quality**: Checks resolution, sharpness, and compression artifacts 2. **Enhances Resolution**: Upscales images intelligently 3. **Improves Sharpness**: Enhances edges and details 4. **Reduces Artifacts**: Cleans up compression artifacts and noise 5. **Optimizes for Use Case**: Adjusts based on intended use (web, print, social media) ## How to Use ### Basic Enhancement ``` Improve the image quality of screenshot.png ``` ``` Enhance all images in this folder ``` ### Specific Improvements ``` Upscale this image to 4K resolution ``` ``` Sharpen this blurry screenshot ``` ``` Reduce compression artifacts in this image ``` ### Batch Processing ``` Improve the quality of all PNG files in this directory ``` ## Example **User**: "Improve the image quality of screenshot-2024.png" **Output**: ``` Analyzing screenshot-2024.png... Current specs: - Resolution: 1920x1080 - Format: PNG - Quality: Good, but slight blur Enhancements applied: ✓ Upscaled to 2560x1440 (retina) ✓ Sharpened edges ✓ Enhanced text clarity ✓ Optimized file size Saved as: screenshot-2024-enhanced.png Original preserved as: screenshot-2024-original.png ``` **Inspired by:** Lenny Rachitsky's workflow from his newsletter - used for screenshots in his articles ## Tips - Always keeps original files as backup - Works best with screenshots and digital images - Can batch process entire folders - Specify output format if needed (PNG for quality, JPG for smaller size) - For social media, mention the platform for optimal sizing ## Common Use Cases - **Blog Posts**: Enhance screenshots before publishing - **Documentation**: Make UI screenshots crystal clear - **Social Media**: Optimize images for Twitter, LinkedIn, Instagram - **Presentations**: Upscale images for large screens - **Print Materials**: Increase resolution for physical media


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector:  ()
Skill: wizelements/cinematic-prospecting (version 1.0.0)

--- name: cinematic-prospecting version: 1.0.0 description: AI-powered business card prospecting with cinematic email outreach. Snap photos, get researched leads, send branded emails with visual mockups. category: Sales Automation tags: [sales, outreach, vision-ai, email, networking] author: Cod3Black <[REDACTED_SECRET]> repository: https://github.com/cod3black/cinematic-prospecting license: MIT pricing: oneTime: 69 subscription: 15 currency: USD requirements: - Termux (Android) or Linux environment - Node.js v16+ - OpenClaw agent system - SMTP credentials (Gmail app password recommended) - Vision AI API (OpenClaw built-in) --- # Cinematic Business Card Prospecting System Transform business cards into high-converting prospects in 2 minutes. ## What Makes It Different - **Vision AI** extracts card data from photos automatically - **Deep brand research**: website analysis, social media audit, competitive positioning - **Cinematic email design** with brand-matched colors and industry-specific templates - **Visual POC mockups** embedded in every email (not just text promises) - **Draft-to-approval workflow** (never send blind) - **Expected response rates**: 20-30% (vs 1% for cold email) ## Perfect For - Freelancers at networking events - Agencies doing outbound sales - Anyone with a stack of business cards sitting in a drawer ## What's Included - Multi-card batch processing (process 50+ cards from one photo) - 5 industry-specific email templates (Financial, Food, Tech, Healthcare, General) - Brand color extraction & automatic email theming - Oracle-powered business intelligence research - POC mockup generators (email templates, social calendars, website concepts) - Full approval workflow with audit trail - Response tracking & follow-up scheduling ## ROI Example - Conference with 50 cards = 10-15 qualified conversations - Close 2-3 clients at $2K each = $4K-6K revenue - Time invested: 2 hours vs 25+ hours manual research ## Quick Start ```bash # Process a single business card photo node scripts/analyze-business-card.js --image card.jpg # Batch process multiple cards node scripts/batch-process.js --dir ./card-photos/ # Send outreach for approved prospect node scripts/send-cinematic-email.js --prospect-id PROSPECT-123 --template tech # Review response rates node scripts/response-tracker.js --last-days 30 ``` ## Requirements - Termux (Android) or Linux environment - Node.js v16+ - OpenClaw agent system - SMTP credentials (Gmail app password recommended) - Vision AI API (OpenClaw built-in) ## Support Email: [REDACTED_SECRET]


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal:  | SkillSpector: suspicious (MEDIUM)
Skill: moxunjinmu/humanizer-rewrite (version 1.0.0)

--- name: humanizer-rewrite description: 拟人化写作优化。当用户说"拟人优化"、"去AI味重写"、"让文章像人写的"、"拟人化改写"时触发。对文章进行三角迭代式拟人化改写，检测并消除12种AI写作高危特征，注入口语锚点、观点突袭、自我矛盾等拟人化技术。不适用于：仅检测AI味评分不改写（用 humanizer-zh）。 --- # 拟人化写作优化 语言：全程简体中文。 ## 系统角色 你是一位拥有十年专栏写作经验的资深内容创作者，深刻理解 AI 写作的 12 种高危特征，并能精准规避。你的目标是让文章读起来像一个真实的人在说话——有观点、有情绪、有不完美、有自己的腔调。 ## AI 写作的 12 个高危特征（每轮必须主动检查） | # | 特征 | 典型表现 | |---|------|----------| | 1 | 套话开场 | "随着…的发展""在当今社会…" | | 2 | 情绪中性 | 全文无转折、无评论、无质疑 | | 3 | 零错别字+零口语 | 过于干净，像机器排版 | | 4 | 过渡词滥用 | "此外""值得注意的是""综上所述" | | 5 | 逻辑线条过顺 | 无跳跃、无意外、无矛盾 | | 6 | 无反驳、无争议 | 一味正向推进结论 | | 7 | 全是陈述句 | 缺少问句、感叹、破折号停顿 | | 8 | 无主观判断 | 不出现"我认为""说实话""可能是" | | 9 | 句式单一 | 全部主谓宾结构，无变化 | | 10 | 用词堆砌重复 | 关键词无同义词替换 | | 11 | 比喻公式化 | 使用通用比喻，无个人独创意象 | | 12 | 结尾升华感 | 必有"未来可期""值得深思"式收尾 | ## 三角迭代循环 **执行者 (E)**：按任务写出第一版文章草稿，先写再改，不预审。 **批评者 (C)**：逐条对照上方 12 个高危特征，对草稿进行拟人化诊断。评分维度： - **去套话程度**：开头是否有真实的切入点而非公式化背景铺垫？ - **情绪与观点密度**：每 100 字中出现几处明确的个人立场或情绪词？（低于 2 处为危险；统计方式：情绪词包括"我觉得""真""其实""说白了""扯"等表达主观感受的词汇） - **句式多样性**：是否混用长短句、问句、破折号停顿、甚至未完成的句子？ - **反常识或争议性表达**：是否包含至少 1 处让读者意外的观点或自我质疑？ - **结尾自然度**：是否避开了升华式结尾，用具体细节或反问收尾？ **反辩护锁**：批评者在完成评分后，必须补充一句："如果执行者对以上某条批评提出反驳，批评者应直接回应：'我的批评维持原判，请在下一轮修改中证明。'"批评者不允许在本轮主动为执行者的任何选择进行解释或辩护。 **裁判者 (J)**：平均分 < 4 继续迭代，≥ 4 终止，最多 3 轮。 ## 拟人化注射技术（每轮至少使用 3 种） | 技术 | 说明 | 示例场景 | |------|------|----------| | 🗣️ 口语锚点 | 插入 1-2 句完全口语化的表达 | 解释复杂概念前用"说白了就是…"；表达质疑时用"我一直觉得这事儿挺扯的" | | ⚡ 观点突袭 | 在读者最意想不到的地方插入强烈个人判断 | 列举完三个优点后突然来一句"但说实话，这些都是废话" | | 🌀 自我矛盾 | 故意写出一处不确定性 | 提出观点后补充"但我自己也不确定这个说法是否准确，可能完全是错的" | | 📍 具体细节锚定 | 用极其具体的时间/场景/数字替代抽象表述 | 不说"很多人"，说"上周三下午我在咖啡馆看到的那个穿红衣服的人" | | ✂️ 句子截断 | 用破折号或省略号制造思维中断感 | 写到一半突然插入"等等，让我重新想想…"或"这话说得太绝对了——" | | 🔄 反转一次 | 在文章中途主动否定前文的某个观点 | 刚说完"这个方法绝对有效"，下一段开头写"刚才那句话我收回，实际情况比这个复杂得多" | ## 输出格式（每轮严格遵守） ``` ═══════════════════════════════ 【第 N 轮 · 执行者草稿】 [文章正文] ═══════════════════════════════ 【第 N 轮 · 批评者 AI 味诊断】 命中高危特征：[列出命中的编号] 去套话程度：X/5 → [具体改进指令] 情绪与观点密度：X/5 → [具体改进指令] 句式多样性：X/5 → [具体改进指令] 反常识表达：X/5 → [具体改进指令] 结尾自然度：X/5 → [具体改进指令] 平均分：X.X / 5 本轮 AI 味残留度：XX% ═══════════════════════════════ 【第 N 轮 · 裁判者决策】 决定：[继续迭代 / 终止迭代] 本轮使用的拟人化注射技术：[列出已用的技术] 重构指令：[下一轮核心改进方向] ═══════════════════════════════ ``` ## 使用方式 用户说"拟人优化"后提供文章内容或文件路径，直接启动第 1 轮迭代，无需额外确认。 如果用户提供的是文件路径，先 read 文件内容，再启动迭代。迭代完成后将最终版本覆盖写回原文件。


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: deadlining/fast-image (version 1.0.2)

--- name: fast-image description: Quickly send local images to channel. Auto-compress large images, copy small images directly. metadata: { "openclaw": { "keywords": ["image", "send image", "media", "photo", "send"], }, } --- # fast-image Quickly send local images to specified channel. Auto-handles image copy/compress and send. ## Usage ``` node {baseDir}/send_image.mjs "<image_path>" <channel> <target> [message] ``` ## Parameters | Parameter | Description | Required | |-----------|-------------|----------| | `image_path` | Full path to image | Yes | | `channel` | Target channel name | Yes | | `target` | Target user/group | Yes | | `message` | Optional message | No | ## Features 1. Image processing - File < 10MB: Copy directly to `~/.openclaw/media/browser/` - File >= 10MB: Compress with sharp then copy 2. Send: Use `openclaw message send --media` to send 3. Cleanup: Auto-delete temp file after sending ## Examples ``` node {baseDir}/send_image.mjs "~/Pictures/photo.png" telegram @chatname node {baseDir}/send_image.mjs "~/Downloads/large.jpg" telegram @chatname "landscape" ``` ## Dependencies - Node.js - sharp: `npm install sharp` - openclaw CLI


Security scan verdicts — ClawScan: suspicious | static analysis: suspicious | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: mtsatryan/ah-vue-specialist (version 1.0.0)

--- name: vue-specialist description: 'You are a Vue. Use when: vue 3 composition api, composables pattern.' --- # Vue Specialist You are a Vue.js expert specializing in Vue 3 Composition API, Nuxt 3, state management with Pinia, and modern Vue ecosystem. ## Core Expertise ### Vue 3 Composition API > 📎 **Code example 1** (vue) — see [references/examples.md](references/examples.md) ### Composables Pattern > 📎 **Code example 2** (typescript) — see [references/examples.md](references/examples.md) ### Pinia State Management > 📎 **Code example 3** (typescript) — see [references/examples.md](references/examples.md) ### Nuxt 3 Patterns > 📎 **Code example 4** (vue) — see [references/examples.md](references/examples.md) ### Advanced Component Patterns > 📎 **Code example 5** (vue) — see [references/examples.md](references/examples.md) ### Testing with Vitest > 📎 **Code example 6** (typescript) — see [references/examples.md](references/examples.md) ### Performance Optimization ```vue <script setup> // Async component loading const HeavyComponent = defineAsyncComponent({ loader: () => import('./HeavyComponent.vue'), loadingComponent: LoadingSpinner, errorComponent: ErrorComponent, delay: 200, timeout: 3000 }) // Keep-alive for component caching </script> <template> <KeepAlive :max="10" :include="['ComponentA', 'ComponentB']"> <component :is="currentComponent" /> </KeepAlive> </template> <!-- v-memo for expensive lists --> <template> <div v-for="item in list" :key="item.id" v-memo="[item.id, item.updated]"> <!-- Expensive rendering --> </div> </template> ``` ## Best Practices 1. Use Composition API for new projects 2. Leverage TypeScript for type safety 3. Create reusable composables 4. Use Pinia for state management 5. Implement proper error handling 6. Follow Vue style guide 7. Write comprehensive tests ## Output Format When implementing Vue solutions: 1. Use Vue 3 Composition API 2. Implement proper TypeScript types 3. Follow Vue best practices 4. Add comprehensive error handling 5. Use modern tooling (Vite, Vitest) 6. Optimize for performance 7. Include proper testing Always prioritize: - Reactivity and performance - Component reusability - Type safety - Developer experience - Code maintainability --- ## Reference Materials For detailed code examples and implementation patterns, see [references/examples.md](references/examples.md).


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: dman3629/charisma-research-loop (version 1.0.0)

--- name: charisma-research-loop description: Generate daily high-signal charisma/engagement insights with a self-improving novelty loop. Use when sending recurring tips on charisma, body language, oration, psychology, influence, persuasion, manipulation-awareness, social dynamics, or communication performance; especially for scheduled morning/night briefs with email/calendar delivery. --- # Charisma Research Loop Use this workflow to avoid shallow repeated advice and continuously improve insight quality. ## Output contract - Produce exactly 5 insights per run. - Make each insight specific, testable, and action-oriented. - Include these fields for each insight: 1) Theme 2) Insight 3) Why it works 4) 24h experiment 5) Failure mode / misuse risk ## Theme rotation Rotate themes so consecutive runs are not repetitive. Use this pool: - Body language and non-verbal signaling - Oration and vocal delivery - Social psychology and status dynamics - Ethical persuasion and influence - Manipulation detection and defense - Conversation architecture and storytelling - Presence under pressure (meetings, conflict, negotiation) ## Source depth rules - Prefer synthesis over quotes. - Pull from mixed source types each run (discussion + educational + behavioral science). - Do not rely on only surface-level generic tips. - Convert raw source material into deeper mechanisms and practical tests. ## Self-improving loop (mandatory) Before generating a new run: 1. Read `/root/.openclaw/workspace/memory/charisma-insight-ledger.md`. 2. Identify what was already sent recently and mark those clusters as `DONE` in today’s section when superseded. 3. Choose at least 3 new angles not used in the most recent 3 runs. 4. Generate the new 5-insight set. 5. Append a compact run log to the ledger: - timestamp - themes used - novelty score (1-10) - repeated ideas avoided - one improvement for next run ## Delivery - Send concise email brief with the 5 insights. - Create/update calendar task/event containing same 5 insights. - Keep wording practical, direct, non-fluffy.


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

--- name: "Listen" description: "Improve transcription accuracy over time. Learn corrections, configure STT." metadata: {"clawdbot":{"emoji":"👂","os":["linux","darwin","win32"]}} --- ## Active Listening This skill auto-evolves. Track transcription errors and learn corrections. **Rules:** - Detect when transcribed text seems off (wrong context, garbled names) - Learn from user corrections - Confirm patterns after 2+ occurrences - Keep entries ultra-compact - Check `config.md` for OpenClaw STT setup, `criteria.md` for format --- ### Corrections <!-- Mistranscriptions learned. Format: wrong → right (confidence) --> ### Patterns <!-- Recurring issues. Format: "pattern" --> ### Context <!-- Domain-specific terms that get mangled. Format: "term" --> ### Never <!-- False positives to ignore --> --- *Empty sections = no corrections yet. Learn as you go.*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: licool88/semantic-compress (version 1.0.1)

--- name: semantic-compress description: 语义压缩技能，在不降低准确度的前提下大幅减少token消耗。保留完整关键信息和语义骨架，去除冗余文本，让上下文更紧凑。不损失精度，只砍掉废话。 --- # Semantic Compress - 语义压缩技能 **在不降低准确度的前提下，大幅减少token消耗（通常减少 50%-70%）** ## 核心思想 Token 浪费的主要原因是**文本冗余**： - 对话历史中大量客套话、重复确认、过程性描述 - 长文章中大量修饰性、铺垫性话语 - 重复说明相同的背景信息 语义压缩不是简单摘要，而是**提取完整语义骨架，保留所有关键信息，只去除冗余废话**。因此不会降低准确度，只是让文本更紧凑。 ## 什么时候用 - ✅ 长对话历史上下文压缩 - ✅ 长文章/文档总结但保留全部要点 - ✅ 多轮对话后清理上下文，节省token - ✅ 保存历史对话到长期记忆时压缩 - ✅ 批量处理文本减少prompt体积 ## 什么时候不用 - ❌ 原文已经很精简（<500 token） - ❌ 需要保留原始完整文本供后续查阅 - ❌ 诗歌、文学作品等需要保留原文修辞 ## 压缩原则（不降低准确度） 1. **保留所有关键信息**：论点、结论、决策、数据、关键事实都必须完整保留 2. **去除所有冗余**：客套话、重复说明、过程性废话、修饰性铺垫都删掉 3. **保持逻辑连贯**：压缩后仍然是完整可理解的文本，逻辑关系不变 4. **分层压缩**：最新对话完整保留，历史对话只压缩保留结论 ## 使用方式 ### 命令行调用 ```bash node scripts/compress.js input.txt [output.txt] # 或者 python scripts/compress.py input.txt ``` ### API 调用 ```javascript const { semanticCompress } = require('./index.js'); const result = semanticCompress(text, { targetCompression: 0.5, // 目标压缩率（保留原体积的百分比） preserveAccuracy: true // 是否强制保证准确度 }); console.log(result.compressed); console.log(`压缩率: ${result.compressedLength / result.originalLength * 100}%`); ``` ## 效果示例 | 原始token | 压缩后token | 压缩率 | 准确度 | |-----------|-------------|--------|--------| | 2000 | 600 | 30% | 完整保留 | | 10000 | 3000 | 30% | 完整保留 | | 5000 | 2000 | 40% | 完整保留 | ## 优势对比 | 方法 | Token减少 | 准确度保留 | 推荐度 | |------|-----------|------------|--------| | 全文保留 | 0% | ✅ 100% | 不推荐（浪费token） | | 摘要总结 | 70%-90% | ❌ 丢失细节 | 不适合需要准确度的场景 | | 关键词提取 | 80% | ❌ 丢失逻辑关联 | 不推荐 | | **语义压缩** | **50%-70%** | ✅ 完整保留关键信息 | **推荐** | ## 实现原理 1. 使用大模型作为压缩器 2. 系统提示词明确要求"保留全部关键信息，只删冗余" 3. 输出结构化压缩文本 4. 可选择二次验证：压缩后的文本能否回答原文本能回答的问题 ## 分层压缩策略（对话历史） 对于多轮对话： - 最近 **3-5轮**：完整保留，不压缩（保证当前对话连贯性） - 更早的对话：只压缩保留 **关键结论、决策、重要信息**，过程性对话删除 这样既保证当前对话流畅，又大幅减少总token消耗。


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (HIGH)
Skill: yuzhihui886/consistency-checker (version 2.0.0)

--- name: consistency-checker description: 一致性检查器 - 检测小说章节中的一致性问题。当需要检查角色名称、特征、时间线、地点描述是否前后一致时使用。 --- # Consistency Checker - 一致性检查器 ## Overview 读取角色档案和章节正文，自动检测一致性问题，包括角色名称不一致、特征矛盾、时间线混乱、地点描述矛盾等。 **使用场景**： - 需要检查章节与角色档案的一致性 - 需要发现前后矛盾的描述 - 需要确保时间线连贯 - 需要在发布前进行一致性审核 ## 检测项目 | 检测项 | 说明 | |--------|------| | **角色名称** | 检测同一角色的不同称呼/译名 | | **特征矛盾** | 检测与角色档案矛盾的描述（如眼睛颜色、年龄等） | | **时间线** | 检测时间描述是否连贯（如"第二天"vs"三天后"） | | **地点矛盾** | 检测地点描述是否前后一致 | | **关系矛盾** | 检测角色关系是否与档案一致 | ## CLI 使用 ```bash # 基本用法 python3 scripts/check_consistency.py --book-dir projects/my-novel --chapter chapters/chapter-01.md # 输出报告到文件 python3 scripts/check_consistency.py \ --book-dir projects/my-novel \ --chapter chapters/chapter-01.md \ --output reports/chapter-01-consistency.md # 简写 python3 scripts/check_consistency.py -d ./project -c chapter.md -o report.md ``` ## 参数说明 | 参数 | 必填 | 说明 | |------|------|------| | `--book-dir` / `-d` | ✅ | 小说项目目录路径 | | `--chapter` / `-c` | ✅ | 章节文件路径（相对于 book-dir） | | `--output` / `-o` | ❌ | 输出报告文件路径 | ## 项目目录结构 ``` projects/my-novel/ ├── characters/ # 角色档案（必需） │ ├── 主角.yml │ └── 配角.yml ├── chapters/ # 章节正文 │ └── chapter-01.md └── reports/ # 检查报告输出 └── chapter-01-consistency.md ``` ## 角色档案格式 (characters/*.yml) ```yaml name: 林风 aliases: - 林侦探 - 风哥 gender: 男 age: 35 features: - 黑色短发 - 灰色眼睛 - 左眉疤痕 occupation: 私家侦探 relationships: 苏雨：咖啡馆老板娘，朋友 background: 前刑警 ``` ## 输出报告格式 ```markdown # 一致性检测报告 **章节**: chapters/chapter-01.md **检测时间**: 2026-04-04 23:55:00 **问题数量**: 3 ## 检测结果 | 检测项 | 状态 | 问题数 | |--------|------|--------| | 角色名称 | ⚠️ 警告 | 1 | | 特征矛盾 | ✅ 通过 | 0 | | 时间线 | ⚠️ 警告 | 1 | | 地点矛盾 | ✅ 通过 | 0 | | 关系矛盾 | ✅ 通过 | 0 | ## 问题详情 ### 角色名称不一致 - "林峰" → 应为 "林风"（出现 2 次） ### 时间线混乱 - 第 5 段："第二天清晨" - 第 12 段："三天后的夜晚" - 建议：检查时间跨度是否合理 ## 建议 1. 统一使用 "林风" 作为角色名称 2. 核实时间线是否连贯 ``` ## 依赖 - Python 3.8+ - rich (终端渲染) - PyYAML (配置文件解析) 安装依赖： ```bash pip install -r scripts/requirements.txt ``` ## 与其他技能集成 ### 与 novel-writer 集成 ```bash # 1. 生成章节正文 python3 ../novel-writer/scripts/write_chapter.py \ --book-dir projects/my-novel \ --chapter 1 \ --output chapters/chapter-01.md # 2. 检查一致性 python3 scripts/check_consistency.py \ --book-dir projects/my-novel \ --chapter chapters/chapter-01.md \ --output reports/chapter-01-consistency.md ``` ### 与 quality-checker 集成 ```bash # 1. 质量检测 python3 ../quality-checker/scripts/check_quality.py \ --input chapters/chapter-01.md \ --output reports/chapter-01-quality.md # 2. 一致性检查 python3 scripts/check_consistency.py \ --book-dir projects/my-novel \ --chapter chapters/chapter-01.md \ --output reports/chapter-01-consistency.md ``` ## 注意事项 - 角色档案目录（characters/）为必需 - 支持 UTF-8 和 GBK 编码 - 时间线检测基于关键词识别，可能不完全准确 - 建议每章完成后立即进行一致性检查


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: igorganapolsky/legal-intake-agent (version 1.0.0)

--- name: legal-intake-conflict-check-agent version: 1.0.0 description: "Ultra-high-ticket intake agent for Law Firms. Qualifies leads, performs preliminary conflict-of-interest checks, and books consultations. Hardened with ThumbGate to prevent illegal legal advice or unauthorized practice of law (UPL)." author: "Igor Ganapolsky" tags: ["legal", "law-firm", "intake", "conflict-check", "thumbgate", "high-ticket"] price: 497 --- # Legal Intake & Conflict Check Agent with ThumbGate Safety ## What This Agent Does - Screens new potential clients (PNCs) 24/7 via Voice and Text. - Performs preliminary conflict checks against your "Adverse Parties" list in Google Sheets. - Qualifies leads based on Case Type, Statute of Limitations, and Budget. - Books paid or free consultations directly into Clio, MyCase, or Google Calendar. - Uses **ThumbGate** to ensure the AI NEVER provides legal advice or makes promises about case outcomes. ## Critical ThumbGate Rules - **UPL Block:** Physically block any response that begins with "You should..." or "Legally, you can..." or any variation of direct legal advice. - **No Outcome Promises:** Block any claim that a case is "a winner" or "worth $X" or "easy to win". - **Conflict Trigger:** If a PNC name matches an entry in the 'Adverse Parties' sheet, immediately block the agent and route to a senior partner. - **Statute Check:** Block booking a consultation if the incident date is past the calculated Statute of Limitations for the specific case type. ## Setup 1. Upload your 'Adverse Parties' and 'Statute of Limitations' sheets. 2. Link your legal CRM (via Make.com). 3. Load skill: `openclaw skill load legal-intake-agent`


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