obsidian-plugin-dev

Automate setup, testing, and publishing workflows for TypeScript-based Obsidian plugins.

Updated Apr 1, 2026
One-click install
npx skills add https://github.com/doyled-it/obsidian-plugin-dev-skill --skill obsidian-plugin-dev-doyled-it
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: obsidian-plugin-dev
Source: https://github.com/doyled-it/obsidian-plugin-dev-skill/tree/main
Command: npx skills add https://github.com/doyled-it/obsidian-plugin-dev-skill --skill obsidian-plugin-dev-doyled-it

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Building, modifying, and publishing Obsidian community plugins can be complex, requiring setup, API familiarity, and packaging steps.

Core Features & Use Cases

  • Project scaffolding with essential files (manifest.json, package.json, tsconfig.json, esbuild.config.mjs)
  • Integrating Obsidian API patterns (Plugin lifecycle, settings, events, DOM creation) and CodeMirror 6 extensions for edit mode
  • Local testing and publishing workflows (symlinking, release formatting, bot validation for submissions)

Quick Start

Set up a new plugin project in your vault and follow the guide to build, test, and publish.

Frequently Asked Questions about obsidian-plugin-dev

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up an Obsidian plugin project with TypeScript?

To set up an Obsidian plugin project, you scaffold essential TypeScript files like manifest.json, package.json, tsconfig.json, and esbuild.config.mjs. This establishes the foundational build configuration and manifest structure required for local development.

How do I create editor extensions using CodeMirror 6 in Obsidian?

Creating editor extensions with CodeMirror 6 in Obsidian involves integrating specific extensions for edit mode. This ensures proper interaction with the Obsidian API and aligns with the plugin lifecycle during DOM creation and event handling.

How do I test and publish Obsidian community plugins locally?

Testing and publishing Obsidian community plugins requires local testing workflows like symlinking, followed by release formatting. Submission requires passing bot validation to ensure compliance with Obsidian's release requirements.

Does Obsidian plugin development require knowledge of the plugin lifecycle API?

Yes, Obsidian plugin development requires understanding the plugin lifecycle API. Proper integration ensures correct management of settings, events, and DOM creation throughout the plugin's operation within the Obsidian environment.

What is the best way to package and submit an Obsidian plugin for release?

The best way to package an Obsidian plugin for release involves formatting the build output and manifest structure. Proper packaging ensures the submission passes bot validation and meets Obsidian's community plugin release requirements.

Why does my Obsidian plugin build configuration fail to compile TypeScript?

Obsidian plugin build configuration fails to compile TypeScript when files like tsconfig.json or esbuild.config.mjs are missing or misconfigured. Correct scaffolding of these essential files is required for successful compilation.