AI ์ฝ๋ฉ ์ด์์คํดํธ๋ฅผ ์ํ Parent-Child Instruction Processing ํ๋ ์์ํฌ
PCIP (Parent-Child Instruction Processing) Framework๋ AI ์ฝ๋ฉ ์ด์์คํดํธ์ ์ปจํ ์คํธ ์ดํด์ ์ฝ๋ ํ์ง์ ํฅ์์ํค๋ 3๊ณ์ธต ์ํคํ ์ฒ ์์คํ ์ ๋๋ค.
- 3๊ณ์ธต ์ํคํ ์ฒ: PM(๋ฉํ) โ Parent(์ ๋ฌธ๊ฐ) โ Child(์คํ)
- ๋์ ์ ๋ฌธ๊ฐ ์ ํ: ์๊ตฌ์ฌํญ์ ๋ฐ๋ฅธ ์ค์๊ฐ ์ ๋ฌธ๊ฐ ๋ฐฐ์
- ์ํ๋ ๊ธฐ๋ฐ ์คํ: 5๋จ๊ณ ์ํ๋ ํ๊ฐ ์์คํ
- ์ธ๋ถ ์ง์ ํตํฉ: RAG/MCP ๋ฑ์ ํตํ ์ต์ ์ ๋ณด ํ์ฉ
- ๋งฅ๋ฝ ๊ธฐ๋ฐ ์ฒ๋ฆฌ: ํ๋ก์ ํธ ์ํคํ ์ฒยท๋๋ฉ์ธ ๋งฅ๋ฝ ์๋ ํ์
๊ณ์ธตํ๋ AI: PM-Parent(์ ๋ฌธ๊ฐ)-Child(์คํ์) ๊ตฌ์กฐ. PM์ด ์์ ์ ํ๋จํ๊ณ ์๋ง์ Parent๋ฅผ ๋ฐฐ์ ํฉ๋๋ค.
๋๋๊ฐ ํ์ํ ๋(Explicit Mode): ๊ณ ๋๋ยท๊ณ ์ํ ์์ ์๋ PM์ด Parent๋ฅผ ํฌ์ ํด ๊ฒฌ๊ณ ํ ์ ๋ต์ ์๋ฆฝํฉ๋๋ค.
๋น ๋ฅด๊ฒ ๋๋ผ ๋(Silent Mode): ๋จ์ํ ์์ ์ Child๊ฐ ๋จ๋ ์ผ๋ก ์ฒ๋ฆฌํฉ๋๋ค. Parent ๊ฐ์ ์์ด ๋งค์ฐ ๋น ๋ฆ ๋๋ค.
ํ์ฌ AI ์ฝ๋ฉ ์ด์์คํดํธ๋ค์ ์ฃผ์ ๋ฌธ์ ์ :
- ํ๋ก์ ํธ์ ์ ์ฒด ์ํคํ ์ฒ๋ฅผ ๊ณ ๋ คํ์ง ์์ ์ฝ๋ ์์ฑ
- ๋๋ฉ์ธ๋ณ ์๊ตฌ์ฌํญ(๋ณด์, ์ฑ๋ฅ, ๊ท์ ์ค์ ๋ฑ) ๊ฐ๊ณผ
- ๊ธฐ์กด ์ฝ๋๋ฒ ์ด์ค์์ ์ผ๊ด์ฑ ๋ถ์กฑ
์์ฒญ: "๊ฒฐ์ ์์คํ
๊ตฌํ"
์ ํ์ ์คํจ: ๋ค์์ด ๋น ์ง ๊ธฐ๋ณธ ํผ ์์ค ๊ตฌํ
- ๋ณด์ ๊ณ ๋ ค(PCI DSS ๋ฑ)
- ์ค๋ฅ ์ฒ๋ฆฌ ๋ฐ ๋กค๋ฐฑ
- ์ด์ ๊ฑฐ๋ ํ์ง/์ฌ๊ธฐ ๋ฐฉ์ง
- ๊ฐ์ฌ ๋ก๊น
- ํ๋ถ ์ฒ๋ฆฌ
- ์ด๊ธฐ ๊ตฌํ โ ๋ฌธ์ ๋ฐ๊ฒฌ โ ์์ ์์ฒญ โ ์ฌ๊ตฌํ ์ฌ์ดํด ๋ฐ๋ณต
- ๊ฐ๋ฐ์๊ฐ ๋ชจ๋ ์ธ๋ถ์ฌํญ์ ๋ช ์์ ์ผ๋ก ์ง์ํด์ผ ํ๋ ๋ถ๋ด
PCIP Framework๋ ๊ตฌ์กฐํ๋ ์ง๋ ์์น์์ ์๊ฐ์ ์ป์ด ์ค๊ณ๋์์ต๋๋ค:
- ์ํฉ ํ์ : ์์ฒญ์ ๋ณต์ก๋์ ํน์ฑ ๋ถ์
- ์ํ ํ๊ฐ: ์์ ์ ์ ์ฌ์ ๋ฆฌ์คํฌ ํ๊ฐ
- ๋งฅ๋ฝ ๊ณ ๋ ค: ํ๋ก์ ํธ ํน์ฑ, ๊ธฐ์ ์คํ, ์ฌ์ฉ์์ธต ๊ณ ๋ ค
- ๊ฐ์ด๋ ์ ๊ณต: ์ ์ ํ ์ ๋ฌธ๊ฐ ๊ด์ ์์ ๋ฐฉํฅ ์ ์
- ์ง์ ๊ด์ฐฐ: ๊ฒฐ๊ณผ๋ฌผ์ ํ์ง ๊ธฐ์ค ๊ฒ์ฆ
์ฌ์ฉ์ ์์ฒญ โ AI โ ์ฝ๋ ์ถ๋ ฅ
"๊ฒฐ์ ์์คํ
๊ตฌํ" โ ์ฆํฅ ๊ตฌํ โ ์ ์ฌ์ ์ผ๋ก ์ํํ ์ฝ๋
์ฌ์ฉ์ ์์ฒญ โ PM(๋ถ์) โ Parent(๊ฐ์ด๋) โ Child(์คํ)
"๊ฒฐ์ ์์คํ
" โ ์ํ๋ ํ๊ฐ โ ๊ฒฐ์ +๋ณด์ ์ ๋ฌธ๊ฐ โ ๊ท์ ์ค์ยท์์ ํ ์ฝ๋
- ์ญํ : ๋ํ ๋ถ์, ์ ๋ฌธ๊ฐ ๋ฐฐ์
- ์ฑ
์:
- 5๋จ๊ณ ์ํ๋ ํ๊ฐ
- ๋์ ์ ๋ฌธ๊ฐ ํ ๊ตฌ์ฑ
- ์ธ๋ถ ๋ฆฌ์์ค ์ฐ๋
- ํ๋ก์ ํธ ์ปจํ ์คํธ ๊ด๋ฆฌ
- ์ญํ : ํนํ๋ ๊ฐ์ด๋์ ํ์ง ๊ธฐ์ค ์ ์
- ์ ๋ฌธ๊ฐ ์ ํ:
- ๋ณด์ ์์ง๋์ด
- ์ฑ๋ฅ ์์ง๋์ด
- UX ๋์์ด๋
- ๊ฒฐ์ ์์คํ ์ ๋ฌธ๊ฐ
- DevOps ์์ง๋์ด
- ๋ชจ๋ฐ์ผ ์คํ์ ๋ฆฌ์คํธ
- ์ญํ : ๊ฐ์ด๋์ ๋ฐ๋ฅธ ์ ํํ ๊ตฌํ
- ์ญ๋:
- ๋ฌธ๋ฒยท์ ํฉ์ฑ ๊ฒ์ฆ
- ๋ชจ๋ฒ ์ฌ๋ก ์ ์ฉ
- ๊ธฐ์กด ์ฝ๋๋ฒ ์ด์ค์์ ํตํฉ
PCIP Framework๋ "์ข์ ๋ถ๋ชจ" ๊ฐ๋ ์์ ์๊ฐ์ ๋ฐ์ ์ค๊ณ๋์์ต๋๋ค. ์ข์ ๋ถ๋ชจ๋ ์์ด๊ฐ ๋ฌด์ธ๊ฐ๋ฅผ ํ๊ณ ์ถ์ดํ ๋ ๋จ์ํ "์ข์, ํด๋ด!"๋ผ๊ณ ๋งํ์ง ์์ต๋๋ค. ๋์ ๋จ๊ธฐ์ ์ํฅ, ์ ์ฌ์ ๋ฌธ์ , ์ฅ๊ธฐ์ ๊ฒฐ๊ณผ๋ฅผ ์์ธกํ๊ณ , ์์ด๊ฐ ๊ฐ๋นํ ์ ์๋ค๊ณ ํ๋จ๋๋ฉด ์์ ํ ๊ฐ์ด๋๋ผ์ธ์ ์ ๊ณตํ์ฌ ๊ทธ ๊ฒฝ๊ณ ๋ด์์ ์์ ๋กญ๊ฒ ํ๋ํ ์ ์๋๋ก ํฉ๋๋ค.
์ข์ ๋ถ๋ชจ๋ "๋ช ๋ น"์ด ์๋๋ผ "์ถ๋ก "์ผ๋ก ๊ฐ์ด๋ํฉ๋๋ค. PCIP์ Parent๋ ์๋ ์ํ์ ๋ฐ๋ฆ ๋๋ค.
- ๊ด์ฐฐ: ํ์ฌ ์ํ์ ์ฝ๋๋ฒ ์ด์ค, ์ ์ฝ, ๋ชฉํ๋ฅผ ๊ด์ฐฐ
- ๊ฐ์ค ์๋ฆฝ: ์๋์ ๋ฆฌ์คํฌ์ ๋ํ ๊ฐ์ค์ ์ธ์
- ์ง๋ฌธ/ํ์ธ: ๋ชจํธํ ๋ถ๋ถ์ ์ง๋ฌธํ๊ฑฐ๋ ํ ์คํธ๋ก ํ์ธ
- ์ธ๋ถ ์ง์ ๋ณด๊ฐ: ์ต์ ๋ฌธ์/ํ์ค์ ์ฐธ์กฐํด ๊ฐ์ค์ ๋ณด๊ฐ
- ๊ฐ๋๋ ์ผ ์ค์ : ์์ ํ ๊ฒฝ๊ณ(๋ถ๋ณ ์กฐ๊ฑด, ๊ธ์ง์ฌํญ, ์ฒดํฌ๋ฆฌ์คํธ) ์ ์
- ์์: Child๊ฐ ์์จ์ ์ผ๋ก ์คํํ๋๋ก ๊ตฌ์ฒด์ ๊ฒฝ๊ณ์ ์ฑ๊ณต ์กฐ๊ฑด์ ์ ๋ฌ
- ๋ชจ๋ํฐ๋ง: ์คํ ๊ฒฐ๊ณผ์ ๋ก๊ทธ/ํ ์คํธ๋ก ๊ฒ์ฆ
- ์กฐ์ : ํธ์ฐจ๊ฐ ์์ผ๋ฉด ๊ฒฝ๊ณ์ ์ ๋ต์ ์ ๋ฐ์ดํธ
๊ฐ๋จ ์์ฌ์ฝ๋
observe()
hypothesis = formHypothesis(context, risks)
questions = identifyUnknowns(hypothesis)
resolve(questions) using tests/docs/tools
guardrails = defineBoundaries(hypothesis, standards)
delegateToChild(task, guardrails, successCriteria)
result = verify(outputs, tests, logs)
adjust(guardrails, plan) if driftDetected(result)
์งง์ ์์
์์ฒญ: "๋ก๊ทธ์ธ ๋ก์ง ์ต์ ํ"
๊ด์ฐฐ: ์คํจ์จ ์ฆ๊ฐ, DB ๋ถํ ์์น
๊ฐ์ค: ๋ ์ดํธ๋ฆฌ๋ฐยท์ธ์
ํ์ ๋๋ฝ + N+1 ์ฟผ๋ฆฌ
์ธ๋ถ์ง์: OWASP ASVS
๊ฐ๋๋ ์ผ:
- ๋น๋ฐ๋ฒํธ ์ทจ๊ธ ๊ธ์ง, ์คํจ ํ์ ์๊ณ, ์ธ์
ํ ํฐ ํ์
- ORM ์์ค์์ eager loading ์ ์ฉ, ์ธ๋ฑ์ค ๊ฒ์ฆ
์์: Child๊ฐ ๋ฆฌํฉํฐ + ํ
์คํธ ์ถ๊ฐ
๋ชจ๋ํฐ๋ง: ์๋ฌ์จ/์ง์ฐ/์ฟผ๋ฆฌ์ ๋ฉํธ๋ฆญ ํ์ธ
์กฐ์ : ์๊ณ๊ฐ ์ํฅยท์ง์ฐ ์ฌ๋ผ์ด๋ฉ ์๋์ฐ ์ ์ฉ
๋จ์ ์์ ์ ์ ํ์ฑ๊ณผ ์๋๋ฅผ ๋์์ ๋ชฉํ๋ก ํฉ๋๋ค. ๊ธฐ๋ณธ ์์ฑ ์์ ์ ๊ธฐ์กด SOTA ๋ชจ๋ธ๋ง์ผ๋ก๋ ์ถฉ๋ถํ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌ๋ฉ๋๋ค.
Explicit Mode๋ ๊ณ ๋๋ยท๊ณ ์ํยท๋ณต์ก ์ ๋ฌด๋ฅผ ์ํด ์ค๊ณ๋์์ต๋๋ค. ๋ค์ ์ํฉ์์ ์ง๊ฐ๋ฅผ ๋ฐํํฉ๋๋ค.
- ํ๋ก๋์ ๊ธ ์ฝ๋๋ฒ ์ด์ค์ ๋ณต์กํ ์์กด์ฑ
- ์์ยท์ฝ๋ฐฑ ๊ด๊ณ๊ฐ ์ฝํ ๊ตฌ์ฑ์์
- ํฌ๋ก์ค ํ์ผ ์ํฌํธ/์ฐ๊ฒฐ์ฑ
- ๊ท์ ์ค์ ์๊ตฌ(PCI DSS, HIPAA ๋ฑ)
์ด๋ฐ ๊ฒฝ์ฐ์๋ ๋์์ ์ง์๋ง ์ฒ๋ฆฌํด์๋ ์ ๋๊ณ , ์ํธ ์ฐ๊ฒฐ๋ ์์๋ค์ ํจ๊ป ๊ณ ๋ คํด์ผ ํฉ๋๋ค.
PM์ ๋ค์์ ๋ถ์ํฉ๋๋ค.
- ์์ฒญ์ ๋ณต์ก๋์ ๋ฒ์
- ๊ธฐ์กด ์ฝ๋๋ฒ ์ด์ค ์ํคํ ์ฒ
- ์ํฅ ๊ฐ๋ฅ ์์ญ
- ์๊ตฌ ์ ๋ฌธ ๋ถ์ผ
Parent๊ฐ ์ ์ ๋๋ฉด ๋ค์์ ์ํํฉ๋๋ค.
- ๋ฒ์ ์๋ณ: ์ํฅ ๋ฒ์ ์ ๋ฐ์ ์๋ณ
- ์ ๋ต ์๋ฆฝ: ์ ๋ฌธ๊ฐ ๊ด์ ์์ ์ ๊ทผ๋ฒ ์ค๊ณ
- ์ง์ ๋ณด๊ฐ: ํ์ ์ ์ธ๋ถ ์๋ฃ(๊ฒ์, MCP ๋ฑ) ํ์ฉ
- ๊ฐ๋๋ ์ผ ์ ์: Child ์คํ์ ์ํ ์์ ์ ๊ฒฝ๊ณ ์ ์
Child๋ ๊ฐ๋๋ ์ผ ๋ด์์ ์คํํ๋ฉฐ ํ์ง๊ณผ ์์ ์ ์ ์งํ ์ฑ SOTA ์ญ๋์ ๊ทน๋ํํฉ๋๋ค.
๊ธฐ์กด AI: "๊ฒฐ์ ์์คํ " โ ๋ณด์ ๋ฏธ๊ณ ๋ ค ๊ธฐ๋ณธ ํผ ์์ค PCIP: "๊ฒฐ์ ์์คํ " โ ๊ฒฐ์ +๋ณด์ ์ ๋ฌธ๊ฐ ํฌ์ โ PCI ์ค์ยท์ฌ๊ธฐ ๋ฐฉ์งยท๊ฐ์ฌ ๋ก๊น ยท์๋ฌ ์ฒ๋ฆฌ๊น์ง ํฌํจํ ์๊ฒฐ ํด๋ฒ
| ์์ค | ์ํ๋ | ๊ธฐ์ค | ์์ | ์คํ ๋ชจ๋ |
|---|---|---|---|---|
| 5 | ๋งค์ฐ ๋ฎ์ | ๋จ์ผ ํ์ผ, ์ํฅ๋ ๋งค์ฐ ๋ฎ์ | CSS ์คํ์ผ ๋ณ๊ฒฝ, ์ฝ์ ๋ก๊ทธ ์ถ๊ฐ | ์ฌ์ผ๋ฐํธ |
| 4 | ๋ฎ์ | 2โ3๊ฐ ํ์ผ, ๋จ์ผ ๋๋ฉ์ธ | ์ปดํฌ๋ํธ ์์ , ๋จ์ ๊ฒ์ฆ | ์ฌ์ผ๋ฐํธ |
| 3 | ๋ณดํต | ๋ค์ค ํ์ผ ๋๋ ๊ต์ฐจ ๋๋ฉ์ธ | ์ ๊ท ๊ธฐ๋ฅ, API ๋ณ๊ฒฝ | ์กฐ๊ฑด๋ถ |
| 2 | ๋์ | ์ค์ ์์คํ ๋ณ๊ฒฝ | ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง, ๊ฒฐ์ ์ฐ๋ | ์ต์คํ๋ฆฌ์ฏ |
| 1 | ์น๋ช ์ | ์์คํ ์ ๋ฐ ๊ฐํธ | ์ํคํ ์ฒ ๋ง์ด๊ทธ๋ ์ด์ , ํ๋ ์์ํฌ ๋ณ๊ฒฝ | ์ต์คํ๋ฆฌ์ฏ |
- ์ฌ์ฉ์ ์ํธ์์ฉ ์ต์ํ, ์ฆ์ ์คํ
- ๊ฐ๋จ ๊ตฌํ ์์ฝ ์ ๊ณต
- ๊ฐ๋ฐ ์๋ ์ต์ ํ
- ์์ธ ๋ถ์๊ณผ ๊ตฌํ ๊ณํ ์ ์
- ์คํ ์ ์ฌ์ฉ์ ์น์ธ ํ์
- ๋ณ๊ฒฝ์ฌํญ์ ๋ํ ํฌ๊ด์ ๋ฌธ์ํ
๋ํ ํค์๋ ๊ธฐ๋ฐ ์ ๋ฌธ๊ฐ ๋ฐฐ์
| ํค์๋ | ๋ฐฐ์ ์ ๋ฌธ๊ฐ |
|---|---|
| "๋ก๊ทธ์ธ", "๋ณด์", "ํดํน ๋ฐฉ์ง" | ๋ณด์ ์์ง๋์ด + ๋ฐฑ์๋ ์ํคํ ํธ |
| "๋๋ ค", "์ต์ ํ", "์๋" | ์ฑ๋ฅ ์์ง๋์ด + ๋๋ฉ์ธ ์ ๋ฌธ๊ฐ |
| "์ฌ์ฉํ๊ธฐ ์ด๋ ค์", "๋์์ธ", "UI" | UX ๋์์ด๋ + ํ๋ก ํธ์๋ ์คํ์ ๋ฆฌ์คํธ |
| "๊ฒฐ์ ", "์ผํ", "์๊ฑฐ๋" | ๊ฒฐ์ ์์คํ ์ ๋ฌธ๊ฐ + ๋ณด์ ์์ง๋์ด |
| "๋ชจ๋ฐ์ผ", "๋ฐ์ํ", "์ฑ" | ๋ชจ๋ฐ์ผ ์คํ์ ๋ฆฌ์คํธ + UX ๋์์ด๋ |
3๋จ๊ณ ์ ๋ขฐ๋ ์์คํ
- ๋์: ๋ด๋ถ ์ง์์ผ๋ก ์ถฉ๋ถ โ ์ฆ์ ์๋ต
- ์ค๊ฐ: ์ธ๋ถ ์๋ฃ ๊ต์ฐจ๊ฒ์ฆ โ ๊ฒ์ฆ๋ ์๋ต
- ๋ฎ์: ์ ๋ฌธ ์๋ฃ ์กฐํ โ ์ ํํ ์ ๋ณด
์ง์ ์ธ๋ถ ์์ค
- ๊ธฐ์ ๋ฌธ์ ๋ฐ API ๋ ํผ๋ฐ์ค
- ์ฐ์ ํ์ค ๋ฐ ์ปดํ๋ผ์ด์ธ์ค ์๊ตฌ
- ์ค์๊ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฒ์ ๋ฐ ๋ณด์ ๊ณต์ง
- ํ๋ ์์ํฌ ๋ฒ ์คํธ ํ๋ํฐ์ค
3์ค ๊ฒ์ฆ ์์คํ
- Child ๋ ์ด์ด: ๋ฌธ๋ฒ์ ์ ํ์ฑ ๋ฐ ๊ธฐ๋ณธ ๋์ ํ์ธ
- Parent ๋ ์ด์ด: ๋๋ฉ์ธ๋ณ ํ์ง ๊ธฐ์ค ๊ฒํ
- PM ๋ ์ด์ด: ํ๋ก์ ํธ ์ผ๊ด์ฑ ๋ฐ ์ํคํ ์ฒ ์ ํฉ์ฑ ํ์ธ
| ๋จ๊ณ | ๊ธฐ์กด AI | PCIP |
|---|---|---|
| ์ด๊ธฐ ์์ฒญ | ๋น ๋ฅธ ๊ตฌํ | ๋ถ์ ๋ฐ ๊ณํ |
| ๊ฒฐ๊ณผ ํ์ง | ๋ถ๋ถ์ /๋ถ์์ | ์๊ฒฐยท๋งฅ๋ฝ ์ธ์ง |
| ๋ฐ๋ณต ์์ | ๋ค์์ ์ฌ์์ ํ์ | ์ต์ํ์ ๋ณด์ |
| ์ ์ฒด ์์ | 1์๊ฐ ์์ โ 1์ฃผ | ์ด๋ฐ ์ฝ๊ฐ ์ง์ฐ โ ์ ์ฒด์ ์ผ๋ก ๋ ๋น ๋ฅธ ์๋ฃ |
โ
์ค๋ช
๋ถ๋ด ๊ฐ์: ๋งฅ๋ฝ ์ธ์ง ์ฒ๋ฆฌ๋ก ๋ฐ๋ณต ์ง์ ์ต์ํ
โ
์ ๋ฌธ๊ฐ ๊ด์ ์ ์ฉ: ๋๋ฉ์ธ ์ ๋ฌธ์ฑ ์๋ ๋ฐ์
โ
๋์ ์ฝ๋ ํ์ง: ๋ค์ธต ๊ฒ์ฆ์ผ๋ก ๊ฒฌ๊ณ ํ ๊ฒฐ๊ณผ
โ
์ฌํ ๋ฌธ์ ๊ฐ์: ์ฌ์ ์ ์ฃ์ง์ผ์ด์ค ๊ณ ๋ ค
โ
ํ๋ก์ ํธ ์ผ๊ด์ฑ: ์ํคํ
์ฒ ์ ํฉ์ฑ ์ ์ง
โ ์ด๊ธฐ ๋ณต์ก๋: ๋จ์ ์์
์ ์ค์ ๋ถ๋ด(ํ์ง๋ง Silent Mode๋ก ์ํ)
โ ํ์ต ๊ณก์ : ์ํ๋ ์์คํ
์ดํด ํ์
โ AI ํ๊ณ: ๋ณธ์ง์ ํ๊ณ๋ ์กด์ฌ
- 2.1:
SystemPrompt.md/SystemPromptEN.md์ ๋ฐ์ดํธ(์ง์๋ฌธ ๋ช ํํ, ์ฉ์ด ํต์ผ, ๋ชจ๋ ์ ํ ๊ธฐ์ค ์ ๊ตํ). README ๋ฒ์ ๋ฐฐ์ง ๊ฐฑ์ . - 2.0: ๋ค๊ตญ์ด README ์ ๋ฆฌ, ์ํ๋/๋ชจ๋ ํ์คํ, ํ์ง ๋ณด์ฆ ์ฒด๊ณ ๋ช ์.
- ์์คํ ํ๋กฌํํธ๋ฅผ ์ง์ํ๋ AI ์ด์์คํดํธ(Claude, ChatGPT ๋ฑ)
- ๊ฐ๋ฐ ํ๊ฒฝ(Cursor, VS Code ๋ฑ)
-
์์คํ ํ๋กฌํํธ ๊ฐ์ ธ์ค๊ธฐ
SystemPrompt.md ๋ด์ฉ์ ๋ณต์ฌํฉ๋๋ค -
AI ์ด์์คํดํธ ์ค์
- Cursor: User Rules ๋๋ Project Rules์ ์ถ๊ฐ
- ChatGPT: Custom Instructions์ ์ค์
- Claude: System Prompt๋ก ์ฌ์ฉ
-
์ฝ๋ฉ ์์
User: "์ธ์ฆ ์์คํ
๋ง๋ค์ด์ค"
PCIP: [PM ๋ถ์] โ [๋ณด์ ์ ๋ฌธ๊ฐ ๋ฐฐ์ ] โ [์คํ]
User: "๋ฒํผ ์ ๋นจ๊ฐ์์ผ๋ก ๋ฐ๊ฟ์ค"
PCIP: [์ฆ์ CSS ์
๋ฐ์ดํธ]
์ฐธ๊ณ : ์ ์ํ ์คํ์ผ ๋ณ๊ฒฝ ์๋ฃ
User: "๊ฒฐ์ ์ฒ๋ฆฌ ์์คํ
๋ง๋ค์ด์ค"
PCIP:
- ์ํ๋: Critical(Level 1)
- ์ ๋ฌธ๊ฐ: ๊ฒฐ์ + ๋ณด์ + ๋ฐฑ์๋
- ๋ถ์: PCI DSS ์ค์ ํ์...
- ์งํํ ๊น์? Y/n
User: "๋ชจ๋ฐ์ผ ์ปค๋จธ์ค ์ฑ(๋ณด์ ๊ฒฐ์ ํฌํจ) ๋ง๋ค์ด์ค"
PCIP:
- PM: ๋์ ๋ณต์ก๋ ๊ฐ์ง
- ์ ๋ฌธ๊ฐ: ๋ชจ๋ฐ์ผ + UX + ๊ฒฐ์ + ๋ณด์
- ์ ๊ทผ: ํ ํฐํ ๊ฒฐ์ ๋ฅผ ๊ฐ์ถ PWA...
User: "PCIP Parent ์๊ฒฌ์?"
PCIP Parent(๋ณด์ ์์ง๋์ด):
"ํ์ฌ ์ธ์ฆ ๊ตฌํ์ ๊ธฐ์ค์ผ๋ก ๋ก๊ทธ์ธ ์๋ ๋ ์ดํธ๋ฆฌ๋ฐ, ์์ ํ ์ธ์
ํ ํฐ ๋กํ
์ด์
์ ๊ถ์ฅํฉ๋๋ค..."
ํ๋ก์ ํธ ์ฑ๊ฒฉ์ ๋ง์ถฐ ์์คํ ํ๋กฌํํธ์ ์๊ณ๊ฐ์ ์กฐ์ ํ์ธ์.
- ๋ณด์์ : Explicit Mode ์๊ณ๊ฐ ๋ฎ์ถค
- ๊ณต๊ฒฉ์ : Silent Mode ์๊ณ๊ฐ ๋์
์ ํธ ์ ๋ฌธ๊ฐ๋ฅผ ์๋ ์ง์ ํ ์ ์์ต๋๋ค.
User: "๋ก๊ทธ์ธ ์์คํ
(UX ์ค์ฌ)"
PCIP: UX ๋์์ด๋ + ๋ฐฑ์๋ ์ํคํ
ํธ ๋ฐฐ์
- Fork the repository
- Create a feature branch
- Submit a pull request with detailed description
MIT License - see LICENSE file for details
- Issues: Report bugs and feature requests via GitHub Issues
- Discussions: Share experiences and ask questions in GitHub Discussions
- Documentation: Check SystemPrompt.md for detailed implementation
Parent-Child Instruction Processing Framework for AI Coding Assistants
PCIP (Parent-Child Instruction Processing) is a three-layer architecture that improves AI coding assistants' context understanding and code quality.
- Your AI, Tiered: PCIP uses a PM โ Parent (expert) โ Child (worker) structure. The PM sizes up the job, then assigns the right Parent.
- Need a Brain? (Explicit Mode): For gnarly, high-stakes tasks, the PM brings in a Parent to design a solid strategy.
- Just Get It Done (Silent Mode): For basic, straightforward work, the Child handles it solo for maximum speed.
- Code generation that ignores overall architecture and domain requirements
- Inconsistent with the existing codebase (security, performance, compliance)
- High iteration overhead due to partial/incomplete implementations
Example (typical pitfalls when asked to โBuild payment systemโ):
- Missing security (PCI DSS), error handling/rollback, fraud prevention, audit logging, refunds
Traditional: User โ AI โ Code โ Risky output
PCIP: User โ PM (Analysis) โ Parent (Guidance) โ Child (Execution)
- Meta Layer: PM
- Conversational analysis, risk assessment (5 levels), expert team composition, external resource coordination
- Parent Layer: Domain Expert
- Security, Performance, UX, Payments, DevOps, Mobile, etc.; defines standards and guidance
- Child Layer: Execution Engine
- Implements precisely within guidance; ensures syntactic correctness and integration quality
A good parent anticipates short-term impacts, potential problems, and long-term consequences. If the task is within the childโs capacity, they set safe boundaries so the child can act freely within them. Otherwise, they tighten guardrails, add tools, or expand context.
- Observe โ Hypothesize โ Ask/Validate โ Enrich with External Knowledge โ Set Guardrails โ Delegate โ Monitor โ Adjust
Pseudocode:
observe()
hypothesis = formHypothesis(context, risks)
unknowns = identifyUnknowns(hypothesis)
resolve(unknowns) via tests/docs/tools
guardrails = defineBoundaries(hypothesis, standards)
delegate(task, guardrails, successCriteria)
result = verify(outputs, tests, logs)
adjust(guardrails, plan) if driftDetected(result)
Short example (Login optimization):
- Symptoms: Higher failure rate, DB load; Hypothesis: Missing rate-limit/session rotation + N+1 queries
- External: OWASP ASVS; Guardrails: No plaintext passwords, attempt thresholds, token rotation, ORM eager loading
- Delegate: Refactor + tests; Monitor: error/latency/query metrics; Adjust: thresholds + sliding window
- Silent (Levels 5โ4): Fast path for simple tasks; minimal interaction; brief summary
- Explicit (Levels 1โ2, complex Level 3): Detailed analysis, plan, user approval, comprehensive documentation
| Level | Risk | Criteria | Examples | Mode |
|---|---|---|---|---|
| 5 | Very Low | Single file, minimal impact | CSS styling, console logs | Silent |
| 4 | Low | 2โ3 files, single domain | Component updates, simple validation | Silent |
| 3 | Moderate | Multi-file or cross-domain | New features, API changes | Conditional |
| 2 | High | Major system changes | Database schema, payment integration | Explicit |
| 1 | Critical | System-wide overhaul | Architecture migration, framework changes | Explicit |
- โloginโ, โsecurityโ, โhardeningโ โ Security Engineer + Backend Architect
- โslowโ, โoptimizeโ, โlatencyโ โ Performance Engineer + Domain Expert
- โdesignโ, โUI/UXโ, โusabilityโ โ UX Designer + Frontend Specialist
- โpaymentsโ, โcommerceโ โ Payment Systems Expert + Security Engineer
- โmobileโ, โresponsiveโ, โappโ โ Mobile Specialist + UX Designer
- Confidence levels: High (direct) / Medium (verify with docs) / Low (consult specialized sources)
- Sources: Technical docs, standards/compliance, real-time library versions, framework best practices
- Child: Syntactic correctness, baseline behavior
- Parent: Domain standards (security, performance, UX)
- PM: Architectural consistency and project-wide coherence
| Phase | Traditional AI | PCIP Framework |
|---|---|---|
| Initial Request | Quick implementation | Analysis & Planning |
| Result Quality | Partial/Incomplete | Complete & Context-aware |
| Iteration Cycles | Multiple fixes required | Minimal revisions needed |
| Overall Time | 1-hour task โ 1 week | Slightly slower start โ Faster completion |
Benefits: Reduced explanation overhead, expert perspectives, higher quality, fewer regressions, consistent architecture.
Limitations: Initial complexity for simple tasks (mitigated by Silent Mode), small learning curve, inherent AI constraints.
- 2.1: Updated
SystemPrompt.md/SystemPromptEN.md(clearer instructions, terminology consistency, refined mode switching criteria). Updated README version badge. - 2.0: Organized bilingual README, standardized risk/mode tables, documented QA workflow.
Prerequisites: AI assistant supporting system prompts (Claude, ChatGPT, etc.), dev environment (Cursor/VS Code).
Quick Start:
- Copy contents of
SystemPrompt.md - Configure your AI assistant (Cursor: User/Project Rules; ChatGPT: Custom Instructions; Claude: System Prompt)
- Start coding
User: "Build a user authentication system"
PCIP: [PM analyzes] โ [Security Parent assigned] โ [Child implements]
Usage Examples:
- Silent Mode:
User: "Change button color to red"
PCIP: Immediate CSS update; Note: low-risk styling change
- Explicit Mode:
User: "Build payment processing system"
PCIP: Level 1 (Critical); Parents: Payments + Security + Backend; Plan with PCI DSS compliance โ Proceed? Y/n
- Ask Parent Opinion:
User: "What does the PCIP parent say?"
Parent (Security): "Add rate limiting and secure session rotation..."
- Risk threshold tuning (Conservative vs Aggressive)
- Expert selection override (e.g., โfocus on UXโ โ UX Designer + Backend Architect)
- Contributing: Fork โ Feature branch โ PR with details
- License: MIT (see
LICENSE) - Support: Issues / Discussions; docs in
SystemPrompt.md