← 教材一覧へ戻る

脱・属人プログラム — 学習ノート

無人で回す自動化は、
どこに置くか

— ローカルとクラウドの適材適所。判断軸はひとつだけ

自動化が増えてくると必ずぶつかる問題があります。「これは自分のPCで動かすべきか、クラウドに置くべきか」。答えは性能でも料金でもなく、AIに持たせる鍵の強さで決まります——非エンジニアのための判断ノート。当社が実際に判断した記録つき。

2026.08.29 作成 / 実際の判断(GitHub組織の統制設計)を例に

この話の結論(3つだけ)
  1. 切り分けはひとつ。「人が判断しながら作業する」=ローカル/「無人で回る」=クラウド
    難しい条件表は要りません。この1本の線だけ引けば9割決まります
  2. 理由は性能ではなく鍵の強さ。無人化は、権限を絞れる場所でやる
    自分用の強い鍵をAIに預けて放置するのが一番危ない
  3. ただし「全部クラウド」ではない。そもそも移せるか・コスト・使い勝手・いまの露出で例外を選ぶ
    動画編集のように、そもそもクラウドに載らない仕事もある。原則を振りかざして動いているものを壊さない

はじめに

なぜこの判断が必要になるのか

AIに仕事を任せ始めると、最初は「頼んだら、その場でやってくれる」だけです。ここは何も迷いません。自分のPCでAIと会話しながら進めるだけです。

ところがしばらくすると、「毎週やっておいてほしいこと」が出てきます。点検、監視、通知、定期的な下書き生成。ここで初めて「自分が見ていない時間にAIを動かす」という状態が生まれます。

そして多くの人が、何も考えずにいま使っているPCの設定のまま、それを自動で回そうとします。ここが分かれ道です。

たとえるなら あなたは会社のマスターキー(全部屋の鍵)を持っています。自分で使う分には問題ありません。どの部屋に入るかは、あなたがその都度判断しているからです。
ですが「毎晩見回りをしておいて」と誰かに頼むとき、そのマスターキーを渡したまま放置しますか。渡すべきなのは見回りに必要な部屋だけが開く鍵のはずです。

AIの自動化もまったく同じ構造です。そして「見回り用の弱い鍵」を作れる場所が、クラウドです。

正直に言うと この判断を間違えても、たいていは何も起きません。問題は「起きたときの被害がどこまで広がるか」だけが変わることです。だから普段は気づけません。だからこそ、最初に線を引いておく話をします。

第1章

切り分けはひとつだけ

覚えることは1つです。人が判断しながら作業するか、無人で回るか。

どんな作業かどこで動かすか理由
人が判断しながら作業する
Claude Codeでの開発・調べもの・原稿づくり
ローカル
(自分のPC)
その都度あなたが判断している。手元のファイルも見る必要がある。ここはローカルでしかできない
無人で定期的に回る
点検・監視・通知・定期生成
クラウド 必要な権限だけに絞った鍵で回せる。PCの起動やスリープに左右されない

この線は「難しいか簡単か」でも「重要かどうか」でもありません。人間が見ているかどうか、それだけです。

迷いやすい例

やりたいこと判定なぜ
毎朝、GitHubの設定に異常がないか点検して報告クラウド完全に無人。読み取りだけできれば足りる
動画の台本を書くローカルその場で何度も直す=人が判断している
問い合わせフォームに来たらLINEへ通知クラウドいつ来るか分からない。PCが寝ていたら止まる
SNS投稿の下書きを一括生成して、自分で選ぶローカル最後に人が選ぶ工程がある(+第4章の例外にも当たる)
動画を書き出す・大量の素材を変換するローカル人が見ていなくてもローカル。素材がPCにあり、編集アプリもPCにしかない(→第4章の例外④)
この線だけでは決まらないものが1つある 最後の行に注目してください。動画の書き出しを夜間に自動で回すのは、間違いなく「無人」です。ですが答えはローカルです。
そもそもクラウドに載せられない仕事があるからです。第4章の例外④で扱います。この線を引く前に、まず「物理的に移せるのか」を見てください。

第2章

なぜ無人の自動化をローカルでやってはいけないか

理由は2つです。鍵の問題運用の問題。重いのは前者です。

理由① あなたの鍵は「人が判断する前提」で強く作られている

普段あなたのPCに入っている鍵——たとえばGitHubを操作するためのトークン(合言葉のような文字列)は、あなたが自分で判断して操作することを前提に、広い権限で作られています。リポジトリを読むことも、書き換えることも、消すこともできる。

人が使っている限り、これは問題ありません。消す操作をするかどうかは、あなたが決めているからです。

ところがその鍵をAIに預けて、見ていない時間に回し始めた瞬間、判断する人がいなくなります。もしAIが外から読み込んだ文章に仕込みがあって(※)乗っ取られた場合、その広い権限がそのまま使われます。

※ AIに読ませたWebページやメールの本文に「これまでの指示を無視して〜しろ」と書いておく攻撃。プロンプトインジェクションと呼ばれます。AIは本文と指示を見分けるのが苦手なので、完全には防げません。

理由② PCは止まる

こちらは分かりやすい話です。ローカルでの定期実行は、PCの電源が入っていて、スリープしていないことが前提です。出張中は動きません。ノートを閉じたら止まります。「動いているはず」と思い込んでいる時間が一番危険です。

クラウドなら何が変わるか

ローカルで無人自動化 AIが持つ鍵 = あなたの鍵(何でもできる) 動く条件 = PCが起きていること 乗っ取られたら = その鍵でできること全部 クラウドで無人自動化 AIが持つ鍵 = その仕事専用の鍵(読むだけ等) 動く条件 = なし(時間が来たら勝手に動く) 乗っ取られたら = 読むことしかできない

差は「性能」ではなく「事故が起きたときの被害範囲」

第3章

よくある3つの誤解

誤解① 「鍵が1本増えるから、ローカルのほうが安全では?」

クラウドに移すと、専用の鍵を新しく作ることになります。「鍵は少ないほうが安全なのだから、増やすのは逆効果では」——もっともらしく聞こえますが、比べる対象が違います

比べるべきなのは本数ではなく、AIが日常的に握っている権限の強さです。

鍵の本数AIが握る権限
ローカルのまま1本何でもできる鍵
クラウドへ2本読むだけの鍵

弱い鍵を1本足すほうが、総合的なリスクは下がります。「本数」で数えると判断を誤ります。

誤解② 「クラウドのAIは性能が落ちる」

これは過去のイメージです。実際に、同じ障害対応をクラウドのAIとローカルのAIで並走させて比較した検証があり、調整後は同等の結果になっています。

ローカルのほうが賢く見えるのは、単に広い権限のおかげでAIから見えるものが多かっただけでした。クラウド側にも同じだけ見せれば、同じ結果になります。つまりこれは性能差ではなく見せている情報量の差です。

ただし 「同じだけ見せれば同じ」ということは、見せる設計をサボるとクラウドは弱くなるということでもあります。移すときは「この仕事に何が見えている必要があるか」を一度書き出してください。ここを飛ばすと「やっぱりクラウドはダメだ」という誤った結論になります。

誤解③ 「ローカルなら情報が外に出ないから、そのほうが安全では?」

これは誤解ではありません。正しいのですが、別のリスクの話をしています。いちばん混乱しやすいところなので、2つを分けて見ます。

リスクA
情報が外に出ること
リスクB
乗っ取られたとき何ができるか
ローカル◎ 出ない✗ PCの中身すべてに手が届く
クラウド△ 出る◎ 渡した鍵の範囲だけ

「ローカルのほうが安心」と感じるとき、見ているのはAです。第2章で説明したのはBです。どちらも正しく、否定し合っていません。

では、どちらを重く見るか

決め手はここです。

判断の分かれ目 そのデータは、もともとどこにあるのか。
扱うデータもともとの場所判断
GitHubの設定・リポジトリ
クラウド上のサービスのデータ
クラウド クラウドで実行
ローカルにしても守りは増えない
動画の素材・顧客フォルダ
手元の .env
ローカルだけ ローカルで実行
外に出すこと自体がリスク

上の段が今回の点検です。点検の対象はGitHubの組織設定=もともとクラウドにあります。ローカルで実行しても、結局GitHubから取ってきます。つまり「ローカルにすれば外に出ない」という利点が、そもそも成立しません。

利点がゼロなのに、リスクB(広い鍵をAIに渡したまま無人で回す)だけが残る。だからクラウドを選びました。

下の段は逆です。動画素材や顧客フォルダは手元にしかないので、クラウドに出すこと自体が新しいリスクになります。ここはローカルのままです。

まとめると 「ローカルが安全 / クラウドが安全」という問いの立て方が間違いです。
正しくは——もともとクラウドにあるものを、わざわざローカルに引っ張ってきても守りは増えず、鍵だけ強くなる。

第4章

ただし「全部クラウド」ではない

ここが一番大事なところです。第1章の線は原則であって、全部をクラウドに移す話ではありません

次の4つのどれかに当たるときは、意図的にローカル/現状維持を選びます

例外にする条件どういうことか
① コスト構造が変わる ローカルなら月額サブスクの枠内で動くのに、クラウドに移すと使った分だけの従量課金になる場合。安全のために毎月の請求が増えるなら、割に合うか計算してから決める
② 既存の運用が壊れる 権限を絞った結果、日常の作業がいちいち止まるようになる場合。守りを固めた結果、誰も使わなくなるのでは意味がない
③ すでに露出リスクが小さい 鍵がすでにOSの安全な保管庫に入っていて、平文(そのまま読める文字)でどこにも出ていない場合。ここからさらに絞っても得られる安全が小さい
④ ローカルの資源に依存する 扱うファイルが大きい、専用アプリがPCにしかない、PCの性能そのものを使う場合。移すには素材ごと運ぶ必要があり、転送の時間と費用がかかる。他の3つと違い、これは天秤にかけるまでもなくそもそも移せない

例外④は、他の3つと性質が違う

①〜③は「移せるが、移さない」という判断です。天秤にかけた結果、ローカルを選んでいます。

ところが④は「そもそも移せない」。判断ではなく前提です。分かりやすいのが動画の制作です。

やることなぜクラウドに載らないか
動画の編集・書き出し編集ソフト(DaVinci Resolveなど)はPCにインストールして使うアプリ。クラウドの実行環境には存在しない
撮影素材の変換・カット素材が1本で数GBある。処理そのものよりアップロードとダウンロードのほうが時間がかかる
大量の動画の一括処理PCの性能(CPU・GPU)を直接使う。クラウドで同じ性能を借りると時間あたりで課金される

当社でも、動画のカット処理や縦型ショートの自動生成はすべてローカルで動かしています。夜間に無人で回すものもありますが、それでもローカルです。「無人だからクラウド」を機械的に当てはめると、ここで判断を誤ります。

順番を間違えないために 判断はこの順です。
まず④を見る(そもそも移せるか)→ 次に第1章の線を引く(人が見ているか)→ 最後に①〜③を見る(移せるが、移すべきか)。
いきなり第1章の線から入ると、動画のような「無人だけど移せない仕事」で詰まります。

つまり見るのは「人が判断するか/無人か」だけではありません。そもそも移せるか・コスト・使い勝手・いまの露出リスクを同時に見ます。

なぜこの但し書きが要るのか 原則はきれいなので、そのまま全部に当てはめたくなります。ですが実際にやると、いま問題なく動いているものを壊して、請求だけ増えることが起こります。
そしてもう1つ。この「クラウドへ寄せる」議論の出どころは大企業です。社内にクラウド基盤があり、費用は会社持ちで、専門チームが運用している前提の話。中小企業や個人はそこを割り引いて読む必要があります。原典の主張をそのまま鵜呑みにしないでください。

CASE STUDY

実例 — 当社が実際にどう判断したか

ここからは机上の一般論ではなく、当社が2026年8月に実際にやった判断の記録です。何が塞げて、何が塞げなくて、どこを意図的に諦めたかまで書きます。

実例 5-1

きっかけ — 「見覚えのないセッション」

ある日、代表のAIツールの画面に身に覚えのない作業履歴が表示されていました。

調べると、原因はアカウントの共有でした。当社の契約アカウントを業務委託メンバーと共有しており、そのメンバーが別会社の案件を、当社のアカウントで動かしていたのです。悪意はなく、本人も気づいていませんでした。ログインしっぱなしのアカウントで、そのまま別の仕事をしただけです。

何が問題か 「他社の情報が当社に流れ込んでいた」と同時に、「当社の情報も他社側へ流れうる状態だった」ということです。方向は常に両方です。

ここから「メンバーを迎え入れる体制」を作り直しました。ポイントは、この事故が"悪い人"のせいではないという点です。仕組みが許していたから起きました。だから対策も、注意喚起ではなく仕組みで組みました。

実例 5-2

守りを3層に分けた

1つの対策で全部を守ろうとすると必ず穴が空きます。性質の違う3層に分けました。

やること強み / 弱み
① 場が止める GitHub側の組織設定で、そもそも操作をさせない 強み:AIツールが何であろうと効く(Claudeでも他社製でも)
弱み:無料プランでは設定できる項目が限られる
② AIが読む 会社ルールをテキストで置き、AIに毎回読ませる 強み:細かい方針まで書ける
弱み:あくまで"お願い"。読まないツールもある
③ 事後に気づく 点検スクリプトを定期実行し、異常があれば知らせる 強み:①②をすり抜けた変化を拾える
弱み:起きた後にしか分からない

①が最優先です。②はツールを変えられたら終わりますが、①はGitHub側で止まるので、相手が何を使っていようと関係ありません。

実例 5-3

無料プランで塞げたもの・塞げなかったもの

ここは実際にAPIで1つずつ設定を確認した結果です。GitHubの無料プランでも、思ったよりかなり塞げます。

塞げたもの(無料プランで設定できた)

設定どうしたか効果
二要素認証組織全体で必須にしたパスワードが漏れても入られない
既定の権限「なし」にした招待しただけでは何も見えない
公開設定の変更禁止非公開リポを勝手に公開できない
リポジトリの削除・移管禁止資産を消されない・持ち出されない
チーム作成禁止権限の抜け道を勝手に作れない
Webページ公開機能禁止社内資料が意図せず公開されない
非公開リポのコピー(fork)禁止個人アカウントへ複製できない

塞げなかったもの(無料プランの限界)

できないこと意味
リポジトリ作成の制限メンバーが公開リポジトリを作れてしまう。ここが最大の穴だった
ブランチの保護本流のコードに、確認なしで直接書き込める
秘密混入の自動検知APIキーをうっかり上げても、GitHub側で止めてくれない
操作ログの取得(API)誰が何をしたかを自動で集計できない
ここで判断が要る 有料プランに上げれば全部塞がります。ですが当社は上げませんでした。理由は次の5-4です。お金で解決する前に、構造で消せないかを考えます。

実例 5-4

塞げないものは「構造」で消す

最大の穴は「メンバーが公開リポジトリを作れてしまう」ことでした。設定で止められないなら、そもそも"メンバー"にしなければいい——これが答えでした。

GitHubには、組織への参加のしかたが2種類あります。

組織メンバー外部コラボレーター
位置づけ組織の一員特定のリポジトリにだけ招かれた人
リポジトリ作成できる(無料プランでは止められない)できない
契約終了時組織から外す1操作で全リポジトリから同時に外れる

業務委託メンバーは外部コラボレーターとして迎えることにしました。これで一気に2つ消えます。

注意も禁止も要りません。できない状態にすると、ルールを覚えてもらう必要がなくなります。これが「構造で消す」ということです。

副作用も1つ 外部コラボレーターは二要素認証を切ると自動的に組織から外れます。本人にも管理者にも大きな通知は出ないので、静かに消えます。だから点検(第3層)では「増えていないか」だけでなく「勝手に減っていないか」も両方向で見るようにしています。

実例 5-5

あえてローカルに残した2件

ここが第4章の但し書きの実践です。原則に従えばクラウドへ移すべきものを、2件は意図的にローカルのままにしました

例外① SNS投稿の自動生成

投稿の下書きを自動生成する仕組みは、ローカルのままにしました。理由はコスト構造です。

手元で動かしている限り、AIの利用は月額サブスクの枠内で収まります。ところがクラウドに移すと、同じ処理が使った分だけ課金される従量制になります。毎日回すものなので、金額の差がそのまま毎月効いてきます。

そして守るべき情報の中身を見ると、ここで扱うのは公開前提の投稿文です。漏れて困る顧客情報や鍵ではありません。守る価値と払うコストが釣り合っていないので、移しませんでした。

例外② GitHubを操作する鍵

普段の開発で使うGitHubの鍵は、権限を絞りませんでした。理由は使い勝手いまの露出リスクの低さの2つです。

大事な考え方 例外を作ることは、手抜きでも妥協でもありません。「なぜ例外にしたか」を書き残しておくことがセットになっていれば、正しい判断です。
書き残さないと、半年後に誰か(AIを含む)が原則だけを読んで「これはルール違反だ」と蒸し返し、動いているものを壊します。例外は、理由とセットで記録する。

実例 5-6

逆に、これはクラウドへ移す — 点検の自動化

3層目の点検スクリプトは、いま手動で実行しています。「思い出したときに走らせる」状態です。これは典型的な無人化すべき仕事なので、クラウドへ移します。

この仕組みが必要とするのは、組織の設定とメンバー一覧を読むことだけです。書き込みも削除も一切しません。つまり読むだけの鍵で足りる——第2章の理屈がそのまま当てはまります。

いま(ローカル・手動) 実行 = 人が思い出したとき 鍵 = 開発用の強い鍵(何でもできる) これから(クラウド・週1で自動) 実行 = 毎週決まった時刻に自動 鍵 = この点検専用・読み取りのみ 結果 = 異常があるときだけ報告が届く

同じスクリプトのまま、置き場所と鍵だけを替える

ここで1つ実務的な発見がありました。クラウド側はGitHubを読むための仕組みを最初から用意してくれていますが、それは「そのセッションに紐づけたリポジトリ」にしか届きません。今回のように組織全体の設定を読む用途では、その標準の仕組みだけでは足りず、読み取り専用の鍵を自分で1本作って渡す必要があります。

——つまり、原則どおりにやると自然と「専用の弱い鍵を1本作る」形に行き着きます。第3章の誤解①で書いたとおりの姿です。

「クラウドへ」で終わりではない — 置き場所はもう一段ある

ここで実際にもう一段の判断が必要になりました。クラウドと言っても、選択肢が複数あります。

AIのクラウド実行
(Claudeの定期実行など)
GitHubの実行環境
(GitHub Actions)
鍵の保管 環境変数のみ。専用の金庫がまだない(その環境を使う人は読める) 専用の金庫あり(入れたら本人も読み出せない)
AIの判断 できる できない(決められた手順を実行するだけ)
異常の通知 画面を見に行く 失敗すると通知が届く

この点検は決められた手順を実行するだけで、AIの判断を必要としません。それなら、鍵を安全にしまえるほうを選ぶ——という判断で、GitHubの実行環境にしました。

言い換えると AIを噛ませる必要がない仕事に、鍵を平文で置いてまでAIを使う理由はない。
逆に、AIの判断が要る仕事(たとえば「今月の変更の中に、社内で共有すべき知見はあるか」を選り分けるような仕事)は、AIのクラウド実行のほうが向いています。どちらが上ということではなく、仕事の性質で選びます。

※ 当社では2026年8月末から、この点検が毎週自動で動いています。異常があるときだけ通知が届き、何もなければ静かに終わります。

次に読む教材 このページは「どこに置くか」の判断までです。実際にどの道具で定期実行するか(OS標準のタイマー・Claudeのroutine・GitHubの実行環境など4種類の使い分け)は、定期実行の選び方にまとまっています。

第6章

ローカルで育てたものは無駄にならない

「いずれクラウドに移すなら、いま手元で作り込むのは無駄では?」——という不安が出ます。無駄になりません。

理由は単純で、あなたがAIに与えている資産はほぼ全部ただの文章(テキスト)だからです。

あなたが育てているもの正体移せるか
会社ルール・作法Markdownのテキストコピーするだけ
スキル(定型作業の手順)Markdownのテキストコピーするだけ
判断基準・ナレッジMarkdownのテキストコピーするだけ
鍵・認証まわり環境ごとの設定ここだけ作り直し

作り直しが要るのは鍵まわりだけです。中身(頭脳にあたる部分)は全部持っていけます。だからいまローカルで書いた1行は、そのまま将来のクラウドでも効きます。安心して育ててください。

第7章

本当に効くのは「自社にしかない知識」

最後に、置き場所より大事な話をします。

AIは、世の中に公開されている情報は驚くほど知っています。ですがあなたの会社の非公開の情報と、人の頭の中にしかない業務知識は、まったく知りません。学習しようがないからです。

ということは、最新のAIを追いかけるより、そこを言葉にして貯めるほうが効きます。

今回の実例でいえば、「例外にした2件と、その理由」を書き残したこと自体が、まさにこの資産です。GitHubの設定方法は検索すれば出てきますが、「当社がなぜそう決めたか」はどこにも書いていません。それを書けるのは自分たちだけです。

まとめ

迷ったときのチェックリスト

新しい自動化を作るとき、この順に自問してください。

0. そもそもクラウドに移せるか? ← 先にここ 素材が数GBある/専用アプリがPCにしかない /PCの性能そのものを使う → ローカル。ここで終わり(例外④) 移せる → 1へ 1. 人が見ているか? 見ている → ローカルでよい。ここで終わり 見ていない → 2へ 2. その仕事に本当に必要な権限は? 読むだけで足りる → クラウドへ。読み取り専用の鍵を1本作る 書き込みも必要 → クラウドへ。ただし対象を絞る 3. 例外①〜③に当たらないか? クラウドにすると従量課金になる → ローカル維持を検討 絞ると日常の作業が止まる → ローカル維持を検討 鍵がすでに安全な場所にあり露出ゼロ → ローカル維持を検討 4. 例外にしたなら、理由を書き残したか?書いていないなら、まだ終わっていない

3で例外を選んだこと自体は、まったく悪いことではありません。4を飛ばすことだけが問題です。

この教材の要点をもう一度 まず確認——そもそもクラウドに移せるか(動画のように、移せない仕事がある)。
線はひとつ——人が見ているか、いないか
理由はひとつ——AIに預ける鍵の強さ
そして原則を振りかざして、いま動いているものを壊さないこと

付録

用語ミニ辞典

トークン(アクセストークン)
サービスを操作するための合言葉のような文字列。パスワードの代わりにプログラムが使う。人間用のパスワードと違い、「これは読むだけ」のようにできることを限定して発行できるのが特徴。
最小権限
その仕事に必要な権限だけを与える考え方。「念のため広めに」の逆。事故が起きたときの被害範囲がそのまま権限の広さになるため、狭いほど安全。
二要素認証(2FA)
パスワードに加えて、スマホのアプリなどもう1つの確認を求めるしくみ。パスワードが漏れただけでは入られなくなる。
組織メンバー / 外部コラボレーター
GitHubで人を迎える2つの方法。前者は組織の一員、後者は特定のリポジトリにだけ招かれた人。後者はリポジトリを作れず、契約終了時も1操作で全部から外れる。
リポジトリ
プロジェクトごとのファイル置き場。履歴が全部残るのが普通のフォルダとの違い。「公開(誰でも見える)」と「非公開」がある。
従量課金 / サブスクリプション
前者は使った分だけ払う方式、後者は月額固定。同じ処理でも、動かす場所によってどちらになるかが変わることがあり、それが第4章の例外条件①。
平文(ひらぶん)
暗号化されず、そのまま読める状態のこと。鍵が平文でファイルに書かれていると、そのファイルを見た人・AIに即座に漏れる。
プロンプトインジェクション
AIに読ませる文章の中に指示を仕込んで、乗っ取る攻撃。AIは「読むべき素材」と「従うべき指示」の区別が苦手なため、外部の文章を読ませる仕組みでは常に警戒が要る。