
ヒント — これだけ知れば指示できる
確認の一行がすべてだ。
ターミナルで以下を打つ。
claude --version
2.1.x のようなバージョン番号が表示されれば — 本物のClaude Codeだ。このコースの第1講から第11講まで全部動く。
コマンドが見つからないと表示される場合、または今使っているのが Cursor・Antigravity・Windsurf のチャット欄 であれば — それはClaude Codeではない。同じClaudeモデルを使っていても、別のプログラムだ。このコースの自律走行はそこでは動かない。
覚える一文:
エージェント ≠ モデル。 同じOpusを使っても、動かすプログラムが違えば能力が違う。
インストール一行(Mac / Ubuntu / WSL):
curl -fsSL https://claude.ai/install.sh | bash
Windowsは WSL またはDockerが先だ。以下の本文で扱う。
体験してみよう
同じ作業をさせて、CLIとIDEチャットの違いを目で確認する。3分で終わる。
Claude Code(CLI)で:
「空のフォルダにhello.pyを作って。わざと文法エラーを一つ入れて、実行してエラーを確認してから、自分で直してもう一度実行して。‘Hello’が出力されるまで。」
CLIのClaude Codeは — ファイルを作り、自分で実行し、エラーを読み、直し、また動かす。毎ステップあなたに確認を求めない。 自律ループが回る。
同じ文をIDEの拡張チャット(Cursor/Antigravity/Windsurfのチャット欄)に入れると — コードは提案するが、実行はあなたがボタンを押さなければならず、エラーを再びコピーして貼り付けなければならず、毎ステップ承認を待つ。ループが人間を経由しないと閉じない。
この違いが第0講のすべてだ。そしてこのコース全体が 前者 を前提に設計されている。
なぜこう指示すべきなのか
あなたはおそらくすでに「Claude Code」で何かを作った経験があるだろう。YouTubeの講座を見て、チャット欄に話しかけ、コードが出てくるのを見た。
しかし一つ聞きたい。あなたが使ったそれは、本当にClaude Codeだったのか?
この問いが些細に見えるなら、実際のオンボーディング現場の話を聞いてほしい。
エージェント ≠ モデル
あるユーザーがvibe codingで作ったアプリが壊れて助けを求めてきた。「Claude Codeで開発中」と言っていた。数日間迷い続けた。言った通りにならず、AIが岐路に立つたびに「A案・B案・C案のどれにしますか?」と聞き返して進まなかった。
原因は彼の判断力ではなかった。彼が使っていたのは Antigravity IDE拡張のClaudeチャット だった。CLI Claude Codeではなかった。どちらもClaude Opusモデルを使う。モデルは同じだ。それなのに結果はまったく違った。
なぜ? モデルが同じでもエージェントが違うからだ。
- モデル(Model): OpusやSonnetのような頭脳。文を読み書きする能力そのもの。
- エージェント(Agent): その頭脳を動かすプログラム。どんなシステムプロンプトを与えるか、どんなツール(ファイル読み書き/コマンド実行)を持たせるか、人間の承認なしにどこまで自分でやるか — すべてエージェントが決める。
同じ馬(モデル)でも、手綱なしに野原に放つか、鞍と馬具をつけて騎手が乗るかによって、行ける場所が違う。エージェントがまさにその鞍と馬具だ — 手綱(reins)をかけられるようにする装置。(第5講でまた会う。)
| 単純チャットモード(IDE拡張など) | CLI自律エージェント(Claude Code) | |
|---|---|---|
| モデル | Claude(同じ) | Claude(同じ) |
| ファイルアクセス | 限定的・手動 | Read/Write/Edit 自動 |
| コマンド実行 | ほぼ不可 | Bashで直接実行 |
外部CLIツール実行(yongol、hurlなど) | 不可 | 可能 |
| 自律進行 | 毎ステップ承認 | 自分でループ |
| サブエージェント | 手動 | 自動生成 |
だから中途半端なエージェントではだめだ — なぜこのレベルのエージェントなのか
エージェントにはレベルがある。そしてこのコース(第1講〜第11講)が求めるレベルは、一つの基準で分かれる。
このコースの核心は一文だ。
AIがコードを書き、機械が検証し、あなたは「通過した?」とだけ確認する。
これが動くには、AIが 自分で 検証ツールを実行し、その結果を読んで次の行動を決めなければならない。yongol validateを動かしてエラーを読み、直し、また動かすループ — これを人間が毎回仲介すれば、自律ではなく労働だ。
自律ループ可能:
AIがvalidate実行 → エラー読む → 修正 → 再度validate → 通過 → 次へ
(人間介入0回)
毎ステップ人間が仲介:
AIが「validateをこう実行してください」→ 人間がコピー・実行 →
結果を人間がコピー → AIに貼り付け → AI修正案 → 人間がまた実行...
第3講Hurl、第4講yongol、第6講tsma、第8講filefunc — すべてCLIツールだ。AIが自律で動かしてこそ意味がある。このループを回せないエージェントでは、このコースの半分が機能しない。
だから「中途半端なエージェント」の基準はブランドではなく、この一問だ:
このエージェントが
yongol validate/hurl/tsmaを 自分で 実行し、結果を読んで次の行動を決めるか? それとも毎ステップ私がコピー・承認を仲介しなければならないか?
- 前者なら — reinsをかけられるエージェントだ。(CLI Claude Codeがここに該当する。)
- 後者なら — 中途半端なエージェントだ。モデルがいくら賢くても、このコースでは詰まる。
注意:「IDE拡張 = 絶対NG」ではない。 Cursor・Windsurfの エージェントモード のようにコマンドを自律実行してループを回すものもある。逆に同じ製品の中の単純チャットモードは毎ステップ人間を経由する。製品名ではなく 上の基準 で判断せよ。実際のオンボーディング現場で詰まったのも「IDEだから」ではなく、使っていたチャットモードがCLIループを自律で回せなかったからだ。
だから第0講が講の入口だ。 ツールを間違えると、第1講から第11講までがすべて嘘になる。
YouTubeの罠
問題はこれだ。YouTubeやコミュニティのvibe codingの講座のほとんどが、自律ループを回すエージェントと単純チャットモードを 区別せず どちらも「Claude Code」と呼ぶ。
だから初心者には違いを知る方法がない。チャット欄に話しかけながら「自分はClaude Codeを使っている」と信じる。そして講座通りにならない理由を自分のせいにする。
違う。ツールを間違えたのだ。正確には、YouTubeがツールを間違えて教えたのだ。 上の一つの基準 — 「自分でCLIを動かすか」 — さえ持っていれば、この罠にはまらない。
Claude Codeのインストール
このコースはUbuntu(またはWSL)環境を基準とする。Macユーザーもほぼ同じだ。
事前準備
- Anthropicアカウント: https://console.anthropic.com で登録
- サブスクリプションプラン: Claude Pro(月20ドル)、Max(月100ドルまたは月200ドル)から選択。Maxは使用量制限が余裕がある
- Ubuntu / Mac / WSL またはDocker: Windowsユーザーは以下の二つのルートから一つを選ぶ
Mac・Ubuntu・WSL内で — ネイティブインストール(推奨)
Node.jsが不要な最もシンプルな方法だ。
curl -fsSL https://claude.ai/install.sh | bash
インストールが終わったら確認する。
claude --version
2.1.x のようなバージョン番号が表示されれば成功だ。
Windows Aプラン:WSL(推奨)
Windows PowerShellを管理者権限で開いて実行する。
wsl --install
この一行がWSLの有効化、Linuxカーネルのダウンロード、Ubuntuのインストールをすべて処理する。再起動後にUbuntuが開いてユーザー名とパスワードを聞いてくる。小文字の短い名前を入力する。
注意: 以降のすべての作業はUbuntuターミナル内で行う。PowerShellやCMDでClaude Codeをインストールすると「Windows is not supported」エラーが出る。
その後、上のネイティブインストール一行をUbuntu内で実行する。
WSLのヒント: プロジェクトは必ずLinuxファイルシステム(
/home/ユーザー名/)に置く。Windows側(/mnt/c/)に置くとファイル読み取りが極端に遅くなる。
Windows Bプラン:Docker(WSLが使えない場合)
会社のポリシーや環境の問題でWSLが使えない場合、DockerでLinuxコンテナを立ち上げ、その中でClaude Codeを使う。
# プロジェクトフォルダで、ubuntuコンテナを立ち上げて現在のフォルダをマウント
docker run -it -v "$(pwd)":/work -w /work ubuntu:24.04 bash
# コンテナ内で
apt update && apt install -y curl
curl -fsSL https://claude.ai/install.sh | bash
claude --version
-v "$(pwd)":/work があなたのプロジェクトフォルダをコンテナ内の /work につなぐ。コンテナ内で作業した結果がそのままあなたのフォルダに残る。
補足方法:npmでインストール
すでにNode.jsの経験がある人向けの方法だ。初めての場合は上のネイティブインストールを使う。
# nvmインストール後にNode.js LTS
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
source ~/.bashrc
nvm install --lts
# Claude Codeインストール
npm install -g @anthropic-ai/claude-code
注意:
sudo npm install -gは使わない。権限問題とセキュリティリスクが生じる。
初回実行と認証
# プロジェクトフォルダへ移動(なければ作る)
mkdir -p ~/projects/my-first-app
cd ~/projects/my-first-app
# Claude Code実行
claude
初回実行時にブラウザが開いてAnthropicへのログインを求める。ログインすると認証完了で、次回以降は自動接続される。
インストール確認チェックリスト
この三つがすべてチェックできれば、第1講へ進む準備ができている。
-
claude --versionが2.1.xのバージョン番号を出力するか -
claudeを実行するとプロンプト(対話画面)が表示されるか - ブラウザログインで認証が完了したか
- 上の体験で、AIが 自分で ファイルを作り実行して直したか(毎ステップ承認を求めなかったか)
最後の項目が最も重要だ。AIが自分でコマンドを実行してエラーを直したなら — あなたは本物のClaude Codeを使っている。
IDE拡張はあくまで補助として
Cursor、Antigravity、Windsurfが悪いツールという意味ではない。コードを目で見ながら一行ずつ直すのには優れている。プログラマーにとっては良いツールだ。
ただしこのコースの 自律走行はCLIで行う。 IDE拡張はコードを覗く補助画面として使い、「作って検証して固定する」ループはClaude Code CLIに任せる。両方を使いつつ、役割を区別する。
実習:本物を確認する
目標: 自分が使っているのがCLI Claude Codeであることを確認し、自律ループを一度回してみる。
ステップ1 — インストール確認
claude --version
バージョンが 2.1.x と表示されるか確認する。表示されなければ上のインストール手順に戻る。Windowsの場合はWSL(Aプラン)またはDocker(Bプラン)のいずれかを先にセットアップする。
ステップ2 — 自律ループを観察する
claude を実行して空のフォルダで指示する:
空のフォルダにhello.pyを作って。わざと文法エラーを一つ入れて、
実行してエラーを確認してから、自分で直してもう一度実行して。
"Hello"が出力されるまで。
観察すること:
- AIがファイルを直接作るか?(あなたがコードをコピー・貼り付けしないか)
- AIが
python hello.pyを直接実行するか? - エラーが出たらAIが自分で読んで直すか?
- この一連の過程であなたがやったことは最初の一文と(必要に応じて)実行承認だけか?
すべて「そうだ」であれば — あなたはゲートを通過した。第1講へ進む。
(IDEチャットを使っていた場合) 同じ文をIDEチャット欄にも入れてみて、どこで詰まるかを直接比べてみる。この差を一度体感すれば、なぜ第0講が必要なのか生涯忘れない。
まとめ
- エージェント ≠ モデル。 同じClaudeモデルでも、動かすプログラム(エージェント)が違えば能力がまったく違う。
- YouTubeが「Claude Code」と呼ぶものの多くは、自律ループを回せない単純チャットモードだ。 判別基準はブランドではなく「自分でCLIを動かすか」だ。
- このコースはCLIを前提に設計されている。 第3講Hurl、第4講yongol、第6講tsma、第8講filefunc — すべてAIが自律で実行してこそ意味のあるCLIツールだ。
- インストールは一行。
curl -fsSL https://claude.ai/install.sh | bash。Windowsは WSLまたはDockerが先。 - ゲート通過基準:
claude --versionが2.1.xを返し、AIが自分でファイルを作り実行して直す。
ツールを間違えると、次の11講がすべて嘘になる。講の入口をここで塞いだ。
次講予告:「AIへの指示の仕方。」 本物のClaude Codeを手に入れたので、コードを知らない人がAIに何を、どう指示するかを学ぶ。
課題
- 自分のツールの正体確認: これまで「Claude Code」と信じて使っていたものがCLIなのかIDEチャットなのかを確認する。
claude --versionが答えだ。 - 自律ループを一度回す: 上の実習のhello.py課題を最後まで回して、AIが人間介入なしに何ステップを自分で処理したかを数える。
- (Windowsユーザー)環境を決める: WSLとDockerのうち自分の環境で動く方を一つ選んでセットアップを終える。
関連記事
- コーディングエージェントはなぜ動き、なぜ壊れるのか — エージェントの自律的検証ループが動く条件と壊れる条件。第0講の「なぜCLI自律ループなのか」の理論的背景。
- Reins Engineering — 手綱のあるAI — 囲い(ハーネス)と手綱(Reins)の違い、そしてエージェントをreinsの基盤として見る全体フレーム。
参考資料(外部)
- Agent Harness Engineering — Addy Osmani. 「まずまずのモデル+優れたハーネスは、優れたモデル+悪いハーネスに勝る。」モデルを固定してハーネスだけ変えたらベンチマーク順位が逆転した事例。エージェント ≠ モデル の決定版。
- Agents are models using tools in a loop — Simon Willison. エージェントの標準的な定義。ツールの結果がモデルにフィードバックされる「loop」が、本物のエージェントとマーケティング用語を分ける。
- Which AI Coding Harness Actually Works Without You? — Paweł Józefiak. コーディングツールをOrchestrator(自律)/ Pair Programmer(段階的指示)/ Supervised IDE(単独判断拒否)の三区分で分類。この三つを混同することが核心的な間違い — 第0講の「YouTubeの罠」とまったく一致する。
Reins Engineering 全講義
| 講 | タイトル |
|---|---|
| 第0講 | Claude Codeのインストール |
| 第1講 | AIへの指示の仕方 |
| 第2講 | AIを信じない方法 |
| 第3講 | 壊れないアプリ |
| 第4講 | 決定をコードの外へ |
| 第5講 | 手綱のあるAI |
| 第6講 | 通過したら固定する |
| 第7講 | おべっかを逆手に |
| 第8講 | エージェントの工場 |
| 第9講 | コードを超えた自動化 |
| 第10講 | データの法 |
| 第11講 | 失敗したvibe codingを救う方法 |