Intro이전에 Playwright MCP를 활용해 LLM이 스스로 UI 수정하게 하기 글에서 LLM의 셀프 피드백 루프를 통한 디자인 요소 자동 조절에 대해 다루었다. Claude Code나 Codex 같은 도구가 스스로 UI를 확인하고, 클릭하고, 스크린샷을 찍는 작업이 가능해지면서 사용자가 굳이 코드 변경때마다 눈으로 확인 할 필요 없이 스스로 답이 나올 때 까지 변경을 하게 되었고 그 만족감이 대단하다.최근에는 Chrome extension 등이 나와서 더 강력하게 브라우저를 제어할 수 있게 되었지만 애초에 Playwright MCP와 Chrome의 extension은 서로 결이 다르기떄문에 Playwright MCP가 대체될 것이라고 생각하지 않는다.그런데 Playwright MCP 를 여러개의..
전체 글 528
IntroSpring Boot 4로 마이그레이션한 뒤 Flyway가 조용히 작동하지 않는 문제가 있었다. 애플리케이션은 정상 실행되고 DB 조회도 문제없어서, 새로운 마이그레이션 SQL을 추가하기 전까지는 눈치채지 못했다. 원인은 Spring Boot 4의 모듈화 정책 변경이었다.해결Spring Boot 4부터는 flyway-core 의존성만으로는 자동 설정이 되지 않는다. 명시적으로 starter를 사용해야 한다.// 변경 전 (Spring Boot 4에서 작동 안 함)implementation("org.flywaydb:flyway-core")implementation("org.flywaydb:flyway-mysql")// 변경 후 (정상 작동)implementation("org.springframew..
Intro텍스트로부터 시간 정보를 추출하고 정규화하는 용도로 Gemini API를 사용해왔다. 그런데 gemini-2.0-flash를 무료로 넉넉하게 쓰던 게 어느 날 갑자기 막혔다. 찾아보니 2025년 12월 초에 Google이 무료 티어를 대폭 축소한 모양이다. 확인해보니 다수의 429 로그가 찍혀있었다.그래서 부랴부랴 확인해보니 gemini-2.5-flash-lite가 그나마 무료로 사용 가능하지만 RPM 10, RPD 20이라는 수치는 도저히 쓸 수 없는 수준이었다. gemini-2.5-flash-lite 사용 시 곧바로 limit에 다다른다.결국 Gemma 3로 갈아타게 되었고, 프롬프트 엔지니어링을 거치니 어느 정도 기존과 동일하게 동작하게 되어 이 후기 글을 작성한다.프론티어 LLM의 성능이..
IntroLLM에게 UI 수정을 요청할 때마다 브라우저를 새로고침하며 결과를 확인하고, 다시 수정 요청을 하는 과정이 반복되곤 한다. 코드는 잘 생성해주지만, 실제로 의도한 대로 동작하는지는 직접 확인해야 하는 번거로움이 있다. 가끔 여러번의 수정 요청에도 제대로 처리가 되지 않으면 잘 안된 부분에 대해 브라우저의 devtools에서 현 상황을 보여주거나 스크린샷을 찍어서 직접 LLM에게 건네기도 한다. 해결에는 큰 도움이 되지만 여간 번거로운 일이 아니다.Playwright MCP를 활용하면 이런 수작업을 LLM이 스스로 처리하도록 만들 수 있다. AI가 직접 브라우저를 제어하며 수정 사항을 적용하고, 스크린샷을 찍어 확인하고, 문제가 있으면 다시 수정하는 과정을 자동으로 수행한다.Playwrighth..
IntroAGENTS.md 파일에 스펙을 명확히 정의해두고 , PLAN.md 파일을 생성해 수행할 체크리스트를 작성해두어 컨텍스트를 유지하게끔 하며 Claude Code나 Codex-cli 로 모노레포에 함꼐 들어있는 프론트엔드와 백엔드를 번갈아가며 개발을 진행하곤 했다.다양한 AI AGENT 에서 활용하려면 CLAUDE.md, GEMINI.md 등 심볼릭링크를 생성해둬야 한다. 혹은 해당 파일명으로 텍스트 파일을 생성하고 내용에 @AGENTS.md 만 작성해둬도 알아서 추적 한다.그런데 개발할 스펙이 이미 명확하게 정의되어 있고 프론트와 백엔드를 서로 독립적으로 개발할 수 있다면 굳이 순차적으로 번갈아가며 개발할 필요가 있을까 하는 생각이 들었다. 그래서 여러 개발자들로부터 적극 추천되었던 Git wo..