Build Obsidian.md plugins following official API patterns, TypeScript best practices, and plugin review guidelines.
What it does
Claude doesn't know the Obsidian plugin API — it generates plugins that use methods that don't exist, attach event listeners incorrectly, access the file system in ways that conflict with Obsidian's virtual file system, and fail the community plugin review process for security or API misuse reasons. This skill loads the correct Obsidian API patterns: `Plugin` and `PluginSettingTab` class structure, `TFile`/`TFolder` usage, the correct event system, Markdown post-processing, and the review guidelines that determine whether a plugin gets listed in the community directory.
Use case
Building a plugin for Obsidian.md — either for personal use or for submission to the community plugin directory. Made by gapmiss, an Obsidian plugin developer.
"Build an Obsidian plugin that automatically adds a date stamp to new notes." "Create a plugin that links related notes based on shared tags." "Build a plugin with a settings panel for configuring note templates." "My plugin works locally but the community review is flagging API misuse — diagnose it." "Add a command palette entry to my plugin that runs a custom script on the active note."
Describe the plugin you want to build: what it does, when it activates, and any settings it needs.
Claude generates a complete plugin with correct API usage — manifest.json, main.ts, and settings tab.
For community submission: Claude checks against the review guidelines before generating the final code.
Input
A description of the plugin: what it does, what triggers it, what settings it exposes, and whether it's for personal use or community submission.
Output
A complete Obsidian plugin: manifest.json with correct metadata, main.ts using the correct API, settings panel if needed, and code that passes the community plugin review guidelines.
npx skillsadd gapmiss/skills/obsidian-plugin-dev
Requires skills.sh CLI
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.