Install
openclaw skills install macmini-knowledge-baseClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.
在 Mac Mini (M4) 上快速搭建本地知识库 + RAG 自然语言搜索系统。 适用场景: - 新 Mac 配置知识库:从零开始安装配置 Ollama、embedding模型、定时任务、OCR文档分析 - 遇到 PDF 提取乱码、定时任务超时、skill 加载失败等问题 - 想要建立每日自动分析文档 + 08:00发送摘要到飞书的流程 - 迁移或复现知识库:打包整个 knowledge 目录和配置到新电脑 本 skill 会引导完成:目录结构创建、依赖安装、脚本部署、定时任务注册、OpenClaw 配置。
openclaw skills install macmini-knowledge-base在 Mac Mini 上快速搭建本地知识库 + RAG 搜索系统。
cd ~/.openclaw/workspace/skills/knowledge-base-setup/scripts
bash setup.sh <飞书用户ID>
Step 1: 环境准备
brew install tesseract
pip3 install pytesseract pymupdf pdfplumber python-pptx
# 安装 Ollama: https://ollama.com/download
Step 2: 下载 embedding 模型
ollama pull nomic-embed-text
Step 3: 创建目录结构
mkdir -p ~/.openclaw/workspace/knowledge/.analysis/summaries/archives
mkdir -p ~/.openclaw/workspace/knowledge/temp_docs
mkdir -p ~/.openclaw/workspace/knowledge/"Macro Financials"
touch ~/.openclaw/workspace/knowledge/文章目录.md
Step 4: 部署脚本
cp ~/.openclaw/workspace/skills/knowledge-base-setup/scripts/*.py \
~/.openclaw/workspace/knowledge/.analysis/
cp ~/.openclaw/workspace/skills/knowledge-base-setup/scripts/generate_catalog.js \
~/.openclaw/workspace/knowledge/.analysis/
chmod +x ~/.openclaw/workspace/knowledge/.analysis/*.py
chmod +x ~/.openclaw/workspace/knowledge/.analysis/*.js
Step 5: 配置 OpenClaw
编辑 ~/.openclaw/openclaw.json,加入:
{
"models": {
"providers": {
"ollama": {
"baseUrl": "http://127.0.0.1:11434",
"api": "ollama",
"models": [
{"id": "nomic-embed-text", "name": "Nomic Embed Text"}
]
}
}
},
"agents": {
"defaults": {
"memorySearch": {
"provider": "ollama",
"model": "nomic-embed-text"
}
}
}
}
确保 tools 区块有:
"tools": {
"alsoAllow": ["exec", "process"]
}
然后重启:openclaw gateway restart
Step 6: 注册定时任务
# 22:00 分析任务
openclaw cron add \
--name "22:00分析新文档" \
--cron "0 22 * * *" \
--tz "Asia/Shanghai" \
--session isolated \
--timeout-seconds 600 \
--message "运行 run_analysis.py 和 generate_catalog.js" \
--announce --channel feishu --to "user:<飞书用户ID>"
# 08:00 发送任务
openclaw cron add \
--name "08:00发送文档摘要" \
--cron "0 8 * * *" \
--tz "Asia/Shanghai" \
--session isolated \
--timeout-seconds 120 \
--message "读取 summaries/ 目录发送摘要到飞书" \
--announce --channel feishu --to "user:<飞书用户ID>"
| 格式 | 提取方式 | 说明 |
|---|---|---|
| PDF(正常字体) | pdf-parse 直读 | 中文报告等正常文档 |
| PDF(乱码/图片型) | pymupdf 渲染 + tesseract OCR | 外资投行 PDF、自定义字体编码 |
| PPTX | python-pptx 读文字 | 幻灯片内容 |
| DOCX/XLSX | 占位(可扩展) | 待实现 |
| MD | 直接读文件 | Markdown 格式 |
Step 1: 50KB 快速预检(pdf-parse 前50KB)
↓
预检文本含关键词? → Yes → Step 2: 完整 pdf-parse
↓ No
Step 3: pymupdf 渲染前3页 + OCR(跳过无意义的完整解析)
为什么这样做:
中文(47个): 房产、房价、房地产、居民、消费、股市、经济、政策、利率、通胀、人民币、A股、美联储、PBOC、GDP、股票、资产、投资、债券、银行、PPI、CPI、PMI、M2、就业、失业、汽车、新能源、AI 等
英文(70+个): property、real estate、GDP、inflation、CPI、PPI、PMI、PBOC、Fed、consumer、economy、growth、housing、stock market、EV、AI 等
标签输出语言: 自动判断——英文内容匹配英文关键词输出英文标签,中文内容匹配中文关键词输出中文标签
knowledge/.analysis/.catalog_cache.jsonscp -r ~/.openclaw/workspace/knowledge user@new-mac:~/.openclaw/workspace/
| 问题 | 原因 | 解决 |
|---|---|---|
| PDF 提取乱码 | 自定义字体无 ToUnicode | pymupdf + tesseract OCR(已内置) |
| 定时任务超时 | 默认 120s 太短 | --timeout-seconds 600 |
| 飞书无 exec 工具 | tools 策略限制 | 添加 alsoAllow: [exec, process] |
| skill 加载失败 | 导出名称错误 | CodeChunker → FileChunker |
| BGE-M3 卡顿 | 16GB 内存不足 | 继续用 nomic-embed-text |
| brew install ollama 慢 | 网络问题 | 直接下载 dmg 安装 |
| 内容 | 路径 |
|---|---|
| Skill 目录 | ~/.openclaw/workspace/skills/knowledge-base-setup/ |
| 知识库 | ~/.openclaw/workspace/knowledge/ |
| 分析脚本 | ~/.openclaw/workspace/knowledge/.analysis/ |
| 目录缓存 | ~/.openclaw/workspace/knowledge/.analysis/.catalog_cache.json |
| 摘要输出 | ~/.openclaw/workspace/knowledge/.analysis/summaries/ |
| 文章目录 | ~/.openclaw/workspace/knowledge/文章目录.md |
| OpenClaw 配置 | ~/.openclaw/openclaw.json |