--bg(ビージー)

起動オプション
--bg
ビージー
claude を起動するときにつける指定。セッションを最初から裏側(バックグラウンド)で立ち上げて、ターミナルをすぐ手元に返す。打った直後に、そのセッションの短いIDと、あとで操作するための4行が表示される。

claude を起動するたびにターミナルが1枚ふさがるのが気になってきた人向け

料理ブログの重い下調べやテスト流しのように、5分10分かかる作業をClaudeに頼みたいけれど、終わるまで画面に張りつきたくないとき。claude のうしろに --bg とやってほしいことを書き添えて起動すれば、その瞬間に裏でセッションが動き出して、画面はすぐ別作業に使える。

claude を起動するたびに、ターミナルが1枚まるごとそのセッションに占有されます。返事を待つあいだ、その画面では何もできません。--bg はこの占有を最初から避ける起動時の指定です。打った瞬間にセッションを裏側で立ち上げて、画面はすぐ手元に戻ってきます。

裏に回ったセッションは、ターミナルがつながっていなくても動き続けます。あとから様子を見に行ったり、返事を書き足したりもできます。

噛み砕くと

新しい職場で、頼みごとを2通りの渡し方ができる状況を想像してみてください。1つは相手のデスクの前に立って、終わるまでずっと待つやり方。もう1つは付箋に書いて貼っておいて、自分は別の仕事に戻るやり方。

--bg は後者です。「これ調べといて」と言い置いて、こちらはすぐ次の作業に移れます。相手(裏で動くClaude)は勝手に進めて、終わったら結果を残しておいてくれる。

立って待つ必要が、もうない。

大事な前提:これは研究プレビュー段階の新しい仕組み

裏で動くセッションの仕組み全体は、まだ research preview(お試し公開の段階)です。これには裏のセッションを一覧で見る管理画面(agent view)も含まれます。動く版は Claude Code v2.1.139 以降。手元の版は claude --version で確認できます。

もうひとつ。裏のセッションは自分のパソコンの上で動いています。クラウドのどこかではありません。だからパソコンをシャットダウンすると止まります(スリープなら保持される)。ここは後の落とし穴で詳しく書きます。

「料理ブログの調査を裏で走らせて、画面をすぐ取り返す」で手順を見る

世界各国の家庭料理を紹介するブログを作っていて、「東南アジアの定番おかず10品の歴史と材料を調べてほしい」という重ための調査を頼みたいとします。ふつうに claude を立ち上げて頼むと、調べ終わるまでその画面に張りつくことになる。これを --bg で最初から裏に回します。

ステップ1: 最初から裏で立ち上げる

やってほしいことを、起動時にそのまま書き添えて打ちます。

$ claude --bg "東南アジアの家庭料理の定番おかず10品の歴史と材料を調べてまとめて"

これだけ。ここがふつうの起動と違うところで、対話画面は開きません。

ステップ2: すぐに短いIDと管理コマンドが返ってくる

打った直後、こんな表示が出てプロンプトが戻ります。

backgrounded · 7c5dcf5d
  claude agents             list sessions
  claude attach 7c5dcf5d    open in this terminal
  claude logs 7c5dcf5d      show recent output
  claude stop 7c5dcf5d      stop this session

左上の 7c5dcf5d がこのセッションの短いID。下の4行が、あとでこの子を操作するための覚え書きです。ここで初心者がやりがちな勘違いを1つ。この表示は「終わった」合図ではありません。調査はまさに今、裏で走り始めたところです。

ステップ3: ターミナルはもう自由なので、別の作業に移る

画面は完全に戻っているので、同じターミナルで git status を打つなり、別のClaudeを立ち上げるなり、好きにできます。調査の終わりを待つ必要がない。これが --bg の旨味そのものです。

ステップ4: 名前をつけておくと、あとで見分けやすい

裏のセッションをいくつも並べると、短いIDだけでは「どれが何の調査だっけ」が分からなくなります。--name で表示名をつけられます。

$ claude --bg --name "asia-おかず調査" "東南アジアの家庭料理の定番おかず10品を調べてまとめて"

こうすると管理画面で 7c5dcf5d · asia-おかず調査 のように名前が並んで、ぐっと探しやすくなります。

ステップ5: 途中経過をのぞく

気になったら、直近の出力を手元に表示できます。

$ claude logs 7c5dcf5d

あるいは claude agents で管理画面を開けば、走っているセッション全部の状態が一覧で見えます。どれが「返事待ち」かもここで分かる。

ステップ6: 今いるターミナルに引き込んで会話に戻る

結果を見て追加で指示したくなったら、attach(アタッチ=今の画面に開く)します。

$ claude attach 7c5dcf5d

すると裏で進んでいた会話が今の画面に開いて、ふつうの対話に戻れます。用が済んだらまた離れればいい。立ち去ってもセッションは生き続けます。

つまり --bg は何をしてくれるのか

  • やってくれる: 起動の瞬間からセッションを裏に回して、ターミナルを即座に手元へ返す。短いIDと、あとで操作するための4行を表示する
  • やってくれない: 今すでに開いている対話を裏へ送ること。それは別物の /background の役目です(後述)
  • 意味が薄い場面: 一言で終わる質問や、その場で見ながら詰めたい設計相談。返事を待たずに離れる旨味がないので、ふつうに claude を立ち上げたほうが早い

使いどころ3シナリオ

シナリオ1: 料理ブログの重い下調べを朝イチで仕込む

「世界の発酵食品20種を、地域・原料・作り方で表にまとめて」みたいな、5分10分かかる調査。これを claude --bg --name "発酵食品リサーチ" で朝に仕込んでおけば、こちらは記事の構成を考える作業にすぐ移れます。昼に claude agents をのぞけば、できあがった表が待っている。待ち時間がそのまま別作業に変わります。

シナリオ2: テストだけ裏で回したいとき(--exec)

--exec を足すと、Claudeのセッションを立てずに、Claudeを介さない普通のコマンドをそのまま裏で走らせられます。料理ブログの投稿スクリプトのテストを流すなら、こう書きます。

$ claude --bg --exec 'pytest -x'

これはモデルを呼びません。AIが考えるのではなく、ただ pytest -x という命令を裏で動かして、結果を管理画面の1行として見せてくれるだけ。「重いテストを流しっぱなしにして画面は別作業に使う」用途です。

シナリオ3: 役割を決めた専門の係に裏で任せる(--agent)

--agent と組み合わせると、決まった役割を持つ係(subagent)を裏セッションの主役にできます。たとえばレビュー担当の係に、指摘対応を任せる形。

$ claude --agent code-reviewer --bg "PR 1234 のレビュー指摘に対応して"

料理ブログなら「記事の事実確認だけする係」を作っておいて、書き上げた下書きのファクトチェックを裏で走らせる、といった使い方になります。

初心者が踏みやすい落とし穴

  • --bg と /background は別物--bg は起動時につけて「最初から裏でセッションを生む」指定。/background は今開いている会話を「あとから裏に引っ越す」操作。生まれ方が違うだけで、行き先(裏のセッション)は同じです
  • --exec の出力は約5分で消える--exec で流した結果は記録ファイルに残らず、パソコンの記憶の上にだけ置かれます。コマンドが終わってから約5分で、その行ごと自動で片付けられる。結果が要るなら消える前に claude logs <短いID> か管理画面で読んでおきます
  • 許可の強さは「そのフォルダの初期設定」で始まる--bg で立てたセッションは、そのフォルダに設定された初期の許可モードで動き出します。今いる画面のモードを引き継ぐ /background とはここが違う
  • 全部に許可を出すモードは、いきなりは使えない。確認なしで動く強いモード、つまり bypassPermissionsauto--bg 起動で使うには、先に一度ふつうの対話で起動して、そのモードを自分で受け入れておく必要があります。見ていない相手に勝手放題させない安全装置です
  • 手元のファイルがすぐには変わらない。裏のセッションはファイルを書き換える前に、本体とは別の作業用コピー(worktree)に移ってから編集します。だから手元の元ファイルは即座には変化しません。並べて走らせても互いに踏まないための仕組みです
  • 使った分だけ消費は進む。裏のセッションも、ふつうの対話と同じだけ契約の利用量を食います。10個並べれば、おおよそ10倍の速さで枠が減る。並列は速いぶん消費も速いです
  • シャットダウンで止まる。裏のセッションは自分のパソコンの上で動いているので、電源を切ると止まります(スリープは保持)。失敗表示になっても、attach や返信でそこから再開できます
  • 名前なしで量産すると見分けがつかない。短いIDだけが並ぶと、どれが何の作業か分からなくなる。--name で名前をつけておくか、あとから管理画面で改名しておくと迷子になりません

書き方

claude --bg "<やってほしいこと>"
claude --bg --name "<表示名>" "<やってほしいこと>"
claude --bg --exec '<ふつうのコマンド>'

やってみるとこうなる

入力

claude --bg --name "発酵食品リサーチ" "世界の発酵食品20種を地域・原料・作り方で表にまとめて"

出力例

backgrounded · 7c5dcf5d · 発酵食品リサーチ
  claude agents             list sessions
  claude attach 7c5dcf5d    open in this terminal
  claude logs 7c5dcf5d      show recent output
  claude stop 7c5dcf5d      stop this session

このページに出てきた言葉

--bg
<code>claude</code> 起動時につけると、セッションを最初から裏側で立ち上げてターミナルをすぐ返す指定
agent view
裏で動いているセッションを一覧で見る管理画面。<code>claude agents</code> で開き、どれが動作中・返事待ちかが分かる
短いID
裏のセッション1つ1つに振られる短い識別記号(例: <code>7c5dcf5d</code>)。様子を見たり止めたりするとき相手を指定するのに使う
attach(アタッチ)
裏で動いているセッションを今いる画面に開いて、対話に戻る操作。<code>claude attach 短いID</code>
--exec
<code>--bg</code> に足すと、Claudeのセッションを立てずにAIを呼ばず、ふつうのコマンドをそのまま裏で走らせる
--agent
あらかじめ役割を決めておいた係(subagent)を、裏セッションの主役として動かす指定
worktree(ワークツリー)
本体とは別に切り出した作業専用のファイルのコピー。裏のセッションはここで編集するので、複数同時でも編集がぶつからない

関連項目

公式ドキュメント

https://code.claude.com/docs/en/cli-reference

-

← 戻る