블로그 구축 과정에 대하여 (feat. Google NotebookLM, Codex CLI)
지난 글 **블로그를 시작하고 Cloudflare Pages를 선택한 이유**에 이어, 이번에는 실제 구축 과정을 이야기해 보겠습니다.
특히 이번 글에서는 작업 과정에서 핵심적인 역할을 했던 AI 툴을 중점적으로 다룹니다. (참고로 저는 OpenAI의 ChatGPT와 Google의 Gemini를 유료 구독 중입니다.)
1. 목표 설정과 접근 방식
목표: Cloudflare Pages를 이용하여 블로그를 개설한다.
목표 설정 후 가장 먼저 한 일은 **‘정보 수집’**이었습니다.
저는 기술적 경험이 전무하고 개발자도 아니기에, 무턱대고 시작하기보다 구체적으로 어떤 작업이 필요한지, 준비물은 무엇인지 파악하는 과정이 선행되어야 했습니다. 그래야만 실질적인 작업을 수행할 때 AI에게 더 작고 정확한 단위로 지시할 수 있기 때문입니다.
2. 정보 수집의 도구: Google NotebookLM
이때 정보 수집을 위해 활용한 도구가 바로 구글의 NotebookLM입니다.
NotebookLM은 구글이 개발한 AI 기반의 연구 및 글쓰기 도우미입니다. 사용자가 제공한 문서, 노트, 웹사이트 링크, YouTube 영상 등 다양한 형식의 **‘소스(자료)’**를 기반으로 정보를 처리하고 인사이트를 도출하는 것이 특징입니다.
여기에 더해, 사용자가 직접 자료를 올리지 않아도 키워드를 제시하면 자동으로 웹에서 적합한 소스를 찾아오는 기능도 갖추고 있습니다.
NotebookLM을 활용한 검색 과정
저는 이 웹 검색 기능을 통해 정보 수집을 시작했습니다. 입력한 키워드는 **‘Cloudflare Pages를 이용한 정적 웹사이트 배포 및 활용’**이었고, NotebookLM은 이 내용을 바탕으로 신뢰할 만한 10개의 소스를 찾아주었습니다.
NotebookLM의 진가는 이렇게 수집한 소스들을 살펴볼 때 드러납니다.
-
정확한 요약: 수집된 소스 범위 내에서만 질의응답이 이루어지므로, 환각(Hallucination) 없이 원하는 정보를 정확하게 요약하거나 찾아줍니다.
-
오디오 개요(Audio Overview): 텍스트 자료를 팟캐스트와 같은 오디오 형태로 가공해 줍니다. 덕분에 긴 글을 일일이 읽지 않고도 전반적인 내용을 짧은 시간 안에 훑어보고 파악할 수 있었습니다.
우선 오디오 개요를 통해 제가 중점적으로 파악하고자 했던 것은 초기 구축 과정에서 발생할 수 있는 오류들과 그 해결책이었습니다.
이는 앞으로 이어질 Codex CLI 작업을 위한 포석이기도 합니다. 작업 도중 오류가 발생했을 때, AI(Codex)에게 상황을 설명하고 해결책을 얻으려면 저부터가 상황을 파악하고 있어야 하기 때문입니다. 즉, 타인의 경험을 통해 ‘이 상황이 대략 어떤 오류에 해당하는지’ 판단할 수 있는 배경지식을 미리 쌓아두려는 목적이었습니다.
“전반적인 작업 흐름을 파악하며 제가 가장 주의 깊게 들은 내용은, Cloudflare의 배포 환경과 제 로컬 컴퓨터의 블로그 프레임워크 환경이 일치하지 않을 경우 오류가 발생할 수 있다는 점이었습니다.”
이러한 환경 변수 문제만 유의한다면 나머지 과정은 비교적 수월할 것이라 판단했고, 곧바로 실질적인 구축을 위해 다음 도구로 넘어갔습니다.
3. Codex CLI를 활용한 작업 진행
Codex CLI는 OpenAI의 AI 코딩 모델을 터미널에서 직접 활용할 수 있는 오픈 소스 명령줄 인터페이스(CLI) 기반 개발 도구입니다.
이 도구는 개발자가 기존의 명령줄 환경(터미널)을 벗어나지 않고도 AI의 도움을 받아 코딩 작업을 자동화하고 관리할 수 있도록 설계되었습니다.
비개발자인 저는 이 도구를 **‘나를 위해 고용된 개발자’**처럼 여기며 작업을 진행했습니다.
작업 지시서: AGENTS.md
우선 Codex에게 현재 작업의 맥락을 명확히 인지시킬 필요가 있었습니다.
작업의 바탕이 될 프레임워크와 GitHub 저장소를 이용해 Cloudflare Pages를 배포할 것이며, 최종 도메인은 현재 블로그 주소인 donbunny.me라는 점을 이해시켜야 했기 때문입니다.
이를 위해 저는 **AGENTS.md**라는 파일을 생성하여 프로젝트의 상세 정보를 정리해 두었습니다.
이 파일은 단순한 정보 전달을 넘어, AI가 준수해야 할 규칙과 작업의 한계까지 미리 정의해 두는 역할을 합니다. 즉, AI가 본격적인 작업에 앞서 반드시 명심해야 할 사항들을 기록해 둔 **‘작업 지침서’**인 셈입니다.
(물론, 이 파일에 들어갈 내용을 구조화하고 정리하는 과정 역시 ChatGPT의 도움을 받았습니다.)
프레임워크 선택: HUGO
본격적인 작업 내용을 이어가기에 앞서, 잠시 **‘프레임워크’**에 대한 이야기를 짚고 넘어가려 합니다.
저는 이번 블로그 구축을 위한 프레임워크로 **‘HUGO’**를 선택했습니다. 사실 프레임워크의 기술적 정의나 복잡한 작동 원리를 완벽히 이해하는 것은 아닙니다. 다만, 웹사이트의 **‘기본 뼈대’**를 제공해 주어, 맨땅에서 시작하는 것보다 훨씬 쉽고 효율적으로 집을 짓게 해주는 도구 정도로 이해하고 있습니다.
수많은 프레임워크 중 굳이 HUGO를 선택한 이유는 단순했습니다. 바로 ‘테마’ 때문입니다. 공식 홈페이지에서 다양한 디자인(테마)을 미리 살펴보고 직관적으로 선택할 수 있다는 점이 저 같은 비개발자에게는 큰 매력이었습니다.
저는 그중 **‘Hextra’**라는 테마를 골랐습니다. 그리고 Codex에게 “Hextra 테마를 사용하고 싶으니, (앞서 AGENTS.md에 명시한) 로컬 작업 폴더에 준비를 시작해 달라"고 요청했습니다.
그러자 Codex는 마치 자율주행차처럼 스스로 시동을 걸고, 거침없이 운행을 시작했습니다.
배포 및 연결
Codex가 로컬에서의 준비 완료를 보고하자, 저는 미리 생성해 둔 GitHub 저장소 주소를 전달하며 파일 업로드를 지시했습니다.
기본적인 틀이 저장소에 세팅된 것을 확인한 후, 곧바로 Cloudflare에 접속했습니다. GitHub 계정을 연동하고 배포할 저장소를 지정한 뒤, Cloudflare에서 미리 구매해 둔 도메인까지 연결을 마쳤습니다. 잠시 후 해당 주소로 접속하자, 제 블로그가 정상적으로 활성화된 것을 확인할 수 있었습니다.
여기서 이 과정의 세세한 기술적 절차는 굳이 나열하지 않겠습니다. GitHub를 터미널에서 연결하는 방법이나 Cloudflare의 설정 등은 비교적 수월한 작업이긴 합니다. 하지만 각자의 PC 환경이나 네트워크 상황에 따라 미세하게 대응 방식이 달라질 수 있습니다.
“따라서 획일적인 매뉴얼을 따르기보다, 문제가 발생한 그 순간의 상황을 ChatGPT나 Gemini에게 설명하고 실시간으로 해법을 얻는 것이 훨씬 정확하고 빠릅니다.”
특정 명령어 몇 줄을 나열하기보다, **‘도구를 어떻게 계획하고 적재적소에 배치했는가’**를 공유하는 것이 비개발자로서 기술을 다루는 가장 **현명한 접근 방식(태도)**이라 생각합니다.
🚀 글을 마치며
이번 블로그 개설 작업을 통해 느낀 점을 짧게 정리해 봅니다.
과거에는 네이버나 티스토리 같은 정해진 플랫폼 안에서만 선택해야 했습니다. 하지만 이제는 다릅니다. 명확한 **‘목적지’**만 있다면, 그곳이 어디든 알아서 운전해 주는 AI가 있기 때문입니다.
덕분에 예전 같으면 생각조차 하지 않았을 일들을 **“한번 해볼까?”**라는 가벼운 호기심으로 시작할 수 있게 되었습니다. 기술적 장벽 앞에서 망설이던 막막함이, 이제는 ‘다음에는 무엇을 해볼까’ 하는 설렘으로 바뀌었습니다.
비개발자인 제가 AI라는 도구를 만나 새롭게 시도할 다양한 도전들, 그 앞으로의 경험이 무척 기대됩니다.
💡 덧붙이며: 작업 환경에 대하여
저는 현재 PC의 기본 웹 브라우저로 ChatGPT Atlas를 사용하고 있습니다.
이는 OpenAI에서 출시한 AI 전용 브라우저로, 가장 큰 장점은 제가 접속해 있는 모든 페이지의 요소를 ChatGPT가 직접 볼 수 있다는 점입니다. 덕분에 오류가 발생하거나 디자인 수정이 필요할 때, 일일이 스크린샷을 찍거나 상황을 글로 묘사할 필요가 없습니다.
그저 **“지금 보고 있는 이 화면에서 해결책을 알려줘”**라고 바로 물어볼 수 있어, 비개발자로서 작업의 효율을 획기적으로 높일 수 있었습니다.