Communitygithub.com

XiucuiGuan/teachany-hepbl

TeachAny 高等教育 PBL 拆解 Agent Skill — 高校課程プロジェクト目標を入力し、知識パス長尺画像+編集可能リンク+HE-PBL設計計画を出力します(v2.0.0)

teachany-hepbl とは?

このAgent Skillは、大学のコースプロジェクト目標を入力として、高品質なHE-PBL(高等教育プロジェクトベース学習)の設計計画を自動生成します。具体的には、(1) PNG形式の長尺画像(HE-PBLの構造分解とコース知識体系グラフ)、(2) インタラクティブなWebページ(プロジェクト書類やチーム情報のオンライン入力、教師へのメール提出機能付き)、(3) TeachAnyプラットフォーム上での編集用URL(`https://www.teachany.cn/pbl?...`)を出力します。分解はTeachAnyの6段階パイプライン(LLM+カリキュラムインデックス)に基づき、指定されたカリキュラムシラバスに沿って行われます。スキルはPythonスクリプト(`scripts/hepbl-decompose.py`)を実行して動作し、Playwrightを使用してページを生成します。設計計画には、三次元目標(知識・能力・素質)、ブルーム分類学のレベル、前提知識、コア概念、プロジェクトフロー、評価可能な成果物が必ず含まれます。また、既存の設計計画文書がある場合、強制的に校正スクリプト(`scripts/calibrate_hepbl.py`)を実行し、正確性を担保します。このスキルはClaude CodeのようなターミナルベースのAIエージェント環境で動作し、教育分野のエージェント開発者やインストラクターにとって、PBL設計の自動化と標準化に非常に有用です。

対応✓Claude Code~Codex CLI~Cursor
npx skills add XiucuiGuan/teachany-hepbl

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

プレビュー

スキル README より

課程知識パス分解

ドキュメント

TeachAnyHEPBL

大学のコースプロジェクト目標(+オプション:分野/コース/成果物)を以下に変換します:

  1. PNG長尺画像 — HE-PBL構造分解+コース知識体系グラフ
  2. インタラクティブWebページ — 長尺画像と同じ内容のインタラクティブなプロジェクト分解Webページで、オンラインで記入可能なプロジェクト書類、チーム情報欄が含まれ、教師のメールアドレスにワンクリックで提出できます(仕様は references/interactive-webpage.md を参照)
  3. 編集URL — https://www.teachany.cn/pbl?...。チャットでの改良、ノード調整、コース教材作成に使用します。

分解にはTeachAnyの6段階パイプライン(LLM+カリキュラムインデックス)をteachany.cn上で使用します。自身で知識ノードを創作せず、ターゲットコースのシラバス(課程大綱/培養方案)に沿って整列させ、章レベルの構造を捏造しないでください。

ワークフロー

  1. コースプロジェクト目標とオプションフィールドを解析します(references/parameters.md を参照)。デフォルトは --grade university です。
  2. このスキルディレクトリ(SKILL.mdがある場所)からバンドルされたCLIを実行します:
python3 scripts/hepbl-decompose.py \
  --goal "ユーザーのプロジェクトタスク原文" \
  --grade university \
  --subject computer-science \
  -o ./pbl-output
  1. 初回実行時、不足する依存関係をインストールします:pip install playwright && playwright install chromium
  2. references/course-blueprint.md に従ってHE-PBL設計計画をドラフトします — 三次元目標、ブルーム分類レベル、前提知識チェーン、学術ワークフロー。references/examples.md をスタイルの参考にしてください。
  3. 設計計画の権威校正(設計計画文書が存在する場合は強制、スキップ不可):設計計画から逐語的にオーバーレイJSONを抽出 → scripts/calibrate_hepbl.py を実行してWebページと長尺画像を再構築します(詳細は以下の「設計計画権威校正ゲート」と「技術ルート可視化仕様」を参照)。
  4. PNGパス、インタラクティブWebページパス、JSONからのノード数、三次元目標、edit_url を返信します(ユーザーに提供するリンクには決して auto=1 を含めないでください)。
  5. Playwrightが失敗した場合は、references/fallback.md に従い、それでも編集リンクを返します。

制限付きマシン置換スクリプト(元のスクリプトを保持し、動作しない場合に使用)

scripts/hepbl-decompose-local.py は元のスクリプトの置換版です(元の hepbl-decompose.py はそのまま保持)。以下の検証済みのローカルマシン問題に対処します:

  1. Playwright付属Chromiumのダウンロード停滞(CDNに到達できない)→ 自動的に channel="msedge" でシステムのEdgeにフォールバック
  2. 360秒タイムアウトが不足 → TIMEOUT_MS = 900_000(PBLページの統一インデックスlocalStorageが割り当て超過、毎回フル再構築に約100~180秒、全フロー実測8~11分。必ずバックグラウンドで実行)
  3. gotoの偶発的な net::ERR_NETWORK_CHANGED → 自動リトライ3回(間隔5秒)
# 使用方法は元のスクリプトと完全に同じ(テンプレートは相対パス ../assets/hepbl-report.html に依存、移動しないこと)
python scripts/hepbl-decompose-local.py --goal "..." --grade university --subject mathematics -o ./pbl-output

トラブルシューティング:長尺画像はあるがインタラクティブWebページがない場合 = スクリプトが別の場所にコピーされて実行され、../assets/ テンプレートが見つからない(静かにスキップされる。テンプレートを同じ階層に戻せば解決)。ローカルマシンでSciPyがWindowsアプリケーション制御ポリシーによりブロックされる場合(_trlib DLL)、LPクラスのプロジェクトコードはPuLP(CBC)を主とし、SciPyはtry/exceptでオプションの相互検証として使用します(NumPy/PuLPは正常動作)。

HE-PBL設計基準(出力に必須)

各設計計画には以下が必須で含まれます:

  • 知識目標/能力目標/素質目標(三次元目標)
  • ブルーム分類学レベル(記憶/理解/応用/分析/評価/創造)各目標ごと
  • 前提知識要件(前提科目・章へのチェーン)
  • コア概念と難所(コース知識体系にマッピング)
  • プロジェクトフロー:文献調査 → 方案設計 → 実施検証 → 成果報告
  • 評価可能な成果物(学術基準付き:実験報告/設計文書/口頭発表)

完全な基準は references/course-blueprint.md を参照してください。

設計計画権威校正ゲート(強制)

設計計画文書(例:「PBL 項目設計方案」md)が存在する場合、エンジンによる分解は初稿に過ぎず、最終成果物は校正ゲートを通過する必要があります:

  1. 逐語的オーバーレイ抽出:ノード名、三次元目標、制約数値、ベンチマーク結果(x*/Z*/影の価格)、フェーズ時間割をすべて設計計画文書から逐語的に抽出し、捏造や書き換えを禁止します。
  2. null削除による汚染除去:エンジンが捏造したフィールド(techRoute/pathPlan/projectBlueprint/stats)はオーバーレイで null に設定し、deep_merge 時に削除。_ プレフィックスのメタデータキーは剥離します。
  3. 長尺画像 = Webページ:scripts/calibrate_hepbl.py を使用してWebページと長尺画像を再構築(Playwrightの全ページスクリーンショット、device_scale_factor=2)。納品前に自己チェックを実施(ノード名が設計計画と一致、ペイロード残留なし、サマリーとノード数が一致)。
  4. 統一タイトル:オーバーレイには title フィールドを含める必要あり(設計計画のタイトルと逐語一致)— Webページのヒーロー、タブ、エクスポートレポート、長尺画像のタイトルはすべて DATA.title から取得(不足時はgoalにフォールバック)。
  5. 編集継続エントリ:Webページ上の「TeachAnyHEで開く」ボタンで @skill:TeachAnyHE スキル呼び出し命令をワンクリックコピー(WorkBuddyのダイアログに貼り付けると高等教育シナリオで編集継続)。エンジン teachany.cn リンクは「TeachAny エンジン初稿」の小さなリンクとして残す(DATA.edit_url)。

技術ルート可視化仕様

  • Webページでは優先的に techStages[](stage/hours/tasks[]/output)+ toolChain[](name/use)の階層フローチャートを描画:ツールチェーンチップ → 矢印結合 → ステージカード(番号丸+接続線+時間バッジ+タスクリスト+ステージ成果)。欠落時は projectPhases の4段階リストにフォールバック。
  • データ契約とブロック構造は references/interactive-webpage.md を参照。完全なオーバーレイ例は references/calibration-example-lp.json を参照。

出力テンプレート

## HE-PBL 課程設計分解

**プロジェクト**:{title}

![課程知識パス分解]({png_path})

- **グラフノード数**:{nodeCount}(シラバス整合 {matched} · 拡張 {external})
- **知識目標**:{...}
- **能力目標**:{...}
- **素質目標**:{...}
- **ブルームレベル**:{...}
- **インタラクティブWebページ**:[プロジェクト分解ページを開く]({html_path})(オンラインでプロジェクト書類、チーム情報を記入し教師メールに提出可能)
- **編集継続**:Webページの「TeachAnyHEで開く」ボタンでスキル呼び出し命令をワンクリックコピー(WorkBuddyのダイアログに貼り付けるとHEシナリオで編集継続)· エンジン初稿リンク:{edit_url}

「TeachAnyHEで開く」ボタンでコピーした命令をWorkBuddyのダイアログに貼り付けると、分解の変更、知識ポイントの調整、ワンクリック教材作成のための対話を続けられます。

環境が画像をサポートしている場合は、チャット内にPNGを表示してください。

なぜグラフを手書きしないのか?

TeachAnyはカリキュラムインデックスに対してノードを照合し、関連性レビューを実行し、依存関係エッジを構築します。単なるLLMリストではシラバス整合が欠け、偽のノードIDが生成されます。

例

完全なHE-PBL例ライブラリ(数学/コンピュータ/通信/電気コース)については references/examples.md を参照してください。クイック例:

例1 — データ構造:python3 scripts/hepbl-decompose.py --goal "キャンパスナビゲーション最短経路システムの設計…" --grade university --subject computer-science --deliverable engineering-prototype -o ./pbl-output

例2 — 信号とシステム:python3 scripts/hepbl-decompose.py --goal "FIRフィルタ設計とスペクトル解析…" --grade university --subject communications --deliverable simulation-report -o ./pbl-output

追加リソース

関連スキル