Progressive Disclosure ๊ธฐ๋ฐ์ ๋ง์ถคํ Context ์ฃผ์ ์ผ๋ก LLM Context Window ์ต์ ํ
Gemini CLI Skills: Teaching Your Terminal Agent How to Think ๐ง
AI ์์ฝ
Context
์ ์ญ ์ค์ ํ์ผ์ธ GEMINI.md์ ๋ชจ๋ ์ปจํ ์คํธ๋ฅผ ํฌํจํ ๊ฒฝ์ฐ Model Context Window์ ์กฐ๊ธฐ ํฌํ ๋ฐ ๋ถํ์ํ ํ ํฐ ์๋น ๋ฐ์. ํ์คํฌ์ ๋ฌด๊ดํ ์ ๋ณด ์ ์ ์ผ๋ก ์ธํ ์๋ต ์ ํ๋ ์ ํ ๋ฐ ์ถ๋ก ๋น์ฉ ์ฆ๊ฐ๋ผ๋ ๊ตฌ์กฐ์ ํ๊ณ ์กด์ฌ.
Technical Solution
- On-demand Loading ๋ฐฉ์์ ํตํ ํ์ํ ์์ ์๋ง ํน์ ์ ๋ฌธ ์ง์์ ๋ก๋ํ๋ Skill ๊ตฌ์กฐ ์ค๊ณ
- Progressive Disclosure ๊ธฐ๋ฒ์ ์ ์ฉํ์ฌ ๋ชจ๋ Skill์ Description๋ง ์ฐ์ ์ธ์ ํ ํ์ ์ Full Instruction์ ๋ก๋ํ๋ 2๋จ๊ณ ํํฐ๋ง ๊ตฌํ
- Project-level(.gemini/skills/)๊ณผ Global-level(~/.gemini/skills/)๋ก Scope๋ฅผ ๋ถ๋ฆฌํ์ฌ ํ ์ปจ๋ฒค์ ๊ณผ ๊ฐ์ธ ์์ฐ์ฑ ์ค์ ์ ๊ณ์ธต์ ๊ด๋ฆฌ
- SKILL.md ๋ด Frontmatter(Metadata)์ Body(Instructions)๋ฅผ ๋ถ๋ฆฌํ์ฌ Agent์ Skill Activation ํ๋จ ๋ก์ง ์ ๋ฐํ
- ์ ๋ฌธ ์ง์์ ํํธํ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด One Skill, One Responsibility ์์น์ ์ ์ฉํ ๋ชจ๋ํ ์ปจํ ์คํธ ์ค๊ณ
์ค์ฒ ํฌ์ธํธ
1. LLM ์ปจํ ์คํธ ์ค๊ณ ์ ์ ์ฒด ์ง์ ์ฃผ์ ๋์ ํ์คํฌ ๊ธฐ๋ฐ์ Progressive Disclosure ์ ๋ต ๊ฒํ
2. Skill Description ์์ฑ ์ 'Do not use' ์ผ์ด์ค๋ฅผ ๋ช ์ํ์ฌ False Positive ํ์ฑํ ๋ฐฉ์ง
3. ํ ๊ณตํต ์ํฌํ๋ก์ฐ๋ Git Repository ๋ด Project Skill๋ก ๊ด๋ฆฌํ์ฌ ์ค์ ๋๊ธฐํ
4. ๋ณต์กํ ๊ฐ์ด๋๋ SKILL.md ๋ณธ๋ฌธ์ ์ง์ ์์ฑํ์ง ์๊ณ resources/ ๋๋ examples/ ํด๋๋ก ์ธ๋ถ ์ฐธ์กฐํํ์ฌ ๊ฐ๋ ์ฑ ํ๋ณด