Session2vault
Skill okiewafi/session2vault
An agent skill to transform raw AI conversations into structured, Obsidian-ready knowledge vaults folder with Markdown and Canvas output.
npx -y skills add okiewafi/session2vaultAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Turn raw AI conversations, session logs, and discussion transcripts into Obsidian-ready knowledge folders. Use this skill when the user wants to organize a session into structured vault assets such as index notes, subtopic notes, and Canvas maps. This skill focuses on session-to-vault workflow orchestration and packaging, not on general-purpose Obsidian Markdown or Canvas authoring. Default output is a notes-mode folder; use summary mode only when the user explicitly wants a quick overview.
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
4.2 KB, as published. Nobody here has run it
session2vault — AI 對話知識工作流 Skill
目錄
模式說明
| 模式 | 觸發情境 | 輸出 |
|---|---|---|
notes(預設) | 整理筆記、整理成 .md、做成 canvas、做成畫布、Obsidian 筆記 | 知識資料夾(index + 子主題 + .canvas) |
summary | 總結、摘要、快速視覺化 | 單一 .canvas |
預設行為:除非使用者明確說「總結」或「摘要」,否則一律執行 notes 模式。
路由邏輯
收到使用者請求後:
判斷模式
- 使用者說「總結」、「摘要」、「快速視覺化」→ summary 模式
- 其他所有情況 → notes 模式
Notes 模式執行順序
1. report:session → 知識資料夾(index.md + 子主題筆記)
載入 references/report.md
2. link:每份筆記補上 wiki links + tags + frontmatter
載入 references/link.md
3. canvas:生成 .canvas 放入資料夾
載入 references/canvas.md
呼叫 scripts/canvas_builder.py
MUST:canvas 之前必須先完成 report。不得跳過 report 直接生成 canvas。
Summary 模式執行順序
1. 從輸入內容直接抽取概念
2. 呼叫 scripts/canvas_builder.py 生成 .canvas
載入 references/canvas.md(summary 段落)
輸出規格
Notes 模式輸出結構
YYYY-MM-DD_主題名稱/
├── index.md ← 索引筆記(hub)
├── 子主題A.md
├── 子主題B.md
├── 子主題C.md
└── 主題名稱.canvas
命名規則:資料夾與檔名一律無空格,使用底線分隔。
Summary 模式輸出
單一 .canvas 檔案,無資料夾。
所有 .md 輸出規格
- 語言:繁體中文為主,技術詞彙保留英文
- frontmatter:依
references/frontmatter-spec.md規格 - wiki links:
[[概念名稱]]格式 - tags:YAML frontmatter 的
tags:欄位
腳本使用方式
安裝依賴(使用 uv):
uv sync
scripts/frontmatter.py
LLM 呼叫此腳本來生成 frontmatter 字串。
uv run python scripts/frontmatter.py \
--type report \
--topic 主題名稱 \
--tags "obsidian,report,session2vault" \
--source "YYYY-MM-DD session" \
--related "[[index]]" "[[子主題A]]"
scripts/canvas_builder.py
LLM 呼叫此腳本生成 .canvas 檔案。
Notes 模式呼叫範例(file 節點):
uv run python scripts/canvas_builder.py \
--layout center \
--nodes '[
{"label":"index","type":"file","file":"YYYY-MM-DD_主題/index.md"},
{"label":"子主題A","type":"file","file":"YYYY-MM-DD_主題/子主題A.md"},
{"label":"子主題B","type":"file","file":"YYYY-MM-DD_主題/子主題B.md"}
]' \
--edges '[
{"from":"index","to":"子主題A","label":"包含"},
{"from":"index","to":"子主題B","label":"包含"}
]' \
--output "YYYY-MM-DD_主題/主題名稱.canvas"
Summary 模式呼叫範例(text 節點):
uv run python scripts/canvas_builder.py \
--layout center \
--nodes '[
{"label":"核心主題","type":"text"},
{"label":"概念A","type":"text"}
]' \
--edges '[{"from":"核心主題","to":"概念A","label":"包含"}]' \
--output "主題名稱_summary.canvas"
版面類型:center(中心放射)、flow(左到右流程)、hierarchy(上下階層)、compare(左右比較)、cluster(群組聚類)