Claude Code：ターミナルで動くAIコーディングアシスタント


## はじめに

ソフトウェア開発において、コードレビューやバグ修正などの反復的な作業は大きな負担です。  

**Claude Code** はターミナル上で動作するエージェント型AIアシスタントで、自然言語による対話を通じてコードの編集やテスト実行、Git操作などを支援してくれます。  

```mermaid
flowchart TD
    A[Claude Codeの主な機能]
    A --> B[コード編集・理解]
    A --> C[バグ修正・テスト]
    A --> D[Git操作]
    A --> E[アーキテクチャ検討]
```

```mermaid
graph LR
    A[開発者] -->|自然言語で指示| B[Claude Code]
    B -->|コードの解析・実行| C[プロジェクト]
    C -->|結果・フィードバック| B
    B -->|提案・修正| A
```

本記事では、**インストール手順**から**具体的な使い方**、**セキュリティ**や**コスト管理**に至るまでを網羅し、導入検討の材料になる情報をまとめました。

https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview

---

## 1. Claude Code とは

**Claude Code** は、**ターミナルから直接操作できるエージェント型のAIコーディングアシスタント**です。
下記のような特徴を備えています。

- **自然言語でコードを編集・質問可能**  
  ターミナル上から自然言語で指示を出すと、AIがコードベースの文脈を理解して修正や解説を行います。
- **エンジニアのワークフローを加速**  
  **バグ修正**、**コードリファクタリング**、**テスト実行**などをAIが代行するため、手動での反復作業を大幅に削減できます。
- **Git 連携**  
  **コミットやPull Request作成、リベース、マージコンフリクト解消**などを支援し、チーム開発における効率を向上させます。
- **セキュリティとプライバシー重視**  
  コードやターミナル操作の内容はローカル環境で完結し、**危険な操作には明示的に承認を求める**仕組みが導入されています。

現在は **ベータ版 (研究プレビュー)** として提供されており、ユーザーフィードバックをもとに日々アップデートが行われています。

---

## 2. システム要件

Claude Code の**推奨環境**は以下の通りです。

- **OS**  
  - **macOS 10.15 以降**  
  - **Ubuntu 20.04+ / Debian 10+**  
  - **Windows (WSLを介して)**
- **ハードウェア**  
  - **4GB 以上のRAM**（推奨）
- **ソフトウェア要件**  
  - **Node.js 18 以上**  
  - (任意) **git 2.23 以上** (Git 操作をする場合)  
  - (任意) **GitHub CLI / GitLab CLI** (PR 作成などをする場合)  
  - (任意) **ripgrep (rg)** (コード検索を高速化)
- **ネットワーク**  
  - **api.anthropic.com** へのアクセス  
  - **statsig.anthropic.com, sentry.io** への送信を許可  
  - 認証/課金のために **Anthropic Console** のアカウントが必要（有料プラン対応）

---

## 3. インストール手順

### npm からのインストール
```bash
npm install -g @anthropic-ai/claude-code
```
グローバルインストール後、`claude` コマンドが使用可能になります。

### プロジェクトディレクトリへ移動
```bash
cd your-project-directory
```
作業中のリポジトリやプロジェクトのパスを指定します。

### Claude Code の起動
```bash
claude
```
初回起動時には **OAuth 認証**が求められます。
あらかじめ **Anthropic Console** にログインし、課金設定などを完了させておいてください。

---

## 4. 主要機能

Claude Code が提供する主な機能は以下の通りです。

1. **ファイル編集・バグ修正**  
   自然言語で「ここを修正して」と指示すれば、複数ファイルにわたる修正を自動的に行うことが可能。
2. **コードベースの理解と説明**  
   「コード全体で何をやっているのか」「認証システムのフローを説明して」などの問いかけが可能。
3. **テスト実行・lint・デバッグ**  
   lintやテストの実行、バグ修正までをAIが対話的に支援します。
4. **Git 操作**  
   - **変更差分のコミット**  
   - **プルリクエスト作成** (GitHub CLI / GitLab CLI と連携)  
   - **リベースやマージコンフリクト解消**
5. **高度な思考プロンプト**  
   「認証周りのエッジケースを検討して」「設計のアーキテクチャを深く考えて」など、より踏み込んだ検討も依頼できます。

---

## 5. 使い方

### 基本的な CLI コマンド

```bash
claude               # 対話的なREPLを起動
claude "query"       # REPLを起動し、最初に "query" を実行
claude -p "query"    # "query" を1回実行して即終了
cat file | claude -p "query"  # ファイル内容をパイプで渡して解説
claude config        # 設定を変更
claude update        # 最新バージョンへアップデート
claude mcp           # MCP (Model Context Protocol) 関連の設定
```

- **主なオプション**  
  - `--print`: インタラクティブモードに入らず、出力のみ表示して終了  
  - `--verbose`: 詳細ログを有効化  
  - `--dangerously-skip-permissions`: コンテナ環境などでの明示的承認をスキップする (通常は非推奨)

### インタラクティブモード内でのスラッシュコマンド

- **`/bug`** : バグレポート送信 (Anthropicに会話履歴が送られる)  
- **`/clear`** : 会話履歴をクリア  
- **`/compact`** : 会話履歴を圧縮してトークン消費を抑制  
- **`/config`** : 設定の閲覧/変更  
- **`/cost`** : 現セッションのトークン消費量を表示  
- **`/doctor`** : インストール状況を診断  
- **`/help`** : ヘルプ表示  
- **`/init`** : プロジェクト用のガイド `CLAUDE.md` を生成  
- **`/login`, `/logout`** : アカウントの切り替え/ログアウト  
- **`/pr_comments`** : PRのコメント一覧を確認  
- **`/review`** : コードレビューを依頼  
- **`/terminal-setup`** : ターミナル環境のショートカットキー設定を支援

---

## 6. 具体的な活用例

1. **コードの理解**  
   ```bash
   $ claude
   > how does our authentication system work?
   ```
   AI がソースファイルを読み取り、認証フローの概要を説明してくれます。

2. **コード修正**  
   ```bash
   $ claude
   > fix the type errors in the auth module
   ```
   型エラーを特定し、必要な修正案を提案。ユーザが承認すれば自動編集も可能です。

3. **テスト実行とバグ修正**  
   ```bash
   $ claude
   > run tests for the auth module and fix failures
   ```
   テストの失敗内容を解析し、修正箇所や修正方法を提案してくれます。

4. **Git 操作**  
   ```bash
   $ claude
   > commit my changes
   > create a pr
   > rebase on main and resolve any merge conflicts
   ```
   プロジェクトを自動コミット・PR 作成からリベースまで支援します。

5. **アーキテクチャの議論**  
   ```bash
   $ claude
   > think hard about the edge cases in our authentication flow
   ```
   複雑なシステムのエッジケースやリファクタリング指針について、さらに踏み込んだ提案をしてくれます。

---

## 7. セキュリティとパーミッション

Claude Code は、**危険なコマンドの誤実行や不正操作を防ぐため**に、以下のような**パーミッション(権限付与)システム**を導入しています。

```mermaid
flowchart TB
    A[ユーザが自然言語でコマンドを入力] --> B{権限チェック}
    B -->|許可/拒否| C[コマンドを実行 or キャンセル]
    C --> D[ターミナルに結果表示]
```

| **権限種類**        | **内容**                                | **初回承認の要否**                     | **「今後は聞かない」を許可した場合**     |
|---------------------|-----------------------------------------|----------------------------------------|-------------------------------------------|
| **Read-only**       | ファイルの読み取り、`ls`、`grep`など     | 不要                                   | 常に許可 (読み取り操作)                  |
| **Bash Commands**   | シェルコマンドの実行                     | 必要 (**Yes** / **No**)                | プロジェクト単位で恒久許可可能           |
| **File Modification** | ファイルの編集(上書き/追記)            | 必要 (**Yes** / **No**)                | セッション終了まで許可                   |

### 主な利用可能ツール

- **BashTool**: シェルコマンド実行 (要承認)  
- **FileReadTool**: ファイルの読み取り (承認不要)  
- **FileEditTool**: ファイル内容の編集 (要承認)  
- **GrepTool**: `grep`コマンド検索 (承認不要)  
- **GlobTool**: ファイルパターン検索 (承認不要)  
- **NotebookReadTool / NotebookEditTool**: Jupyter Notebook 関連 (要承認)

### プロンプトインジェクション対策

- **権限システム**: 危険な操作には必ず明示的承認が必要  
- **コンテキスト分析**: 悪意のある指示を検出  
- **入力サニタイズ**: シェルコマンド実行時の入力を安全に処理  
- **コマンドブロックリスト**: 任意の外部サイトへアクセスする `curl`, `wget` などをブロック

完全なリスクゼロではないため、**不審な挙動があった場合は `/bug` で報告**し、常に操作内容を精査することが推奨されます。

---

## 8. ターミナル環境の最適化

### シェルのサポート
- **Bash, Zsh** (Fishは未サポート)

### 改行の入力
インタラクティブモードで複数行を入力したいときは、以下の方法があります。
- `\` + Enter で改行  
- Option+Enter (Meta+Enter)  
- `/terminal-setup` コマンドで、**iTerm2 / VSCode 向けに Shift+Enter** を割り当て可能

### 通知設定
- **ターミナルベル**: タスク完了時に通知音を出す  
  ```bash
  claude config set --global preferredNotifChannel terminal_bell
  ```
- **iTerm2 システム通知**:  
  iTerm2 設定 → Profiles → Terminal から **「Silence bell」** と **「Send notification when idle」** を有効にする

---

## 9. コスト管理

Claude Code は対話時の**トークン消費に応じて料金**が発生します。

- **目安**: 1日あたり 5～10ドル/開発者。  
  ただし、コード量や長時間の対話で **1時間あたり100ドル超** になる場合も。
- **コスト確認**:  
  - `/cost` コマンドでセッション内のトークン利用状況を確認  
  - セッション終了時にもサマリを表示  
  - Anthropic Console で利用履歴を閲覧
- **コスト削減策**  
  1. **`/compact`** で会話履歴を適宜圧縮  
  2. 大きな範囲を一度に処理させず、**具体的に指示**を行う  
  3. タスクを細分化して、**大量ファイルの一括修正を避ける**  
  4. **`/clear`** で不要な会話履歴をクリア

大規模導入前に、**少人数で試験運用**しながらトークン使用量の傾向を把握し、上限設定や運用ポリシーを検討するのが望ましいです。

---

## 10. サードパーティ連携

Claude Code は、**Amazon Bedrock** や **Google Vertex AI** をバックエンドとして利用可能です。  
環境変数を設定することで連携が有効になります。

### Amazon Bedrock の利用例

```bash
export CLAUDE_CODE_USE_BEDROCK=1
export ANTHROPIC_MODEL='us.anthropic.claude-3-7-sonnet-20250219-v1:0'
export DISABLE_PROMPT_CACHING=1
```
AWS アカウントの認証情報（`AWS_ACCESS_KEY_ID`など）が必要。Bedrock 経由の利用は**レートリミット**や**コスト削減**機能が充実しています。

### Google Vertex AI の利用例

```bash
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-east5
export ANTHROPIC_VERTEX_PROJECT_ID=your-project-id
```
Google Cloud プロジェクトとリージョン設定 (`us-east5`) が必要です。

---

## 11. 開発コンテナの利用

VS Code の **Remote-Containers** 機能などで使える **開発コンテナ(Dev Container)** 用のリファレンスが用意されています。  
**`--dangerously-skip-permissions`** を用いた**無人操作**でも、**コンテナ内でセキュリティを担保**できます。

### 開発コンテナの特徴

- **Node.js 20 ベースイメージ** + 必要ツールがプリインストール  
- ファイアウォールルールによるアクセス制限 (api.anthropic.com 等必須ドメインのみ許可)  
- Zsh, fzf, git など開発に便利なツールを搭載  
- VS Code の拡張機能もプリセット  
- リファレンス実装として公開されており、自由にカスタマイズ可能

### セットアップの流れ

1. **VS Code** と **Remote - Containers** をインストール  
2. 対象リポジトリをクローン  
3. VS Code でリポジトリを開く  
4. **「Reopen in Container」** をクリックしてDev Containerで起動

---

## 12. データ利用ポリシー

- **ライセンス / 利用規約**  
  Claude Code はベータ版として、**AnthropicのCommercial Terms of Service** に基づいて提供されます。
- **ユーザーデータの取り扱い**  
  - コードや会話の内容はモデル学習に**使用されません**。  
  - **`/bug`** コマンドによる送信データは、問題解析の目的でのみ利用され、**30日後に削除**されます。
- **プライバシー保護**  
  - 受け取ったデータへのアクセスは厳格に制限され、必要最小限の情報のみ保持。  
  - 詳細は [Anthropic のプライバシーポリシー](#参考文献) を参照。

---

## まとめ

**Claude Code** は、**ターミナル上から自然言語でコード編集やデバッグ、Git操作までできる強力なアシスタントツール**です。  
導入にあたって意識すべきポイントを振り返ってみましょう。

1. **npm でインストール & 認証**  
   ```bash
   npm install -g @anthropic-ai/claude-code
   claude
   ```
   Anthropic Console アカウントでのログイン・課金設定が必要。

2. **ターミナルで対話的に操作**  
   - コード解説やバグ修正、テスト実行、Git操作を自然言語で指示。  
   - ファイル編集やシェルコマンド実行時に**明示的承認**が求められるので安心。

3. **コスト管理**  
   - `/cost` や Anthropic Console で**利用履歴**を確認  
   - 会話履歴を `/compact`, `/clear` でこまめに整理し、**トークン使用量を抑制**

4. **セキュリティ**  
   - **権限管理システム**で誤操作や悪用を防止  
   - 開発コンテナを使った**安全な実行環境**づくり

5. **拡張連携**  
   - **Amazon Bedrock**、**Google Vertex AI** など他社プラットフォームとも連携可能  
   - GitHub CLI / GitLab CLI と組み合わせて**PR 作成やレビューの自動化**

まだ **ベータ版** ではありますが、既に実務での生産性向上に役立つ機能が揃っています。まずは小規模に試していただき、**コードレビューやリファクタリング、バグ修正の効率化**を実感してみてください。

---

## 参考文献

https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview

- [Anthropic Console](https://console.anthropic.com/)  
- [Anthropic のプライバシーポリシー](https://www.anthropic.com/policy)

---
### 会社紹介

**株式会社 Mosaica**  
最先端テクノロジーで社会課題を解決し、持続可能な未来を創造する IT カンパニー。
AI ソリューション、クラウド統合、DX 推進、経営コンサルティングなど包括的なサービスでビジネス変革を支援しています。  

詳しくは [公式サイト](https://mosaica.co.jp/) までお気軽にご相談ください。
公式サイト： https://mosaica.co.jp/