| name | reverse-engineer-backend-docs |
| description | Analyze an existing backend codebase and update `docs/backend` so architecture, policies, strategies, getting-started notes, and design documentation reflect actual code instead of generic playbook assumptions. |
Reverse Engineer Backend Docs
๋ชฉ์
๊ธฐ์กด ๋ฐฑ์๋ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ๋ถ์ํด ์ค์ ์ฝ๋ ๊ตฌ์กฐ์ ๋ฐ๋ณต ๊ตฌํ ๋ฐฉ์์ docs/backend ์ง์ ์์คํ
์ ๋ฐ์ํ๋ค.
์ด ์คํฌ์ ํ๋ ์ด๋ถ ์ผ๋ฐ๋ก ์ ๋ณต์ ํ์ง ์๋๋ค. ์ค์ ๋ชจ๋, ํจํค์ง, ์ฑ
์ ๊ฒฝ๊ณ, ์์กด ๋ฐฉํฅ, ์ ์ฑ
์ ํธ, ๊ตฌํ ์ ๋ต, ๋ ๊ฑฐ์ยทํผ์ฌ ๊ตฌ๊ฐ์ ์ฝ๋ ๊ทผ๊ฑฐ์ ํจ๊ป ๋ฌธ์ํํ๋ค.
์ ์ฉ ๋ฒ์
ํฌํจ:
docs/backend/README.md
docs/backend/getting-started.md
docs/backend/architecture/**
docs/backend/policies/**
docs/backend/design/**
์ ์ธ:
- frontend ๋ฌธ์
- PRD
- ๊ตฌํ ์ฝ๋ ๋ณ๊ฒฝ
- ์ฝ๋ ๊ทผ๊ฑฐ ์์ด ๋ง๋๋ ์ ์ ์ฑ
๋๋ ์ ์ํคํ
์ฒ ๊ท์น
์์ธ:
- ์ต์์ Backend ๋ฌธ์ ํ ๊ฒฝ๋ก๊ฐ ๋ฐ๋ ๋๋ง
AGENTS.md ๋ฌธ์ ๋งต์ ๊ฐฑ์ ํ๋ค.
์ด์ ๋ชจ๋ธ
reverse-engineer-backend-docs๋ ์ฝ๋ ๋ถ์ ๊ฒฐ๊ณผ๋ฅผ ๋ฌธ์ ํ๋ณด๋ก ๋ง๋ค๊ณ , ๋ฌธ์ ๋ผ์ฐํ
๊ธฐ์ค์ ๋ฐ๋ผ docs/backend๋ฅผ ์์ฑยท๊ฐฑ์ ํ๋ค.
์์ฒญ ๋ฒ์ ํ์ธ
-> ์คํ ๋ชจ๋ ๊ฒฐ์
-> ์ฝ๋๋ฒ ์ด์ค census์ ์ํ๋ง
-> ๊ธฐ์กด docs/backend ๋ถ๋ฅ
-> ๋ฌธ์ ์์ ๊ฒฝ๊ณ ์ค๊ณ
-> mode๋ณ ์์ฑยท๊ฐฑ์ ยท์ด์ ยท๋ณํฉ
-> ์ฝ๋ ๊ทผ๊ฑฐ์ ๋ฌธ์ ๋งต ๊ฒ์ฆ
ํต์ฌ ์์น:
- ์ฝ๋์์ ํ์ธํ ์ฌ์ค๋ง ๋ฌธ์ํํ๋ค.
- ์ค์ ํ๋ก์ ํธ์ ์ด๋ฆ๊ณผ ์ฑ
์ ๊ฒฝ๊ณ๋ฅผ ์ฐ์ ํ๋ค.
- ํ๋ ์ด๋ถ ๋ ์ด์ด๋ช
์ ๋ถ์ ๋ ์ฆ๋ก๋ง ์ฐ๊ณ ์ถ๋ ฅ ๊ตฌ์กฐ๋ก ๊ฐ์ ํ์ง ์๋๋ค.
- ์์ ๋ฌธ์๋ ์์ ์ ์ธ ์ง์
์ ๋ง ์์ ํ๊ณ , ์ธ๋ถ ๊ตฌํ ๋ชฉ๋ก์ ๊ฐ์ฅ ๊ฐ๊น์ด README๋ strategy ๋ฌธ์๊ฐ ์์ ํ๋ค.
- ์ ์ฑ
, ๊ตฌํ ์ํคํ
์ฒ, ๊ตฌํ ์ ๋ต, ์ค๊ณ ์๋๋ฅผ ๋ค๋ฅธ ์์น์ ๋๋ค.
- ๋ํ ์ฝ๋๋ฒ ์ด์ค์์๋ ์ ์ฒด ์ ๋
๋ณด๋ค census, ์ฐ์ ์์ํ, ์ ํ ์ํ๋ง, confidence report๋ฅผ ์ฐ์ ํ๋ค.
์ฐธ์กฐ ๋ฌธ์
๋จผ์ references/reference-map.md๋ฅผ ์ฝ๊ณ ๋ฌธ์ ๊ณ์ธต์ ํ์ธํ๋ค.
ํต์ฌ ์ฐธ์กฐ:
์คํ ๋ชจ๋
๋ชจ๋ ๋ชจ๋๋ ๋จผ์ inspect ์์ค์ ์ฌ์ ํ๋จ์ ์ํํ๋ค.
| ๋ชจ๋ | ๋ชฉ์ | ํ์ผ ๋ณ๊ฒฝ |
|---|
inspect | ์ฝ๋ ๊ตฌ์กฐ, ๋ฌธ์ ํ๋ณด, ๊ธฐ์กด ๋ฌธ์ ๋ถ๋ฅ, ์ถ์ฒ ํ์ ๋ชจ๋๋ฅผ ๋ณด๊ณ ํ๋ค. | ์์ |
generate | ๋น์ด ์๊ฑฐ๋ ์ถฉ๋ ์๋ ์์ญ์ ์ค์ ์ฝ๋ ๊ธฐ๋ฐ ๋ฌธ์๋ฅผ ์๋ก ๋ง๋ ๋ค. | ์ถ๊ฐ ์ค์ฌ |
migrate | ์ค์ ์ฝ๋์ ์ถฉ๋ํ๋ ๊ธฐ์กด backend ๋ฌธ์ ์ฒด๊ณ๋ฅผ ์ฝ๋ ๊ธฐ๋ฐ ๊ตฌ์กฐ๋ก ์ด์ ํ๋ค. | ์ด๋ยท์ญ์ ํ๋ณด ํฌํจ |
merge | ๊ธฐ์กด ๊ตฌ์กฐ๋ฅผ ๋ณด์กดํ๋ฉด์ ์ฝ๋ ๊ทผ๊ฑฐ๊ฐ ์ฝํ ๋ถ๋ถ์ ๋ณด๊ฐํ๋ค. | ๋ณด๊ฐ ์ค์ฌ |
10๋ง ๋ผ์ธ ์ด์ ๋๋ ๋ชจ๋ ์๊ฐ ๋ง์ ์ ์ฅ์๋ ์ฌ์ฉ์๊ฐ migrate๋ฅผ ์ง์ ์์ฒญํด๋ ์ฆ์ ํ์ผ์ ๋ฐ๊พธ์ง ์๋๋ค. ๋จผ์ inspect ๊ณํ์๋ฅผ ์์ฑํ๊ณ ๋จ๊ณ๋ณ migrate ์คํ ํ์ธ์ ๋ฐ๋๋ค.
๋ชจ๋ ์ ํ๊ณผ ์ง๋ฌธ ๊ธฐ์ค์ backend-document-routing.md๋ฅผ ๋ฐ๋ฅธ๋ค.
์์
ํ๋ฆ
1. ์
๋ ฅ ๋ฒ์์ ์คํ ๋ชจ๋ ์ ๋ฆฌ
- ๋ถ์ ๋์ ์ฝ๋๋ฒ ์ด์ค ๊ฒฝ๋ก๋ฅผ ์ ํ๋ค. ์๋ต๋๋ฉด ํ์ฌ ์์
๋๋ ํ ๋ฆฌ๋ฅผ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๋ณธ๋ค.
- ๋ฌธ์ ์ถ๋ ฅ ๊ฒฝ๋ก๋ฅผ ์ ํ๋ค. ์๋ต๋๋ฉด
docs/backend๋ฅผ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๋ณธ๋ค.
- ์คํ ๋ชจ๋๋ฅผ
inspect, generate, migrate, merge ์ค ํ๋๋ก ์ ํ๋ค.
- ๋ชจ๋๊ฐ ์๋ต๋๋ฉด ๋จผ์
inspect๋ก ๊ตฌ์กฐ์ ๋ฌธ์ํ ๊ณํ์ ๋ณด๊ณ ํ๋ค.
- ๋ํ ์ ์ฅ์์
inspect ๊ณํ์์๋ ๊ท๋ชจ ์ฐ์ , ์ ์ธ ๊ฒฝ๋ก, ์ฐ์ ์์, ์ํ๋ง ์์ฐ, 1์ฐจ migrate ๋ฒ์, ํ์ migrate/backlog ๋ฒ์๋ฅผ ํฌํจํ๋ค.
2. ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ญ๊ณตํํ๋ค
- ๋ฉํฐ ๋ชจ๋์ธ์ง ๋จ์ผ ๋ชจ๋์ธ์ง ๋จผ์ ๊ตฌ๋ถํ๋ค.
- ์ค์ ๋ชจ๋๋ช
, ํจํค์ง๋ช
, ํด๋์ค ์ญํ , ์ด๋
ธํ
์ด์
, ์ธํฐํ์ด์ค, ์์กด ๋ฐฉํฅ์ ๊ทผ๊ฑฐ๋ก ๊ธฐ๋กํ๋ค.
- ์์ ์ ์ธ ์ฝ๋, ๋ ๊ฑฐ์ ์ฝ๋, ๋ถ๋ถ ๋ง์ด๊ทธ๋ ์ด์
, ํ๋ณ ๊ด์ต ์ฐจ์ด, ํผ์ฌ๋ ๊ตฌํ ๋ฐฉ์์ ๊ตฌ๋ถํ๋ค.
- ๊ตฌํ ์ ๋ต ํ๋ณด๋
๊ถ์ฅ ์ฃผ๋ฅ, ์ํฉ๋ณ ๋ณํ, ๋ ๊ฑฐ์ ํ์ฉ, ์ถฉ๋/ํ์ธ ํ์, ๋จ๋ฐ์ฑ ์ ์ธ๋ก ๋ถ๋ฅํ๋ค.
- ๋ถ์ ์ ์ฐจ์ ๋ฉ๋ชจ ํ์์ codebase-analysis-guide.md๋ฅผ ๋ฐ๋ฅธ๋ค.
3. ๊ธฐ์กด backend ๋ฌธ์๋ฅผ ๋ถ๋ฅํ๋ค
- ๊ธฐ์กด
docs/backend๊ฐ ์๋์ง, placeholder ์์ค์ธ์ง, ์ค์ ์ฝ๋์ ์ผ์นํ๋์ง, ํ๋ ์ด๋ถ ์ผ๋ฐ๋ก ๊ณผ ์ถฉ๋ํ๋์ง ํ๋จํ๋ค.
- ๊ธฐ์กด ๋ฌธ์๋ฅผ
keep, merge, migrate, remove, archive ํ๋ณด๋ก ๋ถ๋ฅํ๋ค.
- ์ฌ๋์ด ์์ฑํ ๋ณด์กด ๊ฐ์น๊ฐ ํฐ ๋ฌธ์๋ ์ญ์ ํ๊ฑฐ๋ active path ๋ฐ์ผ๋ก ์ฎ๊ธฐ๊ธฐ ์ ์ ์ฌ์ฉ์ ํ์ธ์ ๋ฐ๋๋ค.
- ๋ถ๋ฅ ๊ธฐ์ค์ backend-document-routing.md๋ฅผ ๋ฐ๋ฅธ๋ค.
4. ๋ฌธ์ ์์ ๊ฒฝ๊ณ๋ฅผ ์ค๊ณํ๋ค
docs/backend/README.md๋ backend ํ์ ์์ญ์ ๋จ์ผ ์ง์
์ ๋ง ์์ ํ๋ค.
architecture/README.md, policies/README.md, design/README.md๋ ๊ฐ ์์ญ์ ๊ฐ์ฅ ๊ฐ๊น์ด ๋ฌธ์ ๋งต์ ์์ ํ๋ค.
- ์ ์ฑ
, ๊ตฌํ ์ํคํ
์ฒ, ๊ตฌํ ์ ๋ต, ์ค๊ณ ์๋๋ ๊ด์ฌ์ฌ๋ณ๋ก ๋ค๋ฅธ ์์น์ ๋๋ค.
- ๊ฐ์ ๊ท์น์ด๋ ์ค๋ช
์ ํ ๋ฌธ์์๋ง ์๋ฌธ์ผ๋ก ๋๊ณ ๋ค๋ฅธ ๋ฌธ์์์๋ ๋งํฌ์ ์ ์ฉ ๋งฅ๋ฝ๋ง ์ด๋ค.
- ๋ฌธ์ ๋ผ์ฐํ
๊ธฐ์ค์ backend-document-routing.md๋ฅผ ๋ฐ๋ฅธ๋ค.
5. ์คํ ๋ชจ๋์ ๋ง๊ฒ ์์ฑ ๋๋ ๊ฐฑ์ ํ๋ค
inspect: ํ์ผ์ ์์ ํ์ง ์๊ณ ๋ถ์ ๊ฒฐ๊ณผ, ๋ฌธ์ ํ๋ณด, ๊ธฐ์กด ๋ฌธ์ ๋ถ๋ฅ, ์ถ์ฒ ํ์ ๋ชจ๋๋ฅผ ๋ณด๊ณ ํ๋ค.
generate: ๋น์ด ์๊ฑฐ๋ ์ถฉ๋ ์๋ ์์ญ์ ์ค์ ์ฝ๋ ๊ธฐ๋ฐ ๋ฌธ์๋ฅผ ์๋ก ๋ง๋ ๋ค.
migrate: ์ค์ ์ฝ๋์ ์ถฉ๋ํ๋ ๊ธฐ์กด backend ๋ฌธ์ ์ฒด๊ณ๋ฅผ ์ฝ๋ ๊ธฐ๋ฐ ๊ตฌ์กฐ๋ก ์ด์ ํ๋ค.
merge: ๊ธฐ์กด ๊ตฌ์กฐ๋ฅผ ๋ณด์กดํ๋ฉด์ ์ฝ๋ ๊ทผ๊ฑฐ๊ฐ ์ฝํ ๋ถ๋ถ์ ๋ณด๊ฐํ๋ค.
- ํ์ผ๋ณ ์์ฑ ๊ตฌ์กฐ๋ backend-doc-templates.md๋ฅผ ๋ฐ๋ฅธ๋ค.
๊ฒ์ฆ
์๋ฃ ์ ์๋ ํญ๋ชฉ์ ํ์ธํ๋ค.
- ์์ฑยท์์ ํ ๋ฌธ์๊ฐ ์ค์ ์ฝ๋ ๊ทผ๊ฑฐ์ ์ฐ๊ฒฐ๋๋์ง ์ํ ๊ธฐ์ค์ผ๋ก ํ์ธํ๋ค.
- ๊ตฌํ ์ ๋ต ๋ฌธ์๊ฐ ๋จ์ผ ์์๋ง ์ค๋ช
ํ์ง ์๊ณ ์ ์ฉ ๋ฒ์, ๋ฐ๋ณต ๊ทผ๊ฑฐ, ๋ณํ, ์์ธ, ๋ ๊ฑฐ์ ์ฃผ์์ ์ ํจ๊ป ๋ด๋๋ค.
- ์ฝ๋์์ ํ์ธ๋์ง ์์ ์ ์ฑ
, ์คํ ๋ฐฉ๋ฒ, ๊ตฌํ ํจํด์ ๋ง๋ค์ง ์์๋ค.
- ๊ฐ์ฅ ๊ฐ๊น์ด
README.md ๋ฌธ์ ๋งต์ด ์ถ๊ฐยท์ญ์ ยท์ด๋๋ ํ์ ๋ฌธ์๋ฅผ ๋ฐ์ํ๋ค.
- ์์ README๊ฐ ํ์ ์ ๋ต ๋ฌธ์๋ ๋ด๋ถ ํ์ผ ๋ชฉ๋ก์ ์ง์ ์์ ํ์ง ์๋๋ค.
- ์ ์ฑ
, architecture guideline, strategy ์ฌ์ด์ ์๋ฌธ ์ค๋ณต์ด ๋จ์ ์์ง ์๋ค.
์คํฌ ๋ฌธ์ ์์ฒด๋ฅผ ์์ ํ ๋ค์๋ ์๋ ๊ฒ์ฆ์ ์ํํ๋ค.
python3 /Users/a1004/.codex/skills/.system/skill-creator/scripts/quick_validate.py .agents/skills/reverse-engineer-backend-docs
python3 .agents/skills/write-structured-artifact/scripts/check_structured_artifact.py .agents/skills/reverse-engineer-backend-docs/SKILL.md .agents/skills/reverse-engineer-backend-docs/references/*.md
์๋ฃ ์ฐ์ถ๋ฌผ
- ๋ณ๊ฒฝํ ๋ฌธ์ ๊ฒฝ๋ก ๋ชฉ๋ก
- ์ฝ๋ ๊ทผ๊ฑฐ์ ์ฐ๊ฒฐ๋ ์ฃผ์ ๋ฌธ์ํ ํ๋จ
- ๋ถ์ ๋ฒ์, ์ ์ธ ๋ฒ์, coverage/confidence, ๋จ์ ๋ฏธ๋ถ์ ์์ญ
- ์ ์งยท๋ณํฉยท์ด์ ยท์ญ์ ยทarchive ์ฒ๋ฆฌ ๊ฒฐ๊ณผ
- ๋จ์ ๋ถํ์ค์ฑ๊ณผ ์ฌ์ฉ์ ํ์ธ์ด ํ์ํ ํญ๋ชฉ