Agent/๐ ๏ธ Skills/images/skills-01-๊ธฐ์ด-venn.svg
์ด๋ณด์ ๊ธฐ์ค์ผ๋ก ๋ณต์กํ ๋น๊ต ํํธ๋ ์ ๋ฆฌํ๊ณ , ๋ฐ๋ก ์คํฌ์ ๋ผ๋๋ถํฐ ์ดํดํ ์ ์๊ฒ ๊ตฌ์ฑํ์ต๋๋ค.
๐ Skill์ ๊ตฌ์กฐ ์ดํดํ๊ธฐ
๊ธฐ๋ณธ ๊ตฌ์ฑ ์์
Skill์ ๋ณดํต ๋ค์ ์์๋ก ๊ตฌ์ฑ๋ฉ๋๋ค:
flowchart TD A[Skill] --> B[๋ฉํ๋ฐ์ดํฐ<br/>name, description] A --> C[๊ตฌํ ๋ก์ง<br/>์ด๋ป๊ฒ ์ฒ๋ฆฌํ ์ง] A --> D[๋๊ตฌ/๊ถํ<br/>๋ฌด์์ ์ฌ์ฉํ ์ ์๋] B --> B1["์ด๋ฆ: para-classifier"] B --> B2["์ค๋ช : PARA ๋ฐฉ์ ๋ถ๋ฅ"] C --> C1["ํค์๋ ๋ถ์"] C --> C2["์ ์ ๊ณ์ฐ"] C --> C3["์นดํ ๊ณ ๋ฆฌ ์ถ์ฒ"] D --> D1["ํ์ผ ์ฝ๊ธฐ ๊ถํ"] D --> D2["ํ์ผ ์ฐ๊ธฐ ๊ถํ"] style A fill:#ff9,stroke:#333 style B fill:#9f9,stroke:#333 style C fill:#99f,stroke:#333 style D fill:#f99,stroke:#333
์ค์ ์์: SynStudy์ obsidian-organizer ์คํฌ
{
"name": "obsidian-organizer",
"description": "์ต์๋์ ๋ฌธ์ ์๋ ๊ตฌ์กฐํ ๋ฐ PARA ๋ฐฉ์ ๋ถ๋ฅ",
"version": "1.0.0",
"author": "opencode",
"type": "obsidian-docs",
"main": "classify-doc.js",
"keywords": ["obsidian", "para", "organization", "classification"],
"supported_actions": ["classify", "reorganize", "validate-structure"]
}๊ฐ ํ๋ ์ค๋ช :
| ํ๋ | ์ค๋ช | ์์ |
|---|---|---|
name | ์คํฌ์ ๊ณ ์ ์ด๋ฆ | obsidian-organizer |
description | ์คํฌ์ ๊ฐ๋จํ ์ค๋ช | โ์ต์๋์ ๋ฌธ์ ์๋ ๊ตฌ์กฐํโฆโ |
version | ๋ฒ์ ์ ๋ณด | 1.0.0 |
type | ์คํฌ์ ์ ํ | obsidian-docs |
main | ๊ตฌํ ํ์ผ | classify-doc.js |
keywords | ๊ฒ์ ํค์๋ | ["obsidian", "para"] |
supported_actions | ์ง์ํ๋ ๋์ | ["classify", "reorganize"] |
๐ก ์ผ์ ์ํ์์์ ๋น์
๋ ์คํ ๋ ๋ฉ๋ด
๋ฉ๋ด = Skill์ ๋ชฉ๋ก
๐ ๋ฉ๋ด (Skill ๋ชฉ๋ก)
- ์คํ
์ดํฌ ์๋ฆฌ (์คํฌ)
- ํ์คํ ์๋ฆฌ (์คํฌ)
- ์๋ฌ๋ ์ค๋น (์คํฌ)
์ฃผ๋ฌธ = Skill ํธ์ถ
๐ค ์๋: "์คํ
์ดํฌ ์ฃผ์ธ์"
๐จโ๐ณ ์๋ฆฌ์ฌ: [์คํ
์ดํฌ ์๋ฆฌ ์คํฌ์ ์คํ] ์์ฑ!
์๋ฆฌ์ฌ๊ฐ ์คํฌ์ ์์ง ๋ชปํ๋ค๋ฉด?
๐ค ์๋: "์คํ
์ดํฌ ์ฃผ์ธ์"
๐จโ๐ณ ์๋ฆฌ์ฌ: "์ด๋ป๊ฒ ๋ง๋๋ ๊ฑด๊ฐ์? ๊ณ ๊ธฐ๋ฅผ ์ด๋ป๊ฒ ์๋ฅด๊ณ , ์๋
์ ๋ญ ์ฐ๊ณ ,
์ค๋ธ ์จ๋๋ ๋ช ๋๋ก ๋ง์ถฐ์ผ ํ๋์? ๋งค๋ฒ ์ค๋ช
ํด ์ฃผ์
์ผ ํด์..."
์ค๋งํธํฐ ์ฑ
์ฑ = Skill
๐ฑ ์ค์น๋ ์ฑ๋ค (Skills)
- ์นด๋ฉ๋ผ (์ฌ์ง ์ฐ๊ธฐ ์คํฌ)
- ๋ฉ์์ง (๋ฌธ์ ๋ณด๋ด๊ธฐ ์คํฌ)
- ์ง๋ (๊ธธ ์ฐพ๊ธฐ ์คํฌ)
- ์บ๋ฆฐ๋ (์ผ์ ๊ด๋ฆฌ ์คํฌ)
์ฑ ์ฌ์ฉ = Skill ํธ์ถ
๐ค ์ฌ์ฉ์: ์นด๋ฉ๋ผ ์ฑ ์ด๊ธฐ
๐ฑ ์นด๋ฉ๋ผ: [์๋์ผ๋ก ์ฌ์ง ์ดฌ์ ์ค๋น]
์ฑ์ด ์๋ค๋ฉด?
๐ค ์ฌ์ฉ์: ์ฌ์ง ์ฐ๊ณ ์ถ์๋ฐ...
๐ฑ ์ค๋งํธํฐ: "๋จผ์ ์นด๋ฉ๋ผ ํ๋์จ์ด๋ฅผ ์ด๊ธฐํํ๊ณ ,
๋ ์ฆ ์ด์ ์ ๋ง์ถ๊ณ , ์
ํฐ ์๋๋ฅผ ์ค์ ํ๊ณ ...
๋งค๋ฒ ๋ค์ ์ค์ ํด์ผ ํด์."
๐ฏ Skill์ ์ด์ ์ ๋ฆฌ
1. ํจ์จ์ฑ
| Without Skill | With Skill |
|---|---|
| ๋งค๋ฒ ๊ธด ์ง์ ์์ฑ | ๊ฐ๋จํ ๋ช ๋ น์ด |
| ๋ฐ๋ณต๋๋ ์ค๋ช | ํ ๋ฒ์ ์ ์ |
| ์๊ฐ ๋ญ๋น | ์๊ฐ ์ ์ฝ |
2. ์ผ๊ด์ฑ
graph LR A[์ฒซ ๋ฒ์งธ ์์ฒญ] -->|๊ธด ์ง์| B[AI] B -->|๊ฒฐ๊ณผ 1| C[์ถ๋ ฅ] D[๋ ๋ฒ์งธ ์์ฒญ] -->|๋ค๋ฅธ ์ง์| B B -->|๊ฒฐ๊ณผ 2| E[์ถ๋ ฅ] C -.๋ค๋ฅผ ์ ์์.-> E style C fill:#f99,stroke:#333 style E fill:#f99,stroke:#333
Skill์ ์ฌ์ฉํ๋ฉด:
graph LR A[์ฒซ ๋ฒ์งธ ์์ฒญ] -->|๋์ผํ ์คํฌ| B[AI] B -->|๊ฒฐ๊ณผ 1| C[์ถ๋ ฅ] D[๋ ๋ฒ์งธ ์์ฒญ] -->|๋์ผํ ์คํฌ| B B -->|๊ฒฐ๊ณผ 2| E[์ถ๋ ฅ] C -.๋์ผํจ.-> E style C fill:#9f9,stroke:#333 style E fill:#9f9,stroke:#333
3. ๊ด๋ฆฌ ์ฉ์ด์ฑ
๐ Skill ํด๋
โโโ obsidian-organizer/
โ โโโ skill.json (ํ ๊ณณ์์ ๊ด๋ฆฌ)
โโโ obsidian-template-manager/
โ โโโ skill.json (ํ ๊ณณ์์ ๊ด๋ฆฌ)
โโโ obsidian-link-validator/
โโโ skill.json (ํ ๊ณณ์์ ๊ด๋ฆฌ)
์์ ํ ๋ ํด๋น ํ์ผ๋ง ์์ ํ๋ฉด ๋!
4. ํ์
๐จโ๐ป ๊ฐ๋ฐ์ A: "๋ฌธ์ ๋ถ๋ฅ ์คํฌ ๋ง๋ค์์ด!"
๐ฉโ๐ป ๊ฐ๋ฐ์ B: "์ข์! ๊ทธ๊ฑฐ ์ธ๊ฒ"
๐จโ๐ผ PM: "๋๋ ์ธ๊ฒ"
โ ๋ชจ๋๊ฐ ๋์ผํ ํ์ค์ ์ฌ์ฉ
๐ฌ Skill์ ์๋ ๋ฐฉ์
์ ์ฒด ์ํฌํ๋ก์ฐ
sequenceDiagram participant U as ์ฌ์ฉ์ participant AI as AI ์ฝ๋ฉ ๋๊ตฌ participant S as Skill participant F as ๊ตฌํ ํ์ผ U->>AI: "๋ฌธ์ ๋ถ๋ฅํด์ค" AI->>AI: ์ ์ ํ Skill ๊ฒ์ AI->>S: obsidian-organizer ์คํฌ ๋ก๋ S->>AI: ์คํฌ ์ ์ ์ ๋ฌ AI->>F: classify-doc.js ์คํ F->>F: ํ์ผ ๋ด์ฉ ๋ถ์ F->>F: ์ ์ ๊ณ์ฐ F->>F: ์นดํ ๊ณ ๋ฆฌ ์ถ์ฒ F->>AI: ๊ฒฐ๊ณผ ๋ฐํ AI->>U: "Projects ํด๋๋ก ์ด๋ ์ถ์ฒํฉ๋๋ค"
๋ด๋ถ ์ฒ๋ฆฌ ๋จ๊ณ
flowchart TD A[์ฌ์ฉ์ ์์ฒญ] --> B{Skill ๊ฒ์} B -->|์ฐพ์| C[Skill ๋ก๋] B -->|๋ชป ์ฐพ์| D[์ผ๋ฐ ํ๋กฌํํธ ์ฒ๋ฆฌ] C --> E[๊ตฌํ ํ์ผ ์คํ] E --> F[๋ฐ์ดํฐ ์ฒ๋ฆฌ] F --> G[๊ฒฐ๊ณผ ์์ฑ] G --> H[์ฌ์ฉ์์๊ฒ ์๋ต] D --> I[์ง์ ์ฒ๋ฆฌ] style A fill:#f9f,stroke:#333 style C fill:#9f9,stroke:#333 style E fill:#99f,stroke:#333 style H fill:#9f9,stroke:#333
๐ฏ ํต์ฌ ์์ฝ
Skill์ด๋?
- โ AI์๊ฒ ํน์ ์ผ์ ํ๋ ๋ฐฉ๋ฒ์ ์ ์ํ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ค๋ช ์
- โ ํ ๋ฒ ์ ์ํ๋ฉด ์ธ์ ๋ ์ฌ์ฌ์ฉ ๊ฐ๋ฅ
- โ ์ผ๊ด๋ ๊ฒฐ๊ณผ ๋ณด์ฅ
์ ํ์ํ๊ฐ?
- โ ๋ฐ๋ณต๋๋ ์ง์ ํผํ๊ธฐ
- โ ํจ์จ์ฑ ํฅ์
- โ ์ผ๊ด์ฑ ๋ณด์ฅ
- โ ๊ด๋ฆฌ ์ฉ์ด
- โ ํ์ ์ง์
๊ตฌ์กฐ๋ ์ด๋ป๊ฒ?
- โ ๋ฉํ๋ฐ์ดํฐ (์ด๋ฆ, ์ค๋ช , ๋ฒ์ ๋ฑ)
- โ ๊ตฌํ ๋ก์ง (์ด๋ป๊ฒ ์ฒ๋ฆฌํ ์ง)
- โ ๋๊ตฌ/๊ถํ (๋ฌด์์ ์ฌ์ฉํ ์ ์๋)
๐ ๋ค์ ์ํผ์๋์์๋?
Skills EP02 - skills.sh ์ค์น ๋ฐ ์คํ
- skills.sh ์ค์น์ ์คํ ํ๊ฒฝ ์ค๋น
- ๊ธฐ๋ณธ ์คํ ๋ช ๋ น๊ณผ ๊ฒ์ฆ ๋ฃจํด
- ์ค๋ฌด ์ ์ฉ ์ ์ฒดํฌํฌ์ธํธ ์ ๋ฆฌ
๐ญ ์๊ฐํด๋ณผ ์ง๋ฌธ
- ์ฌ๋ฌ๋ถ์ ์ ๋ฌด์์ ๋ฐ๋ณต์ ์ผ๋ก ํ๋ ์ผ์๋ ์ด๋ค ๊ฒ๋ค์ด ์๋์?
- ๊ทธ ๋ฐ๋ณต ์์ ์ Skill๋ก ๋ง๋ค๋ฉด ์ด๋ค ์ด์ ์ด ์์๊น์?
- Skill์ด ์๋ค๋ฉด ๋งค๋ฒ ์ผ๋ง๋ ๋ง์ ์ง์๋ฅผ ํด์ผ ํ ๊น์?
๋ค์ ์ํผ์๋์์๋ ์ค์ ๋ก Skill์ ๋ง๋ค์ด๋ณด๊ฒ ์ต๋๋ค! ๐
๐ ๊ด๋ จ ๋ฌธ์
- Skills-์๋ฆฌ์ฆ - ์๋ฆฌ์ฆ ์ ์ฒด ๋ชฉ์ฐจ
- Skills EP02 - skills.sh ์ค์น ๋ฐ ์คํ - ์ค์ตํ ์ค์น/๊ฒ์ฆ ๋ฃจํด