이게 강좌에 맞을지 사용기에 맞을지 좀 혼동이 되는데... 크게 강좌랄 것은 없어서 사용기에 올립니다. -> 강좌까지는 아니어도 팁은 될 거 같아서 다시 팁게로 변경해서 올립니다. 쓰고 보니 사용기는 또 아닌거 같네요.
-----------------------------------
요즘 Cursor나 Codex 익스텐션, Antigravity, 더 나아가 오픈클로 까지 사용자들이 많이 늘어나고 있는 것 같네요.
제 경우 지금 필요한 앱 개발을 위해서 Chat GPT Pro 요금제 (이번 카카오톡 대란 탑승.._) 로 VS Code에 Codex 익스텐션을 사용중인데, 여기에 제가 쓰는 방법을 몇가지를 간단하게 공유하고자 합니다. 목적은 터미널 커맨드 자동수행, 일련의 커맨드 숏컷 수행, 챗 기록 남기기 입니다.
참고로 이 방법들은 제가 진짜 개발자가 아니라서 (한 줄도 코드를 짜 본 적은 없습니다. 10살 때 1달 동안 BASIC 배운 것 빼고요..;;) 임의로 쓰는 방법 들이에요. 아마 저처럼 실제 개발을 배워보지 않았는데 개발을 해보고 싶은 분들에게 도움이 될 수도 있을 거 같습니다. 개별적인 내용 (git이 라든가, 도커 라든가..)은 AI에게 물어보시면 친절히? 알려줄거에요.
1. 기본 커맨드 셋 만들기 (프롬프트 숏컷)
기본적으로 자주 수행하는 것들은 따로 커맨드셋을 문서화해서 실행하게 합니다. 예를 들어 “저장” 이라고만 하면 리팩토링한 코드들에 헤더 업데이트, 관련한 문서들 업데이트, 그리고 git에 리팩토링한 내용을 바탕으로 코멘트를 붙여서 커밋 및 푸시를 하는거에요.
이런 식으로 패턴화 되어서 자주 수행하는 일들을 몇가지 커맨드로 해두면 일하기 편합니다.
2. 챗 기록 남기기
먼저, 이 방법은 문서화와 개발 체계가 잘 잡히신 분들은 크게 필요하지는 않을 것 같습니다.
저같은 비전공자 분들도 개발을 조금 해보시면 문서 관리와 SSOT (단일 진실 소스) 원칙 수립이 중요하다는 것은 곧 아시게 될 텐데요. 제 경우는 이것을 아무리 관리를 해도 실제 챗 상에서 나눈 대화가 무엇이었는지 복기하거나 관리를 할 필요를 많이 느낍니다. 특히 저는 그냥 생각나는 것을 중구난방으로 마구 해보는 스타일이라 더 그런 것 같습니다. 하지만 실제 대화창은 일정 부분 늘어나면 보기가 매우 힘들죠.
그래서 제 경우 chat_~~~_YY:MM:DD.md 문서를 자동으로 생성하게 하면서 여기를 통해서 명령을 합니다. “챗”이라고만 실제 대화방에서 치면 codex는 이파일을 읽어서 명령을 수행합니다. 그리고 자신이 수행한 내용을 (물론 대화방에도 남기지만) 이 파일에 기록하도록 해요. 그래서
사용자(n): 블라 블라~
Codex(n): 블라 블라~
사용자(n): <- 이부분은 n턴에 대해서 자동생성. 제가 여기에 다음 명령을 쓰고 저장 후 “챗” 합니다.
이런식으로 씁니다. 매 챗 커맨드 실행시 날자 확인하고 변경 되었으면 당일 날자로 md 문서 신규 생성 후 저의 전일 마지막 커맨드를 신규 문서에 (1) 턴으로 복사해서 이어가게 합니다. 이러면 챗 내용은 거의 전부 관리가 되요.
여기서 문제 2가지는 컨텍스트가 chat 파일과 실제 대화창에 두 군데 남는 것과, chat 파일 읽기에 따른 토큰 낭비인데, 일단 후자를 피하기 위해서 읽을 때는 tail을 써서 마지막에서 일정 라인 까지만 읽게 합니다. 그리고 그렇기 때문에 오히려 전자는 두군데 컨텍스트가 다 있는게 필요합니다. 즉 실제 에이전트가 반영하는 컨텍스트는 대화창의 컨텍스트이고, 문서는 기록용에 가깝죠. 다만 복기가 필요하면 에이전트에게 필요한 만큼 다 읽으라고 하면 됩니다.
특히 이 기능이 도움이 되는게 스마트폰 등으로 원격데톱 연결해서 개발하기 편합니다. PC에서 문서 폴더만 외부 접속가능하게 해두면 (제경우는 시놀로지에 동기화 되는데, webdav를 통해서 CX 탐색기로 열어 봅니다) 그냥 음성인식 키보드로 명령을 자세히 적고 원격데톱에서는 그냥 “챗”이라고만 칩니다.
3. 터미널 커맨드용 파이썬 코드 사용 (코딩 자동화)
Antigravity는 터미널 커맨드 완전 자동화 설정이 있는데, Codex는 없습니다. 그래서 매번 터미널 커맨드 실행시 물어보는데요. 이걸 아무리 다시 물어보지 않기를 선택해도 한계가 있습니다. 이게 터미널 커맨드를 구별하는 것이 커맨드 1개만 가지고 하는게 아니라 일정 파라미터 값을 포함해서 그런데요.
그래서 저는 터미널 커맨드를 실행할 파이썬 코드를 몇 개 분류해서 만들고, 에이전트는 모든 터미널 명령어는 이 코드를 통해서 실행시키도록 합니다. 파라미터들은 json 파일로 관리해서 매 실행시 json 파일을 업데이트해서 실행하고, 실행이 끝나면 json은 다시 더미 내용으로 복귀시키도록 합니다. 이러면 실제 터미널상 커맨드는 파이썬 파일명으로만 실행하기 때문에 거의 모든 명령어를 그냥 실행할 수 있습니다. json 파일의 기본 내용은 더미 명령어 (pip나 이런건 version 이런거요)로 해두고, 새 대화창 실행시 한 번씩 다 실행하게 합니다.
다만 이 부분은 혹시나 있을 불상사 (에이전트가 PC내의 아무 파일이나 마구 삭제 한다는가...) 를 대비해서 프로젝트 폴더의 격리와 git 관리, DB를 쓴다면 DB 백업이 필수인데, 처음에 좀 시간이 걸리더라도 도커 데스크톱 설치하고 dev_containers 익스텐션 까셔서 격리를 하시고 코딩을 시작하시면 큰 문제는 없을 겁니다. 초심자라고 해도 이부분은 처음에 꼭 조금 알아보시고 해보시는게 좋습니다. 사실 이것도 Chat GPT에게 물어보고 Codex에게 실행시키면 크게 어렵지 않습니다.
여튼 격리와 백업이 어느 정도 되면 이 방식을 이용해서 거의 모든 커맨드를 자동화해서 귀찮은 클릭 없이 처리할 수 있습니다. 아, 그리고 물론 커맨드 화이트 리스트와 블랙 리스트는 따로 관리하도록 합니다. 진짜 절대로 쓰면 안되는 커맨드는 블랙 리스트에 있어야 겠죠.
물론 이 방식으로도 안전상 완전 무결하다고는 생각하지 않는데, 에이전트를 좀 편하게 쓰려면 어느 정도 트레이드 오프 되는 것이라 생각합니다. 그리고 터미널 커맨드 자동화는 그냥 Codex 익스텐션 말고 Codex CLI를 통하면 좀 더 중앙화해서 쉽게 관리할 수 있다고 알고 있습니다. 그런데 Codex CLI는 api 과금 방식으로만 되는 걸로 알고 있어서, 제가 진짜 개발자도 아니고 해서 저는 사용하지 않고 있습니다. 월정액인 Chat GPT Plus 요금제나 구글 AI Pro 요금제 (둘 다 $20 요금제)나 그 이상 플랜 에서 쓸 수 있는 방식만 시도해 보고 있습니다.
사실 에이전트로 코딩을 시키면서 배운 건 이것저것 있는데, 일단 이 3가지가 초심자에게 쉽고 편하게 개발을 하는데 도움이 될까 싶어서 올려봅니다.
혹시 더 좋은 방법이 있거나 정정, 보완할 내용이 있으면 댓글에 남기셔서 다들 공유하면 좋겠습니다.
AI 를 개발에 써먹은지 반년 정도 된 것 같습니다.
일단 저는 웹으로 클로드만 갈구다가, 최근 1달 정도는 다음과 같이 작업하고 있습니다.
1. 제 개발환경은 Windows 11 Host + WSL2 Ubuntu 입니다.
2. 주로 개발하는 랭귀지는 다음과 같습니다.
- PHP
- Node.js + React 외 잡다.
- 파이썬을 이용한 서브 툴
- GCC 를 이용한 서브 툴
3. 먼저 Kiro 를 통해서 각종 요구사항을 정리하고, 개발 스펙과 태스크를 정갈하게 md 로 뽑습니다.
이것저것 써보니, 두서 없이 정리한 요구사항을 Kiro 가 정말 기깔나게 잘 정리하고 문서화 해줍니다.
4. 그 후 실제 개발은 보통 두개 루트로 나뉩니다.
Kiro 에서 기깔나게 뽑은 md 를 이용해서 개발합니다.
- Cursor + 클로드
- 클로드만 사용
현재까지 AI 와 함께 완수한 프로젝트는 대충..
1. 꽤 큰 웹사이트 개발
클로드를 통해서 미리 작성된 PPT, XLS 에서 프론트 페이지 디자인까지 다 던져서 만든 후, Kiro 를 통해 백엔드 구축 및 개발 했습니다. 거의 AI 가 80% 쯤 다 개발했고, 몇몇 미흡한 부분들과 서버 셋팅 등은 직접 했습니다.
PHP + nginx + PHP-fpm + Mysql8 + mod_security 사용
2. 자체 개발한 Sock5 Proxy 서버 및 어드민 패널
- 클로드 통해서 서버 개발
- Kiro 와 Cursor 로 어드민 패널 개발
- 클로드 통해서 Sock5 외부 사용을 위한 GCC 라이브러리 개발
저는 그냥 던져준 거 말곤 한 게 없습니다. AI 가 95% 쯤 개발.
3. 딥스카이 관측용 웹 어플리케이션
취미를 위해서 개발했습니다.
Kiro 공부를 위해서 Kiro 로 처음부터 끝까지 개발했습니다.
프런트 페이지 디자인 실력이 많이 떨어지긴 하더군요 (?)
일단, 원하는 기능들은 잘 뽑혀 나왔습니다.
AI 100% 개발.
4. 웹 크롤링용 서비스 개발
특이하게 Gemini 로 개발해 봤습니다.
코어는 다 제미나이가 처리했고, 일부 커넥터 모듈 등은 직접 개발했습니다.
한 50% 쯤은 AI 가 했네요.
현재 거의 AI 를 실무에서 50~70% 수준까지 사용중입니다.
보안 문제는 제가 어차피 직접 서버 핸들링 및 WAS 등을 다룬게 근 20년차라...
알아서 직접 하고 있고, AI 특유의 트러블 슈팅도 점점 경험이 쌓이니까 빠릿빠릿 해결하는 중입니다.
미친듯이 개발 퍼포먼스가 올라와서, 2달 일정 잡은 일이 2주만에 끝나버리는 일도 생기네요 -_-;
주니어 개발자가 취직하기가 너무 힘들어질 것 같습니다.
AI 핸들링 경험이 좀 누적된 시니어에게 굳이 주니어 여럿이 필요가 없는 수준까지 와 버려서;;;
아마 앞으로 더 발전하겠죠.. 무섭습니다 ㅠㅠ
한가지 궁금한 것이 있는데, 프론트 페이지 디자인은 (좀 더 구체적으로) 어떻게 하시나요? 제가 진짜 미술쪽엔 완전 잼병이라서 UI나 UX 어느 것 하나 제대로 하기 힘든데, 이 부분은 AI를 이용해도 제가 활용하는 능력으로는 한계가 많더라구요. ㅠㅠ UI나 UX를 좀 더 잘 구현할 수 있게 AI를 사용하려면 어떤 방식이 좋을까요?
클로드가 매우 놀라운 것이,
그냥 A4 용지에 막 UI 구성을 그려서 사진 찍어서 업로드 하셔도 그럴싸하게 만들어줍니다;;;
PPT 나 목업툴로 그려서 보여주면 더 그럴싸하게 만들어줍니다.
일단, 목업툴 쉬운게 많으니 한번 사용해 보셔요.
https://www.edrawsoft.com/kr/program-review/top-mockup-tools-for-websites.html?srsltid=AfmBOoqrBHw3sx3xJjr5cuu-N_I5ZcanzKSoWBCGI8Fe7xhhiHipk4Xs
무료판들이 제법 있습니다 ^^
목업툴로 이미지로 뽑은 후 클로드에 던지기만 해도 제법 잘 만들어주더라구요 ^^
최근에 codex라는 자체 앱도 출시를 했더라구요. (한시적으로 토큰 2배를 준다고 하고 agent skill 및 automations를 지원하더군요.)
그리고 이제 다음 단계로 mcp쪽으로 확장하셔야 하는 단계이신것 같습니다.
Codex 앱은 얼마전에 맥용으로만 나왔다고 들었고 윈도우용은 알림 대기를 걸어놨는데, 기대 됩니다. 아직 어떤 형태인지 몰라서요.
MCP는 들어만 보고 아직 제대로 시도도 못해보고 있네요. 일단 Codex 익스텐션에 Figam나 Playwright 연동을 해두긴 했는데, 쓰는 법을 잘 모르겠어요. Skill을 제대로 적용을 못시키고 있어서요.
불과 한달 사이에 안티그래비티로 시작해서 지금 이제 겨우 Codex 활용하기에 좀 적응 했는데 또 배워야 하니 약간 "배우기만 하다가 진짜 결과물은 못만드는" 일이 생길까 걱정도 됩니다. 툴이 너무 빠르게 발전하니 따라가기 벅차네요. ㅎㅎ
웹브라우저로 gemini 3.0을 열어둡니다.
antigravity 를 켜고, mcp 한 두개 추가합니다.
claude code 도 켭니다.
아이디어를 gemini랑 진행하고, antigravity에게 전달할 프롬프트 생성하라고 합니다.
antigravity에게 계획 수립하면 문서를 자동으로 계획 디렉터리에 저장합니다.
claude code에게 문서를 검증하라고 시킵니다. 뭐라뭐라 합니다. 큰 문제 없으면 문서에 반영하라고 합니다.
다시 antigravity에게 문서 검사 시킵니다.
이렇게 3-4턴 왔다갔다 하고 코드 작성
다시 3-4턴 검사 시키고 자잘한 버그 리포트
다시 왔다갔다.
결과를 gemini 에게 보고합니다.
칭찬 받습니다.
어...그런데 또 오류가...
극 공감합니다. ㅋ
저는 안드로이드 앱 개발(?)을 처음 해봤습니다.
20여년이상 웹쪽만 풀스택으로 개발했었구요.
그냥 느낌상 1개월 이상 걸릴 산출물이.. API서버에서 필요한 항목들 모두 정리해주고, UI구성 어떻게 할지 초안 잡아주고.. 그렇게 MD파일에 상세하게 정리만 잘 해주면.. 1시간안에 바로 네이티브 앱이 떠억하고 나옵니다.
예전에는 혼자 감당하기 어려운 로컬개발환경, 개발서버, 운영서버.. 배포/롤백/백업 등등 혼자 커버 가능한 상황까지 왔습니다.
솔직히 주니어 개발자 들어오기 쉽지않아보입니다.
시니어 개발자(모든 영역에 어느정도의 지식수준은 겸비한) 혼자서 클로드(유료), 커서(유료), Gemini (무료) 만 사용해서 앱 배포하기 너무 쉽습니다.
이제 코딩 부트캠프는 거의 사라질 것 같아요. 대학 전공도 그렇고 개발자들의 교육 방식에 획기적인 변화가 있어야 할 것 같습니다.
3. 터미널 커맨드용 파이썬 코드 사용 (코딩 자동화) <-- 이게 그걸 할수 있다는 내용인건가요?
Workspace 관련 옵션 변경해도 계속 물어보더라고요
시도해 보시고 어떤지 알려주세요.