技術 約5分で読めます

Claude Code 2.1.0 リリース — パーミッションワイルドカード、スキルホットリロード、Vim拡張

Claude Code 2.1.0 が来た。個人的に一番嬉しいのは Bash パーミッションのワイルドカード対応。これまで Bash(npm run:*) みたいな前方一致しかできなくて、npm install を許可するには別ルールが必要だった。それが Bash(npm *) 一発で全部通るようになった。

その他にもスキルのホットリロード、Vim操作の大幅拡張、エージェントフォーク対応など盛りだくさん。詳しく見ていく。

Bash パーミッション:ついに真のワイルドカード対応

これまでの Claude Code では、パーミッション設定が前方一致だった。

{
  "permissions": {
    "allow": ["Bash(npm run:*)"]
  }
}

これだと npm run build は通るけど、npm install は別ルールが必要。サブコマンドが増えるたびに settings.local.json にルールが追加されていく…という問題があった。

2.1.0 からの変更

{
  "permissions": {
    "allow": ["Bash(npm *)"]
  }
}

* が真のワイルドカードとして機能する。npm で始まるコマンドは全部許可。runinstallupdateexec 全部OK。

実用的な設定例

{
  "permissions": {
    "allow": [
      "Bash(npm *)",
      "Bash(pnpm *)",
      "Bash(git *)",
      "Bash(docker *)"
    ]
  }
}

これで日常的なコマンドはほぼ Ask なしで実行できる。前回の記事で「ワイルドカードは完璧じゃない」と書いたけど、2.1.0 でかなり改善された。

スキルのホットリロード

Claude Code を使ってカスタムスキルを作ったことがあるなら、この問題に直面したはずだ:

スキル(.claude/skills/ の Markdown ファイル)を修正する → Claude Code を再起動する必要がある → その度に会話が途切れる

これが 2.1.0 で解決した。

仕組み

~/.claude/skills または .claude/skills に保存されたスキルが、リアルタイムで同期される。修正したら保存するだけで、すぐに新しいバージョンが使える。再起動は不要。

メリット

従来2.1.0 以降
スキル修正 → 再起動 → 会話リセットスキル修正 → すぐに新バージョン利用可能
テスト時に中断が多いスキル開発が連続的にできる
イテレーションが遅いイテレーション爆速

スキルを頻繁に作・修正する人には、時間換算で数時間分の短縮になるはず。

実装例

# example-skill.md

---
name: "日本語 → 英訳"
description: "テキストを英語に翻訳するスキル"
language: japanese
---

# 利用方法

テキストを貼り付けて実行してください。

対象テキスト: {text}

修正したい → .claude/skills/example-skill.md を編集 → 保存 → 即座に新バージョンが利用可能。

注: グローバルスキル(~/.claude/skills)とプロジェクトローカルスキル(.claude/skills)の両方で動作。

エージェント実行に「フォーク」対応

スキルフロントマターで context: fork を指定すると、スキル・スラッシュコマンドをフォークされたコンテキストで実行できる。

サブエージェントとの違い

ここが重要。従来のサブエージェント(Task tool)との違いを整理する。

機能コンテキスト用途
サブエージェント親の履歴を引き継がない(完全独立)専門タスクを別エージェントに委譲
context: fork親の履歴をコピーして分岐文脈を理解した上で独立作業

つまり context: fork は:

  • メインの会話履歴を読める状態で分岐
  • スキル内の中間ステップはメインに残らない
  • 結果だけ返す

サブエージェントだと「今何の話をしてるか」を prompt で明示的に渡す必要があったが、フォークなら現在の文脈を理解した上で作業できる。

使用例

---
name: "コード分析"
context: fork
---

# コード分析スキル

現在の会話で議論しているファイルを分析し、
改善点をまとめます。(中間ステップはメインに残らない)

長い分析・リサーチ系スキルで特に有用。

/plan コマンドと言語設定

/plan コマンドが追加

プランモードを素早く起動できるようになった。わざわざメッセージで「計画を立ててください」と言う必要がなくなる。

/plan
→ 即座にプランモードに入る

言語設定が可能

スキルフロントマターで言語を指定できる。

---
name: "スキル名"
language: "japanese"
---

レスポンスが確実に日本語になる。国際的なプロジェクトなら便利。

その他の UX 改善

Shift+Enter が複数ターミナルに対応

iTerm2、WezTerm、Ghostty、Kitty で設定なしに動作。従来はターミナルごとに設定が必要だった。

Ctrl+O でリアルタイムシンキング表示

Extended Thinking の思考プロセスをリアルタイムで見られる。何を考えてるのか把握できるのは、デバッグ時に便利。

Ctrl+B でバックグラウンド実行

Bash コマンドもエージェントも Ctrl+B でバックグラウンドに送れる。複数タスクの並行実行が簡単に。

セキュリティ改善

機密データのデバッグログ露出を防止

これは地味だけど重要。OAuth トークン、API キー、パスワードなどがデバッグログで意図的に公開される可能性を修正。

セキュリティツールを使う人なら、このアップデートだけでも入れる価値がある。

その他のバグ修正

  • セッション再開時のファイル・スキルが検出されない問題
  • ペーストコンテンツが履歴リプレイ時に失われる問題
  • Esc キーのキューイング動作を改善
  • IME(入力方式エディター)のセキュリティ改善

Vim 操作の拡張(Vimユーザー向け)

Vim を常用している人には朗報。いくつかの重要なキーバインドが追加された。

新しい Vim モーション

キー動作
; / ,f/F/t/T の繰り返し/逆方向
y / Yyank オペレーター
p / Ppaste
>> / <<インデント増減
J行結合

テキストオブジェクト

iw, aw, i", a", i(, a( など、括弧やクォートの内側を操作できるようになった。

まとめ

Claude Code 2.1.0 は「細かいが効果的なアップデート」の集合。特に以下が大きい:

  1. Bash パーミッションのワイルドカード対応Bash(npm *) で npm 系コマンド全許可。Ask 地獄から解放される。
  2. スキルのホットリロード — 再起動なしでスキル修正が反映。開発体験が激変。
  3. セキュリティ改善 — 機密データのデバッグログ露出対策。

パーミッション設定で悩んでた人、スキルを頻繁に修正する人には特に嬉しいアップデート。Vimユーザーにも朗報。


参考