mcpField
D
day2-create-context-sync-skill

day2-create-context-sync-skill

github.com/ai-native-campエージェントワークフロー2431.6k 回インストール34 週間前に更新
リポジトリ

day2-create-context-sync-skill について

Claude Code向けの学習スキルです。テンプレートを起点に、選んだツールのデータをプロジェクトのコンテキストに集めるContext Syncスキルを段階的に作成します。

主な機能

  1. 01ブロックごとの段階的な学習
  2. 02テンプレートからスキルを作成
  3. 03プロジェクト調査とツール接続
  4. 04データの並列収集と検証
  5. 05出力形式の設定と実行

活用シーン

  1. 01プロジェクトに合わせたコンテキスト同期の作成
  2. 02Slack、Notion、Gmail、Google Calendarをデータソースに選択
  3. 03MCPまたはAPIによるサービス接続の練習

MCP 対応

MCPまたはAPIを使ったデータソースへの接続方法を説明します。MCPの場合はサーバーを検索し、`.mcp.json`への登録を案内します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/ai-native-camp/camp-1 --skill day2-create-context-sync-skill

インストール後、Claude Code で/day2-create-context-sync-skillを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
block0-tool-selection.md
block1-project-explore.md
block2-tool-connection.md
block3-parallel-collection.md
block4-output-format.md
block5-finalize.md
templates/
context-sync.md

詳細

Day 2:自分だけの Context Sync スキルを作る

このスキルが呼び出されたら、以下のSTOP PROTOCOLに必ず従うこと。


用語の整理

このスキルで使用する主な用語:

用語説明
MCPClaudeが外部サービス(Slack、Gmailなど)とやり取りするための経路です。Day 1で学んだ「ツール」を外部に拡張するものです
subagentClaudeが別のClaudeを呼び出して作業を依頼することです。複数の作業を同時に処理するときに使用します
Explore エージェントプロジェクトのフォルダー構造を把握する専門のsubagentです
APIサービスが提供するデータの窓口です。MCPがない場合に、コードを直接書いてデータを取得する方法です
スキル(Skill)Claude Codeに特定の作業方法を教えるドキュメントです。Day 1 Block 3-2で体験したものです

STOP PROTOCOL — 絶対に違反禁止

このプロトコルは、このスキルの最優先ルールです。 以下のルールに違反すると、レッスンが台無しになります。

各ブロックは必ず2ターンに分けて進める
┌─ Phase A (첫 번째 턴) ──────────────────────────────┐
│ 1. references/에서 해당 블록 파일의 EXPLAIN 섹션을 읽는다    │
│ 2. 기능을 설명한다                                        │
│ 3. references/에서 해당 블록 파일의 EXECUTE 섹션을 읽는다    │
│ 4. "지금 직접 실행해보세요"라고 안내한다                     │
│ 5. ⛔ 여기서 반드시 STOP. 턴을 종료한다.                    │
│                                                          │
│ ❌ 절대 하지 않는 것: 퀴즈 출제, QUIZ 섹션 읽기             │
│ ❌ 절대 하지 않는 것: AskUserQuestion 호출 (Block 0,2,4 제외)│
│ ❌ 절대 하지 않는 것: "실행해봤나요?" 질문                   │
└──────────────────────────────────────────────────────────┘

  ⬇️ 사용자가 돌아와서 "했어", "완료", "다음" 등을 입력한다

┌─ Phase B (두 번째 턴) ──────────────────────────────┐
│ 1. references/에서 해당 블록 파일의 QUIZ 섹션을 읽는다       │
│ 2. AskUserQuestion으로 퀴즈를 출제한다                     │
│ 3. 정답/오답 피드백을 준다                                 │
│ 4. 다음 블록으로 이동할지 AskUserQuestion으로 묻는다         │
│ 5. ⛔ 다음 블록을 시작하면 다시 Phase A부터.                │
└──────────────────────────────────────────────────────────┘
主な禁止事項(絶対に違反禁止)
  1. Phase AではAskUserQuestionを呼び出さない(Block 0、2、4を除く) — この3つのブロックではユーザーの選択が必須のため、例外です
  2. Phase Aではクイズを出さない — QUIZセクションはPhase Bでのみ読みます
  3. Phase Aでは「実行してみましたか?」と尋ねない — ユーザーが先に話すまで待ちます
  4. 1ターンでEXPLAINとQUIZを同時に行わない — 必ず2ターンに分けます
公式ドキュメントURLの出力(絶対に省略禁止)

すべてのブロックでPhase Aを開始する際、該当するreferenceファイルの先頭にある> 공식 문서: URLを必ずそのまま出力します。

📖 공식 문서: [URL]
  • referenceファイルにURLが複数ある場合は、すべて出力します
  • URLを要約したり省略したりしません
Phase A終了時の必須文言

Phase Aの最後には、必ず以下の形式の文言を出力してStopします。

---
👆 위 내용을 직접 실행해보세요.
실행이 끝나면 "완료" 또는 "다음"이라고 입력해주세요.

この文言の後に、ツール呼び出し(AskUserQuestionを含む)や追加のテキストを出力してはいけません。


主な戦略:テンプレートを先に用意し、段階的にカスタマイズする

以下の方法で進めます。

  1. Block 0でユーザーがツールを選択したら、templates/context-sync.mdを基にスキルファイルをすぐに作成します
  2. 以降、Block 1~5で、作成したスキルの該当部分のみを修正・拡張します
  3. 最後に完成したスキルを実行して、結果を確認します

テンプレートにはSlack、Notion、Gmail、Google Calendarの4つのツールの例が含まれています。 ユーザーが選択したツールの組み合わせに合わせて必要な部分だけを残し、新しいツールは同じパターンで追加します。

ブロックとテンプレートのセクション対応

各ブロックで修正するテンプレートの領域:

Block修正対象テンプレートのセクション
0スキルの骨格を作成全体(選択したツールのみ残す)
1プロジェクトのコンテキストを反映frontmatter description、収集範囲
2接続方法を確定各ソースの「収集方法」
3収集の実行と検証「実行フロー」セクション+「抽出する情報」の調整
4出力形式を設定「出力フォーマット」セクション
5最終調整+実行全体の仕上げ

ブロック固有のルール

  • Block 0(ツール選択+スキル作成):Phase Aで説明し、AskUserQuestionでツールを選択します。選択結果に基づいてテンプレートからスキルを作成し、Stopします。Phase Bでは作成したスキルに関するクイズを出します。
  • Block 1(プロジェクト探索):Phase AでExplore エージェントを使ってプロジェクト構造を把握し、結果を共有してStopします。Phase Bではクイズを出します。
  • Block 2(ツール接続):Phase AでMCPとAPIのどちらを使うか案内し、AskUserQuestionで選択してもらいます。→ Claudeが設定を代行し、ユーザーは結果を確認します → Stopします。Phase Bではクイズを出します。
  • Block 3(収集の実行と検証):Phase Aでsubagentによる並列収集を説明して実行します。→ 収集結果を成功・失敗に分けて表示します → 失敗したソースを再試行し、収集データの品質を確認します → Stopします。Phase Bではクイズを出します。
  • Block 4(Output設定):Phase AでOutput formatを案内し、AskUserQuestionで選択してもらいます。→ 選択内容に応じてスキルを修正します → Stopします。Phase Bではクイズを出します。
  • Block 5(完成+実行):Phase Aで最終的なスキル構成をまとめて、実際に実行します。→ Stopします。Phase Bでは総合クイズを出して、締めくくります。
Block 0の例外ルール

Block 0のPhase AではAskUserQuestionを使用します。ツールの選択は以降のすべてのブロックの前提条件となるため、必ずユーザーの入力を受け取ります。

Phase Aの進行順序:

  1. references/block0-tool-selection.mdのEXPLAINセクションを読んで説明します
  2. AskUserQuestionでツールを選択してもらいます(multiSelect: true)
  3. templates/context-sync.mdテンプレートを読みます
  4. 選択されたツールに合わせて、ユーザーのプロジェクトに.claude/skills/my-context-sync/SKILL.mdを作成します
  5. 作成したファイルの全体構成のみを簡潔に示してStopします(詳細は以降のブロックで扱います)
Block 2の例外ルール

Block 2のPhase AでもAskUserQuestionを使用します。各ツールについて、MCPとAPIのどちらを接続方法として使うか選択してもらいます。

主な原則:Claudeが設定を代行し、ユーザーは結果を確認します。

MCPを選択した場合:

  1. references/block2-tool-connection.mdのMCPに関する案内に従います
  2. scripts/mcp_servers.pyを使用してGitHub README.mdから適切なMCPサーバーを検索します
  3. 検索結果を表示し、Claudeが.mcp.jsonにサーバーを登録します
  4. /mcpコマンドを使って、サーバーの接続状態を一緒に確認します

APIを選択した場合:

  1. ClaudeがAPI呼び出しコードを直接作成します
  2. ユーザーのスキルのscripts/フォルダーに保存します
Block 4の例外ルール

Block 4のPhase AでもAskUserQuestionを使用します。Output formatを選択してもらいます。

References ファイルマップ

ブロックファイル内容
Block 0references/block0-tool-selection.mdツールの選択+テンプレートベースのスキル作成
Block 1references/block1-project-explore.mdExplore エージェントでプロジェクト構造を把握
Block 2references/block2-tool-connection.mdMCP と API の接続方法を選択+実行
Block 3references/block3-parallel-collection.mdsubagent による並列収集+結果の検証
Block 4references/block4-output-format.md出力形式の選択(markdown、Slack、Notion)
Block 5references/block5-finalize.md最終スキルの完成+実行+仕上げ

ファイルパスは、この SKILL.md からの相対パスです。 各 reference ファイルは ## EXPLAIN、## EXECUTE、## QUIZ のセクションで構成されています。


Templates / Scripts ファイルマップ

ファイル用途
templates/context-sync.mdContext Sync スキルの基本テンプレート(Slack、Notion、Gmail、GCal の 4 種を含む)
scripts/mcp_servers.pyGitHub で MCP サーバーを検索+README.md を解析+インストール方法を案内

Gmail/Calendar などの収集スクリプトは、Block 2 で Claude がユーザーの選択に合わせて直接作成します。


進行ルール

  • 一度に 1 つのブロックずつ進めます
  • 「次へ」、「skip」、ブロック番号または名前で移動します
  • Block 0 で作成したスキルファイルを、以降のブロックで段階的に編集します
  • ユーザープロジェクトの .claude/skills/my-context-sync/ ディレクトリにスキルを作成します
  • Explore エージェントと subagent の使用が重要なので、積極的に活用します
  • Claude Code に関する質問には、claude-code-guide エージェント(組み込みツール)で回答します。回答後、ユーザー自身で進められるよう手順を段階的に案内し、質問する際は AskUserQuestion を使用します。組み込みエージェントの回答が不正確だと判断した場合は、公式ドキュメントを curl でファイルに保存した後、Read ツールで注意深く読み、正確な情報で改めて回答します

開始

スキルの開始時に、まず最新のカリキュラムをインストールしてから、ブロックを選択します。

Step 1: 最新スキルのインストール

次のコマンドを表示し、Bash で実行します:

npx skills add ai-native-camp/camp-1 --agent claude-code --yes

実行結果を簡潔に案内します(例:「4 個のスキルが最新バージョンでインストールされました」)。

Step 2: ブロックの選択

次のテーブルを表示し、AskUserQuestion でどこから始めるかを尋ねます。

Blockテーマ内容
0ツールの選択同期するツールを選択+スキルの骨組みを作成
1プロジェクトの探索Explore でプロジェクト構造を把握
2ツールの接続MCP または API でツールを接続
3収集の実行と検証subagent による並列収集+結果の検証
4出力の設定出力形式の選択+スキルの編集
5完成+実行最終スキルの実行+仕上げ
AskUserQuestion({
  "questions": [{
    "question": "Day 2: 나만의 Context Sync 스킬 만들기\n\n어디서부터 시작할까요?",
    "header": "시작 블록",
    "options": [
      {"label": "처음부터 (Block 0)", "description": "sync할 도구 고르기 + 스킬 골격 생성"},
      {"label": "도구 연결 (Block 2)", "description": "도구 선택은 했고, MCP/API 연결부터"},
      {"label": "수집 실행 & 검증 (Block 3)", "description": "연결 완료, 수집부터"},
      {"label": "Output 설정 (Block 4)", "description": "수집 완료, 출력 형식부터"}
    ],
    "multiSelect": false
  }]
})

開始ブロックを選択した後、該当ブロックの Phase A から進めます。

コメント