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

analyze-web

verified

Analyze web clippings, create resource notes with Layer 1 content, and return lightweight proposals. Handles enrichment, analysis, note creation, and Layer 1 injection so content never flows through coordinator. Worker skill for triage orchestrator.

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/analyze-web/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/analyze-web/SKILL.md -a claude-code --skill analyze-web

Installation paths:

Claude
.claude/skills/analyze-web/
Powered by add-skill CLI

Instructions

# Analyze Web Clipping

Analyze a single web clipping, **create the resource note with Layer 1 content**, and return a lightweight proposal.

**Key design:** This skill creates the resource note AND populates Layer 1 before returning. The full content stays in subagent context - only the proposal flows back to the coordinator.

## Input

You receive:
- `file`: Path to clipping in inbox (e.g., `00 Inbox/✂️ Article Title.md`)
- `areas`: Available areas in vault
- `projects`: Available projects in vault

## Output

Return a JSON proposal per @plugins/para-obsidian/skills/triage/references/proposal-schema.md.

**Key:** Use `area` (single wikilink), `project` (single wikilink or null), `resourceType` (camelCase). Include `file`, `type: "clipping"`, `created`, and `layer1_injected` alongside the standard proposal fields.

## Workflow

### Step 1: Read Clipping

```
para_read({ file: "[input file]", response_format: "json" })
```

Extract frontmatter fields (`source`, `domain`, `capture_reason`, pre-filled `areas`/`projects`) from the YAML header in the `para_read` response. Do NOT call `para_fm_get` separately — `para_read` returns the full file including frontmatter.

Also extract existing body content.

### Step 2: Fetch Full Content

**CRITICAL: Select tool based on domain.** Use `ToolSearch` to load deferred tools before calling them.

| Domain | Tool | ToolSearch Query |
|--------|------|-----------------|
| `youtube.com` / `youtu.be` | `get_transcript` (fallback: `get_video_info`) | `"youtube transcript"` |
| `x.com` / `twitter.com` | `x_get_tweet` (parse tweet_id from URL) | `"x-api tweet"` |
| `github.com` / other articles | `firecrawl_scrape` | `"firecrawl scrape"` |

**X/Twitter is MANDATORY enrichment** — Web Clipper captures only stubs. Always fetch via X-API regardless of clipping content.

See @plugins/para-obsidian/skills/triage/references/enrichment-strategies.md for the full routing table and constraints.

See @plugins/para-obsidian/references/content-sou

Validation Details

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