目次
導入担当者向け設定ガイド
このページは、組織で Exercode を導入する導入担当者(事務局の担当者など)向けに、授業を始めるまでの準備を作業順にまとめています。導入担当者は、手順 1 で組織管理者の権限を受け取り、以降の作業を行います。手順ごとに誰が行えるかは、手順と必要な権限 を参照してください。
詳しい説明や例外的なケースは、各手順の末尾にあるリンク先を参照してください。
用語解説
権限の種類
Exercode には、4 種類の権限が存在します。このほかに、サービス全体を管理するサービス管理者(WillBooster 株式会社)がいます。サービス管理者の権限は、利用者側では設定できません。
| 名称 | 権限 | 想定している人 |
|---|---|---|
| 導入担当者 | 組織管理者 | 学校全体や学部全体の統括者、事務局の担当者。このガイドの読者 |
| 講師 | グループ管理者 | クラスや科目の担当教員、TA。講師向け利用ガイド の読者 |
| 教材作成者 | 教材リポジトリのメンバー | GitHub の教材リポジトリで教材を作成・保守する人 |
| 受講生 | 一般のメンバー | 授業を受ける学生 |
このガイドでは学生を「受講生」と呼びます。画面上では「学生」「学習者」「受講者」と表示されることがありますが、すべて同じ意味です。権限ごとにできることの一覧は 権限の種類とできること を参照してください。
組織とグループ
| 用語 | 意味 | 例 |
|---|---|---|
| 組織 | 学校や大学などの教育機関 | 〇〇大学、〇〇専門学校 |
| グループ | 組織の中のクラスや学科。導入担当者が作成し、講師が担当する単位になります | 〇〇学科 1 年(2026 年度) |
| メンバー | 組織やグループに所属しているユーザー(講師・受講生の両方) |
1 つの組織の中に、複数のグループがあります。イメージとしては、次のようになります。
- 組織(〇〇大学)
- グループ(〇〇学科 1 年 A 組)
- メンバー(講師)
- メンバー(受講生 A)
- メンバー(受講生 B)
- グループ(〇〇学科 1 年 B 組)
- メンバー(講師)
- メンバー(受講生 C)
- メンバー(受講生 D)
- グループ(〇〇学科 1 年 A 組)
教材の構成
| 用語 | 意味 | 例 |
|---|---|---|
| 科目 | 教材全体のまとまり。授業の 1 科目に当たります | Python 言語の基礎、Java 演習 |
| 授業 | 科目を構成する単位。授業の 1 コマに当たります | 第 1 回 変数と型 |
| 教材 | 最小単位の教材。説明文や問題、提出の設定を含みます | 演習 1-1 |
例えば、全 15 回の授業で進める科目「Python 言語の基礎」は、Exercode では次のように登録されています。授業の回ごとに、その回で解く教材が入っています。
- 科目: Python 言語の基礎
- 授業: 第 1 回 変数と型
- 教材: 演習 1-1 変数の宣言
- 教材: 演習 1-2 型の変換
- 授業: 第 2 回 条件分岐
- 教材: 演習 2-1 if 文
- 教材: 演習 2-2 比較演算子
- …(第 15 回まで続く)
- 授業: 第 1 回 変数と型
受講生がこの科目を使えるようにするには、科目をグループに追加します。例えば「Python 言語の基礎」をグループ「情報工学科 1 年 A 組」に追加すると、A 組の受講生の 科目一覧 にこの科目が表示されます。
用語の詳しい説明は 用語解説 を参照してください。
手順と必要な権限
| 手順 | 必要な権限 | 要否 |
|---|---|---|
| 1. 組織管理者のアカウントを用意する | なし(権限の付与は WillBooster 株式会社が行う) | 必須 |
| 2. グループを作り、講師を登録する | 組織管理者 | 必須 |
| 3. 教材を追加する | 組織管理者またはグループ管理者(GitHub から取り込む場合は組織管理者と教材作成者) | 必須 |
| 4. 科目をグループに追加する | 組織管理者またはグループ管理者 | 手順 3-1 で対象グループを選んで作成した場合は不要 |
| 5. 受講生を登録する | 組織管理者(グループへの追加はグループ管理者も可) | 必須 |
| 6. Gemini API キーを登録する | 組織管理者 | 任意 |
| 7. 授業時間を設定する | 組織管理者、グループ管理者または教材作成者 | 任意 |
1. 組織管理者のアカウントを用意する
準備するもの:組織管理者になる方のメールアドレス
組織で最初の 1 回だけ必要な作業です。すでに組織管理者のアカウントがある場合は、手順 2 から始めてください。
1-1. アカウントを作成する
組織管理者になる方が行います。
-
画面右上の
アカウント作成/ログインを押します。 -
組織で利用するメールアドレスを入力します。
-
確認コードを送信を押します。 -
受信したメールに記載された 8 桁の確認コードを入力し、
確認してログインを押します。
1-2. 組織管理者の権限を付与してもらう
権限の付与は、サービス管理者である WillBooster 株式会社側で行います。利用者側では設定できません。
- 作成したアカウントのメールアドレスを、お問い合わせ からご連絡ください。
- 権限が付与されると、右上に表示される
所属メニューに組織名が表示され、そこから組織の設定を開けるようになります。
2. グループを作り、講師を登録する
準備するもの:講師のメールアドレスの一覧
クラスごとのグループを作り、講師を組織に招待してから、グループの管理者にします。組織・グループ・メンバーの関係は、用語解説 の「組織とグループ」を参照してください。
2-1. グループを作る
クラスごとにグループを作ります。組織管理者のみが操作できます。
-
画面右上の
所属を開きます。画面幅が狭い場合は、右上の人型のアイコンのメニューの中にあります。 -
対象の組織名を開きます。
-
グループを開きます。 -
新しいグループを押します。 -
グループ名を入力し、
作成を押します。
グループごとに、受講生の進捗や AI チャットの利用状況を確認できます。確認方法は 講師向け利用ガイド を参照してください。
2-2. 講師を組織に招待する
講師を組織に招待します。組織管理者のみが操作できます。
-
所属を開きます。 -
対象の組織名を開きます。
-
メンバーを開きます。 -
講師のメールアドレスを入力します。改行または空白区切りで、まとめて入力できます。
-
招待する人に合わせて、
アカウントが存在しなければ自動で作成するを設定します。- まだ Exercode を使ったことがない人も招待する場合(初めて授業で使うときなど):チェックを入れます。アカウントがない人にはアカウントが作られ、新しく招待した人に招待メールが届きます。すでに組織のメンバーの人や、招待済みで未承認の人には届きません。
- すでに Exercode のアカウントを持っている人だけを招待する場合:チェックを外します。招待はアカウントを持っている人にだけ送られます。アカウントが見つからなかったメールアドレスは、
組織に招待を押した後に画面へ一覧で表示されます。
-
次の 2 つの設定を確認します。
- 講師は手順 2-3 でグループ管理者として追加するため、この時点では
グループにも招待するは未選択のままにしてください。 組織の管理権限を与えるは組織管理者の権限を与える設定です。講師にも組織全体の管理を任せる場合にだけチェックを入れます。既存メンバーを入力した場合、チェックを入れると組織管理者に昇格します。チェックを外しても既存の管理権限は維持されます。
- 講師は手順 2-3 でグループ管理者として追加するため、この時点では
-
組織に招待ボタンを押します。
招待直後は 未承認の招待 一覧に表示されます。招待された人が招待メールのリンクからログインし、表示される画面で 参加 を押すと、メンバー 一覧へ移動します。招待した講師が参加してから、次の手順 2-3 を行ってください。
2-3. グループに講師を追加する
担当講師をグループ管理者にします。グループ管理者にすると、メンバー追加・科目割り当て・学習分析・授業時間設定を、組織管理者を介さずに講師自身が行えます。
グループに追加できるのは、組織に所属している人だけです。手順 2-2 で招待した講師が参加してから行います。グループにまだ管理者が一人もいない場合、最初のグループ管理者は組織管理者しか追加できません。
-
所属を開きます。 -
組織名を開きます。
-
グループを開きます。 -
対象グループを開きます。
-
メンバーを開きます。 -
追加したい講師のメールアドレスを入力します。
-
管理権限にチェックを入れます。 -
追加・権限の更新を押します。
詳しくは グループを作る、組織にメンバーを招待する、グループに教員を追加する を参照してください。
3. 教材を追加する
科目・授業・教材は、Exercode の画面上で作成する方法と、GitHub の教材リポジトリからインポートする方法があります。作成・管理する方法に合わせて、手順 3-1 または 3-2 を選んでください。科目・授業・教材の関係は、用語解説 の「教材の構成」を参照してください。
3-1. Exercode の画面上で作成する
組織管理者、または対象グループのグループ管理者が行います。
- 対象グループの
科目を開き、科目の作成を押します。 - 科目名と説明を入力し、
グループに公開先のグループを選んで作成します。組織管理者はなしも選べます。なしを選ぶと科目は組織に追加され、組織の全メンバーが利用できます。講師(グループ管理者)が学習分析や手動採点を使う科目は、必ずグループを選んでください。組織に追加しただけの科目は、講師の画面にグループ管理者向けメニューや学習分析が表示されません。 - 作成後に表示される科目の編集画面で、授業と教材を追加します。
- 教材の
Markdownを編集から教材設定画面を開き、本文・設問・提出期間などを設定します。提出期間の設定を講師に任せる場合は、その旨を講師に伝えてください(講師は 講師向け利用ガイド の「5-3. 教材の公開時期と締切を設定する」で設定します)。
作成した科目は、選んだグループに追加されます。受講生を登録するグループに作成した場合、手順 4 は不要です。
詳しくは 組織やグループに科目を作成する と 教材を編集する を参照してください。
3-2. GitHub の教材リポジトリから取り込む
準備するもの:GitHub 上の教材リポジトリと、そのリポジトリを置いている GitHub アカウントまたは organization に GitHub App をインストールできる権限
教材リポジトリのフォルダ構成やファイルの書き方は、サンプル教材リポジトリの説明 を参照してください。
次の 2 段階で進めます。
- インポートする前に、教材リポジトリで AI チャットとヒントの設定を確認します(必要な場合のみ。3-2-1)。
- 教材リポジトリを Exercode に追加し、インポートします(3-2-2)。
AI チャットとヒントの設定は教材リポジトリの中に書くため、インポートより先に確認します。
3-2-1. インポート前に AI チャットとヒントの設定を確認する(必要な場合のみ)
Exercode には、受講生の学習を支える 2 つの AI 機能があります。
- AI チャット:受講生が教材や問題について AI に質問できる機能です。AI は同じ科目の教材を探して読み、回答します。
- ヒント:コーディング問題で、AI が書きかけのコードの誤り箇所や修正方法を示す機能です。
AI チャットとヒントは、特に設定しなくてもすべての教材で使えます。そのまま使う場合は、この手順は不要です。次のような場合だけ、教材作成者(教材リポジトリのメンバー)がインポートの前に教材リポジトリで設定を変えます。
| こんなとき | 設定 |
|---|---|
| 小テストや試験で、AI の助けを借りずに解かせたい | 教材ごとに本試験モード(isExamination: true)にします。受講生は、その教材と問題で AI チャットを使えず、ほかの画面の AI チャットからも内容を参照できなくなります。提出期間中(提出ハード締切日時まで)はヒントも表示されません。 |
| AI チャットを使わせず、自分で調べて考えさせたい | isMaterialChatDisabled: true で受講生の AI チャットを無効にします。ほかの画面の AI チャットからも、その教材の内容を参照できなくなります。 |
| ヒントを使わせたくない | isDebugHintDisabled: true と isFixHintDisabled: true を両方設定すると、ヒント タブが表示されなくなります。「追加のヒント」だけを無効にするときは isFixHintDisabled: true を設定します。isDebugHintDisabled: true は「誤り箇所」だけを非表示にします。「追加のヒント」は利用でき、最初のステップ「誤りの理由」で誤りの内容が分かります。誤りに関するヒントを一切見せたくない場合は isFixHintDisabled: true も設定します。 |
| 答えに近いヒントは見せたくない | isDiffHintDisabled: true で、追加のヒントに「修正コード」と「修正したコードの解説」を表示しないようにします。 |
| ヒントに頼る前に、まず自分で考える時間を取らせたい | debugHintWaitingSeconds(標準 180 秒)と fixHintWaitingSeconds(標準 300 秒)で、ヒントが使えるまでの時間を延ばします。 |
| まだ扱っていない回の内容を、AI チャットに答えさせたくない | 提出開放日時(submissionOpenedAt)を授業の予定に合わせます。提出開放日時を過ぎていない教材の内容は、受講生の AI チャットで参照されません。 |
isExamination 以外の設定は、course.yaml(科目全体)または各教材の先頭のパラメータ(教材ごと)に書きます。両方に書いた場合は教材の設定が優先されます。isExamination は教材の先頭のパラメータにだけ書けます。course.yaml に書くとインポートでエラーになります。書き方と、締切後の模範解答の表示(isModelAnswerShownAfterDeadline)などのほかの設定項目は、サンプル教材リポジトリの説明 の「コース・マテリアル共通の設定パラメータ」と「マテリアルのパラメータ」に一覧があります。各設定が Exercode 上でどう働くかは、教材をインポートする の「AI チャットとヒントの設定」を参照してください。
確認は、次の手順で行います。
- 教材リポジトリで、科目のフォルダにある
course.yamlを開き、上の表のパラメータが書かれていないか確認します。書かれていなければ、科目全体で AI チャットとヒントが使えます。 - 試験に使う教材や、AI を使わせたくない教材のファイルを開き、先頭のパラメータが上の表の「こんなとき」に合っているか確認します。
- 設定を変えた場合は、変更を教材リポジトリのデフォルトブランチ(通常は
main)に反映します。変更は、3-2-2 でインポートすると Exercode に反映されます。 - インポート後、対象の教材や問題を開き、
AIチャットボタンやヒントタブが想定どおりに表示されるか(使わせたくない教材では表示されないか)を確認します。
3-2-2. 教材リポジトリを追加してインポートする
組織管理者が行います。事前に、教材作成者が教材リポジトリのデフォルトブランチ(通常は main)に教材を反映しておきます。
教材リポジトリは、組織管理者が最初に Exercode に追加してください。組織管理者ではない人が先に追加した教材リポジトリは、後から組織管理者が追加しても組織に登録できず、その科目をグループに追加できません。
-
画面右上のメールアドレス(画面幅が狭い場合は人型のアイコン)のメニューから
教材リポジトリを開き、自分のGitHubから追加を押します。 -
GitHub の画面で、教材リポジトリを選んで GitHub App をインストールします。
-
Exercode に戻り、追加した教材リポジトリの
組織に登録を押して、組織を選びます。 -
対象リポジトリの
インポートを押し、差分と検証結果を確認して、インポートを確定します。
運用開始後に教材を直して再インポートすると、講師が教材の 編集 画面で設定した提出期間などが上書きされる場合があります。再インポートする前に、担当の講師に知らせてください。
運用開始後(受講生が提出を始めた後)に科目・授業・教材・問題の ID を変更すると、提出記録が完全に削除され、元に戻せません。ID は変更しないでください。科目の編集画面で授業や教材を削除した場合も、同じように提出記録が削除されます。ID の決まり方と、ID を変えずに並び順を変える方法は、サンプル教材リポジトリの説明 の「ID の変更に関する注意」を参照してください。
詳しくは 教材をインポートする と 教材リポジトリを同期・インポートする を参照してください。
4. 科目をグループに追加する
インポートした科目や、同じ組織の別のグループに作成した科目を、受講生を登録するグループに追加します。追加できるのは、その組織で作成した科目と、その組織に登録した教材リポジトリから取り込んだ科目です。他の組織の科目は追加できません。手順 3-1 で対象グループに科目を作成した場合は、すでに追加されているため、この手順は不要です。
講師をグループ管理者にしていれば、講師自身でも行えます。講師に任せる場合は、科目の ID とともにその旨を講師に伝えてください。グループに追加する前の科目は、講師の 科目一覧 には表示されません。
所属を開きます。- 組織名を開きます。
グループを開きます。- 対象グループを開きます。
科目を開きます。- 追加したい科目の ID を入力します。科目の ID は、組織画面の
科目の一覧や、科目ページの URL(/courses/の後ろの部分)で確認できます。 追加を押します。
グループに追加すると、受講生のうちそのグループのメンバーだけが科目を利用できます(組織管理者や教材作成者は、管理のために閲覧できます。公開設定にした科目は誰でも閲覧できます)。組織に追加すると組織の全メンバーが利用できますが、講師(グループ管理者)はその科目の学習分析や手動採点を使えません。講師が担当する科目は、組織ではなくグループに追加してください。
詳しくは 組織やグループに科目を追加する を参照してください。
5. 受講生を登録する
準備するもの:受講生のメールアドレスの一覧
科目の準備ができたら、受講生を組織に招待し、グループに追加します。
受講生は、招待メールから参加して初めて科目を使えるようになります。初回授業の数日前までに招待し、全員が参加したかを確認してください。参加していない受講生は、組織の メンバー 画面の 未承認の招待 に表示されます。
5-1. 受講生を組織に招待する
2-2 と同じ画面で、受講生のメールアドレスを入力して招待します。グループにも招待する で受講生のグループを選んでおくと、受講生が組織に参加した時点でグループにも追加されるため、5-2 は不要です。
組織の管理権限を与える は組織管理者の権限を与える設定です。受講生には選択しないでください。
5-2. グループに受講生を追加する
5-1 でグループを選ばずに招待した受講生や、すでに組織に所属している受講生をグループに追加します。組織に所属していない受講生は追加できないため、先に 5-1 で招待してください。講師(グループ管理者)でも行えます。講師に任せる場合は、受講生が組織に参加していることを確認したうえで、その旨を講師に伝えてください。
-
2-3 と同じ手順で、対象グループの
メンバーを開きます。 -
追加したい受講生のメールアドレスを入力します。
-
管理権限はチェックしません。 -
追加・権限の更新を押します。
詳しくは 組織にメンバーを招待する と グループに学生を追加する を参照してください。
5-3. 受講生のプロフィールを登録する(任意)
受講生の氏名や学籍番号を CSV で登録すると、講師が学習分析で受講生を見分けやすくなります。登録していない受講生は、学習分析の名前の欄が - と表示されます。受講生が組織に参加した後に行います。
プロフィールの登録は、導入担当者と講師のどちらでも行えます。講師(グループ管理者)が登録できるのは、自分のグループの受講生だけです。ただし、後から保存した CSV の内容で上書きされ、空欄の項目は登録済みの値が消えるため、両方が別々の CSV で登録すると、先に登録した内容が失われることがあります。どちらが行うかは、講師と相談して決めてください。
科目一覧→ 対象の科目を開き、管理者向けメニューのユーザプロフィールを押します。テンプレートをダウンロードを押し、CSV のテンプレートに受講生ごとの情報を入力します。必須なのはメールアドレスだけです。- CSV をアップロードし、画面の表で読み込まれた内容を確認してから
保存を押します。
組織に参加していない人の行は反映されず、画面にも通知されません。詳しくは プロフィール情報を設定する を参照してください。
6. Gemini API キーを登録する(任意)
AI チャットなどの利用料を組織の Google アカウントで負担・管理したい場合に行います。
準備するもの:Gemini API キー
API キーがなくても AI チャットとヒントは使えます。登録すると、AI チャットと、その質問の意図の分類で組織のキーが使われます。組織管理者のみが操作できます。
- ヘッダーの
所属から対象の組織を開きます。 組織設定を開きます。AIチャットで使用する Gemini API キーの現在の状態で、キーが保存済みか未設定かを確認します。Gemini APIキー欄に新しいキーを入力し、保存を押します。
設定は組織単位で、その組織または組織内のグループに追加した科目で使われます。AI チャットで組織のキーが使われるのは、その組織のメンバーが利用する場合だけです。削除するときは、保存済みのときに表示される Gemini APIキーを削除 を使います。
詳しくは 組織の AI 設定を行う を参照してください。
7. 授業時間を設定する(任意)
授業時間を設定すると、学習分析画面で授業時間内と授業時間外の提出を見分けられます。自主学習の把握にも使えます。講師(グループ管理者)でも設定できるため、講師に任せる場合は、その旨を講師に伝えてください。
-
画面上部の
科目一覧を開きます。 -
対象科目を開きます。
-
授業時間設定を押します。 -
曜日、開始時刻、終了時刻を入力します。
-
時間を追加を押します。 -
現在の授業時間に反映されたことを確認します。 -
変更を保存を押します。
曜日や時間帯が異なる授業は、複数件追加してからまとめて保存できます。
授業時間は科目ごとに 1 つです。同じ科目を複数のグループに追加している場合、変更はその科目を使うすべてのグループの学習分析に反映されます。グループ管理者が設定できるのは、自分のグループに追加済みの科目だけです。
初回授業の前に確認すること
授業が始まる前に、次の点を確認してください。当てはまらないものがあれば、うまくいかない場合 を参照してください。
- 受講生全員が組織に参加している(組織の
メンバー画面の未承認の招待に残っていない) - 受講生でログインすると、
科目一覧に科目が表示される - 教材画面と問題画面の右下に
AIチャットボタンが表示される(AI を使わせない設定にした教材では表示されません) - 講師が
科目一覧→ 対象の科目 →学習分析を開ける
うまくいかない場合
| 症状 | 確認すること |
|---|---|
| 受講生に招待メールが届かない | メールアドレスに誤りがないか。迷惑メールフォルダに入っていないか(送信元は no-reply@willbooster.dev)。届いていない場合は、組織の メンバー 画面の 未承認の招待 からその招待を削除し、もう一度招待するとメールが送られます |
受講生の 科目一覧 に科目が表示されない | 受講生がグループに追加されているか、科目がそのグループに追加されているか |
| 科目をグループに追加できない | 科目 ID が正しいか(存在しない ID はエラーにならず無視されます)。グループ管理者以上の権限があるか。その組織で作成した科目か。GitHub から取り込んだ科目の場合は、教材リポジトリがその組織に登録されているか |
科目画面・教材画面・問題画面の右下に AIチャット ボタンが表示されない | 受講生の場合、教材で isMaterialChatDisabled が true になっていないか、本試験モード(isExamination)の教材でないか、提出開放日時(submissionOpenedAt)を過ぎているか。科目画面の場合、受講生が AI チャットを使える教材が 1 つ以上あるか。その科目を担当する講師などは、制限対象の教材でも利用できる(AI チャットの利用条件) |
問題画面に ヒント タブが表示されない | isDebugHintDisabled と isFixHintDisabled が両方 true になっていないか、手動採点の問題でないか、提出期間中の本試験モードの教材でないか |
講師に学習分析の AIチャット タブが表示されない | 講師が組織のメンバーで、科目に紐づくグループのグループ管理者になっているか |