0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Skills不要説。CLI叩くためだけにLLM経由するな。

0
Last updated at Posted at 2026-10-01

SkillsやAGENTS.mdを、必要だと思ったことがあまりありません。

LLMに何かさせるなら、まずCLIを作る。そのあとでプロンプトをいじる。自分はこの順番です。

今の人類、LLMに頼り過ぎじゃない?

Skillsにはスクリプトや資料も同梱できます。ただ、手順を文章で書いて実行を任せるなら、どの処理をいつ呼ぶかはLLMの判断になります。

入力の確認、処理順、出力の検証。このへんは普通にコードで書けます。毎回LLMに考えてもらう理由があまりない。

何が悲しくて 不確実で、遅くて、高価で、エージェント起動前提のものを使わないといけないんですか???

AGENTS.mdに書き直しても同じです。指示を置く場所より、何をコードで保証するかが気になります。

自分はこうしてる

普段の設計方針を図にすると、こんな構成です。MCPは道具を使わせたい場合に追加する想定です。

自作CLIの中で claude -p や codex exec を子プロセスとしてspawnします。標準入力でプロンプトを渡し、標準出力・標準エラー・終了コードを受け取る。処理全体の進行は親のCLIが持ちます。

例えば架空の読書メモ整理ツールなら、分類だけLLMに任せる。ファイルの読み込みや索引の保存はコードで処理します。

回答を保存しておけば、後処理が失敗してもそこから再開できます。JSONの形式は検証できる。ただし、分類の妥当性は別途評価が必要です。

非対話モードにしたから回答が一定になる、という話ではありません。入出力を切り出して、失敗を追えるようにしたいのです。

CLIは普通の道具として残る

引数、stdin、stdout、stderr、終了コード。昔からある仕組みです。

人間が直接使ってもいいし、別のプログラムやエージェントから呼んでもいい。uvやnpm、タスクランナーとも組み合わせやすい。

特定のエージェントが使えなくなっても、作った道具まで捨てずに済むようにしたいです。LLMへの接続部分だけ差し替えられると嬉しい。

MCPにはMCPの仕組みがある

MCPは、道具を呼ぶだけの仕組みでもありません。

  • ツールの発見。tools/list で、使える道具と入出力スキーマを取得できます。仕様

  • 更新通知。ツール一覧の変更や、購読したリソースの更新をクライアントへ通知できます。仕様

CLI側でも作れますが、道具の発見や通知、人間とのやり取りまで共通仕様になっているのは嬉しい。対応するクライアントとサーバーが必要なので、全部がどこでも使えるわけではありません。

既存の処理をCLIからもMCPからも呼べる形にしておけば、用途で使い分けられます。

それでもSkillsを使うなら

手順や参考資料をまとめて配る用途は分かります。AGENTS.mdにプロジェクトの約束事を書くのも分かる。

ただ、自分ならまずCLIとヘルプを整えて、検証できる条件はコードにします。その上で、指示文を配る必要が出たらSkillsを考える。

まぁ、まず普通のプログラムとして使えるようにしたい、という好みの話です。

Skillsの公式説明

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?