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

criteria.jsonobsidian-bases/evals/scenario-2/

{
  "context": "Evaluate whether the agent correctly identifies and fixes all three bugs in the broken base file: Duration.round() called without accessing a numeric field first, an undefined formula reference, and an unquoted colon in a displayName value.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Identifies Duration.round() bug",
      "description": "The agent correctly identifies that (now() - file.ctime).round(0) fails because date subtraction returns a Duration, not a Number, and .round() is not available on Duration.",
      "max_score": 15
    },
    {
      "name": "Fixes Duration bug by accessing .days first",
      "description": "The corrected formula accesses a numeric field (e.g., .days) on the Duration before calling .round(0): (now() - file.ctime).days.round(0).",
      "max_score": 15
    },
    {
      "name": "Identifies undefined formula.priority reference",
      "description": "The agent correctly identifies that formula.priority appears in properties and order but priority is not defined under formulas, causing the column to silently disappear.",
      "max_score": 15
    },
    {
      "name": "Fixes undefined formula reference",
      "description": "The fix either adds a priority formula definition under formulas, or removes the formula.priority reference from properties and order.",
      "max_score": 15
    },
    {
      "name": "Identifies unquoted colon in displayName",
      "description": "The agent correctly identifies that displayName: Status: Current is invalid YAML because the second colon is not inside a quoted string.",
      "max_score": 15
    },
    {
      "name": "Fixes displayName quoting",
      "description": "The corrected displayName wraps the value in double quotes: displayName: \"Status: Current\".",
      "max_score": 15
    },
    {
      "name": "Provides complete corrected file",
      "description": "The response includes a complete, syntactically valid YAML file that incorporates all three fixes without introducing new errors.",
      "max_score": 10
    }
  ]
}

tile.json