Install
openclaw skills install @thcjp/grain-crawler-freeopenclaw skills install @thcjp/grain-crawler-free本 Skill 帮助 Agent 基于本地 Granola 归档数据完成笔记检索与详情查看。核心理念是"本地优先":先用本地缓存响应查询,仅在数据过期或用户明确要求时才触发同步。免费版聚焦个人用户"快速查到会议要点"的场景,提供搜索、详情、新鲜度三大基础能力。
| 能力 | 说明 | 免费版支持 |
|---|---|---|
| 本地优先检索 | 先用本地归档响应,避免联网 | 是 |
| 笔记搜索 | 关键词检索笔记列表 | 是 |
| 笔记详情 | 读取单条笔记完整内容 | 是 |
| 新鲜度检查 | 检测归档是否过期 | 是 |
| 结构化输出 | JSON 格式输出 | 是 |
| 数据同步 | 从云端拉取最新归档 | 否(专业版) |
| SQL 查询 | 跨笔记 SQL 统计 | 否(专业版) |
| 转录稿读取 | 读取会议转录稿 | 否(专业版) |
| 面板数据 | 读取侧边面板内容 | 否(专业版) |
| 批量导出 | 批量导出笔记 | 否(专业版) |
用input_params参数进行配置。
输入: 用户提供核心功能执行所需的指令和必要参数。 处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作用config_options参数进行配置。
输入: 用户提供参数配置与调用所需的指令和必要参数。 处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志。
config_options参数,支持修改/重置/导入操作用output_format参数进行配置。
输入: 用户提供结果处理与输出所需的指令和必要参数。 处理: 解析结果处理与输出的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回结果处理与输出的响应数据,包含状态码、结果和日志。
output_format参数,支持导出/保存/转换操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:Granola、归档检索、支持笔记搜索、详情查看、核心能力、基于本地归档数据、避免频繁联网、笔记关键词搜索与、详情读取、归档新鲜度检查、提示是否需要刷新、Agent、后续格式化等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。以下场景归档检索(免费版)不适合处理:
需要数据分析、报表生成、统计洞察、数据可视化时使用。不适用于非本工具能力范围的需求。
上手时间:< 60 秒。本 Skill 假设本地已存在 Granola 归档数据。
grain-crawler doctor --json
grain-crawler status --json
grain-crawler search "季度规划"
grain-crawler note get <note-id>
搜索返回 JSON 数组,每个元素包含笔记 ID、标题、更新时间与摘要片段。
| 命令 | 用途 | 示例 |
|---|---|---|
doctor | 环境与健康检查 | grain-crawler doctor --json |
status | 归档新鲜度状态 | grain-crawler status --json |
search | 关键词搜索 | grain-crawler search "关键词" |
note get | 读取单条笔记 | grain-crawler note get <id> |
| 字段 | 类型 | 说明 |
|---|---|---|
note_id | string | 笔记唯一标识 |
title | string | 笔记标题 |
updated_at | string | 最后更新时间(ISO 8601) |
summary | string | 内容摘要片段 |
source | string | 数据来源(local-cache / desktop-cache) |
[
{
"note_id": "n_2026_0718_001",
"title": "季度规划评审会议",
"updated_at": "2026-07-18T10:30:00Z",
"summary": "讨论 Q3 季度目标与资源分配...",
"source": "desktop-cache"
}
]
响应中
source字段帮助判断数据新鲜度:desktop-cache表示来自桌面端缓存,local-cache表示来自本地归档。
doctor 显示数据过期超过 24 小时时提示用户刷新。status 确认数据新鲜度,并在回答中标注数据截止时间。local-cache 还是 desktop-cache,让用户了解数据新鲜度可信度。status 确认覆盖范围,避免遗漏过期数据。A:(1) 确认本地已安装 Granola 客户端并登录;(2) 至少完成一次桌面端缓存生成;(3) 免费版不支持主动同步,需在 Granola 桌面端手动刷新后重试。
A:(1) 检查关键词拼写与大小写;(2) 尝试用笔记标题中的核心词搜索;(3) 本地索引可能未更新,建议在桌面端重新打开笔记触发索引刷新。
A:(1) 确认 ID 从 search 结果中复制完整;(2) 笔记可能已被删除,重新搜索获取最新列表。
A:status --json 返回 last_sync 字段,与当前时间差超过 24 小时视为"可能过期"。免费版会在回答中提示"数据可能非最新,建议刷新"。
A:免费版仅支持笔记正文检索。转录稿与面板数据需使用专业版。
A:缓存路径由 Granola 桌面端决定,通常位于用户数据目录。doctor --json 会输出缓存路径与大小,可用于排查空间问题。
A:免费版仅支持本地单用户检索。多人共享需使用专业版的云端同步与权限管理。
A:免费版需逐个执行 search 命令。如需批量检索与结果合并,请使用专业版。
| 错误场景(现象) | 可能原因 | 解决步骤 | 优先级 |
|---|---|---|---|
| 归档为空 | 未登录 / 未生成缓存 | 桌面端登录并打开笔记生成缓存 | P1 |
| 搜索无结果 | 关键词不匹配 / 索引未更新 | 调整关键词,桌面端重新打开笔记 | P2 |
| note get 报错 | ID 不完整或已删除 | 重新搜索获取最新 ID | P2 |
| 数据过期提示 | last_sync 超过 24 小时 | 桌面端手动刷新后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 | P3 |
| doctor 异常 | 桌面端未运行 | 启动 Granola 桌面端 | P1 |
本免费体验版限制以下高级功能:
解锁全部功能请使用专业版:grain-crawler-pro
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由 Agent 平台内置 LLM 提供 |
| Granola 桌面端 | 应用 | 必需 | 官方渠道下载安装,用于生成本地缓存 |
| grain-crawler CLI | 命令行工具 | 必需 | 随 Skill 附带或按文档安装 |
| Python 标准库 | 运行时 | 必需 | Python 自带(json / subprocess) |