claude: Agent Skills仕様の命名規則(特にnameの制約)についての対話。
クローデさん(Claude Desktop)と対話しました。
Agent Skills(AIエージェント用スキルのフォーマット仕様)のnameフィールドにかけられた制約が面白いという話から、その設計思想について議論しました。
以下は、対話からのピックアップです。
* * *
◆Specification - Agent Skills

Specification - Agent Skills
The complete format specification for Agent Skills.
結城: 「スキル」と直接は関係ないんですけど、nameフィールドにかけられた制約Constraintsのことです。
Claude: なるほど、nameフィールドの制約に着目されたんですね。確かに興味深い設計です。小文字英数字とハイフンのみ、ハイフンで始まらない・終わらない、連続ハイフン禁止、親ディレクトリ名と一致。結城さんが「面白い」と感じたポイントはどのあたりでしょうか?
結城: プログラマーっぽくないというか、一般ユーザとOSなどとの互換性と相性よさそうだと思ったからです。アンダースコアを使わないのはMarkdownと相性良さそうだし、ハイフンで始めたり終わったりしないとか連続ハイフンは使わないというのも、人間が誤解しないように。「ハイフンをスペースの代わりだと考える」ならわかりやすいと感じます。ドットを使わないのは拡張子と混乱しないという意味がありそうですし、すべてを小文字にすることでOSによる大文字小文字の違いを吸収できる。長さの制限も人間とOSの両方に優しいと思いました。
Claude: とてもよく整理された観察ですね。この制約は「技術的に可能な範囲」ではなく「人間とシステムの両方にとって安全で読みやすい範囲」に絞り込んだ設計だと思います。
・アンダースコア排除 → Markdown の _強調_ との衝突回避
・ハイフンをスペースの代用と見なす → 始端・終端・連続を禁止するのは自然
・ドット排除 → 拡張子との混同防止
・小文字統一 → macOS/Windows(大文字小文字を区別しない)と Linux(区別する)の差異を吸収
・64文字制限 → 人間の認知負荷とファイルシステムのパス長制限の両方に配慮
禁止される例:
・PDF-Processing — 大文字を含む
・-pdf — ハイフンで始まる
・pdf--processing — 連続ハイフン
・pdf_processing — アンダースコアを含む
・pdf.utils — ドットを含む
・pdf- — ハイフンで終わる
・data analysis — スペースを含む
・résumé-parser — ASCII以外の文字を含む
「プログラマーっぽくない」という表現、面白いです。プログラマー的発想だと「使えるものは使えるようにしておこう」となりがちですが、ここでは逆に「問題が起きそうなものは最初から禁止しておこう」という防御的な姿勢ですね。スキルは様々な環境で配布・共有されることを前提にしているでしょうから、「最大公約数的な安全性」を取ったのは賢明な判断だと思います。
