EN 日本語

権限について

サインインの途中で、GitHub の許可画面が開きます。Fervio で非公開リポジトリを扱うには、GitHub 側のルールでどうしても広いアクセス権限を与える必要があり、その理由を説明します。最終更新 2026 年 8 月 9 日。

許可画面に出るアラート

GitHub の許可画面には、「Full control of private repositories」(非公開リポジトリへのフルアクセス) と表示されます。心配になる表示のため、ここで手が止まると思います。

この文言を決めているのは GitHub であって、Fervio ではありません。GitHub の許可には「課題だけを扱う」という選択肢がなく、非公開リポジトリの課題を読み書きするには、この広い許可を求めるしかないためです。

ただし、渡すことになる権限の広さと、Fervio が実際に使う範囲は、同じではありません。その差が「GitHub に止められているから」なのか「Fervio がしないだけ」なのかは、次の節で区別して説明します。

GitHub 側では、権限をこれ以上絞れません

先に、いちばん誤解されやすいところを書きます。GitHub の repo は、まとめて 1 つの権限です。「課題だけ」「コードは除く」のように一部だけを渡す仕組みが、GitHub 側にありません。

つまり、発行されたトークンは技術的にはソースコードも読めます。Fervio が読まないのは、GitHub がそれを止めているからではなく、Fervio のプログラムがその API を一度も呼んでいないからです。ここは「できない」ではなく「しない」であり、区別して書いておきます。

権限を細かく指定できる仕組み (GitHub App) もありますが、個人アカウントが持つ Projects を扱えません (2026 年 8 月に確認)。個人の Project を開けるようにするには、この方式を使うしかありません。

GitHub の側で確実に狭められるのは、1 か所だけです。公開リポジトリだけで入ること (public_repo) です。この方法なら、非公開リポジトリには Fervio がそもそも到達できません。約束ではなく、GitHub が止めます。

サインイン方法と、付与される権限

サインイン方法によって、GitHub に付与される権限が変わります。かっこの中は GitHub が使っている権限の名前で、許可画面にもこの単位で出ます。

サインイン方法付与される権限許可画面の表示扱える範囲
非公開も含める (既定) repo project user:email 「非公開リポジトリへのフルアクセス」が出ます公開・非公開の両方
公開リポジトリだけ public_repo project user:email その表示は出ません公開リポジトリだけ
組織の Project も使う上に read:org を追加所属組織の読み取りが加わります組織が持つ Project も
共有リンクで閲覧するサインイン自体が不要です何も読みません共有されたスナップショットの閲覧

組織の read:org は、最初から全員には求めません。組織の Project を使うと決めた人に、その場で追加の許可をお願いします。

user:email で読むのは、確認済みのメールアドレスだけです。アカウントの他の情報は読みません。GitHub で入っても、Linear で入っても、メールのリンクで入っても、同じ Fervio のアカウントに着くようにするために要ります。頼まれたサインインのリンク以外を、こちらから送ることはありません。

GitHub で読むもの

したいこと読むもの要る権限
Project を選ぶ自分が持っている Projects の名前project
マップを開くProject の項目と、そこに載っている課題のタイトル・状態・担当者・見積もり・ラベル・サブタスクの進み具合projectrepo
カードを開くその課題の説明と、付け替えの候補になる担当者・ラベルの一覧。開いた 1 枚だけを、開いた時に取りに行きますrepo
リリースの行を出す課題に付いているマイルストーンrepo
課題を取り込むリポジトリの名前と、未対応の課題のタイトルrepo
組織の Project を選ぶ所属している組織の名前read:org

公開リポジトリだけで入った場合は、repo のところが public_repo になります。読める課題も公開リポジトリのものだけになります。

GitHub に書くもの

書き込みが起きるのは、あなたが画面で操作したときだけです。開いているだけ、見ているだけでは何も書きません。定期的に動く処理もありません。

あなたがすること書かれること要る権限
Project を初めてマップにするJourneyStep の 2 つのフィールドを作りますproject
ジャーニーやステップを足すそのフィールドに選択肢を 1 つ足しますproject
スプリントを使い始めるIteration フィールドを 1 本作り、2 週間のサイクルを 3 本敷きますproject
カードを別のスプリントへ動かすそのカードの Iteration の値を変えますproject
ボードでカードを別の列へ動かすそのカードの Status の値を変えますproject
カードを別の列へ動かすそのカードの Journey / Step の値を変えますproject
カードを別のリリース行へ動かすその課題のマイルストーンを変えますrepo
カードを新しく作る課題を 1 件作り、Project に載せますrepoproject
既にある課題を取り込むその課題を Project に載せますproject
カードの状態を変えるそのカードの Status の値を変えますproject
担当者を変えるその課題の担当者を入れ替えますrepo
見積もりを変えるProject の見積もりフィールドの値を変えますproject
ラベルを付け外しするその課題に付いているラベルを入れ替えますrepo
説明を書き換えるその課題の説明を上書きしますrepo
カードをマップから外すProject から項目を外します。課題そのものは消えませんproject
新しい Project を作って始めるProject を 1 つ作りますproject
Fervio が作った Project を消すその Project を削除します。確認したうえで、Fervio が作ったものだけproject

Linear でサインインするとき

Linear には readwriteissues:create を求めます。Linear にはリポジトリもソースコードも無いので、上に書いたような「見て驚く 1 行」は出ません。許可画面に出る言葉が、そのまま実際の範囲です。読むのはチーム・プロジェクト・課題・サイクル・ラベルで、書くのは課題と、マップを組み立てるためのラベルだけです。

Linear で読むもの

したいこと読むもの要る権限
ボードを作る所属しているチームの名前read
マップを開くチームのプロジェクト・課題・サイクル・ラベルと、課題のタイトル・状態・担当者・見積もり・期限・ラベル・サブタスクの進み具合read
ジャーニーの帯を出すInitiative の名前と、そこに属するプロジェクトread
カードを開くその課題の説明。開いた 1 枚だけを、開いた時に取りに行きますread

Linear に書くもの

あなたがすること書かれること要る権限
カードを別の列へ動かすその課題が属するプロジェクトを変えますwrite
カードを別のスプリントへ動かすその課題のサイクルを変えますwrite
カードを別のリリース行へ動かすその課題に付くリリース用のラベルを入れ替えますwrite
説明を書き換えるその課題の説明を上書きしますwrite
カードを新しく作る課題を 1 件作りますissues:create
カードをマップから外すその課題を書庫へ移しますwrite
ステップを足すプロジェクトを 1 つ作りますwrite
ジャーニーを足すInitiative を 1 つ作り、プロジェクトを結び付けますwrite
リリースの行を足すFervio 専用のラベルを 1 つ作りますwrite

状態・担当者・見積もり・ラベルの付け替えは、いまのところ GitHub だけです。 Linear ではカード詳細パネルから説明だけを書き換えられます。

上の 2 つの表に無い書き込みはしません。

触れないもの

対象扱い
ソースコード読みません。ファイルの中身を取得する API を呼ぶ箇所が、Fervio のプログラムに 1 つも存在しません
プルリクエスト読みも書きもしません
リポジトリの設定・Webhook・Actions触れません
課題の削除しません。マップから外しても、課題は GitHub に残ります

公開リポジトリだけで使う

非公開リポジトリを扱う予定がないなら、公開リポジトリだけの権限で入れます。この方法なら、許可画面に「非公開リポジトリへのフルアクセス」は表示されません。

そのかわり、非公開リポジトリにある課題はマップに出ません。あとから非公開も扱いたくなったときは、入り直して権限を足せます。

公開リポジトリだけで始める

それでも不安なときに

組織の Project を使うとき

組織が持つ Project を開くときにだけ、所属組織を読む許可 (read:org) を追加で求めます。組織の一覧を表示するために要るもので、組織を使うと決めた人にその場で求めます。全員に最初から求めることはしません。

組織によっては、第三者のアプリを承認する設定があります。承認されていないと、Project が一覧に出てきません。その場合は、組織のオーナーに GitHub の設定 (Settings → Third-party access) で Fervio を承認してもらってください。

変わったときは

求める許可を増やすときは、このページを先に直します。保存するものについては、プライバシーのページに数え上げられる形で書いてあります。疑問があれば [email protected] までどうぞ。

非公開も含めてサインイン