Skip to content
unicorn-pluginsPublic

About

Declarative Multi-Agent Orchestration: Applying Clean Architecture Principles to LLM Agent Systems via Markdown and YAML

Resources

Contributing

Stars

21 stars

Watchers

0 watching

Forks

Latest commit

ย 

History

187 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ‡ฐ๐Ÿ‡ท ํ•œ๊ตญ์–ด | ๐Ÿ‡บ๐Ÿ‡ธ English

DMAP ๋นŒ๋”

์ฝ”๋“œ ์—†์ด ๋ฉ€ํ‹ฐ์—์ด์ „ํŠธ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ๋งŒ๋“œ๋Š” ์„ ์–ธํ˜• ํ”„๋ ˆ์ž„์›Œํฌ


๊ฐœ์š”

DMAP (Declarative Multi-Agent Plugin) ์€ ์ฝ”๋“œ ์—†์ด Markdown(ํ”„๋กฌํ”„ํŠธ)๊ณผ YAML(์„ค์ •)๋งŒ์œผ๋กœ ๋ฉ€ํ‹ฐ์—์ด์ „ํŠธ ์‹œ์Šคํ…œ์„ ์ •์˜ํ•˜๋Š” ์„ ์–ธํ˜• ํ”Œ๋Ÿฌ๊ทธ์ธ ์•„ํ‚คํ…์ฒ˜ ํ‘œ์ค€์ž„.

๋ฌธ์ œ: ๊ธฐ์กด ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ฐœ๋ฐœ์˜ ๋ถˆํŽธํ•จ

Claude Code, Codex CLI์™€ ๊ฐ™์€ AI CLI ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ๊ฐœ๋ฐœํ•  ๋•Œ, ์ฝ”๋“œ ๊ธฐ๋ฐ˜ ๊ตฌํ˜„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ•œ๊ณ„๊ฐ€ ์žˆ์Œ:

  • ๋†’์€ ์ง„์ž…์žฅ๋ฒฝ -- ๊ฐ ๋Ÿฐํƒ€์ž„๋ณ„ SDK์™€ API๋ฅผ ํ•™์Šตํ•ด์•ผ ํ•จ
  • ๋Ÿฐํƒ€์ž„ ๊ฐ•๊ฒฐํ•ฉ -- ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์ด ํŠน์ • ๋Ÿฐํƒ€์ž„์— ์ข…์†๋˜์–ด ์ด์‹์„ฑ์ด ๋‚ฎ์Œ
  • ์œ ์ง€๋ณด์ˆ˜ ์–ด๋ ค์›€ -- ์š”๊ตฌ์‚ฌํ•ญ ๋ณ€๊ฒฝ ์‹œ ์ฝ”๋“œ ์ „์ฒด๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ•จ

"ํ”Œ๋Ÿฌ๊ทธ์ธ์˜ ๋ณธ์งˆ(๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง)๊ณผ ์‹คํ–‰ ๋ฐฉ์‹(์ธํ”„๋ผ)์„ ๋ถ„๋ฆฌํ•  ์ˆ˜๋Š” ์—†์„๊นŒ?"

DMAP์˜ ํ•ด๊ฒฐ ๋ฐฉ์‹

Clean ์•„ํ‚คํ…์ฒ˜์˜ ๊ด€์‹ฌ์‚ฌ ๋ถ„๋ฆฌ ์›์น™์„ ์ ์šฉํ•˜์—ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง๊ณผ ์ธํ”„๋ผ๋ฅผ ๋ถ„๋ฆฌํ•จ.

1. ์„ ์–ธํ˜• ๋ช…์„ธ "์–ด๋–ป๊ฒŒ(HOW)" ๋Œ€์‹  "๋ฌด์—‡์„(WHAT)"๋งŒ ์„ ์–ธํ•˜๋Š” ๋ฐฉ์‹์ž„. ํƒ์‹œ ๊ธฐ์‚ฌ์—๊ฒŒ ๊ฒฝ๋กœ๋ฅผ ์ผ์ผ์ด ์ง€์‹œํ•˜๋Š” ๋Œ€์‹  "๊ฐ•๋‚จ์—ญ์ด์š”"๋ผ๊ณ  ๋ชฉ์ ์ง€๋งŒ ๋งํ•˜๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•จ.

2. ์ถ”์ƒํ™” ๋ ˆ์ด์–ด ์—์ด์ „ํŠธ๋Š” ๋ชจ๋ธ ๋“ฑ๊ธ‰(tier: HIGH)๊ณผ ํˆด(file_search, code_edit)์„ ์ถ”์ƒ์ ์œผ๋กœ ์„ ์–ธํ•จ. ๊ตฌ์ฒด์ ์ธ ๋ชจ๋ธ ์ด๋ฆ„(Claude Opus, GPT-4 ๋“ฑ)์ด๋‚˜ ์‹ค์ œ ๋„๊ตฌ API๋Š” ์—์ด์ „ํŠธ๊ฐ€ ์•Œ ํ•„์š” ์—†์Œ.

3. Gateway ๋ ˆ์ด์–ด์˜ ๋งคํ•‘ Gateway๊ฐ€ ์ถ”์ƒ ์„ ์–ธ์„ ์‹ค์ œ ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์— ๋งž๊ฒŒ ์ž๋™ ๋ณ€ํ™˜ํ•จ.

  • tier: HIGH โ†’ Claude Code์—์„œ๋Š” claude-opus-4, Codex CLI์—์„œ๋Š” gpt-4-turbo
  • file_search โ†’ Claude Code์—์„œ๋Š” Glob ๋„๊ตฌ, Codex CLI์—์„œ๋Š” ripgrep ๋„๊ตฌ

์ด๋ฅผ ํ†ตํ•ด ์—์ด์ „ํŠธ ์ •์˜๋Š” ๊ทธ๋Œ€๋กœ ๋‘๊ณ , Gateway ์„ค์ •๋งŒ ๋ฐ”๊พธ๋ฉด ๋‹ค๋ฅธ ๋Ÿฐํƒ€์ž„์—์„œ ์‹คํ–‰ ๊ฐ€๋Šฅํ•จ.

ํ•ต์‹ฌ ๊ฐ€์น˜

๊ฐ€์น˜ ์„ค๋ช…
์„ ์–ธํ˜• ๋ช…์„ธ ์ฝ”๋“œ ๋Œ€์‹  Markdown + YAML๋กœ ์—์ด์ „ํŠธ ์ •์˜
๋Ÿฐํƒ€์ž„ ์ค‘๋ฆฝ Claude Code, Codex CLI ๋“ฑ ์–ด๋–ค ๋Ÿฐํƒ€์ž„์—์„œ๋“  ๋™์ž‘
๊ด€์‹ฌ์‚ฌ ๋ถ„๋ฆฌ Skills(๋ผ์šฐํŒ…) -> Agents(์‹คํ–‰) -> Gateway(๋งคํ•‘) ๋‹จ๋ฐฉํ–ฅ ์˜์กด
๋น„๊ฐœ๋ฐœ์ž ์ ‘๊ทผ์„ฑ Markdown ์ž‘์„ฑ ๊ฐ€๋Šฅํ•˜๋ฉด ๋ˆ„๊ตฌ๋‚˜ ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์ถ• ๊ฐ€๋Šฅ
๋„๋ฉ”์ธ ๋ฒ”์šฉ ์ฝ”๋“œ ์ƒ์„ฑ, ๊ต์œก, ๋ฌธ์„œํ™”, ๋น„์ฆˆ๋‹ˆ์Šค ์›Œํฌํ”Œ๋กœ์šฐ ๋“ฑ ์–ด๋–ค ๋„๋ฉ”์ธ์—๋„ ์ ์šฉ ๊ฐ€๋Šฅ

์ง€์› ๋Ÿฐํƒ€์ž„

DMAP์ด ์ƒ์„ฑํ•˜๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ์€ SSOT(agents/{name}/) + ๋Ÿฐํƒ€์ž„๋ณ„ ์–‡์€ ํฌ์ธํ„ฐ ์–ด๋Œ‘ํ„ฐ ๋ฐฉ์‹์œผ๋กœ ์•„๋ž˜ 4๊ฐœ ๋Ÿฐํƒ€์ž„์„ ๋ชจ๋‘ ์ง€์›ํ•จ. ์—์ด์ „ํŠธ ์ •์˜๋Š” ํ•œ ๋ฒˆ๋งŒ ์ž‘์„ฑํ•˜๊ณ  develop-plugin์ด ๋Ÿฐํƒ€์ž„๋ณ„ ์Šคํ…์„ ์ž๋™ ์ƒ์„ฑํ•จ.

๋Ÿฐํƒ€์ž„ ์–ด๋Œ‘ํ„ฐ ๊ฒฝ๋กœ ํฌ๋งท ๋ชจ๋ธ ์˜ˆ์‹œ ํ˜ธ์ถœ ๋ฐฉ๋ฒ•
Claude Code / CoWork .claude/agents/{name}.md Markdown + YAML frontmatter opus, sonnet, haiku Agent(subagent_type=FQN, ...)
Cursor .cursor/agents/{name}.md Markdown + YAML frontmatter opus, sonnet, haiku /{agent} ๋˜๋Š” ์ž์—ฐ์–ด ์œ„์ž„
Codex .codex/agents/{name}.toml TOML + developer_instructions gpt-5.4, gpt-5.4-mini ๋“ฑ spawn_agents_on_csv ๋˜๋Š” ์ž์—ฐ์–ด
Antigravity .antigravity/agents/{name}.md Markdown + YAML frontmatter opus, sonnet, haiku Manager UI ์ˆ˜๋™ ๋กœ๋“œ (ํ”„๋กœ๊ทธ๋ž˜๋งคํ‹ฑ API ๋ถˆํ™•์‹ค)

ํ•ต์‹ฌ ์„ค๊ณ„: SSOT๋Š” agents/{name}/ ํ•œ ๊ณณ์—๋งŒ ์กด์žฌํ•˜๊ณ , ๊ฐ ๋Ÿฐํƒ€์ž„์šฉ ์–ด๋Œ‘ํ„ฐ ์Šคํ…์€ "SSOT 3ํŒŒ์ผ์„ ์ฝ์–ด ๊ทธ์— ๋”ฐ๋ผ ํ–‰๋™ํ•˜๋ผ"๋Š” ์ง€์‹œ๋ฌธ๋งŒ ํฌํ•จํ•˜๋Š” ์–‡์€ ํฌ์ธํ„ฐ์ž„. ๋ชจ๋ธ ๋ฒ„์ „์€ gateway/runtime-mapping.yaml์˜ 4๋Ÿฐํƒ€์ž„ tier ๋งคํ•‘์—์„œ ํ•ด๊ฒฐ๋˜์–ด ์Šคํ… frontmatter์— ๊ธฐ๋ก๋จ. ์ƒ์„ธ: agent-runtime-adapters.md

Top


๋น ๋ฅธ ์‹œ์ž‘

์‚ฌ์ „ ์š”๊ตฌ์‚ฌํ•ญ

1. ๊ธฐ๋ณธ ํˆด ์„ค์น˜

๋„๊ตฌ ์ตœ์†Œ ๋ฒ„์ „ ์šฉ๋„
Git 2.x ํ”Œ๋Ÿฌ๊ทธ์ธ ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค (GitHub ์ €์žฅ์†Œ ํด๋ก )
Node.js 18+ MCP ์„œ๋ฒ„ ์‹คํ–‰ (npx ๋ช…๋ น ์‚ฌ์šฉ)
VS Code ์ตœ์‹  ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ (code ๋ช…๋ น ์‚ฌ์šฉ)

2. PATH ์„ค์ •

~/.local/bin ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ PATH์— ์ถ”๊ฐ€ํ•จ:

# Mac ์‚ฌ์šฉ์ž
code ~/.zshrc

# Linux/Windows ์‚ฌ์šฉ์ž (Windows๋Š” Git Bash ํ„ฐ๋ฏธ๋„ ์‚ฌ์šฉ)
code ~/.bashrc

์•„๋ž˜ ๋‚ด์šฉ์„ ํŒŒ์ผ ๋์— ์ถ”๊ฐ€:

export PATH=~/.local/bin:$PATH

(์ค‘์š”) ๊ฒฝ๋กœ ์ถ”๊ฐ€ ํ›„ ๋ฐ˜๋“œ์‹œ source ~/.bashrc ๋˜๋Š” source ~/.zshrc ์‹คํ–‰

3. Claude Code ์„ค์น˜

# macOS/Linux
curl -fsSL https://claude.ai/install.sh | bash

# Windows PowerShell
irm https://claude.ai/install.ps1 | iex

์„ค์น˜ ํ›„ ์ดˆ๊ธฐ ๊ตฌ์„ฑ:

claude

4. Oh My ClaudeCode (OMC) ์„ค์น˜

Claude Code ํ”„๋กฌํ”„ํŠธ์—์„œ ์ˆœ์ฐจ ์ˆ˜ํ–‰:

/plugin marketplace add https://github.com/Yeachan-Heo/oh-my-claudecode
/plugin install oh-my-claudecode

Setup ์‹œ MCP๋Š” context7๋งŒ ์„ค์น˜:

/oh-my-claudecode:omc-setup

DMAP ๋นŒ๋”๋Š” OMC์˜ ์Šคํ‚ฌ ๋ถ€์ŠคํŒ…(ralplan, ralph ๋“ฑ)์„ ํ™œ์šฉํ•˜๋ฏ€๋กœ OMC ์„ค์น˜๊ฐ€ ํ•„์ˆ˜์ž„.

DMAP ๋นŒ๋” ์„ค์น˜

์†Œ์Šค ํด๋ก :

mkdir -p {์ž‘์—…๋””๋ ‰ํ† ๋ฆฌ} 
cd {์ž‘์—…๋””๋ ‰ํ† ๋ฆฌ}
git clone https://github.com/unicorn-plugins/dmap.git
cd dmap
claude plugin marketplace add ./
claude plugin install dmap@dmap

Claude Code์—์„œ ์‚ฌ์šฉ

์‚ฌ์šฉ๋ฒ• ๋™์˜์ƒ ๋ณด๊ธฐ:
์•„๋ž˜ ๋งํฌ์˜ ์••์ถ•ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ํ›„ ์••์ถ• ํ•ด์ œํ•˜์—ฌ ๊ฐ ์ผ๋ จ๋ฒˆํ˜ธ๋ณ„๋กœ ์‹คํ–‰ ํ•˜์„ธ์š”.
https://drive.google.com/file/d/1wabVv4Ioj3FcxSH_Lnd-BDsWzoKH7-W-/view?usp=drive_link

ํ”Œ๋Ÿฌ๊ทธ์ธ ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ:

mkdir -p {์ž‘์—…๋””๋ ‰ํ† ๋ฆฌ}/{ํ”Œ๋Ÿฌ๊ทธ์ธ ๋””๋ ‰ํ† ๋ฆฌ}
cd {์ž‘์—…๋””๋ ‰ํ† ๋ฆฌ}/{ํ”Œ๋Ÿฌ๊ทธ์ธ ๋””๋ ‰ํ† ๋ฆฌ}

Claude Code ์‹คํ–‰ -> '/dmap:team-planner' ์‹คํ–‰ํ•˜์—ฌ ํŒ€ ๊ธฐํš์„œ ์ž‘์„ฑ ๋ถ€ํ„ฐ ์‹œ์ž‘

๋ช…๋ น ์„ค๋ช…
/dmap:develop-plugin 4-Phase ์›Œํฌํ”Œ๋กœ์šฐ๋กœ ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ฐœ๋ฐœ
/dmap:team-planner ํŒ€ ๊ธฐํš์„œ ์ž‘์„ฑ ์ง€์› (AI ์ž๋™ ์™„์„ฑ)
/dmap:publish ๊ฐœ๋ฐœ ์™„๋ฃŒ๋œ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ GitHub์— ๋ฐฐํฌ
/dmap:setup ์„ค์น˜ ๊ฒ€์ฆ (ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์กฐ ๋ฐ ํ‘œ์ค€ ๋ฌธ์„œ ํ™•์ธ)
/dmap:help ์‚ฌ์šฉ ์•ˆ๋‚ด

๊ธฐ๋ณธ ์‚ฌ์šฉ ํ๋ฆ„:

1. /dmap:setup                -- ์„ค์น˜ ์ƒํƒœ ๊ฒ€์ฆ
2. /dmap:team-planner         -- ํŒ€ ๊ธฐํš์„œ ์ž‘์„ฑ (AI ์ž๋™ ์™„์„ฑ)
3. /dmap:develop-plugin       -- ์š”๊ตฌ์‚ฌํ•ญ -> ์„ค๊ณ„ -> ๊ฐœ๋ฐœ -> ๊ฒ€์ฆ ์ž๋™ ์ˆ˜ํ–‰
4. /dmap:publish              -- GitHub ๋ฐฐํฌ (์ €์žฅ์†Œ ์ƒ์„ฑ, ์ปค๋ฐ‹, ํ‘ธ์‹œ)

End-to-End ์ž๋™ํ™”: ์š”๊ตฌ์‚ฌํ•ญ ์ •์˜๋ถ€ํ„ฐ GitHub ๋ฐฐํฌ๊นŒ์ง€ ์ „ ๊ณผ์ •์„ AI๊ฐ€ ์ž๋™ ์ˆ˜ํ–‰ํ•จ. ์‚ฌ์šฉ์ž๋Š” ๊ฐ ๋‹จ๊ณ„์˜ ์Šน์ธ๋งŒ ํ•˜๋ฉด ๋จ.

Top


์—…๊ทธ๋ ˆ์ด๋“œ

# 1. ์ตœ์‹  ์ฝ”๋“œ Pull
cd {dmap ํด๋ก  ๊ฒฝ๋กœ}
git pull origin main

# 2. ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค ์—…๋ฐ์ดํŠธ
claude plugin marketplace update dmap

# 3. ํ”Œ๋Ÿฌ๊ทธ์ธ ์žฌ์„ค์น˜
claude plugin install dmap@dmap

๊ฐฑ์‹ ์ด ๋ฐ˜์˜๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ:

claude plugin remove dmap@dmap
claude plugin marketplace update dmap
claude plugin install dmap@dmap

์—…๊ทธ๋ ˆ์ด๋“œ ํ›„ ์ƒˆ ๋„๊ตฌ๊ฐ€ ์ถ”๊ฐ€๋œ ๊ฒฝ์šฐ /dmap:setup์„ ์žฌ์‹คํ–‰ํ•˜์—ฌ ๋ˆ„๋ฝ๋œ ๋„๊ตฌ๋ฅผ ์„ค์น˜ํ•  ๊ฒƒ.

Top


ํ•ต์‹ฌ ๊ฐœ๋…

DMAP์˜ ๊ตฌ์กฐ๋ฅผ ํšŒ์‚ฌ ์กฐ์ง์— ๋น„์œ ํ•˜๋ฉด ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์›€.

Skills = ๋ถ€์„œ์žฅ

์ผ์„ ๋ฐฐ๋ถ„ํ•˜๋Š” ๋ถ€์„œ์žฅ ์—ญํ• . ์‚ฌ์šฉ์ž์˜ ์š”์ฒญ์„ ๋ฐ›์•„ ์–ด๋–ค ์—์ด์ „ํŠธ์—๊ฒŒ ์–ด๋–ค ์ผ์„ ์‹œํ‚ฌ์ง€ ๊ฒฐ์ •ํ•จ. SKILL.md ํŒŒ์ผ ํ•˜๋‚˜๋กœ ์›Œํฌํ”Œ๋กœ์šฐ ์ „์ฒด๋ฅผ ์„ ์–ธ.

ํ•ญ๋ชฉ ๋‚ด์šฉ
ํ•ต์‹ฌ ํŒŒ์ผ skills/{name}/SKILL.md
์—ญํ•  ๋ผ์šฐํŒ… + ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜
์œ ํ˜• router, setup, orchestrator, help

Agents = ์ „๋ฌธ๊ฐ€

์‹ค์ œ ์ผ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ „๋ฌธ๊ฐ€. ๊ฐ ์—์ด์ „ํŠธ๋Š” 3๊ฐœ ํŒŒ์ผ๋กœ ๊ตฌ์„ฑ๋จ.

ํŒŒ์ผ ์—ญํ• 
AGENT.md ์—ญํ•  ์ •์˜ (๋ชฉํ‘œ, ์›Œํฌํ”Œ๋กœ์šฐ, ์ถœ๋ ฅ ํ˜•์‹)
agentcard.yaml ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ (์ด๋ฆ„, ๋ฒ„์ „, ํ‹ฐ์–ด, ์ œ์•ฝ)
tools.yaml ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋„๊ตฌ ์ถ”์ƒ ์„ ์–ธ

Gateway = ํ†ต์—ญ์‚ฌ

์ถ”์ƒ์ ์ธ ์„ ์–ธ์„ ๊ตฌ์ฒด์ ์ธ ์‹คํ–‰ ํ™˜๊ฒฝ์œผ๋กœ ๋ฒˆ์—ญํ•˜๋Š” ํ†ต์—ญ์‚ฌ. ์—์ด์ „ํŠธ๊ฐ€ "ํŒŒ์ผ ๊ฒ€์ƒ‰ ๋„๊ตฌ"๋ผ๊ณ  ์„ ์–ธํ•˜๋ฉด, Gateway๊ฐ€ ์‹ค์ œ ๋Ÿฐํƒ€์ž„์—์„œ ์–ด๋–ค ๋„๊ตฌ๋ฅผ ์“ธ์ง€ ๋งคํ•‘ํ•จ.

ํŒŒ์ผ ์—ญํ• 
install.yaml MCP/LSP ์„œ๋ฒ„, ์ปค์Šคํ…€ ๋„๊ตฌ ์„ค์น˜ ์„ ์–ธ
runtime-mapping.yaml ํ‹ฐ์–ด ๋งคํ•‘, ๋„๊ตฌ ๋งคํ•‘, ์•ก์…˜ ๋งคํ•‘

๋ฆฌ์†Œ์Šค ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค = ์‚ฌ๋‚ด ๊ณต์œ  ๋“œ๋ผ์ด๋ธŒ

๊ฐ€์ด๋“œ, ํ…œํ”Œ๋ฆฟ, ์ƒ˜ํ”Œ, ๋„๊ตฌ๋ฅผ ๋ชจ์•„๋‘” ๊ณต์œ  ์ €์žฅ์†Œ. ์—ฌ๋Ÿฌ ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต์šฉ ์ž์› ํ’€.

๋ถ„๋ฅ˜ ๊ฒฝ๋กœ ์šฉ๋„
๊ฐ€์ด๋“œ resources/guides/ ๊ธฐ์ˆ  ์ฐธ์กฐ ๋ฌธ์„œ
ํ…œํ”Œ๋ฆฟ resources/templates/ ์‚ฐ์ถœ๋ฌผ ์ƒ์„ฑ ํ…œํ”Œ๋ฆฟ
์ƒ˜ํ”Œ resources/samples/ ๊ตฌํ˜„ ์ฐธ๊ณ  ์ƒ˜ํ”Œ
๋„๊ตฌ resources/tools/ ์ปค์Šคํ…€ ์•ฑ/CLI ๋„๊ตฌ

์•„ํ‚คํ…์ฒ˜ (Clean Architecture)

์ด ์ปดํฌ๋„ŒํŠธ๋“ค์€ Clean Architecture ์›์น™์„ ๋”ฐ๋ฆ„. Skills -> Agents -> Gateway ์ˆœ์„œ๋กœ ๋‹จ๋ฐฉํ–ฅ ์˜์กดํ•˜๋ฏ€๋กœ, ๊ฐ ๋ถ€๋ถ„์„ ๋…๋ฆฝ์ ์œผ๋กœ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๊ต์ฒด ๊ฐ€๋Šฅํ•จ.

์œ„์ž„ํ˜•:  Input -> Skills(Controller) -> Agents(Service) -> Gateway -> Runtime
์ง๊ฒฐํ˜•:  Input -> Skills(Controller) ----------------------> Gateway -> Runtime

Top


๋™์ž‘ ์›๋ฆฌ

ํ”„๋กฌํ”„ํŠธ ์กฐ๋ฆฝ

์Šคํ‚ฌ์€ 3๋‹จ๊ณ„ ๋ ˆ์ด์–ด๋กœ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์กฐ๋ฆฝํ•˜์—ฌ ์—์ด์ ผํŠธ๋ฅผ ํ˜ธ์ถœํ•จ.
์ด ์กฐ๋ฆฝ๊ณผ์ •์—์„œ ์ถ”์ƒํ™”๋œ ๋ชจ๋ธ๋“ฑ๊ธ‰๊ณผ ๋„๊ตฌ๊ฐ€ ์‹ค์ œ ์ธํ”„๋ผ์™€ ๋งคํ•‘๋จ.

๋‹จ๊ณ„ ์†Œ์Šค ๋‚ด์šฉ
1. ๊ณตํ†ต ์ •์  Gateway runtime-mapping.yaml ๋Ÿฐํƒ€์ž„ ๊ณตํ†ต ์„ค์ • (ํ‹ฐ์–ด ๋งคํ•‘, ๋„๊ตฌ ๋งคํ•‘)
2. ์—์ด์ „ํŠธ๋ณ„ ์ •์  AGENT.md + agentcard.yaml + tools.yaml ์—์ด์ „ํŠธ ์—ญํ• , ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ, ๋„๊ตฌ ์„ ์–ธ
3. ๋™์  ์Šคํ‚ฌ์ด ์ „๋‹ฌํ•˜๋Š” ์ž‘์—… ์ง€์‹œ ์‚ฌ์šฉ์ž ์š”์ฒญ ๊ธฐ๋ฐ˜ ๊ตฌ์ฒด ์ž‘์—… ๋‚ด์šฉ

4-Tier ๋ชจ๋ธ ๋งคํ•‘

์ž‘์—…์˜ ๋ณต์žก๋„์— ๋”ฐ๋ผ 4๋‹จ๊ณ„๋กœ ๋‚˜๋ˆ„๊ณ , ๊ฐ ๋‹จ๊ณ„์— ์ ํ•ฉํ•œ AI ๋ชจ๋ธ์„ ๋ฐฐ์ •ํ•จ. ๊ฐ„๋‹จํ•œ ํŒŒ์ผ ๊ฒ€์ƒ‰์€ ๊ฐ€๋ฒผ์šด ๋ชจ๋ธ์ด, ๋ณต์žกํ•œ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„๋Š” ๊ฐ•๋ ฅํ•œ ๋ชจ๋ธ์ด ๋‹ด๋‹นํ•จ.

Tier ์šฉ๋„ Claude ๋งคํ•‘ ์˜ˆ์‹œ
HEAVY ๊ทน๋„๋กœ ๋ณต์žกํ•œ ์ถ”๋ก , ์ „๋žต ์ˆ˜๋ฆฝ Opus (max thinking)
HIGH ๋ณต์žกํ•œ ๋ถ„์„, ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„ Opus
MEDIUM ํ‘œ์ค€ ๊ตฌํ˜„, ์ผ๋ฐ˜ ์ž‘์—… Sonnet
LOW ๋‹จ์ˆœ ์กฐํšŒ, ํŒŒ์ผ ๊ฒ€์ƒ‰ Haiku

์ž‘์—… ์ค‘ ๋‚œ์ด๋„๊ฐ€ ์˜ฌ๋ผ๊ฐ€๋ฉด ์ž๋™์œผ๋กœ ์ƒ์œ„ ๋ชจ๋ธ๋กœ ์—์Šค์ปฌ๋ ˆ์ด์…˜๋จ.

์Šคํ‚ฌ ํ™œ์„ฑํ™” ๊ฒฝ๋กœ

๋‘ ๊ฐ€์ง€ ๊ฒฝ๋กœ๋กœ ์Šคํ‚ฌ์ด ํ™œ์„ฑํ™”๋จ:

  1. ์ง์ ‘ ํ˜ธ์ถœ -- ์Šฌ๋ž˜์‹œ ๋ช…๋ น์–ด(/dmap:develop-plugin)๋กœ ์ •ํ™•ํžˆ ์›ํ•˜๋Š” ์Šคํ‚ฌ์„ ํ˜ธ์ถœ
  2. Router ๊ฒฝ์œ  -- ๋ชจํ˜ธํ•œ ์š”์ฒญ์ด ๋“ค์–ด์˜ค๋ฉด Router ์Šคํ‚ฌ์ด ์˜๋„๋ฅผ ๋ถ„์„ํ•˜์—ฌ ์ ์ ˆํ•œ ์Šคํ‚ฌ๋กœ ๋ผ์šฐํŒ…

๋Ÿฐํƒ€์ž„์€ skills/ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ž๋™ ์Šค์บ”ํ•˜์—ฌ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์Šคํ‚ฌ์„ ๋ฐœ๊ฒฌํ•จ.

Top


ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ

์š”๊ตฌ์‚ฌํ•ญ ์ •์˜๋ถ€ํ„ฐ GitHub ๋ฐฐํฌ๊นŒ์ง€ End-to-End ์ž๋™ํ™”๋กœ ์ˆ˜ํ–‰๋จ. /dmap:team-planner๋กœ ํŒ€ ๊ธฐํš์„œ๋ฅผ ๋จผ์ € ์ž‘์„ฑํ•œ ํ›„, /dmap:develop-plugin์œผ๋กœ 4-Phase ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ์ž๋™ ์ˆ˜ํ–‰ํ•˜๊ณ , /dmap:publish๋กœ GitHub์— ๋ฐฐํฌํ•จ. ๊ฐ Phase ์™„๋ฃŒ ์‹œ ์‚ฌ์šฉ์ž ์Šน์ธ์„ ๋ฐ›์•„ ๋‹ค์Œ ๋‹จ๊ณ„๋กœ ์ง„ํ–‰ํ•จ.

/dmap:team-planner โ†’ /dmap:develop-plugin (Phase 1~4) โ†’ /dmap:publish
Phase ๋‹จ๊ณ„ ์ฃผ์š” ํ™œ๋™
1 ์š”๊ตฌ์‚ฌํ•ญ ์ˆ˜์ง‘ ํŒ€ ๊ธฐํš์„œ ๋ถ„์„, ํ”Œ๋Ÿฌ๊ทธ์ธ ์ ํ•ฉ์—ฌ๋ถ€ ํŒ๋‹จ, ๋ˆ„๋ฝ ์ •๋ณด ์ˆ˜์ง‘ (์ƒ˜ํ”Œ)
2 ์„ค๊ณ„ ๋ฐ ๊ณ„ํš ๊ณต์œ  ์ž์› ์„ ํƒ, ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ตฌ์กฐ ์„ค๊ณ„, ๊ฐœ๋ฐœ ๊ณ„ํš์„œ ์ž‘์„ฑ
3 ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ฐœ๋ฐœ ์Šค์ผˆ๋ ˆํ†ค ์ƒ์„ฑ, Gateway/Agent/Skill/Command ๊ฐœ๋ฐœ, README ์ž‘์„ฑ
4 ๊ฒ€์ฆ ๋ฐ ์™„๋ฃŒ DMAP ํ‘œ์ค€ ์ค€์ˆ˜ ๊ฒ€์ฆ, ์ตœ์ข… ๋ณด๊ณ , ๊ณต์œ ์ž์› ๋“ฑ๋ก(์„ ํƒ)

Phase 3 ๊ฐœ๋ฐœ ์ˆœ์„œ:

  1. ํ”Œ๋Ÿฌ๊ทธ์ธ ์Šค์ผˆ๋ ˆํ†ค ์ƒ์„ฑ (.claude-plugin/, ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ)
  2. Gateway ์„ค์ • (install.yaml, runtime-mapping.yaml)
  3. ๊ณต์œ ์ž์› ๋ณต์‚ฌ (๋ฆฌ์†Œ์Šค ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค -> ํ”Œ๋Ÿฌ๊ทธ์ธ ๋””๋ ‰ํ† ๋ฆฌ)
  4. ์—์ด์ „ํŠธ ๊ฐœ๋ฐœ (AGENT.md, agentcard.yaml, tools.yaml)
  5. ์Šคํ‚ฌ ๊ฐœ๋ฐœ (setup ํ•„์ˆ˜, help ๊ถŒ์žฅ, ๊ธฐ๋Šฅ ์Šคํ‚ฌ)
  6. commands/ ์ง„์ž…์  ์ƒ์„ฑ
  7. ์ปค์Šคํ…€ ์•ฑ/CLI ๊ฐœ๋ฐœ (ํ•„์š” ์‹œ)
  8. README.md ์ž‘์„ฑ

Top


ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

dmap/
โ”œโ”€โ”€ .claude-plugin/          # ํ”Œ๋Ÿฌ๊ทธ์ธ ๋งค๋‹ˆํŽ˜์ŠคํŠธ
โ”‚   โ”œโ”€โ”€ plugin.json          #   ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ
โ”‚   โ””โ”€โ”€ marketplace.json     #   ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค ๋“ฑ๋ก ์ •๋ณด
โ”œโ”€โ”€ standards/               # DMAP ํ‘œ์ค€ ๋ฌธ์„œ
โ”‚   โ”œโ”€โ”€ plugin-standard.md          # ๋ฉ”์ธ ํ‘œ์ค€ (์•„ํ‚คํ…์ฒ˜, ๋””๋ ‰ํ† ๋ฆฌ, ๋ฐฐํฌ)
โ”‚   โ”œโ”€โ”€ plugin-standard-agent.md    # Agent ํŒจํ‚ค์ง€ ํ‘œ์ค€
โ”‚   โ”œโ”€โ”€ plugin-standard-skill.md    # Skill ์ž‘์„ฑ ํ‘œ์ค€
โ”‚   โ””โ”€โ”€ plugin-standard-gateway.md  # Gateway ์„ค์ • ํ‘œ์ค€
โ”œโ”€โ”€ resources/               # ๋ฆฌ์†Œ์Šค ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค (๊ณต์œ  ์ž์› ํ’€)
โ”‚   โ”œโ”€โ”€ plugin-resources.md  #   ๋ฆฌ์†Œ์Šค ์นดํƒˆ๋กœ๊ทธ
โ”‚   โ”œโ”€โ”€ guides/              #   ๊ฐ€์ด๋“œ ๋ฌธ์„œ
โ”‚   โ”œโ”€โ”€ templates/           #   ํ…œํ”Œ๋ฆฟ ํŒŒ์ผ
โ”‚   โ”œโ”€โ”€ samples/             #   ์ƒ˜ํ”Œ ํŒŒ์ผ
โ”‚   โ””โ”€โ”€ tools/               #   ๋„๊ตฌ (์ปค์Šคํ…€ ์•ฑ/CLI)
โ”œโ”€โ”€ skills/                  # DMAP ๋นŒ๋” ์Šคํ‚ฌ
โ”‚   โ”œโ”€โ”€ develop-plugin/      #   ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ฐœ๋ฐœ (4-Phase)
โ”‚   โ”œโ”€โ”€ team-planner/        #   ํŒ€ ๊ธฐํš์„œ ์ž‘์„ฑ ์ง€์›
โ”‚   โ”œโ”€โ”€ publish/             #   GitHub ๋ฐฐํฌ
โ”‚   โ”œโ”€โ”€ add-ext-skill/       #   ์™ธ๋ถ€ํ˜ธ์ถœ ์Šคํ‚ฌ ์ถ”๊ฐ€ ์œ ํ‹ธ๋ฆฌํ‹ฐ
โ”‚   โ”œโ”€โ”€ remove-ext-skill/    #   ์™ธ๋ถ€ํ˜ธ์ถœ ์Šคํ‚ฌ ์ œ๊ฑฐ ์œ ํ‹ธ๋ฆฌํ‹ฐ
โ”‚   โ”œโ”€โ”€ ext-{plugin}/        #   ์™ธ๋ถ€ ํ”Œ๋Ÿฌ๊ทธ์ธ ์œ„์ž„ (์„ ์–ธํ˜• A2A)
โ”‚   โ”œโ”€โ”€ setup/               #   ์ดˆ๊ธฐ ์„ค์ •
โ”‚   โ””โ”€โ”€ help/                #   ์‚ฌ์šฉ ์•ˆ๋‚ด
โ”œโ”€โ”€ commands/                # ์Šฌ๋ž˜์‹œ ๋ช…๋ น ์ง„์ž…์ 
โ”‚   โ”œโ”€โ”€ develop-plugin.md
โ”‚   โ”œโ”€โ”€ team-planner.md
โ”‚   โ”œโ”€โ”€ publish.md
โ”‚   โ”œโ”€โ”€ add-ext-skill.md
โ”‚   โ”œโ”€โ”€ remove-ext-skill.md
โ”‚   โ”œโ”€โ”€ ext-{plugin}.md
โ”‚   โ”œโ”€โ”€ setup.md
โ”‚   โ””โ”€โ”€ help.md
โ”œโ”€โ”€ references/              # ์ฐธ์กฐ ๋ฌธ์„œ
โ””โ”€โ”€ docs/                    # ๋ฐœํ‘œ/๋…ผ๋ฌธ ์ž๋ฃŒ

Top


ํ‘œ์ค€ ๋ฌธ์„œ

DMAP ํ‘œ์ค€์€ 4๊ฐœ์˜ ํ•ต์‹ฌ ๋ฌธ์„œ์™€ ๋ฆฌ์†Œ์Šค ์นดํƒˆ๋กœ๊ทธ๋กœ ๊ตฌ์„ฑ๋จ.

๋ฌธ์„œ ๊ฒฝ๋กœ ์„ค๋ช…
๋ฉ”์ธ ํ‘œ์ค€ standards/plugin-standard.md ์•„ํ‚คํ…์ฒ˜, ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ, ๋„ค์ž„์ŠคํŽ˜์ด์Šค, ๋ฐฐํฌ
Agent ํ‘œ์ค€ standards/plugin-standard-agent.md ์—์ด์ „ํŠธ ํŒจํ‚ค์ง€ ๊ตฌ์„ฑ (AGENT.md, agentcard.yaml, tools.yaml)
Skill ํ‘œ์ค€ standards/plugin-standard-skill.md ์Šคํ‚ฌ ์œ ํ˜•, ์ž‘์„ฑ ๊ทœ์น™, ์œ ํ˜•๋ณ„ ํ…œํ”Œ๋ฆฟ
Gateway ํ‘œ์ค€ standards/plugin-standard-gateway.md install.yaml, runtime-mapping.yaml ์ž‘์„ฑ ๊ทœ์น™
๋ฆฌ์†Œ์Šค ์นดํƒˆ๋กœ๊ทธ resources/plugin-resources.md ๊ณต์œ  ์ž์› ๋ชฉ๋ก (๊ฐ€์ด๋“œ, ํ…œํ”Œ๋ฆฟ, ์ƒ˜ํ”Œ, ๋„๊ตฌ)
ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ฐœ๋ฐœ ๊ฐ€์ด๋“œ resources/guides/plugin/plugin-dev-guide.md 4-Phase ์›Œํฌํ”Œ๋กœ์šฐ ์ƒ์„ธ ๊ฐ€์ด๋“œ

Top


๋กœ๋“œ๋งต

๋‹จ๊ณ„ ๋ชฉํ‘œ ๋‚ด์šฉ
ํ˜„์žฌ ๋ฉ€ํ‹ฐ ๋Ÿฐํƒ€์ž„ ์–ด๋Œ‘ํ„ฐ ์ง€์› Claude Code / Cursor / Codex / Antigravity 4๋Ÿฐํƒ€์ž„์šฉ ํฌ์ธํ„ฐ ์–ด๋Œ‘ํ„ฐ ์ž๋™ ์ƒ์„ฑ
๋‹จ๊ธฐ ๋Ÿฐํƒ€์ž„ ์‹ค์ธก ๋ฐ ์ปค๋ฒ„๋ฆฌ์ง€ ํ™•์žฅ Antigravity ํ”„๋กœ๊ทธ๋ž˜๋งคํ‹ฑ API ์‹ค์ธก, Gemini CLI ๋“ฑ ์ถ”๊ฐ€ ๋Ÿฐํƒ€์ž„ ์–ด๋Œ‘ํ„ฐ ์ถ”๊ฐ€
์ค‘๊ธฐ ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค / ์ปค๋ฎค๋‹ˆํ‹ฐ ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ณต์œ  ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค ๊ตฌ์ถ•, ์˜คํ”ˆ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ ์ƒํƒœ๊ณ„ ์กฐ์„ฑ
์žฅ๊ธฐ ๋…ธ์ฝ”๋“œ UI ๋น„๊ฐœ๋ฐœ์ž์šฉ ์‹œ๊ฐ์  ํ”Œ๋Ÿฌ๊ทธ์ธ ๋นŒ๋” (๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ)

Top


๋ผ์ด์„ ์Šค

MIT License

Copyright (c) 2026 Unicorn Inc. https://github.com/unicorn-plugins/dmap

Top

About

Declarative Multi-Agent Orchestration: Applying Clean Architecture Principles to LLM Agent Systems via Markdown and YAML

Resources

Contributing

Stars

21 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages