Luhmann Note Numberer
twhsi/skills
Assigns and checks Luhmann-style codes for book manuscript notes and Obsidian card folders without renumbering existing notes.
Explains, drafts and validates Obsidian Flavored Markdown such as properties, wikilinks, embeds, callouts and Mermaid, with vault edits applied through approved transactions.
$ npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install AgriciDaniel/claude-obsidian obsidian-markdown --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-obsidian.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/obsidian-markdown .claude/skills/obsidian-markdown && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "obsidian-markdown" agent skill from https://github.com/AgriciDaniel/claude-obsidian/tree/main/skills/obsidian-markdown into .claude/skills/obsidian-markdown/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-markdown", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/AgriciDaniel/claude-obsidian/tree/main/skills/obsidian-markdownType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install AgriciDaniel/claude-obsidian obsidian-markdown --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-obsidian.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/obsidian-markdown .agents/skills/obsidian-markdown && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "obsidian-markdown" agent skill from https://github.com/AgriciDaniel/claude-obsidian/tree/main/skills/obsidian-markdown into .agents/skills/obsidian-markdown/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-markdown", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install AgriciDaniel/claude-obsidian obsidian-markdown --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-obsidian.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/obsidian-markdown .cursor/skills/obsidian-markdown && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "obsidian-markdown" agent skill from https://github.com/AgriciDaniel/claude-obsidian/tree/main/skills/obsidian-markdown into .cursor/skills/obsidian-markdown/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-markdown", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/AgriciDaniel/claude-obsidian.git --path skills/obsidian-markdown--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install AgriciDaniel/claude-obsidian obsidian-markdown --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-obsidian.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/obsidian-markdown .gemini/skills/obsidian-markdown && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "obsidian-markdown" agent skill from https://github.com/AgriciDaniel/claude-obsidian/tree/main/skills/obsidian-markdown into .gemini/skills/obsidian-markdown/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-markdown", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install AgriciDaniel/claude-obsidian obsidian-markdownInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-obsidian.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/obsidian-markdown .github/skills/obsidian-markdown && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "obsidian-markdown" agent skill from https://github.com/AgriciDaniel/claude-obsidian/tree/main/skills/obsidian-markdown into .github/skills/obsidian-markdown/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-markdown", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install AgriciDaniel/claude-obsidian obsidian-markdown --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-obsidian.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/obsidian-markdown .opencode/skills/obsidian-markdown && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "obsidian-markdown" agent skill from https://github.com/AgriciDaniel/claude-obsidian/tree/main/skills/obsidian-markdown into .opencode/skills/obsidian-markdown/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-markdown", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
obsidian-markdownExplains, drafts and validates Obsidian Flavored Markdown such as properties, wikilinks, embeds, callouts and Mermaid, with vault edits applied through approved transactions.
This skill explains, drafts and validates Obsidian Flavored Markdown: properties, wikilinks, embeds, callouts, tags, comments, highlights, block references, math and Mermaid. It is a compact fallback, and the agent prefers a separately installed obsidian-markdown skill or the current Obsidian Help for detailed or version-sensitive questions. It is for explicit Obsidian formatting requests, not general Markdown or broad vault operations.
Syntax questions are answered read-only. A vault edit is drafted as a complete note and applied through a transaction bundle handled by the claude-obsidian.py core script: it is inspected first and applied only with an approval hash after review, and a note is never written directly. Guidance covers flat YAML properties with ISO dates and quoted wikilinks, block lists rather than inline arrays, quoted numeric tags, wikilink forms, and callouts that start collapsed or expanded. Creating or removing a page also updates an index or map of content.
Read from SKILL.md and the folder at commit 32ac5a0. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
python3From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
help.obsidian.mdFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Obsidian Markdown Syntax loads about 1.1k tokens when it runs. Until then it costs about 79 tokens; SKILL.md has 383 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from AgriciDaniel/claude-obsidian at commit 32ac5a0, republished under its MIT licence (© AgriciDaniel). 383 words, ~1,124 tokens.
.claude/skills/obsidian-markdown/SKILL.md (or your agent's skills folder).Use this as a compact fallback for Obsidian-specific syntax. Prefer a separately
installed kepano/obsidian-skills obsidian-markdown skill when available,
then current Obsidian Help, for detailed or
version-sensitive questions.
Resolve the installed product root from this skill's own location, not from the vault or current working directory:
PRODUCT_ROOT=/absolute/path/to/installed/claude-obsidian
CORE="$PRODUCT_ROOT/scripts/claude-obsidian.py"
test -f "$CORE"Every ../wiki/references/ link in this file resolves the same way, relative
to this skill's own directory under $PRODUCT_ROOT, never relative to the
selected vault's wiki/ directory.
Answer syntax questions read-only. If the user requests a vault edit, draft the
complete note, read operation-transactions.md,
and build one claude-obsidian.transaction.v1 bundle with
operation_type: markdown and only wiki/ targets. Inspect it, then set
APPROVAL_SHA256 to the returned approval_sha256 after review and apply it
through the same vault-bound plan. A canonical page create or removal includes
an active index or MOC update in that bundle; update the overview only when its
stable high-level synthesis changed:
python3 "$CORE" transaction inspect "$BUNDLE" --vault "$VAULT"
python3 "$CORE" transaction apply "$BUNDLE" --vault "$VAULT" \
--approved-plan-sha256 "$APPROVAL_SHA256"Never write a note directly.
Use flat YAML properties and YYYY-MM-DD dates. Quote wikilinks inside YAML.
---
type: concept
title: "Contextual Retrieval"
created: 2026-07-11
updated: 2026-07-11
status: developing
tags:
- retrieval
- ai/knowledge
aliases:
- Context-aware retrieval
related:
- "[[Retrieval]]"
sources:
- "[[Anthropic Contextual Retrieval]]"
---Do not nest objects in generated wiki properties. Use block lists rather than
inline YAML arrays. Quote numeric-only tag values, for example - "2026", so
YAML parsers preserve them as tags instead of numbers. Keep unknown existing
properties unless the requested edit changes them.
[[Note Name]]
[[Note Name|Display text]]
[[Note Name#Heading]]
[[Note Name#^block-id]]
[[Folder/Note Name]]
This paragraph is addressable. ^evidence-block
![[Note Name#Summary]]
![[diagram.png|480]]
![[paper.pdf#page=3]]Match the target filename exactly. Use a vault-relative folder path when a basename is ambiguous. Use standard Markdown links for external URLs; use wikilinks for this vault's notes.
> [!note]
> Supporting context.
> [!warning] Review required
> This claim has contradictory evidence.
> [!question]- Open question
> What evidence would resolve this?- starts collapsed and + starts expanded. Common built-in types include
note, abstract, info, todo, tip, success, question, warning,
failure, danger, bug, example, and quote. Preserve custom vault
callout types rather than rewriting them.
#inline-tag #nested/tag
==Highlighted text==
Visible text %%hidden comment%%
Inline math: $E = mc^2$
$$
\int_0^1 x^2\,dx = \frac{1}{3}
$$
```mermaid
flowchart LR
Source --> Claim
```Standard CommonMark/GFM headings, lists, tasks, tables, code fences, and footnotes remain valid. Avoid HTML when native Markdown is sufficient.
For source-cited pages, also follow provenance.md. Report the transaction operation ID and exact changed paths after an applied edit.
© AgriciDaniel, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/obsidian-markdown of AgriciDaniel/claude-obsidian.
Open the folder on GitHubat commit 32ac5a0
Obsidian Markdown Syntax next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Obsidian Markdown Syntax this skillAgriciDaniel/claude-obsidian | 15k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Luhmann Note Numberertwhsi/skills | 259 | — | ~1.5k | Automated safety check: Pass | None | |
| Obsidian Vaultravila4/claude-adhd-skills | 157 | — | ~2.3k | Automated safety check: Pass | MIT | |
| Knap Markdown Templateskepano/obsidian-skills | 49k | 2 repos | ~986 | Automated safety check: Pass | MIT | |
| Obsidian MarkdownKevRojo/Dulus | 153 | — | ~1.4k | Automated safety check: Pass | GPL-3.0 | |
| EPUB to HyperCard Obsidiantwhsi/skills | 259 | — | ~1k | Automated safety check: Pass | None |
twhsi/skills
Assigns and checks Luhmann-style codes for book manuscript notes and Obsidian card folders without renumbering existing notes.
ravila4/claude-adhd-skills
Manage Obsidian vault operations. An agent skill from ravila4/claude-adhd-skills.
kepano/obsidian-skills
Renders Markdown notes from Knap templates and JSON data on the command line, including notes built from Defuddle web page output.
KevRojo/Dulus
Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax.
twhsi/skills
Converts an EPUB card book into an Obsidian folder with one Markdown file per card, keyword cards, navigation links and an optional shareable zip.
Atmosphere/atmosphere
Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax.
AgriciDaniel/claude-obsidian
Runs a bounded, source-grounded research loop that drafts a cited dossier and can propose a separately reviewed merge into an Obsidian vault.
AgriciDaniel/claude-obsidian
Creates, inspects and updates Obsidian JSON Canvas boards in a vault, with text, file, link, group and edge nodes, using safe recoverable edits.
AgriciDaniel/claude-obsidian
Sets up or adopts a separate Obsidian knowledge vault through the claude-obsidian core script and routes follow-up work to the right wiki sub-skill.
AgriciDaniel/claude-obsidian
Creates a bounded, extractive rollup of recent Obsidian wiki log entries, previewed by default, with one optional apply step and no changes to child pages.
AgriciDaniel/claude-obsidian
Plans, and with explicit network consent runs, an external Defuddle extractor that turns an article-like HTTPS page into clean Markdown for later wiki ingestion.
AgriciDaniel/claude-obsidian
Explains, drafts and validates Obsidian Bases .base files, building filters, formulas and table, card or list views, and applying edits only through one inspected transaction.
Categories
Explains, drafts and validates Obsidian Flavored Markdown such as properties, wikilinks, embeds, callouts and Mermaid, with vault edits applied through approved transactions. This skill explains, drafts and validates Obsidian Flavored Markdown: properties, wikilinks, embeds, callouts, tags, comments, highlights, block references, math and Mermaid. It is a compact fallback, and the agent prefers a separately installed obsidian-markdown skill or the current Obsidian Help for detailed or version-sensitive questions.
Obsidian Markdown Syntax fits situations like: checking how Obsidian callouts, embeds or block references are written; drafting a note with correct properties and wikilinks; validating Obsidian-specific syntax in an existing note; preparing a vault edit as a reviewed transaction bundle.
Run `npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a claude-code`. Or copy the skill folder (skills/obsidian-markdown in AgriciDaniel/claude-obsidian) into .claude/skills/obsidian-markdown in your project. Claude Code loads it when a task matches its description.
Run `npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a codex`. Or copy the skill folder (skills/obsidian-markdown in AgriciDaniel/claude-obsidian) into .agents/skills/obsidian-markdown in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AgriciDaniel/claude-obsidian --skill obsidian-markdown -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/obsidian-markdown, .gemini/skills/obsidian-markdown, .github/skills/obsidian-markdown and .opencode/skills/obsidian-markdown in your project.
Going by SKILL.md and its folder, Obsidian Markdown Syntax needs the command-line tools its instructions call (python3). Our summary lists: The claude-obsidian plugin core script for vault edits; Python 3 to run that script.
SKILL.md names 1 domain. As links in the text: help.obsidian.md. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Obsidian Markdown Syntax is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Obsidian Markdown Syntax: Luhmann Note Numberer (twhsi/skills, 259 stars), Obsidian Vault (ravila4/claude-adhd-skills, 157 stars), Knap Markdown Templates (kepano/obsidian-skills, 49k stars) and Obsidian Markdown (KevRojo/Dulus, 153 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
AgriciDaniel (a GitHub user) maintains it in AgriciDaniel/claude-obsidian, which has 15,420 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on September 10, 2026.
Source: AgriciDaniel/claude-obsidian on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.