anthropic-skilljar-extractor について
Anthropic Skilljar Course Extractorは、Skilljarのコースページを整理されたレッスンファイルに変換するスクリプトとワークフローです。埋め込みノートとコース構成を抽出し、図をダウンロードして、生成したMarkdownを拡充する手順を示します。
主な機能
- 01コースノートとレッスンの抽出
- 02コース構成の解析
- 03レッスン図のダウンロード
- 04URLによるレッスンの重複排除
- 05レッスンMarkdownの拡充
活用シーン
- 01ローカルのレッスンファイル作成
- 02抽出したコースノートの整理
- 03コース図への説明追加
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ maystudios/ claude-skills --skill anthropic-skilljar-extractorインストール後、Claude Code で/anthropic-skilljar-extractorを入力して読み込まれたか確認します。
同梱ファイルscripts/extract_course.py
詳細
Anthropic Skilljar コース抽出ツール
ステップ 1:抽出スクリプトを実行する
python3 scripts/extract_course.py \
<skilljar_url> <output_dir>
次の内容が生成されます:
<course-slug>/
├── README.md
├── 01-<section>/
│ ├── 01-<lesson>.md
│ └── ...
└── assets/images/ ← downloaded .webp diagrams
ステップ 2:図を説明する
assets/images/ にあるフルサイズの .webp(-medium.webp ではないもの)ごとに、次の手順を実行します。
Readツールを使って画像を視覚的に確認します- 詳細な代替テキストのブロックを追加し、関連するレッスンの Markdown に
を埋め込みます
トピックに基づいて画像をレッスンに割り当てます。アーキテクチャ図は導入レッスンに、コードのスクリーンショットはハンズオンレッスンに、まとめのスライドは復習レッスンに配置します。
ステップ 3:レッスンの Markdown を充実させる
スクリプトは箇条書きのメモを埋め込みます。各レッスンのファイルを拡充します。
- 概念ごとに適切な
##見出しを追加します - コード例を言語タグ付きのフェンスコードブロックで整形します
- 「Key: value」の行を
**Key:** valueの太字形式に変換します - 比較表(例:メッセージの種類、プリミティブ)を追加します
- フロントマターブロック(Section、URL、Lesson Type)はそのまま残します
ステップ 4:README を強化する
自動生成された README に以下を追加します。
- コースの説明を詳しく記した段落
- 主要な概念の参照表
- すぐに参照できるコードスニペット
- 各画像について一行で説明した図の索引
スクリプトの仕組み(デバッグ用)
- ページの HTML を取得し、
window.__chatDataを抽出します(すべての Skilljar ページに埋め込まれている LLM のメモ) - サイドバーの
<ul class="dp-curriculum">を解析し、セクションとレッスンの構成を取得します d7juhi4i8fsw0.cloudfront.net/images/<slug>/から CloudFront の画像をダウンロードします- URL を使ってレッスンの重複を除去します(カリキュラムの HTML はページソースに二度出現します)
- タイトルの類似度に基づいて、メモをレッスンにファジーマッチングします
ログインが必要な場合
個々のレッスンページは常に認証が必要なため、取得しないでください。 コースのランディングページ自体にログインが必要な場合(スクリプトがレッスンを 0 件検出した場合):
- ページの HTML を保存するようユーザーに依頼します(ブラウザー → 名前を付けて保存 → Web ページ、HTML のみ)
- スクリプトの
fetch()をopen(path).read()に変更し、ローカルファイルを渡します
コメント
Markdown 対応