기획 · 에셋 · 코드 · 검증 · 자기진화를 하나의 파이프라인으로 잇습니다. 게임 하나가 아니라, 게임을 만드는 생산 시스템 자체가 결과물입니다.
어디서 막혔는지, AI가 무엇을 했는지, 만든 코드가 실제로 도는지 알 수 없습니다.
어제 만든 것을 오늘이 재활용하지 못합니다. 반복해 지어도 쌓이는 것이 없습니다.
npm run generate -- "<아이디어>" 한 줄이면 오케스트레이터가 Codex CLI를 단계별로 부릅니다. 코드와 이미지가 한 흐름이고, 결과는 run 폴더에 그대로 남습니다. 아래 단계를 눌러 각 산출물을 확인하세요.
재미 규칙과 함께 엔진이 실제로 할 수 있는 것을 기획서에 같이 담습니다. 범위 밖(예: "3D MMO")은 조용히 버리지 않고 다운스코프로 표시합니다.
image_gen이 스프라이트를 만들면 magenta-key로 배경을 빼고 atlas로 묶어 Canvas에 그립니다. DOM 요소가 아니라 실제 그림으로 렌더합니다.
standalone Canvas 게임을 생성합니다. 생성에는 Codex CLI가 필요하지만, 플레이는 아무 브라우저에서나 됩니다. 결과는 run 폴더에 그대로 남습니다.
화면 없이(headless) 실제로 플레이해 입력이 캐릭터를 움직이는지 · 점수가 바뀌는지 · 승패에 닿는지를 확인합니다. 멈춘 화면은 통과시키지 않습니다.
완성한 게임은 다음 게임의 재료가 됩니다. 앞 게임에서 뽑은 템플릿을 다음 게임이 물려받아 재사용하고, 같은 에러가 세 번 이상이면 사전 체크 룰 후보가 됩니다. 룰 활성화는 사람 확인을 거칩니다.
설계로만 있던 게임 스튜디오 이론을 실제 작동 코드로 옮긴, 다섯 가지 핵심 결정입니다. 각 결정은 공개 저장소의 모듈로 재현됩니다.
Node가 코드 생성과 이미지 생성을 한 파이프라인에 묶습니다. 이미지는 에이전트가 한 말이 아니라 실제 파일로 회수합니다.
codex-cli.ts재미 규칙과 엔진이 실제 할 수 있는 것을 함께 담아, 구현 불가능한 디자인을 걸러냅니다. 범위 밖은 조용히 버리지 않고 다운스코프로 표시합니다.
template-api.ts게임이 실제로 움직이고 점수가 바뀌고 승패에 닿는지 화면 없이 확인합니다. 멈춘 화면은 통과시키지 않습니다.
reachability.ts완성한 게임은 재사용 스캐폴드로 쌓이고, 같은 에러가 세 번 이상이면 사전 체크 룰 후보가 됩니다. 룰 활성화는 사람이 확인합니다.
evolution.ts생성한 스프라이트를 배경 제거·묶음 처리해 실제 그림으로 그립니다. HTML 요소가 아니라 Canvas에 직접 렌더합니다.
assets pipeline아래 둘은 파이프라인이 실제로 생성한 게임을 그 자리에서 플레이하는 화면입니다. 화면을 클릭해 포커스한 뒤 방향키 / WASD로 이동, Space로 대시하세요.
두 게임 모두 파이프라인이 실제로 생성한 결과물입니다.
기획 → 검증 → 자기진화라는 같은 5단계를 게임 · 앱 · 문서로 확장합니다. 게임은 위에서 실증했고, 앱은 별도 디자인 스튜디오로, 문서는 생성 샘플로 이어집니다.
제한 시간 안에 흩어진 달빛 고사리(mote)를 모두 모으면 승리하는 탑다운 대시 게임입니다. 대시로 순간 가속해 시간 안에 목표에 도달합니다.
WASDSpace (짧은 쿨다운)winTarget = 2개 수집 시 승리failTime) 초과 시 패배play → win / fail 3상태 머신// game.html — 단일 Canvas, 외부 의존 없음 update(dt) → 입력·대시·수집·승패 판정 (순수 로직) render() → 배경·모트·플레이어·UI·오버레이 (표현) loop(t) → requestAnimationFrame 게임 루프 reset() → 상태 초기화 (재시작)
update(규칙)와 render(화면)를 분리해, 규칙은 화면과 독립적으로 검증됩니다.
true (승·패 모두 도달)| 오케스트레이터 | Node · TypeScript · Codex CLI (codex exec --json · 내장 image_gen) |
| 모듈 | codex-cli · generate · template-api · reachability · evolution |
| 검증 | Chrome headless · 관찰 digest · 단계 실행 커맨드 |
| 에셋 | image_gen → 배경 제거 → atlas → Canvas drawImage |
| 모니터 | React 18 · Vite 5 · TypeScript strict · Tailwind (생성 결과 · 메모리 시각화) |
| 산출 | runs/<id>/ (기획 · 에셋 · 게임 · 검증 · 메타) · MIT |
초기 버전(브라우저 Gemini · DOM 웹앱)은 레거시입니다 — 진화 궤적의 증거로만 남겼습니다.
멀티스텝 오케스트레이션 · 플레이 가능성 검증(멈춘 화면 차단) · 자기진화(누적 메모리 · 사람 승인) · 비용/모델 인식. 에이전트를 "돌려보는" 게 아니라 운영하는 감각입니다.
AI로 게임을 기획→에셋→코드→검증까지 만드는 시스템입니다. 다중 관점 교차검증과 플레이 가능성 검증 패턴이 다른 작업에도 그대로 이어집니다.
"AI가 게임을 만들어준다"가 아닙니다. 만드는 과정을 검증하고 누적하도록, 여섯 개의 운영 규율을 설계해 파이프라인에 심었습니다.
무엇을 통과해야 하는지를 생성 전에 정합니다. 만든 뒤 점수를 매기는 게 아니라, 기준을 먼저 세웁니다.
게임 규칙은 순수 로직으로, 렌더·플랫폼은 바깥으로. 경계를 넘기 전에 반드시 이름을 붙입니다.
코드가 도는 것과 화면에 실제로 나타나는 것을 각각 확인합니다. 통과 테스트가 실제 플레이를 대신하지 않습니다.
플레이 가능성을 통과하지 못하면 배포하지 않습니다. 되돌림에는 상한을 둬, 무한 루프 대신 종료합니다.
자기진화로 쌓인 규칙은 사람이 확인한 뒤에만 켜집니다. 자동으로 스스로 반영하는 일은 없습니다.
재사용 템플릿과 반복 에러 규칙이 쌓여, 다음 생성이 앞선 결과를 물려받는 구조입니다.
Agent Forge에서 만든 게임들은 제가 이어 온 AI 게임 은하의 일부입니다. 각 프로젝트가 서로 연결된 하나의 세계로 이어집니다.
AI 게임 은하로 진입