AI ยท LLM ยท

[AI] ๐Ÿงฉ Claude Code ์ปค๋งจ๋“œ vs ์Šคํ‚ฌ: ๋ธ”๋กœ๊ทธ ์ž๋™ํ™”์— ๋‘˜ ๋‹ค ์จ๋ณธ ๊ธฐ์ค€

Claude Code๋ฅผ ์“ฐ๋‹ค ๋ณด๋ฉด ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ(.claude/commands/)์™€ ์Šคํ‚ฌ(.claude/skills/)์ด ์ ์  ๋น„์Šทํ•ด ๋ณด์ž…๋‹ˆ๋‹ค. ๊ฒฐ๋ก ๋ถ€ํ„ฐ ๋งํ•˜๋ฉด ์ฐฉ๊ฐ์ด ์•„๋‹™๋‹ˆ๋‹ค โ€” ๊ณต์‹์ ์œผ๋กœ ์ปค๋งจ๋“œ๋Š” ์Šคํ‚ฌ์— ๋ณ‘ํ•ฉ๋๊ณ , ์ด์ œ ๋‘˜์˜ ์ฐจ์ด๋Š” “๋ฌด์—‡์„ ์“ฐ๋А๋ƒ"๊ฐ€ ์•„๋‹ˆ๋ผ **“๋ˆ„๊ฐ€ ํ˜ธ์ถœ์„ ๊ฒฐ์ •ํ•˜๋А๋ƒ(๋‚˜ / Claude / ๋‘˜ ๋‹ค)“์™€ “ํŒŒ์ผ์„ ๋ฒˆ๋“คํ•˜๋А๋ƒ”**๋กœ ์ขํ˜€์กŒ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์€ ์‹ค์ œ๋กœ ์ด ๋ธ”๋กœ๊ทธ๋ฅผ ์ž๋™ํ™”ํ•˜๋ฉฐ ์ปค๋งจ๋“œ 2๊ฐœ(/writeยท/convert)์™€ ์Šคํ‚ฌ 1๊ฐœ(blog-lint)๋ฅผ ํ•จ๊ป˜ ๊ตด๋ ค๋ณธ ๊ฒฝํ—˜์œผ๋กœ, ๊ทธ ๊ฒฝ๊ณ„๋ฅผ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

โ— 2026-07 ๊ธฐ์ค€์ž…๋‹ˆ๋‹ค. Claude Code๋Š” ๊ธฐ๋Šฅ ๋ณ€ํ™”๊ฐ€ ๋น ๋ฅด๊ณ , ๊ณต์‹ ๋ฌธ์„œ๋„ ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ ํŽ˜์ด์ง€๋ฅผ “Extend Claude with skills"๋กœ ์žฌํŽธํ•˜๋Š” ์ค‘์ด๋ผ ์„ธ๋ถ€ ํ•„๋“œยท๋™์ž‘์€ ๋ฒ„์ „์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ์‹  ์‚ฌ์–‘์€ ํ•˜๋‹จ ๐Ÿ“š ์ฐธ๊ณ ์˜ ๊ณต์‹ ๋ฌธ์„œ๋กœ ํ™•์ธํ•˜์„ธ์š”.


๐Ÿงช ์ด ๋ธ”๋กœ๊ทธ๋Š” ์ปค๋งจ๋“œยท์Šคํ‚ฌ์„ ๋‘˜ ๋‹ค ์“ด๋‹ค #

๋จผ์ € ์‹ค์ œ ๊ตฌ์„ฑ๋ถ€ํ„ฐ ๋ด…๋‹ˆ๋‹ค. ์ด ๋ธ”๋กœ๊ทธ(Hugo ์ž์ž‘ ํ…Œ๋งˆ)์˜ .claude/ ์•„๋ž˜๋Š” ์ด๋ ‡๊ฒŒ ๋‚˜๋‰˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

1.claude/
2โ”œโ”€โ”€ commands/
3โ”‚   โ”œโ”€โ”€ write.md         # /write  โ€” ์ฐธ๊ณ  URL๋“ค์„ ์ข…ํ•ฉํ•ด ์ƒˆ ๊ธ€ ์ž‘์„ฑ
4โ”‚   โ””โ”€โ”€ convert.md       # /convert โ€” drafts์˜ ๊ธฐ์กด md๋ฅผ ๊ทœ์น™์— ๋งž๊ฒŒ ๋ณ€ํ™˜
5โ””โ”€โ”€ skills/
6    โ””โ”€โ”€ blog-lint/
7        โ”œโ”€โ”€ SKILL.md      # ๊ธ€ ํ’ˆ์งˆ ์ ๊ฒ€ ๊ทœ์น™ยทํŠธ๋ฆฌ๊ฑฐ
8        โ””โ”€โ”€ scripts/
9            โ””โ”€โ”€ scan.py   # ์‹ค์ œ lint ๋กœ์ง(๊ฒฐ์ •์  ์‹คํ–‰)
  • /writeยท/convert๋Š” ์ปค๋งจ๋“œ์ž…๋‹ˆ๋‹ค. “์ด draft๋ฅผ ์ง€๊ธˆ ๋ณ€ํ™˜ํ•ด"์ฒ˜๋Ÿผ ๋‚ด๊ฐ€ ์˜๋„์ ์œผ๋กœ ํŠธ๋ฆฌ๊ฑฐํ•˜๋Š” ์ž‘์—… ์›Œํฌํ”Œ๋กœ๋ผ, ํ”„๋กฌํ”„ํŠธ ํ•œ ์žฅ์ด๋ฉด ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.
  • blog-lint๋Š” ์Šคํ‚ฌ์ž…๋‹ˆ๋‹ค. scan.py๋ผ๋Š” ๊ฒฐ์ •์  ์ฝ”๋“œ๋ฅผ ๋ฒˆ๋“คํ•ด์•ผ ํ•˜๊ณ , “๊ธ€ ์ ๊ฒ€ํ•ด์ค˜” ๊ฐ™์€ ์• ๋งคํ•œ ์š”์ฒญ์—๋„ Claude๊ฐ€ ์•Œ์•„์„œ ๋ฐœ๋™ํ•  ์—ฌ์ง€๋ฅผ ์ฃผ๊ณ  ์‹ถ์—ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์ด ๋‚˜๋ˆ”์ด ์‚ฌ์‹ค ์ปค๋งจ๋“œ์™€ ์Šคํ‚ฌ์˜ ์ฐจ์ด๋ฅผ ๊ฑฐ์˜ ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์™œ ์ด๋ ‡๊ฒŒ ๊ฐˆ๋ ธ๋Š”์ง€๋Š” ์•„๋ž˜์—์„œ ํ•˜๋‚˜์”ฉ ํ’€์–ด๋ด…๋‹ˆ๋‹ค.


๐Ÿ“Œ ๋จผ์ € ๊ฒฐ๋ก : ์ปค๋งจ๋“œ๋Š” ์Šคํ‚ฌ์— “ํก์ˆ˜"๋๋‹ค #

๊ฐ€์žฅ ์ค‘์š”ํ•œ ์‚ฌ์‹ค๋ถ€ํ„ฐ. Claude Code ๊ณต์‹ ๋ฌธ์„œ๋Š” ์ด์ œ ์ด๋ ‡๊ฒŒ ๋ชป ๋ฐ•์Šต๋‹ˆ๋‹ค โ€” “Custom commands have been merged into skills.” ์ฆ‰ .claude/commands/deploy.md์™€ .claude/skills/deploy/SKILL.md๋Š” ๋‘˜ ๋‹ค /deploy๋ฅผ ๋งŒ๋“ค๊ณ  ๋˜‘๊ฐ™์ด ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์ •๋ฆฌํ•˜๋ฉด:

  • ๊ธฐ์กด .claude/commands/ ํŒŒ์ผ์€ ๊ทธ๋Œ€๋กœ ๊ณ„์† ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ๊ฐ•์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ์Šคํ‚ฌ์€ ์—ฌ๊ธฐ์— ์„ ํƒ์  ๊ธฐ๋Šฅ์„ ๋”ํ•œ ์ƒ์œ„์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค โ€” โ‘  ์ง€์› ํŒŒ์ผ์„ ๋‹ด๋Š” ํด๋” ๊ตฌ์กฐ, โ‘ก ๋ˆ„๊ฐ€ ํ˜ธ์ถœํ• ์ง€ ์ œ์–ดํ•˜๋Š” ํ”„๋ก ํŠธ๋งคํ„ฐ, โ‘ข Claude๊ฐ€ ๊ด€๋ จ ์ƒํ™ฉ์—์„œ ์ž๋™ ๋กœ๋“œํ•˜๋Š” ๋Šฅ๋ ฅ.
  • ๊ฒŒ๋‹ค๊ฐ€ ์Šคํ‚ฌ์€ Agent Skills๋ผ๋Š” ์˜คํ”ˆ ํ‘œ์ค€์„ ๋”ฐ๋ผ Claude Code๋ฟ ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ ๋„๊ตฌ์—์„œ ์žฌ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๐Ÿ’ก ๊ทธ๋ž˜์„œ ๋ฉ˜ํƒˆ ๋ชจ๋ธ์„ ์ด๋ ‡๊ฒŒ ์žก์œผ๋ฉด ํŽธํ•ฉ๋‹ˆ๋‹ค. “์ปค๋งจ๋“œ = ํด๋”๋„ ์ž๋™ ๋ฐœ๋™๋„ ์—†๋Š”, ๊ฐ€์žฅ ๋‹จ์ˆœํ•œ ํ˜•ํƒœ์˜ ์Šคํ‚ฌ.” ์งˆ๋ฌธ์„ “์ปค๋งจ๋“œ๋ƒ ์Šคํ‚ฌ์ด๋ƒ"๊ฐ€ ์•„๋‹ˆ๋ผ **“์ด ์›Œํฌํ”Œ๋กœ๋ฅผ ์–ด๋–ป๊ฒŒ ํ˜ธ์ถœยท๊ตฌ์„ฑํ• ๊นŒ”**๋กœ ๋ฐ”๊พธ๋ฉด ํ—ท๊ฐˆ๋ฆด ์ผ์ด ์—†์Šต๋‹ˆ๋‹ค.


๐Ÿค” ๊ทธ๋ž˜๋„ ๋ญ๊ฐ€ ๋‹ค๋ฅธ๊ฐ€ #

๋ณ‘ํ•ฉ๋๋‹ค๊ณ  ํ•ด์„œ ์™„์ „ํžˆ ๊ฐ™์€ ๊ฑด ์•„๋‹™๋‹ˆ๋‹ค. ์‹ค๋ฌด์—์„œ ๊ฐˆ๋ฆฌ๋Š” ์ง€์ ์„ ํ‘œ๋กœ ์ •๋ฆฌํ•˜๋ฉด ์ด๋ ‡์Šต๋‹ˆ๋‹ค.

๊ธฐ์ค€์ปค๋งจ๋“œ (.claude/commands/*.md)์Šคํ‚ฌ (.claude/skills/<name>/SKILL.md)
ํ˜ธ์ถœ ์ฃผ์ฒด์‚ฌ๋žŒ๋งŒ, /์ด๋ฆ„์œผ๋กœ ๋ช…์‹œ ํ˜ธ์ถœ์‚ฌ๋žŒ(/์ด๋ฆ„) + Claude ์ž์œจ ๋ฐœ๋™ ๋‘˜ ๋‹ค(๊ธฐ๋ณธ๊ฐ’)
๊ตฌ์กฐ๋งˆํฌ๋‹ค์šด ํŒŒ์ผ 1๊ฐœํด๋” โ€” SKILL.md + ์Šคํฌ๋ฆฝํŠธยท์ฐธ๊ณ ๋ฌธ์„œยท์˜ˆ์‹œ ๋ฒˆ๋“ค
๋กœ๋”ฉ ๋ฐฉ์‹ํ˜ธ์ถœ ์‹œ ํ”„๋กฌํ”„ํŠธ์— ์ฃผ์ž…์ ์ง„์  ๊ณต๊ฐœ โ€” ํ‰์†Œ์—” description๋งŒ, ๋ฐœ๋™ ์‹œ ๋ณธ๋ฌธ, ์ฐธ๊ณ ํŒŒ์ผ์€ ํ•„์š”ํ•  ๋•Œ๋งŒ
๊ฒฐ์ •์„ฑ์ˆœ์ˆ˜ ํ”„๋กฌํ”„ํŠธ(LLM์ด ๋งค๋ฒˆ ํ•ด์„)๋ฒˆ๋“ค ์Šคํฌ๋ฆฝํŠธ๋กœ ๊ฒฐ์ •์  ์‹คํ–‰ ๊ฐ€๋Šฅ(์˜ˆ: scan.py)
์ด์‹์„ฑClaude Code ์ค‘์‹ฌAgent Skills ํ‘œ์ค€ โ€” ์—ฌ๋Ÿฌ Claude ํ‘œ๋ฉดยท๋„๊ตฌ์—์„œ ๊ณต์œ 

๊ฐ ํ–‰์˜ ๊ฒฐ๋ก ์„ ํ•œ ์ค„๋กœ ์š”์•ฝํ•˜๋ฉด: **์ปค๋งจ๋“œ๋Š” “๋‚ด๊ฐ€ ๋ถ€๋ฅด๋Š” ํ”„๋กฌํ”„ํŠธ ์กฐ๊ฐ”, ์Šคํ‚ฌ์€ “Claude๋„ ๋ถ€๋ฅผ ์ˆ˜ ์žˆ๊ณ  ์ฝ”๋“œยท๋ฌธ์„œ๊นŒ์ง€ ํ’ˆ๋Š” ํŒจํ‚ค์ง€”**์ž…๋‹ˆ๋‹ค.

๐Ÿ’ก ์ ์ง„์  ๊ณต๊ฐœ๊ฐ€ ์Šคํ‚ฌ์˜ ์ง„์งœ ๊ฐ•์ ์ž…๋‹ˆ๋‹ค. ์Šคํ‚ฌ ๋ณธ๋ฌธ์€ ์“ฐ์ผ ๋•Œ๋งŒ ๋กœ๋“œ๋˜๋ฏ€๋กœ, ๊ธด ์ฐธ๊ณ  ์ž๋ฃŒ๋ฅผ ๋ถ™์—ฌ๋‘ฌ๋„ ์‹ค์ œ๋กœ ๋ฐœ๋™ํ•˜๊ธฐ ์ „๊นŒ์ง€๋Š” ์ปจํ…์ŠคํŠธ ๋น„์šฉ์ด ๊ฑฐ์˜ 0์ž…๋‹ˆ๋‹ค. CLAUDE.md์— ์ ˆ์ฐจ๊ฐ€ ๊ณ„์† ๋ถˆ์–ด๋‚œ๋‹ค๋ฉด ๊ทธ ๋ถ€๋ถ„์„ ์Šคํ‚ฌ๋กœ ๋–ผ์–ด๋‚ด๋Š” ๊ฒŒ ์œ ๋ฆฌํ•œ ์ด์œ ์ž…๋‹ˆ๋‹ค.


๐ŸŽ›๏ธ ์ง„์งœ ์ถ•์€ “๋ˆ„๊ฐ€ ํ˜ธ์ถœํ•˜๋‚˜” #

๋ณ‘ํ•ฉ ์ดํ›„ ์„ค๊ณ„ ํŒ๋‹จ์˜ ํ•ต์‹ฌ ์ถ•์€ ํ˜ธ์ถœ ์ฃผ์ฒด์ž…๋‹ˆ๋‹ค. ์Šคํ‚ฌ์€ ํ”„๋ก ํŠธ๋งคํ„ฐ ๋‘ ํ•„๋“œ๋กœ ์ด๊ฑธ ์ •ํ™•ํžˆ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.

  • ๊ธฐ๋ณธ๊ฐ’ โ€” ๋‚˜๋„ /์ด๋ฆ„์œผ๋กœ ๋ถ€๋ฅด๊ณ , Claude๋„ ๊ด€๋ จ ์ƒํ™ฉ์—์„œ ์ž๋™ ๋ฐœ๋™.
  • disable-model-invocation: true โ€” ๋‚˜๋งŒ ํ˜ธ์ถœ ๊ฐ€๋Šฅ. Claude๊ฐ€ ๋ฉ‹๋Œ€๋กœ ๋ชป ์ผญ๋‹ˆ๋‹ค. /commitยท/deploy์ฒ˜๋Ÿผ ๋ถ€์ˆ˜ํšจ๊ณผ๊ฐ€ ์žˆ๊ฑฐ๋‚˜ ํƒ€์ด๋ฐ์„ ๋‚ด๊ฐ€ ํ†ต์ œํ•ด์•ผ ํ•˜๋Š” ์ž‘์—…์— ์”๋‹ˆ๋‹ค.
  • user-invocable: false โ€” Claude๋งŒ ๋ฐœ๋™. / ๋ฉ”๋‰ด์—์„œ ์ˆจ๊ฒจ์ง‘๋‹ˆ๋‹ค. “์ปค๋งจ๋“œ๋กœ ๋ถ€๋ฅผ ์˜๋ฏธ๋Š” ์—†์ง€๋งŒ Claude๋Š” ์•Œ์•„์•ผ ํ•  ๋ฐฐ๊ฒฝ์ง€์‹"์— ์”๋‹ˆ๋‹ค.
ํ”„๋ก ํŠธ๋งคํ„ฐ๋‚ด๊ฐ€ ํ˜ธ์ถœClaude๊ฐ€ ํ˜ธ์ถœ์ปจํ…์ŠคํŠธ ๋กœ๋“œ
(๊ธฐ๋ณธ)โœ…โœ…description ์ƒ์ฃผ, ๋ฐœ๋™ ์‹œ ๋ณธ๋ฌธ
disable-model-invocation: trueโœ…โŒdescription๋„ ๋ฏธ์ƒ์ฃผ, ๋‚ด๊ฐ€ ๋ถ€๋ฅผ ๋•Œ๋งŒ
user-invocable: falseโŒโœ…description ์ƒ์ฃผ, ๋ฐœ๋™ ์‹œ ๋ณธ๋ฌธ

๐Ÿ’ก ์ด ํ”„๋ ˆ์ž„์œผ๋กœ ๋ณด๋ฉด, **๊ธฐ์กด ์ปค๋งจ๋“œ๋Š” ์‚ฌ์‹ค์ƒ “disable-model-invocation์— ๊ฐ€๊นŒ์šด ์Šคํ‚ฌ”**์ž…๋‹ˆ๋‹ค โ€” ๋‚ด๊ฐ€ ๋ช…์‹œ์ ์œผ๋กœ๋งŒ ํŠธ๋ฆฌ๊ฑฐํ•˜๋‹ˆ๊นŒ์š”. ์ด ๋ธ”๋กœ๊ทธ์˜ /convert๊ฐ€ ๋”ฑ ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค. “๋ณ€ํ™˜ํ•ด"๋ผ๊ณ  ๋‚ด๊ฐ€ ๋ถ€๋ฅผ ๋•Œ๋งŒ ๋Œ๋ฉด ๋˜์ง€, Claude๊ฐ€ ์•Œ์•„์„œ draft๋ฅผ ๋ณ€ํ™˜ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋ฉด ๊ณค๋ž€ํ•˜์ฃ .


๐Ÿ› ๏ธ ์‹ค์ œ ํŒŒ์ผ๋กœ ๋ณด๋Š” ์ฐจ์ด #

์ปค๋งจ๋“œ: ํ”„๋กฌํ”„ํŠธ ํ•œ ์žฅ + $ARGUMENTS #

/write์˜ write.md๋Š” ํ”„๋ก ํŠธ๋งคํ„ฐ ์—†์ด ํ”„๋กฌํ”„ํŠธ ๋ณธ๋ฌธ๋งŒ ์žˆ๊ณ , ์ธ์ž๋ฅผ $ARGUMENTS๋กœ ๋ฐ›์Šต๋‹ˆ๋‹ค(๋ฐœ์ทŒยท์ผ๋ฐ˜ํ™”).

1# ๋ธ”๋กœ๊ทธ ์ž‘์„ฑ (๋ชจ๋“œ B)
2
3์—ฌ๋Ÿฌ ์ฐธ๊ณ  ๋ธ”๋กœ๊ทธ๋ฅผ ์ข…ํ•ฉํ•ด ์ƒˆ Hugo ํฌ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
4
5## ์ž‘์—… ์ˆœ์„œ
61. `drafts/$ARGUMENTS/` ํด๋”์—์„œ refs.mdยทnotes.md ํ™•์ธ
72. URL๋“ค์„ fetchํ•ด ํ•ต์‹ฌ ๋ถ„์„ยท์ข…ํ•ฉ(๋‹จ์ˆœ ๋ณต์‚ฌ ๊ธˆ์ง€)
83. ์นดํ…Œ๊ณ ๋ฆฌ ์Šค์Šค๋กœ ํŒ๋‹จ โ†’ ๊ทœ์น™์— ๋งž๊ฒŒ ์ž‘์„ฑ
9...

/write kong-gateway๋กœ ๋ถ€๋ฅด๋ฉด $ARGUMENTS๊ฐ€ kong-gateway๋กœ ์น˜ํ™˜๋ฉ๋‹ˆ๋‹ค. ์ปค๋งจ๋“œ์—๋„ descriptionยทargument-hintยทallowed-toolsยทmodel ๊ฐ™์€ ํ”„๋ก ํŠธ๋งคํ„ฐ๋ฅผ ์„ ํƒ์ ์œผ๋กœ ๋ถ™์ผ ์ˆ˜ ์žˆ์ง€๋งŒ, ์œ„์ฒ˜๋Ÿผ ๋ณธ๋ฌธ๋งŒ ์žˆ์–ด๋„ ์™„์ „ํžˆ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ก ์ธ์ž๋Š” $ARGUMENTS(์ „์ฒด) ์™ธ์— $0ยท$1(์œ„์น˜๋ณ„), $ARGUMENTS[0] ๊ฐ™์€ ํ˜•ํƒœ๋„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. /migrate SearchBar React Vue์—์„œ $0=SearchBar, $1=React ์‹์œผ๋กœ ์ชผ๊ฐœ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์Šคํ‚ฌ: description์œผ๋กœ ๋ฐœ๋™ํ•˜๊ณ , ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋ฒˆ๋“คํ•œ๋‹ค #

blog-lint์˜ SKILL.md๋Š” ํ”„๋ก ํŠธ๋งคํ„ฐ์˜ description์ด ์ž์œจ ๋ฐœ๋™์˜ ํŠธ๋ฆฌ๊ฑฐ์ž…๋‹ˆ๋‹ค(๋ฐœ์ทŒ).

1---
2name: blog-lint
3description: Hugo ๋ธ”๋กœ๊ทธ content/ ๊ธ€์˜ ์ด์ฃผ ์ž”์žฌยทSEO ๋ฉ”ํƒ€ยทslug ๊ทœ์น™ยท๊นจ์ง„ ๋‚ด๋ถ€๋งํฌยทH1ยทํ—ค๋” ์ด๋ชจ์ง€ ๊ณผ๋‹ค๋ฅผ ์ ๊ฒ€(lint)ํ•œ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ "๋ธ”๋กœ๊ทธ ๊ธ€ ์ ๊ฒ€/๊ฒ€์‚ฌ/lint/ํ’ˆ์งˆ ํ™•์ธ"์„ ์š”์ฒญํ•  ๋•Œ ์‚ฌ์šฉ.
4---

๊ทธ๋ฆฌ๊ณ  ๋ณธ๋ฌธ(๋งˆํฌ๋‹ค์šด)์—๋Š” ๋ฒˆ๋“ค๋œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋ผ๋Š” ์ง€์‹œ๊ฐ€ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค โ€” ์˜ˆ: python3 .claude/skills/blog-lint/scripts/scan.py.

์—ฌ๊ธฐ์„œ description์— “์ ๊ฒ€/๊ฒ€์‚ฌ/lint/ํ’ˆ์งˆ ํ™•์ธ” ๊ฐ™์€ ์‹ค์ œ ์‚ฌ์šฉ์ž ํ‘œํ˜„์„ ๋„ฃ์–ด๋‘” ๊ฒŒ ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค. ์ œ๊ฐ€ “๊ธ€ ์ ๊ฒ€ํ•ด์ค˜"๋ผ๊ณ ๋งŒ ํ•ด๋„ Claude๊ฐ€ ์ด description์„ ๋ณด๊ณ  ์Šคํ‚ฌ์„ ์ž๋™์œผ๋กœ ์ง‘์–ด ๋“ค๊ฑฐ๋“ ์š”. ๊ทธ๋ฆฌ๊ณ  ํŒ์ • ๋กœ์ง์€ ํ”„๋กฌํ”„ํŠธ๊ฐ€ ์•„๋‹ˆ๋ผ ๋ฒˆ๋“ค๋œ scan.py๊ฐ€ ๊ฒฐ์ •์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค โ€” LLM์ด ๋งค๋ฒˆ ๊ทœ์น™์„ “ํ•ด์„"ํ•˜๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ, ์ฝ”๋“œ๊ฐ€ ๊ฐ™์€ ์ž…๋ ฅ์— ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ๋ƒ…๋‹ˆ๋‹ค.

๐Ÿ’ก ์Šคํฌ๋ฆฝํŠธ ๊ฒฝ๋กœ๋Š” ${CLAUDE_SKILL_DIR}/scripts/scan.py์ฒ˜๋Ÿผ ์Šคํ‚ฌ ๋””๋ ‰ํ„ฐ๋ฆฌ ๋ณ€์ˆ˜๋กœ ์ฐธ์กฐํ•˜๋ฉด, ๊ฐœ์ธยทํ”„๋กœ์ ํŠธยทํ”Œ๋Ÿฌ๊ทธ์ธ ์–ด๋””์— ์„ค์น˜๋ผ๋„ ์•ˆ์ „ํ•˜๊ฒŒ ํ’€๋ฆฝ๋‹ˆ๋‹ค.


๐Ÿงญ ์ปค๋งจ๋“œ๋ฅผ ์Šคํ‚ฌ๋กœ ์˜ฌ๋ฆด๊นŒ? โ€” ํŒ๋‹จ ์ฒดํฌ๋ฆฌ์ŠคํŠธ #

๊ธฐ์กด ์ปค๋งจ๋“œ๋ฅผ ๊ตณ์ด ์Šคํ‚ฌ๋กœ ์˜ฎ๊ธธ ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค(๊ทธ๋Œ€๋กœ ๋™์ž‘ํ•˜๋‹ˆ๊นŒ์š”). ๋‹ค๋งŒ ์•„๋ž˜ ์ค‘ ํ•˜๋‚˜๋ผ๋„ ํ•ด๋‹นํ•˜๋ฉด ์Šคํ‚ฌ๋กœ ์Šน๊ฒฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ฝ”๋“œยท์ฐธ๊ณ ๋ฌธ์„œ๋ฅผ ๋ฒˆ๋“คํ•˜๊ณ  ์‹ถ๋‹ค โ†’ ํด๋” ๊ตฌ์กฐ๊ฐ€ ํ•„์š”ํ•˜๋‹ˆ ์Šคํ‚ฌ. (์˜ˆ: blog-lint์˜ scan.py)
  • Claude๊ฐ€ ์•Œ์•„์„œ ๋ฐœ๋™ํ•˜๊ธธ ์›ํ•œ๋‹ค โ†’ description ๊ธฐ๋ฐ˜ ์ž์œจ ๋ฐœ๋™์ด ํ•„์š”ํ•˜๋‹ˆ ์Šคํ‚ฌ.
  • ์—ฌ๋Ÿฌ Claude ํ‘œ๋ฉด(Claude.aiยทAPIยท๋‹ค๋ฅธ ๋„๊ตฌ)์—์„œ ์žฌ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ๋‹ค โ†’ Agent Skills ํ‘œ์ค€์„ ๋”ฐ๋ฅด๋Š” ์Šคํ‚ฌ.
  • ๊ธด ์ฐธ๊ณ  ์ž๋ฃŒ๋ฅผ ๋ถ™์ด๋˜ ํ‰์†Œ ์ปจํ…์ŠคํŠธ ๋น„์šฉ์€ ์•„๋ผ๊ณ  ์‹ถ๋‹ค โ†’ ์ ์ง„์  ๊ณต๊ฐœ๊ฐ€ ๋˜๋Š” ์Šคํ‚ฌ.

๋ฐ˜๋Œ€๋กœ, **“๋‚ด๊ฐ€ ๋ช…์‹œ์ ์œผ๋กœ๋งŒ ๋ถ€๋ฅด๋Š” ์ˆœ์ˆ˜ ํ”„๋กฌํ”„ํŠธ ์›Œํฌํ”Œ๋กœ”**๋ผ๋ฉด ์ปค๋งจ๋“œ๋กœ ๋‚จ๊ฒจ๋‘ฌ๋„ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ธ”๋กœ๊ทธ๊ฐ€ ๋”ฑ ๊ทธ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋‰˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ž์‚ฐํ˜•ํƒœ์ด์œ 
/writeยท/convert์ปค๋งจ๋“œ ์œ ์ง€๋‚ด๊ฐ€ ๋ช…์‹œ์ ์œผ๋กœ ํŠธ๋ฆฌ๊ฑฐํ•˜๋Š” ์ˆœ์ˆ˜ ํ”„๋กฌํ”„ํŠธ. ๋ฒˆ๋“คํ•  ์ฝ”๋“œ ์—†์Œ
blog-lint์Šคํ‚ฌscan.py ๋ฒˆ๋“ค + “๊ธ€ ์ ๊ฒ€ํ•ด์ค˜"์— ์ž์œจ ๋ฐœ๋™ ํ•„์š”

โ“ ์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ #

Q. ๊ทธ๋Ÿผ ์ปค๋งจ๋“œ๋Š” ์—†์–ด์ง€๋‚˜์š”? ๋‹น์žฅ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ณต์‹ ๋ฌธ์„œ๊ฐ€ “๊ธฐ์กด .claude/commands/ ํŒŒ์ผ์€ ๊ณ„์† ๋™์ž‘ํ•œ๋‹ค"๊ณ  ๋ช…์‹œํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋งŒ ์‹ ๊ทœ๋กœ ๋งŒ๋“ ๋‹ค๋ฉด, ํ™•์žฅ ์—ฌ์ง€๊ฐ€ ํฐ ์Šคํ‚ฌ ์ชฝ์ด ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค.

Q. ์Šคํ‚ฌ๋„ ์Šฌ๋ž˜์‹œ๋กœ ๋ถ€๋ฅผ ์ˆ˜ ์žˆ๋‚˜์š”? ๋„ค. .claude/skills/<์ด๋ฆ„>/SKILL.md๊ฐ€ ์žˆ์œผ๋ฉด /์ด๋ฆ„์œผ๋กœ ์ง์ ‘ ํ˜ธ์ถœ๋ฉ๋‹ˆ๋‹ค. ์ž๋™ ๋ฐœ๋™์„ ๋ง‰๊ณ  ๋ช…์‹œ ํ˜ธ์ถœ๋งŒ ์›ํ•˜๋ฉด disable-model-invocation: true๋ฅผ ์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

Q. ๊ฐ™์€ ์ด๋ฆ„์˜ ์ปค๋งจ๋“œ์™€ ์Šคํ‚ฌ์ด ๋‘˜ ๋‹ค ์žˆ์œผ๋ฉด? ์Šคํ‚ฌ์ด ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค. ๋˜ ์Šคํ‚ฌ๋ผ๋ฆฌ๋Š” enterprise > personal(~/.claude/skills) > project(.claude/skills) ์ˆœ์œผ๋กœ ์žฌ์ •์˜๋ฉ๋‹ˆ๋‹ค.

Q. ๋‘˜ ์ค‘ ๋ญ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฉด ๋˜๋‚˜์š”? ๋ฐ˜๋ณตํ•ด์„œ ๋ถ™์—ฌ๋„ฃ๋Š” ํ”„๋กฌํ”„ํŠธ๊ฐ€ ์žˆ์œผ๋ฉด ์ปค๋งจ๋“œ(ํŒŒ์ผ 1๊ฐœ)๋กœ ๊ฐ€๋ณ๊ฒŒ ์‹œ์ž‘ํ•˜์„ธ์š”. ๊ฑฐ๊ธฐ์— ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋ถ™์ด๊ฑฐ๋‚˜ Claude๊ฐ€ ์•Œ์•„์„œ ๋ถ€๋ฅด๊ธธ ์›ํ•˜๋Š” ์ˆœ๊ฐ„, ํด๋”๋ฅผ ๋งŒ๋“ค์–ด ์Šคํ‚ฌ๋กœ ์Šน๊ฒฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

Q. ์Šคํ‚ฌ์ด ์•ˆ ๋ถˆ๋ ค์š”. description์— ์‚ฌ์šฉ์ž๊ฐ€ ์‹ค์ œ๋กœ ์“ธ ๋ฒ•ํ•œ ํ‚ค์›Œ๋“œ๊ฐ€ ๋“ค์–ด๊ฐ”๋Š”์ง€ ๋ณด์„ธ์š”. ์ž์œจ ๋ฐœ๋™์€ ์ „์ ์œผ๋กœ ์ด description ๋งค์นญ์— ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธ‰ํ•˜๋ฉด /์ด๋ฆ„์œผ๋กœ ์ง์ ‘ ๋ถ€๋ฅด๋ฉด ๋ฉ๋‹ˆ๋‹ค.


๐Ÿ“š ์ฐธ๊ณ  #