CtrlK
BlogDocsLog inGet started
Tessl Logo

pantheon-ai/obsidian-toolkit

Skills for working with Obsidian vaults and related formats: Obsidian Flavored Markdown, JSON Canvas files, the Obsidian CLI, and Defuddle for clean web content extraction.

96

Quality

96%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

instructions.jsonjson-canvas/evals/

{
  "instructions": [
    {
      "instruction": "Generate unique 16-character lowercase hexadecimal IDs for every node and edge",
      "relevant_when": "When creating any node or edge in a canvas file",
      "why_given": "new knowledge"
    },
    {
      "instruction": "Validate that all edge fromNode and toNode values reference IDs that exist in the nodes array",
      "relevant_when": "After creating or editing edges in a canvas file",
      "why_given": "new knowledge"
    },
    {
      "instruction": "Use string color values (e.g. \"1\") not integer values (e.g. 1) for the color field",
      "relevant_when": "When setting color on any node or edge",
      "why_given": "new knowledge"
    },
    {
      "instruction": "Use the JSON escape \\n for line breaks in text node content, not literal newlines or \\\\n",
      "relevant_when": "When writing multi-line text content for text nodes",
      "why_given": "new knowledge"
    },
    {
      "instruction": "Confirm the resulting file is valid JSON before writing it",
      "relevant_when": "After creating or modifying any canvas file",
      "why_given": "new knowledge"
    },
    {
      "instruction": "Position nodes with non-overlapping coordinates, leaving 50-100px spacing between nodes",
      "relevant_when": "When placing nodes on the canvas",
      "why_given": "new knowledge"
    },
    {
      "instruction": "Place child nodes within the x/y/width/height bounds of their parent group node",
      "relevant_when": "When creating group nodes that visually contain other nodes",
      "why_given": "new knowledge"
    },
    {
      "instruction": "Use only \"none\" or \"arrow\" as values for fromEnd and toEnd on edges",
      "relevant_when": "When setting edge endpoint arrow styles",
      "why_given": "new knowledge"
    }
  ]
}

tile.json