day2-create-context-sync-skill
npx skills add https://github.com/ai-native-camp/camp-1 --skill day2-create-context-sync-skill
Agent 安装分布
Skill 文档
Day 2: ëë§ì Context Sync ì¤í¬ ë§ë¤ê¸°
ì´ ì¤í¬ì´ í¸ì¶ëë©´ ìë STOP PROTOCOLì ë°ëì ë°ë¥¸ë¤.
ì©ì´ ì 리
ì´ ì¤í¬ìì ì¬ì©íë íµì¬ ì©ì´:
| ì©ì´ | ì¤ëª |
|---|---|
| MCP | Claudeê° ì¸ë¶ ìë¹ì¤(Slack, Gmail ë±)ì ëííë íµë¡. Day 1ìì ë°°ì´ “ë구”를 ì¸ë¶ë¡ íì¥íë ê² |
| subagent | Claudeê° ë¤ë¥¸ 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ë¶í°. â
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
íµì¬ ê¸ì§ ì¬í (ì ë ìë° ê¸ì§)
- Phase Aìì AskUserQuestionì í¸ì¶íì§ ìëë¤ (Block 0, 2, 4 ì ì¸) â ì´ 3ê° ë¸ë¡ì ì¬ì©ì ì íì´ íìì´ë¯ë¡ ìì¸
- Phase Aìì í´ì¦ë¥¼ ë´ì§ ìëë¤ â QUIZ ì¹ì ì Phase Bììë§ ì½ëë¤
- Phase Aìì “ì¤íí´ë´¤ëì?”를 ë¬»ì§ ìëë¤ â ì¬ì©ìê° ë¨¼ì ë§í ëê¹ì§ 기ë¤ë¦°ë¤
- í í´ì EXPLAIN + QUIZ를 ëìì íì§ ìëë¤ â ë°ëì 2í´ì¼ë¡ ëëë¤
ê³µì 문ì URL ì¶ë ¥ (ì ë ëë½ ê¸ì§)
모ë ë¸ë¡ì Phase A ìì ì, í´ë¹ reference íì¼ ìë¨ì > ê³µì 문ì: URLì ë°ëì ê·¸ëë¡ ì¶ë ¥íë¤.
ð ê³µì 문ì: [URL]
- reference íì¼ì URLì´ ì¬ë¬ ê° ìì¼ë©´ ì ë¶ ì¶ë ¥íë¤
- URLì ìì½íê±°ë ìëµíì§ ìëë¤
Phase A ì¢ ë£ ì íì 문구
Phase Aì ë§ì§ë§ìë ë°ëì ìë ííì 문구를 ì¶ë ¥íê³ Stopíë¤:
---
ð ì ë´ì©ì ì§ì ì¤íí´ë³´ì¸ì.
ì¤íì´ ëëë©´ "ìë£" ëë "ë¤ì"ì´ë¼ê³ ì
ë ¥í´ì£¼ì¸ì.
ì´ ë¬¸êµ¬ ì´íì ì´ë¤ ë구 í¸ì¶(AskUserQuestion í¬í¨)ì´ë ì¶ê° í ì¤í¸ë ì¶ë ¥íì§ ìëë¤.
íµì¬ ì ëµ: í í릿 먼ì , ë¨ê³ë³ 커ì¤í°ë§ì´ì§
ìë ë°©ìì¼ë¡ ì§ííë¤:
- Block 0ìì ì¬ì©ìê° ë구를 ì ííë©´,
templates/context-sync.md기ë°ì¼ë¡ ì¤í¬ íì¼ì ì¦ì ìì±íë¤ - ì´í Block 1~5ìì ìì±ë ì¤í¬ì í´ë¹ ë¶ë¶ë§ ìì /íì¥íë¤
- ìµì¢ ì ì¼ë¡ ìì±ë ì¤í¬ì ì¤ííì¬ ê²°ê³¼ë¥¼ íì¸íë¤
í í릿ìë 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 vs 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 ì§í ìì:
references/block0-tool-selection.mdì EXPLAIN ì¹ì ì ì½ê³ ì¤ëª íë¤- AskUserQuestionì¼ë¡ ë구를 ì íë°ëë¤ (multiSelect: true)
templates/context-sync.mdí í릿ì ì½ëë¤- ì íë ë구ì ë§ì¶° ì¬ì©ìì íë¡ì í¸ì
.claude/skills/my-context-sync/SKILL.md를 ìì±íë¤ - ìì±ë íì¼ì ì ì²´ êµ¬ì¡°ë§ ê°ëµí ë³´ì¬ì£¼ê³ Stopíë¤ (ì¸ë¶ ë´ì©ì ì´í ë¸ë¡ìì)
Block 2 ìì¸ ê·ì¹
Block 2ì Phase Aë AskUserQuestionì ì¬ì©íë¤. ê° ë구ë³ë¡ MCPì API ì¤ ì°ê²° ë°©ìì ì íí´ì¼ íë¤.
íµì¬ ìì¹: Claudeê° ì¤ì ì ëì ìííê³ , ì¬ì©ìë 결과를 íì¸íë¤.
MCP ì í ì:
references/block2-tool-connection.mdì MCP ìë´ë¥¼ ë°ë¥¸ë¤scripts/mcp_servers.py를 ì¬ì©íì¬ GitHub README.mdìì ì í©í MCP ìë²ë¥¼ ê²ìíë¤- ê²ì 결과를 ë³´ì¬ì£¼ê³ , Claudeê°
.mcp.jsonì ìë²ë¥¼ ë±ë¡íë¤ /mcpëª ë ¹ì¼ë¡ ìë² ì°ê²° ìí를 í¨ê» íì¸íë¤
API ì í ì:
- Claudeê° ì§ì API í¸ì¶ ì½ë를 ìì±íë¤
- ì¬ì©ìì ì¤í¬
scripts/í´ëì ì ì¥íë¤
Block 4 ìì¸ ê·ì¹
Block 4ì Phase Aë AskUserQuestionì ì¬ì©íë¤. Output formatì ì íí´ì¼ íë¤.
References íì¼ ë§µ
| ë¸ë¡ | íì¼ | ë´ì© |
|---|---|---|
| Block 0 | references/block0-tool-selection.md |
ë구 ì í + í í릿 ê¸°ë° ì¤í¬ ìì± |
| Block 1 | references/block1-project-explore.md |
Explore ìì´ì í¸ë¡ íë¡ì í¸ êµ¬ì¡° íì |
| Block 2 | references/block2-tool-connection.md |
MCP vs API ì°ê²° ë°©ì ì í + ì¤í |
| Block 3 | references/block3-parallel-collection.md |
subagent ë³ë ¬ ìì§ + ê²°ê³¼ ê²ì¦ |
| Block 4 | references/block4-output-format.md |
Output format ì í (markdown, Slack, Notion) |
| Block 5 | references/block5-finalize.md |
ìµì¢ ì¤í¬ ìì± + ì¤í + ë§ë¬´ë¦¬ |
íì¼ ê²½ë¡ë ì´ SKILL.md ê¸°ì¤ ìëê²½ë¡ë¤. ê° reference íì¼ì
## EXPLAIN,## EXECUTE,## QUIZì¹ì ì¼ë¡ 구ì±ëë¤.
Templates / Scripts íì¼ ë§µ
| íì¼ | ì©ë |
|---|---|
templates/context-sync.md |
Context Sync ì¤í¬ 기본 í í릿 (Slack, Notion, Gmail, GCal 4ì¢ í¬í¨) |
scripts/mcp_servers.py |
GitHubìì MCP ìë² ê²ì + README.md íì± + ì¤ì¹ ìë´ |
Gmail/Calendar ë±ì ìì§ ì¤í¬ë¦½í¸ë Block 2ìì Claudeê° ì¬ì©ìì ì íì ë§ì¶° ì§ì ìì±íë¤.
ì§í ê·ì¹
- í ë²ì í ë¸ë¡ì© ì§ííë¤
- “ë¤ì”, “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 | ë구 ì í | syncí ë구 ê³ ë¥´ê¸° + ì¤í¬ 골격 ìì± |
| 1 | íë¡ì í¸ íì | Exploreë¡ íë¡ì í¸ êµ¬ì¡° íì |
| 2 | ë구 ì°ê²° | MCP or APIë¡ ë구 ì°ê²° |
| 3 | ìì§ ì¤í & ê²ì¦ | subagent ë³ë ¬ ìì§ + ê²°ê³¼ ê²ì¦ |
| 4 | Output ì¤ì | ì¶ë ¥ íì ì í + ì¤í¬ ìì |
| 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ë¶í° ì§ííë¤.