Anything To Skill avatar

Anything To Skill

Pricing

Pay per usage

Go to Apify Store
Anything To Skill

Anything To Skill

Transform YouTube videos and websites into AI agent skills that actually work.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Yann Feunteun

Yann Feunteun

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

4 days ago

Last modified

Share

Anything to AI Skill Generator

Transform YouTube videos and websites into AI agent skills that actually work.

The Problem

The web contains millions of programming tutorials, but this knowledge is:

  1. Inaccessible to AI assistants — AI agents cannot watch videos or efficiently parse long pages
  2. Time-consuming to extract — A 10-minute video takes 10 minutes to watch; long docs take ages to read
  3. Often outdated — APIs change, libraries deprecate, best practices evolve
  4. Not actionable — Narrative format ("so what we're gonna do...") ≠ executable instructions

The Solution

This Actor uses a Claude agent with the extract-text skill to:

  1. Extract content from YouTube videos, playlists, or websites
  2. Identify technologies, frameworks, and libraries mentioned
  3. Verify against current documentation using RAG (Context7)
  4. Transform content into actionable instructions
  5. Generate a ready-to-use SKILL.md file

Input

FieldTypeRequiredDescription
urlsarrayYesYouTube video/playlist URLs, website URLs, or any mix
skillNamestringNoName for the skill (auto-generated if not provided)
promptstringNoCustom instructions (e.g., "Focus on deployment", "Beginner-friendly")
anthropicApiKeystringYesYour Anthropic API key
context7ApiKeystringYesYour Context7 API key for RAG verification
verifyTechnologiesbooleanNoCheck technologies against current docs (default: true)
proxyConfigurationobjectNoProxy settings for URL access
maxRetriesintegerNoMax validation retries (default: 2, max: 5)

Output

The Actor outputs:

  1. Dataset: JSON with skill metadata and content
  2. Key-Value Store: The generated SKILL.md file (and a .zip package for multi-file skills)

Dataset Schema

{
"skill_name": "generated-skill-name",
"skill_content": "---\nname: ...\ndescription: ...\n---\n# ...",
"source_urls": ["https://youtube.com/...", "https://example.com/..."],
"tools_used": ["extract_text", "resolve_library", "get_library_docs"],
"tools_used_history": ["extract_text", "resolve_library", "get_library_docs"],
"verify_technologies": true,
"validation": {
"is_valid": true,
"warnings": [],
"errors": []
}
}

Example Usage

Single Video

{
"urls": ["https://www.youtube.com/watch?v=VIDEO_ID"],
"anthropicApiKey": "sk-ant-...",
"context7ApiKey": "c7-..."
}

Playlist with Custom Instructions

{
"urls": ["https://www.youtube.com/playlist?list=PLAYLIST_ID"],
"skillName": "fastapi-deployment",
"prompt": "Focus on production deployment steps only. Target experienced Python developers.",
"anthropicApiKey": "sk-ant-...",
"context7ApiKey": "c7-...",
"verifyTechnologies": true
}

Multiple Sources (YouTube + Website)

{
"urls": [
"https://www.youtube.com/watch?v=video1",
"https://www.youtube.com/watch?v=video2",
"https://docs.example.com/guide"
],
"skillName": "complete-react-guide",
"prompt": "Merge into one cohesive skill covering all topics",
"anthropicApiKey": "sk-ant-...",
"context7ApiKey": "c7-..."
}

How It Works

┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
EXTRACT │────▶│ IDENTIFY │────▶│ VERIFY │────▶│ TRANSFORM │────▶│ GENERATE
│ content │ │technologies │ │ up-to-date │ │ content │ │ skill │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘

Skill Structure Decision

The agent automatically decides whether to generate a single file or multi-file skill based on content complexity:

┌─────────────────────────────────────┐
│ Analyze Content │
└──────────────────┬──────────────────┘
┌─────────┴─────────┐
▼ ▼
Short/Simple? Complex/Long?
│ │
▼ ▼
Single SKILL.md Analyze what to split:
├── Theory → references/
├── Code → scripts/
└── Variants → examples/

Decision Criteria

CriterionSingle FileMulti-File
Content lengthShort / straightforwardLong / multiple topics
Code examples1-2 small snippetsComplete runnable scripts
Theory vs practiceMostly practicalHeavy theory + practice
Estimated word count< 2000 words> 3000 words
Multiple workflowsNoYes (different use cases)

Multi-File Structure (Progressive Disclosure)

Following Anthropic's skill best practices:

skill-name/
├── SKILL.md # Core instructions (<5k words, always loaded)
├── references/ # Deep docs (loaded on-demand)
│ ├── concepts.md # Theory, explanations
│ └── api.md # API documentation
├── scripts/ # Executable code
│ └── example.py # Complete runnable examples
│ └── requirements.txt # Required when Python scripts are included
└── assets/ # Templates, images (used in output)

Why this matters:

  • SKILL.md is always loaded (~tokens cost)
  • references/ only loaded when Claude needs them (saves tokens)
  • scripts/ can be executed without loading into context
  • assets/ copied to output, never loaded

Technology Verification

The agent uses Context7 RAG to verify that technologies mentioned in the content are still current:

  • Checks library versions against latest documentation
  • Identifies deprecated APIs or changed patterns
  • Updates code examples to current best practices

Content Transformation

Video narration is transformed into actionable instructions:

Video ContentSkill Content
"So basically what we're doing..."(removed)
"You want to run this command..."bash command
"The important thing here is..."Prerequisites section
"If you get this error..."Troubleshooting section

Requirements

Limitations

  • YouTube videos without subtitles fall back to the video description
  • English-focused (translation may reduce accuracy)
  • Context7 coverage varies by library

Validation and Retries

If the generated skill fails validation, the Actor retries with the validation errors included in the prompt (up to 2 retries). This helps the model self-correct and produce a usable skill package. tools_used reports only the final attempt, while tools_used_history includes tools from all attempts.

License

MIT