Not in the top 1,000 by GitHub stars

crazynomad/tutorial

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

01-notebooklm/.claude/skills/podcast-downloader/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

02-podcast-downloader/artifact/podcast-downloader/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

02-podcast-downloader/skills/pdf-to-images/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

02-podcast-downloader/skills/podcast-downloader/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

02-podcast-downloader/skills/youtube-downloader/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

10-ai-ppt-skills/skills/ppt-classify/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

10-ai-ppt-skills/skills/ppt-narrative-review/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

10-ai-ppt-skills/skills/ppt-research-setup/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

10-ai-ppt-skills/skills/visual-deck/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

979ea386e6a3 → 979ea386e6a3

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 979ea386e6a3

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 979ea386e6a350651d53113048b4fe15754909a3

git clone --filter=blob:none --no-checkout https://github.com/crazynomad/tutorial.git .hotskills/crazynomad-tutorial && git -C .hotskills/crazynomad-tutorial checkout --detach 979ea386e6a350651d53113048b4fe15754909a3 # Copy each selected skill directory from .hotskills/crazynomad-tutorial into .claude/skills/<skill-name>/
196GitHub stars
0stars in 7 days
10skills in this repository
0commits in 30 days

Heat

0.3
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Oct 25, 2026196

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

podcast-downloader

When your agent uses it

Search and download podcast episodes from Apple Podcasts. Use when user wants to find podcasts, download podcast episodes, get podcast information, or mentions Apple Podcasts, iTunes, podcast search, or audio downloads.

What it loads into context

Frontmatter

65 tokens

Always available to the agent

SKILL.md

1,587 tokens

When the skill is activated

Reference documents

8,158 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Core Capabilities
  2. Quick Start
  3. Workflow Examples
  4. Best Practices
  5. Command Reference
  6. Data Structures
  7. Advanced Features
  8. Troubleshooting
  9. Additional Resources
  10. Notes

Scripts executed separately

  • scripts/itunes_api.py

Files

  • README.mddoc6,086 bytes
  • SKILL.mdcore6,737 bytes
  • SKILL.mdcore6,737 bytes
  • SKILL.mdcore6,737 bytes
  • SKILL.mdcore6,737 bytes
  • SKILL.mdcore6,737 bytes
  • SKILL.mdcore6,737 bytes
  • SKILL.mdcore6,737 bytes
  • SKILL.mdcore6,737 bytes
  • examples.mddoc10,364 bytes
  • reference.mddoc15,194 bytes
  • scripts/itunes_api.pyruns8,646 bytes

No excerpt is shown for this license. Read the source on GitHub.

View the complete source on GitHub

Skills included

  • podcast-downloader
  • podcast-downloader
  • ppt-classify
  • ppt-narrative-review
  • ppt-research-setup
  • visual-deck

Repository facts

License
No license detected
Created
Dec 24, 2025
Last pushed
Jul 9, 2026
Forks
62
Open issues
0
Project activity
Slowing

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 7, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 80 notes
  • 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • 02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 614 signals by file

01-notebooklm/.claude/skills/podcast-downloader/README.md

  • Network accessline 212
    Based on Apple iTunes Search API: https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/

01-notebooklm/.claude/skills/podcast-downloader/SKILL.md

  • Broad permissionsline 1
    Bash(python3:*), Bash(curl:*), Read, Write
  • Network accessline 169
    "artistName": "The New York Times",   "trackCount": 2464,   "feedUrl": "https://feeds.simplecast.com/...",
  • Network accessline 170
    "trackCount": 2464,   "feedUrl": "https://feeds.simplecast.com/...",   "genres": ["Daily News", "Podcasts", "News"]
  • Network accessline 171
    "feedUrl": "https://feeds.simplecast.com/...",
  • Network accessline 181
    "releaseDate": "2025-12-26T10:45:00Z",   "trackTimeMillis": 1247000,   "episodeUrl": "https://...",
  • Network accessline 182
    "trackTimeMillis": 1247000,   "episodeUrl": "https://...",   "description": "Full description...",
  • Network accessline 183
    "episodeUrl": "https://...",
  • Network accessline 221
    **Issue**: "curl: command not found" **Solution**: Install curl or use Python's requests library
  • Network accessline 222
    **Solution**: Install curl or use Python's requests library

01-notebooklm/.claude/skills/podcast-downloader/examples.md

  • Network accessline 376
    - Total Episodes: 2464 - Genre: Daily News - RSS Feed: https://feeds.simplecast.com/Sl5CSM3S
  • Network accessline 377
    - Genre: Daily News - RSS Feed: https://feeds.simplecast.com/Sl5CSM3S - Apple Podcasts URL: https://podcasts.apple.com/us/podcast/the-daily/id1200361736
  • Network accessline 378
    - RSS Feed: https://feeds.simplecast.com/Sl5CSM3S
  • Network accessline 379
    - Apple Podcasts URL: https://podcasts.apple.com/us/podcast/the-daily/id1200361736

01-notebooklm/.claude/skills/podcast-downloader/reference.md

  • Network accessline 19
    https://itunes.apple.com
  • Network accessline 45
    https://itunes.apple.com/search?term=python+programming&entity=podcast&limit=10
  • Network accessline 59
    "collectionName": "Talk Python To Me",       "trackName": "Talk Python To Me",       "feedUrl": "https://talkpython.fm/episodes/rss",
  • Network accessline 60
    "trackName": "Talk Python To Me",       "feedUrl": "https://talkpython.fm/episodes/rss",       "trackCount": 445,
  • Network accessline 61
    "feedUrl": "https://talkpython.fm/episodes/rss",
  • Network accessline 62
    "trackCount": 445,       "artworkUrl600": "https://...",       "primaryGenreName": "Technology",
  • Network accessline 63
    "artworkUrl600": "https://...",
  • Network accessline 91
    https://itunes.apple.com/lookup?id=979020229&entity=podcastEpisode&limit=10
  • Network accessline 110
    "releaseDate": "2025-12-26T10:45:00Z",       "trackTimeMillis": 1247000,       "episodeUrl": "https://...",
  • Network accessline 111
    "trackTimeMillis": 1247000,       "episodeUrl": "https://...",       "episodeFileExtension": "mp3",
  • Network accessline 112
    "episodeUrl": "https://...",
  • Network accessline 165
    "artistName": "Michael Kennedy",     "trackCount": 445,     "feedUrl": "https://talkpython.fm/episodes/rss",
  • Network accessline 166
    "trackCount": 445,     "feedUrl": "https://talkpython.fm/episodes/rss",     "genres": ["Technology", "Podcasts"]
  • Network accessline 167
    "feedUrl": "https://talkpython.fm/episodes/rss",
  • Network accessline 201
    "releaseDate": "2025-12-26T10:45:00Z",     "trackTimeMillis": 1247000,     "episodeUrl": "https://...",
  • Network accessline 202
    "trackTimeMillis": 1247000,     "episodeUrl": "https://...",     "collectionName": "Talk Python To Me",
  • Network accessline 203
    "episodeUrl": "https://...",
  • Network accessline 540
    'pub_date': item.find('pubDate').text,             'audio_url': item.find('enclosure').get('url'),             'duration': item.find('{http://www.itunes.com/dtds/podcast-1.0.dtd}duration').text
  • Network accessline 541
    'audio_url': item.find('enclosure').get('url'),             'duration': item.find('{http://www.itunes.com/dtds/podcast-1.0.dtd}duration').text         }
  • Network accessline 542
    'duration': item.find('{http://www.itunes.com/dtds/podcast-1.0.dtd}duration').text
  • Network accessline 646
    - Downloaded content for personal use only - Respect publisher rights and terms - See: [Apple Developer Terms](https://developer.apple.com/terms/)
  • Network accessline 648
    - See: [Apple Developer Terms](https://developer.apple.com/terms/)

01-notebooklm/.claude/skills/podcast-downloader/scripts/itunes_api.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 19
    BASE_URL = "https://itunes.apple.com"

02-podcast-downloader/artifact/podcast-downloader-v2-skill/SKILL.md

  • Network accessline 41
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id1711052890?i=1000744375610"
  • Network accessline 46
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id1711052890" -n 5
  • Network accessline 51
    python scripts/download_podcast.py "https://podcasts.apple.com/us/podcast/id123456789"
  • Network accessline 144
    - Query episode: `https://itunes.apple.com/lookup?id={episode_id}&entity=podcastEpisode&country={country}`
  • Network accessline 145
    - Query list: `https://itunes.apple.com/lookup?id={podcast_id}&entity=podcastEpisode&country={country}&limit=200`
  • Network accessline 146
    - Get RSS: `https://itunes.apple.com/lookup?id={podcast_id}&country={country}&entity=podcast`
  • Network accessline 168
    **User**: "帮我下载这个播客的最新 3 集: https://podcasts.apple.com/cn/podcast/id1711052890"
  • Network accessline 178
    # Download python /mnt/skills/user/podcast-downloader-v2/scripts/download_podcast.py \   "https://podcasts.apple.com/cn/podcast/id1711052890" \
  • Network accessline 179
    python /mnt/skills/user/podcast-downloader-v2/scripts/download_podcast.py    "https://podcasts.apple.com/cn/podcast/id1711052890"
  • Network accessline 180
    "https://podcasts.apple.com/cn/podcast/id1711052890" \

02-podcast-downloader/artifact/podcast-downloader-v2-skill/references/api_reference.md

  • Network accessline 7
    Official Documentation: https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/
  • Network accessline 12
    https://itunes.apple.com/lookup
  • Network accessline 32
    GET https://itunes.apple.com/lookup?id={episode_id}&entity=podcastEpisode&country={country}
  • Network accessline 37
    GET https://itunes.apple.com/lookup?id=1000744375610&entity=podcastEpisode&country=cn
  • Network accessline 53
    "collectionCensoredName": "独树不成林",       "trackCensoredName": "289-我在童年如何与权威周旋?",       "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 54
    "trackCensoredName": "289-我在童年如何与权威周旋?",       "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",       "feedUrl": "https://feed.xyzfm.space/...",
  • Network accessline 55
    "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 56
    "feedUrl": "https://feed.xyzfm.space/...",
  • Network accessline 57
    "trackViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 58
    "artworkUrl30": "https://is1-ssl.mzstatic.com/image/.../30x30bb.jpg",
  • Network accessline 59
    "artworkUrl60": "https://is1-ssl.mzstatic.com/image/.../60x60bb.jpg",
  • Network accessline 60
    "artworkUrl100": "https://is1-ssl.mzstatic.com/image/.../100x100bb.jpg",
  • Network accessline 75
    "primaryGenreName": "Society & Culture",       "contentAdvisoryRating": "Clean",       "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
  • Network accessline 76
    "contentAdvisoryRating": "Clean",       "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",       "genreIds": ["1324", "26"],
  • Network accessline 77
    "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
  • Network accessline 80
    "episodeFileExtension": "m4a",       "episodeContentType": "audio",       "episodeUrl": "https://...",
  • Network accessline 81
    "episodeContentType": "audio",       "episodeUrl": "https://...",       "closedCaptioning": "none",
  • Network accessline 82
    "episodeUrl": "https://...",
  • Network accessline 108
    GET https://itunes.apple.com/lookup?id={podcast_id}&entity=podcastEpisode&country={country}&limit={limit}
  • Network accessline 113
    GET https://itunes.apple.com/lookup?id=1711052890&entity=podcastEpisode&country=cn&limit=200
  • Network accessline 129
    "collectionCensoredName": "独树不成林",       "trackCensoredName": "独树不成林",       "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 130
    "trackCensoredName": "独树不成林",       "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",       "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",
  • Network accessline 131
    "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 132
    "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",
  • Network accessline 133
    "trackViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 134
    "artworkUrl30": "https://is1-ssl.mzstatic.com/image/.../30x30bb.jpg",
  • Network accessline 135
    "artworkUrl60": "https://is1-ssl.mzstatic.com/image/.../60x60bb.jpg",
  • Network accessline 136
    "artworkUrl100": "https://is1-ssl.mzstatic.com/image/.../100x100bb.jpg",
  • Network accessline 146
    "primaryGenreName": "Society & Culture",       "contentAdvisoryRating": "Clean",       "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
  • Network accessline 147
    "contentAdvisoryRating": "Clean",       "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",       "genreIds": ["1324", "26"],
  • Network accessline 148
    "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
  • Network accessline 182
    GET https://itunes.apple.com/lookup?id={podcast_id}&entity=podcast&country={country}
  • Network accessline 187
    GET https://itunes.apple.com/lookup?id=1711052890&entity=podcast&country=cn
  • Network accessline 200
    "artistName": "XYZ.FM",       "collectionName": "独树不成林",       "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",
  • Network accessline 201
    "collectionName": "独树不成林",       "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",       "trackCount": 272,
  • Network accessline 202
    "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",
  • Network accessline 278
    | `releaseDate` | string | ISO 8601 datetime | `"2025-01-10T00:00:00Z"` | | `trackTimeMillis` | number | Duration (ms) | `2415000` (40.25 min) | | `episodeUrl` | string | Audio file URL | `"https://..."` |
  • Network accessline 279
    | `trackTimeMillis` | number | Duration (ms) | `2415000` (40.25 min) | | `episodeUrl` | string | Audio file URL | `"https://..."` | | `episodeFileExtension` | string | File type | `"m4a"`, `"mp3"` |
  • Network accessline 280
    | `episodeUrl` | string | Audio file URL | `"https://..."` |
  • Network accessline 348
    response = requests.get(url)
  • Network accessline 359
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36' } response = requests.get(url, headers=headers)
  • Network accessline 361
    response = requests.get(url, headers=headers)
  • Network accessline 425
    try:     response = requests.get(url, timeout=10)
  • Network accessline 426
    response = requests.get(url, timeout=10)
  • Network accessline 457
    def get_podcast_episodes(podcast_id, country='us', limit=10):     url = f"https://itunes.apple.com/lookup"
  • Network accessline 458
    url = f"https://itunes.apple.com/lookup"
  • Network accessline 469
    response = requests.get(url, params=params, headers=headers)
  • Network accessline 487
    # Get podcast with episodes curl -H "User-Agent: Mozilla/5.0" \
  • Network accessline 488
    curl -H "User-Agent: Mozilla/5.0" \
  • Network accessline 489
    "https://itunes.apple.com/lookup?id=1711052890&entity=podcastEpisode&country=cn&limit=10"
  • Network accessline 491
    # Get specific episode curl -H "User-Agent: Mozilla/5.0" \
  • Network accessline 492
    curl -H "User-Agent: Mozilla/5.0" \
  • Network accessline 493
    "https://itunes.apple.com/lookup?id=1000744375610&entity=podcastEpisode&country=cn"
  • Network accessline 498
    - **Official Docs**: https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/
  • Network accessline 499
    - **Podcast RSS Spec**: https://help.apple.com/itc/podcasts_connect/#/itcb54353390
  • Network accessline 500
    - **RSS 2.0 Spec**: https://www.rssboard.org/rss-specification
  • Network accessline 501
    - **Podcast Namespace**: https://github.com/Podcastindex-org/podcast-namespace

02-podcast-downloader/artifact/podcast-downloader-v2-skill/references/technical_details.md

  • Network accessline 30
    https://podcasts.apple.com/cn/podcast/podcast-name/id1711052890?i=1000744375610
  • Network accessline 67
    GET https://itunes.apple.com/lookup
  • Network accessline 84
    "releaseDate": "2025-01-10T00:00:00Z",       "trackTimeMillis": 2415000,       "episodeUrl": "https://...",
  • Network accessline 85
    "trackTimeMillis": 2415000,       "episodeUrl": "https://...",       "description": "..."
  • Network accessline 86
    "episodeUrl": "https://...",
  • Network accessline 108
    GET https://itunes.apple.com/lookup
  • Network accessline 123
    "collectionName": "独树不成林",       "artistName": "XYZ.FM",       "feedUrl": "https://feed.xyzfm.space/..."
  • Network accessline 124
    "artistName": "XYZ.FM",       "feedUrl": "https://feed.xyzfm.space/..."     },
  • Network accessline 125
    "feedUrl": "https://feed.xyzfm.space/..."
  • Network accessline 161
    GET https://itunes.apple.com/lookup
  • Network accessline 193
    response = requests.get(url, stream=True, timeout=60, headers={
  • Network accessline 338
    try:     response = requests.get(url, timeout=60)
  • Network accessline 339
    response = requests.get(url, timeout=60)
  • Network accessline 347
    try:     response = requests.get(url)
  • Network accessline 348
    response = requests.get(url)
  • Network accessline 401
    https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/
  • Network accessline 470
    - HTTP client library - Used for API calls and audio downloads - https://docs.python-requests.org/
  • Network accessline 472
    - https://docs.python-requests.org/
  • Network accessline 475
    - RSS/Atom feed parser - Fallback for when API unavailable - https://pythonhosted.org/feedparser/
  • Network accessline 477
    - https://pythonhosted.org/feedparser/
  • Network accessline 492
    # Test URL parsing url = "https://podcasts.apple.com/cn/podcast/id123456?i=789012"
  • Network accessline 493
    url = "https://podcasts.apple.com/cn/podcast/id123456?i=789012"
  • Network accessline 508
    # Test with real podcast python scripts/download_podcast.py \   "https://podcasts.apple.com/us/podcast/id1200361736" \
  • Network accessline 509
    python scripts/download_podcast.py    "https://podcasts.apple.com/us/podcast/id1200361736"
  • Network accessline 510
    "https://podcasts.apple.com/us/podcast/id1200361736" \

02-podcast-downloader/artifact/podcast-downloader-v2-skill/references/usage_guide.md

  • Network accessline 15
    # Download specific episode python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/xxx/id123456?i=789012"
  • Network accessline 16
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/xxx/id123456?i=789012"
  • Network accessline 18
    # Download latest 5 episodes python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 5
  • Network accessline 19
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 5
  • Network accessline 21
    # Download to specific directory python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 10 -o ~/Downloads
  • Network accessline 22
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 10 -o ~/Downloads
  • Network accessline 32
    python scripts/download_podcast.py \   "https://podcasts.apple.com/cn/podcast/独树不成林/id1711052890?i=1000744375610"
  • Network accessline 33
    "https://podcasts.apple.com/cn/podcast/独树不成林/id1711052890?i=1000744375610"
  • Network accessline 68
    python scripts/download_podcast.py \   "https://podcasts.apple.com/cn/podcast/id1711052890" \
  • Network accessline 69
    "https://podcasts.apple.com/cn/podcast/id1711052890" \
  • Network accessline 86
    python scripts/download_podcast.py \   "https://podcasts.apple.com/us/podcast/the-daily/id1200361736"
  • Network accessline 87
    "https://podcasts.apple.com/us/podcast/the-daily/id1200361736"
  • Network accessline 96
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 3
  • Network accessline 101
    python scripts/download_podcast.py "https://podcasts.apple.com/us/podcast/id789012" -n 3
  • Network accessline 106
    python scripts/download_podcast.py "https://podcasts.apple.com/jp/podcast/id345678" -n 3
  • Network accessline 115
    - `url` (required): Apple Podcast URL   - Format: `https://podcasts.apple.com/{region}/podcast/{name}/id{podcast_id}`
  • Network accessline 116
    - Format: `https://podcasts.apple.com/{region}/podcast/{name}/id{podcast_id}`
  • Network accessline 173
    "description": "在这期节目中...",   "audio_file": "001 - 289-我在童年如何与权威周旋?.m4a",   "download_url": "https://..."
  • Network accessline 174
    "audio_file": "001 - 289-我在童年如何与权威周旋?.m4a",   "download_url": "https://..." }
  • Network accessline 175
    "download_url": "https://..."
  • Network accessline 186
    # Download latest 10 episodes success = download_from_apple_url(     apple_url="https://podcasts.apple.com/cn/podcast/id1711052890",
  • Network accessline 187
    success = download_from_apple_url(     apple_url="https://podcasts.apple.com/cn/podcast/id1711052890",     output_dir="/path/to/output",
  • Network accessline 188
    apple_url="https://podcasts.apple.com/cn/podcast/id1711052890",
  • Network accessline 213
    # Create a file with URLs cat > podcasts.txt << EOF https://podcasts.apple.com/cn/podcast/id1711052890
  • Network accessline 214
    cat > podcasts.txt << EOF https://podcasts.apple.com/cn/podcast/id1711052890 https://podcasts.apple.com/us/podcast/id1200361736
  • Network accessline 215
    https://podcasts.apple.com/cn/podcast/id1711052890
  • Network accessline 216
    https://podcasts.apple.com/us/podcast/id1200361736
  • Network accessline 217
    https://podcasts.apple.com/jp/podcast/id123456789
  • Network accessline 344
    - Apple Podcasts: https://podcasts.apple.com
  • Network accessline 345
    - iTunes Search API: https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/ - Feedparser docs: https://pythonhosted.org/feedparser/ - Requests docs: https://docs.python-requests.org/
  • Network accessline 346
    - Feedparser docs: https://pythonhosted.org/feedparser/
  • Network accessline 347
    - Requests docs: https://docs.python-requests.org/

02-podcast-downloader/artifact/podcast-downloader-v2-skill/scripts/download_podcast.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 50
    api_url = f"https://itunes.apple.com/lookup?id={collection_id}&entity=podcastEpisode&country={country_code}&limit={limit}"
  • Network accessline 52
    try:         print(f"📡 正在通过 API 获取节目信息...")         resp = requests.get(api_url, timeout=15, headers={
  • Network accessline 53
    print(f"📡 正在通过 API 获取节目信息...")         resp = requests.get(api_url, timeout=15, headers={             'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36'
  • Network accessline 54
    resp = requests.get(api_url, timeout=15, headers={
  • Network accessline 81
    track_url = f"https://itunes.apple.com/lookup?id={episode_id}&entity=podcastEpisode&country={country_code}"
  • Network accessline 83
    try:         resp = requests.get(track_url, timeout=10, headers={
  • Network accessline 84
    resp = requests.get(track_url, timeout=10, headers={
  • Network accessline 102
    lookup_url = f"https://itunes.apple.com/lookup?id={podcast_id}&country={country_code}&entity=podcast"
  • Network accessline 104
    try:         resp = requests.get(lookup_url, timeout=10)
  • Network accessline 105
    resp = requests.get(lookup_url, timeout=10)
  • Network accessline 165
    try:         print(f"   ⬇<U+FE0F>  正在下载: {episode_title}")         response = requests.get(url, stream=True, timeout=60, headers={
  • Network accessline 166
    print(f"   ⬇<U+FE0F>  正在下载: {episode_title}")         response = requests.get(url, stream=True, timeout=60, headers={             'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36'
  • Network accessline 167
    response = requests.get(url, stream=True, timeout=60, headers={
  • Network accessline 339
    %(prog)s "https://podcasts.apple.com/cn/podcast/id123456?i=789012"
  • Network accessline 342
    %(prog)s "https://podcasts.apple.com/cn/podcast/id123456" -n 5
  • Network accessline 345
    %(prog)s "https://podcasts.apple.com/us/podcast/id123456"
  • Network accessline 348
    %(prog)s "https://podcasts.apple.com/cn/podcast/id123456" -n 10 -o /path/to/output

02-podcast-downloader/artifact/podcast-downloader/SKILL.md

  • Network accessline 64
    **Quick method:** 1. Find the podcast in Apple Podcasts web or app 2. Copy the podcast page URL (e.g., `https://podcasts.apple.com/us/podcast/name/id1234567890`)
  • Network accessline 65
    1. Find the podcast in Apple Podcasts web or app 2. Copy the podcast page URL (e.g., `https://podcasts.apple.com/us/podcast/name/id1234567890`) 3. Extract the ID number from the URL
  • Network accessline 66
    2. Copy the podcast page URL (e.g., `https://podcasts.apple.com/us/podcast/name/id1234567890`)
  • Network accessline 67
    3. Extract the ID number from the URL 4. Use Apple's lookup API: `https://podcasts.apple.com/lookup?id=1234567890&entity=podcast` 5. Find the `feedUrl` field in the JSON response
  • Network accessline 68
    4. Use Apple's lookup API: `https://podcasts.apple.com/lookup?id=1234567890&entity=podcast`

02-podcast-downloader/artifact/podcast-downloader/references/get_rss_feed.md

  • Network accessline 11
    https://podcasts.apple.com/lookup?id=[PODCAST_ID]&entity=podcast
  • Network accessline 15
    **示例:** - 播客页面: `https://podcasts.apple.com/us/podcast/corecursive/id1330329512`
  • Network accessline 16
    - 播客页面: `https://podcasts.apple.com/us/podcast/corecursive/id1330329512`
  • Network accessline 17
    - Podcast ID: `1330329512` - Lookup URL: `https://podcasts.apple.com/lookup?id=1330329512&entity=podcast` - 在返回的 JSON 中找到 `feedUrl`
  • Network accessline 18
    - Lookup URL: `https://podcasts.apple.com/lookup?id=1330329512&entity=podcast`

02-podcast-downloader/artifact/podcast-downloader/scripts/download_podcast.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 82
    try:         response = requests.get(url, stream=True, timeout=30)
  • Network accessline 83
    response = requests.get(url, stream=True, timeout=30)
  • Network accessline 195
    %(prog)s "https://feeds.example.com/podcast.rss" -n 5
  • Network accessline 198
    %(prog)s "https://feeds.example.com/podcast.rss" -e 3
  • Network accessline 201
    %(prog)s "https://feeds.example.com/podcast.rss"

02-podcast-downloader/skills/pdf-to-images/SKILL.md

  • Dangerous shell operationline 76
    sudo apt-get install imagemagick
  • Network accessline 79
    **Windows**: Download from https://imagemagick.org/script/download.php
  • Network accessline 80
    Download from https://imagemagick.org/script/download.php
  • Dangerous shell operationline 145
    sudo sed -i 's/rights="none" pattern="PDF"/rights="read|write" pattern="PDF"/' /etc/ImageMagick-*/policy.xml

02-podcast-downloader/skills/pdf-to-images/scripts/pdf_to_images.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 66
    print("  macOS:    brew install imagemagick")         print("  Ubuntu:   sudo apt-get install imagemagick")         print("  Windows:  https://imagemagick.org/script/download.php")
  • Dangerous shell operationline 67
    print("  Ubuntu:   sudo apt-get install imagemagick")
  • Network accessline 67
    print("  Ubuntu:   sudo apt-get install imagemagick")         print("  Windows:  https://imagemagick.org/script/download.php")         sys.exit(1)
  • Network accessline 68
    print("  Windows:  https://imagemagick.org/script/download.php")

02-podcast-downloader/skills/podcast-downloader/SKILL.md

  • Network accessline 41
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id1711052890?i=1000744375610"
  • Network accessline 46
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id1711052890" -n 5
  • Network accessline 51
    python scripts/download_podcast.py "https://podcasts.apple.com/us/podcast/id123456789"
  • Network accessline 144
    - Query episode: `https://itunes.apple.com/lookup?id={episode_id}&entity=podcastEpisode&country={country}`
  • Network accessline 145
    - Query list: `https://itunes.apple.com/lookup?id={podcast_id}&entity=podcastEpisode&country={country}&limit=200`
  • Network accessline 146
    - Get RSS: `https://itunes.apple.com/lookup?id={podcast_id}&country={country}&entity=podcast`
  • Network accessline 168
    **User**: "帮我下载这个播客的最新 3 集: https://podcasts.apple.com/cn/podcast/id1711052890"
  • Network accessline 178
    # Download python /mnt/skills/user/podcast-downloader-v2/scripts/download_podcast.py \   "https://podcasts.apple.com/cn/podcast/id1711052890" \
  • Network accessline 179
    python /mnt/skills/user/podcast-downloader-v2/scripts/download_podcast.py    "https://podcasts.apple.com/cn/podcast/id1711052890"
  • Network accessline 180
    "https://podcasts.apple.com/cn/podcast/id1711052890" \

02-podcast-downloader/skills/podcast-downloader/references/api_reference.md

  • Network accessline 7
    Official Documentation: https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/
  • Network accessline 12
    https://itunes.apple.com/lookup
  • Network accessline 32
    GET https://itunes.apple.com/lookup?id={episode_id}&entity=podcastEpisode&country={country}
  • Network accessline 37
    GET https://itunes.apple.com/lookup?id=1000744375610&entity=podcastEpisode&country=cn
  • Network accessline 53
    "collectionCensoredName": "独树不成林",       "trackCensoredName": "289-我在童年如何与权威周旋?",       "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 54
    "trackCensoredName": "289-我在童年如何与权威周旋?",       "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",       "feedUrl": "https://feed.xyzfm.space/...",
  • Network accessline 55
    "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 56
    "feedUrl": "https://feed.xyzfm.space/...",
  • Network accessline 57
    "trackViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 58
    "artworkUrl30": "https://is1-ssl.mzstatic.com/image/.../30x30bb.jpg",
  • Network accessline 59
    "artworkUrl60": "https://is1-ssl.mzstatic.com/image/.../60x60bb.jpg",
  • Network accessline 60
    "artworkUrl100": "https://is1-ssl.mzstatic.com/image/.../100x100bb.jpg",
  • Network accessline 75
    "primaryGenreName": "Society & Culture",       "contentAdvisoryRating": "Clean",       "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
  • Network accessline 76
    "contentAdvisoryRating": "Clean",       "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",       "genreIds": ["1324", "26"],
  • Network accessline 77
    "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
  • Network accessline 80
    "episodeFileExtension": "m4a",       "episodeContentType": "audio",       "episodeUrl": "https://...",
  • Network accessline 81
    "episodeContentType": "audio",       "episodeUrl": "https://...",       "closedCaptioning": "none",
  • Network accessline 82
    "episodeUrl": "https://...",
  • Network accessline 108
    GET https://itunes.apple.com/lookup?id={podcast_id}&entity=podcastEpisode&country={country}&limit={limit}
  • Network accessline 113
    GET https://itunes.apple.com/lookup?id=1711052890&entity=podcastEpisode&country=cn&limit=200
  • Network accessline 129
    "collectionCensoredName": "独树不成林",       "trackCensoredName": "独树不成林",       "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 130
    "trackCensoredName": "独树不成林",       "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",       "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",
  • Network accessline 131
    "collectionViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 132
    "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",
  • Network accessline 133
    "trackViewUrl": "https://podcasts.apple.com/cn/podcast/...",
  • Network accessline 134
    "artworkUrl30": "https://is1-ssl.mzstatic.com/image/.../30x30bb.jpg",
  • Network accessline 135
    "artworkUrl60": "https://is1-ssl.mzstatic.com/image/.../60x60bb.jpg",
  • Network accessline 136
    "artworkUrl100": "https://is1-ssl.mzstatic.com/image/.../100x100bb.jpg",
  • Network accessline 146
    "primaryGenreName": "Society & Culture",       "contentAdvisoryRating": "Clean",       "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
  • Network accessline 147
    "contentAdvisoryRating": "Clean",       "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",       "genreIds": ["1324", "26"],
  • Network accessline 148
    "artworkUrl600": "https://is1-ssl.mzstatic.com/image/.../600x600bb.jpg",
  • Network accessline 182
    GET https://itunes.apple.com/lookup?id={podcast_id}&entity=podcast&country={country}
  • Network accessline 187
    GET https://itunes.apple.com/lookup?id=1711052890&entity=podcast&country=cn
  • Network accessline 200
    "artistName": "XYZ.FM",       "collectionName": "独树不成林",       "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",
  • Network accessline 201
    "collectionName": "独树不成林",       "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",       "trackCount": 272,
  • Network accessline 202
    "feedUrl": "https://feed.xyzfm.space/y9qnpfdrctnx",
  • Network accessline 278
    | `releaseDate` | string | ISO 8601 datetime | `"2025-01-10T00:00:00Z"` | | `trackTimeMillis` | number | Duration (ms) | `2415000` (40.25 min) | | `episodeUrl` | string | Audio file URL | `"https://..."` |
  • Network accessline 279
    | `trackTimeMillis` | number | Duration (ms) | `2415000` (40.25 min) | | `episodeUrl` | string | Audio file URL | `"https://..."` | | `episodeFileExtension` | string | File type | `"m4a"`, `"mp3"` |
  • Network accessline 280
    | `episodeUrl` | string | Audio file URL | `"https://..."` |
  • Network accessline 348
    response = requests.get(url)
  • Network accessline 359
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36' } response = requests.get(url, headers=headers)
  • Network accessline 361
    response = requests.get(url, headers=headers)
  • Network accessline 425
    try:     response = requests.get(url, timeout=10)
  • Network accessline 426
    response = requests.get(url, timeout=10)
  • Network accessline 457
    def get_podcast_episodes(podcast_id, country='us', limit=10):     url = f"https://itunes.apple.com/lookup"
  • Network accessline 458
    url = f"https://itunes.apple.com/lookup"
  • Network accessline 469
    response = requests.get(url, params=params, headers=headers)
  • Network accessline 487
    # Get podcast with episodes curl -H "User-Agent: Mozilla/5.0" \
  • Network accessline 488
    curl -H "User-Agent: Mozilla/5.0" \
  • Network accessline 489
    "https://itunes.apple.com/lookup?id=1711052890&entity=podcastEpisode&country=cn&limit=10"
  • Network accessline 491
    # Get specific episode curl -H "User-Agent: Mozilla/5.0" \
  • Network accessline 492
    curl -H "User-Agent: Mozilla/5.0" \
  • Network accessline 493
    "https://itunes.apple.com/lookup?id=1000744375610&entity=podcastEpisode&country=cn"
  • Network accessline 498
    - **Official Docs**: https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/
  • Network accessline 499
    - **Podcast RSS Spec**: https://help.apple.com/itc/podcasts_connect/#/itcb54353390
  • Network accessline 500
    - **RSS 2.0 Spec**: https://www.rssboard.org/rss-specification
  • Network accessline 501
    - **Podcast Namespace**: https://github.com/Podcastindex-org/podcast-namespace

02-podcast-downloader/skills/podcast-downloader/references/technical_details.md

  • Network accessline 30
    https://podcasts.apple.com/cn/podcast/podcast-name/id1711052890?i=1000744375610
  • Network accessline 67
    GET https://itunes.apple.com/lookup
  • Network accessline 84
    "releaseDate": "2025-01-10T00:00:00Z",       "trackTimeMillis": 2415000,       "episodeUrl": "https://...",
  • Network accessline 85
    "trackTimeMillis": 2415000,       "episodeUrl": "https://...",       "description": "..."
  • Network accessline 86
    "episodeUrl": "https://...",
  • Network accessline 108
    GET https://itunes.apple.com/lookup
  • Network accessline 123
    "collectionName": "独树不成林",       "artistName": "XYZ.FM",       "feedUrl": "https://feed.xyzfm.space/..."
  • Network accessline 124
    "artistName": "XYZ.FM",       "feedUrl": "https://feed.xyzfm.space/..."     },
  • Network accessline 125
    "feedUrl": "https://feed.xyzfm.space/..."
  • Network accessline 161
    GET https://itunes.apple.com/lookup
  • Network accessline 193
    response = requests.get(url, stream=True, timeout=60, headers={
  • Network accessline 338
    try:     response = requests.get(url, timeout=60)
  • Network accessline 339
    response = requests.get(url, timeout=60)
  • Network accessline 347
    try:     response = requests.get(url)
  • Network accessline 348
    response = requests.get(url)
  • Network accessline 401
    https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/
  • Network accessline 470
    - HTTP client library - Used for API calls and audio downloads - https://docs.python-requests.org/
  • Network accessline 472
    - https://docs.python-requests.org/
  • Network accessline 475
    - RSS/Atom feed parser - Fallback for when API unavailable - https://pythonhosted.org/feedparser/
  • Network accessline 477
    - https://pythonhosted.org/feedparser/
  • Network accessline 492
    # Test URL parsing url = "https://podcasts.apple.com/cn/podcast/id123456?i=789012"
  • Network accessline 493
    url = "https://podcasts.apple.com/cn/podcast/id123456?i=789012"
  • Network accessline 508
    # Test with real podcast python scripts/download_podcast.py \   "https://podcasts.apple.com/us/podcast/id1200361736" \
  • Network accessline 509
    python scripts/download_podcast.py    "https://podcasts.apple.com/us/podcast/id1200361736"
  • Network accessline 510
    "https://podcasts.apple.com/us/podcast/id1200361736" \

02-podcast-downloader/skills/podcast-downloader/references/usage_guide.md

  • Network accessline 15
    # Download specific episode python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/xxx/id123456?i=789012"
  • Network accessline 16
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/xxx/id123456?i=789012"
  • Network accessline 18
    # Download latest 5 episodes python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 5
  • Network accessline 19
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 5
  • Network accessline 21
    # Download to specific directory python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 10 -o ~/Downloads
  • Network accessline 22
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 10 -o ~/Downloads
  • Network accessline 32
    python scripts/download_podcast.py \   "https://podcasts.apple.com/cn/podcast/独树不成林/id1711052890?i=1000744375610"
  • Network accessline 33
    "https://podcasts.apple.com/cn/podcast/独树不成林/id1711052890?i=1000744375610"
  • Network accessline 68
    python scripts/download_podcast.py \   "https://podcasts.apple.com/cn/podcast/id1711052890" \
  • Network accessline 69
    "https://podcasts.apple.com/cn/podcast/id1711052890" \
  • Network accessline 86
    python scripts/download_podcast.py \   "https://podcasts.apple.com/us/podcast/the-daily/id1200361736"
  • Network accessline 87
    "https://podcasts.apple.com/us/podcast/the-daily/id1200361736"
  • Network accessline 96
    python scripts/download_podcast.py "https://podcasts.apple.com/cn/podcast/id123456" -n 3
  • Network accessline 101
    python scripts/download_podcast.py "https://podcasts.apple.com/us/podcast/id789012" -n 3
  • Network accessline 106
    python scripts/download_podcast.py "https://podcasts.apple.com/jp/podcast/id345678" -n 3
  • Network accessline 115
    - `url` (required): Apple Podcast URL   - Format: `https://podcasts.apple.com/{region}/podcast/{name}/id{podcast_id}`
  • Network accessline 116
    - Format: `https://podcasts.apple.com/{region}/podcast/{name}/id{podcast_id}`
  • Network accessline 173
    "description": "在这期节目中...",   "audio_file": "001 - 289-我在童年如何与权威周旋?.m4a",   "download_url": "https://..."
  • Network accessline 174
    "audio_file": "001 - 289-我在童年如何与权威周旋?.m4a",   "download_url": "https://..." }
  • Network accessline 175
    "download_url": "https://..."
  • Network accessline 186
    # Download latest 10 episodes success = download_from_apple_url(     apple_url="https://podcasts.apple.com/cn/podcast/id1711052890",
  • Network accessline 187
    success = download_from_apple_url(     apple_url="https://podcasts.apple.com/cn/podcast/id1711052890",     output_dir="/path/to/output",
  • Network accessline 188
    apple_url="https://podcasts.apple.com/cn/podcast/id1711052890",
  • Network accessline 213
    # Create a file with URLs cat > podcasts.txt << EOF https://podcasts.apple.com/cn/podcast/id1711052890
  • Network accessline 214
    cat > podcasts.txt << EOF https://podcasts.apple.com/cn/podcast/id1711052890 https://podcasts.apple.com/us/podcast/id1200361736
  • Network accessline 215
    https://podcasts.apple.com/cn/podcast/id1711052890
  • Network accessline 216
    https://podcasts.apple.com/us/podcast/id1200361736
  • Network accessline 217
    https://podcasts.apple.com/jp/podcast/id123456789
  • Network accessline 344
    - Apple Podcasts: https://podcasts.apple.com
  • Network accessline 345
    - iTunes Search API: https://developer.apple.com/library/archive/documentation/AudioVideo/Conceptual/iTuneSearchAPI/ - Feedparser docs: https://pythonhosted.org/feedparser/ - Requests docs: https://docs.python-requests.org/
  • Network accessline 346
    - Feedparser docs: https://pythonhosted.org/feedparser/
  • Network accessline 347
    - Requests docs: https://docs.python-requests.org/

02-podcast-downloader/skills/podcast-downloader/scripts/download_podcast.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 50
    api_url = f"https://itunes.apple.com/lookup?id={collection_id}&entity=podcastEpisode&country={country_code}&limit={limit}"
  • Network accessline 52
    try:         print(f"📡 正在通过 API 获取节目信息...")         resp = requests.get(api_url, timeout=15, headers={
  • Network accessline 53
    print(f"📡 正在通过 API 获取节目信息...")         resp = requests.get(api_url, timeout=15, headers={             'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36'
  • Network accessline 54
    resp = requests.get(api_url, timeout=15, headers={
  • Network accessline 81
    track_url = f"https://itunes.apple.com/lookup?id={episode_id}&entity=podcastEpisode&country={country_code}"
  • Network accessline 83
    try:         resp = requests.get(track_url, timeout=10, headers={
  • Network accessline 84
    resp = requests.get(track_url, timeout=10, headers={
  • Network accessline 102
    lookup_url = f"https://itunes.apple.com/lookup?id={podcast_id}&country={country_code}&entity=podcast"
  • Network accessline 104
    try:         resp = requests.get(lookup_url, timeout=10)
  • Network accessline 105
    resp = requests.get(lookup_url, timeout=10)
  • Network accessline 165
    try:         print(f"   ⬇<U+FE0F>  正在下载: {episode_title}")         response = requests.get(url, stream=True, timeout=60, headers={
  • Network accessline 166
    print(f"   ⬇<U+FE0F>  正在下载: {episode_title}")         response = requests.get(url, stream=True, timeout=60, headers={             'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36'
  • Network accessline 167
    response = requests.get(url, stream=True, timeout=60, headers={
  • Network accessline 339
    %(prog)s "https://podcasts.apple.com/cn/podcast/id123456?i=789012"
  • Network accessline 342
    %(prog)s "https://podcasts.apple.com/cn/podcast/id123456" -n 5
  • Network accessline 345
    %(prog)s "https://podcasts.apple.com/us/podcast/id123456"
  • Network accessline 348
    %(prog)s "https://podcasts.apple.com/cn/podcast/id123456" -n 10 -o /path/to/output

02-podcast-downloader/skills/youtube-downloader/SKILL.md

  • Network accessline 42
    python scripts/download_video.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
  • Network accessline 47
    python scripts/download_video.py "https://www.youtube.com/watch?v=VIDEO_ID" -f 1080
  • Network accessline 52
    python scripts/download_video.py "https://www.youtube.com/watch?v=VIDEO_ID" --audio-only
  • Network accessline 57
    python scripts/download_video.py "https://www.youtube.com/watch?v=VIDEO_ID" --subtitles
  • Network accessline 62
    python scripts/download_video.py "https://www.youtube.com/playlist?list=PLAYLIST_ID" --playlist
  • Network accessline 67
    python scripts/download_video.py "https://www.youtube.com/playlist?list=PLAYLIST_ID" --playlist -n 5
  • Access to secretsline 183
    [Credential-related source omitted]
  • Access to secretsline 192
    [Credential-related source omitted]
  • Network accessline 199
    **User**: "帮我下载这个 YouTube 视频: https://www.youtube.com/watch?v=dQw4w9WgXcQ"
  • Network accessline 206
    # Download video python /mnt/skills/user/youtube-downloader/scripts/download_video.py \   "https://www.youtube.com/watch?v=dQw4w9WgXcQ" \
  • Network accessline 207
    python /mnt/skills/user/youtube-downloader/scripts/download_video.py    "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
  • Network accessline 208
    "https://www.youtube.com/watch?v=dQw4w9WgXcQ" \
  • Access to secretsline 260
    [Credential-related source omitted]
  • Network accessline 284
    - [yt-dlp GitHub](https://github.com/yt-dlp/yt-dlp)
  • Network accessline 285
    - [yt-dlp Documentation](https://github.com/yt-dlp/yt-dlp#readme)
  • Network accessline 286
    - [Supported Sites](https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md)

02-podcast-downloader/skills/youtube-downloader/scripts/download_video.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 256
    %(prog)s "https://www.youtube.com/watch?v=VIDEO_ID"
  • Network accessline 259
    %(prog)s "https://www.youtube.com/watch?v=VIDEO_ID" -f 1080
  • Network accessline 262
    %(prog)s "https://www.youtube.com/watch?v=VIDEO_ID" --audio-only
  • Network accessline 265
    %(prog)s "https://www.youtube.com/watch?v=VIDEO_ID" --subtitles
  • Network accessline 268
    %(prog)s "https://www.youtube.com/playlist?list=PLAYLIST_ID" --playlist -n 5

10-ai-ppt-skills/skills/visual-deck/examples/minimal/build.js

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/examples/minimal/html2pptx.js

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/examples/minimal/notes-map.js

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/examples/minimal/package-lock.json

  • Network accessline 16
    "node_modules/@emnapi/runtime": {       "version": "1.9.2",       "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.2.tgz",
  • Network accessline 17
    "version": "1.9.2",       "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.2.tgz",       "integrity": "sha512-3U4+MIWHImeyu1wnmVygh5WlgfYDtyf0k8AbLhMFxOipihf6nrWC4syIm/SwEeec0mNSafiiNnMJwbza/Is6Lw==",
  • Network accessline 18
    "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.2.tgz",
  • Network accessline 26
    "node_modules/@img/colour": {       "version": "1.1.0",       "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz",
  • Network accessline 27
    "version": "1.1.0",       "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz",       "integrity": "sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==",
  • Network accessline 28
    "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz",
  • Network accessline 35
    "node_modules/@img/sharp-darwin-arm64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz",
  • Network accessline 36
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz",       "integrity": "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==
  • Network accessline 37
    "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz",
  • Network accessline 49
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 50
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 51
    "url": "https://opencollective.com/libvips"
  • Network accessline 57
    "node_modules/@img/sharp-darwin-x64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz",
  • Network accessline 58
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz",       "integrity": "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==",
  • Network accessline 59
    "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz",
  • Network accessline 71
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 72
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 73
    "url": "https://opencollective.com/libvips"
  • Network accessline 79
    "node_modules/@img/sharp-libvips-darwin-arm64": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz",
  • Network accessline 80
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz",       "integrity": "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCv
  • Network accessline 81
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz",
  • Network accessline 90
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 91
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 92
    "url": "https://opencollective.com/libvips"
  • Network accessline 95
    "node_modules/@img/sharp-libvips-darwin-x64": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz",
  • Network accessline 96
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz",       "integrity": "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdj
  • Network accessline 97
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz",
  • Network accessline 106
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 107
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 108
    "url": "https://opencollective.com/libvips"
  • Network accessline 111
    "node_modules/@img/sharp-libvips-linux-arm": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz",
  • Network accessline 112
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz",       "integrity": "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11
  • Network accessline 113
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz",
  • Network accessline 122
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 123
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 124
    "url": "https://opencollective.com/libvips"
  • Network accessline 127
    "node_modules/@img/sharp-libvips-linux-arm64": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz",
  • Network accessline 128
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz",       "integrity": "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28
  • Network accessline 129
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz",
  • Network accessline 138
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 139
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 140
    "url": "https://opencollective.com/libvips"
  • Network accessline 143
    "node_modules/@img/sharp-libvips-linux-ppc64": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz",
  • Network accessline 144
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz",       "integrity": "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQ
  • Network accessline 145
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz",
  • Network accessline 154
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 155
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 156
    "url": "https://opencollective.com/libvips"
  • Network accessline 159
    "node_modules/@img/sharp-libvips-linux-riscv64": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz",
  • Network accessline 160
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz",       "integrity": "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNb
  • Network accessline 161
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz",
  • Network accessline 170
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 171
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 172
    "url": "https://opencollective.com/libvips"
  • Network accessline 175
    "node_modules/@img/sharp-libvips-linux-s390x": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz",
  • Network accessline 176
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz",       "integrity": "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdw
  • Network accessline 177
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz",
  • Network accessline 186
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 187
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 188
    "url": "https://opencollective.com/libvips"
  • Network accessline 191
    "node_modules/@img/sharp-libvips-linux-x64": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz",
  • Network accessline 192
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz",       "integrity": "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfA
  • Network accessline 193
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz",
  • Network accessline 202
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 203
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 204
    "url": "https://opencollective.com/libvips"
  • Network accessline 207
    "node_modules/@img/sharp-libvips-linuxmusl-arm64": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz",
  • Network accessline 208
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz",       "integrity": "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0p
  • Network accessline 209
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz",
  • Network accessline 218
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 219
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 220
    "url": "https://opencollective.com/libvips"
  • Network accessline 223
    "node_modules/@img/sharp-libvips-linuxmusl-x64": {       "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz",
  • Network accessline 224
    "version": "1.2.4",       "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz",       "integrity": "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCyl
  • Network accessline 225
    "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz",
  • Network accessline 234
    ],       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 235
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 236
    "url": "https://opencollective.com/libvips"
  • Network accessline 239
    "node_modules/@img/sharp-linux-arm": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz",
  • Network accessline 240
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz",       "integrity": "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==",
  • Network accessline 241
    "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz",
  • Network accessline 253
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 254
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 255
    "url": "https://opencollective.com/libvips"
  • Network accessline 261
    "node_modules/@img/sharp-linux-arm64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz",
  • Network accessline 262
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz",       "integrity": "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==",
  • Network accessline 263
    "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz",
  • Network accessline 275
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 276
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 277
    "url": "https://opencollective.com/libvips"
  • Network accessline 283
    "node_modules/@img/sharp-linux-ppc64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz",
  • Network accessline 284
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz",       "integrity": "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==",
  • Network accessline 285
    "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz",
  • Network accessline 297
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 298
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 299
    "url": "https://opencollective.com/libvips"
  • Network accessline 305
    "node_modules/@img/sharp-linux-riscv64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz",
  • Network accessline 306
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz",       "integrity": "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw
  • Network accessline 307
    "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz",
  • Network accessline 319
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 320
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 321
    "url": "https://opencollective.com/libvips"
  • Network accessline 327
    "node_modules/@img/sharp-linux-s390x": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz",
  • Network accessline 328
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz",       "integrity": "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==",
  • Network accessline 329
    "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz",
  • Network accessline 341
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 342
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 343
    "url": "https://opencollective.com/libvips"
  • Network accessline 349
    "node_modules/@img/sharp-linux-x64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz",
  • Network accessline 350
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz",       "integrity": "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==",
  • Network accessline 351
    "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz",
  • Network accessline 363
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 364
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 365
    "url": "https://opencollective.com/libvips"
  • Network accessline 371
    "node_modules/@img/sharp-linuxmusl-arm64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz",
  • Network accessline 372
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz",       "integrity": "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id
  • Network accessline 373
    "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz",
  • Network accessline 385
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 386
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 387
    "url": "https://opencollective.com/libvips"
  • Network accessline 393
    "node_modules/@img/sharp-linuxmusl-x64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz",
  • Network accessline 394
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz",       "integrity": "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q
  • Network accessline 395
    "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz",
  • Network accessline 407
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 408
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 409
    "url": "https://opencollective.com/libvips"
  • Network accessline 415
    "node_modules/@img/sharp-wasm32": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz",
  • Network accessline 416
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz",       "integrity": "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==",
  • Network accessline 417
    "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz",
  • Network accessline 429
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 430
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 431
    "url": "https://opencollective.com/libvips"
  • Network accessline 434
    "node_modules/@img/sharp-win32-arm64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz",
  • Network accessline 435
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz",       "integrity": "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==",
  • Network accessline 436
    "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz",
  • Network accessline 448
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 449
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 450
    "url": "https://opencollective.com/libvips"
  • Network accessline 453
    "node_modules/@img/sharp-win32-ia32": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz",
  • Network accessline 454
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz",       "integrity": "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==",
  • Network accessline 455
    "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz",
  • Network accessline 467
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 468
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 469
    "url": "https://opencollective.com/libvips"
  • Network accessline 472
    "node_modules/@img/sharp-win32-x64": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz",
  • Network accessline 473
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz",       "integrity": "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==",
  • Network accessline 474
    "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz",
  • Network accessline 486
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 487
    "funding": {         "url": "https://opencollective.com/libvips"       }
  • Network accessline 488
    "url": "https://opencollective.com/libvips"
  • Network accessline 491
    "node_modules/@types/node": {       "version": "22.19.17",       "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.17.tgz",
  • Network accessline 492
    "version": "22.19.17",       "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.17.tgz",       "integrity": "sha512-wGdMcf+vPYM6jikpS/qhg6WiqSV/OhG+jeeHT/KlVqxYfD40iYJf9/AE1uQxVWFvU7MipKRkRv8NSHiCGgPr8Q==",
  • Network accessline 493
    "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.17.tgz",
  • Network accessline 500
    "node_modules/core-util-is": {       "version": "1.0.3",       "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
  • Network accessline 501
    "version": "1.0.3",       "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",       "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
  • Network accessline 502
    "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
  • Network accessline 506
    "node_modules/detect-libc": {       "version": "2.1.2",       "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz",
  • Network accessline 507
    "version": "2.1.2",       "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz",       "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==",
  • Network accessline 508
    "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz",
  • Network accessline 515
    "node_modules/fsevents": {       "version": "2.3.2",       "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
  • Network accessline 516
    "version": "2.3.2",       "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",       "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
  • Network accessline 517
    "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
  • Network accessline 529
    "node_modules/https": {       "version": "1.0.0",       "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz",
  • Network accessline 530
    "version": "1.0.0",       "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz",       "integrity": "sha512-4EC57ddXrkaF0x83Oj8sM6SLQHAWXw90Skqu2M4AEWENZ3F02dFJE/GARA8igO79tcgYqGrD7ae4f5L3um2lgg==",
  • Network accessline 531
    "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz",
  • Network accessline 535
    "node_modules/image-size": {       "version": "1.2.1",       "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz",
  • Network accessline 536
    "version": "1.2.1",       "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz",       "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==",
  • Network accessline 537
    "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz",
  • Network accessline 550
    "node_modules/immediate": {       "version": "3.0.6",       "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
  • Network accessline 551
    "version": "3.0.6",       "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",       "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==",
  • Network accessline 552
    "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
  • Network accessline 556
    "node_modules/inherits": {       "version": "2.0.4",       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
  • Network accessline 557
    "version": "2.0.4",       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",       "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
  • Network accessline 558
    "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
  • Network accessline 562
    "node_modules/isarray": {       "version": "1.0.0",       "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
  • Network accessline 563
    "version": "1.0.0",       "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",       "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
  • Network accessline 564
    "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
  • Network accessline 568
    "node_modules/jszip": {       "version": "3.10.1",       "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz",
  • Network accessline 569
    "version": "3.10.1",       "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz",       "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==",
  • Network accessline 570
    "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz",
  • Network accessline 580
    "node_modules/lie": {       "version": "3.3.0",       "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",
  • Network accessline 581
    "version": "3.3.0",       "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",       "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==",
  • Network accessline 582
    "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",
  • Network accessline 589
    "node_modules/pako": {       "version": "1.0.11",       "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
  • Network accessline 590
    "version": "1.0.11",       "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",       "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
  • Network accessline 591
    "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
  • Network accessline 595
    "node_modules/playwright": {       "version": "1.59.1",       "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.59.1.tgz",
  • Network accessline 596
    "version": "1.59.1",       "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.59.1.tgz",       "integrity": "sha512-C8oWjPR3F81yljW9o5OxcWzfh6avkVwDD2VYdwIGqTkl+OGFISgypqzfu7dOe4QNLL2aqcWBmI3PMtLIK233lw==",
  • Network accessline 597
    "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.59.1.tgz",
  • Network accessline 613
    "node_modules/playwright-core": {       "version": "1.59.1",       "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.1.tgz",
  • Network accessline 614
    "version": "1.59.1",       "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.1.tgz",       "integrity": "sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==",
  • Network accessline 615
    "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.1.tgz",
  • Network accessline 625
    "node_modules/pptxgenjs": {       "version": "4.0.1",       "resolved": "https://registry.npmjs.org/pptxgenjs/-/pptxgenjs-4.0.1.tgz",
  • Network accessline 626
    "version": "4.0.1",       "resolved": "https://registry.npmjs.org/pptxgenjs/-/pptxgenjs-4.0.1.tgz",       "integrity": "sha512-TeJISr8wouAuXw4C1F/mC33xbZs/FuEG6nH9FG1Zj+nuPcGMP5YRHl6X+j3HSUnS1f3at6k75ZZXPMZlA5Lj9A==",
  • Network accessline 627
    "resolved": "https://registry.npmjs.org/pptxgenjs/-/pptxgenjs-4.0.1.tgz",
  • Network accessline 637
    "node_modules/process-nextick-args": {       "version": "2.0.1",       "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
  • Network accessline 638
    "version": "2.0.1",       "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",       "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
  • Network accessline 639
    "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
  • Network accessline 643
    "node_modules/queue": {       "version": "6.0.2",       "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz",
  • Network accessline 644
    "version": "6.0.2",       "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz",       "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==",
  • Network accessline 645
    "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz",
  • Network accessline 652
    "node_modules/readable-stream": {       "version": "2.3.8",       "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
  • Network accessline 653
    "version": "2.3.8",       "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",       "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
  • Network accessline 654
    "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
  • Network accessline 667
    "node_modules/safe-buffer": {       "version": "5.1.2",       "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
  • Network accessline 668
    "version": "5.1.2",       "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",       "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
  • Network accessline 669
    "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
  • Network accessline 673
    "node_modules/semver": {       "version": "7.7.4",       "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
  • Network accessline 674
    "version": "7.7.4",       "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",       "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
  • Network accessline 675
    "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
  • Network accessline 685
    "node_modules/setimmediate": {       "version": "1.0.5",       "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
  • Network accessline 686
    "version": "1.0.5",       "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",       "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==",
  • Network accessline 687
    "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
  • Network accessline 691
    "node_modules/sharp": {       "version": "0.34.5",       "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz",
  • Network accessline 692
    "version": "0.34.5",       "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz",       "integrity": "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==",
  • Network accessline 693
    "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz",
  • Network accessline 704
    },       "funding": {         "url": "https://opencollective.com/libvips"
  • Network accessline 705
    "funding": {         "url": "https://opencollective.com/libvips"       },
  • Network accessline 706
    "url": "https://opencollective.com/libvips"
  • Network accessline 735
    "node_modules/string_decoder": {       "version": "1.1.1",       "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
  • Network accessline 736
    "version": "1.1.1",       "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",       "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
  • Network accessline 737
    "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
  • Network accessline 744
    "node_modules/tslib": {       "version": "2.8.1",       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
  • Network accessline 745
    "version": "2.8.1",       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",       "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
  • Network accessline 746
    "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
  • Network accessline 751
    "node_modules/undici-types": {       "version": "6.21.0",       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
  • Network accessline 752
    "version": "6.21.0",       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",       "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
  • Network accessline 753
    "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
  • Network accessline 757
    "node_modules/util-deprecate": {       "version": "1.0.2",       "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
  • Network accessline 758
    "version": "1.0.2",       "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",       "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
  • Network accessline 759
    "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",

10-ai-ppt-skills/skills/visual-deck/examples/minimal/package.json

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/pipeline/html2pptx.js

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/templates/build.js

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/templates/notes-map.js

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/templates/package.json

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/templates/player.html

  • Network accessline 134
    const next = n + 1;       try {         const r = await fetch(SLIDE_PATTERN(next), { method: 'HEAD' });
  • Network accessline 135
    try {         const r = await fetch(SLIDE_PATTERN(next), { method: 'HEAD' });         if (!r.ok) break;
  • Network accessline 136
    const r = await fetch(SLIDE_PATTERN(next), { method: 'HEAD' });

10-ai-ppt-skills/skills/visual-deck/templates/tools/check-overflow.js

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/templates/tools/fix-html-for-pptx.js

  • Executable scriptline 1
    Executable file

10-ai-ppt-skills/skills/visual-deck/templates/tools/scrim-bake.js

  • Executable scriptline 1
    Executable file

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 380 facts

and 330 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativePath CLAUDE.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md 01-notebooklm/.claude/skills/podcast-downloader/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.