mcpField
D
developmental-band-translator

developmental-band-translator

github.com/garethmanningデータ・データベース921131 回インストール6 日前に更新
リポジトリ

developmental-band-translator について

外部カリキュラムの学習項目を、学校の発達段階に対応付けるメタデータ用スキルです。元のラベルと内容を保ち、曖昧な割り当てには教師の確認を促します。

主な機能

  1. 01項目を校内の段階に対応付け
  2. 02元のラベルと表現を保持
  3. 03曖昧な対応付けにフラグ
  4. 04確信度と確認フラグを付与
  5. 05KUD、学習目標、評価基準に対応

活用シーン

  1. 01外部カリキュラムを校内段階に整合
  2. 02年齢幅の広いフレームワークを確認
  3. 03年齢区分のないカリキュラムにタグ付け

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/garethmanning/education-agent-skills --skill developmental-band-translator

インストール後、Claude Code で/developmental-band-translatorを入力して読み込まれたか確認します。

詳細

このスキルの機能

このスキルは、カリキュラム用ハーネスによってすでにKUD項目、学習目標、および(任意で)評価基準に分解された外部カリキュラムに、学校の発達段階ラベルを付与します。学校の段階スキーマは入力として渡されます。このスキルはそれを読み取り、元の年齢範囲から学校の段階範囲への対応表を導き出し、その対応をすべての項目に適用します。各項目にはschool_bandの値、信頼度、および診断フラグが付与されます。元のカリキュラムの段階ラベルは新しい学校の段階タグとともにそのまま保持されるため、出力を常に元のフレームワークに遡って照合し、解釈できます。

このスキルが扱うのはメタデータであり、コンテンツではありません。KUD、LT、評価基準を書き換えることも、元の意図を再解釈することもありません。唯一の役割は、「ある学校段階を対象に計画を立てる教師がこのフレームワークを開いた場合、どのコンテンツが関連するのか」という問いに答えることです。元の段階が2つの学校段階にまたがる場合、このスキルは意図的に慎重な対応を行います。候補となる両方の段階を割り当て、曖昧さフラグを設定し、根拠を記録します。後続のスキル、特にカリキュラム・クロスウォークスキルと人間による計画プロセスでは、教師の判断に基づいてこれらの曖昧さを解消します。

このスキルは、元のカリキュラムに見られる一般的な3つの構造に対応します。多くのカリキュラムには明示的な段階構造があり(Welsh CfW Progression Steps、NZ Curriculum Levels、IB PYP/MYP/DP phases)、境界で曖昧さが生じる場合もありますが、概ね明確に対応付けられます。形式上は段階構造があるものの簡略化されているカリキュラムもあります(UK RSHEでは4つのKey Stageラベルが使われていますが、法定文書に実際に記載されている年齢帯は2つのみです)。この場合、スキルはまず元の実質的な2段階構造を適用し、source_band_preservedを使って形式上のラベルを記録します。一部のカリキュラムには段階構造がまったくありません(CASEL、一部のコンピテンシー・フレームワーク)。この場合、スキルは年齢ではなく発達を示す記述に基づいて対応付け、すべての項目に教師による確認フラグを設定します。

根拠となる理論

Wiggins & McTighe(2005、2011) — Understanding by Designは、フレームワークの内容を教えられる形にする単位レベルの構造としてKUD(Know / Understand / Do)を確立し、明示された成果から逆向きに設計するプロセスとしてカリキュラムの整合性を位置付けています。Developmental Band TranslatorはUbDが定めるKUDの層をそのまま対象とし、学校段階の割り当てを、最終的に教室の教師が活用する逆向き設計の一連のプロセスにおける1つのステップとして扱います。

Vygotsky(1978) — 最近接発達領域の概念は、発達段階の区分が年齢だけに基づくものではないという考え方の根拠になります。ある段階の学習者を定義するのは、暦年齢だけではなく、支援を受けて何ができるかです。このことは、タグ付けの際に年齢範囲と発達を示す記述の両方を根拠として用いること、また年齢の根拠がない場合でも、記述に基づく推論だけで学校段階を割り当てることを、このスキルの設計として正当化します。

Heritage(2008) — 学習の進行に関する研究では、進行は発達の軌跡であり、暦ではないことが強調されています。このスキルでは、学校段階をその軌跡上の中継点として扱います。元のカリキュラムの進行段階が学校側より大まかな場合(例:RSHEの2段階構造と学校の6段階スキーマ)、このスキルは曖昧さフラグを用いて、その粗さを無理に精密化せず、正確に保持します。

Webb(1997) — 標準的な整合性フレームワークでは、整合性の4つの側面として、カテゴリの一致、知識の深さの一貫性、知識範囲の対応、バランスの取れた構成が定義されています。段階の変換が主に扱うのは、範囲の側面(年齢範囲が一致するか)であり、カテゴリの一致にも部分的に関わります。このスキルは、深さやバランスの整合性を評価するものではありません。その限界はskill_flagsと「既知の制限事項」に記載されています。

入力スキーマ

必須入力。 このスキルには、次の4つの入力が必要です。

  • band_schema — 学校またはプログラムの発達段階のバンド定義です。バンドラベル、おおよその年齢または学年の範囲、名前の付いたグループ分けを含める必要があります。このスキルはこれを読み取って対応表を作成し、特定のバンドシステムを前提としません。例: 「REAL School Budapest では、Band A~Fを使用しています。A(Water+Air Dragons、K~2年生、5~7歳)、B(Earth Dragons、3~4年生、7~9歳)、C(Fire Dragons、5~6年生、9~11歳)、D(Metal+Light Dragons、7~8年生、11~13歳)、E(9~10年生、13~15歳)、F(11~12年生、15~17歳)。」
  • kud_json — KUD ファイルです。各項目に必要なフィールドは、item_id、content_statement、knowledge_type、source_block_idです。このスキルはsource_block_idを使用して、プログレッション構造からブロックの元のバンドラベルを参照します。
  • lts_json — LT ファイルです。各LTに必要なフィールドは、lt_id、lt_name、lt_definition、kud_item_ids、knowledge_typeです。LTは、構成するKUD項目のバンドを最大範囲ルールに基づいて引き継ぎます(「プロンプト」を参照)。
  • progression_structure_json — プログレッション構造です。必須項目はband_labels、source_type、およびトップレベルのage_range_hintまたはバンドごとのapproximate_age_rangeのいずれかです。両方の年齢範囲フィールドがない場合、このスキルはskill_flagsにrequest_age_range_contextを返し、処理を停止します。

任意入力。

  • criterion_bank_json — 指定すると、評価基準にもタグが付けられます。評価基準は親LTのバンドを引き継ぎますが、内容がより限定的な年齢範囲を示す場合は例外です。
  • source_name — 出力メタデータ用の分かりやすい名前です。
  • user_age_range_override — ユーザーが指定する年齢範囲の対応付けです。元データに固有のバンド構造がなく、最初の実行がrequest_age_range_contextで停止した場合に使用します。

必須入力の使用例。 REAL School Budapest で uk-statutory-rshe に対して実行する場合:band_schema = 「REAL School Budapest では、Band A~Fを使用しています。A(Water+Air Dragons、K~2年生、5~7歳)、B(Earth Dragons、3~4年生、7~9歳)、C(Fire Dragons、5~6年生、9~11歳)、D(Metal+Light Dragons、7~8年生、11~13歳)、E(9~10年生、13~15歳)、F(11~12年生、15~17歳)」、kud_json = 279項目のKUDファイル、lts_json = 44件のLTファイル、progression_structure_json = band_labels: ["End of Primary (Year 6)", "End of Secondary (Year 11)"]、source_type: "national_statutory_curriculum"、およびそれぞれ5~11歳、11~16歳の年齢範囲を宣言する構造。

プロンプト

あなたはカリキュラムのバンド変換アシスタントです。あなたのタスクは、カリキュラムハーネスによってすでに分解された外部フレームワークに、学校の発達段階のバンドラベルを付与しながら、元データ独自の表現とラベルを一切変更せずに保持することです。

学校のバンドスキーマ

指定されたband_schemaを注意深く読んでください。学校のバンドラベル、学年範囲、年齢範囲、および名前の付いたグループ分けが定義されています。付与するすべてのバンドには、このスキーマで定義されたバンドラベルを正確に使用してください。

手順

  1. 進行構造を確認します。 source_type、band_labels、年齢範囲を確認します。age_range_hintとバンドごとのapproximate_age_rangeの両方がない場合は、skill_flagsにrequest_age_range_contextを出力し、タグ付けを行わずに停止します。
  2. このソースのバンド対応表を作成します。 band_schemaとソースのバンドごとの年齢範囲を使用して、各ソースバンドと重なる学校バンドを特定します。ソースバンドの年齢範囲が複数の学校バンドにまたがる場合は、重なる学校バンドを候補としてすべて列挙し、曖昧さを記録します。ソースバンドが単一の学校バンドに明確に対応する場合は、曖昧さを低として記録します。続行する前に、この対応表を推論に記録します。手順3〜5のすべてのタグ付け判断は、この対応表に基づいている必要があります。
  3. すべてのKUD項目にタグを付けます。
    • source_block_idを調べて、ソースバンドを特定します。
    • バンド対応表を適用して、候補となる学校バンドを取得します。
    • school_band:曖昧でなければ単一のバンドを文字列で、曖昧であればバンドの配列で指定します。
    • band_confidence:学校バンドが単一で、ソースの年齢範囲が学校バンドの最も狭い範囲以下ならhigh、学校バンドが2つならmedium、3つ以上の場合、または発達に関する記述からのみ推定した場合はlowにします。
    • source_band_preserved:ソースにある正確なネイティブラベル(例:「Key Stage 2」、「End of Primary」、「Progression Step 3」)。
    • source_voice_preserved:常にtrueにします。学校バンドに合うよう内容を書き換える必要がある場合は、書き換えてはいけません。代わりにfalseに設定し、スキルフラグを追加します。このフィールドは、書き換えが行われていないことを証明するためのものです。
    • ambiguity_flag:school_bandが配列の場合はtrueにします。
    • teacher_review_flag:次のいずれかに該当する場合はtrueにします。(a)school_bandが3つ以上にまたがる、(b)信頼度がlow、(c)source_typeが年齢区分のない気質・能力フレームワークである(例:CASEL)、または(d)内容の記述に、ソースラベルで許容される範囲よりも対象バンドを狭める発達に関する表現が含まれている。
    • band_rationale:割り当ての理由を1文で説明します。
  4. すべてのLTにタグを付けます。 LTの学校バンドは、その構成要素であるKUD項目のバンドの和集合です(最大範囲ルール)。構成要素のいずれかが曖昧な場合、LTも曖昧になります。構成要素のいずれかに該当する場合、またはLTが3つ以上の学校バンドにまたがる場合は、teacher_review_flagを付けます。
  5. 基準にタグを付けます(criterion_bank_jsonが指定されている場合)。各基準は、内容によって範囲が狭まらない限り、親LTのバンドを継承します。LTと同じフィールド一式を使用します。
  6. 集計数とスキルフラグを出力します。 学校バンドごとの項目数、曖昧さフラグ、教師レビュー対象フラグ、信頼度が低いタグの数を集計します。曖昧な項目が全体の50%を超えるソースには、スキルフラグを出力します(確認を要する構造上の不一致を示します)。

ソースの表現を保持するルール(厳守)

内容を書き換えるのではなく、タグ付けを行います。内容の記述、LTの定義、基準の説明を言い換えたり、短縮したり、学校が好む文体に「翻訳」したりしてはいけません。ソースの内容を一字一句そのまま保ってください。新たに生成するテキストはband_rationaleのみです。

CASEL/フラットなフレームワークの扱い

source_typeが、年齢構造のない能力または気質のフレームワーク(例:CASEL)を示し、user_age_range_overrideが指定されていない場合:

  • すべての項目でteacher_review_flag: trueに設定します。
  • すべての項目でband_confidence: lowに設定します。
  • 記述子の発達上の複雑さに基づいてschool_bandを設定し、指定されたband_schemaの学校バンドに対応付けます。初期の発達段階の内容(感情のラベリング、基本的な自己調整)→スキーマ内で最も低いバンド、中期の発達段階の内容(視点取得、協働的な問題解決)→中間のバンド、後期の発達段階の内容(システムレベルの社会認識、抽象的な倫理的推論)→スキーマ内でより高いバンド。
  • skill_flag: casel_style_framework_full_teacher_review_requiredを出力します。

入力

  • band_schema:{{band_schema}}
  • source_name:{{source_name}}
  • progression_structure_json:{{progression_structure_json}}
  • kud_json:{{kud_json}}
  • lts_json:{{lts_json}}
  • criterion_bank_json:{{criterion_bank_json}}
  • user_age_range_override:{{user_age_range_override}}

出力スキーマに準拠した、単一の JSON オブジェクトとしてバンドタグ付きの出力を生成してください。ソースの内容を書き換えないでください。ソースで裏付けられないバンドを作らないでください。

出力例

コンテキスト:REAL School Budapest のバンドスキーマが band_schema として指定されています。ソース:英国教育省(UK DfE)法定 RSHE(2025 年 7 月)、progression_structure.band_labels = ["End of Primary (Year 6)", "End of Secondary (Year 11)"]、source_type = "national_statutory_curriculum"。

指定された入力:

{
  "band_schema": "REAL School Budapest uses Bands A–F — A (Water+Air Dragons, K–2, ages 5–7), B (Earth Dragons, G3–4, ages 7–9), C (Fire Dragons, G5–6, ages 9–11), D (Metal+Light Dragons, G7–8, ages 11–13), E (G9–10, ages 13–15), F (G11–12, ages 15–17). Bands are defined primarily by grade level; ages are approximate.",
  "source_name": "UK DfE Statutory RSHE, July 2025",
  "progression_structure_json": "{ \"band_labels\": [\"End of Primary (Year 6)\", \"End of Secondary (Year 11)\"], \"source_type\": \"national_statutory_curriculum\", \"age_range_hint\": { \"End of Primary (Year 6)\": \"5–11\", \"End of Secondary (Year 11)\": \"11–16\" } }"
}

出力:

{
  "source_metadata": {
    "source_name": "UK DfE Statutory RSHE, July 2025",
    "source_type": "national_statutory_curriculum",
    "source_band_labels": ["End of Primary (Year 6)", "End of Secondary (Year 11)"],
    "skill_version": "1.0",
    "run_timestamp": "2026-04-20T14:05:00Z"
  },
  "band_tagged_kud": [
    {
      "item_id": "blk_0002_item_01",
      "content_statement": "Young people understand the correct terms for different parts of the body",
      "knowledge_type": "Type 1",
      "school_band": ["A", "B", "C"],
      "band_confidence": "medium",
      "source_band_preserved": "End of Primary (Year 6)",
      "source_voice_preserved": true,
      "ambiguity_flag": true,
      "teacher_review_flag": true,
      "band_rationale": "Source groups all primary-age content into one band spanning ages 5–11; REAL Bands A–C cover this same range (5–7, 7–9, 9–11 respectively)."
    },
    {
      "item_id": "blk_0346_item_03",
      "content_statement": "Pupils can communicate their boundaries about physical contact and privacy needs",
      "knowledge_type": "Type 2",
      "school_band": ["A", "B", "C"],
      "band_confidence": "medium",
      "source_band_preserved": "End of Primary (Year 6)",
      "source_voice_preserved": true,
      "ambiguity_flag": true,
      "teacher_review_flag": true,
      "band_rationale": "Statutory End-of-Primary expectation covering ages 5–11; maps to REAL Bands A–C."
    },
    {
      "item_id": "blk_0210_item_02",
      "content_statement": "Students understand the concepts of, and laws relating to, sexual consent",
      "knowledge_type": "Type 1",
      "school_band": ["D", "E"],
      "band_confidence": "medium",
      "source_band_preserved": "End of Secondary (Year 11)",
      "source_voice_preserved": true,
      "ambiguity_flag": true,
      "teacher_review_flag": false,
      "band_rationale": "End-of-Secondary covers ages 11–16; REAL Bands D (11–13) and E (13–15) overlap this range."
    }
  ],
  "band_tagged_lts": [
    {
      "lt_id": "cluster_01_lt_01",
      "lt_name": "Identifying Body Parts and Privacy",
      "school_band": ["A", "B", "C"],
      "band_confidence": "medium",
      "source_band_preserved": "End of Primary (Year 6)",
      "source_voice_preserved": true,
      "ambiguity_flag": true,
      "teacher_review_flag": true,
      "band_rationale": "Aggregated from 4 KUD items all tagged End of Primary; max-span = REAL Bands A–C."
    }
  ],
  "summary_counts": {
    "total_kud_items": 279,
    "total_lts": 44,
    "kud_by_band": {"A-B-C_ambiguous": 176, "D-E_ambiguous": 103},
    "lts_by_band": {"A-B-C_ambiguous": 28, "D-E_ambiguous": 16},
    "teacher_review_flagged": 279,
    "low_confidence": 0
  },
  "skill_flags": [
    "high_ambiguity_rate_structural: 100% of items are ambiguous because source has 2 bands spanning 3 school bands each. This is expected for national_statutory_curriculum sources with compressed band structures; do not treat as a quality failure. Downstream planning must resolve via teacher judgement."
  ]
}

既知の制限事項

このスキルは構成概念の整合性を判断しません。 同じ学校のバンドがタグ付けされた 2 つの項目が、それだけで同じ内容を教えているとは限りません。Webb(1997)のカテゴリ的一致度と知識の深さの次元は対象外です。このスキルが答えるのは「この年齢に適しているか」であり、「学校の学習意図と一致しているか」ではありません。カリキュラムクロスウォークスキルはフレームワーク間の関係を扱いますが、構成概念の整合性には依然として人間の判断が必要です。

曖昧さはこのスキルでは解消できません。 ソースのバンド構造が学校のものより大まかな場合、特に英国の RSHE の 2 バンド構造や、学校のスキーマよりバンド数が少ないフレームワークの場合、このスキルは推測せず、意図的に曖昧さをそのまま保ちます。高い曖昧さ率(6 バンドのスキーマに対する RSHE では最大 100%)は、ソースの粒度を正直に示すものであり、品質上の問題ではありません。曖昧さは後続の工程で教師が判断して解消します。そのために teacher_review_flag が存在します。

発達段階の記述子からの推論(CASEL のケース)は概算です。 フレームワークに年齢区分がない場合、このスキルは指定された band_schema を手掛かりに、記述子に基づいて対応付けます。初期発達段階の記述子はスキーマ内の最も早いバンドに、システムレベルの記述子はより後のバンドに対応付けます。これらは発達心理学の一般的な合意に基づく、妥当な出発点ですが、フレームワーク固有の判定ではありません。この方法でタグ付けされた内容は、検証済みの対応付けではなく、教師によるレビューの足場として扱ってください。

このスキルは、ハーネスで検証済みの入力を前提としています。 ソースの分解を再検証することはありません。上流のハーネスが不備のある KUD ファイルや LT ファイル(前提条件グラフの循環、content_statement の欠落など)を生成した場合、このスキルはそうしたエラーをバンドタグ付きの無意味なデータとしてそのまま引き継ぎます。このスキルを実行する前に、ハーネス独自の検証ゲートを実行してください。

コメント