# ⚡️ Mac ターミナル高速化 ＆ セキュリティマスターハック

Macのターミナル（Zsh / Homebrew / Antigravity）の起動・動作速度を極限まで高速化し、セキュアに運用するためのチートシートです。

---

## 🚀 1. ターミナル起動速度の爆速化（遅いZshの解消）

### ① 起動速度の計測（ボトルネック特定）
```bash
# 起動にかかる時間をミリ秒単位で計測
time zsh -i -c exit
```
> 目安: 0.1秒（100ms）以下なら爆速。0.5秒以上かかっている場合は遅いプラグインや不要なevalが原因です。

### ② Zshプロファイリング（何が遅いか行単位で特定）
```bash
# ~/.zshrc の先頭に追記:
zmodload zsh/zprof

# ~/.zshrc の末尾に追記:
zprof
```
次回ターミナル起動時に、どの設定やプラグインが時間を食っているかランキング順で表示されます。

### ③ 高速化の鉄則（よくあるボトルネック）
1. **nvm や pyenv の遅延読み込み（Lazy Load）**:
   毎回起動時に初期化せず、コマンドを叩いた時だけロードさせる。
   ```bash
   # 例: nvm の遅延ロード
   nvm() {
     unset -f nvm
     [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
     nvm "$@"
   }
   ```
2. **compinit（補完キャッシュ）の1日1回限定ロード**:
   ```bash
   autoload -Uz compinit
   if [ "$(find ~/.zcompdump -mtime -1 2>/dev/null)" ]; then
     compinit -C
   else
     compinit
   fi
   ```
3. **Homebrew の analytics を無効化（通信ラグ排除）**:
   ```bash
   brew analytics off
   ```

---

## 🔒 2. Mac 開発環境のセキュリティ強化チートシート

### ① 鍵管理（SSH / APIトークン）
- **キーチェーン連携（Passphrase不要化＆暗号化保護）**:
  `~/.ssh/config` に以下を記述：
  ```text
  Host *
    AddKeysToAgent yes
    UseKeychain yes
    IdentityFile ~/.ssh/id_ed25519
  ```
- **ED25519鍵の生成（RSAより強固で高速）**:
  ```bash
  ssh-keygen -t ed25519 -C "your_email@example.com"
  ```

### ② Gitコミットの署名（なりすまし防止）
GitHub等で「Verified」バッジを付与し、コミットの改ざんを防ぐ。
```bash
git config --global user.signingkey ~/.ssh/id_ed25519.pub
git config --global gpg.format ssh
git config --global commit.gpgsign true
```

### ③ 環境変数・APIキーの漏洩防止（.gitignore 徹底）
プロジェクト内にシークレットを直書きせず、`~/.zshrc` または `~/.zprofile` のローカル環境変数で管理。
```bash
export NOTION_TOKEN="ntn_..."
export CLOUDFLARE_API_TOKEN="..."
```

---

## 🛠️ 3. 実践おすすめエイリアス（超時短）
```bash
alias ll='ls -laG'
alias zshconfig='code ~/.zshrc'
alias zshreload='source ~/.zshrc && echo "⚡️ Zsh reloaded!"'
alias g='git'
alias gs='git status'
alias gp='git push'
alias c='clear'
```
