# 블로그 포스팅봇 개발을 통해 구글 애드센스 등의 광고 수익화를 위한 자체 블로그 플랫폼 개발 계획서
1. 개발 목적
본 프로젝트의 목적은 사용자가 블로그 주제, 키워드, 글 유형, 글자수, 이미지 수, 발행 여부 등을 입력하면 AI Agent가 자료조사, 키워드 분석, 제목 생성, 본문 작성, SEO 구조화, 이미지 기획, 최종 검수까지 수행하고, 자체 블로그 플랫폼에 게시글을 발행할 수 있는 블로그 포스팅봇과 자체 블로그 플랫폼을 개발하는 것이다.
초기 목표는 보드게임 전문 블로그를 중심으로 구글 애드센스 승인 및 광고 수익화를 달성하는 것이다. 이후 생활의 팁, 전국 행사정보 등 다른 주제 사이트로 확장할 수 있도록 BlogCore 기반의 다중 사이트 구조를 고려한다.
---
2. 기본 개발 방향
초기에는 WordPress나 Blogger에 의존하지 않고, 자체 블로그 플랫폼을 직접 개발한다.
단, 향후 확장을 위해 외부 발행 채널도 고려한다.
우선순위는 다음과 같다.
1. 자체 블로그 플랫폼 개발
2. AI 포스팅봇 관리자 개발
3. 보드게임 전문 블로그 적용
4. 구글 애드센스 승인에 적합한 콘텐츠·SEO 구조 구축
5. WordPress API, Blogger API 연동은 2차 개발
6. 네이버 블로그 반자동/자동화 모듈은 3차 개발
---
[관리자]
↓
주제 / 키워드 / 글 유형 / 글자수 / 이미지 수 / 자동발행 여부 입력
↓
[BlogBot 관리자]
↓
[BlogBot Backend]
↓
[AI Orchestrator]
├─ Research Agent
├─ Keyword Agent
├─ Writer Agent
├─ SEO Agent
├─ Image Agent
├─ Review Agent
└─ Publisher Agent
↓
[BlogCore API]
↓
[자체 블로그 플랫폼]
↓
[보드게임 전문 블로그]
↓
Google Search / AdSense / 제휴수익
```
---
4.1 BlogBot 관리자
관리자가 글 생성을 지시하는 내부 관리자 화면이다.
필수 기능:
* 로그인
* 사이트 선택
* 글 주제 입력
* 메인 키워드 입력
* 연관 키워드 입력
* 글 유형 선택
* 카테고리 선택
* 글자수 설정
* 이미지 수 설정
* 자동발행 여부 선택
* 임시저장
* AI 생성 실행
* 미리보기
* 수동 수정
* 최종 검수
* 예약발행
* 즉시발행
추가로 OpenAI API 운영비용을 실시간으로 확인할 수 있도록 대시보드에 다음 정보를 표시한다.
```text
오늘 API 사용금액
이번 달 API 사용금액
글 1개 평균 생성비용
오늘 생성한 글 수
이번 달 생성한 글 수
텍스트 API 사용비용
이미지 API 사용비용
```
비용 정보는 실제 API 호출 기록을 기준으로 집계하며, 가능한 경우 모델별·Agent별 비용도 확인할 수 있도록 한다.
---
AI Orchestrator는 각 Agent에게 작업을 분배하는 중앙 제어 역할을 한다.
관리자가 “카탄 도시기사 초보 전략” 같은 주제를 입력하면, Orchestrator가 자료조사, 키워드 분석, 글 작성, SEO 검사, 이미지 기획, 최종 검수, 발행까지 순서대로 실행한다.
각 Agent의 API 호출 시 사용한 모델, 입력 토큰, 출력 토큰, 예상 비용을 기록하여 하나의 포스팅을 생성하는 데 실제로 얼마의 AI 비용이 발생했는지 추적할 수 있도록 한다.
---
4.3 Agent 구성
#### Research Agent
역할:
* 주제 관련 자료 조사
* 공식 자료 우선 확인
* 오래된 정보 여부 검토
* 출처 URL 정리
* 보드게임의 경우 공식 규칙, 출판사 정보, 플레이 정보 확인
#### Keyword Agent
역할:
* 메인 키워드 선정
* 롱테일 키워드 선정
* 연관 키워드 추천
* 검색 의도 분석
* 제목 후보 생성
#### Writer Agent
역할:
* 블로그 본문 작성
* 제목 작성
* 도입부 작성
* H2/H3 구조 생성
* 요약 문단 작성
* FAQ 작성
* 자연스러운 개인 블로그 문체 적용
#### SEO Agent
역할:
* SEO 제목 점검
* meta description 작성
* 키워드 밀도 점검
* 내부링크 후보 추천
* slug 생성
* 목차 생성
* canonical URL 설정
#### Image Agent
역할:
* 본문에 필요한 이미지 위치 추천
* 이미지 설명 생성
* 대표 이미지 프롬프트 작성
* 본문 이미지 프롬프트 작성
* alt text 작성
이미지 API를 호출하는 경우 생성 이미지별 모델, 크기, 품질, 생성 수량 및 예상 비용을 기록한다.
#### Review Agent
역할:
* AI스러운 문장 수정
* 중복 표현 제거
* 얇은 글 여부 점검
* 허위 정보 가능성 점검
* 애드센스 승인에 불리한 저품질 콘텐츠 여부 점검
* 최종 게시 가능 여부 판정
#### Publisher Agent
역할:
* 자체 BlogCore API로 게시글 등록
* 카테고리, 태그, 대표 이미지 연결
* 예약발행 처리
* 상태값 변경
* 향후 WordPress, Blogger, 네이버 발행 모듈 확장
---
5. 자체 블로그 플랫폼 BlogCore 개발 방향
BlogCore는 단순 게시판이 아니라 여러 주제 사이트를 운영할 수 있는 자체 블로그 엔진으로 개발한다.
초기에는 보드게임 전문 블로그에 집중하되, 구조는 다중 사이트 확장이 가능해야 한다.
```text
BlogCore
├─ 회원 / 관리자
├─ 글 관리
├─ 카테고리
├─ 태그
├─ SEO
├─ Sitemap
├─ AdSense
├─ 이미지
├─ 통계
├─ AI Agent 연동
├─ 예약발행
└─ API
├─ 보드게임 사이트
├─ 생활팁 사이트
└─ 전국행사 사이트
```
---
6. 보드게임 전문 블로그 운영 구조
초기 적용 사이트는 보드게임 전문 블로그로 한다.
보드게임은 시간이 지나도 검색되는 Evergreen 콘텐츠가 많고, 규칙, 전략, 추천, 비교, 확장판, 구매 가이드 등으로 콘텐츠 확장이 쉽다.
### 주요 카테고리
```text
보드게임 추천
├─ 2인용
├─ 3인용
├─ 4인용
└─ 5~6인용
게임별 콘텐츠
├─ 게임 소개
├─ 규칙
├─ 초보자 가이드
├─ 전략
├─ 확장판
├─ 비슷한 게임
└─ 구매 가이드
테마별 콘텐츠
├─ 전략게임
├─ 파티게임
├─ 협상게임
├─ 가족게임
└─ 입문용 게임
```
---
7. 수익화 구조
초기 수익화 목표는 구글 애드센스 승인 및 광고 수익화이다.
추가 수익화는 다음 단계로 고려한다.
```text
1차 수익화
- Google AdSense
2차 수익화
- 쿠팡파트너스
- 보드게임 구매 링크
- 제휴 링크
3차 수익화
- 보드게임 추천 DB
- 보드게임몰 제휴
- 리뷰 협찬
```
---
개인 블로그 성격이므로 과도한 회사형 페이지는 만들지 않는다.
필수 또는 권장 페이지:
```text
홈
보드게임 추천
게임 규칙
게임 전략
리뷰
사이트 소개
문의
개인정보처리방침
```
불필요하거나 선택적인 페이지:
```text
이용약관: 회원가입, 유료서비스, 판매 기능이 없으면 초기에는 제외
면책사항: 필요 시 추후 추가
콘텐츠 정책: 일반 개인 블로그 단계에서는 제외
```
---
카테고리
H1 제목
요약문
작성일 / 수정일 / 작성자
대표 이미지
목차
본문
├─ H2
├─ H3
├─ 이미지
├─ 표
└─ FAQ
핵심 요약
관련 콘텐츠
작성자 소개
```
보드게임 글의 경우 다음 정보를 포함할 수 있다.
```text
게임명
추천 인원
플레이 시간
난이도
장르
게임 소개
기본 규칙
초보자 팁
전략
장점
단점
추천 대상
비슷한 게임
구매 가이드
```
---
10. 데이터베이스 설계 초안
### sites
```text
id
name
domain
theme
logo
adsense_id
seo_title
seo_description
status
created_at
updated_at
```
### users
```text
id
name
email
password
role
status
created_at
updated_at
```
### categories
```text
id
site_id
parent_id
name
slug
description
sort_order
status
created_at
updated_at
```
### tags
```text
id
site_id
name
slug
created_at
updated_at
```
### games
```text
id
name
english_name
publisher
designer
release_year
min_players
max_players
play_time
difficulty
genre
mechanism
description
thumbnail
rating
created_at
updated_at
```
### posts
```text
id
site_id
game_id
category_id
author_id
title
slug
content
summary
excerpt
seo_title
seo_description
canonical_url
main_keyword
related_keywords
featured_image
status
draft / review / scheduled / published / archived
ai_generated
ai_quality_score
published_at
created_at
updated_at
```
### post_tags
```text
post_id
tag_id
```
### post_relations
```text
post_id
related_post_id
score
created_at
```
### media
```text
id
site_id
file_name
file_path
file_type
alt_text
caption
created_at
updated_at
```
### ai_jobs
```text
id
site_id
user_id
post_id
topic
main_keyword
prompt
agent_profile
status
research_result
keyword_result
draft_result
seo_result
image_result
review_result
total_input_tokens
total_output_tokens
text_api_cost
image_api_cost
total_api_cost
created_at
updated_at
```
### ai_usage_logs
OpenAI API 호출별 사용량과 비용을 기록한다.
```text
id
site_id
ai_job_id
post_id
agent_type
provider
model
input_tokens
output_tokens
cached_tokens
request_count
image_count
image_size
image_quality
text_cost
image_cost
total_cost
currency
requested_at
created_at
```
`agent_type` 예시:
```text
research
keyword
writer
seo
image
review
publisher
```
이 테이블을 기준으로 일별, 월별, 글별, Agent별, 모델별 API 사용비용을 계산한다.
---
11. SEO 필수 구현 요소
자체 개발 시 다음 항목을 반드시 구현한다.
```text
<title>
meta description
canonical URL
Open Graph
schema.org 구조화 데이터
XML sitemap
robots.txt
RSS
404 처리
301 redirect
pagination
breadcrumbs
모바일 반응형
페이지 속도 최적화
이미지 lazy loading
alt text
```
---
대시보드
콘텐츠 관리
├─ 글 목록
├─ 새 글 작성
├─ 임시글
├─ 검수 대기
├─ 예약글
└─ 발행글
AI 포스팅봇
├─ 글 생성
├─ 생성 이력
├─ Agent 설정
├─ 스타일 프로필
└─ 품질검사 결과
보드게임 DB
├─ 게임 목록
├─ 게임 등록
├─ 장르 관리
└─ 메커니즘 관리
사이트 관리
├─ 카테고리
├─ 태그
├─ 메뉴
├─ SEO 설정
├─ 애드센스 설정
└─ 사이트 기본정보
미디어 관리
API 사용량 / 비용
├─ 오늘 사용금액
├─ 이번 달 사용금액
├─ 글 1개 평균 생성비용
├─ 일별 사용량
├─ 월별 사용량
├─ 글별 생성비용
├─ Agent별 사용비용
├─ 모델별 사용비용
├─ 텍스트 API 비용
└─ 이미지 API 비용
통계
환경설정
```
### 관리자 대시보드 비용 카드
관리자 로그인 후 첫 화면에서 다음 정보를 바로 확인할 수 있도록 한다.
```text
┌──────────────────┐
│ 오늘 API 사용금액 │
│ $0.34 │
└──────────────────┘
┌──────────────────┐
│ 이번 달 사용금액 │
│ $6.42 │
└──────────────────┘
┌──────────────────┐
│ 글 1개 평균 비용 │
│ $0.21 │
└──────────────────┘
┌──────────────────┐
│ 이번 달 생성 글 │
│ 30개 │
└──────────────────┘
```
추가 상세 화면에서는 다음과 같이 확인 가능하도록 한다.
```text
게시글 텍스트 이미지 총비용
카탄 도시기사 전략 $0.06 $0.08 $0.14
4인용 보드게임 추천 $0.08 $0.08 $0.16
초보자 전략게임 추천 $0.07 $0.12 $0.19
```
Agent별 비용도 확인 가능하게 한다.
```text
Research Agent $0.02
Keyword Agent $0.01
Writer Agent $0.07
SEO Agent $0.01
Image Agent $0.08
Review Agent $0.03
--------------------------
Total $0.22
```
---
사이트별로 글 작성 스타일을 저장할 수 있어야 한다.
보드게임 사이트 기본 프로필 예시:
```text
주제: 보드게임
문체: 개인 블로그형 + 정보형
글자수: 1,800~2,500자
이미지: 5장
SEO: Google 중심
메인키워드: 3~5회
연관키워드: 2~3회
해시태그: 선택
콘텐츠 방향: Evergreen 콘텐츠
```
---
AI BlogBot은 글을 바로 발행하지 않고 품질검사를 거친다.
검사 항목:
```text
제목과 본문 검색의도가 일치하는가?
본문이 충분한 정보를 제공하는가?
중복 표현이 많은가?
다른 게시글과 내용이 과도하게 겹치는가?
단순 요약문에 그치지 않는가?
보드게임 정보가 사실과 맞는가?
키워드가 과도하게 반복되지 않는가?
이미지 위치가 자연스러운가?
관련글 연결이 가능한가?
사용자가 얻어갈 명확한 정보가 있는가?
```
품질 점수가 낮으면 자동 발행하지 않고 review 상태로 저장한다.
```text
draft
↓
ai_generated
↓
review
↓
scheduled
↓
published
↓
archived
```
관리자가 수동모드로 사용할 경우 review 단계에서 직접 수정 후 발행한다.
자동모드로 사용할 경우 Review Agent 품질점수가 기준 이상일 때만 published 또는 scheduled 상태로 변경한다.
보드게임 전문 블로그의 URL은 사람이 읽기 쉬운 형태로 만든다.
예시:
```text
/boardgames/catan-cities-knights
/articles/catan-cities-knights-strategy
/recommend/4-player-boardgames
/rules/catan-basic-rules
/strategy/catan-beginner-guide
```
피해야 할 구조:
```text
/post.php?id=123
/article?idx=456&cat=8
```
17. 광고 영역 설계
애드센스 승인 전에는 광고 영역만 설계하고 과도한 광고 배치는 피한다.
초기 권장 위치:
```text
본문 상단 이후 1개
본문 중간 1개
본문 하단 또는 관련글 위 1개
```
광고가 콘텐츠보다 많아 보이는 구조는 피한다.
OpenAI API 및 이미지 API는 사용량 기반으로 비용이 발생하므로 BlogBot 관리자에 API 비용관리 기능을 기본 포함한다.
### 핵심 표시 항목
```text
오늘 사용금액
이번 달 사용금액
글 1개 평균 생성비용
텍스트 API 사용금액
이미지 API 사용금액
오늘 생성한 글 수
이번 달 생성한 글 수
```
### 글 1개 평균 생성비용
기본 계산식:
```text
이번 달 전체 API 비용
÷
이번 달 생성 완료 게시글 수
=
글 1개 평균 생성비용
```
단, 발행 여부와 관계없이 AI 생성 작업 자체의 비용을 분석할 수 있도록 `ai_job` 기준 비용 통계도 별도로 제공한다.
### 비용 집계 단위
```text
일별
월별
사이트별
게시글별
AI Job별
Agent별
모델별
텍스트 / 이미지별
```
### 비용 예산 관리
향후 다음 기능을 추가할 수 있도록 구조를 고려한다.
```text
월 API 예산 설정
예:
월 예산 $20
현재 사용:
$12.40
사용률:
62%
```
예산 임계치 알림:
```text
50%
80%
90%
100%
```
월 예산을 초과하거나 설정한 임계치에 도달했을 때 관리자 화면에 경고를 표시할 수 있도록 설계한다.
자동모드에서는 추후 옵션으로 다음 정책도 지원할 수 있도록 한다.
```text
월 예산 초과
↓
AI 자동발행 일시 중지
또는
고비용 모델
↓
저비용 모델로 자동 전환
```
단, 초기 MVP에서는 비용 기록과 조회 기능을 우선 구현하며, 자동 차단 및 모델 자동 전환은 후속 기능으로 개발한다.
1차 MVP는 보드게임 전문 블로그 1개를 운영할 수 있는 수준으로 제한한다.
### 1차 MVP 필수 기능
```text
관리자 로그인
글 CRUD
카테고리 관리
태그 관리
이미지 업로드
SEO title / description 입력
slug 자동 생성
게시글 공개 화면
목록 화면
상세 화면
검색
관련글
XML sitemap
robots.txt
AdSense 코드 삽입 영역
AI 글 생성
AI 품질검사
임시저장
수동발행
OpenAI API 사용량 기록
텍스트 API 비용 기록
이미지 API 비용 기록
오늘 API 사용금액 표시
이번 달 API 사용금액 표시
글 1개 평균 생성비용 표시
```
### 1차 MVP 제외 기능
```text
WordPress API 발행
Blogger API 발행
네이버 자동화
회원 커뮤니티
댓글
평점 시스템
고급 통계
구매 링크 자동 가격 비교
API 비용 자동 예산 차단
AI 모델 자동 비용 최적화
```
예약발행
다중 사이트 관리
보드게임 DB 고도화
게임별 상세 페이지
랭킹 페이지
추천 페이지
WordPress API 연동
Blogger API 연동
이미지 생성 API 연동
검색 고도화
통계 대시보드
Agent별 API 비용 분석
모델별 API 비용 분석
게시글별 상세 생성비용 분석
월 API 예산 설정
API 사용량 경고
```
생활팁 사이트 추가
전국행사정보 사이트 추가
네이버 블로그 반자동/자동화 모듈
제휴링크 관리
콘텐츠 자동 갱신
종료된 행사 자동 표시
키워드 성과 분석
콘텐츠 리라이트 Agent
API 예산 자동 제어
비용 초과 시 자동생성 중지
Agent별 모델 자동 최적화
저비용/고품질 모델 자동 선택
사이트별 API 비용 및 수익성 분석
```
Codex는 이 문서를 기준으로 다음 원칙을 지켜 개발한다.
```text
1. WordPress, Blogger에 의존하지 않는 자체 BlogCore를 우선 개발한다.
2. 초기 주제는 보드게임 전문 블로그로 고정한다.
3. BlogBot 관리자와 공개 블로그 화면은 역할을 분리한다.
4. 공개 블로그는 검색엔진 노출과 애드센스 승인을 고려해 개발한다.
5. 관리자 화면은 로그인 후 접근 가능해야 한다.
6. AI Agent 실행 결과는 ai_jobs 테이블에 저장한다.
7. AI가 생성한 글은 즉시 발행하지 않고 review 상태를 거친다.
8. SEO 필드는 게시글마다 별도로 저장한다.
9. sitemap, robots.txt, canonical, meta description은 MVP에 포함한다.
10. 향후 다중 사이트 확장을 고려해 모든 핵심 테이블에 site_id를 둔다.
11. OpenAI API 호출 시 모델명, Agent 종류, 입력 토큰, 출력 토큰을 기록한다.
12. 이미지 API 호출 시 모델, 이미지 수, 이미지 크기, 품질 및 비용을 기록한다.
13. 각 AI Job과 게시글 단위로 API 총비용을 계산할 수 있어야 한다.
14. 관리자 대시보드에서 최소한 다음 3개 항목은 항상 확인할 수 있어야 한다.
- 오늘 사용금액
- 이번 달 사용금액
- 글 1개 평균 생성비용
15. API 비용은 ai_usage_logs에 개별 호출 단위로 기록하고,
ai_jobs에는 해당 작업의 합계 비용을 저장한다.
16. API 비용 계산 로직은 모델 가격 변경에 대응할 수 있도록
코드 내부에 가격을 하드코딩하지 않고 별도 설정 또는 가격 테이블로 관리할 수 있게 설계한다.
```
23. 최종 목표
최종 목표는 단순한 블로그 하나를 만드는 것이 아니라, AI 포스팅봇과 자체 블로그 엔진을 결합한 수익형 콘텐츠 플랫폼을 구축하는 것이다.
초기에는 보드게임 전문 블로그로 시작하여 구글 검색 유입과 애드센스 승인을 목표로 하고, 이후 생활팁, 전국행사정보 등으로 확장한다.
최종 구조는 다음과 같다.
```text
BlogBot
↓
AI Agent Engine
↓
API 사용량 / 비용 관리
↓
BlogCore
↓
보드게임 전문 블로그
생활팁 블로그
전국행사정보 블로그
↓
Google Search
↓
AdSense / 제휴수익
```
관리자는 BlogBot 대시보드에서 콘텐츠 생산 현황뿐 아니라 AI 운영비용까지 함께 확인할 수 있어야 한다.
```text
콘텐츠 생산량
+
API 사용량
+
API 비용
+
글 1개당 생산비용
+
향후 광고수익
```
이를 통해 장기적으로는 단순히 콘텐츠를 자동 생성하는 시스템을 넘어 다음과 같은 판단까지 할 수 있는 플랫폼으로 확장한다.
```text
게시글 1개 생성비용
↓
해당 게시글 광고수익
↓
콘텐츠별 손익 분석
↓
수익성이 높은 주제 및 콘텐츠 자동 선별
```
이 프로젝트는 콘텐츠 생성 자동화, 자체 CMS, SEO 최적화, 광고 수익화, AI 사용비용 관리를 하나의 시스템으로 묶는 장기형 블로그 플랫폼 개발 프로젝트로 진행한다.