Tools
Obsidian Skill Viewer
Obsidian plugin to view .skill files (Claude/OpenClaw skill packages) as native notes
Install
npm install
npm
Configuration Example
---
name: "My Skill"
description: "What this skill does"
version: "1.0.0"
author: "Author Name"
tags: "tag1, tag2"
category: "productivity"
---
# Skill body
Full Markdown content follows the frontmatter.
Wikilinks, code blocks, and callouts are all supported.
README
# Obsidian Skill Viewer
> *Obsidian was built for the age of connected thought. It turns out that age is now โ and its currency is Markdown.*
An Obsidian plugin for rendering `.skill` packages โ the portable skill format used by AI coding agents โ as fully structured, native notes inside your vault.
---
## Why This Exists
The Markdown document is quietly becoming one of the most important data structures in software. Not because of aesthetics, but because of what it encodes: structured human intent, readable by both people and machines, portable across every tool in the stack.
AI agents like Claude Code, OpenClaw, and NemoClaw distribute their capabilities as **`.skill` files** โ ZIP archives containing a `SKILL.md` specification and supporting assets. These packages encode *what an agent knows how to do*, in plain Markdown, with YAML frontmatter, portable to any system that can read a file.
Obsidian is the natural home for these packages. Its graph model, backlink engine, and Markdown renderer are precisely the infrastructure needed to navigate, understand, and connect AI capabilities as a knowledge base. The only missing piece was first-class file type support.
Skill Viewer closes that gap.
---
## What It Does
When you drop a `.skill` file into your vault, Obsidian opens it as a rendered note โ not a binary blob. The view surfaces:
- **Skill header** โ name, description, version, author, and tags drawn from `SKILL.md` frontmatter
- **Archive manifest** โ every file inside the ZIP, rendered as an inline file tree
- **Full Markdown body** โ the `SKILL.md` content rendered through Obsidian's native pipeline, including wikilinks, callouts, and code blocks
- **Graph integration** โ skill files appear as nodes and participate in Obsidian's graph view
A dedicated **Skill Explorer** sidebar panel lists every `.skill` file in your vault with live search and one-click navigation.
---
## Compatibility
| Item | Requirement |
|---|---|
| Obsidian | โฅ 1.4.0 |
| Platform | Desktop and mobile |
| `.skill` format | Any ZIP archive with a `SKILL.md` at its root |
The `.skill` format is agent-agnostic. This plugin works with skill packages from **Claude Code**, **OpenClaw**, **NemoClaw**, and any other agent that follows the format.
---
## Features
- **Native file type registration** โ `.skill` opens in a purpose-built view, not a fallback binary handler
- **Structured skill view** โ header card with name, description, version, author; tag and category badges; collapsible archive file tree; full `SKILL.md` body rendered as standard Obsidian Markdown
- **Skill Explorer panel** โ sidebar listing all `.skill` files in the vault, with real-time search
- **Graph view** โ skill files appear as first-class nodes
- **Command palette** โ `Open Skill Explorer` and `Reload skill list`
- **Settings tab** โ configure file explorer visibility and default open mode (tab / split / window)
- **No network calls** โ all processing is local and offline
---
## Installation
### Community Plugin Store *(pending review)*
1. Open **Settings โ Community Plugins โ Browse**
2. Search **Skill Viewer**
3. Click **Install**, then **Enable**
### Manual
1. Download `main.js`, `manifest.json`, and `styles.css` from the [latest release](https://github.com/Chargekar/obsidian-skill-viewer/releases/latest)
2. Create `.obsidian/plugins/obsidian-skill-viewer/` inside your vault
3. Copy the three files into that directory
4. Reload Obsidian and enable **Skill Viewer** under **Settings โ Community Plugins**
---
## Usage
### Opening a skill
Drop any `.skill` file into your vault and click it. The skill view opens automatically. The rendered note shows:
- Header card with all frontmatter metadata
- Tag and category badges
- Expandable tree of every file inside the archive
- The full `SKILL.md` body โ headings, code blocks, callouts, wikilinks
### Skill Explorer
Click the wand icon in the left ribbon, or run **Open Skill Explorer** from the command palette. The panel lists all skills found in the vault. The search box filters by name in real time.
---
## SKILL.md Format
Skill Viewer reads the following frontmatter keys from `SKILL.md`. All are optional.
```yaml
---
name: "My Skill"
description: "What this skill does"
version: "1.0.0"
author: "Author Name"
tags: "tag1, tag2"
category: "productivity"
---
# Skill body
Full Markdown content follows the frontmatter.
Wikilinks, code blocks, and callouts are all supported.
```
---
## Building from Source
**Prerequisites:** Node.js โฅ 18, npm
```bash
git clone https://github.com/Chargekar/obsidian-skill-viewer.git
cd obsidian-skill-viewer
npm install
npm run build
```
The build produces `main.js` via esbuild. It is fully deterministic from the locked `package-lock.json`.
**Toolchain:** TypeScript 4.7.4 ยท esbuild 0.17.3 ยท JSZip 3.10.1
---
## Project Structure
```
obsidian-skill-viewer/
โโโ src/main.ts # Plugin source โ SkillView, SkillExplorerView, settings
โโโ main.js # Compiled output (esbuild bundle, committed for Obsidian)
โโโ styles.css # Plugin styles
โโโ manifest.json # Obsidian plugin manifest
โโโ versions.json # Version โ minimum Obsidian version map
โโโ package.json # Build dependencies
โโโ tsconfig.json # TypeScript configuration
โโโ esbuild.config.mjs # Build script
โโโ CHANGELOG.md # Release history
```
---
## Acknowledgements
This plugin would not make sense without [Obsidian](https://obsidian.md).
Obsidian understood something early that the rest of the industry is only beginning to grasp: that a local, portable, plain-text knowledge base is not a limitation โ it is the feature. As AI systems grow more capable, the ability to store structured human intent in a format that is simultaneously readable by people, parseable by machines, version-controllable by git, and navigable by a graph engine becomes genuinely foundational.
Markdown is not a legacy format. It is at the very beginning of its utility. The same document that a developer reads in a code editor, a writer reads in Obsidian, an agent reads from disk, and a model reads from context โ that convergence is what makes the `.skill` format possible, and what makes Obsidian the right place to work with it.
Thank you to the Obsidian team for building infrastructure that keeps getting more relevant, not less.
---
## Contributing
Issues and pull requests are welcome. Please open an issue before submitting a PR for non-trivial changes.
---
## License
[MIT](https://opensource.org/licenses/MIT) ยฉ Harshwardhan Wadikar
tools
Comments
Sign in to leave a comment