CLI tool
kepano/obsidian-skills avatar
kepano/obsidian-skills

obsidian-skills is a skills folder and a marketplace entry, nothing else

GitHub describes it as Agent skills for Obsidian. Teach your agent to use Obsidian CLI and open formats including Markdown, Bases, JSON Canvas.. The metadata lists the MIT license. This article stays within the project description and details documented in the GitHub repository README.

49,006 stars3,490 forksUnknownMIT

At a glance

What is it?
Six agent skills that teach an assistant Obsidian Flavored Markdown, Bases, JSON Canvas, the Obsidian CLI, plus two tools maintained elsewhere. There is no source code and no release history: the repository is a skills directory with an install path, and the Open Code route breaks if you copy the inner folder instead of cloning.
Who is it for?
Adopt obsidian-skills if you drive an Obsidian vault from an agent and want the vault's own file formats handled correctly rather than approximated, because four of the six skills name a concrete extension and the whole set follows the Agent Skills specification, so one install works across Claude Code, Codex and Open Code.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 15 days ago.
What is it written in?
GitHub does not report a main language for this repository.

Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.

Editorial analysis

The repository is a skills folder and a marketplace entry

The top level has four entries and nothing else: a .claude-plugin directory, LICENSE, README.md, and skills/. There is no package manifest, no build script, no source directory, and the repository metadata detects no primary language. That shape is the whole architecture. What ships is a set of skill definitions, each a directory under skills/ holding a SKILL.md file, and the rest of the repository exists to get them onto an agent's discovery path.

The portability claim rests on the Agent Skills specification at agentskills.io, which these skills follow, so they can be used by any skills-compatible agent including Claude Code, Codex and Open Code. There is no adapter code in this repository to inspect, because there is no code. What you are trusting is the content of the skill files.

The licence is MIT, the default branch is main, and the last push is dated 2026-09-15. There are no GitHub releases, so version tracking is a commit hash rather than a tag.

Four of the six skills name a file extension, and two do not

The skills table is the substance of the project, and the file extensions are the clearest way to read it.

obsidian-markdown creates and edits Obsidian Flavored Markdown in .md files, with wikilinks, embeds, callouts, properties and other Obsidian-specific syntax. obsidian-bases handles Obsidian Bases in .base files, with views, filters, formulas and summaries. json-canvas creates and edits JSON Canvas .canvas files with nodes, edges, groups and connections. obsidian-cli interacts with vaults through the Obsidian CLI, including plugin and theme development.

The remaining two are not Obsidian file formats. defuddle extracts clean markdown from web pages using Defuddle, removing clutter to save tokens. knap renders Markdown templates from JSON or CSV data using Knap, including batch file generation.

So three skills are about writing files into a vault, one is about operating the application, and two are about getting other content in. An agent that can read and write .md but not .base or .canvas will still produce files the app cannot open properly, which is the failure these four exist to prevent.

The Open Code route breaks if you copy the inner folder

Open Code is the one install with a stated failure mode, and the repository is explicit about it. Do not copy only the inner skills/ folder. Clone the entire repo into the Open Code skills directory:

sh
git clone https://github.com/kepano/obsidian-skills.git ~/.opencode/skills/obsidian-skills

The reason is a path depth. The expected layout is `~/.opencode/skills/obsidian-skills/skills/<skill-name>/SKILL.md`, which is four levels below the skills root. A copy of the inner folder lands the SKILL.md files one level too shallow, where auto-discovery does not look.

The rest of that route needs nothing. Open Code auto-discovers all SKILL.md files under `~/.opencode/skills/`, no changes to opencode.json or any config file are needed, and skills become available after restarting Open Code. The restart is the silent part: a successful copy and a shallow copy look identical until you restart and ask the agent what it can do.

Three install shapes, and the marketplace one takes two lines

There are three documented routes, and they differ in what they assume about your setup.

The plugin marketplace route is two commands:

code
/plugin marketplace add kepano/obsidian-skills
/plugin install obsidian@obsidian-skills

The npx route goes through the skills CLI, over ssh by default:

code
npx skills add [email protected]:kepano/obsidian-skills.git

with an https form for anyone who would rather not use a key:

code
npx skills add https://github.com/kepano/obsidian-skills

The manual route is per agent. For Claude Code, add the contents of the repo to a .claude folder in the root of your Obsidian vault, or whichever folder you use with Claude Code. For Codex, copy the skills/ directory into your Codex skills path, typically `~/.codex/skills`.

The npx route is the one that depends on a third-party CLI being present, and the ssh form is the one that depends on your key being registered with GitHub. The manual route is the only one that asks nothing of your environment, and it is also the only one where you decide the destination path.

Two of the six skills are maintained in other projects

The skills table credits its sources by link, and two of them point away from this repository. defuddle extracts clean markdown using Defuddle at github.com/kepano/defuddle, which is a separate project by the same author. knap renders Markdown templates using Knap at github.com/obsidianmd/knap, which belongs to Obsidian's own organisation.

The three Obsidian-format skills link to help.obsidian.md pages instead: Flavored Markdown, Bases syntax, the Obsidian CLI, and jsoncanvas.org for the canvas format. So of six skills, three describe file formats whose specification lives with Obsidian, two wrap tools maintained elsewhere, and one is a pure Obsidian operation.

What this means for a reader is that the version of the underlying specification or tool is not pinned by anything in this repository. If Obsidian changes the Bases syntax, or Knap changes its template handling, the skill text here is what has to catch up, and this repository publishes no releases to signal when it does.

The vault is the install target for Claude Code, which is an unusual choice

The Claude Code instruction is worth reading twice, because it inverts the usual relationship between a tool and the data it works on: add the contents of the repo to a .claude folder in the root of your Obsidian vault.

The folder is inside the vault. A vault is a directory of notes that syncs, that may be in git, and that other applications read. Placing agent configuration there means the skills travel with the notes, which is convenient for a team that shares a vault, and it also means the configuration is inside the same tree your sync tool watches.

The README offers the alternative in the same sentence, or whichever folder you're using with Claude Code, so the vault root is the suggested default rather than a requirement. The Codex and Open Code instructions do something different: both target a path in the home directory, `~/.codex/skills` and `~/.opencode/skills/`, which keeps the configuration out of the vault entirely.

So the same six skills land in two very different places depending on the agent, and only one of those places is inside the thing the agent is meant to be working on.

Editorial conclusion

Adopt obsidian-skills if you drive an Obsidian vault from an agent and want the vault's own file formats handled correctly rather than approximated, because four of the six skills name a concrete extension and the whole set follows the Agent Skills specification, so one install works across Claude Code, Codex and Open Code. Do not adopt it expecting a tool with releases: the repository has no GitHub releases, no package manifest, no source code and no detected primary language, so there is nothing to pin beyond a commit, and nothing here will tell you which version your agent is running. Two things to check before you wire it in. Clone the whole repository for Open Code rather than copying the skills directory, because the expected path is nested one level deeper than a copy produces. And look at where two of the six skills actually live, since Defuddle and Knap are maintained in other projects and will move on their own schedules rather than with this repository.

Frequently asked questions

How do I install obsidian skills?

Through a plugin marketplace with /plugin marketplace add kepano/obsidian-skills followed by /plugin install obsidian@obsidian-skills, through npx skills add over ssh or https, or by copying the skills into the agent's own skills directory.

What is obsidian-skills?

A set of six agent skills for Obsidian that follow the Agent Skills specification, so they work with any skills-compatible agent including Claude Code, Codex and Open Code. The repository holds skill definitions and no source code.

How do I use obsidian skills with Open Code?

Clone the whole repository into ~/.opencode/skills/obsidian-skills with git clone, so the SKILL.md files sit at ~/.opencode/skills/obsidian-skills/skills/<skill-name>/SKILL.md. Do not copy only the inner skills folder, and restart Open Code afterwards.

Official sources

  1. Official README
  2. Project repository