Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

clip

verified

Inbox capture that matches Web Clipper output. Clips URLs or inline text as clipping notes with LLM-generated titles. Batch-capable for multiple URLs. No classification, no area/project assignment — triage handles that.

View on GitHub

Marketplace

side-quest-marketplace

nathanvale/side-quest-marketplace

Plugin

para-obsidian

productivity

Repository

nathanvale/side-quest-marketplace
3stars

plugins/para-obsidian/skills/clip/SKILL.md

Last Verified

February 4, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/nathanvale/side-quest-marketplace/blob/main/plugins/para-obsidian/skills/clip/SKILL.md -a claude-code --skill clip

Installation paths:

Claude
.claude/skills/clip/
Powered by add-skill CLI

Instructions

# Clip

Inbox capture that produces clipping notes matching Obsidian Web Clipper output — real page titles, raw fetched content, `<!-- highlights:0 -->` marker. No classification, no Layer 1 formatting, no area/project assignment. Everything gets organized later by `/para-obsidian:triage`.

**Design philosophy:** ADHD-friendly capture with Web Clipper parity. Save a link, get a real note — not a stub. Capture now, organize later.

---

## Step 0 — Discover Template Metadata

Before processing any input, query the clipping template for its current structure:

```
para_template_fields({ template: "clipping", response_format: "json" })
```

Extract from response:
- `validArgs` → which args to pass to `para_create` (e.g., `source`, `clipped`, `domain`)
- `creation_meta.dest` → destination folder (e.g., `"00 Inbox"`)
- `creation_meta.contentTargets` → which section heading accepts content injection (e.g., `["Content"]`)
- `creation_meta.titlePrefix` → emoji prefix (e.g., `"✂️ "`)

Use these discovered values throughout the skill instead of hardcoding them. If the template changes, this skill auto-adapts.

---

## Input Detection

Parse `$ARGUMENTS` to determine mode:

**Step 1:** Extract all URLs from arguments (regex: `https?://\S+`).

| Result | Mode |
|--------|------|
| 1+ URLs found | **URL mode** — create clipping notes |
| No URLs found | **Inline text mode** — create clipping note |

**Step 2:** Deduplicate URLs before processing (URL mode only).

---

## Mode 1: URL Capture (Clipping Notes)

For each URL, create a clipping note that triage recognizes as `itemType: "clipping"`.

### For each URL:

**Step 1 — Extract domain:**

Strip `www.` prefix from hostname:
```
github.com/anthropics/claude-code  →  domain: "github.com"
www.kentcdodds.com/blog/aha        →  domain: "kentcdodds.com"
```

**Step 2 — Fetch content:**

The clip skill should produce notes identical to what the Obsidian Web Clipper creates — including page content in the Content section. Fetch conte

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
9702 chars