Claude のスキルを10個まとめて公開した ── 毎回書いていた指示を SKILL.md に固めた話
アプリ開発と旅行計画で毎回同じことを Claude に説明していたので、Agent Skills として切り出して GitHub に公開した。何をスキルにして何をしなかったか、SKILL.md を書くときに効いた3つのルール、そして description が一番重要だという話。
続きを読む →試験の前日に、試験があることを思い出した。
AWS Certified Developer - Associate(DVA-C02)。翌日である。参考書を最初から読む時間はない。そこでClaudeに一言だけ投げた。
明日試験だってこと忘れてた。DVA-C02。試験対策作れる?
先に結果を書いておくと、合格した。
そしてこの一晩でやったことは、「Claudeに問題を作ってもらう」ではなかった。間違えた結果をClaudeに戻して、間違いの「型」を分析させ、その型だけを狙った問題を追加で作らせるというループだ。これが想像以上に効いた。
やったことと、効かなかったことを書く。
最初に出てきたのは、要点をまとめたMarkdownファイル1本。ここで良かったのは、Claudeが優先順位を勝手に付けてきたことだ。
時間ないなら Lambda → DynamoDB(LSI/GSIの違い)→ セキュリティ(Cognito・KMS・Secrets Manager)→ EBのデプロイポリシー の4つだけでもやっとき
前日の学習で一番いらないのは網羅性で、一番ほしいのは捨てる判断だ。「全部大事」と返すまとめは前日には役に立たない。
もうひとつ効いたのが、末尾に付いていた「この単語が出たらコレ」の対応表。設問のキーワードからサービスを引く、逆引きの表だ。試験直前に眺めるものとしては、体系的な解説よりこれが強い。
まとめを読んでも、頭には残らない。そこでこう頼んだ。
寝る前に一周と、HTMLページで選択肢選んですぐ答えと解説出るみたいな模擬試験できる?
出てきたのは、単一ファイルのHTML。40問入りで、こういう作りになっていた。
ここでのポイントは、HTMLを1ファイルで作らせたことだ。ブラウザで開くだけで動く。環境構築もサーバも要らないので、前日の夜に手を止める理由がひとつも生まれない。
そしてまとめMarkdownと模擬試験の内容を対応させてあるので、外した問題の解説を読む → まとめの該当セクションに戻る、という導線がそのまま復習になる。
ここからが、この一晩で一番効いた部分だ。
模擬試験を一周したあと、結果をそのままClaudeに貼った。スコア、ドメイン別の正答率、間違えた問題と自分が選んだ選択肢まで含めて。そのうえでこう頼んだ。
この結果を見て、弱いドメインとつまずいてる考え方を分析して。 そのうえで、弱点を潰すための追加問題を作って問題集をアップデートしてほしい。
返ってきたのは「トラブルシューティングが弱いです」という集計ではなく、外し方のパターンだった。3つに整理されていた。
Latency と IntegrationLatency、ApproximateAgeOfOldestMessage を、名前から意味を推測して外していた。この種のメトリクスは推測が構造的に効かない。理解ではなく暗記の領域だと切り分けられたのが大きい。
API Gatewayのアクセス制限にセキュリティグループを選んでいた。.ebextensions に buildspec.yml(CodeBuild用)を選んだのも同じ根で、サービスごとの設定ファイルと制御の入り口が混ざっている。
これが一番刺さった指摘だった。
| 今回外したペア | 過去に外したペア |
|---|---|
| MessageGroupId / MessageDeduplicationId | タスクロール / タスク実行ロール |
| Lazy Loading / Write Through | Annotation / Metadata |
| SSE-C / SSE-KMS | LSI / GSI |
Lazy Loadingの問題で「使われないデータも載る」を選んでいた。それはWrite Throughの特徴だ。つまり知識自体はあるのに、貼り付け先が逆になっている。
「知らない」と「知っているが逆」は、対策がまったく違う。前者は覚えるしかないが、後者はどちらから問われても答えられるかを測らないと発見できない。自分ひとりで復習していたら、たぶん一生「なんとなく苦手」で終わっていた。
分析のあと、その型だけを狙った問題を追加してもらった。40問だった問題集は124問になり、追加分の内訳はこうなっていた。
ペアを全部ひっくり返して出題するのがうまい設計だと思った。「Lazy Loadingとは?」を何度解いても、逆から聞かれたときに答えられるかは測れない。
スコアはこう動いた。
| 回 | スコア(1000点換算) | トラブルシューティング |
|---|---|---|
| 初見30問 | 730 | 57% |
| 追加22問 | 918 | 100% |
穴だった領域が、その晩のうちに埋まった。そして翌日、本番も通った。
最後に残った2問は両方ともAPI Gatewayで、しかも片方は2回連続で同じ間違い(IP制限にセキュリティグループを選ぶ)だった。それに対するClaudeの読みがこれだ。
たぶん ConoHa の VPS を自分で運用してるからやと思う。「アクセス元を絞る=ファイアウォールでIPを叩く」が体に染み付いてるんやろ。
会話の中で話していた自分の運用環境から、間違いの出どころを推定してきた。当たっている。そのうえで、判断の基準はこう整理された。
| サービス | 制御方法 | |
|---|---|---|
| ENIを持つ | EC2 / RDS / ALB / ElastiCache / Lambda(VPC内) / VPCエンドポイント | セキュリティグループが使える |
| ENIを持たない | API Gateway / S3 / DynamoDB / SQS / SNS / KMS | リソース側のポリシーで制御 |
「IPを制限したい」と出たら、まずそのサービスがVPCの中にいるかを考える。VPCの外ならポリシー。単に正解を教わるより、こういう判断の入り口をもらうほうが本番で効く。
正直に書いておく。
1. 指摘されても、癖は一度では直らない。 セキュリティグループの件は、指摘を受けたあとの回でもう一度同じ選択をしている。解説を読んで納得することと、本番で手が止まることは別だ。同じ型を何度も出題させるところまでやらないと上書きされない。
2. 問題の正確性は保証されない。 生成された問題は本番そのものではないし、公式問題集と1問ずつ照合したわけでもない。間違いの型を見つける道具としては極めて有効だが、これで模試の点数が出たから合格圏、と単純には言えない。今回は結果的に合格したものの、n=1の話でもある。時間があるなら公式教材と併用するのが当然いい。
3. これは前日にやることではない。 最大の学びはこれ。
試験対策に限らず、AIと何かを学ぶときに使える型として3つ。
道具としても、ブラウザで開くだけの単一HTMLにしてもらうのが結局いちばん続いた。環境構築が要らないものは、深夜でも手が止まらない。
一夜漬けの中身より、回し方の話だった。
まとめを作らせる → 即時採点の模擬試験を作らせる → 結果を貼り戻して間違いの型を分析させる → その型だけを狙った問題を追加させる。このループは、資格試験に限らず「自分の弱点が自分では見えない」あらゆる学習に使えると思う。
自分の間違いを、自分よりよく整理してくれる相手がいる。それが一番の収穫だった。
次はもっと早くから始める。
アプリ開発と旅行計画で毎回同じことを Claude に説明していたので、Agent Skills として切り出して GitHub に公開した。何をスキルにして何をしなかったか、SKILL.md を書くときに効いた3つのルール、そして description が一番重要だという話。
続きを読む →Y.NetLabo の使い方ガイドに載っている画面図は、すべて Claude にコードを読ませて描かせたラフ画です。実際にサイトで公開している図をそのまま並べて、何ができて何ができないか、なぜスクリーンショットをやめたのかを書きました。
続きを読む →
Claude Code は毎セッション記憶ゼロで始まる。慶弔記録アプリ tsutsum の開発では、docs/specs(現在の仕様)と docs/adr(なぜそうしたか)の二層で「今の現在地」を常にAIへ渡す仕組みにした。その設計と運用を書く。
続きを読む →