| name | subagent-doc-check |
| description | Subagent-based document consistency check across code and docs. |
Trigger
- "๋ฌธ์ ์ฒดํฌ", "์ ํฉ์ฑ", "doc sync", "drift check"
Read First
CLAUDE.md (Subagent Rules ์น์
)
Do
1. Explore ์๋ธ์์ด์ ํธ 3๊ฐ ๋ณ๋ ฌ ์คํ
์๋ธA โ ์ฝ๋ ์ง์ค ์์ง
ํ๋กฌํํธ (๊ทธ๋๋ก ์ฌ์ฉ):
๋ค์ ํ์ผ์ ์ฝ๊ณ , ๊ฐ ํ์ผ์์ ์ค์ ๊ตฌํ๋ ํญ๋ชฉ์ "์"์ "์ด๋ฆ ๋ชฉ๋ก"์ ์ ํํ ์ถ์ถํ๋ผ.
์ถ์ธกํ์ง ๋ง๊ณ ํ์ผ ๋ด์ฉ๋ง ๊ธฐ๋ฐ์ผ๋ก ๋ตํ๋ผ.
1. src/types/blocks.ts โ BlockType union/enum์ ๋ชจ๋ ๋ฉค๋ฒ ์ด๋ฆ๊ณผ ์ด ๊ฐ์
2. src/components/compose/block-renderers/index.ts โ export๋ ๋ ๋๋ฌ ์ด๋ฆ๊ณผ ์ด ๊ฐ์
3. src/components/compose/block-palette.tsx โ ํ๋ ํธ์ ํ์๋๋ ๋ธ๋ก ํญ๋ชฉ ์ด๋ฆ๊ณผ ์ด ๊ฐ์
4. src/app/api/projects/[id]/ โ ํ์ ํด๋ ๋ชฉ๋ก (๊ฐ๊ฐ์ด API route)
5. src/lib/constants.ts โ PLATFORM_PRESETS ํค ๋ชฉ๋ก๊ณผ ๊ฐ์, CATEGORY ๊ด๋ จ ์์ ๋ชฉ๋ก๊ณผ ๊ฐ์
์ถ๋ ฅ ํ์:
- BlockType: [๋ชฉ๋ก] (N๊ฐ)
- Renderers: [๋ชฉ๋ก] (N๊ฐ)
- Palette: [๋ชฉ๋ก] (N๊ฐ)
- API Routes: [๋ชฉ๋ก] (N๊ฐ)
- Platforms: [๋ชฉ๋ก] (N๊ฐ)
- Categories: [๋ชฉ๋ก] (N๊ฐ)
์๋ธB โ ๋ฌธ์ ์ซ์ ์ถ์ถ
ํ๋กฌํํธ (๊ทธ๋๋ก ์ฌ์ฉ):
๋ค์ ๋ฌธ์๋ฅผ ์ฝ๊ณ , ๊ฐ ๋ฌธ์์์ ์ธ๊ธ๋ ํญ๋ชฉ์ "์"์ "์ด๋ฆ ๋ชฉ๋ก"์ ์ ํํ ์ถ์ถํ๋ผ.
์ถ์ธกํ์ง ๋ง๊ณ ๋ฌธ์ ๋ด์ฉ๋ง ๊ธฐ๋ฐ์ผ๋ก ๋ตํ๋ผ.
1. docs/ref/SCHEMA-INDEX.md โ BlockType ๋ชฉ๋ก๊ณผ ๊ฐ์, API endpoint ๋ชฉ๋ก๊ณผ ๊ฐ์
2. docs/status/FEATURE-MATRIX.md โ ๊ธฐ๋ฅ๋ณ ์ํ ํ์ ๊ธฐ๋ฅ๋ช
๊ณผ ์ด ํ ์
3. docs/status/PROJECT-STATUS.md โ Completed ํญ๋ชฉ ์, In Progress ํญ๋ชฉ ์
์ถ๋ ฅ ํ์:
- SCHEMA BlockType: [๋ชฉ๋ก] (N๊ฐ)
- SCHEMA API: [๋ชฉ๋ก] (N๊ฐ)
- FEATURE-MATRIX rows: [๋ชฉ๋ก] (N๊ฐ)
- PROJECT-STATUS completed: N๊ฐ, in-progress: N๊ฐ
์๋ธC โ CLAUDE.md ์ฒด์ธ ์ถ์ถ
ํ๋กฌํํธ (๊ทธ๋๋ก ์ฌ์ฉ):
๋ค์ CLAUDE.md ํ์ผ์ ์ฝ๊ณ , ํ์ผ ์/๋ธ๋ก ์/์ปดํฌ๋ํธ ์ ๋ฑ ์ซ์๊ฐ ์ธ๊ธ๋ ๋ถ๋ถ์ ๋ชจ๋ ์ถ์ถํ๋ผ.
1. src/components/compose/CLAUDE.md
2. src/components/compose/block-renderers/CLAUDE.md
3. src/components/CLAUDE.md
4. src/lib/CLAUDE.md
5. src/services/CLAUDE.md
์ถ๋ ฅ ํ์:
- [ํ์ผ๊ฒฝ๋ก]: "[์ธ์ฉ๋ฌธ]" โ ์ซ์ N
2. ๋ฉ์ธ์์ ๋น๊ต
์ถฉ๋ ํด๊ฒฐ ๊ท์น: ์ฝ๋๊ฐ ์ง์ค (Code is Truth)
- ์๋ธA(์ฝ๋) vs ์๋ธB(๋ฌธ์) ๋ถ์ผ์น โ ๋ฌธ์๋ฅผ ์ฝ๋์ ๋ง์ถฐ ์์
- ์๋ธA(์ฝ๋) vs ์๋ธC(CLAUDE.md) ๋ถ์ผ์น โ CLAUDE.md๋ฅผ ์ฝ๋์ ๋ง์ถฐ ์์
- ์ ๋๋ก ์ฝ๋๋ฅผ ๋ฌธ์์ ๋ง์ถ์ง ์์
๋น๊ต ํญ๋ชฉ:
| ๋น๊ต | ์๋ธA ํค | ์๋ธB/C ํค |
|---|
| ๋ธ๋ก ์ | BlockType ๊ฐ์ | SCHEMA BlockType ๊ฐ์ |
| ๋ ๋๋ฌ ์ | Renderers ๊ฐ์ | CLAUDE.md ๋ธ๋ก ๋ ๋๋ฌ ์ |
| API ์ | API Routes ๊ฐ์ | SCHEMA API ๊ฐ์ |
| ํ๋ ํธ ์ | Palette ๊ฐ์ | CLAUDE.md ํ๋ ํธ ์ |
3. ์์
- ๋ถ์ผ์น ํญ๋ชฉ๋ง ๋ฌธ์ ์ชฝ์์ ์ฝ๋ ์ง์ค์ ๋ง์ถฐ ์์
- ์์ ๋์ ํ์ผ: SCHEMA-INDEX.md, FEATURE-MATRIX.md, PROJECT-STATUS.md, ๊ฐ CLAUDE.md
Validation
- ์๋ธ์์ด์ ํธ 3๊ฐ๊ฐ ๋ณ๋ ฌ ์คํ๋์๋์ง ํ์ธ
- ๋๋ฆฌํํธ 0๊ฑด์ด๋ฉด "์ ํฉ์ฑ OK" ๋ณด๊ณ
- ๋๋ฆฌํํธ ๋ฐ๊ฒฌ ์ ํญ๋ชฉ๋ณ ์์ ์๋ฃ ํ ๋ชฉ๋ก ์ถ๋ ฅ
Report Format
## ์ ํฉ์ฑ ์ฒดํฌ ๊ฒฐ๊ณผ
- ์ฝ๋ ์ง์ค: ๋ธ๋ก N์ข
, API M๊ฐ, ํ๋ฆฌ์
K๊ฐ
- ๋ฌธ์ ๋๋ฆฌํํธ: X๊ฑด (์์ ์๋ฃ / ๋ฏธ์์ )
- [ํ์ผ]: [ํญ๋ชฉ] ์ฝ๋=N, ๋ฌธ์=M โ ์์ ๋จ
- CLAUDE.md ๋๋ฆฌํํธ: Y๊ฑด (์์ ์๋ฃ / ๋ฏธ์์ )
- [ํ์ผ]: [ํญ๋ชฉ] ์ฝ๋=N, CLAUDE.md=M โ ์์ ๋จ
Drift Example
์ฝ๋์ BlockType์ด 13์ข
์ด์ง๋ง SCHEMA-INDEX์ 12์ข
์ผ๋ก ๊ธฐ๋ก:
- docs/ref/SCHEMA-INDEX.md: BlockType ์ฝ๋=13, ๋ฌธ์=12 โ "usage-steps" ๋๋ฝ โ ์ถ๊ฐํ์ฌ ์์ ๋จ