CtrlK
BlogDocsLog inGet started
Tessl Logo

obsidian-bases

Create and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries. Use when working with .base files, creating database-like views of notes, or when the user mentions Bases, table views, card views, filters, or formulas in Obsidian.

71

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

75%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, highly actionable reference for a domain Claude knows poorly — full executable examples, correct/incorrect contrasts, and valuable silent-failure anti-patterns. Its main weaknesses are redundancy (Duration and YAML-quoting guidance each repeated across three sections) and an overlong body that inlines reference-table and example material that could follow the FUNCTIONS_REFERENCE.md pattern into separate files.

Suggestions

Consolidate the Duration/.round() guidance into a single section — it currently appears in 'Duration Type', 'Date Arithmetic', and Anti-Pattern 2 — keeping one authoritative statement plus one-line cross-references.

Merge the YAML quoting guidance from Workflow step 5, Anti-Pattern 4, and the 'YAML Quoting Rules' section into one section (or fold the short quoting-rules list into Anti-Pattern 4) to remove the triplicated coverage.

Move the file-properties table, the default summary-formulas table, and/or the three complete example bases into reference files (e.g., references/EXAMPLES.md), mirroring the existing well-signaled FUNCTIONS_REFERENCE.md pattern, to slim the ~630-line body.

DimensionReasoningScore

Conciseness

The body is dense with Obsidian-specific knowledge Claude does not reliably know (filter syntax, file properties, summary functions, silent-failure modes), so it is not padded with generic explanation. However, it could be tightened: the Duration/.round() warning is repeated in three places ("Duration Type", "Date Arithmetic", and Anti-Pattern 2), and YAML quoting guidance is spread across Workflow step 5, Anti-Pattern 4, and the "YAML Quoting Rules" section. This fits anchor 3 ("mostly efficient but includes some unnecessary explanation or could be tightened") better than anchor 4, since the redundancy is more than minor.

3 / 5

Actionability

Nearly everything is executable: complete copy-paste-ready .base files (Task Tracker, Reading List, Daily Notes), concrete filter/formula snippets with correct and incorrect variants, a filter-operator table, file-property tables, and function signatures. The common cases (table, cards, list views) are fully covered; only the map view is a stub, but it is an edge case gated on a community plugin, so it does not undermine coverage of common cases.

5 / 5

Workflow Clarity

The 6-step workflow is clearly sequenced and includes validation steps (step 5 "Verify the file is valid YAML... Check that all referenced properties and formulas exist") and a test-feedback loop (step 6 "Open the .base file in Obsidian... If it shows a YAML error, check quoting rules below"), matching anchor 4. It falls short of anchor 5 because the validation checkpoints lack a concrete mechanism — no command, linter, or specific verification procedure — and the recovery loop only points to quoting rules rather than a general fix-and-retry cycle.

4 / 5

Progressive Disclosure

The bundle uses a real, well-organized one-level-deep reference (references/FUNCTIONS_REFERENCE.md exists and is clearly signaled in "Key Functions": "For the complete reference of all types... see [FUNCTIONS_REFERENCE.md]"), and the body keeps only the most common functions inline. This is good structure matching anchor 4. It falls short of anchor 5 because a substantial amount of reference-style material remains inline in the ~630-line body — the 13-row file-properties table, the 15-row summary-formulas table, and three full example bases (~120 lines) could be split into additional reference files the way the functions reference is.

4 / 5

Total

16

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A textbook-quality description: third person, concise, names the file format and extension, covers the full capability surface, and gives an explicit, multi-trigger "Use when" clause scoped to the Obsidian domain. No vague fluff or over-claims are present.

DimensionReasoningScore

Specificity

The description enumerates comprehensive concrete capabilities for the domain: "Create and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries" — file type plus all four major feature areas of the skill. It is not merely the two verbs; the with-clause comprehensively covers the skill's capability surface, matching the anchor-5 pattern of listing multiple specific actions with full coverage.

5 / 5

Completeness

It explicitly answers both questions: "what" ("Create and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries") and "when" ("Use when working with .base files, creating database-like views of notes, or when the user mentions Bases, table views, card views, filters, or formulas in Obsidian") — structurally identical to the anchor-5 example with concrete trigger phrases.

5 / 5

Trigger Term Quality

Natural trigger terms include the file extension (".base files"), the product term ("Bases"), feature synonyms ("table views, card views, filters, or formulas"), and the use-case phrase "creating database-like views of notes". This matches the anchor-5 standard of comprehensive coverage including synonyms and file extensions; no common user phrasing for this domain is conspicuously absent.

5 / 5

Distinctiveness Conflict Risk

It occupies a clear niche (Obsidian Bases / .base files) with distinct triggers. Generic-sounding words like "filters" and "formulas" are explicitly scoped "in Obsidian", minimizing conflict risk with unrelated skills. It matches the anchor-5 example's pattern of a niche capability set with domain-specific triggers.

5 / 5

Total

20

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (635 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

Repository
pantheon-org/tekhne
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.