Skills/ClawHub/macmini-knowledge-base

macmini-knowledge-base@1.4.11

CAUTION

Publisher claims: "⚠️ **本 skill 包含以下高危能力,使用前请仔细阅读 SKILL.md 顶部「⚠️ CAPABILITIES & RISKS」章节**: - Shell 执行 + 文件读写 + 安装 Homebrew 包(按版本清单校验)+ 下载 Ollama 模型 - 修改 OpenClaw 配置 + 注册持久 cron 任务 + 飞书 webhook 推送 在 Mac Mini (M4) 上快速搭建本地知识库 + RAG 自然语言搜索系统。 适用场景: - 新 Mac 配置知识库:从零开始安装配置 Ollama、embedding模型、定时任务、文档解析 - 遇到 PDF 提取乱码、定时任务超时、skill 加载失败等问题 - 想要建立每日自动分析文档 + 08:00发送摘要到飞书的流程 - 迁移或复现知识库:打包整个 knowledge 目录和配置到新电脑 - **v1.4 新增**:CMap 残缺度自检(不预设来源)+ 50万字完整提取 + OCR fallback 到 .doc - **v1.4.9 新增**:clean_noise 覆盖全部提取路径 - **修复**:kreuzberg 主路径(90% PDF 走这条)漏调 clean_noise → 投行研报 disclaimer 噪音没被清理 - **修复**:extract_doc_text / extract_doc_via_antiword / extract_docx / extract_xlsx / extract_pptx / OCR 路径全部补齐 - 现在 9 个提取路径 100% 经过 clean_noise - **v1.4.8 新增**:4 项健壮性修复 1. **MuPDF/kreuzberg/OCR 异常不再静默吞掉**——记录到 stderr,保留错误信息 2. **[:3000] 硬截断修复**——使用 MAX_EXTRACT_LEN (500,000 字符),长文档完整提取 3. **错误重试机制**——retry_with_backoff(2 次重试,指数退避 1s/2s) 4. **clean_noise 噪音清理**——3 阶段处理(行级 + span-based + disclaimer 公式专项),删除投行研报的"in whole or in part, to train or finetune"等版权/免责噪音 本 skill 会引导完成:目录结构创建、依赖安装、脚本部署、定时任务注册、OpenClaw 配置。 - **v1.4.11 新增**:失败不再被记为「已分析」 - **修复**:提取失败(异常 / 转换失败)时不再写入 `analyzed_files` → 失败文档不再永久丢失 - **修复**:待处理队列每次运行都按全量扫描重建 → 新到货文档不再漏进队列 - **新增**:失败文档进入可重试队列,连续失败 3 次自动隔离(避免无限重试) - **新增**:运行结束输出 `[STATS] success= / failure= / queue=` 机器可读统计 **v1.4.8 行为变化**: - PDF 提取失败时不再静默 return,错误信息写入 stderr(可查 /var/log 或 journal) - 长文档不再被截断到 3000 字符 - 临时性网络/IO 错误会自动重试 2 次 - 摘要文件不再包含"in whole or in part, to train or finetune..."等法律噪音 ⚠️ **重要:能力范围** 本 skill 不只是「搭建」,还包含: - 批量 OCR 修复(扫描 summaries/archives 找乱码 + 重新提取) - 目录归档清理(移动重复/孤儿文件到 .trash/) - 自动定时任务(23:00 分析 + 06:00 飞书推送) 使用前请仔细评估批量修改风险。" Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry ClawHubPublisher seairteng · joined 13 days agoInstalls 1,752Last detonated 1 h ago

Is [email protected] safe to install?

KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario) on 2026-11-05 and scored it 69/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Direct script execution from GitHub raw URL; Outbound HTTP to raw IP address. Summary: no network, touches nothing outside the project, writes no memory.

Behavior trace

Honeypot run · 0 s · 1 scenarios · 0 deviations
t+CategoryObserved action
0.0sprocessexec /usr/bin/cat
0.0sprocessexited 1:
0.0sprocessscript backend runs setup only
0.0sprocessscript backend runs setup only

Static findings

MEDIUM
Python subprocess execution detectedSKILL.md:438 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
HIGH
Direct script execution from GitHub raw URLscripts/setup.sh:107 · Direct script execution from GitHub raw URL — unverified code sourceFix: Pin versions and sources; vendor anything fetched at install time.
AST06
HIGH
Outbound HTTP to raw IP addressSKILL.md:197 · Outbound HTTP to raw IP address — may bypass domain-based monitoringFix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.
AST07
MEDIUM
URL using raw IP addressSKILL.md:197 · URL using raw IP address — may bypass domain-based filteringFix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.
AST07
MEDIUM
File permission modification commandscripts/setup.sh:288 · File permission modification command — agent changes file ownership/permissionsFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05
MEDIUM
Python subprocess execution detectedscripts/utils.py:357 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/utils.py:569 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/utils.py:521 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detectedscripts/utils.py:315 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Unicode escape sequence detectedscripts/run_analysis.py:171 · Unicode escape sequence detected — may contain obfuscated payloadsFix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
Unicode escape sequence detectedscripts/run_analysis.py:173 · Unicode escape sequence detected — may contain obfuscated payloadsFix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own.
AST07
MEDIUM
File permission modification commandscripts/setup.sh:290 · File permission modification command — agent changes file ownership/permissionsFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05
MEDIUM
Python subprocess execution detectedscripts/utils.py:328 · Python subprocess execution detectedFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
File permission modification commandSKILL.md:186 · File permission modification command — agent changes file ownership/permissionsFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05
MEDIUM
File permission modification commandSKILL.md:551 · File permission modification command — agent changes file ownership/permissionsFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05
MEDIUM
File permission modification commandscripts/utils.py:233 · File permission modification command — agent changes file ownership/permissionsFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.
AST05
MEDIUM
Process kill commandscripts/utils.py:339 · Process kill command — agent can terminate processesFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05
MEDIUM
Process kill commandscripts/utils.py:331 · Process kill command — agent can terminate processesFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.
AST05

What would make this Verified

11 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%
  1. Unclaimed publisher≈ +8 on the totalClaim seairteng: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
  2. Direct script execution from GitHub raw URL≈ +4 on the totalPin versions and sources; vendor anything fetched at install time.
  3. Outbound HTTP to raw IP address≈ +4 on the totalReplace encoded or assembled strings with plain literals and remove undeclared network calls.
  4. New publisher≈ +3 on the totalTime clears this on its own after 14 and 30 days. Claiming the handle (+50) is the fastest way past it.
  5. Python subprocess execution detected≈ +2 on the totalBuild commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
  6. URL using raw IP address≈ +2 on the totalReplace encoded or assembled strings with plain literals and remove undeclared network calls.
Publish a new version to ClawHub, then queue it here. Not your skill? Claim the handle to get verdict changes by email.Claim seairteng