[Unity] AI를 사용한 프로토타이핑 파이프라인
![[Unity] AI를 사용한 프로토타이핑 파이프라인](/_next/image?url=https%3A%2F%2Fdata.develog.develrocket.com%2Fupload%2Fdevelog%2Fuser_1776858831954%2F1790480885809-tfnj78%2Fcaptured.png&w=3840&q=75)
댓글 0
댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요.
나(이하 사용자)는 이 Kit이 설치된 폴더에서 CLI를 실행하면 모델과 지침이 지정된 Root 에이전트와 소통하게 된다.
요소 | 내용 |
|---|---|
Root | main session. 사용자와 소통하는 유일한 agent. 직접 작업하지 않는다 |
작업 agent 5개 | planner, architect, test-writer, developer, build |
평가 agent 5개 | plan-reviewer, design-reviewer, code-reviewer, spec-reviewer, qa |
지시·보고 |
|
현재 기준 문서 |
|
규칙 강제 | Claude Code settings, agent 파일 frontmatter, hook 5개 |
Unity 연동 | CoplayDev MCP for Unity(HTTP) - 무료라서 선택했다, Unity Test Framework |
각 에이전트의 모델 선정 방식은 아직 확정은 아닌데, 이 파이프라인 밖에 있는 AI와 이야기하며 각 모델의 장단점을 고려한 배정을 했다. 이후 /usage를 통해 모델별 사용량을 확인하여 수정할 수 있다.
에이전트 별 허용 툴도 따로 설정했다. 예를들면 architect는 Unity MCP의 manage_prefabs 툴을 사용할 수 없다.
| agent | model | 역할 | 쓸 수 있는 경로 | Unity MCP | 평가 agent |
|---|---|---|---|---|---|
| root | opus | 요청 구체화, 계획, 위임, 보고 | 지시 폴더의 Root 파일 5종 | 없음 | - |
| planner | opus | 기획서 | Docs/Project/Design/, MAP.md | 없음 | plan-reviewer |
| architect | opus | 설계서, asmdef, skeleton | Docs/Project/Architecture/, Assets/Scripts/, MAP.md | compile 확인, package | design-reviewer, qa |
| test-writer | sonnet | 구현 전 test | Assets/Tests/, MAP.md | compile 확인 | spec-reviewer, qa |
| developer | sonnet | 구현 | Assets/(Tests 제외), MAP.md | scene·prefab 조작, test 실행 | code-reviewer, spec-reviewer, qa |
| build | haiku | Windows build | 보고서만 | build | qa |
| plan-reviewer | opus | 기획서 평가 | 보고서만 | 없음 | - |
| design-reviewer | opus | 설계·skeleton 평가 | 보고서만 | 없음 | - |
| code-reviewer | opus | code 평가 | 보고서만 | 없음 | - |
| spec-reviewer | opus | test·구현과 기획서 일치 평가 | 보고서만 | 없음 | - |
| qa | haiku | compile, test, build, smoke test 판정 | 보고서만 | test 실행 | - |
오타 수정 등의 단순한 지시도 계획, 검수, 개발을 나눠 하므로 낭비라고 여겼다. 간단한 지시는 다른 경로를 타도록 했다.
경로 | 조건 | 흐름 |
|---|---|---|
full | light 조건을 하나라도 만족하지 않음 | INSTRUCTION 승인 → Root_Plan 승인 → 기능별 Planner → Architect → TestWriter → Developer → 마지막 Build |
light | 기획서·설계서 변경 없음 AND 새 기능 아님 AND 예상 변경 파일 3개 이하 | INSTRUCTION 승인 → Developer → CodeReviewer + QA → Root_Result |
127.0.0.1:8080/mcp 인데, agent에는localhost 라고 적어뒀었다. 그런데 Windows에서는 이게 ipv6로 먼저 해석돼서 ::1 이 되어버리는 문제가 있었다. 작업 중간에 해당 문제가 발생해서 mcp 연결이 불가해졌다. 지시를 종결로 처리(지시가 진행중일 땐 파이프라인 자체의 수정을 막아두었다) 하고, 127.0.0.1을 명시하여 해당 문제를 해결한 뒤, 다시 작업을 이어가라는 별도 지시를 하달해야했다.throw new System.NotImplementedException()로 처리하도록 했다. Developer는 해당 스켈레톤의 변경이 필요하면 BLOCKED(DESIGN_CHANGE, TEST_DEFECT)로 보고한다.
AI의 작업 내역을 일일이 저장해두면 나중에 읽기 편할 줄 알았는데, 그 대신 읽기 싫어지게 하는 역할을 해줬다.
위 이미지는 3매치 퍼즐에 발라트로의 인크리멘탈 장르를 결합한 게임 프로토타입을 지시한 것이다. 문서의 양에 조금 압도되었다.

위의 문서들을 다 읽는 것은 AI의 역할인 것 같고, 나는 내 지시가 잘 전달되었는지 INSTRUCTION.md 를 읽고 파악하면 되고, Root가 내 지시를 계획으로 잘 옮겨놨는지 Root_Plan.md를 초기에 잘 읽어두면 된다. 이 두 파일로 결과물이 결정되므로 꼼꼼이 읽어야겠다는 생각이 들었다.
예를들면 AC(Acceptance Criteria)는 INSTRUCTION.md에 있고, T(Task)는 Root_Plan.md에 있다. 그리고 AC들이 각각 어떤 태스크에 할당되었는지도 같은 곳에 있다.
| AC | Task |
|---|---|
| AC-01 | T01, T02, T03, T04 |
| AC-02 | T01, T02, T03, T04 |
| AC-03 | T01, T02, T03, T04 |
| AC-04 | T01, T02, T05, T06, T14, T07, T08 |
| AC-05 | T09, T10, T11, T12 |
| AC-06 | T09, T10, T11, T12 |
| AC-07 | T05, T06, T14, T08, T09, T10, T11, T12 |
| AC-08 | T05, T06, T14, T07, T08, T12 |
| AC-09 | T09, T10, T12 |
| AC-10 | T09, T10, T11, T12 |
| AC-11 | T09, T10, T12 |
| AC-12 | T02, T03, T04, T06, T14, T07, T08, T10, T11, T12 |
| AC-13 | T13 |

최초 지시는 3줄 정도였고, 그 지시가 Root의 구체화에 의해 맥락, 목표, 제한, 범위 밖(mvp밖), 산출물, 완료조건 등을 포함한 지시 파일이 되었다. 지시파일과 그로 인한 Root_Plan.md를 읽는 것으로 기대했던 것으로부터 크게 벗어나지 않는 결과물이 나왔다.
중간 중간에 토큰 사용량 제한에 도달해서, 5시간을 기다리기를 3번 정도 반복해 총 4회 분량의 토큰 뭉탱이를 썼다. /usage 로 보면 오래 유지되는 세션에 컨텍스트가 쌓이는 것(아마 Root 세션), 그리고 하위 에이전트(특히 developer)의 모델 변경 정도를 고려해볼 수 있을 것 같다. 특히 Root의 컨텍스트 절약은 시도할 가치가 있어보인다.
오래 걸려서 시켜놓고 발헤임 하기에는 좋았다. ㅇㅅㅇ;;

![[Unity] LOD](https://data.develog.develrocket.com/upload/develog/user_1777093328305/1789912609623-ww36y9/_____2026-09-20_225147.png)