Token导航 LogoToken导航

Agent Skill · 研究检索

siyuan(siyuan 文档)

siyuan 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

siyuan 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为需要联网;许可证信息还不明确,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 63,254。

总安装 318周安装 13GitHub Stars 12下载 102核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:siyuan(siyuan 文档)
来源仓库:https://github.com/zhiluop/siyuan-skills
仓库路径:skills/siyuan
安装命令:
npx skills add https://github.com/zhiluop/siyuan-skills --skill siyuan
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/zhiluop/siyuan-skills --skill siyuan

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

siyuan 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。它支持按关键词、任务场景或来源线索进行信息检索与筛选,适用于研究、内容发现等场景。

通过 npx skills add 命令从指定 GitHub 仓库安装,具体用法可参考原始 README 文件。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写操作。siyuan 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

来源仓库内路径:skills/siyuan

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/zhiluop/siyuan-skills --skill siyuan;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

siyuan 怎么安装?

在终端执行 npx skills add https://github.com/zhiluop/siyuan-skills --skill siyuan。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

siyuan 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

siyuan 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

siyuan 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

siyuan 用的人多吗?

公开数据是累计安装 318 次,近一周安装 13 次,下载 102 次,GitHub 12 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

siyuan 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
siyuan

siyuan 文档 · 本页

31812需要联网未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

思源笔记技能指南

思源笔记是一款基于内容块的隐私优先知识管理工具。本技能提供了思源笔记的核心操作指南,涵盖内容块管理、模板开发、API交互和闪卡系统等功能模块。

核心概念

  • 内容块(Block):思源笔记的基本单位,每个块通过全局唯一 ID 标识。ID 由时间戳和 7 位随机字符组成,形如 202008250000-a1b2c3d。
  • 默认 API 端口:http://127.0.0.1:6806
  • 数据存储:SQLite 数据库,主表为 blocks

功能模块

模块描述参考文档
内容块操作内容块的创建、查询、修改和删除,以及块引用和嵌入块的使用block.md
模板开发模板片段的创建和使用,支持动态内容生成和变量替换template.md
API 交互思源笔记 API 的调用方法,包括 RESTful 接口和 WebSocketapi.md
闪卡系统间隔重复记忆系统的使用,卡片创建、复习和管理flashcard.md

快速参考

块类型代码(用于 SQL 查询)

代码类型
d文档块
h标题块
l列表块(包含有序/无序/任务)
i列表项块
b引述块
callout提示块
s超级块
p段落块
c代码块
m公式块
t表格块
av数据库块
query_embed嵌入块
子类型(subtype)
  • 列表块/列表项块:o(有序)、u(无序)、t(任务)
  • 标题块:h1~h6

常用语法

块引用
((块ID "锚文本"))
((块ID))
嵌入块
{{SELECT * FROM blocks WHERE content LIKE '%关键词%'}}
API 调用
POST http://127.0.0.1:6806/api/xxx
Content-Type: application/json

{
  "key": "value"
}

API 示例

获取块 Kramdown 源码
curl -X POST http://127.0.0.1:6806/api/block/getBlockKramdown \
  -H "Content-Type: application/json" \
  -d '{"id": "202008250000-a1b2c3d"}'
SQL 查询
curl -X POST http://127.0.0.1:6806/api/query/sql \
  -H "Content-Type: application/json" \
  -d '{"stmt": "SELECT * FROM blocks WHERE type=\"d\""}'

模板示例

注意:思源笔记模板使用 .action{action} 语法(而非 {{action}})来避免语法冲突。

简单日期模板
今天是 `.action{ now | date "2006-01-02" }`。

# `.action{ .title }`

文档ID:`.action{ .id }`
查询块模板
.action{ $blocks := queryBlocks "SELECT * FROM blocks WHERE content LIKE '?' LIMIT ?" "%关键词%" "5" }
.action{ range $blocks }
- ((`.action{ .id }`))
.action{ end }
带条件的模板
.action{ $before := (div (now.Sub (toDate "2006-01-02" "2020-02-19")).Hours 24) }
距离 2020-02-19 已经过去 `.action{ $before }` 天

经验教训与最佳实践

API 调用注意事项

1. API 调用与输出是分离的

问题:脚本在输出成功消息时崩溃,但 API 调用已经完成,导致重复创建文档。

原因:

# API 调用成功
result = self._request("/api/filetree/createDocWithMd", data)

# 输出崩溃(但这不影响前面的 API 调用)
print(f"✅ 文档创建成功!")  # Windows GBK 编码无法显示 emoji

解决方案:

  • API 调用成功后立即返回,将输出放在 try-catch 中
  • 或者将 API 调用和输出分离,确保 API 操作完成后再处理输出
  • 在重复操作前先检查是否已存在
2. 跨平台编码问题

问题:Windows 控制台默认使用 GBK 编码,无法显示某些字符(如 emoji)。

解决方案:

# 方法 1:使用 UTF-8 编码运行脚本
python -X utf8 script.py

# 方法 2:在代码中设置输出编码
import sys
import io
if sys.platform == 'win32':
    sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
    sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8')

# 方法 3:避免使用特殊字符
print("[成功] 文档创建成功!")  # 而不是 ✅
3. 文档路径的正确使用

问题:删除文档时使用了错误的路径格式。

关键区别:

  • 系统路径:/20260125135312-pkzku0u.sy (用于 removeDoc)
  • 人类可读路径:/测试文档-20260125-135311 (用于显示)

正确用法:

# 错误 - 使用人类可读路径
api.removeDoc(notebook_id, '/测试文档-20260125-135311')

# 正确 - 使用系统路径(.sy 文件)
api.removeDoc(notebook_id, '/20260125135312-pkzku0u.sy')

# 获取系统路径的方法
query = f"SELECT path FROM blocks WHERE id = '{doc_id}'"
result = api.query_sql(query)
system_path = result[0]['path']  # /20260125135312-pkzku0u.sy
4. API 端点验证

问题:使用了不存在的 API 端点(如 /api/block/getBlockInfo),导致请求失败。

解决方案:

  • 在使用 API 前,参考官方文档验证端点是否存在
  • 常见错误端点:

- ❌ /api/block/getBlockInfo → ✅ /api/block/getBlockKramdown - ❌ /api/filetree/getDoc → ✅ 使用 SQL 查询获取文档内容 - ❌ /api/search/searchBlock → ✅ 使用 /api/query/sql 执行搜索

5. 避免重复操作

问题:由于脚本崩溃或重复运行,导致创建重复文档。

解决方案:

def ensure_doc_exists(notebook_id, path, markdown_content):
    """确保文档存在,不存在则创建"""
    # 先检查是否存在
    query = f"""
    SELECT id, content
    FROM blocks
    WHERE box = '{notebook_id}'
    AND hpath = '{path}'
    AND type = 'd'
    """
    result = api.query_sql(query)

    if result:
        doc_id = result[0]['id']
        print(f"文档已存在: {path} (ID: {doc_id})")
        return doc_id
    else:
        return api.create_doc(notebook_id, path, markdown_content)

Markdown 图片格式规范

重要:思源笔记中的图片必须使用标准 Markdown 格式 ![alt](url)

正确格式 ✅
![图片说明](https://example.com/image.jpg)
![封面图](https://mmbiz.qpic.cn/xxx/0?wx_fmt=jpeg)
![本地图片](assets/image.png)
错误格式 ❌
!图片 https://example.com/image.jpg
图片:https://example.com/image.jpg
<img src="https://example.com/image.jpg">
图片 URL 类型
类型示例说明
网络图片https://example.com/img.jpg直接使用 URL,无需下载
微信图片https://mmbiz.qpic.cn/...使用原始 URL
本地图片assets/image.png相对于文档的本地路径

注意:不要下载图片后上传,直接使用原始 URL 链接即可。

修复错误格式的图片

如果图片格式错误,使用以下方法修复:

# 1. 查询包含图片的块
query = f"SELECT id, content FROM blocks WHERE content LIKE '%http%' AND type='p'"
result = api.query_sql(query)

# 2. 找到格式错误的图片并修复
for block in result:
    content = block['content']
    if 'mmbiz.qpic.cn' in content or 'example.com' in content:
        # 提取URL(假设格式为 "文本 URL")
        url = content.split()[-1] if ' ' in content else content
        # 转换为标准格式
        new_content = f'![图片]({url})'
        # 更新块
        api.update_block(block['id'], new_content)

测试与调试

推荐的测试流程
  1. 先测试连接:列出笔记本验证 API 连接
  2. 使用测试笔记本:在专门的测试笔记本中操作
  3. 创建临时文档:使用带时间戳的文档名
  4. 验证结果:查询数据库确认操作成功
  5. 清理测试数据:测试完成后删除临时文档
调试技巧
# 1. 保存 API 响应到文件以便检查
with open('debug_response.json', 'w', encoding='utf-8') as f:
    json.dump(result, f, ensure_ascii=False, indent=2)

# 2. 使用 SQL 查询验证数据状态
query = "SELECT * FROM blocks WHERE id = 'xxx' ORDER BY created DESC LIMIT 5"

# 3. 记录操作日志
import logging
logging.basicConfig(filename='siyuan_api.log', level=logging.DEBUG)

平台分布

Codex

37.03%
按下载量换算38

Claude

30.45%
按下载量换算31

Cursor

18.61%
按下载量换算19

Gemini CLI

11.06%
按下载量换算11

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills