「AIに仕事を任せたいけど、PCの前にいないと動かせない」。 Claude Codeを使い込んでいる人ほど、この壁にぶつかるはずです。 長時間タスクを走らせて外出したい。寝る前に指示を出して、朝には終わっていてほしい。でもノートPCを閉じたらセッションが切れる。 この問題を根本から解決する方法があります。
Mac mini + Claude Code + Discord この3つを組み合わせると、「24時間稼働するパーソナルAIサーバー」が自宅に完成します。スマホのDiscordから指示を送れば、Mac miniの上でClaude Codeが動き続ける。寝ていても、外出していても。 私はこの構成で実際に仕事をしています。この記事では、なぜMac miniなのか、どう構築するのか、実際の運用で何が変わるのかを解説します。
Mac miniは、Appleが出しているデスクトップPCです。 ただし、一般的にイメージする「デスクトップPC」とはまるで違います。 手のひらに乗るサイズです。12.7cm × 12.7cm × 5cm。iPhone 2台分くらいの体積しかありません。重さは670g。 にもかかわらず、中身は本格的なPC。 最新のM4チップ、16GBメモリ、SSD搭載。MacBook Airと同等かそれ以上のスペックが、このサイズに収まっています。 ディスプレイ、キーボード、マウスは付属しません。箱だけです。だからこそ、今回のような「サーバー用途」にぴったりなのです。
Claude Codeの実行にGPUは使いません。 APIでクラウド上のモデルを呼び出す仕組みなので、M4の最小構成(94,800円)で十分です。 メモリ16GBあれば、Claude Codeのセッションを常時起動しても余裕があります。
「常時稼働のClaude Code環境」を作るなら、Mac miniが最適解です。理由は4つ。
Mac mini M4のアイドル時消費電力は約5W。 24時間つけっぱなしでも、電気代は月100〜200円程度です。 WindowsデスクトップPCのアイドルが50〜100W、ゲーミングPCなら150W以上。Mac miniは桁が違います。「つけっぱなし」が前提の用途では、この差が効いてきます。
ファンはありますが、通常の負荷ではほぼ回りません。 寝室に置いても気にならないレベルです。Claude Codeの処理はクラウド側で行われるため、本体に高負荷がかかることはほとんどありません。
本棚の隅、テレビ台の裏、デスクの端。どこにでも置けます。ディスプレイもキーボードも不要なので、セットアップ後は電源とLANケーブルだけ繋いで棚にしまえます。
Claude Codeはmac/Linux/Windows対応ですが、macOSとの親和性が最も高い。Homebrewでの環境構築、Node.jsやBunのインストール、ターミナル操作、すべてが自然に動きます。
ダメではないですが、向いていません。
この環境の構成は、驚くほどシンプルです。
┌─────────────┐ ┌──────────────────────┐
│ iPhone │ │ Mac mini(自宅) │
│ Discord DM │───────▶│ Claude Code │
│ 「これやって」│◀───────│ --channels discord │
└─────────────┘ └──────────────────────┘
▲ │
│ MCP経由 │
└─────────────────────────┘
--channels フラグ付きで動いているMac miniを箱から出して、一度だけディスプレイとキーボードを繋いで初期設定します。
ssh ユーザー名@mac-miniのIPアドレス
SSHでMac miniに接続し、以下を順に実行します。
# Node.jsのインストール(Homebrewがなければ先にインストール)
brew install node
# Bunのインストール(プラグイン実行に必要)
curl -fsSL https://bun.sh/install | bash
# Claude Codeのインストール
npm install -g @anthropic-ai/claude-code
# ログイン
claude
# 画面の指示に従ってclaude.aiアカウントでログイン
ここからは別記事「Claude Code Channelsの始め方(Discord編)」の手順と同じです。要点だけ書きます。
/plugin install discord@claude-plugins-official
/discord:configure <トークン>
- `--channels` 付きで再起動
- DiscordからDMしてペアリング
- `/discord:access policy allowlist` でロック
詳しい手順は上記記事を参照してください。
### Phase 4: 常時起動の設定
ここがMac mini構成の核心です。SSHを切ってもClaude Codeが動き続けるように、`tmux`(ターミナルマルチプレクサ)を使います。
brew install tmux
tmux new -s claude
claude —channels plugin:discord@claude-plugins-official
これで、SSHを切断しても、ターミナルを閉じても、Claude Codeのセッションは動き続けます。
再接続したいときは:
ssh ユーザー名@mac-mini tmux attach -t claude
## 実際の運用で何が変わるか
この構成を導入して、仕事の仕方が変わりました。
### 朝起きたら仕事が終わっている
寝る前にDiscordで「明日の記事のドラフト書いておいて。テーマはこれ、構成はこう」と送る。朝起きてDiscordを開くと、ドラフトが完成している。
### 移動時間が生産時間になる
電車の中でDiscordを開いて「さっきのコードにテスト追加して」と送る。降りる頃には「テスト8件追加しました。全件パス」と返ってくる。
### 長時間タスクを放置できる
大量のファイルを処理するタスクや、複数ステップの作業を走らせて外出する。途中でClaude Codeから「このファイル上書きしていいですか?」と質問が来たら、スマホで「はい」と返すだけ。
### 思いついた時にすぐ指示が出せる
散歩中に「あ、あの関数名変えたほうがいいな」と思ったら、その場でDiscordに送る。帰宅する頃には反映されている。
## 運用のコツと注意点
### tmuxセッションの管理
Mac miniを再起動した場合、tmuxセッションは消えます。再起動後に自動でClaude Codeを立ち上げたい場合は、`launchd`やログイン項目で自動起動スクリプトを設定します。
#!/bin/bash tmux new -d -s claude ‘claude —channels plugin:discord@claude-plugins-official’
### IPアドレスの固定
ルーターのDHCP設定でMac miniのIPアドレスを固定しておくと、SSH接続が安定します。
### 権限プロンプトへの対応
Claude Codeがファイル操作や外部コマンドの実行で権限確認を求めることがあります。その場合、Discordには「権限確認待ちです」と通知が来ます。
完全に無人で運用したい場合は `--dangerously-skip-permissions` フラグがありますが、名前の通り危険です。信頼できるプロジェクトディレクトリでのみ使ってください。
### セッションが切れた場合
Claude Codeのセッションが何らかの理由で終了した場合、Discordに送ったメッセージは無視されます。定期的にSSHで確認するか、ヘルスチェックの仕組みを入れるのがおすすめです。
## Mac miniは「AIの自宅」になる
この構成の本質は、Mac miniが「**AIエージェントの住処**」になることです。
従来、AIツールは「**自分が使うときだけ起動するもの**」でした。
ChatGPTを開いて質問して閉じる。Claude Codeを立ち上げてコードを書いて終了する。
Mac mini + Claude Code + Discordの構成は、この前提をひっくり返します。
AIは常に起きていて、あなたからのメッセージを待っている。あなたは好きなタイミングで、スマホから一言送るだけ。まるで、優秀なアシスタントが自宅のオフィスで24時間待機しているような感覚です。
必要な初期投資はMac mini(94,800円〜)だけ。月々の運用コストはClaude Proの20ドルと電気代100円程度。
まずは1台、棚の上に置いてみてください。
あなたが寝ている間も、AIは働き続けます。