見出し画像

AIネイティブ世代が実践してる。スマホでバイブコーディングする方法【Gemini-CLI】

はじめに

こんにちは。
いちプログラマの高校生として普段から感じてる問題があります。それが外でコーディング(プログラミング)ができない!という悩みです。
電車やバス、レストランででかいMacを取り出してコーディングするような度胸は私にはありません。(邪魔になりますし…)
でも、思いついたアイデアはすぐに形にしたい!
そんなこともあり、数ヶ月前から「スマホやタブレットで気軽にコーディングができたらいいな」と思っていました。この悩みが5日前に解決したので、ぜひ皆さんにも共有したいと思います

今回はこれのやり方を説明します↓

概要 - この記事でやること

わかる人にはこの項だけで伝わるようにサクッと説明します。
今回やることは
「TailscaleとOpenSSHを利用し、自宅のミニPCにスマホなどからSSH接続して、ミニPC上でGemini-CLIを使ったバイブコーディングを行う」
です。自分的には結構シンプル。
もっとわかりやすいように説明すると
「自宅のパソコンにスマホから接続してバイブコーディングをする」

ということになるのかな?

この方法のメリット

この方法のメリットとしては
・少ないデータ量でパソコンと繋げられる
・通信が若干不安定な場所でも接続できる
・方法さえ確立すれば接続/作業が楽
・小さい画面でも比較的どうにかなる
の4点だと思います。
自分的には「スマホでプログラミングができる!」が一番大きなメリットではあるんですけれどね。
それでは本題に入っていきたいと思います。


事前準備

機材

パソコン - Windows推奨
スマホ -  iPhoneでもAndroidでもOK
・各種アカウント

パソコンについては基本的に常時つけている想定なので、Intel N100のような低消費電力CPUをおすすめします。
また、スマホやタブレットについては画面が大きい折りたたみスマホかiPadをおすすめします。(自分が小さい画面が苦手という側面はあります。)
また、自分が使ってるミニPCはMinisforum UN100D(2.2万)です。
探せば2万円以内でも同じスペックのミニPCがあると思います。

ミニPCの写真
自分がいつも使ってるミニPC

前提知識

以下の知識はあると言う前提で説明を行います。
Gemini-CLIの基礎的な知識
windowsの基礎的な操作(CLI上で)
バイブコーディングにはGemini-CLIを使うため、基礎的な操作や概要を把握する必要があります。
Gemini-CLIについて知りたい場合は以下の記事を見てください。個人的におすすめです。(インストールまでは一緒にやります。)

Gemini-CLIのダウンロード

Gemini‑CLI は Google 製のオープンソース(Apache 2.0 ライセンス)CLI エージェントで、Gemini 2.5 Pro を自然言語で操作できます。コーディングやリサーチ、コンテンツ生成、タスク自動化など多目的に使えます。
無料プランでは毎分60リクエスト・毎日1,000リクエストまで無料で利用できます。
同様ツールに Claude Code がありますが、Windows 非対応のため本稿では Gemini‑CLI を選びます。

node.jsのダウンロード

Gemini-CLIはTypeScriptで書かれているため、それを動かすためにnode.jsをダウンロードします。
まずは以下のサイトにアクセスをして、node.jsのダウンロードファイルを落としてきます。

Windows インストーラー (.msi)形式で落としてきてください。

そのあと、ダウンロードしたインストーラーに従ってインストールを進めてください。

インストーラー

その後、インストールが完了しているのかを確認するため、PowerShellを開いて以下のコマンドを入力します。(PowerShellは検索したら出てきます。)

検索したら出てきます。
node --version

これを実行して、v20以上の数字が出たらインストール成功です。

Gemini-CLIのインストール

続いては本題である、Gemini-CLIのインストールに進んでいきます。
PowerShellを開いて以下のコマンドを実行してください。

npm install -g @google/gemini-cli

初回起動時にはテーマカラーの選択と認証があります。
それを済ませたらGemini-CLIが起動します。

Gemini-CLIのメインUI

その後はgeminiと入力するだけでGemini-CLIが起動します。
ここまでお疲れ様でした。

TailscaleでVPNを設定する。

SSHでデバイスどうしを繋ぐ時に必要になるのがVPN(Vertual Private Network)というものです。
従来のVPNはさまざまな設定をするためネットワークの専門知識が必要だったり時間がかかったり、専用の機材が必要だったりしたのですが、Tailscaleを使うとそれらを回避し、初心者でも超簡単に安全なネットワークを繋ぐことができます。
下にもっと詳細な記事を置いておきます。

Windowsへの導入

Tailscale公式サイトからアカウントを作成してください。(自分はGitHub連携で作りました。)
その後、以下の公式ダウンロードサイトからインストーラーを落としてきてください。

インストーラーに従ってインストールを進めておきます。
インストールが完了したら以下のコンソールを確認してください。

コンソール画面(ipとメールアドレスは伏せてあります。)

また、自分が追加したWindowsのパソコンのところが緑色のConnected表示になっているのかを確認してください。
次に、WindowsパソコンのADDRESSESに書いてあるIPアドレスを控えておいてください。
(100.88.888.88のようなものです。)

スマホへの導入

自分はAndroidを持っていないため、iPhoneOS系OSでのインストール方法を示します。
Androidの場合は公式のドキュメントを参考にしてください。
まずはApp StoreからTailscaleアプリをダウンロードしてきてください。

それをダウンロードし、先ほど作ったアカウントでログインしてください。
(iPhoneOS系の場合はVPNを許可しますか?などの表示が出ると思うのですが、許可してください。)

お疲れ様でした。VPN(Tailscale)の導入は完了となります。

WindowsにSSHで接続できるようにする

ここからはWindowsにSSHで接続できるように設定を行います。
では、そもそもSSHとはなんでしょう?ChatGPTに聞いてみた結果がこちらとなります。

SSH(Secure Shell)は、公開鍵暗号とチャレンジレスポンス方式を組み合わせ、安全なリモートログインやコマンド実行、ファイル転送を行うためのネットワークプロトコル。TelnetやFTPが平文で通信内容を流すのに対し、SSHは認証やデータを暗号化し、盗聴・改ざん・なりすましを防ぐ。通常22番ポートを使用し、鍵ペアでの認証が推奨される。OpenSSHが最も普及しており、RFC4251〜4254で標準化。旧バージョン1系は脆弱性が多く、現在は改良されたプロトコルバージョン2が主流。さらにポートフォワーディングやX11転送、VPN的なトンネルも構築可能であり、管理者や開発者にとって不可欠な基盤技術となっている。

ChatGPT o3 Pro

難しいですね…
一言でいうと「暗号化された遠隔操作の方法」とでも表しましょう。
どう言う時に使うかと言うと、今回のような直接触れられないパソコンをCLIで触る時に活用します。
また、WindowsへSSHをするためにはChatGPTが説明してたようにOpenSSHというツールを使います。
自分はこの記事を参考にしました。

それでは進めていきます。

OpenSSHのインストール

" Windows + I "ショートカットを使うか普通にアプリから設定を開いてください。
そこの”システム”→”オプション機能”の中から”オプション機能を追加する”の”機能を表示”にてOpenSSH サーバーを検索して選択します。

選択後次へを押して、追加を押すことでインストールされます。

OpenSSH サーバーの設定

ファイル名を指定して実行というアプリ(ショートカットは"Windows + R")から、"services.msc"を実行します。

次に、サービスの一覧から OpenSSH SSH Server をダブルクリックしてプロパティを開き、以下の設定をします。
・スタートアップの種類:自動
・サービスの状態:開始

その後OKを押して確定をしてください。

SSH接続時のデフォルトシェルをWindows PowerShellに変更

標準で設定されているcmdは若干コマンドが特殊なので、Windows PowerShellに変更を行います。
PowerShellを管理者権限で開いて以下のコマンドを実行してください。

New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -Force

一連の作業を完了後、管理者権限のPowerShellで以下のコードを実行して、インストールがされているのかを確認して下さい。

Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

OpenSSH.ServerStateInstalledと表示されていれば大丈夫です。

これが成功。最も完璧です。

SSH設定ファイルの編集

(ある人は)VScodeなどで"C:\ProgramData\ssh\sshd_config"を開いてください。(ファイルがない場合には”C:\Windows\System32\OpenSSH\sshd_config_default”にあるデフォルト設定をコピーして作成してください。)
その後、以下の項目を追加してください。

Port 22
PermitRootLogin prohibit-password
PasswordAuthentication yes
ListenAddress <IPアドレス> (Tailscaleの項目で控えておいたIPアドレスを貼ります。)

設定を反映させるために管理者権限を持ったPowerShellで以下のコマンドを実行し、再起動を行います。

Restart-Service sshd

SSHサーバーが起動していることを確認

netstat -an | findstr ":22"

LISTENINGが表示されていれば成功です。
OpenSSHのインストール・設定は完了です。

スマホからwindowsにSSH接続する

いよいよ、最終章です。この章ではtermiusというアプリを使ってSSHをしていきます。

termiusは簡単に接続でき、IDE風オートコンプリートも搭載しているのでこれを選びました。a-shellなど他のターミナルアプリでも構いません。
このアプリはWindows/macOS/Linux/iOS/Android対応のSSHクライアントなので、Androidでも同じ方法で接続を行えます。
ここからはiPhoneOS系OSであるiPadOSで作業をしていきます。(iPhoneやAndroidでも手順は同じです。)

Termiusのインストール・設定

まずは、以下のところからアプリをインストールしてきてください。

ログイン後、以下の画面が表示されるのでNew Hostから接続先のパソコンの設定をします。

具体的には以下の4つです。
Label:任意の名前
IP or Hostname : Tailscaleのところで確保したIPアドレスを貼る
Username:Windowsのところで決めたユーザー名
Password:Windowsにログインする時のパスワード
それが完了したらSaveを押して保存してください。
そうすると、Hostsのところに先ほど決めた名前が追加されています。

では、ボタンを押して接続してみましょう!
接続が成功したら、これで設定は終了です!(接続出来なかった場合にはTailscaleのところが緑色になっていることを確認してください。)

iPadでの接続の様子

もちろん、iPhoneでだって接続できます。

iPhoneからの接続の様子

では、肝心のGemini-CLIを使ってみましょう。

iPadでGemini-CLIを開いた様子
iPhoneでGemini-CLIを開いた様子(少しロゴが崩れるのは許容)

あとはGemini-CLIでバイブコーディングをするだけです。
ここまでお疲れ様でした!
これで数クリックで作業ができるようになりました!

さいご

ここから先は自分の言葉で伝えたいので AI 校正は使いません。この記事は初めての 5000 文字超え長編 note ですが、どうしても伝えたいことがありました。それは、「iPad や iPhone がより生産的なデバイスになれる」ということです。

従来は画面サイズの制約で本格的なコーディングには向かないと思われがちでしたが、Claude Code や Gemini‑CLI の登場により、7~9 割は LLM に任せれば形になるようになりました。だからといって「Mac や PC が不要」と言うつもりはありません。

ただ、軽量で直感的な UI の iPad 上で作業できる感動は言葉にできません。しかも、iPad+Windows PC をそろえても合計6万円程度で収まるのも大きな魅力です。「コンピュータの先を行くコンピュータ」とはよく言ったものだと思います。

皆様も良いタブレット/スマホライフを!!

P.S. この記事も大体iPadで書きました。


いいなと思ったら応援しよう!

Holy_fox よろしければ応援お願いします! いただいたチップはAI代・デバイス代に使わせていただきます!