【ITニュース解説】Skills de Claude Code: cómo crear una herramienta propia
2026年10月10日に「Dev.to」が公開したITニュース「Skills de Claude Code: cómo crear una herramienta propia」について初心者にもわかりやすく解説しています。
ITニュース概要
Claude Codeの「スキル」は、エージェントが人間による承認が必要な操作を指示したり、既存のコマンドラインツールを自然言語で実行可能にする機能だ。SKILL.mdファイルに簡単な説明とスクリプトを記述するだけで、エージェントの能力を柔軟に拡張できる。
ITニュース解説
Claude CodeのSkillsは、人工知能(AI)エージェントであるClaude Codeの機能を、その基本的なプログラムコードを変更することなく拡張するための仕組みである。システムエンジニアを目指す初心者にとって、AIエージェントがどのように外部ツールと連携し、より実践的なタスクをこなすようになるのかを理解する上で非常に役立つ概念だ。
通常、AIエージェントはテキストベースの指示に従ってコードを生成したり、情報を検索したりする能力を持つ。しかし、現実世界でコンピュータ上のタスクを自動化しようとすると、システム権限の確認ダイアログや、人間の操作が必要なセキュリティ認証(二段階認証、CAPTCHAなど)といった壁にぶつかることがある。AIエージェントは、どのボタンをクリックすべきかを見つけることはできても、実際にクリックする権限がなかったり、セキュリティ上の理由からクリックすべきではない場面があるのだ。Skillsは、まさにこのようなAIエージェントが「手が出せない」状況を乗り越えるための解決策として登場した。
Skillsの基本的な考え方は、「AIエージェントに特定のタスクを実行するためのマニュアルとツールを与える」というものだ。それぞれのSkillは、特定のタスクを解決するための一連の指示、メタデータ、そして必要に応じて実行するスクリプトやバイナリファイルといった要素をまとめたパッケージとして機能する。これらのSkillは、AIエージェントのコードに直接組み込むのではなく、SKILL.mdという専用のファイルを格納したフォルダとして、エージェントが参照できる場所に配置される。
SKILL.mdファイルは、Skillの構造の核となる部分だ。このファイルは、YAML形式のメタデータブロック(フロントマター)と、Markdown形式の本文で構成される。フロントマターには、Skillの名前(name)と、そのSkillがどのような状況で役立つかを説明する短い文章(description)が必須項目として含まれる。特にdescriptionは非常に重要で、AIエージェントはユーザーからの要求を受け取ると、インストールされているすべてのSkillのdescriptionを比較し、最も適切だと判断したSkillを選択する。この選択がなされて初めて、エージェントはSKILL.mdのMarkdown本文全体を読み込み、そこに書かれた指示に従って動作を開始する。この仕組みは「プログレッシブ開示(段階的開示)」と呼ばれ、多数のSkillがインストールされていても、最初からすべての情報を読み込む必要がないため、AIエージェントの処理負荷やメモリ使用量を効率的に保つことができる。
例えば、「big-arrow-on-the-screen」というプロジェクトは、このSkillsの仕組みを具体的に示す好例だ。これはmacOS向けのツールで、ユーザーが「許可」ボタンをクリックする必要があるシステムダイアログなど、特定の画面要素の上に大きな矢印を描画し、どこをクリックすべきかを視覚的に指し示す。AIエージェントがクリックを代行するのではなく、人間が正確な操作を行えるように支援する役割を果たすのだ。このツール自体はSwiftというプログラミング言語で書かれたバイナリファイルだが、Claude CodeのSkillとしてインストールすることで、ユーザーは「このボタンを指し示して」といった自然言語の指示で、このツールをエージェントに実行させることができるようになる。
自分自身でSkillを作成することも非常に簡単だ。最もシンプルなSkillは、「hola-mundo」(こんにちは世界)という例で示されるように、ユーザーに挨拶し、現在のシステム時刻を表示するシェルスクリプトを実行するだけだ。SKILL.mdに、nameとdescriptionを設定し、「挨拶されたり時間を聞かれたら、saludar.shを実行する」といった指示をMarkdown本文に記述し、同じフォルダにsaludar.shというスクリプトファイルを置くだけで完成する。さらに進んで、ファイル内の行数や単語数を数えるUnixコマンドwcをラップするSkillのように、スクリプトが引数を受け取って動的に処理を行うようにすることも可能だ。このようにして、既存のコマンドラインツールや自作のスクリプトを、AIエージェントが自然言語で呼び出せる「スキル」として追加できる。
AIエージェントを拡張する手法はSkillsの他にもいくつか存在する。例えば、Model Context Protocol(MCP)は、データベースや外部APIなど、状態を持つ外部システムとエージェントを接続するためのプロトコルだ。また、サブエージェントは、独自の対話履歴とコンテキストを持つ独立したAIエージェントであり、より複雑で長いタスクを委譲するのに適している。Skillsはこれらと比較して、ローカル環境で特定のコマンドや処理フローをシンプルにラップし、サーバーなどを立てる必要がない点で優れている。
しかし、Skillsを使用する上での注意点もある。Skill内のスクリプトは、Claude Codeを実行しているユーザーと同じ権限で動作するため、外部の信頼できないソースからSkillをインストールする際は、その内容(SKILL.mdや関連スクリプト)を必ず確認する必要がある。悪意のあるスクリプトを実行してしまうと、システムに損害を与える可能性があるからだ。また、Skillのdescriptionは具体的に書くことが重要であり、「ファイルを手助けする」といった曖昧な記述では、AIエージェントが適切なSkillを選択できない場合がある。
このように、Claude CodeのSkillsは、AIエージェントが単なる情報処理マシンにとどまらず、現実世界のコンピュータ操作を支援する強力なツールへと進化するための重要な一歩を示すものだ。システムエンジニアを目指す者にとって、AIと既存のシステムやツールを連携させる新しいアプローチを理解し、実際に活用してみる良い機会となるだろう。