用途
yuque-lakebook-export 用于将语雀(Yuque)知识库、语雀文档或 .lakebook 文件转换为本地 Markdown 文件夹,输出结果可直接用于 Obsidian 迁移或内容清理。它支持单个文件导出和批量导出,并针对常见迁移问题提供处理,包括图片缺失、裁剪图片不匹配、内部链接失效、文件夹层级错误以及 Markdown 表格渲染问题。
主要能力
- 导出单个或多个语雀 .lakebook 文件。
- 将语雀知识库转换为 Markdown。
- 将语雀内容迁移到 Obsidian。
- 修复语雀导出中与图片、裁剪图片、内部链接、层级结构或表格相关的问题。
- 处理部分语雀导出在文档正文开头包含
<!doctype lake>的情况,避免在 Markdown 中渲染出错误的lake##前缀。
使用方式
该技能要求非交互式执行,以便代理能够确定性地运行。在执行任何非交互式导出之前,代理必须与用户确认输出根目录,不得代替用户选择输出目录。如果用户未提供输出目录,需先提出简洁问题并等待用户回答后再运行导出命令。
依赖管理统一使用 uv,不在工作目录中创建临时 .venv 或类似的任务本地环境。运行任何 uv 命令前,先检查环境中是否可用 uv。如果 uv 未安装或不在 PATH 中,代理必须先向用户确认后再安装,不得静默安装。
在运行 uv sync 或 uv run python scripts/cli.py ... 之前,必须先切换到已安装技能的工具目录,即包含 SKILL.md、pyproject.toml、uv.lock 和 scripts/ 的目录。不要直接从 .lakebook 源目录、输出目录或用户当前工作区根目录运行这些命令。
代理执行入口:
uv run python scripts/cli.py
首次使用前同步依赖:
uv sync
推荐命令顺序:
cd /path/to/installed-skill-root
uv sync
uv run python scripts/cli.py ...
标准单文件执行:
uv run python scripts/cli.py -l "/path/to/your_file.lakebook" -o "/target/root"
标准批量执行:
uv run python scripts/cli.py -l "/path/to/your_file_1.lakebook" "/path/to/your_file_2.lakebook" -o "/target/root"
虽然 scripts/cli.py 仍支持交互式终端选择供人工使用,但代理不得依赖交互模式,因为代理无法可靠捕获终端交互状态。始终显式传入 -l 和 -o 参数。
不要在当前工作目录、用户下载目录或任何任务目录中手动创建临时虚拟环境;依赖应由 uv 从技能工具目录进行管理。
适用场景
当用户提出以下需求时使用该技能:
- 导出一个或多个语雀 .lakebook 文件。
- 将语雀知识库转换为 Markdown。
- 将语雀内容迁移到 Obsidian。
- 修复语雀导出中与图片、裁剪图片、内部链接、层级结构或表格相关的问题。
限制
以下情况不要使用该技能:
- 不涉及语雀或 .lakebook 的通用 Markdown 编辑。
- 网站抓取任务。
- 已经来自非语雀格式的导出任务。
导出后验证
导出完成后,验证以下内容:
- .md 文件存在。
- 同级的 .assets 文件夹存在。
- 内部链接为相对 Markdown 路径。
- 图片在 Obsidian 中可渲染。
- 导出的文档不以错误的
lake##前缀开头。
如果导出失败,检查写在输入 .lakebook 文件旁边的批量日志。
有关详细行为、故障排除和输出规则,请阅读 references/usage.md。