Slide 1

Slide 1 text

Agent Skills設計で 「柔軟性」と「硬さ」の バランスが難しい話 柔らかすぎても危ないし、硬すぎても使いづらい クラメソさっぽろIT勉強会 (仮) #14

Slide 2

Slide 2 text

自己紹介 Nassy について x.com/n_nassy20 2 AI 界隈をうろついているソフトウェアエンジニア。 仕事で組織用エージェントサービス的なのを作っている 。 - Codex / Agent Skills / 自動化まわりに関心 - 札幌民です。仲良くしてください。 @n_nassy20

Slide 3

Slide 3 text

1. 今日話すこと Agent Skills の設計で迷ったこと x.com/n_nassy20 3 Agent Skills を作ってみたら、 「柔らかすぎても危ないし、硬すぎても使いづらい」 というバランスが難しいです。(現在進行形)

Slide 4

Slide 4 text

2. やりたかったこと(やっていること) Gmail まわりの定型作業を agent に任せたい x.com/n_nassy20 4 - 対応すべきメールを見つける - 返信の下書きを作る - 日程調整が完了したメールを見つけて、カレンダーに予定を入れる - invoice を取得して GDrive に保存する いわゆる事務系なんでもアシスタント

Slide 5

Slide 5 text

3. 上手くいかなかったこと 1 ルールを固定しないと、agent が自由すぎた x.com/n_nassy20 5 1回目は gws コマンドで上手く活用してくれたので、 プロンプトだけを定義した Codex オートメーションにしておいた。 - PC のブラウザから Gmail を操作し始めた - PC の中から認証情報を探し始めた - 「やってほしいこと」は合っているが、「やり方」が危なかった

Slide 6

Slide 6 text

4. 上手くいかなかったこと 2 ルールを増やすと、今度は硬すぎた x.com/n_nassy20 6 - 取得した invoice を GDrive のどこに置くかまで SKILL.md に書いてしまった - 運用のルールが変わったら、SKILL.md まで変更が加わってしまう - その環境では動くが移植しづらい - skill というより、特定タスク専用の手順書になってしまった - 特に Agent Skills を作る skill で作るとこれになりがち

Slide 7

Slide 7 text

5. 何が難しいか 固定したいことと、変わってほしいことが混ざりやすい x.com/n_nassy20 7 - 固定しないと、agent が危ない手段を選ぶ - 固定しすぎると、skill が再利用できなくなる - この境界を設計・メンテナンスするのが難しかった 柔らかすぎる 危ない手段を選ぶ 硬すぎる 再利用できない ← 設計したい境界 →

Slide 8

Slide 8 text

6. 学んだ整理 ハード と ソフト を分けて考える x.com/n_nassy20 8 ハード 守ってほしい前提 使ってよい手段 禁止したい行動 ソフト 環境ごとの保存先 運用ルール その時に使う認証情報 分ける

Slide 9

Slide 9 text

7. どう直したか ハード は SKILL.md や script に書く x.com/n_nassy20 9 - Gmail はブラウザ操作ではなく API 経由にする - 使う script や入出力の形を固定する - 危ない行動は禁止する - もしくは上位概念の agent.md に書く

Slide 10

Slide 10 text

8. どう直したか 2 ソフト は memory や設定に逃がす x.com/n_nassy20 10 - SKILL.md や script に運用値を書きすぎない - 保存先のディレクトリ - invoice の分類ルール - 予定登録時にどのカレンダーに登録するか - Google アカウントの指定

Slide 11

Slide 11 text

9. もう少し具体的に ソフト の置き場所は、内容によって変える x.com/n_nassy20 11 - 軽い運用ルールは memory - 保存先のディレクトリ / invoice の分類ルール / 登録するカレンダー - 明示的に管理したい値は設定ファイル - 利用可能な Google アカウント - 実行時に変わる判断はユーザー入力 - Google アカウントの指定

Slide 12

Slide 12 text

10. Before / After 危ないところを固定し、変わりやすい情報は外に出す x.com/n_nassy20 12 Before - agent に任せる範囲が広すぎる - 失敗を防ごうとして SKILL.md や script が専用化する After - 危ないところは SKILL.md と script で固定する - 変わりやすい情報は SKILL.md の外に出す - skill を再利用しやすくする →

Slide 13

Slide 13 text

11. まとめ 柔らかさと硬さを分けると、ちょっとマシになった x.com/n_nassy20 13 - 柔らかすぎると危ない - 硬すぎると使い回せない - ハード は SKILL.md や script - ソフト は memory や設定に逃がす この分け方をすると、ちょっとマシになった。

Slide 14

Slide 14 text

現在の構成 x.com/n_nassy20 14