
Obsidian Clipper Template Creator
Define Obsidian Web Clipper JSON templates so solo builders capture articles, recipes, and structured pages into a vault with consistent metadata and note layouts.
Overview
Obsidian Clipper Template Creator is an agent skill most often used in Build (also Idea, Grow) that authors Obsidian Web Clipper JSON templates with variables, properties, and note layouts for consistent web-to-vault cap
Install
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill obsidian-clipper-template-creatorWhat is this skill?
- Emits schemaVersion 0.1.0 clipper JSON with behavior, path, noteNameFormat, and noteContentFormat
- Maps page variables (title, url, author, published) and schema.org fields into Obsidian properties
- Includes ready-made General Clipping and Recipe templates with ingredients, instructions, and nutrition blocks
- Supports multitext categories, datetime fields, and list/map filters for structured extractions
- 2 example templates (General Clipping and Recipe)
- schemaVersion 0.1.0 clipper JSON shape
Adoption & trust: 467 installs on skills.sh; 40.1k GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You save links and highlights ad hoc, so your vault gets inconsistent metadata and unusable note bodies instead of structured clippings.
Who is it for?
Solo builders maintaining an Obsidian knowledge base who clip blogs, docs, and structured pages and want predictable note structure.
Skip if: Teams not using Obsidian Web Clipper, or anyone who only needs a one-off manual markdown paste without a reusable template.
When should I use this skill?
You need new or revised Obsidian Web Clipper template JSON with properties, paths, and formatted note bodies.
What do I get? / Deliverables
You get import-ready clipper template JSON—including general and schema-driven formats like recipes—aligned to your vault paths and property schema.
- Clipper template JSON files
- Property and noteContentFormat definitions for General and domain-specific clips
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Canonical shelf is Build → docs because the primary deliverable is a reusable clipper template schema wired into a knowledge base, even though clipping supports earlier research. Docs subphase fits vault structure, note naming, and property fields that become long-lived reference material—not app runtime code.
Where it fits
Clip competitor landing pages into Clippings/ with author and source properties for later synthesis.
Ship a Recipe clipper template that maps schema.org ingredients and steps into your cookbook vault.
Standardize how marketing articles enter the vault so newsletters reuse consistent topic fields.
How it compares
A template-authoring skill for Obsidian Web Clipper JSON—not an MCP server or a live browser scraping integration.
Common Questions / FAQ
Who is obsidian-clipper-template-creator for?
Indie builders and researchers who use Obsidian Web Clipper and want agent help drafting template JSON with properties, paths, and formatted note bodies.
When should I use obsidian-clipper-template-creator?
During Idea research to stock a clippings library, during Build docs when defining vault capture rules, and during Grow content workflows when you need recipe or article templates with schema.org fields.
Is obsidian-clipper-template-creator safe to install?
It produces local JSON configuration for a browser extension; review the Security Audits panel on this page and avoid embedding secrets in template fields.
SKILL.md
READMESKILL.md - Obsidian Clipper Template Creator
{ "schemaVersion": "0.1.0", "name": "General Clipping", "behavior": "create", "noteContentFormat": "{{content}}", "properties": [ { "name": "categories", "value": "[[Clippings]]", "type": "multitext" }, { "name": "author", "value": "[[{{author}}]]", "type": "multitext" }, { "name": "source", "value": "{{url}}", "type": "text" }, { "name": "via", "value": "", "type": "text" }, { "name": "published", "value": "{{published}}", "type": "datetime" }, { "name": "created", "value": "{{date}}", "type": "datetime" }, { "name": "topics", "value": "", "type": "multitext" }, { "name": "description", "value": "{{description}}", "type": "text" } ], "triggers": [], "noteNameFormat": "{{title}}", "path": "Clippings/" } { "schemaVersion": "0.1.0", "name": "Recipe", "behavior": "create", "noteContentFormat": "![{{schema:Recipe:image|first}}]\n\n## Description\n{{schema:Recipe:description}}\n\n## Ingredients\n{{schema:Recipe:recipeIngredient|list}}\n\n## Instructions\n{{schema:Recipe:recipeInstructions|map:step =>> step.text|list}}\n\n## Nutrition\n- Calories: {{schema:Recipe:nutrition.calories}}", "properties": [ { "name": "categories", "value": "[[Recipes]]", "type": "multitext" }, { "name": "author", "value": "[[{{schema:Recipe:author.name}}]]", "type": "text" }, { "name": "source", "value": "{{url}}", "type": "text" }, { "name": "ingredients", "value": "{{schema:Recipe:recipeIngredient}}", "type": "multitext" }, { "name": "cuisine", "value": "{{schema:Recipe:recipeCuisine}}", "type": "text" }, { "name": "rating", "value": "", "type": "number" }, { "name": "type", "value": "Recipe", "type": "text" } ], "triggers": [ "schema:Recipe" ], "noteNameFormat": "{{schema:Recipe:name}}", "path": "Recipes/" } # Analysis Workflow: Validating Variables To ensure your template works correctly, you must validate that the target page actually contains the data you want to extract. ## 1. Fetch the Page Use the `WebFetch` tool or a browser DOM snapshot to retrieve the content of a representative URL provided by the user. ```text WebFetch(url="https://example.com/recipe/chocolate-cake") ``` ## 2. Analyze the Output ### Check for Schema.org (Recommended) Look for `<script type="application/ld+json">`. This contains structured data which is the most reliable way to extract info. **Example Found in HTML:** ```html <script type="application/ld+json"> { "@context": "https://schema.org/", "@type": "Recipe", "name": "Chocolate Cake", "author": { "@type": "Person", "name": "John Doe" } } ``` **Conclusion:** - `{{schema:Recipe:name}}` is valid. - `{{schema:Recipe:author.name}}` is valid. - **Tip:** You can use `schema:Recipe` in the `triggers` array to automatically select this template for any page with this schema. ### Check for Meta Tags Look for `<meta>` tags in the `<head>` section. **Example Found in HTML:** ```html <meta property="og:title" content="The Best Chocolate Cake" /> <meta name="description" content="A rich, moist chocolate cake recipe." /> ``` **Conclusion:** - `{{meta:og:title}}` is valid. - `{{meta:description}}` is valid. ### Check for CSS Selectors (Verified) If Schema and Meta tags are missing, look for HTML structure (classes and IDs) to use with `{{selector:...}}`. Selectors must be verified against the fetched HTML or DOM snapshot. Do not guess selectors. **Example Found in HTML:** ```html <div class="article-body"> <h1 id="main-title">Chocolate Cake</h1> <span class="author-name">By John Doe</span> </div> ``` **Conclusion:** - `{{selector:h1#main-title}}` or `{{selector:h1}}` can extract the title. - `{{selector:.author-name}}` can extract the author. ## 3. Verify Against Base Compare the available data from your analysis with the properties required by the user's Base (see [bases-