Agent skill · software engineering · jeremylongshore

obsidian-hello-world

Create a minimal working Obsidian plugin with commands, settings, modals,

Why this skill is useful

Provides specific Obsidian plugin patterns and commands that the AI wouldn't reliably generate on its own.

What it needs

Requires npm installed locally. About 5k tokens when loaded. Last updated 2026-08-07. 2,604 stars on the source repository.

What this skill does

Obsidian Hello World Overview Build a minimal working Obsidian plugin demonstrating the five core building blocks: commands (palette + editor + checkCallback), settings tab with typed config, ribbon icons, modals, and status bar. Every snippet uses real Obsidian API. Prerequisites Completed obsidian-install-auth setup (symlinked dev vault, npm run dev working) Build pipeline producing main.js from src/main.ts Instructions Step 1: Define Typed Settings Step 2: Create the Plugin Class with Commands Step 3: Create Settings Tab Step 4: Create a Modal Step 5: Build and Test Step 6: Listen to Vault Events Output Working plugin with: Three command types: callback, editorCallback, checkCallback Settings tab with text, toggle, and dropdown controls Ribbon icon with click handler Modal dialog with interactive button Status bar widget with live word count Event listeners for file-open and file-create Error Handling Error Cause Solution ------- ------- ---------- Plugin not loading Build errors or bad manifest Check console (Ctrl+Shift+I) for red errors Settings not saving Missing await on saveData Always await this.saveSettings() in onChange Command greyed out editorCallback needs active editor Open a markdown note, or use callback instead Ribbon icon missing Invalid icon name Use Lucide icon names: sparkles, file-text, search Status bar not updating Event not registered Wrap in this.registerEvent() for auto-cleanup Settings reset on restart Forgot saveData call loadData returns null on first run — Object.assign handles this Examples Available Lucide Icon Names Obsidian uses Lucide icons. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills jeremylongshore/obsidian-hello-world

View the source on GitHub

Browse the @skills marketplace