{
  "path": {
    "schema_version": "1.0.0",
    "path_id": "obsidian-knowledge-base-setup",
    "path_version": 1,
    "status": "needs_retest",
    "title": "Loose notes to a maintainable Obsidian knowledge base",
    "short_title": "Notes → Obsidian vault",
    "summary": "Use the Obsidian skills pack to define Markdown, Bases, Canvas, and CLI-compatible structures, then verify links and classification on a real desktop vault.",
    "outcome": "A transformed vault with a documented information architecture, reusable templates, valid links, and an audit report.",
    "match_terms": [
      {
        "term": "obsidian",
        "weight": 10
      },
      {
        "term": "knowledge base",
        "weight": 8
      },
      {
        "term": "vault",
        "weight": 7
      },
      {
        "term": "organize notes",
        "weight": 7
      },
      {
        "term": "second brain",
        "weight": 7
      },
      {
        "term": "personal knowledge management",
        "weight": 8
      },
      {
        "term": "pkm",
        "weight": 7
      },
      {
        "term": "markdown vault",
        "weight": 8
      },
      {
        "term": "organize markdown",
        "weight": 7
      },
      {
        "term": "notes",
        "weight": 3
      },
      {
        "term": "知识库",
        "weight": 8
      },
      {
        "term": "第二大脑",
        "weight": 8
      },
      {
        "term": "知识管理",
        "weight": 8
      },
      {
        "term": "笔记库",
        "weight": 7
      },
      {
        "term": "obsidian库",
        "weight": 9
      },
      {
        "term": "markdown笔记",
        "weight": 7
      },
      {
        "term": "笔记",
        "weight": 5
      },
      {
        "term": "整理笔记",
        "weight": 8
      },
      {
        "term": "双链",
        "weight": 6
      }
    ],
    "supported_agents": [
      "claude-code"
    ],
    "starting_points": [
      "files"
    ],
    "priority_fit": {
      "best-quality": 4,
      "fastest": 2,
      "leanest": 4,
      "most-private": 5
    },
    "required_inputs": [
      "A copy of the source notes with secrets removed",
      "Desired top-level topics and naming rules",
      "Target Obsidian desktop environment"
    ],
    "outputs": [
      "Vault information architecture",
      "Markdown and property templates",
      "Transformed notes and links",
      "Broken-link, duplicate, and classification report"
    ],
    "required_output_types": [
      "application/zip",
      "text/markdown"
    ],
    "nodes": [
      {
        "node_id": "vault-contract",
        "node_type": "human",
        "stage": "Freeze the vault contract",
        "tested_ref": null,
        "purpose": "Prevent an agent from inventing a taxonomy while moving real notes.",
        "input": "Anonymized note sample, desired topics, naming rules, and exclusions",
        "output": "vault-contract.md",
        "verification": "unverified",
        "instruction": "Define allowed folders, properties, link conventions, templates, duplicate policy, and files the transformation must never touch.",
        "human_confirmation": true
      },
      {
        "node_id": "vault-transformation",
        "node_type": "skill",
        "stage": "Transform with Obsidian conventions",
        "tested_ref": "obsidian-skills",
        "purpose": "Apply the pack's Markdown, Bases, JSON Canvas, Defuddle, and CLI conventions to the approved contract.",
        "input": "vault-contract.md and a disposable copy of the source notes",
        "output": "transformed-vault/",
        "verification": "install_verified",
        "instruction": "Work only in the disposable copy. Use instruction-only skills first; invoke desktop-backed CLI actions only on the approved macOS test machine.",
        "human_confirmation": true
      },
      {
        "node_id": "vault-verification",
        "node_type": "verify",
        "stage": "Verify content integrity",
        "tested_ref": null,
        "purpose": "Detect lost notes, broken links, duplicates, invalid properties, and incorrect classification before replacement of any real vault.",
        "input": "Source note manifest and transformed-vault/",
        "output": "vault-verification.md",
        "verification": "unverified",
        "instruction": "Compare file counts and hashes, validate links and properties, list duplicates and unclassified notes, and require a human privacy and misclassification review.",
        "human_confirmation": true
      }
    ],
    "evidence_refs": [
      "obsidian-install-2026-07-23"
    ],
    "known_limits": [
      "Only installation and package structure are verified today.",
      "The Obsidian CLI requires a desktop app and was not run in the headless environment.",
      "No real vault transformation, privacy review, or link-quality measurement has been completed.",
      "This path must run on a disposable vault copy until the end-to-end test passes."
    ],
    "next_test": "Create 20 to 30 anonymous notes with a frozen expected structure, run the complete workflow on macOS with Obsidian, and publish before and after vaults plus loss, duplicate, link, and classification metrics."
  },
  "evidence": [
    {
      "schema_version": "1.0.0",
      "evidence_id": "obsidian-install-2026-07-23",
      "evidence_type": "install-run",
      "date": "2026-07-23",
      "title": "kepano/obsidian-skills five-skill pack installed and inspected",
      "scope": "All five skills installed successfully. The markdown, bases, JSON Canvas, Defuddle, and Obsidian CLI package structures were inspected.",
      "not_verified": "A desktop-backed Obsidian CLI run, a real note migration, link-quality measurement, privacy review, or an end-to-end transformed vault.",
      "source_ref": "obsidian-skills",
      "source_url": "/skills/obsidian/",
      "environment": {
        "os": "Linux 6.18.5 cloud sandbox",
        "node": "v22.22.2"
      },
      "metrics": [
        "Five skills installed in 2.0 seconds",
        "The desktop-dependent Obsidian CLI was not available in the headless test environment"
      ],
      "artifacts": [
        {
          "label": "Published package test record",
          "type": "record",
          "path": "/skills/obsidian/",
          "alt": "Open the Obsidian skills installation test"
        }
      ]
    }
  ],
  "tested_skills": {
    "obsidian-skills": {
      "skill": "obsidian-skills (5-skill pack)",
      "repo": "kepano/obsidian-skills",
      "stars": 43034,
      "stars_date": "2026-07-23",
      "commit_hash": "a1dc48e",
      "author_note": "Maintained by kepano (Steph Ango, Obsidian CEO) — semi-official. Biggest-star item in first batch.",
      "install_cmd": "npx skills add https://github.com/kepano/obsidian-skills -a claude-code -s '*' -y",
      "install_alt": "/plugin marketplace add kepano/obsidian-skills (Claude Code plugin marketplace path)",
      "env": {
        "os": "Linux 6.18.5 (cloud sandbox)",
        "node": "v22.22.2"
      },
      "clone_time_sec": 1.2,
      "install_time_sec": 2.0,
      "failures": [],
      "verification_level": "install_verified",
      "verified_scope": "All five skills installed and their package structures were inspected.",
      "not_verified": "A desktop-backed obsidian-cli workflow or an end-to-end vault transformation.",
      "works_caveat": "obsidian-cli skill drives the Obsidian CLI which needs the desktop app (not present on a headless Linux box) — install verified, end-use needs user's machine. The other four (markdown/bases/json-canvas/defuddle) are instruction-only and fully usable anywhere.",
      "min_test": {
        "what": "install all 5 skills, inspect structure",
        "result": "5 skills land in .claude/skills/: obsidian-cli, obsidian-bases, json-canvas, defuddle, obsidian-markdown",
        "time_sec": 2.0
      },
      "notes": "README install offers ssh URL first (git@github.com:) which fails without ssh keys — https variant is the one to document. Follows agentskills.io spec. Gap noted 0722: claudeskills.info has an obsidian guide page; our angle = tested + the 4 instruction-only skills work without Obsidian installed.",
      "tested_date": "2026-07-23",
      "skills_installed": 5
    }
  }
}
