CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

wiki-ingest

Ingest documents into the Obsidian wiki by distilling their knowledge into interconnected wiki pages. Use this skill whenever the user wants to add new sources to their wiki, process a document or directory, import articles, papers, or notes into their knowledge base, or says things like "add this to the wiki", "process these docs", "ingest this folder". Also triggers when the user drops a file and wants it incorporated into their existing knowledge base. Also handles raw mode: "process my drafts", "promote my raw pages", or any reference to the _raw/ staging directory.

Quality

93%

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

88%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.

This is a well-engineered process skill: a clearly sequenced ingest workflow with explicit validation and safety checkpoints around its destructive and batch operations (hash-gated re-ingest, guarded _raw/ deletion, closing checklist), and copy-paste-ready commands, templates, and file specs throughout. It stays lean with only minor justificatory asides. The main structural gap is that most detail lives inline in a long SKILL.md with just one reference file, plus dependence on the external llm-wiki skill for templates and provenance conventions.

DimensionReasoningScore

Conciseness

The body is dense and operational — hash-verification logic, deletion-safety rules, exact frontmatter fields, templates — with only minor justificatory asides that could be trimmed, e.g. "the wiki's value depends on the user being able to tell signal from synthesis" and "That's expected — the provenance markers exist precisely to surface this". Not 5 because a handful of rationale sentences and parenthetical explanations exceed what is strictly needed for an actor that already understands hashing and timestamp drift; not 3 because there is no concept-explaining padding and nearly every section is actionable instruction.

4 / 5

Actionability

Fully executable, copy-paste-ready guidance throughout: the exact hash command "sha256sum -- \"<file>\" (or shasum -a 256 on macOS)" with shell-safety quoting rules, a complete mcp__qmd__query invocation block, a full .manifest.json entry template, a log.md entry format, a hot.md template, and concrete file paths and frontmatter field specs (e.g. "summary: ... 1–2 sentences, ≤200 characters"). Specific examples cover the common cases (new vs. modified sources, image sources, raw drafts); nothing below 5 fits since the guidance is concrete and complete.

5 / 5

Workflow Clarity

A clearly sequenced 7-step process with explicit validation checkpoints: content-hash verification gates re-ingest decisions, "Before deleting, verify the resolved path is inside $OBSIDIAN_VAULT_PATH/_raw/" guards the destructive raw-mode deletion, and a closing Quality Checklist verifies outcomes. Error-recovery guidance is present ("If your model doesn't support vision, skip image sources and tell the user which files were skipped", "Resolve any contradictions... note them if unresolvable"). The destructive/batch cap at 3 does not apply because validation is present, and the anchor-5 checklist-plus-explicit-validation pattern is matched; not 4 because checkpoints are explicit rather than implicit at every risky step.

5 / 5

Progressive Disclosure

Good structure against the actual bundle: the body's single reference — "Read `references/ingest-prompts.md` for the LLM prompt templates used during extraction" — is a real, clearly signaled file exactly one level deep, and the body is organized into well-labeled sections (modes, steps, checklist, reference). Not 5 because the ~245-line body inlines substantial material that could live in references (the full QMD query block, the hot.md template, the manifest schema) and it depends on out-of-bundle resources (the llm-wiki skill's page template and provenance conventions, .env.example) without those being present; not 3 because the one reference that does exist is clearly signaled in a dedicated Reference section and the inline content is workflow-essential rather than misplaced.

4 / 5

Total

18

/

20

Passed

Description

95%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 strong description: it states a clear, concrete capability, gives an explicit 'Use this skill whenever...' trigger clause with multiple verbatim user phrasings and synonyms, and covers a distinct niche including the raw/_raw/ mode. Third-person voice is used throughout with no first/second-person phrasing, so no voice penalty applies. The only minor weakness is that the capability enumeration is one core action expressed several ways rather than a list of distinct operations.

DimensionReasoningScore

Specificity

The description lists several concrete actions — "Ingest documents into the Obsidian wiki by distilling their knowledge into interconnected wiki pages", "process a document or directory", "import articles, papers, or notes", and "promote my raw pages" — with only minor gaps (e.g., it does not enumerate the manifest/index/cross-reference upkeep the body actually performs). Not 5 because the capability list is one dominant action restated in several trigger phrasings rather than a comprehensive set of distinct capabilities; not 3 because there are clearly more than 1-2 specific actions.

4 / 5

Completeness

Explicitly answers both questions: "what" in "Ingest documents into the Obsidian wiki by distilling their knowledge into interconnected wiki pages", and "when" via a dedicated "Use this skill whenever..." clause with concrete trigger phrases ("or says things like 'add this to the wiki', 'process these docs', 'ingest this folder'") plus additional trigger conditions ("Also triggers when the user drops a file...", "Also handles raw mode"). Matches the anchor-5 example structure exactly; nothing below 5 fits since both what and when are explicit and concrete.

5 / 5

Trigger Term Quality

Comprehensive natural terms with synonyms and verbatim user phrasings: "add this to the wiki", "process these docs", "ingest this folder", "process my drafts", "promote my raw pages", plus synonyms ("wiki", "knowledge base", "sources", "notes", "drafts") and the "_raw/ staging directory" reference. Not 4 because coverage of the natural phrasings a user would actually say is essentially complete for this domain; file extensions are inapplicable since sources are any format.

5 / 5

Distinctiveness Conflict Risk

Clear niche with distinct triggers: Obsidian wiki ingestion with wiki-specific vocabulary ("Obsidian wiki", "_raw/ staging directory", "interconnected wiki pages") and quoted trigger phrases that would not plausibly fire a generic document-processing or note-taking skill. Not 4 because overlap risk is minimal — the wiki/knowledge-base framing and raw-mode triggers carve out an unambiguous niche.

5 / 5

Total

19

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

saski/arnesto

Path

.agents/skills/wiki-ingest/SKILL.md

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.