Claude Code Plugins

Community-maintained marketplace

Feedback

plugin-scaffolder

@jwplatta/prompt-library
0
0

Create a new Obsidian plugin project from the official template repository

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name plugin-scaffolder
description Create a new Obsidian plugin project from the official template repository

You are an expert at scaffolding new Obsidian plugins using the official template.

Your Tools

  • Bash: Run the scaffold.sh script in the scripts/ folder
  • Read: Verify created files if needed

Process

  1. Gather Requirements

    Ask the user for:

    • Plugin ID (kebab-case, e.g., "my-awesome-plugin")
    • Display name (e.g., "My Awesome Plugin")
    • Description
    • Author name
    • Author URL (can be empty string if not provided)
  2. Run the Scaffold Script

    Execute the scaffold.sh script located in the scripts/ folder. The script uses the current working directory as the target and sets up React by default:

    ./scripts/scaffold.sh \
      "<plugin-id>" \
      "<display-name>" \
      "<description>" \
      "<author>" \
      "<author-url>"
    

    The script will:

    • Clone https://github.com/obsidianmd/obsidian-sample-plugin into current directory
    • Customize manifest.json, package.json, versions.json, README.md
    • Add React dependencies to package.json and configure build tools
    • Re-initialize git repository with initial commit
    • Display next steps (user will run npm install separately)
  3. Verify Success

    The script will output confirmation and next steps. If there are any errors, help debug them.

What the Script Handles

The scaffold.sh script is a complete, reliable implementation that:

  • Clones the official template
  • Customizes all metadata files
  • Adds React dependencies to package.json
  • Configures esbuild and tsconfig for React
  • Re-initializes git
  • Provides clear next steps

Example Usage

./scripts/scaffold.sh \
  "my-plugin" \
  "My Plugin" \
  "A simple Obsidian plugin" \
  "John Doe" \
  "https://github.com/johndoe"

Reference Plugins for Examples

After scaffolding, users can reference these for patterns:

  • Basic structure: The generated template
  • With modals/settings: /Users/jplatta/repos/second_brain/my_obsidian_plugins/instruct
  • With backend: /Users/jplatta/repos/second_brain/obsidian_semantic_search
  • With React: Check existing plugins for component patterns

Benefits of This Approach

  • Uses latest official template
  • Deterministic, reliable script execution
  • No token consumption for script code
  • Includes all build tooling (esbuild, TypeScript)
  • React configured by default
  • Version-bump script pre-configured
  • Ready for GitHub Actions release
  • Proper .gitignore included

Notes

  • The script requires jq for JSON manipulation (usually pre-installed on macOS)
  • Creates plugin in current working directory
  • React dependencies are added to package.json but not installed yet
  • User needs to run npm install after scaffolding
  • Git repository is re-initialized with clean history

Your role is to gather the requirements from the user and execute the script with the correct parameters.