AIエージェント向けの「skills files」をどう管理するか。Hacker Newsで投げかけられたこの質問には、便利な運用ノウハウだけでなく、「そもそも技能ファイルは要るのか」というかなり根本的な疑問まで集まりました。話題になっているのは、モデルに毎回同じ作業のやり方を覚えさせるためのテキストやスクリプトを、個人で、あるいはチームでどう整理するかです。便利だと感じる人もいれば、むしろノイズだと見る人もいて、使う人の熟練度や仕事の種類で評価がかなり変わっていました。
投稿者はまず、skills をどう見つけ、整理し、実際に役立つ状態に保つのかを尋ねています。時間がたっても改善し続けているのか、という問いもありました。投稿者自身は、いつか skills はモデルの能力に吸収されていく気がするが、それまでは管理の仕方を知りたい、という立場です。
返答の中で目立ったのは、「外から集めるより、自分で書く」という姿勢でした。ある参加者は、skills を探すのではなく、頻繁に繰り返す作業から自分用に作っていると書いています。ファイルはローカルと GitHub で version control し、各エージェントの skill フォルダに symlink して、どこから使っても同じ内容になるようにしているそうです。ネット上で大量に配布されている skills を集めるのは、実際には使わない大量の bookmark や電子書籍をため込むのと似ていて、無駄だという見方でした。彼が挙げた例もかなり具体的で、コードや docs から agent-speak を取り除くもの、質問を自分の好む順序で投げてもらうもの、jj の使い方を自分流に固定するもの、6種類の優先度を持つ subagent を呼び分けるもの、個人プロジェクト向けのローカルな Markdown issue tracker を管理するものなどがありました。
別の参加者は、skills は「望ましい振る舞いにモデルを寄せるためのもの」であって、Pokemon card みたいに集める対象ではないと切り捨てています。コンテキストを汚しがちで、ほとんど利益がない場面も多いという指摘です。さらに強い言い方をする人は、広く配られている skills は snake oil に近い、少なくとも最近の良い repos と良い prompts があれば、モデルは必要なものを自分で見つけられると主張しました。もし skills をたくさん管理したくなるなら、それ自体が code smell だという意見です。
一方で、実務での価値をはっきり認める人もいました。ある参加者は、skills は「人間が読める computer programs」のようなものだと言い、職場での release 作業に使っていると説明しています。canary の承認には Slack メッセージが 2 本必要で、rollout の進行を確認し、どの段階で incident が起きていないか、error rate が非drained pods と比べてどうかを見ながら進め、ticket を更新して周囲に状況が見えるようにする。こうした流れは本来はプログラム化できるが、multi-hour の release では想定外のことが次々起きるので、固定化しすぎるより frontier model に補助させる方がよい、という考えです。hung kustomization controllers や release freezes のような「変なこと」が起きても、その場で ticket を切って対処できるのが助かる、と彼は書いています。
別の人は、会社でのテスト結果として、skills によって flagship model の token output が 2〜4倍ほど減ったと紹介しました。新しいモデルほどその差が大きくなっているといいます。理由として、subagent の利用が増えたことで、モデル自身が prompt engineering をやる部分を skills が肩代わりしているのではないかと推測しています。ただし、skills 自体も token は使うので、最後は「必要な振る舞いを、手で毎回書くより少ない token で再現できるか」という話になります。これに対しては、「skills はただの保存された prompt だ」という反論も出ましたが、そこに reusable scripts をつなげれば determinism が増す、という実務寄りの補足もありました。たとえば PR が 원하는 template に従っているかを検証する script を skill に結びつける、あるいは diff や既存コメントを deterministic に集めたうえで agent に渡し、結果だけを API で反映する、という使い方です。
このスレッドを読んでまず感じるのは、skills files を「便利な拡張機能」と見るか、「仕事のやり方を固定する運用資産」と見るかで、評価がまったく変わることです。前者の発想だと、ネットで見つけた skills をたくさん持つほど得をしそうに見えます。でも実際には、他人の現場に最適化された手順は自分の環境では薄く、むしろコンテキストを増やすだけになりやすい。HN の強い懐疑論は、このズレを正直に言っているのだと思います。
一方で、release や PR review のように、手順はあるが毎回少しずつ例外が違う作業では、skills はかなり筋がいいと見えます。完全な自動化ほど硬くなく、でも「毎回ゼロから説明する」よりは確実です。ここで大事なのは、skill が魔法の知能増強ではなく、作業の文脈を短く再利用する仕組みだという点でしょう。そう考えると、skills は知識の倉庫ではなく、反復作業のメモ帳に近い。派手さはないですが、現場ではその地味さが効くはずです。
もう一つ引っかかったのは、「skills がモデルの token output を減らした」という話です。もし本当なら面白いですが、ここには少し注意が必要だと思います。減ったのはモデルの思考量そのものではなく、手順を外出ししたことで不要な迷いが減った、という可能性もあるからです。それでも効果があるなら価値はあります。要するに、速くなるから良いのではなく、迷走しにくくなるから良い。AI の世界ではこの差が大きい。人間が毎回曖昧な依頼を書き直すより、よくできた skill に寄せた方が、結果のぶれを小さくできる場面は確かにあると思います。
ただ、これは「誰にでも skills が必要」という話ではありません。むしろ逆で、使う人の熟練度が上がるほど、skill は薄く短くなっていくはずです。熟練した開発者なら、欲しい指示は数行で足りるし、知らない人にはその前提知識自体が欠けている。後者には skill が助けになる一方、前者にはノイズにもなる。この両方が同時に成り立つのが、今の面白さだと思います。モデルの能力が上がるほど skill は減る、という見方もたぶん正しい。ただ、その過渡期にある今は、「配布物」としてより「自分の流儀を固定するファイル」として使う方がずっと自然です。
私なら、skills を増やすより、まず少数の反復作業に絞って作るでしょう。そして、使われなくなったものは消す。たくさん持つことより、更新され続けることの方が重要です。Hacker News の議論は、その当たり前を思い出させました。